首页 理论教育 定时器/计数器指令的应用范例解析

定时器/计数器指令的应用范例解析

时间:2023-06-24 理论教育 版权反馈
【摘要】:定时器、计数器与顺序输出指令配合使用可以演绎出“丰富多彩”的控制效果,下面列举一些经典程序段,供读者在编写大型程序时引用。图3-21中定时器TIM0001的设定时间为5s,计数器CNT0002的计数设定值为360次,扫描周期可忽略不计,因此总定时1800s,即0.00为ON 30min后,100.01输出。

定时器/计数器指令的应用范例解析

定时器、计数器与顺序输出指令配合使用可以演绎出“丰富多彩”的控制效果,下面列举一些经典程序段,供读者在编写大型程序时引用。

1.延时断开程序

【例3-1】延时3s断开程序,本例旨在掌握定时器常闭触点的应用。如图3-19所示。

当输入位0.00为ON时,定时器TIM0000的定时当前值开始做递减操作,同时输出继电器100.05接通。经过3s后TIM0000产生输出,其常闭触点T0断开,同时输出继电器100.05断开,从而在100.05上产生了一个3s的延时中断输出。

2.长时间定时程序

除采用长时间定时器(TIML/TIMLX)指令外,可以编程实现长时间定时功能,下面举

978-7-111-53722-9-Chapter03-39.jpg

图3-19 3s脉冲程序示例

三个例子。

【例3-2】2个TIM指令组合构成30min定时程序,如图3-20所示。本例旨在推导出采用多个定时器“接力”的方式,可以产生大于999.9s的任意定时效果。

978-7-111-53722-9-Chapter03-40.jpg

图3-2030 min定时程序示例1

当输入0.00为ON时,TIM0000定时15min产生输出,其常开触点T0闭合使TIM0001开始定时,再定时15min后,TIM0001输出,其常开触点T1闭合,输出继电器100.04导通。显然,输入0.00接通后,延时30min使100.04接通。

【例3-3】TIM与CNT指令组合构成30min定时程序,如图3-21所示。本例旨在推导出采用“TIM+CNT”模式构成大于999.9s的任意定时效果。

当开关0.00接通后,TIM0001每5s产生一个脉冲,于是CNT0002每隔5s计一个脉冲,总定时公式=(定时器设定时间+扫描周期)×计数器设定值。图3-21中定时器TIM0001的设定时间为5s,计数器CNT0002的计数设定值为360次,扫描周期可忽略不计,因此总定时1800s,即0.00为ON 30min后,100.01输出。由于CNT0002具有保持当前值的特性,所以必须将复位端0.01导通才能复位CNT0002,实现重复计时。

【例3-4】时钟脉冲与CNT指令组合构成30min定时程序,如图3-22所示。本例旨在推导出采用“时钟脉冲+CNT”模式构成大于999.9s的任意定时效果,而且这种定时器能够保持定时的当前值。

978-7-111-53722-9-Chapter03-41.jpg

图3-2130 min定时程序示例2

978-7-111-53722-9-Chapter03-42.jpg

图3-2230 min定时程序示例3

只要PLC一运行,时钟脉冲P_1s就会连续发出周期1s、高低电平比是1∶1的脉冲。接通启动开关0.00后,P_1s的上升沿使CNT0001计一个脉冲,间隔为1s,总定时公式=时钟脉冲周期×计数器设定值。图3-22中选取1s的时钟脉冲,计数器CNT0001的计数设定值为1800次,则总定时约为1800s,即0.00为ON 30min后,100.02输出。由于CNT0001具有保持当前值的特性,所以必须将复位端0.01接通一次才能复位CNT0001,实现重复计时。A200.11是上电第一周期置位标志,它的作用是将计数器CNT0001上电初始复位。

若定时过程中断电,这种由“时钟脉冲+CNT”的定时器可以保持当前值,这是例3-2长时间定时器所无法实现的。

3.扩展计数程序(www.xing528.com)

【例3-5】计数值为40000次的扩展计数器,如图3-23所示。本例旨在推导出采用多个计数器“接力”的方式,可以产生大于9999次的任意计数效果。

978-7-111-53722-9-Chapter03-43.jpg

图3-23 40000次扩展计数示例

输入0.00是脉冲信号,CNT0001每次计数到200,就使CNT0002计数一次,当CNT0002计数到200次时,CNT0001已经计数200×200次,即40000次使100.06产生输出。

4.循环定时程序

【例3-6】双稳态程序,如图3-24所示。

978-7-111-53722-9-Chapter03-44.jpg

图3-24 双稳态循环定时程序示例

双稳态程序可以实现任意占空比的循环连续输出。从图3-24中100.00的时序可以看出循环周期为3s,为实现循环将设定值为3s的定时器TIM0002的常闭触点T2串在TIM0001与TIM0002的输入条件中,当TIM0002到时输出,到时标志T2为ON,在下一个扫描周期T2的常闭触点断开,使TIM0001与TIM0002同时复位。由于TIM0002复位,则在下一个扫描周期T2的常闭触点断开又恢复导通,从而使TIM0001与TIM0002的执行条件又同时满足,于是二者又开始新一次周期的定时。分析扫描过程可以发现TIM0001与TIM0002仅复位了一个扫描周期。

本例旨在推导出循环定时的一般编程范式,即将循环周期的最终定时器的常闭触点串在本周期内各个定时器和自己的执行条件上,以便实现本周期到时将所有定时器复位一个扫描周期后重新开始新一个周期,特别适合于循环定时控制的场合,如交通信号灯控制等。

5.定时器+“启保停”电路程序

【例3-7】延时断开程序,如图3-25所示。

978-7-111-53722-9-Chapter03-45.jpg

图3-25 延时断开程序示例

从时序图可以分析出输入0.00是100.03的置位信号,而TIM0000的到时标志T0是100.03的复位信号,因此100.03采用自锁电路的形式,当0.00为OFF且100.03为ON时,TIM0000的执行条件满足开始定时。

定时器与“启保停”电路配合的另一种用法见例3-8。

【例3-8】单稳态程序,如图3-26所示。

输入0.00接通时,工作位W20.00为ON并由其常开触点自锁,同时使TIM0000开始定时4s,100.02产生输出。当4s到时后,常闭触点T0断开,100.02复位。

978-7-111-53722-9-Chapter03-46.jpg

图3-26 单稳态程序示例

分析梯形图可以发现无论0.00导通时间的长短,100.02的输出时间都是固定的,由定时器设定,因此称为“单稳态电路”。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