Owning Palette: Path Planning VIs
Requires: Robotics Module
Plans a least-cost path through a static map to a goal reference within a map. Use this VI to return a single, optimal path.
This VI uses a best-first algorithm to search paths that are most likely to lead to the goal while minimizing the cost of traversing the path.
|map reference in is a reference to the map that represents the robot environment. You can use the Create Directed Graph Map VI or Create Occupancy Grid Map VI to generate this LabVIEW class object.|
|start reference specifies the current position of the robot within the map. If this VI operates on a directed graph map or occupancy grid map, you can use the Get Node Reference VI or Get Cell Reference VI, respectively, to generate this LabVIEW class object.|
|goal reference specifies the position to which the robot should navigate within the map. If this VI operates on a directed graph map or occupancy grid map, you can use the Get Node Reference VI or Get Cell Reference VI, respectively, to generate this LabVIEW class object.|
|error in describes error conditions that occur before this node runs. This input provides standard error in functionality.|
|path references is an array of references to points on the map along the path this VI calculates. If no valid path exists is TRUE, LabVIEW returns a partial path. Otherwise, path references contains a complete path to the goal node.
You can use a partial path to direct a mobile robot to a point in the map that is nearer to the goal than the current position of the robot.
|no valid path exists is TRUE if the path references do not end at the goal node.|
|error out contains error information. This output provides standard error out functionality.|
|path cost is the cost of traversing the path references. path cost returns Inf if no possible path exists or the map changes significantly.|
This VI uses an A* algorithm to plan an optimal path through a static map, which is a time-intensive operation. Use the AD* VI to plan a less-optimal path through a dynamic map more quickly and to replan the path as the map changes.
LabVIEW locks maps while this VI plans paths through them. While a map is locked, LabVIEW queues any updates to the map and applies them when this VI finishes planning a path.
Refer to the Astar on Voronoi.lvproj in the labview\examples\robotics\Path Planning\Astar\Astar on Voronoi Graph directory for an example of using the A* VI.