Skip to content

SLAM Package Choice

Erick Mejia Uzeda edited this page Nov 27, 2019 · 6 revisions

Objective :

  • Document the SLAM package chosen for the rover and the reasoning behind doing so

Key Factors in decision :

  • Package Performance - How well the package can model real world and perform SLAM mostly based on research papers and the metrics by the researchers

  • Compatibility with rover - Is the robot configured with onboard components that we can use to run the SLAM package to its full potential

  • Ease of integration and testing - How costly in terms of time and effort is it to integrate and test with our rover

Methodology :

  • We compared popular slam packages based on package performance and narrowed our choices to rtab_map ,cartographer and gmapping to be the best for 2D SLAM with LIDAR .

  • Rtab_map while being best in terms of performance needs some form of depth sensor like a Kinect/realsense for optimal performance.

    • NOTE: We have a camera (stereo) on board (or else how will the CV team do CV). We can leverage it using Rtab_map
  • Cartographer seems to be harder to integrate and test with (I think we really need to look into this more).

  • Currently we believe gmapping to be most compatible and easy to use with the rover . This is subject to change in light of new information

    • NOTE: Gmapping is not recommended to use for short range LIDARs such as Hokuyo (our LIDAR) with standard parameter settings. See this link for reference
    • NOTE: Gmapping is no longer maintained (thus perhaps getting outdated)

References :


Using gmapping (gmap package)

  • To use gmapping on its own run: $ roslaunch gmap gmapping.launch
  • To use gmapping + navigation stack run: $ roslaunch gmap gmapping_navigation.launch
  • To save the current map run: $ rosrun map_server map_saver -f <path-to-desired-file-location>/<file-name>
  • To view the map created use $ xdg-open <path-to-desired-file-location>/<file-name>

Clone this wiki locally