Appearance
指令操作
1 外部轴
1.1 外部轴位置查询
说明: 机器人+变位机同步插入指令时的位置查询
命令字: 0x5300
上位机发送:
json
{
"robot": 1,
"coord": 0
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | int | 是 | 选择机器人,取值范围 [1,4] |
| coord | int | 是 | 控制器当前坐标:0-关节坐标 1-直角坐标 2-工具坐标 3-用户坐标 |
1.2 外部轴位置接收
说明: 机器人+变位机同步插入指令时的位置接收
命令字: 0x5301
控制器返回:
json
{
"robot": 1,
"coord": 0,
"configuration": 1,
"position": [0, 0.1, 2, 3.3, 44, 555.55, 66.6],
"positionDeg": [0, 0.1, 2, 3.3, 44, 555.55, 66.6],
"externalPosition": [0, 0.1, 2, 3.3, 44]
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | int | 是 | 选择机器人,取值范围 [1,4] |
| coord | int | 是 | 控制器当前坐标:0-关节坐标 1-直角坐标 2-工具坐标 3-用户坐标 |
| configuration | int | 是 | 姿态或左右手 |
| position | double[] | 是 | 当前位置(弧度制),7位考虑双机情况 |
| positionDeg | double[] | 是 | 当前位置(角度制) |
| externalPosition | double[] | 是 | 外部轴当前位置,5位 |
2 历史指令列表
2.1 历史指令列表查询
命令字: 0x5310
上位机发送:
json
{
"robot": 1
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | int | 是 | 选择机器人,取值范围 [1,4] |
2.2 指令列表查询
命令字: 0x5301
上位机发送:
json
{
"robot": 1
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | int | 是 | 选择机器人,取值范围 [1,4] |
2.3 历史指令列表返回
命令字: 0x5311
控制器返回:
json
{
"robot": 1,
"jobname": ["请求权", "请求权"],
"num": [2, 1],
"sendednum": 2,
"totalnum": 2
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | int | 是 | 选择机器人,取值范围 [1,4] |
| jobname | string[] | 是 | 程序名数组,单次上限50 |
| num | int[] | 是 | 历史行号数组,单次上限50,数组顺序为程序执行反序 |
| sendednum | int | 是 | 此次发送数量 |
| totalnum | int | 是 | 总计发送数量 |
3 局部点
说明: 局部点为不同程序内的数据,不同程序的局部点不相关。
3.1 插入局部点位
命令字: 0x5320
上位机发送:
json
{
"robot": 1,
"robotpos": {
"ctype": 1,
"key": "P0001",
"note": "",
"data": [
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, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
],
"paraVarData": [
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0}
]
},
"time": "2024.11.06 10:10:34"
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | int | 是 | 机器人编号,取值范围 [1,4] |
| robotpos | object | 是 | 点位信息 |
| time | string | 是 | 时间戳,格式如:2024.11.06 10:10:34 |
robotpos 子对象:
| 参数名 | 类型 | 说明 |
|---|---|---|
| ctype | int | 类型 |
| key | string | 点位标识 |
| note | string | 备注 |
| data | double[] | 位置数据数组 |
| paraVarData | object[] | 参数变量数据 |
3.2 修改局部点位
命令字: 0x5321
上位机发送:
json
{
"robot": 1,
"robotpos": {
"ctype": 1,
"key": "P0001",
"note": "",
"data": [
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, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
],
"paraVarData": [
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0},
{"varname": "", "value": 0, "secondvalue": 0, "data": 0.0}
]
},
"time": "2024.11.06 10:14:31"
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | int | 是 | 机器人编号,取值范围 [1,4] |
| robotpos | object | 是 | 点位信息 |
| time | string | 是 | 时间戳,格式如:2024.11.06 10:14:31 |
3.3 修改数值局部变量
命令字: 0x5322
上位机发送:
json
{
"robot": 1,
"time": "2024.11.06 10:18:24",
"varName": "D007",
"varNote": "",
"varType": 1,
"varString": "RRR",
"varValue": 0.0
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | int | 是 | 机器人编号,取值范围 [1,4] |
| time | string | 是 | 时间戳 |
| varName | string | 是 | 变量名,局部数值型变量:I001, D001, B001, S001 |
| varNote | string | 否 | 注释 |
| varType | int | 是 | 变量类型:0-int, 1-double, 2-bool, 3-string |
| varValue | double | 是 | 数值型值 |
| varString | string | 是 | 字符型值 |
4 语法检查
4.1 获取语法检查结果
命令字: 0x9121
上位机发送:
json
{
"robot_id": 1,
"job_name": "QQQ",
"suffix": ".JBR"
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot_id | int | 是 | 机器人号 |
| job_name | string | 是 | 作业名 |
| suffix | string | 是 | 程序后缀:.JBR 主程序、.JBP 后台局部程序、.JBPG 后台全局程序 |
4.2 语法检查结果返回
命令字: 0x9121
控制器返回:
json
{
"robot_id": 1,
"job_name": "QQQ",
"suffix": ".JBR",
"result": "true",
"cur_error_command_num": 5
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot_id | int | 是 | 机器人号 |
| job_name | string | 是 | 作业名 |
| suffix | string | 是 | 程序后缀 |
| result | bool | 是 | 检查结果:true-成功,false-失败 |
| cur_error_command_num | int | 否 | 失败时行号 |
5 快捷指令
说明: 快捷指令的是否使用在操作参数中有节点表示。
5.1 设置快捷指令
命令字: 0x50E0
上位机发送:
json
{
"quickInsert": [
[0, 0],
[0, 1],
[0, 2],
[0, 3],
[0, 5],
[-1, -1],
[-1, -1],
[-1, -1]
]
}| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| quickInsert | array | 是 | 快捷指令数组,共8个元素,每个元素第一位代表指令类型,第二位代表指令 |
5.2 查询快捷指令
命令字: 0x50E0
上位机发送:
json
{}说明: data 为空对象。
5.3 返回快捷指令
命令字: 0x50E2
控制器返回:
(同 0x50E0 格式)