Skip to content

远程IO控制

1. IO功能界面设置

1.1 IO功能界面设置(示教盒发送)

命令码: 0x2F01 IO_CONTROL_SET

参数说明:

参数名类型必填说明
inPortobject远程IO功能端口绑定
inValueobject端口值,IO参数,0:低电平有效,1:高电平有效
programarray远程IO程序DIN和value绑定,共10个
robotint机器人号

inPort 对象参数:

参数名类型说明
startint启动,绑定端口
stopint停止,绑定端口
pauseint暂停,绑定端口
faultResetint清除报警,绑定端口
clearoutagekeepint清除断电保持数据,绑定端口

inValue 对象参数:

参数名类型说明
startint启动
stopint停止
pauseint暂停
faultResetint清除报警
clearoutagekeepint清除断电保持数据

program 数组参数:

参数名类型说明
portint端口号
valueint端口值,0或1

请求示例:

json
{
  "inPort": {
    "clearoutagekeep": 16,
    "faultReset": 4,
    "pause": 3,
    "start": 1,
    "stop": 2
  },
  "inValue": {
    "clearoutagekeep": 1,
    "faultReset": 1,
    "pause": 1,
    "start": 1,
    "stop": 1
  },
  "program": [
    {"port": 5, "value": 1},
    {"port": 6, "value": 0},
    {"port": 7, "value": 0},
    {"port": 8, "value": 1},
    {"port": 9, "value": 1},
    {"port": 0, "value": 1},
    {"port": 0, "value": 1},
    {"port": 0, "value": 1},
    {"port": 0, "value": 1},
    {"port": 0, "value": 1}
  ],
  "robot": 1
}

1.2 IO功能界面查询(示教盒发送)

命令码: 0x2F02 IO_CONTROL_INQUIRE

参数说明:

参数名类型必填说明
robotint机器人号

请求示例:

json
{
  "robot": 1
}

1.3 IO功能界面响应(控制器返回)

命令码: 0x2F03 IO_CONTROL_RESPOND

参数说明: 同 1.1 IO功能界面设置

响应示例:

json
{
  "inPort": {
    "clearoutagekeep": 16,
    "faultReset": 4,
    "pause": 3,
    "start": 1,
    "stop": 2
  },
  "inValue": {
    "clearoutagekeep": 1,
    "faultReset": 1,
    "pause": 1,
    "start": 1,
    "stop": 1
  },
  "program": [
    {"port": 5, "value": 1},
    {"port": 6, "value": 0},
    {"port": 7, "value": 0},
    {"port": 8, "value": 1},
    {"port": 9, "value": 1},
    {"port": 0, "value": 1},
    {"port": 0, "value": 1},
    {"port": 0, "value": 1},
    {"port": 0, "value": 1},
    {"port": 0, "value": 1}
  ],
  "robot": 1
}

2. 复位点设置

2.1 复位点位置参数设置(示教盒发送)

命令码: 0x2F04 IO_CONTROL_RESETPOS_SET

参数说明:

参数名类型必填说明
posarray机器人位置(7个元素)
posSyncarray外部轴位置(5个元素)
robotint机器人号

请求示例:

json
{
  "pos": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0],
  "posSync": [0.0, 0.0, 0.0, 0.0, 0.0],
  "robot": 1
}

2.2 复位点IO参数设置(示教盒发送)

命令码: 0x2F14 IO_CONTROL_RESETPORT_SET

参数说明:

参数名类型必填说明
robotint机器人号
selectPiontOrFileint0:复位点,1:复位程序
inPortint复位开始,IO触发端口
inValueint复位开始,IO参数
outPortint复位结束,IO输出端口
safeEnablebool安全使能
returnwayint0:关节插补,1:直线插补

请求示例:

json
{
  "robot": 1,
  "selectPiontOrFile": 0,
  "inPort": 0,
  "inValue": 1,
  "outPort": 0,
  "safeEnable": true,
  "returnway": 0
}

2.3 安全点误差参数设置

命令码: 0x2F15 IO_CONTROL_RESETSAFEDEV_SET

参数说明:

参数名类型必填说明
deviationarray机器人位置偏差(7个元素)
deviationSyncarray外部轴偏差(5个元素)
robotint机器人号

