After building the map, close all the applications and rerun the robot driver using the following command:
$ roslaunch ChefBot_bringup robot_standalone.launch
Start the localization and navigation on the stored map using the following command:
$ roslaunch ChefBot_bringup amcl_demo.launch map_file:=~/test_map.yaml
Start viewing the robot using the following command in the remote PC:
$ roslaunch ChefBot_bringup view_navigation.launch
In RViz, we may need to specify the initial pose of the robot using the 2D Pose Estimate button. We can change the robot pose on the map using this button. If the robot is able to access the map, then we can use the 2D Nav Goal button to command the robot to move to the desired position. When we start the localization, we can see the particle cloud around the robot by using the AMCL algorithm:
The following is a screenshot of the robot as it navigates autonomously from its current position to the goal position. The goal position is marked as a black dot:
The black line from the robot to the black dot is the robot's planned path to reach the goal position. If the robot is not able to locate the map, we might need to fine-tune the parameter files in the ChefBot_bringupparam folder. For more fine-tuning details, you can go through the AMCL package on ROS at http://wiki.ros.org/amcl.