Skip to content

IO配置指令集

控制器IO

机械臂具有IO端口,第二代数量和分类如下所示:

类型说明
数字输出:DO4路,可配置为0~12V
数字输入:DI3路,可配置为0~12V
模拟输出:AO4路,输出电压0~10V
模拟输入:AI4路,输入电压0~10V

第三代数量和分类如下所示:

数字IO:DO/DI复用4路,可配置为0~24V

设置数字IO模式(第三代控制器)set_IO_mode

  • 输入参数
功能描述类型说明
set_IO_modestring设置数字IO模式。
IO_NumintIO端口号,范围:1~4。
IO_modeint模式选择。
0-通用输入模式;
1-通用输出模式;
2-输入开始功能复用模式;
3-输入暂停功能复用模式;
4-输入继续功能复用模式;
5-输入急停功能复用模式;
6-输入进入电流环拖动复用模式;
7-输入进入力只动位置拖动模式(六维力版本可配置);
8-输入进入力只动姿态拖动模式(六维力版本可配置);
9-输入进入力位姿结合拖动复用模式(六维力版本可配置);
10-输入外部轴最大软限位复用模式(扩展关节的外部轴模式可配置);
11-输入外部轴最小软限位复用模式(扩展关节的外部轴模式可配置);
12-输入初始位姿功能复用模式(低电平触发);
13-输出碰撞功能复用模式(正常输出低电平,错误输出高电平)。
  • 代码示例

输入

设置数字IO模式。

json
{"command":"set_IO_mode","IO_Num":1,"IO_mode":0}

输出

配置成功:

json
{
    "command": "set_IO_mode",
    "set_state": true
}

配置失败:

json
{
    "command": "set_IO_mode",
    "set_state": false
}

设置数字IO输出状态set_DO_state

  • 输入参数
功能描述类型说明
set_DO_statestring设置数字IO输出。
IO_NumintIO端口号,范围:1~4。
stateintIO状态,1-输出高,0-输出低。
  • 代码示例

输入

json
{"command":"set_DO_state","IO_Num":1,"state":1}

输出

配置成功:

json
{
    "command": "set_DO_state",
    "set_state": true
}

配置失败:

json
{
    "command": "set_DO_state",
    "set_state": false
}

查询数字IO状态(第三代控制器)get_IO_state

  • 输入参数
功能描述类型说明
get_IO_statestring获取数字IO输出。
IO_NumintIO端口号,范围:1~4。
  • 输出参数
功能描述类型说明
IO_NumintIO 端口号,范围:1~4。
IO_modeint输出设置模式。
0-通用输入模式;
1-通用输出模式;
2-输入开始功能复用模式;
3-输入暂停功能复用模式;
4-输入继续功能复用模式;
5-输入急停功能复用模式;
6-输入进入电流环拖动复用模式;
7-输入进入力只动位置拖动模式;
8-输入进入力只动姿态拖动模式;
9-输入进入力位姿结合拖动复用模式;
10-输入外部轴最大软限位复用模式;
11-输入外部轴最小软限位复用模式;
12-输入初始位姿功能复用模式;
13-输出碰撞功能复用模式。
IO_StateintIO状态,1-输出高,0-输出低。
realtime_speedobject缺省参数,当IO_mode为14(实时调速功能复用模式)时,返回此参数。
speedint输出设置速度,取值范围0-100。
modeint输出设置模式。
1-单次触发模式,单次触发模式下当IO拉低速度设置为speed参数值,IO恢复高电平速度设置为初始值。
2-连续触发模式,连续触发模式下IO拉低速度设置为speed参数值,IO恢复高电平速度维持当前值。
  • 代码示例

输入

获取数字IO输出状态

json
 {"command":"get_IO_state","IO_Num":1}

输出

json
{
    "state": "IO_state",
    "IO_Num": 1,
    "IO_Mode": 1,
    "IO_state": 1,
}

查询数字IO输出状态(第二代控制器)get_DO_state

  • 输入参数
