Design and Implementation of Autonomous Line Follower Robot Using Microcontroller
Design and Implementation of Autonomous Line Follower Robot Using Microcontroller
I. INTRODUCTION
MOTOR DRIVER MOTOR DRIVER
L ine follower is a machine that follows a path. The path
can be a black line on a white surface (or vice versa) or it
can be invisible like magnetic field. In order to detect specific
marks or lines, various schemes for sensing it are applied. The
choice of the schemes depends upon sensing accuracy and
flexibility. In industrial point of view lone following bots are ROBOT RUN PROPERLY
used in semi to fully autonomous plants. The sensing of the
Fig: Block Diagram ofthe Overall Model
line which it is following is to be done carefully so that the
robot stays on course while constantly correcting its path III. CONSTRUCTION
using feedback mechanism there is a formation of closed loop
system. Apart from following its line and path these robots Building a basic line follower robot involves following steps:
should navigate junctions that is to decide which junction to Designing the Hardware Part of Robot
follow and which it should not. This would require the robot
Implementing the Control of Robot.
to have 90 degrees turn. Sensor positioning also plays an
important role optimizing the robots performance for the tasks
mentioned before.
www.rsisinternational.org Page 31
International Journal of Research and Scientific Innovation (IJRSI) | Volume V, Issue XI, November 2018 | ISSN 2321–2705
IV. EQUIPMENT’S DETAILS If any of the pins INPUT 1, INPUT 2, INPUT 3, INPUT 4 is
high then flow of current will be HIGH in OUTPUT 1,
1. Microcontroller (Arduino UNO) OUTPUT 2, OUTPUT 3, and OUTPUT 4 respectively.
2. Motor Driver (L293D)
3. IR Sensors (3)
4. DC Motors (2)
5. Chassis
6. Wheels (2)
7. Caster Wheel
8. Male and Female Jumper Wires
9. Power Supply (9 volt)
10. Bread Board
V. ABOUT EQUIPMENTS
1. CHASSIS AND BODY—
Fig: Pin Configuration of L293D IC
We can use materials like wood, plastic, aluminium
4. MICROCONTROLLER-ARDUINO UNO—
giving care to the mechanical ability, flexibility and weight .In
our designed robot we have used a plastic chassis since it is Arduino UNO is a microcontroller which receives
light weight, strong and the components can be easily attached the signal from the sensors and gives corresponding signal to
like the wheels and motor. motor driver IC .It continuously monitors data from the
sensors and turns the robot as per the line detected by them
2. MOTOR AND WHEELS—
with the help of motor drive that in turn controls the motor
We have used DC motors which provides a high and wheels.
torque and efficiency. DC motors are simple and easy to
install onto the chassis. The motors rotate the robot clockwise
or anticlockwise depending upon the program. The electrical
energy is converted into mechanical energy by the motors
which is used to drive the wheels. We have used two medium
sized wheels and a caster wheel attached at the front for easier
and smooth movement .This is the most common combination
for wheeled robots.
Fig. Arduino
5. IR SENSORS—
Infrared Sensors are used to find the path and
direction. IR sensors contains a transmitter and receiver pair.
We know white surfaces are good reflectors and black
surfaces are poor reflectors .So if the receiver receives the
reflection ray it means the robot is on white else if it doesn’t
receives it means the robot is on black. Thus the device works
by measuring the amount of light that is reflected into the
receiver.IR sensors works best when it is shielded from
Fig. motor and wheel
ambient light and the distance between the sensors and the
3. L293D MOTOR DRIVER— surface is small(less than 10mm).
It is a typical motor driver which controls the
working speed and direction of the motor simultaneously.
This driver consists of 16 pins which controls two DC motors.
It works on the principle of H-bridge .This motor control
circuit allows the voltage to flow in any direction.
When Enable 1 is HIGH, then left part of IC will work,
otherwise it won’t work.
When Enable 2 is HIGH, then right part of IC will work,
otherwise it won’t work.
www.rsisinternational.org Page 32
International Journal of Research and Scientific Innovation (IJRSI) | Volume V, Issue XI, November 2018 | ISSN 2321–2705
By adding logic to our controller we will be able to tackle all else if(l==0 && m==0 && r==0) //do right turn
kinds of bends and turns in linear track. Here is a sample {
demo code:
right();
#define LM1 2 }
#define LM2 3 else if(l==1 && m==1 && r==1) // do return with left turn()
#define RM1 5 ========>
#define RM2 6 {
#define L 8 rev();
#define M 9 }
#define R 10 else
#define LL 11 {
#define RR 12 left();
int l,m,r; delay(10);
void setup() fro();
{ delay(100);
Serial.begin(9600); right();
pinMode(LM1,OUTPUT); //left forward }
pinMode(LM2,OUTPUT); // left back }
pinMode(RM1,OUTPUT); //right forward //-----------------------------------------------
pinMode(RM2,OUTPUT); //right back void fro()
{
pinMode(L,INPUT); digitalWrite(LM1,HIGH);
pinMode(M,INPUT); digitalWrite(LM2,LOW);
pinMode(R,INPUT); digitalWrite(RM1,HIGH);
delay(3000); digitalWrite(RM2,LOW);
} }
void loop() void right()
{ {
l=digitalRead(L); digitalWrite(LM1,HIGH);
m=digitalRead(M); digitalWrite(LM2,LOW);
r=digitalRead(R); digitalWrite(RM1,LOW);
ll=digitalRead(LL); digitalWrite(RM2,LOW);
rr=digitalRead(RR); }
if(l==1 && m==0 && r==1) // done =====> forward() void left()
{ {
fro(); digitalWrite(LM1,LOW);
} digitalWrite(LM2,LOW);
else if(l==1 && m==0 && r==0) // do right turn ======> digitalWrite(RM1,HIGH);
{ digitalWrite(RM2,LOW);
right(); }
} void rev()
{
www.rsisinternational.org Page 33
International Journal of Research and Scientific Innovation (IJRSI) | Volume V, Issue XI, November 2018 | ISSN 2321–2705
ACKNOWLEDGEMENT
The author acknowledges technical and financial guidance for
this research from The College of Engineering And
Management, Kolaghat.
REFERENCES
[1]. Aamir attar, aadil ansari, abhishek desai, shahid khan, dipashri
sonawale publications ofInternational Journal of Advanced
Computational Engineering and NetworkingVolume-5, Issue-4,
Aprl.-2017
[2]. Kriti Bhagat, Saylee Deshmukh, Shraddha Dhonde, Sneha Ghag
publications of International Journal of Science, Engineering and
Technology Research (IJSETR), Volume 5, Issue 2, February
2016.
[3]. Subhranil Som, Arjun Shome by publication Subhranil Som Int.
Journal of Engineering Research and Applications, ISSN: 2248-
9622, Vol. 4, Issue 6 (Version 3), June 2014.
Fig: Assembled Robot [4]. M. S. Islam & M. A. Rahman published by Asian Journal of
Applied Science and Engineering, Volume 2, No 2 (2013).
VIII. APPLLICATION [5]. Prananjali Koppad, Vishnu Agarwal published by International
1. Industrial automated equipment carriers. Journal of Engineering Research & Technology (IJERT), ISSN:
2278-0181, IJERTV3IS090023 Vol. 3 Issue 9, September-2014
2. Delivering medicines to patients at hospitals. [6]. S. Akash, Bibek Kabi , Mr. S.Karthick published by International
3. As path guides in museum and shopping malls. Journal of Recent Trends in Engineering, Vol 2, No. 7, November
4. In domestic purposes like floor cleaning, painting the 2009
wall.
www.rsisinternational.org Page 34