Skip to content

AlessandroSaviolo/Maze-Solver-using-ROS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Maze Solver using ROS

This work is the final project for the course Mobile Robots that I attended during my exchange program at National Chiao Tung University (Taiwan).

The purpose of this project is to assemble a robot and implement the algorithm for making the robot smartly move in a maze and find a LED puck. Both Raspberry Pi and Arduino are used.

1. Sensors

The following sensors have been used to assemble the robot:

  • 1 Light Sensor

  • 3 Ultrasonic Distance Sensor

2. Moving Patterns

The following moving patterns have been implemented to allow the robot to smartly move in the maze:

  • Turning Left around the Corner: video

  • Turning Right away from the Wall: video

  • Driving Forward Along the Wall: video

In order to drive forward along a wall, the wheels speed must be adjusted constantly. To do so, the following formula is used to compute the two different wheels speed:

By using these moving patterns the robot is able to solve the maze (find the LED puck). Example.

3. Flow Chart

License

Copyright (C) 2021 Alessandro Saviolo

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.