图片:
之前提过一个问题,就是让操作者自行输入一个点进行监控,达到设备排查故障时同画面可以监控必要的输入输出点的问题
后来一位大哥提点了一下用宏指令,最近闲余的时候研究了一下,做了一个点实验,功能上基本能完成
但是用PC连接PLC在线模拟的时候发现问题
第一个版本是用的select case 的方式选择输出,由于点太多的话语句太复杂,只做了少量的点。直接关联PLC输入的指示灯和宏指令管来的指示灯都可以迅速反应。
第二个版本用的数组的方式,由于语句比较简单,所以添加了64个点,这时问题就来了。宏指令关联的指示灯对比直接关联PLC的指示灯慢0.5-1秒的样子。这是什么原因呢?
请各位大神指导指导
附上第二版本的指令
macro_command main()
char X1scan = 0
bool Xstate[64]
char i = 0
bool Xled = 0
GetData(X1scan, "Local HMI", LW, 0, 1)
GetData(Xstate[0], "Mitsubishi FX3U/FX3G/FX3GA", X, 0, 64)
i = X1scan
Xled = Xstate
SetData(Xled, "Local HMI", LB, 0, 1)
end macro_command