Duration: Oct 2020 - Dec 2020
Purpose: Part of course on Mobile Robotics taken towards Master's degree at Northeastern University, Boston.
Skills: Robotic Operating System, SLAM, Path Planning
Problem Statement
You are given two robots: M and S.
Robot M is located outside the maze and Robot S is located at a random location inside the maze. Both Robots are equipped with only a laser scanner and may communicate exclusively on a single topic of message type String.
Assuming Robot M has a map of the maze, it must explore the maze until it finds Robot S upon which, it must lead Robot S outside the maze to complete the task.
Approach
1. Mapping: Starting from outside the maze, autonomously explore the maze and store a map.
2. Navigation: With a full map, navigate between any two locations in the maze.
3. Rescue: Starting from outside the maze, explore, locate and lead Robot S outside the maze.
Mapping
The primary challenge in this project is to autonomously navigate the narrow corridors of the maze. The width of each passage is only about 50% wider than the width of the Turtlebot that was used.
With careful tuning of costmap parameters and by reducing the footprint of the robot, the local planner was able to guide the robot through the narrow passages of the maze.
After this, mapping became a simple task using Explore_lite and gmapping to explore the full map.
Navigation
With a known map and a well tuned costmap, navigation is also a simple task, leveraging the move_base navigation stack and dwa_local_planner to plan and execute a path to any goal location.
Rescue
The challenge in rescue is for Robot S to follow Robot M using only a laser scanner. This was achieved by using turtlebot_follower along with a laser_filters.
Comments