请求示例:

json
{
  "deviation": [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 1.0],
  "deviationSync": [1.0, 1.0, 1.0, 1.0, 1.0],
  "robot": 1
}

2.4 安全点位置通知

命令码: 0x2F16 IO_CONTROL_NOTIS_SAFEPOS

说明: 运行作业文件时,开始安全使能,不在安全点时控制器返回发送

参数说明:

参数名类型必填说明
robotint当前机器人
isSyncboolfalse:机器人不在安全区,true:外部轴不在安全区
currentPosarray当前坐标
safePosarray复位点位

响应示例:

json
{
  "robot": 1,
  "isSync": false,
  "currentPos": [0, 0.1, 2, 3.3, 44, 555.55, 6, 7.7, 88],
  "safePos": [0, 0.1, 2, 3.3, 88, 555.55, 6, 7.7, 88]
}

2.5 回复位

命令码: 0x2F17 RECOVERY_SITE

参数说明:

参数名类型必填说明
robotint机器人号

请求示例:

json
{
  "robot": 1
}

2.6 复位点设置查询(示教盒发送)

命令码: 0x2F05 IO_CONTROL_RESET_INQUIRE

参数说明:

参数名类型必填说明
robotint机器人号

请求示例:

json
{
  "robot": 1
}

2.7 复位点设置响应(控制器返回)

命令码: 0x2F06 IO_CONTROL_RESET_RESPOND

参数说明:

参数名类型必填说明
robotint机器人号
selectPiontOrFileint0选择的是点,1选择的程序
returnWayint0表示选择的是movj,1表示的是movl
inPortint复位开始,IO触发端口
inValueint复位开始,IO参数
outPortint复位结束,IO输出端口
safeEnablebool安全使能
posarray复位点坐标
posSyncarray外部轴复位点坐标
deviationarray安全点范围
deviationSyncarray外部轴安全点范围

响应示例:

json
{
  "robot": 1,
  "selectPiontOrFile": 1,
  "returnWay": 1,
  "inPort": 0,
  "inValue": 1,
  "outPort": 0,
  "safeEnable": true,
  "pos": [0, 0.1, 2, 3.3, 44, 555.55, 6, 7.7, 88],
  "posSync": [0, 0.1, 2, 3.3, 44, 555.55, 6, 7.7, 88],
  "deviation": [0, 0.1, 2, 3.3, 44, 555.55, 6, 7.7, 88],
  "deviationSync": [1.0, 1.0, 1.0, 1.0, 1.0]
}

2.8 当前位置查询(示教盒发送)

命令码: 0x2F07 IO_CONTROL_POS_INQUIRE

参数说明:

参数名类型必填说明
robotint机器人号
coordint坐标模式:-1-控制器当前坐标,0-关节坐标,1-直角坐标,2-工具坐标,3-用户坐标

请求示例:

json
{
  "robot": 1,
  "coord": 0
}

2.9 当前位置响应(控制器返回)

命令码: 0x2F08 IO_CONTROL_POS_RESPOND

参数说明:

参数名类型必填说明
robotint机器人号
coordint坐标模式
posarray弧度点位
posDegarray角度点位
configurationint形态

响应示例:

json
{
  "robot": 1,
  "coord": 1,
  "pos": [0, 0.1, 2, 3.3, 44, 555.55],
  "posDeg": [0, 0.1, 2, 3.3, 44, 555.55],
  "configuration": 1
}

2.10 双机位置查询(MOVJDOUBLE指令)

命令码: 0x2F10 IO_CONTROL_DOUBLE_POS_INQUIRE

说明: MOVJDOUBLE指令在双机下需要同时查询第一和第二个机器人位置

参数说明:

参数名类型必填说明
robot1int机器人1
coord1int机器人1坐标:1-直角坐标,2-工具坐标,3-用户坐标
robot2int机器人2
coord2int同机器人1

请求示例:

json
{
  "robot1": 1,
  "coord1": 1,
  "robot2": 2,
  "coord2": 1
}

2.11 双机位置响应

命令码: 0x2F11 IO_CONTROL_DOUBLE_POS_RESPOND

参数说明:

