• Diff for "gmapping"
Differences between revisions 47 and 48
Revision 47 as of 2009-08-14 20:52:29
Size: 5331
Editor: localhost
Comment: converted to 1.6 markup
Revision 48 as of 2009-08-18 07:16:39
Size: 5295
Editor: KenConley
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
<<Include(Menus/MapBuildingStack)>>
<<Rosdoc
Header(gmapping)>>
<<PackageHeader(gmapping)>>

  Documentation Status

slam_gmapping: gmapping

Package Summary

Documented

This package contains GMapping, from OpenSlam, and a ROS wrapper. The gmapping package provides laser-based SLAM (Simultaneous Localization and Mapping), as a ROS node called slam_gmapping. Using slam_gmapping, you can create a 2-D occupancy grid map (like a building floorplan) from laser and pose data collected by a mobile robot. This package uses r39 from GMapping SVN repsitory at openslam.org, with minor patches applied to support newer versions of GCC and OSX.

slam_gmapping: gmapping

Package Summary

Documented

This package contains GMapping, from OpenSlam, and a ROS wrapper. The gmapping package provides laser-based SLAM (Simultaneous Localization and Mapping), as a ROS node called slam_gmapping. Using slam_gmapping, you can create a 2-D occupancy grid map (like a building floorplan) from laser and pose data collected by a mobile robot. This package uses r39 from GMapping SVN repsitory at openslam.org, with minor patches applied to support newer versions of GCC and OSX.

slam_gmapping: gmapping

Package Summary

Documented

This package contains GMapping, from OpenSlam, and a ROS wrapper. The gmapping package provides laser-based SLAM (Simultaneous Localization and Mapping), as a ROS node called slam_gmapping. Using slam_gmapping, you can create a 2-D occupancy grid map (like a building floorplan) from laser and pose data collected by a mobile robot. This package uses r39 from GMapping SVN repsitory at openslam.org, with minor patches applied to support newer versions of GCC and OSX.

slam_gmapping: gmapping | openslam_gmapping

Package Summary

Released Continuous integration Documented

This package contains a ROS wrapper for OpenSlam's Gmapping. The gmapping package provides laser-based SLAM (Simultaneous Localization and Mapping), as a ROS node called slam_gmapping. Using slam_gmapping, you can create a 2-D occupancy grid map (like a building floorplan) from laser and pose data collected by a mobile robot.

slam_gmapping: gmapping | openslam_gmapping

Package Summary

Released Continuous integration Documented

This package contains a ROS wrapper for OpenSlam's Gmapping. The gmapping package provides laser-based SLAM (Simultaneous Localization and Mapping), as a ROS node called slam_gmapping. Using slam_gmapping, you can create a 2-D occupancy grid map (like a building floorplan) from laser and pose data collected by a mobile robot.

slam_gmapping: gmapping | openslam_gmapping

Package Summary

Released Continuous integration Documented

This package contains a ROS wrapper for OpenSlam's Gmapping. The gmapping package provides laser-based SLAM (Simultaneous Localization and Mapping), as a ROS node called slam_gmapping. Using slam_gmapping, you can create a 2-D occupancy grid map (like a building floorplan) from laser and pose data collected by a mobile robot.

slam_gmapping: gmapping | openslam_gmapping

Package Summary

Released Continuous integration Documented

This package contains a ROS wrapper for OpenSlam's Gmapping. The gmapping package provides laser-based SLAM (Simultaneous Localization and Mapping), as a ROS node called slam_gmapping. Using slam_gmapping, you can create a 2-D occupancy grid map (like a building floorplan) from laser and pose data collected by a mobile robot.

Cannot load information on name: gmapping, distro: lunar, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.

Package Summary

The gmapping package provides laser-based SLAM (Simultaneous Localization and Mapping), as a node called slam_gmapping. Using slam_gmapping, you can create a 2-D occupancy grid map (like a building floorplan) from laser and pose data collected by a mobile robot.

