Skip to content

ComputePathThroughPoses

Invokes the ComputePathThroughPoses ROS 2 action server, which is implemented by the nav2_planner module. The server address can be remapped using the server_name input port.

Input Ports

start

Type: geometry_msgs::msg::PoseStamped Default: N/A

Start pose. Optional. Only used if not left empty. Takes in a blackboard variable, e.g. "{start}".

goals

Type: nav_msgs::msg::Goals Default: N/A

Goal poses. Takes in a blackboard variable, e.g. "{goals}".

planner_id

Type: string Default: ""

Mapped name to the planner plugin type to use, e.g. GridBased.

server_name

Type: string Default: N/A

Action server name. If not specified, compute_path_through_poses is used.

server_timeout

Type: chrono::milliseconds Default: N/A

Action server timeout (ms). If not provided, uses the BT Navigator's default_server_timeout parameter value (20 ms by default).

Output Ports

path

Type: nav_msgs::msg::Path Default: N/A

Path created by action server. Takes in a blackboard variable, e.g. "{path}".

last_reached_index

Type: int Default: N/A

In the case of a partial plan, index of the last reached pose from the goals list. Otherwise -1 which also corresponds to ComputePathThroughPosesResult::ALL_GOALS if a full plan through all the goals was possible.

error_code_id

Type: uint16 Default: N/A

Compute path through poses error code. See ComputePathThroughPoses action message for the enumerated set of error codes.

error_msg

Type: string Default: N/A

Compute path through poses error message. See ComputePathThroughPoses action message for the enumerated set of error codes.

Example

<ComputePathThroughPoses goals="{goals}" path="{path}" planner_id="GridBased"
                         server_name="ComputePathThroughPoses" server_timeout="10"
                         error_code_id="{compute_path_error_code}" error_msg="{compute_path_error_msg}"/>