laserbarcode
[Drivers]

Collaboration diagram for laserbarcode:

Todo:
This driver has not been tested with the player 2.0 API
The laser barcode detector searches for specially constructed barcodes in the laser range finder data. An example laser barcode is shown below. The barcode is constructed using strips of retro-reflective paper. Each retro-reflective strip represents a `1' bit; each non-reflective strip represents a `0' bit. By default, the laserbarcode driver searches for barcodes containing 8 bits, each of which is exactly 50mm wide (the total barcode width is thus 400mm). The first and last bits are used as start and end markers, and the remaining bits are used to determine the identity of the barcode; with an 8-bit barcode there are 64 unique IDs. The number of bits and the width of each bit can be set in the configuration file.

The range at which barcodes can be detected identified is dependent on the bit width and the angular resolution of the laser. With 50mm bits and an angular resolution of 0.5 deg, barcodes can be detected and identified at a range of about 2.5m. With the laser resolution set to 0.25 deg, this distance is roughly doubled to about 5m.

See also the laserbar and laservisualbarcode drivers.

beacon.jpg

A sample laser barcode. This barcode has 8 bits, each of which is 50mm wide.

Compile-time dependencies

Provides

Requires

Configuration requests

Configuration file options

Example
driver
(
  name "laserbarcode"
  requires ["laser:0"]
  provides ["fiducial:0"]
  bit_count 5
  bit_width 0.1
)

Author:
Andrew Howard


Last updated 12 September 2005 21:38:45