This is mostly a third party package; the underlying GMapping library is externally documented. Look there for details on many of the parameters listed below.

To use slam_gmapping, you need a mobile robot that provides odometry data and is equipped with a horizontally-mounted, fixed, laser range-finder. slam_gmapping will attempt to transform each incoming scan into the odometry frame. See below for more on required transforms.

Example

To make a map from a robot with a laser publishing scans on the base_scan topic:

rosrun gmapping slam_gmapping scan:=base_scan

Nodes

slam_gmapping

The slam_gmapping node takes in laser scans, and offers up a service over which the resulting map can be retrieved.

ROS API

Subscribed topics

  • scan (sensor_msgs/LaserScan) : Laser scans to create the map from

Advertised services

  • dynamic_map (nav_msgs/GetMap) : Call this service to get the map data

Parameters used

  • ~inverted_laser (default: false) : Is the laser right side up (scans are ordered CCW), or upside down (scans are ordered CW)?
  • ~throttle_scans (default: 1) : Process 1 out of every this many scans (set it to a higher number to skip more scans)
  • ~base_frame (default: "base_link") : The frame attached to the mobile base.
  • ~map_frame (default: "map") : The frame attached to the map.
  • ~odom_frame (default: "odom") : The frame attached to the odometry system.
  • ~map_update_interval_ (default: 5.0) : How long (in seconds) between updates to the map. Lowering this number updates the occupancy grid more often, at the expense of greater computational load.
  • ~maxUrange (default: 80.0) : The maximum usable range of the laser. A beam is cropped to this value.
  • ~sigma (default: 0.05) : The sigma used by the greedy endpoint matching
  • ~kernelSize (default: 1) : The kernel in which to look for a correspondence
  • ~lstep (default: 0.05) : The optimization step in translation
  • ~astep (default: 0.05) : The optimization step in rotation
  • ~iterations (default: 5) : The number of iterations of the scanmatcher
  • ~lsigma (default: 0.075) : The sigma of a beam used for likelihood computation
  • ~ogain (default: 3.0) : Obstacle gain (?)
  • ~lskip (default: 0) : Number of beams to skip in each scan.
  • ~srr (default: 0.1) : Odometry error in translation as a function of translation (rho/rho)
  • ~srt (default: 0.2) : Odometry error in translation as a function of rotation (rho/theta)
  • ~str (default: 0.1) : Odometry error in rotation as a function of translation (theta/rho)
  • ~stt (default: 0.2) : Odometry error in rotation as a function of rotation (theta/theta)
  • ~linearUpdate (default: 1.0) : Process a scan each time the robot translates this far
  • ~angularUpdate (default: 0.5) : Process a scan each time the robot rotates this far
  • ~resampleThreshold (default: 0.5) : The neff based resampling threshold (?)
  • ~particles (default: 30) : Number of particles in the filter
  • ~xmin (default: -100.0) : Initial map size
  • ~ymin (default: -100.0) : Initial map size
  • ~xmax (default: 100.0) : Initial map size
  • ~ymax (default: 100.0) : Initial map size
  • ~delta (default: 0.05) : Processing parameters (resolution of the map)
  • ~llsamplerange (default: 0.01) : Translational sampling range for the likelihood
  • ~llsamplestep (default: 0.01) : Translational sampling range for the likelihood
  • ~lasamplerange (default: 0.005) : Angular sampling range for the likelihood
  • ~lasamplestep (default: 0.005) : Angular sampling step for the likelihood

tf API

Required transforms

  • (the frame attached to incoming scans) -> base_link : usually a fixed value, broadcast periodically by mechanism_control, or a tf/transform_sender

  • base_link -> odom : usually provided by the odometry system (e.g., the driver for the mobile base)

Provided transforms

  • map - > odom

Tutorials


Review Process

Wiki: gmapping (last edited 2015-12-09 04:40:26 by Sebastian Schweigert)