参数名类型必填说明
pos1Degarray机器人1轴1-7当前位置(角度表示)
pos1array机器人1轴1-7当前位置(弧度表示)
pos2Degarray机器人2轴1-7当前位置(角度表示)
pos2array机器人2轴1-7当前位置(弧度表示)

响应示例:

json
{
  "pos1Deg": [0, 1.1, 2, 3.3, 4.4, 5.5, 6.6],
  "pos1": [0, 1.1, 2, 3.3, 4.4, 5.5, 6.6],
  "pos2Deg": [0, 1.1, 2, 3.3, 4.4, 5.5, 6.6],
  "pos2": [0, 1.1, 2, 3.3, 4.4, 5.5, 6.6]
}

2.12 打开作业文件

命令码: 0x3114

说明: 复位程序固定是RobotResetProgram,后缀是.ResetPro

参数说明:

参数名类型必填说明
jobNamestring作业文件名称(固定:RobotResetProgram)
robotint机器人号
suffixnamestring作业文件后缀(固定:.ResetPro)

请求示例:

json
{
  "jobName": "RobotResetProgram",
  "robot": 1,
  "suffixname": ".ResetPro"
}

2.13 插入指令

命令码: 0x3121


2.14 保存作业文件

命令码: 0x3120

说明: 复位程序固定是RobotResetProgram,后缀是.ResetPro

参数说明:

参数名类型必填说明
jobnamestring作业文件名称(固定:RobotResetProgram)
robotint机器人号
suffixstring作业文件后缀(固定:.ResetPro)

请求示例:

json
{
  "jobname": "RobotResetProgram",
  "robot": 1,
  "suffix": ".ResetPro"
}

3. 状态提示设置界面

3.1 状态提示设置(示教盒发送)

命令码: 0x2F09 IO_CONTROL_OUTPUT_SET

参数说明:

参数名类型必填说明
outPutarray输出配置数组,每个元素对应一个机器人
remoteOutint远程模式
remoteOut_valueint远程模式值:0、1、3(闪烁)
runOutint运行模式
runOut_valueint运行模式值
startUpint开机提示
startUp_valueint开机提示值
teachOutint示教模式
teachOut_valueint示教模式值

outPut 数组元素参数:

参数名类型说明
IOenableint使能DOUT绑定
IOenable_valueint值:0、1、3(闪烁)
continuableint可继续执行DOUT绑定
continuable_valueint值:0、1、3(闪烁)
faultint报错提示DOUT绑定
faultIsFicklerint值:0、1、3(闪烁)
mainJobFirstLineint主程序首行DOUT绑定
mainJobFirstLine_valueint
pauseint暂停DOUT绑定
pause_valueint
quickStopOut1int紧急急停1DOUT绑定
quickStopOut2int紧急急停2DOUT绑定
quickStopOutValue1int
quickStopOutValue2int
runningint运行DOUT绑定
running_valueint
stopint停止DOUT绑定
stop_valueint
teachBoxStateOutint拔出示教盒DOUT绑定
teachBoxStateOutValueint

请求示例:

json
{
  "outPut": [
    {
      "IOenable": 1,
      "IOenable_value": 1,
      "continuable": 3,
      "continuable_value": 1,
      "fault": 5,
      "faultIsFickler": 1,
      "mainJobFirstLine": 7,
      "mainJobFirstLine_value": 1,
      "pause": 9,
      "pause_value": 1,
      "quickStopOut1": 11,
      "quickStopOut2": 12,
      "quickStopOutValue1": 1,
      "quickStopOutValue2": 1,
      "running": 15,
      "running_value": 1,
      "stop": 17,
      "stop_value": 1,
      "teachBoxStateOut": 0,
      "teachBoxStateOutValue": 1
    },
    {},
    {},
    {}
  ],
  "remoteOut": 1,
  "remoteOut_value": 1,
  "runOut": 2,
  "runOut_value": 1,
  "startUp": 3,
  "startUp_value": 1,
  "teachOut": 4,
  "teachOut_value": 1
}

3.2 状态提示查询(示教盒发送)

命令码: 0x2F0A IO_CONTROL_OUTPUT_INQUIRE

说明: data: 无


3.3 状态提示响应(控制器返回)