功能描述类型说明
get_DO_statestring获取数字IO输出。
IO_NumintIO端口号,范围:1~4。
  • 输出参数
功能描述类型说明
stateintIO状态,1-输出高,0-输出低。
  • 代码示例

输入

获取数字IO输出状态。

json
{"command":"get_DO_state","IO_Num":1}

输出

json
{
    "state": "DO_state",
    "IO_Num": 1,
    "IO_state": 1
}

查询数字IO输入状态(第二代控制器)get_DI_state

  • 输入参数
功能描述类型说明
get_DI_statestring获取数字IO输入状态。
IO_NumintIO端口号,范围:1~4。
  • 输出参数
功能描述类型说明
stateintIO状态,1-输出高,0-输出低。
  • 代码示例

输入

获取数字IO输出状态

json
{"command":"get_DI_state","IO_Num":1}

输出

json
{
    "state": "DI_state",
    "IO_Num": 1,
    "IO_state": 1
}

设置模拟IO输出状态(第二代控制器)set_AO_state

  • 输入参数
功能描述类型说明
set_AO_statestring设置模拟IO输出。
IO_NumintIO端口号,范围:1~4。
voltageintIO输出电压,分辨率0.001V,范围:0~10000,代表输出电压0v~10v。
  • 代码示例

输入

设置模拟IO输出。

json
{"command":"set_AO_state","IO_Num":1,"voltage":1000}

输出

配置成功:

json
{
    "command": "set_AO_state",
    "state": true
}

配置失败:

json
{
    "command": "set_AO_state",
    "state": false
}

查询模拟IO输出状态(第二代控制器)get_AO_state

  • 输入参数
功能描述类型说明
get_AO_statestring查询模拟IO输出状态。
IO_NumintIO端口号,范围:1~4。
  • 输出参数
功能描述类型说明
IO_NumintIO端口号,范围:1~4。
voltageintIO输出电压,分辨率0.001V,范围:0-10000,代表输出电压0-10v。
  • 代码示例

输入

获取模拟IO输出。

json
{"command":"get_AO_state","IO_Num":1}

输出

json
{
    "state": "AO_state",
    "IO_Num": 1,
    "voltage": 1000
}

查询模拟IO输入状态(第二代控制器)get_AI_state

  • 输入参数
功能描述类型说明
get_AI_statestring获取模拟IO输入状态。
IO_NumintIO端口号,范围:1~4。
  • 输出参数
功能描述类型说明
IO_NumintIO端口号,范围:1~4。
voltageintIO输出电压,分辨率0.001V,范围:0-10000,代表输出电压0-10v。
  • 代码示例

输入

获取模拟IO输出。

json
{"command":"get_AI_state","IO_Num":1}

输出

json
{
    "state": "AI_state",
    "IO_Num": 1,
    "voltage": 1000
}

查询所有IO输入状态get_IO_input

  • 输入参数
功能描述类型说明
get_IO_inputstring获取所有IO输入状态。
  • 输出参数
功能描述类型说明
DIint数字输入状态,1-高,0-低。
AIint模拟输入电压,精度0.001V,如:1000,代表1V。
  • 代码示例

输入

获取所有IO输入状态。

json
{"command":"get_IO_input"}

输出

json
{
    "state": "IO_input_state",
    "DI": [
        1,
        1,
        1
    ],
    "AI": [
        1000,
        2000,
        3000,
        4000
    ]
}

查询所有IO输出状态get_IO_output

  • 输入参数
功能描述类型说明
get_IO_outputstring获取所有IO输出状态。
  • 输出参数
功能描述类型说明
DOint数字输出状态,1-高,0-低。
AOint模拟输出电压,精度0.001V,如:1000,代表1V。
  • 代码示例

输入 获取所有IO输出。

json
{"command":"get_IO_output"}

输出

