This project presents the design and implementation of an autonomous line follower robot capable of navigating a predefined path using infrared sensing. The robot detects contrast differences between a guiding line and the surrounding surface, enabling real-time path correction through differential motor control.
The system is built around the Arduino Uno microcontroller and integrates a dual-sensor feedback mechanism with a motor driver to control four DC motors. A custom chassis was designed in Autodesk Fusion 360 and fabricated using 3D printing, ensuring a compact, robust, and modular structure.
- Microcontroller: Arduino Uno
- Sensors: 2 Γ Infrared (IR) line tracking sensors
- Actuators: 4 Γ 3β6V DC motors with wheels
- Motor Driver: L298N dual H-bridge module
- Structure: Custom-designed 3D printed chassis (Fusion 360)
- Power Supply: 9V Battery pack
- Interfacing: Jumper wires and connectors
The robot operates as a feedback-driven embedded system where sensing, processing, and actuation are tightly integrated.
- Control Flow: IR Sensors β Arduino Uno β L298N Motor Driver β DC Motors β Robot Motion
- The IR sensors continuously monitor the surface.
- Sensor signals are processed by the Arduino.
- Based on the input, control signals are sent to the motor driver.
- The motor driver regulates motor direction and speed to maintain alignment with the path.
- Real-time line detection and tracking
- Differential drive control for smooth navigation
- Compact and durable 3D-printed chassis design
- Scalable architecture for future enhancements (e.g., PID control, additional sensors)
- Energy-efficient and fully portable system
- Left sensor output β Digital pin (e.g., D2)
- Right sensor output β Digital pin (e.g., D3)
- Power β 5V and GND
- IN1, IN2 β Left motor control
- IN3, IN4 β Right motor control
- Connected to digital pins (e.g., D8βD11)
- Left motors β OUT1 & OUT2
- Right motors β OUT3 & OUT4
- External battery β L298N (motor supply)
- Arduino powered via battery or USB interface
- The robot follows a simple yet effective control logic:
- The IR sensors detect the presence or absence of the line.
- The Arduino processes sensor inputs in real time.
- Motion decisions are made based on sensor states:
- Both sensors detect the line β Forward motion
- Left sensor loses the line β Adjust left
- Right sensor loses the line β Adjust right
- Both sensors lose the line β Stop or recovery behavior
- Control signals are sent to the motor driver.
- Motors respond accordingly to maintain path alignment.