发布时间: 2026-01-16
IO逻辑控制插件
1. 简介
IO逻辑控制插件可以把不同功能模块的IO连接起来,例如干涉区插件可能会输出某个IO信号作为指示,但是不能利用该信号作为机器人动作的输入信号,利用I/O逻辑控制插件就可以把这个输出信号映射到输入信号,从而控制机器人动作。并且由于标准IO数量有限,IO逻辑控制插件可以充分利用寄存器信号。(目前该插件搭配干涉区插件时会有延时,导致机器人不能及时暂停,研发目前还在研究解决方法)
2. 操作流程
2.1使用IO逻辑控制插件
第一步:安装插件,安装完后在机器人配置→插件里就可以看到IO逻辑控制插件和扩展IO服务插件,如图-1所示。
IOLogicControl-1.0.0-SNAPSHOT.elico(该插件为IO逻辑控制插件)
图-1
第二步:按照图示编号顺序操作。
1. 添加一个规则。
2. 自定义规则名称。
3. 启用该规则以及选择运算方式(与运算还是或运算)
4. 点击添加按钮选择IO添加到源IO列表,可以选择2个或多个。源IO列表支持:数字,可配置,工具,布尔寄存器,整数寄存器,MODBUS类型的输入和输出IO。
5. 点击添加按钮选择IO添加目标IO列表,可以选择2个或多个。
目标IO列表不支持:数字,可配置,工具,MODBUS类型的输入。
图-2
第三步:每个源IO列表的信号前都有一个感叹号,如果感叹号是灰色,如图-3红框里的第一个信号,那么就取这个信号的当前值;可以通过点击感叹号的值来观察感叹号的颜色,如果感叹号是黑色,如图-3第二个信号,那么就是对这个信号取反,取这个信号的相反值。
图-3
第四步:当源IO列表和目标IO列表中都至少包含一个IO信号时,并且选择了逻辑类型的情况下,表示该规则被完全定义,右边的的感叹号会变成绿色的勾,如图-4红框1标记所示;如果勾选了启用规则那么规则左侧的禁用图标就会变成绿色运行图标,如图-4红框标记2所示,表示当规则被完全定义时,会执行该规则的逻辑表达式,将源IO列表里的IO信号进行运算,并将运算结果赋值给目标IO列表里的IO信号。
图-4
3. 常见问题解答
1. 当目标IO列表包含布尔寄存器或者整数寄存器的输入IO时,需要配合扩展IO服务插件,才可以修改布尔寄存器或者整数寄存器的输入IO的值,如果发现设置输入寄存器信号失败,请先检查扩展IO服务插件是否正常运行,如图-5红框标记所示,选择标记1,再看标记2处是不是运行正常状态,如果没有运行就点击运行按钮。
图-5
2. 扩展IO服务插件可以设置相应寄存器的IO口范围,默认为最大范围,点击运行,status 显示正常,表示连接成功,即可设置相应的寄存器输入IO的值。下方Owner 表示 占用该IO口的对象,如果是通过 I/O 逻辑控制插件修改输入寄存器的值,会显示 I/O LogicControl,type 表示 寄存器类型,0 表示 布尔寄存器, 1 表示 整数寄存器,Index 表示 布尔或者整数寄存器的IO索引。
3. 在每一条规则中,在选择源IO列表和目标IO列表时,已选择的IO不会出现选择对话框中,也就是在同一条规则中,源列表和目标列表不会包含重复的IO,但是不同规则可以包含重复的IO信号
4. 在使用MODBUS信号时,如果已经在I/O 逻辑控制插件中选择了一个或者多个MODBUS信号,如果在软件中修改了选中的MODBUS信号的相关属性:名字,类型,输入输出类型,该MODBUS信号将不可用,I/O 逻辑控制插件的逻辑运算功能部分将不再使用该MODBUS信号,再次进入I/O 逻辑控制页面时,会把被修改的MODBUS信号移除,同时会触发配置文件修改,显示*号。
5. 使用寄存器信号时,如果I/O 逻辑控制插件中选择的寄存器的用户自定义名称被重置,那么该寄存器信号将不可用,同MODBUS信号一样,逻辑运算中将不会再使用该寄存器信号,再次进入I/O 逻辑控制页面,将会把重置过的寄存器信号移除,同时会触发配置文件修改,显示*号。如果知识修改寄存器信号的自定义名称,将不会有影响
6. 在使用MODBUS信号时,需要注意MODBUS信号可能会映射到其他IO,它们的值会联动,在创建规则时,请考虑这一点