Line Follower Robot
Line Follower Robot
Submitted By
Kavade Shrikrishna Maruti
1921311612004
Pawar Chetan Rajendra
52213120181861211002
Pende Akash Sanjay
1921311612006
CERTIFICATE
This is to certify that the project report entitled “LINE FOLLOWER ROBOT” is a report
of the Project done by Mr. Kavade Shrikrishna Maruti, Mr. Pawar Chetan Rajendra,
Mr. Pende Akash Sanjay towards the partial fulfillment of the requirement for the degree in
Bachelor of Technology in Mechanical Engineering in Shri Tuljabhavani College of
Engineering, Tuljapur as prescribed by Dr. Babasaheb Ambedkar Technological
University, Lonere, during the academic year “2021-2022”.
Place - Tuljapur
Date -
PRINCIPAL
Dr. N. D. Pergad
STBCET
ABSTRACT
Line Follower is one of the most important aspects of robotics. A Line Following
Robot is an autonomous robot which is able to follow either a black line that is drawn on
the surface consisting of a contrasting color. It is designed to move automatically and
follow the line. The robot uses arrays of optical sensors to identify the line, thus assisting
the robot to stay on the track. The array of four sensor makes its movement precise and
flexible. The robot is driven by DC gear motors to control the movement of the wheels.
The Arduino Uno interface is used to perform and implement algorithms to control the
speed of the motors, steering the robot to travel along the line smoothly. This project aims
to implement the algorithm and control the movement of the robot by proper tuning of the
control parameters and thus achieve better performance. In addition the LCD interface is
added in order to display the distance travelled by the robot. It can be used industrial
automated equipment carriers, small household applications, tour guides in museums and
other similar applications, etc.
STBCET
ACKNOWLEDGEMENT
We wish to express our profound and deep sense of gratitude to Prof. D. M. Dalwe,
Project Co-ordinator, Department of Mechanical Engineering for sparing his valuable
time to extend help in every step of our project work.
We whole heartedly express our thanks to, Prof. Vaibhav Pansare, Project Supervisor,
Department of Mechanical Engineering, for sparing time to go through every tiny detail
and give his valuable suggestions to make this project and report a success.
We are mainly indebted to the authors of many references and articles which were used as
the reference.
Last but not the least we would like to thank our friends and college staff for their help in
every way for the success of this project report.
2
STBCET
INDEX
1 INTRODUCATION 4
3
STBCET
4
STBCET
CHAPTER 1
1. Introduction
Line follower is a machine that can follow a path. The path can be visible like a black
line on a white surface. Sensing a line and maneuvering the robot to stay on course, while
constantly correcting wrong moves using feedback from the sensor forms a simple yet
effective system. It can be used in automobile, industrial automations, guidance, etc [1].
Background
Motivation
How ants always travel in a line, following any visible route in search of food, or
back home. How on roads the lanes is followed to avoid accidents and traffic jams. Ever
thought about a robot which follows line? A perfect or near perfect mimic of nature?
After all the purpose of robotics is to recreate in terms of machines what one see around
to solve a problem or fulfill a requirement.
The area will be benefitted from the project
Industrial automated equipment carriers
Entertainment and small household applications.
Tour guides in museums and other similar applications.
Second wave reconnaissance operations.
4
STBCET
Problem Description
In the industry carriers are required to carry products from one manufacturing plant
to another which are usually in different buildings or separate blocks. Conventionally,
carts or trucks were used with human drivers. Unreliability and inefficiency in this part of
the assembly line formed the weakest link. The project is to automate this sector, using
carts to follow a line instead of laying railway tracks which are both costly and an
inconvenience.
Objectives
Methodology
After the detail literature survey through the books, periodical, journal, magazine,
websites. The idea of the project is well defined.
The logic is derived for the intelligence of the robot. It is programmed and burn it
to the Arduino by using the software Arduino® 1.65.
The accuracy and viability of the program and electronic components is tested in
the simulation software Proteus®.
After the successful simulation result it is implemented in the hardware.
After the finishing the programming, electrical and electronics part, the stable,
reliable and flexible mechanical design and fabrication is completed.
Finally system is tested and encountered error is omitted.
Limitations
Organization of Report
This report is a documentary delivering the ideas generated, concepts applied, and
activities done it contains four chapters. The following is a description of information in
this thesis. Chapter 1 provides a general overview of the project and the use and
importance of autonomous robots in the world. The objectives, scope of project, problem
statement are also described in this chapter.
Chapter 2 describes the hardware development unit in line following robot. This chapter
describes about sensor arrays, Arduino, motor driving system, it also describes the project
methodology and explains hardware development for the design of the robot.
Chapter 3 contains the process explanation with working algorithm, flowchart and sketch
of the Arduino.
Chapter 5 contains all the results obtained from the software experiments that include the
algorithm implemented in a program.
Finally, chapter 5 will summarize the final year project. The conclusion, suggestions or
recommendations for improvements that can be implemented in future are discussed
within this chapter.
Summary
Line Follower is one of the most important aspects of robotics. A Line Following
Robot is an autonomous robot which is able to follow either a black or white line that is
drawn on the surface consisting of a contrasting color. It is designed to move
automatically and follow the plotted line. It enhances interdisciplinary approach to
mechanical,electronic, electrical and programming skills. The application of the project is
range from the individual domestic appliance to automation and control aspect of large
industry. Human are intelligent natural machine but it has serious limation of efficiency
and realiblity. Robots are made to replace dependency of human force partially. The
project is somehow designed to perform the similar task.
6
STBCET
CHAPTER 2
Basic Operation
The basic operations of line follower are as follows:
Capture line position with optical sensors mounted at front end of the robot. For
this a combination of IR-LED and Photodiode called an optical sensor has been
used. This make sensing process of high resolution and high robustness.
Steer robot requires steering mechanism for tracking. Two motors governing
wheel motion are used for achieving this task.
This system has LCD display panel to show the distance that it covers.
On the detecting no black surface robot move in a circular motion until line is
found.
Block Diagram
7
STBCET
Hardware Required
The hardware required is divided in the following category:
Input System
The detail of each components is discussed below.
Optical Sensors
The robot uses photodiode sensors to sense the line; an array of four IR- LEDs (TX)
and Photodiode sensors (Rx), facing the ground used in this setup. An analog signal is
obtained in output, depends on the amount of light reflected back, which is provided to
the comparator to produce 0s and 1s which are then fed to the Arduino.
The sensors on the left named as L1, L2 and R1, R2 on the right side. Assumption should
be considered that when a sensor is on the line it reads 0 and when it is off the line it reads
1. The Arduino correspondence to the algorithm given below decides the next movement,
trying to position the robot such that all sensors read 0.
With sensors, robots can react and respond to changes in their environment in ways that
appear intelligent or life-like.
Arrangement of Sensors
An array of sensors arranged in a straight row pattern is bolted under the front of the
robot. It locates the position of line below the robot. Distance between two adjacent
sensors is about 1.5 cm.
We can use any number of sensors. If we have low number, then our robot movement is
not smooth and it may face problems during sharp turns. If higher number of sensors
were, used robot movement will become smooth and reliable for sharp turns; it requires
complex programming for micro-controller and requires more hardware, which is its
disadvantage. Thus, optimum number of sensors required.
8
STBCET
Comparator
Comparator is a device, which compares two input voltages and gives output high
or low. In circuit diagram it is normally represented by a triangle having-Inverting
(negative) Input, Non-Inverting (positive) Input (+), Vcc, Ground, Output.
Properties of comparator:
If V+ > V- then Vo=Vcc (Digital High Output is 1)
If V+ < V- then Vo=0 (Digital Low Output is 0)
VCC 5V
Inverting(-ve) -
Input Comparator
Non-Inverting OUTPUT (Vo)
(+ve) Input
GROUND
Optical sensor
As shown above that two inputs are required for comparator. One input is from
photo- receiver (like Photodiode), other is generated by resistor. The second voltage is
reference voltage for that sensor.
9
STBCET
Processing unit
Processing system acts as the brain of robot, generating desired output for
corresponding inputs, in which microcontrollers are used. There are several companies
nowadays that manufacture microcontrollers, for example ATMEL Corporation,
Microchip, Intel, Motorola etc. We will be using ATmega32L microcontroller in our
robot. It is known as AVR1.
Arduino
Arduino is an open-source computer hardware and software company, project and
user community that designs and manufactures microcontroller-based kits for building
digital devices and interactive objects that can sense and control objects in the physical
world. The heart of Arduino is the microcontroller. For Arduino Uno ATmega328 is
used.It has specification of 8 bit CPU, 16 MHZ clock speed, 2 KB SRAM 32 KB flash
Memoary, 1 KB EEPROM [2].
Features:-
14 digital input output pins (3,5,6,9,10 and 11 pins are able to generate PWM).
6 analog input pins
Voltage input from the 7 – 12 V
10
STBCET
Output System
The output system is designed with the function of the following components.[2]
Motor Driver
Motor driver is a current enhancing device; it can also be act as Switching Device. Thus,
after inserting motor driver among the motor and microcontroller. Motor driver taking the
input signals from microcontroller and generate corresponding output for motor.
IC L293D
This is a motor driver IC that can drive two motor simultaneously. Supply voltage
(Vss) is the voltage at which motor drive. Generally, 6V for dc motor and 6 to 12V for
gear motor are used, depending upon the rating of the motor. Logical Supply Voltage
deciding what value of input voltage should be considered as high or low .So if the
logical supply voltage equals to +5V, then -0.3V to 1.5V will be considered as Input low
voltage and 2.3V to 5V is taken into consider as Input High Voltage. The Enable 1 and
Enable 2 are the input pin for the PWM led speed control for the motor L293D has 2
Channels .One channel is used for one motor[2]
11
STBCET
DC Motor
Motor is a device that converts any form of energy into mechanical energy or
imparts motion. In constructing a robot, motor usually plays an important role by giving
movement to the robot. In general, motor operating with the effect of conductor with
current and the permanent magnetic field. The conductor with current usually producing
magnetic field that will react with the magnetic field produces by the permanent magnet
to make the motor rotate. There are generally three basic types of motor, DC motor, even
servomotor and stepper motor, which are always being used in building a robot.
DC motors are most easy for controlling. One DC motor has two signals for its
operation. Reversing the polarity of the power supply across it can change the direction
required. Speed can be varied by varying the voltage across motor.
LCD Display
In our project it is used to display the distance travelled by the robot through the output
from the tachometer system.
12
STBCET
Proximity Sensor
The combination of IR- LED and Photodiode is used as the reflective optical sensor. It
generate interrupt when the IR-beam is break to the photodiode. To create the IR break-
beam, IR LED is used with a low value resistor so that it shines very bright. The receiver
is Photodiode which biases 'on' whenever the IR LED's light is detected. A sensor will be
placed adjacent the IR link and turned on so as to generate a pulse to the Arduino. The
Arduino LCD interface is used to show the covered distance digitally.
Software Required
For the simulation of the circuit, Proteus® software is used. For coding and
uploading the sketch, the Arduino 1.65 ® is used.[3]
Summary
The system is completed in to the three division i.e. is the Input system, Processing
System and Output system.
Input system comprises of the optical sensor, is an array of 4 IR-LED and Photodiode
pairs arranged in the form straight lines. The output from each sensor is fed into an analog
comparator with the threshold voltage (used to calibrate the intensity level difference of
the line with respect to the surface). These 4 signals (from each photo-reflective sensor) is
given to a priority analog input of the arduino [3].
Processing system is Arduino Uno interface consisting microcontroller Atmega328 which
works on the basic of the logic of the program burn to it.
Output system consist combination L293D and gear-motor the control has 6 modes of
operation, turn left/right, move left/right, and drift left/right. The actual action is caused
by controlling the direction/speed of the two motors (the two back wheels), thus causing a
turn.
13
STBCET
CHAPTER 3
Schematic
The schematic of the “Line Following Robot” is shown in the figure. The main
component is the Arduino Uno. Schematic is drawn by using Proteus.
The main features incorporated into the hardware are given below:
Ardunio Uno.
The IR-LED with IR illuminance, modified to be reflective sensor.
The LM324 quad comparator IC.
A potentiometer to calibrate the reference voltage.
The H-bridge motor control IC (L293D)
Motors, with coupled reduction gears.
Connectors to join the different boards to form one functional device.
A pair of IR-LED and Photodiode is used as proximity sensor for the designing
tachometer
Each of the hardware is dissected and was designed/implemented separately for their
functional and later incorporated as one whole application. This helped in the debugging
processes.
14
STBCET
15
STBCET
16
STBCET
Thus totally the microcontroller gets 4 inputs from the sensor circuitry, to the (A3 – A0)
of Arduino to decide what to do when on the line. Below is the complete description
about what each input mean and what needs to be done [4].
13
STBCET
Process Explanation
As shown in the data below, is a typical situation involved. At every sampled time the
commands executed by the Arduino is also shown. From the below figure, it should be
clear about the software requirements [5].
Sensor
Path
Turn right for the rightmost condition Sharp turn right for the rightmost condition
and turn left for left most condition. and sharp turn left for left most condition.
14
STBCET
Flowchart.
The following chart shows implemented logic.
START
Yes GO STRAIGHT
Left motor = fullspeed
L1L2R1
Right motor=
R2=0000
fullspeed
No
No
TURN LEFT
Left motor = slower
Right motor = C
L1L2R1R
Yes
2=0011 fullspeed
NO
B
15
STBCET
TURN RIGHT
Yes Left motor = fullspeed
L1L2R
1R2=11 Right motor=slower C
No
D
MOVE CIRCULAR
L1L2R1 Yes Left Motor =
R2=1111 fullspeed
RightMotor = off
No
Techo Yes
Increase counter by 1.
=1
No
RETURN
A
Timer = 5second D
No ?
Yes
Interrupt Occurs
Distance = Distance+2*π*radius of wheel Return to
position where
interrupt occur
Display Distance
16
STBCET
Summary
The logic behind the working of Arduino is to analyses the input from the sensor
according to program fed to it and provide corresponding output to the motor driver
which finally drive the motor in such way that, it produce required motion.
The differential steering system is implemented to turn the robot. In this system, each
back wheel has a dedicated motor while the front wheels are free to rotate. To move in a
straight line, both the motors are given the same voltage. To manage a turn of different
sharpness, the motor on the side of the turn required is given lesser voltage as level of
steering required.
17
STBCET
CHAPTER 4
𝑆𝐿 = 𝑟𝜃
𝑆𝑅 = (𝑟 +
𝑏)𝜃
𝑆𝑀 = (𝑟 + 𝑏) 𝜃
2
Where SL and SR give the displacement for the left and right wheels respectively, r is the
turning radius. b is the distance between wheel, and 𝜃 is the angle of turn. SM is the
speed at the center point as the main axle.
18
STBCET
Mechanical Design
The chassis of the robot is made up of the acrylic glass since it can carry more
load and have lighter in weight.
The detail orthographic projection of the robot is drawn at the appendix.
Design of Path
The path consists of three U-turns of different radii. Among three, the system
swiftly turn two U-turn and it goes out of track in one initial U-turn and retrace its path.
20
STBCET
Turning Radius
The turning radius of a vehicle is the radius of the smallest circular turn (i.e. U-
turn) that the vehicle is capable of making. The term ‘turning radius’ is a technical term
that is commonly used to mean the full diameter of the smallest circle, but in technical
usage the turning radius still is used to denote the radius.
Calculation:
The total length of the robot car is 172mm (approx. 17.2mm.) the minimum turning
radius that it can turn sharply.
The diagram in which robot car is making a turn. The situation is show in the figure
above. The wheels are shown shaded in the figure. The front wheel’s center is P and the
rear wheel’s center is Q. Let O be the center of the circle, along whose circumference the
car moves. Let L=PQ be the length of the car and let R be the radius of the circle.
Sharpest turn corresponds to smallest possible value of R. Note that PQ is a chord of the
circle. Let us say that the front wheel can rotate at most by an angle w relative to the
‘straight’ position. For triangle OPQ [11].
u + 2v = 1800 (1)
also, w + v = 900 (2)
From, cosine rule for OPQ:
L2 = R2 + R2 – 2R2 cos(u) (3)
From eqn (1), (2) and (3)
𝑅=
𝐿
2𝑠𝑖𝑛
𝑤
At the maximum value of sin i.e. 1, The turning radius is found to be L/2 = 87.2mm.
Now, the velocity of the automobile is the prime factor to determine the ability to take
turn smoothly or not. So we have to derive the relation between the turning radius and the
21
STBCET
22
STBCET
23
STBCET
Summary
The main criteria of the mechanical design is mainly depends upon the differential
steering mechanism, turning radius. The calculation of turning radius is necessary because
it finds out the mechanical limitation for the types of the curve which is avoided. The
turning radius for the design is found to be 100mm.
So, in case of designing path the maximum turning radius mustn’t be less than 100mm.
24
STBCET
CHAPTER 5
Mathematical Interpretation:
Rotational power (Pr) is given by:
Pr= Torque (T) X Rotational Speed
𝑝𝑟
Γ=
(ω)
𝜔
Pr is constant for DC motor for a constant input electrical power. Thus torque (T) is
1
inversely proportional speed (ω)
Γ≁
𝜔
Speed Control
The speed of the dc motor is control by feeding PWM from Arduino to the enable
pin of the L293D which change the voltage across the motor. Due to which speed is also
decreased. On the command over the speed and the direction is also controlled.
25
STBCET
Calculation:
𝑡𝑜𝑛
A= 𝑉𝑑𝑡
1
∫
0
𝑡𝑜𝑛
A= 12𝑑𝑡
1
∫
0
𝐴 = 12
𝑡𝑜𝑛
𝐴 = 12 × 𝜌
Where ρ is the duty cycle of the PWM control signal; this shows that by varying the duty
cycle of the PWM control, we effectively vary the DC voltage supplied to the motors,
thus controlling their speed. This is generated by the arduino built-in hardware [9].
26
STBCET
Calculation
The system is designed in such way that it updates the distance value in every 5 seconds.
i.e. 12 times per minute.
Summary
Pulse Width Modulation, or PWM, is a technique for getting analog results with
digital means. Digital control is used to create a square wave, a signal switched between
on and off. This on-off pattern can simulate voltages in between full on (5 Volts) and off
(0 Volts) by changing the portion of the time the signal spends on versus the time that the
signal spends off. The duration of "on time" is called the pulse width. To get varying
analog values, change or modulate that pulse width.
Since, the build tachometer can be used, as from the analysis the error percentage within
limit, for the maximum rpm is to be measured i.e. 250 rpm.
27
STBCET
CHAPTER 6
ADVANTAGES:-
1) These types of robot movement are usually automatic.
2) The system in the robot is like once install and forget.
3) Its relatively cheap.
4) This type of robot are simple to build.
5) They can also be used for long distance.
APPLICATION:-
1) They can be used in industries as automated
equipment carriers.
2) It can be used for home for floor cleaning etc.
3) In hotels they are being used for the transfer of things from one
place to another following a straight path.
28
STBCET
CHAPTER 7
6.1. Conclusion
The line following robot is automobile system that has ability to recognize its path,
move and change the robot's position toward the line in the best way to remain in track.
This project report presents a photodiode sensor based line follower robot design of
200gm weigh which always directs along the black line on white surface. The electro
mechanical robot dimension is 192×100×70 mm3 with max rpm 180 at no load and
frictionless condition. The minimum turning radius for the system is 100mm at velocity
of 24.2 cm/s. The robot is able to detect its path in case it is out of path.
The line following robot project challenged the group to cooperate, communicate, and
expand understanding of electronics, mechanical systems, and their integration with
programming. The successful completion of every task demonstrated the potential of
mechatronic systems and a positive group dynamic.
29
STBCET
GANTT CHART
Work Accomplished
Work Remaining
30
STBCET
REFERENCE
[1] B. Klaus and P. Horn, Robot Vision. Cambridge, MA: MIT Press, 1986.
[2]J. Warren, J. Adams and H. Molle, "Arduino for Robotics," in Arduino Robotics,
New York, Apress publiction, 2014, pp. 51-83.
[5]S. Monk, Programming Arduino Getting Started with Sketches, New Delhi, India: Tata
Macgrawhill, 2012.
[6]Open Source community, " Open Source Sketch," January 2015. [Online]. Available:
https://www.arduino.cc/en/Guide/Introduction.
[7] A. Parsad, "Line Following Robot,"Dept. Elex. & Comm. Eng., Visvesvaraya
Technological University, Banglore, India, 2005
[9]S. Debopath and Md. Jinnah, "Digital RPM meter using Arduino,"Dept.
Elect.Eng., Ahsanullah Univ. of Sci. & Tech., Dhaka, Bangladesh, 2012.
View publication
stats