Next: 7.48 writelog
Up: 7. Device Drivers
Previous: 7.46 waveaudio
Contents
Subsections
7.47 wavefront
Brian P. Gerkey gerkey(at)stanford.edu,Andrew Howard ahoward(at)usc.edu
The wavefront driver implements a simple path planner for a planar
mobile robot. The underlying planner, which uses wavefront propagation,
was written by Andrew Howard; the integration into Player was done by Brian
Gerkey.
This driver works in the following way: upon receiving a new position
target, a path is planned from the robot's current pose, as reported by
the underlying localize device. The waypoints in this path are handed
down, in sequence, to the underlying position device.
By tying everything together in this way, this driver offers the mythical
``global goto'' for your robot.
Supported interfaces:
Required devices:
Supported configuration requests:
Name | Type | Default | Meaning |
position_index | integer | 0 | Index of the underlying position device. |
localize_index | integer | 0 | Index of the underlying
localize device. |
map_filename | string | none | Bitmap file containing map in which
to plan. |
map_scale | float | none | Meters per pixels in map. |
robot_radius | length | 0.15 | Radius of robot. |
safety_dist | length | robot_radius | Distance to keep
between robot and obstacles. |
max_radius | length | 1.0 | Distance beyond which is
considered infinite for planning purposes (?) |
dist_penalty | float | 1.0 | Fudge factor to discourage
cutting corners. |
dist_epsilon | length | 3*robot_radius | Distance from target
position that will be considered acceptable. |
angle_epsilon | angle | 10 degrees | Angular difference from target
angle that will be considered acceptable. |
- This driver is new, not widely tested, and non-trivial to configure
and use.
- There is currently no way to get feedback from the planner, such as:
the current list of waypoints, the lack of a feasible path, or the
achievement of the final goal.
- The underlying position device must be capable of doing position
control (i.e., not velocity control), preferably with local obstacle
avoidance (a very good candidate is the vfh driver).
- The underlying localize device must have already converged to a
reasonable estimate of the robot's pose before targets are sent to this
driver (otherwise results will be unpredictable at best).
- The target thresholds (dist_epsilon and angle_epsilon)
should be greater than those thresholds in the underlying position
device, assuming it's vfh. Otherwise, the underlying driver thinks
the robot has reached a target, while the wavefront driver is still
waiting.
Next: 7.48 writelog
Up: 7. Device Drivers
Previous: 7.46 waveaudio
Contents
2004-06-02