发布于 2009-04-03 13:33:46
0楼
“S7 monitors the maximum scan time, ensuring a maximum response time. The value for the maximum scan time is preset to 150 ms.”
这是OB1在线帮助的另一句话.
我的理解是:
如果假设这个默认的最大时间来最为OB1的扫描时间的话,也就是同一个信号要经过150ms后才能被再次扫描到;
那同样如果使用OB35(100ms)扫描一次的话,如果程序量小的话,是不是也可以做到150ms扫描到这个信号呢?
因此我的理解是:
1.如果使用中断扫描的扫描时间足够短的话,是不是就可以约等于OB1的循环扫描呢?
2.如果将程序都写在OB1中,自然扫描周期加长,扫描到同一个信号的时间间隔也要加长。如果这个时候将程序有序的分割到不同的中断OB中,虽然扫描方式是中断方式,但扫描到同一个信号的周期是不是可以缩短呢?这也应该是使用中断扫描的优化程序的机理吧。
3.那同样设想,是不是对于连续控制,或者快速响应的逻辑也可以通过中断OB的方式来处理呢?虽然我尝尝会考虑编写顺控程序的时候使用中断OB可能会丢失数据。但如果程序使用中断OB优化,和使用OB1循环扫描的方式,是不是效果会更好一些呢。是不是“使用中断OB可能会丢失数据”是个误区呢?
请高手指正。
不以物喜,不以己悲;
达则兼济天下,穷则独善其身。