Husky Gmapping Demo

This tutorial shows you how to use move_base with gmapping to perform autonomous planning and movement with simultaneous localization and mapping (SLAM), on a simulated Husky, or a factory-standard Husky with a laser scanner publishing on the scan topic.

To adapt this demo to your own Husky, you may need to clone the husky_navigation repository, and modify the relevant parameters. To learn about move_base, gmapping, and the navigation stack, see the Navigation Tutorials.

Instructions

  1. Please make sure that the Husky navigation demo package is installed:

sudo apt-get install ros-noetic-husky-navigation
  1. In three separate terminal windows:

    1. Start the Clearpath-configured Husky simulation environment:

    export HUSKY_LMS1XX_ENABLED=1;  roslaunch husky_gazebo husky_playpen.launch
    
    1. Start the Clearpath-configured rviz visualizer:

    roslaunch husky_viz view_robot.launch
    
    1. Start the gmapping demo:

    roslaunch husky_navigation gmapping_demo.launch
    
  2. In the Rviz visualizer, make sure the visualizers in the Navigation group are enabled.

  3. Use the 2D Nav Goal tool in the top toolbar to select a movement goal in the visualizer. Make sure to select an unoccupied (dark grey) or unexplored (light grey) location.

  4. As the robot moves, you should see the grey static map (map topic) grow. Occasionally, the gmapping algorithm will relocalize the robot, causing a discrete jump in the map->odom transform.

  5. To save the generated map, you can run the map_saver utility:

rosrun map_server map_saver -f <filename>