命令码: 0x2F0B IO_CONTROL_OUTPUT_RESPOND

说明: data:同 0x2F09


4. IO复位设置界面

4.1 IO输出复位设置(示教盒发送)

命令码: 0x2F0D IO_CONTROL_IORESET_SET

参数说明:

参数名类型必填说明
robotint机器人号
typeint1-IO复位,2-切模式停止,3-程序报错停止
enablearray16个元素,值为0或1,包含复位值及是否复位
valuearray16个元素,值为0或1,包含复位值及是否复位

请求示例:

json
{
  "robot": 1,
  "type": 1,
  "enable": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
  "value": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
}

4.2 IO输出复位查询(示教盒发送)

命令码: 0x2F0E IO_CONTROL_IORESET_INQUIRE

参数说明:

参数名类型必填说明
robotint机器人号
typeint类型

请求示例:

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

4.3 IO输出复位响应(控制器返回)

命令码: 0x2F0F IO_CONTROL_IORESET_RESPOND

说明: data:同 0x2F0D


5. IO功能状态界面

5.1 IO功能状态查询(示教盒发送)

命令码: 0x2F12 IO_FUNCTION_INQUIRE

参数说明:

参数名类型必填说明
typeint1-数字输入,2-数字输出,3-模拟输入,4-模拟输出

请求示例:

json
{
  "type": 1
}

5.2 IO功能状态响应(控制器返回)

命令码: 0x2F13 IO_FUNCTION_RESPOND

参数说明:

参数名类型必填说明
typeint类型
IOFunctionarray数字有16个,模拟有8个

响应示例:

json
{
  "type": 1,
  "IOFunction": [
    "远程:机器人1启动 机器人1视觉:触发端口",
    "",
    "",
    "",
    "",
    "",
    "",
    "",
    "",
    "",
    "",
    "",
    "",
    "",
    "",
    ""
  ]
}

6. 远程模式界面

6.1 预约执行状态查询(示教盒发送)

命令码: 0x2F1B RESERVE_EXE_STATE_INQUIRE

参数说明:

参数名类型必填说明
robotint机器人号

请求示例:

json
{
  "robot": 1
}

6.2 预约执行状态响应(控制器返回)

命令码: 0x2F1C RESERVE_EXE_STATE_RESPOND

参数说明:

参数名类型必填说明
robotint机器人号
currentobject当前运行状态
queuearray队列(10个元素)

current 对象参数:

参数名类型说明
stationint工作站(程序编号)
namestring程序名
runtimeint当前运行的已运行次数
timesint当前运行的运行总数
countint运行总数
statusint运行状态:0-无预约,1-预约中,2-运行中,3-已预约,4-程序暂停

queue 数组元素参数:

参数名类型说明
stationint工作站(程序编号)
namestring程序名
timesint运行次数
countint运行总数
statusint状态

响应示例:

json
{
  "robot": 1,
  "current": {
    "station": 1,
    "name": "Q1",
    "runtime": 1,
    "times": 3,
    "count": 1,
    "status": 2
  },
  "queue": [
    {"station": 1, "name": "Q4", "times": 2, "count": 0, "status": 1},
    {"station": 1, "name": "Q1", "times": 6, "count": 0, "status": 1},
    {"station": 1, "name": "Q3", "times": 1, "count": 0, "status": 1},
    {"station": 1, "name": "", "times": 1, "count": 0, "status": 0},
    {"station": 1, "name": "", "times": 2, "count": 0, "status": 0}
  ]
}

6.3 运行总数清零

命令码: 0x2F1D RESERVE_EXE_STATE_CLEAR

参数说明:

参数名类型必填说明
robotint机器人号

请求示例:

json
{
  "robot": 1
}

7. IO型号设置

7.1 IO型号设置(示教盒发送)

命令码: 0x2F21 IO_TYPE_SET

说明: 重启生效

参数说明:

参数名类型必填说明
simuNumint虚拟IO数量
serialAnalogobject串口模拟量配置

serialAnalog 对象参数:

参数名类型说明
typestring可选:SUPER_ANAIO、DAC_ANAIO
portint端口号
baudRateint波特率

请求示例:

