In this tutorial, you will learn how to autonomously navigate a mobile robot in ROS1 using the `move_base` package for path planning and `amcl` for probabilistic localization on a prebuilt map. We will use a simulated robot (e.g., TurtleBot3) with a map previously generated using SLAM.
Launch the full navigation system with the saved map:
roslaunch turtlebot3_navigation turtlebot3_navigation.launch map_file:=$HOME/map.yaml
In RViz, click the “2D Pose Estimate” button and select the robot’s initial position and orientation on the map. This will help AMCL converge with an accurate initial pose estimate.
Click the “2D Nav Goal” button in RViz, select a destination and final orientation. `move_base` will compute a global path and command the robot to reach the goal while avoiding obstacles.
The robot does not move:
Check if the `move_base` node is running and all topics are correct.
Path not found:
Make sure the goal is reachable and not behind obstacles on the map.
AMCL does not converge:
Try slightly moving the robot or re-initialize pose using 2D Pose Estimate.