关于西门子PLC S7-200定时器分辨率

2024-12-23 03:54:35
推荐回答(3个)
回答1:

你理解错误了,程序刷新和定时器刷新是两回事,只不过由程序刷新引起的定时器误差是要引起一些小误差,但都是微秒级别的误差了,一年时间误差不会超过两秒。定时器的刷新和扫描的关系只在于执行条件的满足与否的扫描顺序,一旦启动定时器,如果中途不断开条件的话,即便是扫描更新了,但定时器的时间也会继续上次扫描的计时,继续运行。扫描时间是针对输入信号采集和输出信号刷新的,程序的执行条件才会更大的受扫描时间的影响,而定时器基本上可以忽略这种影响,因为定时器一旦启动就不是扫描周期控制了,而是受PLC内部缓存的系统运算控制,都和用户程序关系不大了,用户程序只要告诉它何时起停就可以了。

回答2:

你可以这样理解,你的程序,如同一排排的房子,扫描周期就像巡视员(PLC)走了一圈,每走一圈时,巡视员会根据当时的情况,给这些房子一个0或1的值,这些值就是输出值。但有些房子比较特殊,如定时器、计数器,只要接通后,不管巡视员来不来,他们会根据自己的情况,自己给出0或1,。

回答3:

定时器不是你认为的那样工作的,比如1ms定时器,如果设定定时时间10ms,循环时间20ms,定时指令在程序开始,第一个循环结束,定时器时间就到了,因此IO刷新时,定时器状态是1,定时指令在程序尾部,扫描结束,时间未到,定时器状态是0,程序重新开始,扫描到结束,此时定时时间早就超过了20ms,定时器状态才置1.