Line Following is a kind of robot contests which measures running speed on the line.. I built a tiny line following robot which can run on the desk-only moving the key board aside will d
Trang 1Desktop Line Following Robot,By ChaN
Recently many kind of robot contests have being opened and some interesting reports of the challenge are found on the web Line Following is a kind of robot contests which measures running speed on the line I built a tiny line following robot which can run on the desk-only moving the key board aside will do It is for only a personal toy as it is reduced in size less than one fifth compared to typical line following robots I believe that it is suitable for home use in small houses and apartments
About Line Follower
The line follower is a self operating robot that follows a line drawn on the floor The basic
operations of line following are as follows:
1. Capture line position with optical sensors mounted at the front end of the robot Most competitors are using several photo-reflectors, and some leading contestants are using an image sensor for image processing The line sensing procss requires high resolution and high robustness
2. Steear robot to track the line with any steearing mechanism This is just a servo operation, any phase compensation will be required to stabilize tracking motion by applying digital PID filter or any other servo argolithm
3. Control speed according to the lane condition Running speed is limited during passing a curve due to friction of the tire and the floor
There are two line styles, white line on the black floor and black line on the white floor Most contest are adopting the first one in line width of between 15 and 25 millimeters
Hardware
Mechanics
Right image shows bottom view and side view
of the built line following robot All mechanical
and electrical parts are mounted on a proto
board, and it also constitutes the chassis
The line following robot is upheld in three
points of two driving wheels and a free wheel
The driving wheels are made with a 7 mm dia
ball bearing and a rubber tire The free wheel is
a 5 mm dia ball bearing attached loosely To
power driving wheels, two tiny vibration motors
that are used for a cellular phone, pager or any
mobile equipment Each shaft is pressed onto the tire with a spring plate, and the output torque is transferred to the wheels
The steering mechanism is realized in differential drive that steers the robot by difference in
rotation speed between the left wheel and the right wheel It does not require any additional actuator, only controlling the wheel speed will do
Electronics
Controller ATmega8 (Atmel)
Line sensor Six photo-reflectors
Trang 2Power supply Two CR2032 lithium cells(One is for controller, the other is for motors)
Motor Two micromotors for left wheel and right wheel
Dimensions 45(L), 33(W), 12.5(H) [mm]
Weight 15 grams (Body:8g, Cells:7g)
Performance 53 centimeters per second at oval course
An Atmel ATmega8 is used for the controller and it is powered by a lithium coin cell The other lithium coin cell is for only motors Separating the power supply into two cells is to avoid accidental reset of the microcontroller due to voltage dip by motor start current Six photo-reflectors are mounted at front end of the chasis They sense reflection rate of the floor under them Motors are driven in PWM to control rotation speed lineary The latest circuit diagram is shown below:
Trang 3Using photo-reflectors
Trang 4To detect a line to be followed, most contestants are using two or more photo-reflectors The output current-proportional to reflection rate of the floor-is converted to voltage with a resister and tested to determine if the line is detected or not However the threshold voltage cannot be fixed to any level because optical current created by ambent light is added to the output current like the image shown right
Most photo-detecting
modules for industrial use
are using modurated light to
avoid interference by the
ambient light The detected
signal is filtered with a band
pass filter and disused
signals are filtered out
Therefore only the
modurated signal from the
light emitter can be
detected Of course the
detector must not be
saturated by ambient light
because it is effective when
the detector is working in
its' linear region
In this project, pulsed light
is used to cancel ambient
light This is suitable for
arrayed sensors that are
scanned in sequence to
avoid interference from the next sensor The microcontroller starts to scan the sensor status, sample the output voltage, turns on the LED and samples again the output voltage The
difference between the two samples is the optical current created by the LED, as the output voltage produced by the ambient light is canceled The other sensors are also scanned the same way in sequence
Signal processing of line detection
Trang 5The image at right shows the actual line posisiton vs detected line position with a center value of
640 The microcontroller scans six sensors and calculates the line position by output ratio of two sensors near the line Thus the line position can be detected lineary with only six sensors All the sensor outputs are captured as analog values that are proportionate to each sensors' reflection ratio, and the sensitivity varys between each one of them In this system, to remove the variations from the outputs, calibration parameters for each sensor can be held in non-volatile memory This can be done with online mode The microcontroler enters the online mode when an ISP cable is attached, and it can be controlled with a terminal program in serial format of N81
38.4kbps S1 command monitors sensor values, and S2 command calibrates variation of sensor
gain on the reference surface (white paper) The ATmega8 must be set to 8MHz internal osc
Tracking control
The line position is compared to the center value to be tracked, and the position error is
processed with Proportional/Integral/Diffential filters to generate steering command The line folloing robot
tracks the line in
PID control that
is the most
popular
argolithm for
servo control
The proportional
term is the
common process
in the servo
system It is
only a gain
amplifier
without time
dependent
process The
differential term
Trang 6is applied in order to improve the responce to disturbance, and it also compensate phase lag at the controlled object The D term will be required in most case to stabilize tracking motion The I term is not used in this project from following reasons The I term that boosts DC gain is applied
in order to remove left offset error, however, it often decrease servo stability due to its phase lag The line following operation can ignore such tracking offset so that the I term is not required When any line sensing error has occured for a time due to getting out of line or end of line, the motors are stopped and the microcontroller enters sleep state of zero power consumption