DynaArm Status Controller

Controller that provides additional status information about the configured DynaArm. The published ArmState consists of an array of information about each configured actuator

Parameters

Definition:

dynaarm_status_broadcaster:
  joints:
    type: string_array
    default_value: []
    description: "Names of joints used by the controller"
    validation:
      unique<>: null
  arm_name:
    type: string
    default_value: "dynaarm"
    description: "name of the arm hardware interface"

joints | [Required]:
List of managed joints by the controller. Always needs to be a list of all joints of an arm in the order specified in the urdf

arm_name | [Required]:
Name of the arm as specified in the ros2control part of the urdf. Currently this is ${tf_prefix}DynaarmSystem

Example:

A full example can be found in the dynaarm_demo repository.

dynaarm_status_broadcaster:
  ros__parameters:
    joints:
      - shoulder_rotation
      - shoulder_flexion
      - elbow_flexion
      - forearm_rotation
      - wrist_flexion
      - wrist_rotation
    arm_name: DynaarmSystem

ROS Interfacing

Topics:

~/state | [Publisher]:
type: <dynaarm_msgs/msg/ArmState> Publishes the ArmState message with the configured controller update rate.

Additional Information

The DriveState message contains not only the currently read position/velocity/effort information but also the position/velocity/effort commands that where actually command and confirmed by the drive. For certain advanced control scenarios this can be advantageous. The temperature information for each phase is only provided in case the drive was configured to use the E-type PDO.

References