Robot chooses a simpler non-branching path leads to reach goal very easily from a path or collection of paths, typically from an entrance to goal is known as " MAZE SOLVER ROBOT ".
3. INTRODUCTION :
>> In the middle of 20th centuary , Maze solving problems played an important role on Robotics.
>> The word “Maze” means “ A path or collection of paths , typically from an entrance to goal ” and
“solver” refers to choose a simpler non-branching path leads to reach the goal very easily .
>> The main objective is to build fully maze solving robot with complex environment.
>> We use either right hand rule or left hand rule in this maze solver robot.
>> In this we can also use white lines with black background.
>> Since , 1977 many type of maze solving robots are developed every year.
4. COMPONENTS :
1. Arduino Uno Microcontroller
2. 5 IR Array sensor / Four IR sensors
3. L298N Motor Driver Module
4. 2 Micro Gear Motors
5. Pair of wheels , Ball Caster , Robot Chassis
6. Rechargeable Batteries and Battery Holder
7. Nuts and Bolts
8. Jumper Wires( Connecting wires M-M , F-F , M-F)
9. Wire Strip
5. Arduino Uno Microcontroller:
>> The Arduino Uno is an open-source microcontroller board based on the Microchip ATmega328P microcontroller
and developed by Arduino.cc.
>> The board is equipped with sets of digital and analog input/output (I/O) pins that may be interfaced to
various expansion boards (shields) and other circuits.
>> The board has 14 Digital pins, 6 Analog pins, and programmable
with the Arduino IDE (Integrated Development Environment) via a
type B USB cable.
>> Operating Voltage: 5 Volts
Input Voltage: 7 to 20 Volts
Digital I/O Pins: 14 (of which 6 provide PWM output)
Analog Input Pins: 6
DC Current per I/O Pin: 20 mA
DC Current for 3.3V Pin: 50 mA.
>> Arduino is the heart of this project. All program of this
project is stored in its microprocessor.
6. IR SENSORS:
>> An infrared sensor is an electronic device, that emits in order to sense some aspects of the surroundings. An IR
sensor can measure the heat of an object as well as detects the motion.
>> The emitter is simply an IR LED (Light Emitting Diode) and the
detector is simply an IR photodiode which is sensitive to IR light
of the same wavelength as that emitted by the IR LED.
>> An infrared sensor circuit is one of the basic and popular sensor
module in an electronic device. This sensor is analogous to human’s
visionary senses, which can be used to detect obstacles and it is one
of the common applications in real time.
>> It consists of parts:
<.> LM358 IC 2 IR transmitter and receiver pair
<.>Resistors of the range of kilo ohms.
<.>Variable resistors.
<.>LED (Light Emitting Diode)
>> IR image device is one of the major applications of IR waves,
primarily by virtue of its property that is not visible. It is used for
thermal imagers, night vision devices, etc.
7. L298N Motor Driver Module :
>> The L298N is a dual H-Bridge motor driver which allows
speed and direction control of two DC motors at the same
time. The module can drive DC motors that have voltages
between 5 and 35V, with a peak current up to 2A.
>> The module has two screw terminal blocks for the
motor A and B, and another screw terminal block for the
Ground pin, the VCC for motor and a 5V pin which can
either be an input or output.
>> It is a heat sink for better heat dissipation and fly back
diodes for protection from back EMF.
>> The L298N is an integrated monolithic circuit in a 15-
lead Multi watt and PowerSO20 packages. It is a high
voltage , high current dual full-bridge driver de-signed to
accept standard TTL logic level sand drive inductive loads
such as relays, solenoids, DC and stepping motors.
11. Building Procedure :
>> First we connect the DC motors with wheels and fix them to robot chassis. Then attach the cluster to
the Chassis. Then take a breadboard and attach it to the chassis using double sided tape.
>> Attach the Arduino and L298N module to it. Then we connect the 5 IR array sensors in
front of chassis. Then now arrange the batteries in the chassis and power all the IR sensors
with that battery. Connect the motors to the outputs of L298N module.
>> The batteries to be connected in the series and placed them on chassis. Connect the
12V pin of L298N with the battery positive. Place the switch between battery negative and L298N ground.
>> Connect the IR ground to the Arduino ground placed a battery in the chassis with
Arduino battery cable attached to it and connect it to Arduino to power that.
>> Connect the outputs of IR Sensors from left to right to aurdino pins and connect the
input pins of the motors.
12. Algorithm :
>> The algorithm used is Left Hand Rule.
>> In this, The robot always prefer a left turn over going straight ahead or taking a right turn.
>> The robot always prefer going straight over going right.
>> If the maze has no loop , this will always get you to the end of the maze
>> There are only 8 possible situations that the robot can encounter.
13. Not Intersections – From the given figure , first two pictures comes under this case. The robot has no choice
but to make a 90 degree turn. Since the robot will always make the same 90 degree turn and it has no other
option, this turn need not be stored when solving the maze. After reaching a dead-end means that the robot
had made a bad turn. We need to store this fact, so that a previous turn can be corrected.
The Dead End – The Dead-end is the easiest intersection. Sensors will go from “00100” to “00000” .The correct
behavior of dead-end is to make a U-Turn. This is the only normal situation where the robot should see all
zeros.
Right Only – A situation where the same pattern will initially appear for two different situations i.e., Right turn
and straight or right case. Both show the pattern “00111” when initially detected.
Left Only – A situation where the same pattern will initially appear for two different situations i.e., Left turn
and Straight or Left case. Both show the pattern “11100” when initially detected.
There are other cases that all the three intersection types will present an initial patterns of “11111” to
the robot i.e., Left or Right (“T”) and Four Way and End of Maze.
14. The sensor sequence can be in the following way :
0 0 0 0 : This means all the sensors are on brighter
surface, so Dead End.
0 1 1 0 : The side sensors are on the brighter and middle
are on Black.
0 1 1 1 : The left most sensor is on bright and others are
on black. This can happen in two situations :
<1> Only Right Turn
<2> Straight and Right Junctions.
1 1 1 0 : The right most sensor is on bright and others
are on black .This can be done only in two cases:
<1>Left turn
<2>Straight and Left Junction.
1 1 1 1 : Al the sensors are on black. There may be three
possibilities :
<1> End Reached
<2> T Junction( means both left and right
junctions) or
<3> Cross/ 4 way Junction .
15. While writing a code you have to assign some letters to turns like let us assume that ,
L= Left Turn
R= Right Turn
S= Straight Path
U= Turn Around
On solving the maze by maze solver robot we should replace these with the fallowing given below:
LUR = U
LUS = R
RUL = U
SUL = R
SUS = U
LUL = S
For any type of maze you should follow the same rules. You may not come across all of these when maze solving, but
they are required when optimizing the path.
My robot optimizes the path as it travels. The path is stored in an array and every time it goes to store a new move.
We will continue to develop these replacement rules until we have covered all of the maze possibilities we expect to
encounter.
16. Issues Faced and Solutions :
(1) During assembling , The IR sensors were not balanced and they were giving faulty readings.
(2) I was provided only with two IR Sensors , so I bought extra sensors for better output.
(3) As I was getting faulty readings, I replaced IR Sensors with IR Array Sensor. So that I got the expected
output and better result.
(4) The speed is so slow as I applied only two batteries , in order to increase the speed of the robot I added
two more batteries so the speed was increased rapidly.
(5) The batteries used to drain at faster rate as the motor driver module is being connected for a long
period of time. So to recover this issue I placed a switch for this in between them.
17. Extra Items :
1. I bought L298N Motor Driver Module as I lost the provided Motor Driver Module.
2. To make all connections perfectly, I bought extra Jumper wires . So that
connections done easily
3. I have bought IR Array Sensor instead of buying two extra IR Sensors. Because this
made me easy in making the robot.
4. To power all the battery items ,I have bought 4 9V batteries and a holder to hold
those 4 batteries in a fixed position. So the moment of the robot will be easy.
To meet all the requirement conditions these extra items are needed
18. Conclusion :
>> A Maze solver robot performs any open loop line perfectly and solves without any error.
>> The scope of the project will be producing a robot with good interaction between the
microcontroller with the mechanical elements , signal controlling and software efficiency.