恭喜,你发布的帖子
发布于 2018-01-25 22:25:16
9楼
200smart的沿指令,按200smart系统手册给出的定义执行。别的系列产品,或者别家公司产品的沿指令,可以用来作理解性的说明,但200smart的沿指令还是按它自己的定义执行。
一个扫描周期内要把整个程序的每一部分都扫到,有时是没必要的。比如子程序是有条件调用的,就不保证每个周期都能扫描。
问题在于,不是每周期调用的子程序内,可以用沿指令吗?有人认为可以,有人认为会出问题。
到底会出什么问题呢?是因为没有达到编程者所想要的结果。是沿指令没有按手册的定义执行吗?
能不能举出反例,来说明手册写的不对,或不够详细、全面,有遗漏?
首先,要强调的是逻辑程序全扫描,并不是所有程序要全扫描;
其次,逻辑程序全扫描有什么不好?能举出反例吗?要知道可编程逻辑控制器的渊源就是所有的逻辑电路都实时可控的。逻辑程序条件执行的后果就是大家现在在反反复复讨论的,多少年都如此,但是从三菱转过来的客户几乎没人与我讨论这个问题,这是为啥?就是传统三菱的程序就是全扫描的。
第三,沿指令的特性,我觉得各位分析得没有问题,关键在于如何使用,为啥一定要条件执行逻辑指令?为啥一定要在条件执行的逻辑指令里用沿指令?不这么做也完全可以实现要实现的控制功能呀,而且程序反而更可靠稳定。
当年,S5系统根本就没有沿指令,有什么逻辑把S5能难倒了?没有吧。
说实话,我从不认为编程是什么高深的活儿,犹如八股文,就是套路,实践证明没问题那就这么用,实践证明不可靠,那就别用,大道至简,不懂的人那就在实践中慢慢体会就是了,这么讨论有几个人能整明白?整糊涂的倒是有可能,到头里该犯的错误一个都不会少。
总之一句话,逻辑程序全扫描,做得到就没兴趣讨论这个所谓的沿指令了。
请填写推广理由:
分享
只看
楼主