Gazebo Robot Maze - Sonar (C++, Gazebo) (Figures in process)
Overview:
In this project, a Gazebo tank bot with a sonar sensor was used as
the platform for a controller to guide the robot to the goal of a
maze. The simulated sonar sensor has a angular range of about 30
degrees and a distance range of 2 meters and returns a distance value
if an object is within this range.
Purpose:
To independently design a robot controller algorithm (C++) that
uses a basic range sensor to navigate to the goal of a maze.
Implement designs in Gazebo.
Challenges:
Range sensor has limited angular range and does not return
angle of detection.
Limited sensors required navigation algorithm to have different
states in order to avoid cases where bot would get stuck.
Outcome:
Implemented an algorithm to succesfully navigate to the goal
of a maze with limited sensor data.
Algorithm:
Wall follow allows for navigation to next "doorway"
When at a "doorway" and previous wall has been cleared
(no object detected), bot turns towards goal
When met with another obstacle, turn based on alternating
turn variable (prevent bot from getting stuck)
Continue wall follow on current obstacle
Repeat until goal reached
Skills Learned:
Implementation of custom algorithm with limited input