Appearance
WaitSimDI 等待虚拟数字量输入
虚拟数字量输入等待指令用于在设定的时长内,监控指定的**虚拟数字量输入(SimDI)**端口值。当该虚拟端口的状态与目标值匹配时,程序继续执行。该指令常用于等待后台程序(通过 RUN 启动的程序)发送的逻辑信号或复杂的内部状态变更。
指令格式
WaitSimDI (SIMDIN, VALUE, T, INTERENABLE, RET, [Goto])
WaitSimDI(虚拟数字输入端口, 目标十进制值, 超时时间, 中断使能, 超时判断值, [跳转标签])
(备注:带 [] 参数为可选参数)
参数详细说明
| 参数 | 类型 | 说明 | 默认值/备注 |
|---|---|---|---|
| SIMDIN | SimDI | 需要监控的目标虚拟数字量输入端口 | 必填 |
| VALUE | int 或 INT 变量 | 期望等待的状态值(0 或 1) | 必填 |
| T | int 或 INT 变量 | 等待限时,单位 ms(0:强制等待直到信号满足) | 必填 |
| INTERENABLE | int | 程序暂停恢复后的计时逻辑(0:继续计时,1:重新计时) | 必填 |
| RET | INT 变量 | 记录指令执行结束后的状态(0:成功,1:超时) | 必填 |
| [Goto] | label | 超时后程序指针跳转到的指定标签名 | 可选 |
应用示例
示例 1:
estun
WaitSimDI (SimDI1, 1, 1000, 0, INT1)逻辑描述:
程序将等待虚拟数字量输入变量 SimDI1 变为 1 的状态,设定最长等待时间为 1000ms。如果在此期间程序暂停并恢复,系统将在暂停前的基础上继续计时。若 1000ms 时间耗尽仍未等到该信号,则将变量 INT1 置为 1 以标记超时,随后程序继续执行下一条指令。