Skip to content

Latest commit

 

History

History
64 lines (45 loc) · 3.45 KB

README.md

File metadata and controls

64 lines (45 loc) · 3.45 KB

Micromouse

This repository contains the code, design, and documentation for a micromouse robot. The robot is based on the Arduino Uno and uses ultrasonic sensors to navigate through the maze.

Component List

Name Quantity
Arduino Uno R3 1
Ultrasonic Distance Sensor 4
DC Motor 2
Piezo buzzer 1
H-bridge Motor Driver L293D 1

NOTE: Wheels and chassie are also required for finalization

Algorithm

This micromouse is based on the LSRB algorithm, which is a simple but effective algorithm for solving mazes. It works by moving the robot forward until it detects a wall. When the robot detects a wall, it turns left, right, or back depending on the following rules based on priority:

  1. Always follow LEFT whenever a turn is possible.
  2. If LEFT is not possible go STRAIGHT.
  3. If LEFT and STRAIGHT both are not possible go RIGHT.
  4. If LEFT, STRAIGHT, and RIGHT are not possible go BACK (or it means take a U-turn).

Our approach for solving different conditions are:

  1. Simple or Straight lane: The robot will follow the straight path.
  2. Left Turn (left only): The robot will take a left turn.
  3. Right Turn (right only): The robot will take a right turn.
  4. T intersection (T): The robot will take a left turn.
  5. Left T Intersection (straight or left): The robot will take a left turn.
  6. Right T Intersection (straight or right): The robot will take a left turn.
  7. Dead End: The robot will take a U-turn.
  8. Four lane intersection (Cross): The robot will go little further, if sensors still give same output then its end of maze else it will go left
  9. End of Maze: The robot will stop.

image

NOTE: Checkout our implemented code here

Tinkercad design & circuit diagram

Tinkercad design

Reference

  1. How to Build an Arduino-based Maze-Solving Robot
  2. Maze-Solving Algorithm
  3. Maze Generation Algorithm
  4. Maze-Solving Robot with 3 IR Sensors
  5. Coding a Line-Follower Robot using LSRB and Finding the Shortest Path

Special thanks

  1. RCOEM Robotics & Aviation club

Contributing

This project is open source and we welcome contributions from everyone. If you have any suggestions or improvements, please feel free to open an issue or submit a pull request.

  • Thank you for your interest in micromouse !
  • I hope this helps !