Skip to content

机器人运动

机器人运行状态的查询与回复

示教器查询机器人的运行状态

命令字: 0x2304

请求参数:

参数名类型必填描述
robotint选择机器人,取值范围 [1, 4]
jobfilenamestring作业文件名(不包括后缀名)
suffixstring文件扩展名:.JBR主程序/.JBP后台局部程序/.JBPG后台全局程序

请求示例:

json
{
  "robot": 1,
  "jobfilename": "AAA",
  "suffix": ".JBR"
}

控制器回复机器人运行状态

命令字: 0x9103

响应参数:

参数名类型描述
robotint机器人编号,取值范围 [1, 4]
statusint运行状态:0-停止,1-暂停,2-运行
continueRunint是否存在断点执行:0/1
currentRunbool是否存在当前行运行:false/true
mainProgramRunint主程序是否运行:0/1

响应示例:

json
{
  "robot": 1,
  "status": 0,
  "continueRun": 0,
  "currentRun": false,
  "mainProgramRun": 0
}

机器人运动控制

机器人关节运动 MOVJ

命令字: 0x4501

请求参数:

参数名类型必填描述
robotint选择机器人,取值范围 [1, 4]
velint速度百分比,取值范围 [1, 100]
coordint坐标系:0-关节坐标,1-直角坐标,2-用户坐标,3-工具坐标
posdouble[7]目标位置,前7位为机器人本体目标位置,后5位为外部轴目标位置

请求示例:

json
{
  "robot": 1,
  "vel": 5,
  "coord": 0,
  "pos": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7]
}

机器人直线运动 MOVL

命令字: 0x4502

请求参数:

参数名类型必填描述
robotint选择机器人,取值范围 [1, 4]
velint速度 mm/s,取值范围 [1, 1000]
coordint坐标系:0-关节坐标,1-直角坐标,2-用户坐标,3-工具坐标
posdouble[7]目标位置,前7位为机器人本体目标位置,后5位为外部轴目标位置

请求示例:

json
{
  "robot": 1,
  "vel": 5,
  "coord": 0,
  "pos": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7]
}

机器人圆弧运动 MOVC

命令字: 0x4503

请求参数:

参数名类型必填描述
robotint选择机器人,取值范围 [1, 4]
velint速度 mm/s,取值范围 [1, 1000]
coordint坐标系:0-关节坐标,1-直角坐标,2-用户坐标,3-工具坐标
isFullboolfalse-MOVC,true-MOVCA
posOnedouble[7]圆弧起始点,机器人本体点位
posTwodouble[7]圆弧经过的中间点,机器人本体点位
posThreedouble[7]圆弧的目标点,机器人本体点位

请求示例:

json
{
  "robot": 1,
  "vel": 5,
  "coord": 0,
  "isFull": false,
  "posOne": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7],
  "posTwo": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7],
  "posThree": [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7]
}

机器人样条曲线运动 MOVS

命令字: 0x4504

请求参数:

参数名类型必填描述
robotint选择机器人,取值范围 [1, 4]
velint速度 mm/s,取值范围 [1, 1000]
coordint坐标系:0-关节坐标,1-直角坐标,2-用户坐标,3-工具坐标
sizeint样条曲线的点数目,要求至少4个点位
posdouble[][7]样条曲线的轨迹点位,二维数组

请求示例:

json
{
  "robot": 1,
  "vel": 5,
  "coord": 0,
  "size": 4,
  "pos": [
    [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7],
    [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7],
    [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7],
    [1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7]
  ]
}

移动到目标点位

移动到目标点位

命令字: 0x3003 GO_POSITION

请求参数:

参数名类型必填描述
robotint机器人编号
positionNamestring目标点位名:SetPosition_EntrancePoint/SetPosition_AuxiliaryPoint/SetPosition_JobPoint
RobotPosobject机器人位置对象

RobotPos 内部参数:

参数名类型描述
ctypeint类型:NONE_TYPE=0/P_TYPE/E_TYPE/RP_TYPE/AP_TYPE/GP_TYPE/GE_TYPE
datadouble[21]位置数据数组,详见下方说明
keystring变量类型
paraVarDataarray变量数组

data 数组说明:

索引位置描述
第1、2位坐标类型:0,0-关节坐标;1,1-直角坐标;2,1-工具坐标;3,1-用户坐标
第3位左右手:1-左,2-右,0-无左右手(默认0)
第4、5、6、7位备用,默认0
第8-14位机器人本体坐标值(7位):关节坐标下为1-6轴角度值,其他坐标下为x,y,z,a,b,c
第15-19位外部轴坐标值(最大5个外部轴,不足补零)

请求示例:

json
{
  "robot": 1,
  "positionName": "SetPosition_JobPoint",
  "RobotPos": {
    "ctype": 0,
    "key": "",
    "data": [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 6.0, 0.0, 6.0, 3.141590, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
    "paraVarData": [
      {"data": 1.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 1.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 6.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 6.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 3.141590, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""},
      {"data": 0.0, "secondvalue": 0, "value": 0, "varname": ""}
    ]
  }
}

说明: 程序中无对应指令

运动到作业文件点位

命令字: 0x3005 GO_JOBFILEPOSITION

请求参数:

参数名类型必填描述
robotint机器人编号
jobNamestring作业文件名称
suffixnamestring作业文件后缀名(如 .JBR)
posNamestring点位名称

请求示例:

json
{
  "robot": 1,
  "jobName": "Q1",
  "suffixname": ".JBR",
  "posName": "P001"
}

运动到用户坐标标定点位

命令字: 0x3006 GO_USERCALIBRATIONPOS

请求参数:

参数名类型必填描述
robotint机器人编号
userNumint用户编号
posTypeint点位类型:0-原点,1-X值,2-Y值

请求示例:

json
{
  "robot": 1,
  "userNum": 1,
  "posType": 0
}

运动到复位点

命令字: 0x3007 GO_RESET_POSITION

请求参数:

参数名类型必填描述
robotint机器人编号

请求示例:

json
{
  "robot": 1
}

回零命令

回零命令

命令字: 0x3002 GO_HOME

请求参数:

参数名类型必填描述
robotint机器人编号(1-4)
typeint回零类型:0-机器人回零,1-外部轴回零

请求示例:

json
{
  "robot": 1,
  "type": 1
}