rangerposeinterpolator

Attach poses to ranger scans

The rangerposeinterpolator driver reads ranger scans from a ranger device and poses from a position2d device, linearly interpolates to estimate the actual pose from which the scan was taken, then outputs messages containing both scan and pose.

Compile-time dependencies
  • none
Provides
  • interface_ranger : Pose-stamped ranger scans (subtype PLAYER_RANGER_DATA_RANGESTAMPED) are published via this interface
Requires
  • interface_ranger : Raw ranger scans (subtype PLAYER_RANGER_DATA_RANGE) are read from this device
  • interface_position2d : Pose data (subtype PLAYER_POSITION2D_DATA_STATE) is read from this device
Configuration requests
  • All configuration are forwarded to the underlying interface_ranger device for handling.
Configuration file options
  • interpolate (integer)
    • Default: 1
    • Linearly interpolate between poses for each scan (1), or just attach the most recent pose to each scan (0).
  • max_scans (integer)
    • Default: 100
    • Maximum number of scans to buffer while waiting for a second pose in order to interpolate.
  • update_thresh ([length angle] tuple)
    • Default: [-1.0 -1.0]
    • Minimum change in pose (translation or rotation) required before a new ranger scan will be published. Use this option to choke the data rate. Set either value to -1.0 to indicate that no threshold should be applied in that dimension (i.e., every scan should be published).
  • update_interval (float, seconds)
    • Default: -1.0
    • Interval after which a new scan will be published, regardless of how far the robot has moved. Set to -1.0 to disable this threshold.
  • send_all_scans (integer)
    • Default: 1
    • Whether to stamp and publish every ranger scan. If set to 1, this option overrides update_thresh and update_interval.
Example
driver
(
  name "sicklms200"
  provides ["ranger:0"]
)
driver
(
  name "p2os"
  provides ["odometry::position:0"]
)
driver
(
  name "rangerposeinterpolator"
  provides ["ranger:1"]
  requires ["ranger:0" "position2d:0"]
)
Author
Brian Gerkey (modified from laser to ranger by Patrick Beeson)