8.11 手部关节
8.11.1 全局值说明
-
消息名称:
MotorName -
数据定义位置:
-
说明:手指各关节ID定义如下,适用于天工行者·无疆:
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 状态获取接口
-
说明:获取手指各关节的状态信息,其中包含电机的当前位置、速度、电流,适用于天工行者·无疆。
-
控制方式:
topic -
话题名称:
/inspire_hand/state/left_hand和/inspire_hand/state/right_hand -
数据定义位置:
sensor_msgs::msg::JointState注意:这里的数据(位置,速度,电流),指的是百分比
std_msgs/Header header
string[] name #说明,id=1为小指,id=6为大拇指旋转
float64[] position #百分比
float64[] velocity #百分比
float64[] effort #百分比
8.11.3 控制接口-topic-控制手指各关节角度
-
说明:手指电机的位置控制接口,需要提供期望位置、期望速度、最大电流,适用于天工行者·无疆。
-
控制方式:
topic -
话题名称:
/inspire_hand/ctrl/left_hand和/inspire_hand/ctrl/right_hand -
数据定义位置:
sensor_msgs::msg::JointState.msg注意:这里的position,指的仍然是手指张开的百分比
std_msgs/Header header
string[] name
float64[] position #百分比
8.11.4 控制接口-service-控制手指各关节角度
-
说明:手指各个关节的位置控制接口,以百分比的方式,适用于天工行者·无疆。
-
控制方式:
service -
话题名称:
/inspire_hand/set_angle_flexible/left_hand和/inspire_hand/set_angle_flexible/right_hand -
数据定义位置:
bodyctrl_msgs::srv::set_angle_flexible.srvstring[]name
float32[]angle_ratio
bool angle_accepted
8.11.5 控制手指各关节力矩
-
说明:手指各个关节的位置力矩,以百分比的方式,适用于天工行者·无疆。
-
控制方式:
service -
话题名称:
/inspire_hand/set_force/left_hand和/inspire_hand/set_force/right_hand -
数据定义位置:
bodyctrl_msgs::srv::set_force.srv -
request:
float32 force0_Ratio #小拇指-百分比(0代表0g,1代表1000g)
float32 force1_Ratio #无名指-百分比
float32 force2_Ratio #中指-百分比
float32 force3_Ratio #食指-百分比
float32 force4_Ratio #大拇指弯曲-百分比
float32 force5_Ratio #大拇指旋转-百分比 -
response:
bool force_accepted #是否设置成功
8.11.6 控制手指各关节速度
-
说明:手指各个关节的位置力矩,以百分比的方式,适用于天工行者·无疆。
-
控制方式:
service -
话题名称:
/inspire_hand/set_speed/left_hand和/inspire_hand/set_speed/right_hand -
数据定义位置:
bodyctrl_msgs::srv::set_speed.srv -
request:
float32 speed0_Ratio #小拇指-百分比(1代表800ms从最大角度到最小角度,0.5代表1600ms,0.25代表3200ms)
float32 speed1_Ratio #无名指-百分比
float32 speed2_Ratio #中指-百分比
float32 speed3_Ratio #食指-百分比
float32 speed4_Ratio #大拇指弯曲-百分比
float32 speed5_Ratio #大拇指旋转-百分比 -
response
bool speed_accepted #是否设置成功
8.11.7 清除手指各关节错误
-
说明:清除手指各个关节的错误接口,适用于天工行者·无疆。
-
控制方式:
service -
话题名称:
/inspire_hand/set_clear_error/left_hand和/inspire_hand/set_clear_error/right_hand -
数据定义位置:
bodyctrl_msgs::srv::set_clear_error.srv -
Request
null -
Response
boll setclear_error_accepted #是否设置成功