json
{
  "simuNum": 0,
  "serialAnalog": {
    "type": "SUPER_ANAIO",
    "port": 1,
    "baudRate": 115200
  }
}

7.2 IO型号查询(示教盒发送)

命令码: 0x2F22 IO_TYPE_INQUIRE


7.3 IO型号响应(控制器返回)

命令码: 0x2F23 IO_TYPE_RESPOND

参数说明:

参数名类型必填说明
numintIO板数量
typearrayIO板类型列表
portNumarray端口配置
simuNumint虚拟IO数量
serialAnalogobject串口模拟量配置

响应示例:

json
{
  "num": 3,
  "type": ["IO板R1", "盟通", "虚拟IO"],
  "portNum": [[16, 16, 2, 2], [20, 16, 4, 2], [16, 16, 0, 0]],
  "simuNum": 1,
  "serialAnalog": {
    "type": "SUPER_ANAIO",
    "port": 1,
    "baudRate": 115200
  }
}

8. 远程状态提示

8.1 远程状态提示设置

命令码: 0x2F24 IO_REMOTEOUTPUT_SET

参数说明:

参数名类型必填说明
outPutarray输出配置数组
robotint机器人号

outPut 数组元素参数:

参数名类型说明
outagerecoverint断电保持数据恢复DOUT1-2端口绑定
outagerecover_valueintDOUT1-2端口值:0、1、2(2代表闪烁)
program1~program10int远程IO程序DOUT端口绑定
program_value1~program_value10int远程IO程序DOUT输出端口值:0、1、2(2代表闪烁)

请求示例:

json
{
  "outPut": [{
    "outagerecover": 2,
    "outagerecover_value": 0,
    "program1": 1,
    "program2": 2,
    "program3": 3,
    "program4": 0,
    "program5": 0,
    "program6": 0,
    "program7": 0,
    "program8": 63,
    "program9": 64,
    "program10": 0,
    "program_value1": 1,
    "program_value2": 1,
    "program_value3": 1,
    "program_value4": 0,
    "program_value5": 0,
    "program_value6": 0,
    "program_value7": 0,
    "program_value8": 0,
    "program_value9": 2,
    "program_value10": 0
  }],
  "robot": 1
}

8.2 远程状态提示查询

命令码: 0x2F25 IO_REMOTEOUTPUT_INQUIRE

参数说明:

参数名类型必填说明
robotint机器人号

请求示例:

json
{
  "robot": 1
}

8.3 远程状态提示响应

命令码: 0x2F26 IO_REMOTEOUTPUT_RESPOND

说明: 内容同 0x2F24


9. 安全监测设置

9.1 安全监测设置(示教盒发送)

命令码: 0x2F31 IO_SAFE_CHECK_SET

参数说明:

参数名类型必填说明
robotint机器人号
safeScreenobject安全光幕配置
quickStopobject快速停止配置

safeScreen 对象参数:

参数名类型说明
enablebool使能安全光幕
port1int安全光幕1 DIN序号(1~16)
value1intIO电平参数:0-低电平,1-高电平
port2int安全光幕2 DIN序号(1~16)
value2intIO电平参数:0-低电平,1-高电平

quickStop 对象参数:

参数名类型说明
enablebool使能
port1int紧急停止1 DIN序号(1~16)
value1intIO电平参数:0-低电平,1-高电平
port2int紧急停止2 DIN序号(1~16)
value2intIO电平参数:0-低电平,1-高电平
timeint快速停止时间(50~200ms)
shieldFlag1bool屏蔽紧急停止1
shieldFlag2bool屏蔽紧急停止2
shieldTimeint屏蔽时间(秒,10位整数)

请求示例:

json
{
  "robot": 1,
  "safeScreen": {
    "enable": false,
    "port1": 0,
    "value1": 1,
    "port2": 0,
    "value2": 1
  },
  "quickStop": {
    "enable": false,
    "port1": 15,
    "value1": 1,
    "port2": 15,
    "value2": 1,
    "time": 60,
    "shieldFlag1": false,
    "shieldFlag2": false,
    "shieldTime": 30
  }
}

9.2 安全监测查询(示教盒发送)

命令码: 0x2F32 IO_SAFE_CHECK_INQUIRE

参数说明:

参数名类型必填说明
robotint机器人号

