HokuyoAIST Hokuyo laser scanner driver library

This driver provides a interface_ranger interface to the HokuyoAIST Hokuyo laser scanner driver. Communication with the laser is via the Flexiport library. The driver supports the SCIP protocol versions 1 and 2.

Compile-time dependencies
  • HokuyoAIST 3.0
  • Flexiport 2.0
Provides
  • interface_ranger : Output ranger interface
Configuration requests
  • PLAYER_RANGER_REQ_INTNS
  • PLAYER_RANGER_REQ_POWER
  • PLAYER_RANGER_REQ_GET_GEOM
  • PLAYER_RANGER_REQ_GET_CONFIG
  • PLAYER_RANGER_REQ_SET_CONFIG
  • Note: Only the min_angle and max_angle values can be configured using this request. To change the scanning frequency, use the speed_level property.
Configuration file options
  • get_intensities (boolean)
    • Default: false
    • Set to non-zero to get intensity data with each range scan on models that support it. This can also be enabled/disabled using the PLAYER_RANGER_REQ_INTNS message. Note that the data retrieval mode used to get intensity data requires that the scan is performed after the command is received, so this will introduce a slight delay before the data is delivered.
  • portopts (string)
    • Default: "type=serial,device=/dev/ttyACM0,timeout=1"
    • Options to create the Flexiport port with. Note that any baud rate specified in this line should be the scanner's startup baud rate.
  • pose (float 6-tuple: (m, m, m, rad, rad, rad))
    • Default: [0.0 0.0 0.0 0.0 0.0 0.0]
    • Pose (x, y, z, roll, pitch, yaw) of the laser relative to its parent object (e.g. the robot).
  • size (float 3-tuple: (m, m, m))
    • Default: [0.0 0.0 0.0]
    • Size of the laser in metres.
  • min_angle (float, radians)
    • Default: -4.0 rad (Will use laser default)
    • Minimum scan angle to return. Will be adjusted if outside the laser's scannable range.
  • max_angle (float, radians)
    • Default: 4.0 rad (Will use laser default)
    • Maximum scan angle to return. Will be adjusted if outside the laser's scannable range.
  • invert (boolean)
    • Default: false
    • If true, the reading will be inverted (i.e. read backwards). Useful if the laser scanner is mounted upside down.
  • power (boolean)
    • Default: true
    • If true, the sensor power will be switched on upon driver activation (i.e. when the first client connects). Otherwise a power request must be made to turn it on before data will be received.
  • verbose (boolean)
    • Default: false
    • Enable verbose debugging information in the underlying library.
  • ignoreunknowns (boolean)
    • Default: false
    • Ignore unknown lines sent by the laser in response to sensor info request commands.
Properties
  • speed_level (integer, 0 to 10 or 99)
    • Default: 0
    • The speed at which the laser operates, as a level down from maximum speed. See the HokuyoAIST library documentation for suitable values.
  • high_sensitivity (integer)
    • Default: 0
    • Set to non-zero to enable high sensitivity mode on models that support it.
  • min_dist (float, metres)
    • Default: 0m
    • Minimum possible distance. Below that means there is an error (a scratch on the laser for instance). The reading is then adjusted to the average of the neighboring valid beams.
  • hw_timestamps (boolean)
    • Default: false
    • When false, the server will use server time stamps in data messages. When true, the time stamp in the laser data will be used, offset to the current system time.
Example
driver
(
    name "hokuyoaist"
    provides ["ranger:0"]
    portopts "type=serial,device=/dev/ttyS0,timeout=1"
)
Author
Geoffrey Biggs