You are on page 1of 14

MICROMOUSE

BY:-

SHUBHAM KUMAR MISHRA


WHAT IS MICROMOUSE ?
A Micro Mouse is an autonomous
electro-mechanical robot, typically
consisting of three main subsystems:
1. The drive system
2. An array of sensors, and
3. The control system.

Its purpose is to find its way and goal


point through ANY type of maze - in
the shortest amount of time.

It integrates several different disciplines of engineering, ranging from electrical to


mechanical to computer science
MAZE
 The standard maze is made up of a
16 by 16 grid of cells.

 Each cell has 180mm square in


length and 50mm high.

 Now days somewhere 32 by 32


grid are also uses.

 In India IIT-B organizing


international micro mouse event
and using 16X16 standard maze.
REQUIREMENTS
 MICROCONTROLLER :-89C52
 ICS:-L298N, MC44603 & LM324.
 MOTOR:- STEPPER/DC
 SENSOR
 PCB
 BATTERY
 CHASSIS
 WHEELS
 WIRES
 SOFTWARE
 BURNER
 MAXIM DS2423 4kbit 1-WIRE RAM WITH COUNTER.
MICROMOUSE- BRAIN
 ATMEL 89C52
- cheap and easy to use.

- 8KB of EEPROM and 256B of internal RAM.

- 64KB of external memory.

- It supports SPI program downloading.

- Because of memory space it hard to implement


89c52 as micro mouse brain.
* That’s why its better to use PIC
IMPORTANT ICS
 MOTOR DRIVER
- IC L298 can be used as the motor driver
for the stepper motors because of its
high current capabilities

- Pin 1 and 15 are used to control motor.

- Pin 2,3,13 and 14 are output pin.

- Pin 5,7,10 and 12 are used for different input

- Pin 4 are used for supply and 8 for ground.


 PWM CONTROLLER
- MC44603 used as pwm controller.

- This device has the unique ability of


automatically changing operating modes.

- It controller pwm unbiased effect in


micro mouse.

- PWM controlling provides smooth


drives for stepper motor.

- This device also give a safety towards


burning of any circuit item.

- It does not allow unusual voltage


supplies.
SENSOR

 IR SENSOR
- Sensors are the most critical of all the systems. The accuracy
of the micro mouse relies on the quality of sensors.

- Four pairs of sensor are required.

- Each sensor block is comprised of an infrared emitter, the


Vishay TSAL6100 device and phototransistor, Vishay BPV11F

- The sensors work on the basis of reflection.

- An infrared led is turned on, emitting light in the infrared


spectrum, and a reading is made with an adjacent photo
transistor and corresponding ADC unit.
CIRCUIT DESCRIPTION OF SENSOR
 The phototransistor’s collector is connected
to an analog-to digital converter input on the
microcontroller.

 The infrared LED is directly controlled by an


output port on microcontroller.
POWER SUPPLY
 Micro mouse need a 12V battery
as our power supply. Ni-Cd
batteries can be used for this
purpose because of their better
performance. The batteries should
be as light as possible to maintain
better move for micromouse.
IMPORTANT FACT OF
MICROMOUSE
 HOW TO SOLVE 16X16 MAZE??

- Maze can be solve in three simple steps.

1):- First need to explore the whole maze.

2):- After exploring we need to find traversed


distance of each block by micromouse.

3):- Final step is to find the shortest distance of


center and than give final move to reach goal
in shortest time, which depend on coding style
and hardware efficiency.

 Broadly used algorithm for the maze solution is flood-fill algo.


MAZE EXPLORATION
 We define a recursive function :- explore().
 Than we used mark() which saved visited block as visited with the help another function
maze_entry().

 mark[mmc_x][mmx_y]=1………
 maze_entry(mmc_x,mmc_y,mmc_dir,front_open)

 As explore called recursively ,upon termination of this call micromouse will return to the
previous square.

 if(front_open&& unmarked(mmc_y,mmc_x,old_dir))
 { go_to(old_dir); * go 1 forward*
 explore(); * call recursive*
 go_to(old_dir+2); *go 1 back*
 }
 We defined direction as left, right , front so we need three recursive call.
 After exploring whole maze micromouse will return to starting square
DISTANCE CALCULATION
 AIM TO FIND MINIMUM DISTANCE OF EACH MAZE SQUARE FROM STARTING PONT:-

- For this approach we used FLOOD-FILL algorithm.


- According this algo we defined 2D array map int type.
- Array used for recording the distance.
- we used -1 to mark each unreachable square and [0,0] for starting
square.

map[i][j]= -1; / initialize/


nmap[i][j]=0; / copy back after each iteration/
………………………….
map[0][0]=0;
nmap[0][0]=0;
change=1;
while(change); /while used to map , entry change/
{
change=0
for(i=0;i<mazesize;i++) for(j=0;j<mazesize;j++) / if condition used to take care of maze borders/
{
if (map[i][j]== -1)
{
if(i>0)
if(wall[i][j][0]&&map[i-1][j]!= -1) / if value!= -1 than new distance computed and enterd in
{namp[i][j]=map[i-1][j]=1} distance array namp/
……………………………..
THANK YOU

You might also like