发布于 2009-01-04 17:21:06
0楼
DEAR 脚跟着地 :
1.不知道你所说:200是异步的,是指定时计数是异步的,还是说定时触点是异步的,有什么方法能证明吗?
-----------------
说实话,我也搞不清“异步”和“同步”到底是什么东西。我很想知道,因为关于通讯的许多sfc都提到“异步”这个词。不过,这里所说的“异步”应该可以理解为“计时和OB1循环“是独立的,我想所有的plc因该都是这样的,如果因为中断而让计时器“停下来”等待OB1显然不符合使用者的本意。
你所说的"楼主合所说的第一个定时程序在S7200里面能正常运行 ”就证明了这一点。正因为计时器是以时基为单元实时刷新的,而不是在下一个OB1的扫描时刷新的,只有这样才能置位。
2 如果说定时计数是异步的那么如shine所说:在S7-200子程序里面放置一个定时器,此定时器线圈一直接通,在不到定时时间的情况下停止调用子程序,子程序里面的定时器是永远也不会通的,而300却可以通。
-----------------
我手里没有200的模拟器,无法验证以上说法,只能通过资料来说明“异步”。
在“mirco'n power”中指出:在条件调用子程序的主程序中,当停止子程序调用时,如果定时器已经激活正在计时,停止调用这个子程序会造成定时器的失控。不管此时定时器前面的激活条件如何变化,定时器(1ms、10ms 时基的)会一直走到最大值,定时器输出也会在达到设定值时接通;(100ms 时基的定时器会在上述情况下停止计时,但在逻辑上处于失控状态)。
“mirco'n power”中所说的“不同分辨率的定时器刷新规律“也说明了200的定时器是“异步”。
3 你所说的“S7-200是在定时时间到后并扫描到线圈才刷新触点”仅对分辨率为100ms的定时器而言是正确的。但这并不能说明200不是“异步”的。
二人行,必有吾师。