Skip to content

指令操作 ​

1 外部轴 ​

1.1 外部轴位置查询 ​

说明: 机器人+变位机同步插入指令时的位置查询

命令字: 0x5300

上位机发送:

json
{
  "robot": 1,
  "coord": 0
}
参数名类型必填说明
robotint是选择机器人,取值范围 [1,4]
coordint是控制器当前坐标: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]
}
参数名类型必填说明
robotint是选择机器人,取值范围 [1,4]
coordint是控制器当前坐标:0-关节坐标 1-直角坐标 2-工具坐标 3-用户坐标
configurationint是姿态或左右手
positiondouble[]是当前位置(弧度制),7位考虑双机情况
positionDegdouble[]是当前位置(角度制)
externalPositiondouble[]是外部轴当前位置,5位

2 历史指令列表 ​

2.1 历史指令列表查询 ​

命令字: 0x5310

上位机发送:

json
{
  "robot": 1
}
参数名类型必填说明
robotint是选择机器人,取值范围 [1,4]

2.2 指令列表查询 ​

命令字: 0x5301

上位机发送:

json
{
  "robot": 1
}
参数名类型必填说明
robotint是选择机器人,取值范围 [1,4]

2.3 历史指令列表返回 ​

命令字: 0x5311

控制器返回:

json
{
  "robot": 1,
  "jobname": ["请求权", "请求权"],
  "num": [2, 1],
  "sendednum": 2,
  "totalnum": 2
}
参数名类型必填说明
robotint是选择机器人,取值范围 [1,4]
jobnamestring[]是程序名数组,单次上限50
numint[]是历史行号数组,单次上限50,数组顺序为程序执行反序
sendednumint是此次发送数量
totalnumint是总计发送数量

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"
}
参数名类型必填说明
robotint是机器人编号,取值范围 [1,4]
robotposobject是点位信息
timestring是时间戳,格式如:2024.11.06 10:10:34

robotpos 子对象:

参数名类型说明
ctypeint类型
keystring点位标识
notestring备注
datadouble[]位置数据数组
paraVarDataobject[]参数变量数据

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"
}
参数名类型必填说明
robotint是机器人编号,取值范围 [1,4]
robotposobject是点位信息
timestring是时间戳,格式如: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
}
参数名类型必填说明
robotint是机器人编号,取值范围 [1,4]
timestring是时间戳
varNamestring是变量名,局部数值型变量:I001, D001, B001, S001
varNotestring否注释
varTypeint是变量类型:0-int, 1-double, 2-bool, 3-string
varValuedouble是数值型值
varStringstring是字符型值

4 语法检查 ​

4.1 获取语法检查结果 ​

命令字: 0x9121

上位机发送:

json
{
  "robot_id": 1,
  "job_name": "QQQ",
  "suffix": ".JBR"
}
参数名类型必填说明
robot_idint是机器人号
job_namestring是作业名
suffixstring是程序后缀:.JBR 主程序、.JBP 后台局部程序、.JBPG 后台全局程序

4.2 语法检查结果返回 ​

命令字: 0x9121

控制器返回:

json
{
  "robot_id": 1,
  "job_name": "QQQ",
  "suffix": ".JBR",
  "result": "true",
  "cur_error_command_num": 5
}
参数名类型必填说明
robot_idint是机器人号
job_namestring是作业名
suffixstring是程序后缀
resultbool是检查结果:true-成功,false-失败
cur_error_command_numint否失败时行号

5 快捷指令 ​

说明: 快捷指令的是否使用在操作参数中有节点表示。

5.1 设置快捷指令 ​

命令字: 0x50E0

上位机发送:

json
{
  "quickInsert": [
    [0, 0],
    [0, 1],
    [0, 2],
    [0, 3],
    [0, 5],
    [-1, -1],
    [-1, -1],
    [-1, -1]
  ]
}
参数名类型必填说明
quickInsertarray是快捷指令数组,共8个元素,每个元素第一位代表指令类型,第二位代表指令

5.2 查询快捷指令 ​

命令字: 0x50E0

上位机发送:

json
{}

说明: data 为空对象。


5.3 返回快捷指令 ​

命令字: 0x50E2

控制器返回:

(同 0x50E0 格式)