The nubot_nav
package enables mapping and exploration for the nubot
through the slam_toolbox
and nav2
stack.
The intention behind doing this project was to gain familiarity with the slam_toolbox
package and nav2
stack.
The manual exploration allows the user to move the nubot in gazebo
(using the 'teleop_twist_keyboard
package or by giving 2-D goal poses) to explore its 2-D environment while building a map of it.
To launch manual exploration:
ros2 launch nubot_nav manual_explore.launch.xml
SLAM_teleop.mp4
The autonomous explorer node (nicknamed dora
given the efficacy of the algorithm) explores the frontiers of the map by using what is essentially a naked (single-branched) Rapidly exploring Random Tree. The nubot is given random goal poses within its immediate vicinity to slowly map the entire region after a sufficiently long duration. This algorithm draws inspiration from Finding Nemo's Dory's philosophy: "Just keep swimming", and the crazy_turtle
package. As long as the nubot does not stop, it should eventually map the entire region.
To launch autonomous exploration:
ros2 launch nubot_nav explore.launch.xml
SLAM_frontier.mp4
Author: Aditya Nair