Skip to main content
Version: V2.0.5.1

8.11 Hand Joints


8.11.1 Global Value Definitions

  • Message name: MotorName

  • Description: Joint ID definitions for each finger (applicable to Walker Tienkung · Embodied Intelligence):

    uint16 MOTOR_FINGER_LITTLE = 1,         # Little finger
    uint16 MOTOR_FINGER_RING = 2, # Ring finger
    uint16 MOTOR_FINGER_MIDDLE = 3, # Middle finger
    uint16 MOTOR_FINGER_FORE = 4, # Index finger
    uint16 MOTOR_FINGER_THUMB_BEND = 5, # Thumb bend
    uint16 MOTOR_FINGER_THUMB_ROTATION = 6, # Thumb rotation

8.11.2 Status Interface

  • Description: Obtain the status of each finger joint, including current motor position, speed, and current. Applicable to Walker Tienkung · Embodied Intelligence.

  • Communication type: topic

  • Topic names: /inspire_hand/state/left_hand and /inspire_hand/state/right_hand

  • Message definition: sensor_msgs::msg::JointState

    Note: The values of position, velocity, and effort are expressed as percentages.

    std_msgs/Header header
    string[] name # Note: id=1 is the little finger; id=6 is thumb rotation
    float64[] position # Percentage
    float64[] velocity # Percentage
    float64[] effort # Percentage

8.11.3 Control Interface — Topic

Use a topic to control the angles of finger joints.

  • Description: Position control interface for hand motors. Requires desired position, desired speed, and maximum current (expressed as a percentage). Applicable to Walker Tienkung · Embodied Intelligence.

  • Communication type: topic

  • Topic names: /inspire_hand/ctrl/left_hand and /inspire_hand/ctrl/right_hand

  • Message definition: sensor_msgs::msg::JointState

    Note: The position field represents the finger opening percentage. 1.0 means fully open, and 0.0 means fully closed. If you need to control the thumb rotation joint (joint 6) together with the other joints, please pay attention to its relative position with respect to the other joints to avoid collisions that could damage the dexterous hand.

    std_msgs/Header header
    string[] name
    float64[] position # Percentage

8.11.4 Control Interface — Service

Use a Service to control the angles of finger joints.

  • Description: Position control interface for each finger joint, in percentage form. Applicable to Walker Tienkung · Embodied Intelligence.

  • Communication type: service

  • Service names: /inspire_hand/set_angle_flexible/left_hand and /inspire_hand/set_angle_flexible/right_hand

  • Service definition: bodyctrl_msgs::srv::set_angle_flexible

  • Request:

    string[] name
    float32[] angle_ratio
  • Response:

    bool angle_accepted

8.11.5 Control Finger Joint Torque

  • Description: Torque control interface for each finger joint, expressed as a percentage. Applicable to Walker Tienkung · Embodied Intelligence.

  • Communication type: service

  • Service names: /inspire_hand/set_force/left_hand and /inspire_hand/set_force/right_hand

  • Service definition: bodyctrl_msgs::srv::set_force

  • Request:

    float32 force0_ratio # Little finger – percentage (0 = 0 g, 1 = 1000 g)
    float32 force1_ratio # Ring finger – percentage
    float32 force2_ratio # Middle finger – percentage
    float32 force3_ratio # Index finger – percentage
    float32 force4_ratio # Thumb bend – percentage
    float32 force5_ratio # Thumb rotation – percentage
  • Response:

    bool force_accepted  # Whether the setting was successful

8.11.6 Control Finger Joint Speed

  • Description: Speed control interface for each finger joint, expressed as a percentage. Applicable to Walker Tienkung · Embodied Intelligence.

  • Communication type: service

  • Service names: /inspire_hand/set_speed/left_hand and /inspire_hand/set_speed/right_hand

  • Service definition: bodyctrl_msgs::srv::set_speed

  • Request:

    float32 speed0_ratio # Little finger – percentage (1: 800 ms from max to min angle; 0.5: 1600 ms; 0.25: 3200 ms)
    float32 speed1_ratio # Ring finger – percentage
    float32 speed2_ratio # Middle finger – percentage
    float32 speed3_ratio # Index finger – percentage
    float32 speed4_ratio # Thumb bend – percentage
    float32 speed5_ratio # Thumb rotation – percentage
  • Response:

    bool speed_accepted  # Whether the setting was successful

8.11.7 Clear Finger Joint Errors

  • Description: Interface for clearing errors on all finger joints. Applicable to Walker Tienkung · Embodied Intelligence.

  • Communication type: service

  • Service names: /inspire_hand/set_clear_error/left_hand and /inspire_hand/set_clear_error/right_hand

  • Service definition: bodyctrl_msgs::srv::set_clear_error

  • Request:

    (empty)
  • Response:

    bool setclear_error_accepted  # Whether the operation was successful