跳到主要内容

IO

IO指令用于进行机械臂系统IO的读写和相关参数的设置。

指令功能表

指令功能
DI获取DI端口的状态
DIGroup获取多个DI端口的状态
DO设置数字输出端口状态
DOGroup设置多个数字输出端口状态
GetDO获取数字输出端口当前状态
GetDOGroup获取多个数字输出端口当前状态
AI获取AI端口的值
AO设置模拟输出端口的值
GetAO获取模拟输出端口当前的值

DI

原型:

DI(index)

描述:

读取数字输入端口状态。

必选参数:

  • index:DI端子的编号。

返回:

对应的DI端子的状态(ON/OFF)。

示例:

-- DI1为ON时机械臂以直线运动方式运动至P1点。
if (DI(1)==ON)
then
MovL(P1)
end

DIGroup

原型:

DIGroup(index1,...,indexN)

描述:

读取多个数字输入端口状态。

必选参数:

  • index:DI端子的编号,可输入多个,以逗号分隔。

返回:

对应的DI端子的状态(ON/OFF),以数组形式返回。

示例:

-- 当DI1和DI2都为ON时机械臂以直线运动方式运动至P1点。
local digroup = DIGroup(1,2)
if (digroup[1]&digroup[2]==ON)
then
MovL(P1)
end

DO

原型:

DO(index,ON|OFF,time_ms)

描述:

设置数字输出端口状态。

必选参数:

  • index:DO端子的编号。
  • ON|OFF:要设置的DO端口状态。

可选参数:

  • time_ms: 持续输出时间,单位ms,取值范围:[25, 60000]。如果设置了该参数,系统会在指定时间后对DO自动取反。取反为异步动作,不会阻塞指令队列,系统执行了DO输出后就会执行下一条指令。

示例:

-- 将DO1设置为ON。
DO(1,ON)
-- 将DO1设置为ON,并在50ms后再自动设置为OFF。
DO(1,ON,50)

DOGroup

原型:

DOGroup({index1,ON|OFF},..,{indexN,ON|OFF})

描述:

设置多个数字输出端口状态。

必选参数:

  • index:DO端子的编号。
  • ON|OFF:要设置的DO端口状态。
    可设置多组,每组以大括号包裹,组间以逗号隔开。

示例:

-- 将DO1和DO2设置为ON。
DOGroup({1,ON},{2,ON})

GetDO

原型:

GetDO(index)

描述:

获取数字输出端口当前状态。

必选参数:

  • index:DO端子的编号。

返回:

对应的DI端子的状态(ON/OFF)。

示例:

-- 获取DO1的当前状态。
GetDO(1)

GetDOGroup

原型:

GetDOGroup(index1,...,indexN)

描述:

获取多个数字输出端口当前状态。

必选参数:

  • index:DO端子的编号,可输入多个,以逗号分隔。

返回:

对应的DO端子的状态(ON/OFF),以数组形式返回。

示例:

-- 获取DO1和DO2的当前状态。
GetDOGroup(1,2)

AI

原型:

AI(index)

描述:

读取模拟输入端口的值。

必选参数:

  • index:AI端子的编号。

返回:

对应的AI端子的值。

示例:

-- 读取AI1的值并赋值给变量test。
test = AI(1)

AO

原型:

AO(index,value)

描述:

设置模拟输出端口的值。

必选参数:

  • index:AO端子的编号。
  • value:要设置的值,电压取值范围:[0,10],单位:V;电流取值范围:[4,20],单位:mA。

示例:

-- 将AO1的输出值设置为2。
AO(1,2)

GetAO

原型:

GetAO(index)

描述:

获取模拟输出端口当前的值。

必选参数:

  • index:AO端子的编号。

返回:

对应的AO端子的值。

示例:

-- 获取AO1的当前状态。
GetAO(1)

这段内容已经转为 Markdown 格式,包含了标题、表格和代码块,适合在支持 Markdown 的编辑器或平台中显示。