TODO: move this information into the node code, as Doxygen comments. Change links to this page to point to the autogenerated node docs. Delete this page.
wavefront player
The wavefront_player node provides global planning and local control of a laser-equipped robot moving in 2-D, given a map.
Theory of operation
Under the hood, we're using the wavefront driver from Player. It implements the standard wavefront algorithm, using dynamic programming to find the lowest cost path on a grid. The robot is assumed to be circular.
Topics
Subscribes to:
name: scan, type: LaserScan. Pose-stamped laser scans, coming from a planar laser that is affixed to the robot, aimed parallel to the ground.
name: pose, type: Pose2DFloat32. Globally accurate pose estimates from the robot, e.g., from localization.
name: goal, type: Pose2DFloat32. Global goal
Uses RPC services:
name: map, type: OccMap2D. A 2-D occupancy grid map. The node will retrieve this map once, as part of its startup procedure. TODO: reference the RPC type, and explain about tile-by-tile retrieval.
Publishes to:
name: status, type: PlannerStatus. Status of the planner (path valid? waypoints, etc.)
Parameters
Local name, type, and semantics of each parameter
Desired feature set
- Details of required operation
- Hardware considerations
- Update rates, modes of operation
- Error conditions to be detected, recovery behavior
Development Milestones
First milestone
- done (date)
Second milestone
- Needed to test Alphas by July 7