延时动作指的是当事件发生后,并不马上执行,而是等到一段延时之后再执行,比如说,现场有一个传感器监视一个故障的发生,当探测故障发生的信号进来,如果马上动作,可能会引起停机,因为有的故障是需要停机的,假定这个故障信号并不是真正的故障,可能只是一个干扰的信号,停机就变成虚惊一场了,还可能带来不必要的停机损失。干扰信号或许是很小的一个窄脉冲,但在快速反应的I/O刷新和快速的例程扫描,已经足以使这个梯级产生控制动作了,我们不妨让这个信号延时一段,确定故障真实的存在,再去故障停机。梯级逻辑编程如图5-5所示。
图5-5 延时梯级逻辑
如果我们将计时器的预定值定义为1000,作为时间基值为1ms的计时器,那么计时器TON的梯级条件Fault能保持1s,这个故障输出动作的产生将延时1s执行。一个故障探测状态输入能够保持1s之久,我们有理由相信,故障真的发生了。如果这仅仅是一个扰动信号,不到1s便已经消失,计时器TON的梯级条件随之消失,计时器复位,完成位不会置位,故障输出动作不会发生。故障动作延时时间可以根据现场实际情况来确定,系统运行一段时间后,挑选一个合适的延时时间便可。
另一个延时监视的例子是对一个旋转机器的监测,以确定旋转的机器没有被机械卡死,一直处在旋转的状态。某个机器有一个机械触发器,如果这个机器一直在旋转,这个触发器会在设定的时间内触动一个感应器,感应器的状态将中断一个计时器的梯级条件,令计时器复位。如果在设定的时间一直没有中断,计时器的完成位便会置位,产生一个状态动作,给出机器不在旋转状态的信息。梯级逻辑编程如图5-6所示。
图5-6 延时梯级逻辑
这个计时器的监视时间是1min,如果1min过去,机械接触器还没有触碰到感应器,计时器的梯级条件在这一段时间都没有消失,计时器计时完成位将锁定机械旋转停止的信息。如果机器旋转正常,则感应器会不时地中断计时器的梯级条件,令计时器复位,完成位的动作就始终不能发出。(www.xing528.com)
我们再看一个双向逻辑控制延时的例子,这是某个输出开关的控制需求,当控制发出打开的命令后,延时2s打开;或者控制发出关闭的命令后,延时2s关闭。如果发出打开的命令后不到2s接受到关闭的命令,则不打开;如果发出关闭的命令后不到2s接受到打开的命令,则不关闭。请看如图5-7所示的梯级逻辑编程。
图5-7 双向延时梯级逻辑
延时控制开关Delay_Control_In同时作为通延时器指令TON和断延时器指令TOF的梯级条件,开或关的任何情况下总能满足其中一个计时器的条件,并令它开始计时,最终产生它的延时动作输出;或者突然中断某个方向的延时而转回原来的方向。
这是一个典型的对称性的编程实例,巧妙地运用了通延时计时器和断延时计时器的逻辑动作,梯级简洁而明了。曾经有学生单用TON指令编出了我要的控制结果,由于没有使用断延时计时器,程序看上去没有对称性,被我无情地否决了。通延时计时和断延时计时的逻辑相反的特点,正是与我们的需求吻合的,为什么不这样直截了当地使用呢,没有对称编写出来的程序,逻辑关系是不够清晰的,解释颇费周折,过不久连自己也读不懂了,尽管可以实现逻辑功能却没有可读性,只要了解TON和TOF执行的不同之处,相信这几个梯级是可以令人一目了然的。
另外,要提醒注意的是,断延时计时器的DN是常开作为动作位(请回顾一下TOF指令的状态位的波形图)。梯级条件编写是当断延时完成动作时,也就是OFF时,去关闭延时控制输出。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。