../_images/tiagopro-icon.png ../_images/tiago-icon.png ../_images/triago-icon.png ../_images/mobile-bases-icon.png

βš™οΈ Docking API#

The Docking API provides access to docking functionalities, enabling users to interact with Docking Server and Docking Manager through ROS 2 actions and services.

πŸ”Œ Docking Server ROS 2 API#

The Docking Server supports docking, undocking, and other docking-related services through the interfaces below:

Attention

For detailed documentation on the Nav2 Docking Server API, including action definitions and usage examples, please visit the official Nav2 Docking Server API reference.

πŸ› οΈ Docking Manager ROS 2 API#

The Docking Manager supports learning, navigating, and managing dock stations through the following actions and services:

Actions#

πŸ“š /learn_dock#

Detects and learns dock station. The dock’s location is stored in the database for future use.

Goal:

Parameter

Description

Type

dock_id

Unique identifier for the dock station (i.e: "my_dock").

string

target_id

ID of the target to detect (i.e: 0).

uint16

dock_type

Type of dock station (i.e: 0).

uint16

execute_dock_maneuver

Indicates whether to validate the dock by performing the docking maneuver.

bool

dock_charging_plugin

Plugin used for docking operations (pal_charging_dock by default).

string

Result:

Parameter

Description

Type

success

Indicates if the dock was successfully learned.

bool

transform

The pose of the detected dock in the reference frame.

geometry_msgs::msg::TransformStamped

accuracy

Accuracy of the detected dock pose.

float64

πŸ”„ /go_and_dock#

Guides the robot to a previously learned dock station and performs the docking maneuver.

Goal:

Parameter

Description

Type

dock_id

Full identifier of the dock to navigate to (i.e: "/my_building/my_floor/my_dock").

string

dock_charging_plugin

Plugin used for docking operations (pal_charging_dock by default).

string

Result:

Parameter

Description

Type

success

Indicates if the docking maneuver was successful.

bool

Services#

πŸ—‚οΈ /docking_manager/get_docks#

Retrieves a list of all known dock stations stored in the database.

Request:

Parameter

Description

Type

(none)

The service does not require any parameters.

Response:

Parameter

Description

Type

dock_list

A list of dock stations, each containing dock_id, dock_type, and transform.

array

RViz GUI#

The Docking Manager integrates seamlessly with the PAL Navigation 2 Panel in rviz. Through this interface, users can:

  • Learn Dock: Click Learn Dock, select a target, and define parameters interactively.

  • Go and Dock: Choose a dock from the list and trigger the docking maneuver.

  • Undock: Perform undocking operations with ease.

  • Clear: Remove selected setting.

:term:`rviz` Docking Manager Interface

Docking Manager Interface in rviz#