json
{
    "state": "IO_output_state",
    "DO": [
        1,
        1,
        1,
        1
    ],
    "AO": [
        1000,
        2000,
        3000,
        3000
    ]
}

设置电源输出(第三代控制器)set_voltage

  • 输入参数
功能描述类型说明
set_voltagestring设置电源输出。
voltage_typeint电源输出类型,范围:0~3。
  • 代码示例

输入

设置电源输出。

json
 {"command":"set_voltage","voltage_type":2}

输出

配置成功:

json
{
    "command": "set_voltage",
    "state": true
}

配置失败:

json
{
    "command": "set_voltage",
    "state": false
}

查询电源输出(第三代控制器)get_voltage

  • 输入参数
功能描述类型说明
get_voltagestring获取电源输出。
  • 输出参数
功能描述类型说明
voltage_typeint电源输出类型,范围:0~3。0-0V,2-12V,3-24V。
  • 代码示例

输入 获取控制器电源输出类型。

json
{"command":"get_voltage"}

输出

json
{
    "command": "voltage_state",
    "voltage_type": 2
}

末端工具IO

机械臂末端工具端具有IO端口,数量和分类如下所示:

类型说明
电源输出1路,可配置为0V/5V/12V/24V。
数字IO2路,输入输出可配置。
通讯接口1路,可配置为RS485。

设置工具端数字IO输出状态set_tool_DO_state

  • 输入参数
功能描述类型说明
set_tool_DO_statestring设置数字IO输出。
IO_NumintIO端口号,范围:1~2。
stateintIO状态,1-输出高,0-输出低。
  • 代码示例

输入 设置工具端数字IO输出。

json
{"command":"set_tool_DO_state","IO_Num":1,"state":1}

输出 配置成功:

json
{
    "command": "set_tool_DO_state",
    "set_state": true
}

配置失败:

json
{
    "command": "set_tool_DO_state",
    "set_state": false
}

设置工具端数字IO模式set_tool_IO_mode

  • 输入参数
功能描述类型说明
set_tool_IO_modestring设置数字IO模式。
IO_NumintIO端口号,范围:1~2。
stateintIO状态,0-输入状态,1-输出状态。
  • 代码示例

输入 设置数字IO模式

json
{"command":"set_tool_IO_mode","IO_Num":1,"state":0}

输出 配置成功:

json
{
    "command": "set_tool_IO_mode",
    "set_state": true
}

配置失败:

json
{
    "command": "set_tool_IO_mode",
    "set_state": false
}

查询工具端数字IO状态get_tool_IO_state

  • 输入参数
功能描述类型说明
get_tool_IO_statestring获取数字IO状态。
  • 输出参数
功能描述类型说明
IO_Modeint0-输入模式,1-输出模式。
IO_StateintIO状态,1-输出高,0-输出低。
  • 代码示例

输入 获取数字IO状态。

json
{"command":"get_tool_IO_state"}

输出

json
{
    "state": "tool_IO_state",
    "IO_Mode": [
        0,
        1
    ],
    "IO_State": [
        0,
        1
    ]
}

设置工具端电源输出set_tool_voltage

  • 输入参数
功能描述类型说明
set_tool_voltagestring设置电源输出。
voltage_typeint电源输出类型,范围:0~3。0-0V,2-12V,3-24V。
  • 代码示例

输入 设置电源输出

json
{"command":"set_tool_voltage","voltage_type":1}

输出 配置成功

json
{
    "command": "set_tool_voltage",
    "state": true
}

配置失败

json
{
    "command": "set_tool_voltage",
    "state": false
}

查询工具端电源输出get_tool_voltage

  • 输入参数
功能描述类型说明
get_tool_voltagestring获取电源输出。
  • 输出参数
功能描述类型说明
voltage_typeint电源输出类型,范围:0~3。0-0V,2-12V,3-24V。
  • 代码示例

输入 获取电源输出类型

json
{"command":"get_tool_voltage"}

输出

json
{
    "state": "tool_voltage_state",
    "voltage_type": 1
}