恭喜,你发布的帖子
发布于 2022-11-05 11:42:45
44楼
嘿嘿,只是你以为,我根本就不用SET/RESET!这个论坛里都知道。
不知道是谁的逻辑思维欠缺呢?我说我没遇到的习惯编程用SET/RESET的人有严谨的逻辑思维能力,我说的是事实,我也没说你是这个人。你可以不同意我的观点,你也可以用你自身来证明你的观点,秀点代码例程,来说明用SET/RESET是有优势的,逻辑是严密的,不是在补漏洞。没有证明,反过来说我在补漏洞,我的确补过漏洞,那也是给一些用SET/RESET的人编的程序补漏洞呀。
我猜,喜欢使用SET/RESET的工程师,肯定大量使用IF ...THEN;使用 JP跳转;使用顺控指令。
就像版主杨工说的那样,条件执行。就是说,会有很多不执行的程序段。
这就带来一个问题:当不执行程序段中,使用线圈、赋值这类语句时,因为不执行,所以,此变量保持上一周期的结果。(语句计算结果应该是FALSE,但没有执行,仍是上一周期的TRUE)而且交叉引用检查,不仔细,就很容易蒙圈。
此时,就会觉得SET/RESET比较可靠了。由此,一发不可收拾地使用它们。
所以,出问题的关键:就是把程序指令写在了可跳过的程序段中。没有做到全扫描!
在200/300中有SCR/主控继电器MCR,有指令状态位S可用,能确保“唯一”性。
把(顺控)状态执行写在外面,就不会跳过了,自然就不需要SET/RESET了。
1200/1500没有这种顺控指令。就是用 CASE OF来做,若把程序指令写在其中,同样有这个问题。
请填写推广理由:
分享
只看
楼主