Skip to content

SetSimDO8421 设置8421码虚拟数字量输出

该指令用于设置一段连续的**虚拟数字量输出(SimDO)**端口状态。它将传入的一个十进制数值转换成二进制数据,并按位分配到指定的连续 SimDO 端口上。由于是虚拟端口,该操作主要用于程序内部的逻辑分组控制、多位状态标志位的批量设置或与并行后台程序的通讯。

指令格式

SetSimDO8421 (BEGINPORT, ENDPORT, SETVALUE)

SetSimDO8421 (起始端口, 结束端口, 设置值)


参数详细说明

参数类型说明默认值/备注
BEGINPORTint该段连续虚拟数字量输出端口的起始端口号必填
ENDPORTint该段连续虚拟数字量输出端口的结束端口号必填
SETVALUEint 或 INT 变量需要设置的十进制目标值,系统将其转换为二进制按位赋值必填

应用示例

示例 1:

estun
SetSimDO8421 (9, 16, 255)

逻辑解析:

  1. 目标值转换:十进制数 255 转换为二进制为 1111 1111(共 8 位)。
  2. 执行结果:将第 9 到第 16 号虚拟数字量输出端口(共 8 个端口)全部设置为 1

示例 2:批量设置状态位

estun
SetSimDO8421 (1, 4, 5)

逻辑解析:

  1. 目标值转换:十进制数 5 转换为 4 位二进制为 0101
  2. 端口分配(起始端口 1 为最低位):
    • SimDO1 = 1
    • SimDO2 = 0
    • SimDO3 = 1
    • SimDO4 = 0

💡 虚拟与物理 8421 指令的区别

指令类型适用对象硬件影响典型用途
SetDO8421物理 DO 端口直接改变控制器接线端子的输出电平驱动外部 PLC、显示器、阀组
SetSimDO8421虚拟 SimDO 端口仅改变控制器内部寄存器状态逻辑判断、程序间通讯、仿真调试

ESTUN Robotics — ER 系列机器人编程语言指令参考