Line follower is an autonomous robot which can detect a specific colored line painted on a surface of different contrast, such as white on black. In this project I used infrared transmitters and receivers to track the black strip on white surface. Due to the difference of infrared reflection on black and white surfaces, it provides two voltages which can be amplified and used as logic states.

Step 1: Electronics

Flow chart above explains the working of the robot. There are eight IR transmitters and receivers to detect the path and junctions. Analog values from those receivers are amplified by LM324 operational amplifier. A microcontroller is used to detect the amplified digital values and to make decisions. It provides control signals to the H-Bridge motor driver (L293). More details are explained below.

Step 2: ​Op-Amplifier (LM324)

If the rays received by the IR receiver are above a particular threshold then an amplified signal is generated by the amplifier (LM324). In this project I used eight separate transmitters, receivers and amplifiers to make the tracking smooth (Fig.1) Note that the sensors cannot directly send a signal to the microcontroller as the signal voltage generated by them is too low and even when sensors are on white surfaces signal generated by them will be interpreted low by the microcontroller.

Step 3: ​Microcontroller(PIC16F876A)

Microcontroller receives the eight amplified signals from op-amps and it decides how to control the directions of the motors as shown in Fig.

Step 4: ​H-bridge Motor Driver(L293)

Microcontroller sends signal to the motor driver so that it can control the rotating directions. PCB layout and schematic diagram of main circuit is shown.

Step 5: Source Code - MikroC

Source Code can be downloaded from here

<p>Please Vote this Instructable for the MicroController Contest by clicking the Vote button on top right corner of this page. Thanks!</p>
really cool project buddy!

About This Instructable



More by YasithLokuge:Complete Guide to Design an Advanced Line Follower Robot   Arduino Temperature Monitor Data Analytics Using Exosite Arduino Basic Temperature Monitor - Exosite 
Add instructable to: