Appearance
状态
碰撞检测状态
查询碰撞检测状态
命令字: 0x3200
| 字段 | 类型 | 说明 |
|---|---|---|
| clear | int | 是否清除理论扭矩和实际扭矩差别,范围 [0, 1] |
json
{
"clear": 0
}控制器回复
命令字: 0x3201
| 字段 | 类型 | 说明 |
|---|---|---|
| Difference_torq | double[] | 理论与反馈差值列表,长度为 7 |
| actual_torq | double[] | 扭矩反馈值列表,长度为 7 |
| detect_torq | double[] | 碰撞检测阈值列表,长度为 7 |
| max_torq | double[] | 插值峰值列表,长度为 7 |
| target_torq | double[] | 扭矩理论值列表,长度为 7 |
json
{
"Difference_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
"actual_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
"detect_torq": [50.0, 50.0, 50.0, 50.0, 50.0, 50.0, 0.0],
"max_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
"target_torq": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
}指令运行百分比
查询运动指令已完成百分比
命令字: 0x3202
- 无需发送数据
控制器回复
命令字: 0x3203
| 字段 | 类型 | 说明 |
|---|---|---|
| completionRatio | double | 运行百分比,取值范围 [0, 1],最大值为 1 |
json
{
"completionRatio": 0.11
}当前位置
查询机器人坐标位置
命令字: 0x3210
| 字段 | 类型 | 说明 |
|---|---|---|
| coord | int | 查询当前坐标的位置,范围 [0, 4]:0 关节坐标,1 直角坐标,2 工具坐标,3 用户坐标,4 电机坐标 |
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"coord": 0,
"robot": 1
}控制器回复
命令字: 0x3212
| 字段 | 类型 | 说明 |
|---|---|---|
| configuration | int | 当前位置形态值,范围 [0, 8] |
| coord | int | 当前位置坐标类型,范围 [0, 4]:0 关节坐标,1 直角坐标,2 工具坐标,3 用户坐标,4 电机坐标 |
| pos | double[] | 获取到的弧度制当前位置信息 |
| posDeg | double[] | 获取到的角度制当前位置信息 |
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"configuration": 8,
"coord": 0,
"pos": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
"posDeg": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
"robot": 1
}控制器回复
命令字: 0x3213
| 字段 | 类型 | 说明 |
|---|---|---|
| coord | int | 当前位置坐标类型,范围 [0, 4]:0 关节坐标,1 直角坐标,2 工具坐标,3 用户坐标,4 电机坐标 |
| isDeg | int | 是否为角度制,范围 [0, 1] |
| position | double[] | 获取到的弧度制当前位置信息 |
| positionDeg | double[] | 获取到的角度制当前位置信息 |
| posture | int | 当前位置形态值,范围 [0, 8] |
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"coord": 0,
"isDeg": 0,
"position": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
"positionDeg": [0.8047034822, 0.0, 0.0, 0.033915260824, 0.0, -0.008860939141, 0.0],
"posture": 8,
"robot": 1
}说明:控制器回复上位机机器人坐标位置(0x3211)
查询双机协作下机器人坐标位置
命令字: 0x3214
| 字段 | 类型 | 说明 |
|---|---|---|
| coord1 | int | 获取机器人 1 位置的坐标类型,范围 [0, 3]:0 关节坐标,1 直角坐标,2 工具坐标,3 用户坐标 |
| coord2 | int | 获取机器人 2 位置的坐标类型,范围 [0, 3]:0 关节坐标,1 直角坐标,2 工具坐标,3 用户坐标 |
| robot1 | int | 双机协作第一个机器人号,范围 [1, 4],默认为 1 |
| robot2 | int | 双机协作第二个机器人号,范围 [1, 4],默认为 2 |
json
{
"coord1": 1,
"coord2": 1,
"robot1": 1,
"robot2": 2
}控制器回复
命令字: 0x3215
| 字段 | 类型 | 说明 |
|---|---|---|
| coord1 | int | 机器人 1 位置的坐标类型,范围 [0, 3] |
| coord2 | int | 机器人 2 位置的坐标类型,范围 [0, 3] |
| pos1 | double[] | 机器人 1 弧度制下的坐标 |
| pos1Deg | double[] | 机器人 1 角度制下的坐标 |
| pos2 | double[] | 机器人 2 弧度制下的坐标 |
| pos2Deg | double[] | 机器人 2 角度制下的坐标 |
| robot1 | int | 双机协作第一个机器人号,默认为 1 |
| robot2 | int | 双机协作第二个机器人号,默认为 2 |
json
{
"coord1": 0,
"coord2": 0,
"pos1": [-0.0, 0.0, 3.077931758984, -0.0, 0.0, -0.0, 0.0],
"pos1Deg": [-0.0, 0.0, 3.077931758984, -0.0, 0.0, -0.0, 0.0],
"pos2": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
"pos2Deg": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
"robot1": 1,
"robot2": 2
}电机负载值
查询机器人电机扭矩过载值
命令字: 0x3220
| 字段 | 类型 | 说明 |
|---|---|---|
| robot_num | int | 查询机器人号,范围 [1, 4] |
json
{
"robot_num": 1
}控制器回复
命令字: 0x3221
| 字段 | 类型 | 说明 |
|---|---|---|
| torq_limit_enable | bool | 电机过载保护使能 |
| torq_limit_min_ensure_time | double | 电机过载保护最小确认时间,范围 [10, 9999],单位 ms |
| torq_limit_robot | double[] | 电机扭矩过载值列表,单位 ‰,长度为当前机器人的轴数量 |
| torq_limit_sync | double[] | 外部轴电机扭矩过载值列表,单位 ‰,长度为当前机器人绑定的外部轴数量 |
json
{
"torq_limit_enable": false,
"torq_limit_min_ensure_time": 10,
"torq_limit_robot": [800.0, 1400.0, 1000.0, 1200.0, 800.0, 700.0],
"torq_limit_sync": [-0.0, -0.0, 0.0, 0.0, -0.0]
}轴速度
查询机器人轴速度
命令字: 0x3230
| 字段 | 类型 | 说明 |
|---|---|---|
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"robot": 1
}控制器回复
命令字: 0x3231
| 字段 | 类型 | 说明 |
|---|---|---|
| actualLineVel | double | 机器人末端当前线速度,单位 mm/s |
| axisActualVel | double[] | 机器人各轴当前速度列表,单位 °/s,长度为 7 |
| axisActualVelSync | double[] | 机器人外部轴各轴当前速度列表,单位 °/s,长度为 5 |
| maxActualLineVel | double | 机器人末端最大线速度,单位 mm/s |
| maxAxisActualVel | double[] | 机器人各轴最大速度列表,单位 °/s,长度为 7 |
| maxAxisActualVelSync | double[] | 机器人外部轴各轴最大速度列表,单位 °/s,长度为 5 |
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"actualLineVel": 0.0,
"axisActualVel": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
"axisActualVelSync": [0.0, 0.0, 0.0, 0.0, 0.0],
"maxActualLineVel": 0.0,
"maxAxisActualVel": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
"maxAxisActualVelSync": [0.0, 0.0, 0.0, 0.0, 0.0],
"robot": 1
}福德伺服温度
福德伺服专属功能
查询福德伺服温度是否存在
命令字: 0x3250
| 字段 | 类型 | 说明 |
|---|---|---|
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"robot": 1
}控制器回复
命令字: 0x3251
| 字段 | 类型 | 说明 |
|---|---|---|
| IsExist | bool | 福德伺服温度是否存在 |
json
{
"IsExist": false
}控制器向示教器发送延时时间响应
命令字: 0x3252
| 字段 | 类型 | 说明 |
|---|---|---|
| delaytime | double | 延迟时间,单位 s |
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"delaytime": 4,
"robot": 1
}电机状态
电机参数查询,伺服温度仅福德伺服温度存在时可用
查询机器人电机转速
命令字: 0x3260
| 字段 | 类型 | 说明 |
|---|---|---|
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"robot": 1
}控制器回复
命令字: 0x3261
| 字段 | 类型 | 说明 |
|---|---|---|
| maxVel | double[] | 机器人最大电机转速列表,单位 rpm,长度为 7 |
| maxVelSync | double[] | 机器人外部轴最大电机转速列表,单位 rpm,长度为 5 |
| robot | int | 当前机器人号,范围 [1, 4] |
| vel | double[] | 机器人当前电机转速列表,单位 rpm,长度为 7 |
| velSync | double[] | 机器人外部轴当前电机转速列表,单位 rpm,长度为 5 |
| slave_vel | double[][] | 机器人主轴及从动轴电机速度列表,单位 rpm,7 个元素各包含 4 个元素(第 1 位主轴,2-4 位从动轴) |
| slave_max_vel | double[][] | 机器人主轴及从动轴最大电机速度列表,单位 rpm |
| slave_vel_sync | double[][] | 机器人外部轴主轴及从动轴电机速度列表,单位 rpm,5 个元素各包含 4 个元素 |
| slave_max_vel_sync | double[][] | 机器人外部轴主轴及从动轴最大电机速度列表,单位 rpm |
json
{
"maxVel": [0, 0, 0, 0, 0, 0, 0],
"maxVelSync": [0, 0, 0, 0, 0],
"robot": 1,
"vel": [0, 0, 0, 0, 0, 0, 0],
"velSync": [0, 0, 0, 0, 0],
"slave_vel": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
"slave_max_vel": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
"slave_vel_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
"slave_max_vel_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}查询机器人电机扭矩
命令字: 0x3262
| 字段 | 类型 | 说明 |
|---|---|---|
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"robot": 1
}控制器回复
命令字: 0x3263
| 字段 | 类型 | 说明 |
|---|---|---|
| maxTheoTorq | double[] | 机器人最大电机理论扭矩列表,单位 ‰,长度为 7 |
| maxTorq | double[] | 机器人最大电机扭矩列表,单位 ‰,长度为 7 |
| maxTorqSync | double[] | 机器人外部轴最大电机扭矩列表,单位 ‰,长度为 5 |
| robot | int | 当前机器人号,范围 [1, 4] |
| theoTorq | double[] | 机器人当前电机理论扭矩列表,单位 ‰,长度为 7 |
| torq | double[] | 机器人当前电机扭矩列表,单位 ‰,长度为 7 |
| torqSync | double[] | 机器人外部轴当前电机扭矩列表,单位 ‰,长度为 5 |
| slave_torq | double[][] | 机器人主轴及从动轴电机扭矩列表,单位 ‰,7 个元素各包含 4 个元素(第 1 位主轴,2-4 位从动轴) |
| slave_max_torq | double[][] | 机器人主轴及从动轴电机最大扭矩列表,单位 ‰ |
| slave_torq_sync | double[][] | 机器人外部轴主轴及从动轴电机扭矩列表,单位 ‰,5 个元素各包含 4 个元素 |
| slave_max_torq_sync | double[][] | 机器人外部轴主轴及从动轴最大电机扭矩列表,单位 ‰ |
json
{
"maxTheoTorq": [0, 0, 0, 0, 0, 0, 0],
"maxTorq": [0, 0, 0, 0, 0, 0, 0],
"maxTorqSync": [0, 0, 0, 0, 0],
"robot": 1,
"theoTorq": [0, 0, 0, 0, 0, 0, 0],
"torq": [0, 0, 0, 0, 0, 0, 0],
"torqSync": [0, 0, 0, 0, 0],
"slave_torq": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
"slave_max_torq": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
"slave_torq_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
"slave_max_torq_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}查询机器人电机负载率
命令字: 0x3264
| 字段 | 类型 | 说明 |
|---|---|---|
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"robot": 1
}控制器回复
命令字: 0x3265
| 字段 | 类型 | 说明 |
|---|---|---|
| externalOverload | double[] | 机器人外部轴当前电机负载列表,单位 ‰,长度为 5 |
| robot | int | 当前机器人号,范围 [1, 4] |
| robotOverload | double[] | 机器人当前电机负载列表,单位 ‰,长度为 7 |
| slave_motor_rbt_over_load | double[][] | 机器人主轴及从动轴电机负载列表,单位 ‰,7 个元素各包含 4 个元素(第 1 位主轴,2-3 位从动轴) |
| slave_motor_sync_over_load | double[][] | 机器人外部轴主轴及从动轴电机负载列表,单位 ‰,5 个元素各包含 4 个元素 |
json
{
"externalOverload": [0.0, 0.0, 0.0, 0.0, 0.0],
"robot": 1,
"robotOverload": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
"slave_motor_rbt_over_load": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
"slave_motor_sync_over_load": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}查询机器人编码器位置
命令字: 0x3266
| 字段 | 类型 | 说明 |
|---|---|---|
| robot | int | 当前机器人号,范围 [1, 4] |
json
{
"robot": 1
}控制器回复
命令字: 0x3267
| 字段 | 类型 | 说明 |
|---|---|---|
| reality | double[] | 机器人编码器位置实际值列表,长度为 7 |
| realitySync | double[] | 机器人外部轴编码器位置实际值列表,长度为 5 |
| robot | int | 当前机器人号,范围 [1, 4] |
| target | double[] | 机器人编码器位置目标值列表,长度为 7 |
| targetSync | double[] | 机器人外部轴编码器位置目标值列表,长度为 5 |
| slave_reality | double[][] | 机器人主轴及从动轴编码器位置实际值列表,7 个元素各包含 4 个元素 |
| slave_target | double[][] | 机器人主轴及从动轴编码器位置目标值列表 |
| slave_reality_sync | double[][] | 机器人外部轴主轴及从动轴编码器位置实际值列表,5 个元素各包含 4 个元素 |
| slave_target_sync | double[][] | 机器人外部轴主轴及从动轴编码器位置目标值列表 |
json
{
"reality": [0, 0, 0, 0, 0, 0, 0],
"realitySync": [0, 0, 0, 0, 0],
"robot": 1,
"target": [0, 0, 0, 0, 0, 0, 0],
"targetSync": [0, 0, 0, 0, 0],
"slave_reality": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
"slave_target": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
"slave_reality_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]],
"slave_target_sync": [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
}PDO操作
说明:存在5个元素,为机器人的5个外部轴;元素存在4个元素,第1位:主轴,2-4:从动轴
上位机发送写入PDO
命令字: 0x2056
| 字段 | 类型 | 说明 |
|---|---|---|
| axisNum | uint | 从站编号 |
| index | uint | 命令字编码 |
| subindex | uint | 子命令编码 |
| size | uint | 位数 |
| value | - | 写入的值 |
json
{
"axisNum": 1,
"index": 0x0006,
"subindex": 0,
"size": 16,
"value": 6
}电机电流查询
查询机器人电机电流
命令字: 0x3268
- 无需发送数据
控制器回复
命令字: 0x3269
| 字段 | 类型 | 说明 |
|---|---|---|
| current | double[] | 机器人电机电流列表,单位‰,长度为7 |
| max_current | double[] | 机器人最大电机电流列表,单位‰,长度为7 |
| robot | int | 当前机器人号,范围 [1,4] |
| sync_current | double[] | 机器人外部轴电机电流列表,单位‰,长度为5 |
| sync_max_current | double[] | 机器人外部轴最大电机电流列表,单位‰,长度为5 |
| slave_current | double[][] | 机器人主轴及从动轴电机最大电流列表,存在7个元素,元素存在4个元素 |
| slave_max_current | double[][] | 机器人外部轴主轴及从动轴电机电流列表,存在7个元素 |
| slave_sync_max_current | double[][] | 机器人外部轴主轴及从动轴电机最大电流列表,存在5个元素 |
json
{
"current": [0,0,0,0,0,0,0],
"max_current": [0,0,0,0,0,0,0],
"robot": 1,
"sync_current": [0,0,0,0,0],
"sync_max_current": [0,0,0,0,0],
"slave_current": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
"slave_max_current": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
"slave_sync_max_current": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]
}电机温度查询
查询机器人电机温度
命令字: 0x326A
- 无需发送数据
控制器回复
命令字: 0x326B
| 字段 | 类型 | 说明 |
|---|---|---|
| temperature | double[] | 机器人电机温度列表,单位°/C,长度为7 |
| maxTemperature | double[] | 机器人最大电机温度列表,单位°/C |
| temperatureSync | double[] | 机器人外部轴电机温度列表,单位°/C |
| maxtemperatureSync | double[] | 机器人外部轴最大电机温度列表,单位°/C |
| slave_temperature | double[][] | 机器人主轴及从动轴伺服温度列表,存在7个元素 |
| slave_temperature_max | double[][] | 机器人主轴及从动轴伺服最大温度列表,存在7个元素 |
| slave_temperature_sync_out | double[][] | 机器人外部轴主轴及从动轴伺服温度列表,存在5个元素 |
| slave_temperature_sync_out_max | double[][] | 机器人外部轴主轴及从动轴伺服最大温度列表,存在5个元素 |
json
{
"temperature": [0.0,0.0,0.0,0.0,0.0,0.0,0.0],
"maxTemperature": [0.0,0.0,0.0,0.0,0.0,0.0,0.0],
"temperatureSync": [0.0,0.0,0.0,0.0,0.0],
"maxtemperatureSync": [0.0,0.0,0.0,0.0,0.0],
"slave_temperature": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
"slave_temperature_max": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
"slave_temperature_sync_out": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],
"slave_temperature_sync_out_max": [[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]]
}