The MK6 Line Follower is an open-source Arduino-based speed line follower built to race along a black track as fast as possible.
I built the MK6 with @luisanllo as part of the SuperMecánico team.
Line follower robots are autonomous machines that detect a marked line on the floor and steer to stay on it. In the Velocistas category the goal is not just to follow the line, but to complete the circuit in the shortest time, which pushes the sensor array, the control loop and the motors to their limit.
The MK6 took 3rd place in the Velocistas category at OSHWDem 2017.
Electronics Components
Core Controller
- 1x Arduino Nano V3 - Runs the line-tracking logic and motor control
Sensing
- 1x Pololu QTR-8RC Reflectance Sensor Array - 8 channels of infrared reflectance sensing to locate the line and estimate its position under the robot
Motor Control
- 1x TB6612FNG Motor Driver - Dual H-bridge driver for the two DC motors, chosen for its low voltage drop and compact size
Connectivity
- 1x HC-05 Bluetooth Module - Wireless link for tuning parameters and telemetry without plugging in a cable
Power
- 1x 7.4V 2S LiPo Battery
- Step-up converter to 12V - Feeds the 12V motors
- Step-down converter to 5V - Clean logic supply for the Arduino and sensors
- Custom PCB (v0.1) - Integrates the Arduino Nano, TB6612FNG, HC-05 and the power converters on a single board
Motion System
- 2x N20 12V 1000RPM Motors - High-speed gearmotors for quick laps
- Solarbotics 2Wi - Wheels and hardware for the drive axle
- 1x Plastic Ball Caster - Low-friction third contact point
- 3D Printed Chassis Parts - Custom mounts that tie the sensor bar, PCB, battery and motors together
Line Detection
The QTR-8RC array is mounted on a bar ahead of the wheels. Each channel reports how reflective the surface below it is, so a bright floor and a dark line produce very different readings. Combining the eight values gives a weighted position of the line relative to the center of the robot, which the control loop uses to decide how hard to turn.
Getting Started
To build your own MK6:
- Gather Components - Source the electronics, the Solarbotics drivetrain and the LiPo
- Order the PCB - Use the Gerber files from the repository to have PCB v0.1 manufactured
- 3D Print Parts - Print the custom chassis and sensor mounts
- Assembly - Populate the board, mount the motors and the sensor bar
- Calibration - Sweep the sensor array over the line so it learns the light and dark levels
- Tuning - Adjust the control loop over Bluetooth while running practice laps
Repository and Resources
The complete project is available on GitHub with the PCB design files, 3D printable parts and images:
GitHub Repository: MK6-Linefollower
Released under the MIT License by the SuperMecánico team.
Competition Ready
The MK6 is designed for OSHWDem line follower racing:
- Autonomous operation, no remote control during the run
- Follows a black line on a white surface
- Optimized for lap time in the Velocistas category
Checkout the rules! Regras de Segueliñas