请求示例:

json
{
  "robot": 1
}

9.3 安全监测响应(控制器返回)

命令码: 0x2F33 IO_SAFE_CHECK_RESPOND

说明: 同 0x2F31


10. IO触发消息设置

10.1 IO触发消息设置(DIN)

命令码: 0x2F41 DIN_TRIGGER_MSG_SET

参数说明:

参数名类型必填说明
enablearray每有一块IO板增加16个数据:1-使能端口报警,2-不使能
valuearray每有一块IO板增加16个数据:端口电平状态,1-高电平,0-低电平
msgarray每有一块IO板增加16个数据:消息内容

请求示例:

json
{
  "enable": [1, 1, 0, 0, 0, 0, 1, 1],
  "value": [0, 1, 1, 0, 0, 1, 1],
  "msg": ["", "qwer", "", "asd", ""]
}

10.2 IO触发消息查询

命令码: 0x2F42 DIN_TRIGGER_MSG_INQUIRE

说明: data: 无


10.3 IO触发消息响应

命令码: 0x2F43 DIN_TRIGGER_MSG_RESPOND

说明: 同 0x2F41


10.4 IO数字输出DOUT设置

命令码: 0x2F44 DOUT_TRIGGER_MSG_SET

参数说明:

参数名类型必填说明
enablearray每有一块IO板增加16个数据:1-使能端口报警,2-不使能
valuearray每有一块IO板增加16个数据:端口电平状态,1-高电平,0-低电平
msgarray每有一块IO板增加16个数据:消息内容

请求示例:

json
{
  "enable": [1, 1, 0, 0, 0, 0, 1, 1],
  "value": [0, 1, 1, 0, 0, 1, 1],
  "msg": ["", "qwer", "", "asd", ""]
}

10.5 IO数字输出查询

命令码: 0x2F45 DOUT_TRIGGER_MSG_INQUIRE

说明: data: 无


10.6 IO数字输出响应

命令码: 0x2F46 DOUT_TRIGGER_MSG_RESPOND

说明: 同 0x2F44


11. 配置文件修改查询操作

11.1 修改DIN注释配置文件

命令码: 0x2F47 DIN_ANNOTATION_NAME_SET

参数说明:

参数名类型必填说明
namearray每有一块IO板增加16个数据

请求示例:

json
{
  "name": ["", "qwer", "", "asd", ""]
}

11.2 查询DIN配置文件

命令码: 0x2F48 DIN_ANNOTATION_NAME_INQUIRE


11.3 返回DIN配置文件

命令码: 0x2F49 DIN_ANNOTATION_NAME_RESPOND


11.4 设置DOUT

命令码: 0x2F4A DOUT_ANNOTATION_NAME_SET

参数说明:

参数名类型必填说明
namearray每有一块IO板增加16个数据

请求示例:

json
{
  "name": ["", "dsad", "wa"]
}

11.5 示教器DOUT查询

命令码: 0x2F4B DOUT_ANNOTATION_NAME_INQUIRE


11.6 控制器返回DOUT数据

命令码: 0x2F4C DOUT_ANNOTATION_NAME_RESPOND


11.7 设置AIN端口注释名称

命令码: 0x2F4D AIN_ANNOTATION_NAME_SET

参数说明:

参数名类型必填说明
namearray每有一块IO板增加16个数据

请求示例:

json
{
  "name": ["", "asd", "ayt", ""]
}

11.8 示教器查询AIN参数

命令码: 0x2F4E AIN_ANNOTATION_NAME_INQUIRE

说明: data: 无


11.9 示教器返回查询结果

命令码: 0x2F4F AIN_ANNOTATION_NAME_RESPOND


11.10 设置AOUT端口注释名称

命令码: 0x2F50 AOUT_ANNOTATION_NAME_SET

参数说明:

参数名类型必填说明
namearray每有一块IO板增加16个数据

请求示例:

json
{
  "name": ["", "das", "dsf", "ty"]
}

11.11 示教器查询AOUT参数配置文件

命令码: 0x2F51 AOUT_ANNOTATION_NAME_INQUIRE


11.12 示教器返回查询结果

命令码: 0x2F52 AOUT_ANNOTATION_NAME_RESPOND