Services¶
Service |
Type |
Description |
|---|---|---|
|
|
Power ON/OFF. |
|
|
Servo ON/OFF. |
|
|
Set tool flange voltage. |
|
|
Enable/disable gravity compensation per body part |
|
|
Cancel all active motion commands immediately |
|
|
Query Cartesian transform between two links |
|
|
Send |
|
|
Enable/disable persistent streaming mode with 10-minute hold times ( |
|
|
Claim ( |
|
|
Enable or disable impedance control mode for the trajectory execution action server ( |
ControlManagerCommand constants¶
Constant |
Value |
Description |
|---|---|---|
|
|
No operation |
|
|
Enable the Control Manager (start position hold) |
|
|
Disable the Control Manager (transition to IDLE) |
|
|
Reset MAJOR/MINOR fault and return to IDLE |
|
|
Enable the Control Manager, ignoring its range of motion limits. |
[!IMPORTANT]
⚠️ Calling
cancel_controlwhile using stream-based control will also close the stream. Aftercancel_control, you must re-open the stream before sending furthercmd_velcommands. To cancel only the current motion without closing the stream, use the action cancel (see Example 13).The current stream open/close state is reflected in the
robot_statetopic asrobot_stream_state(bool).
[!WARNING] Behavior of
robot_jointandrobot_cartesianActions under Active Stream: When persistent streaming is active (stream_controlistrue), the single joint (robot_joint) and Cartesian (robot_cartesian) commands are also routed through the command stream (stream_handler_).
In this mode, these actions will return a success (
succeed) status immediately after sending the command, without waiting for the robot to reach the target position or providing intermediate feedback.Therefore, target completion checking must be done independently by monitoring the joint state topics.
Joint/Cartesian Action Behavior Characteristics When Persistence Stream is Enabled:
When
robot_jointandrobot_cartesianaction commands are sent while the persistence stream is turned on, those commands are transmitted through the stream channel.In this case, it returns immediately without waiting for the robot to reach the target position; therefore, the client side must monitor whether the target has been reached via a separate joint status topic.
⚙️ = controlled by the corresponding flag in
driver_parameters.yaml
[!WARNING] Impedance configuration during active stream control: The robot command stream fixes the control mode configuration (e.g. position control vs impedance control) of the command instances when the stream is first opened.
Therefore, you cannot configure trajectory impedance while persistent stream control is active (
stream_controlistrue).The
/set_trajectory_impedanceservice will fail and returnsuccess: falseif called under an active stream.To apply trajectory impedance changes, you must first deactivate the stream (call
/stream_controlwithstate: false), configure the impedance via/set_trajectory_impedance, and then reactivate the stream (call/stream_controlwithstate: true).