Skip to main content
Version: V2.0.4.x

8.11 Hand Joints

8.11.1 Global Value Description

  • Message Name: MotorName

  • Data Definition Location:

  • Description: The following defines the ID for each finger joint, applicable to Tienkung Walker·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, // fore finger
    uint16 MOTOR_FINGER_THUMB_BEND = 5, // thumb bend
    uint16 MOTOR_FINGER_THUMB_ROTATION = 6,// thumb rotation

8.11.2 Status Acquisition Interface

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

  • Control Method: topic

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

  • Data Definition Location: sensor_msgs::msg::JointState

    Note: The data here (position, velocity, current) is in percentage

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

8.11.3 Control Interface - topic - Control Each Finger Joint Angle

  • Description: Position control interface for finger motors, requires desired position, desired speed, and maximum current, applicable to Tienkung Walker·Embodied Intelligence.

  • Control Method: topic

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

  • Data Definition Location: sensor_msgs::msg::JointState.msg

    Note: The position here still refers to the percentage of finger opening

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

8.11.4 Control Interface - service - Control Each Finger Joint Angle

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

  • Control Method: service

  • Topic Names: /inspire_hand/set_angle_flexible/left_hand and /inspire_hand/set_angle_flexible/right_hand

  • Data Definition Location: bodyctrl_msgs::srv::set_angle_flexible.srv

    string[] name
    float32[] angle_ratio
    bool angle_accepted

8.11.5 Control Each Finger Joint Torque

  • Description: Position torque for each finger joint, in percentage, applicable to Tienkung Walker·Embodied Intelligence.

  • Control Method: service

  • Topic Names: /inspire_hand/set_force/left_hand and /inspire_hand/set_force/right_hand

  • Data Definition Location: bodyctrl_msgs::srv::set_force.srv

  • Request:

    float32 force0_Ratio # little finger - percentage (0 represents 0g, 1 represents 1000g)
    float32 force1_Ratio # ring finger - percentage
    float32 force2_Ratio # middle finger - percentage
    float32 force3_Ratio # fore 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 Each Finger Joint Speed

  • Description: Position torque for each finger joint, in percentage, applicable to Tienkung Walker·Embodied Intelligence.

  • Control Method: service

  • Topic Names: /inspire_hand/set_speed/left_hand and /inspire_hand/set_speed/right_hand

  • Data Definition Location: bodyctrl_msgs::srv::set_speed.srv

  • Request:

    float32 speed0_Ratio # little finger - percentage (1 represents 800ms from maximum angle to minimum angle, 0.5 represents 1600ms, 0.25 represents 3200ms)
    float32 speed1_Ratio # ring finger - percentage
    float32 speed2_Ratio # middle finger - percentage
    float32 speed3_Ratio # fore 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 to clear errors for each finger joint, applicable to Tienkung Walker·Embodied Intelligence.

  • Control Method: service

  • Topic Names: /inspire_hand/set_clear_error/left_hand and /inspire_hand/set_clear_error/right_hand

  • Data Definition Location: bodyctrl_msgs::srv::set_clear_error.srv

  • Request

    null
  • Response

    bool setclear_error_accepted # whether the setting was successful