4.1.5 定时器指令
1.定时器指令常识
定时器指令是用于计时控制的指令。如第二章所述,S7-200系列PLC的定时器有三种,所以对应定时器的种类,其指令也有三种,如表4-3所示。
表4-3 定时器指令格式
注:指令盒上方“????”为定时器,左边“????”为定时器设定值。
定时器指令的梯形图格式为指令盒形式,如图4-11所示。
图4-11 定时器指令的梯形图格式
IN—运行条件输入端,又称使能端;
1—定时器的计时设定值或存放设定值的地址,数据类型为INT(整数);
2—定时器的器件号(地址号);
3—定时器的种类。
定时值=设定值×分辨率(ms)。
各种定时器的分辨率、设定值范围、器件号如表4-4所示。
在使用定时器指令时,除考虑设定值、器件号外,还要考虑定时器的当前值,定时器指令实际由预置值寄存器、当前值寄存器、状态位等组成。当前值寄存器用于存储定时器开始计时后任一时刻的刷新次数。
表4-4 定时器的分辨率、设定值、器件号一览表
2.分辨率为100ms(0.1s)的定时器指令的使用
这一类指令在一般工程应用较多,下面分别举例说明其使用。
【例4-7】通电延时型定时器的使用示例,如图4-12所示。
其语句表如下:
图4-12 通电延时型定时器指令使用示例
工作原理说明:当I0.0接通时,Q0.0置1,同时T37开始计时。当定时器T37的当前值等于或大于设定值PT(100×100=10000ms=10s)时,定时器T37置1,其常开触点闭合,使Q0.1置1。当定时器T37的当前值等于设定值PT时,定时器的当前值继续增加,最大可达32767。
【例4-8】断电延时型定时器的使用示例,如图4-13所示。
其语句表如下:
图4-13 断电延时型定时器的使用示例
工作原理说明:当I0.0接通时,Q0.0置1,T37也置1,其常开触点使Q0.1置1。当按下停止按钮I0.1时,Q0.0先置0,T37断电延时,其常开触点延时断开,使Q0.1比Q0.0晚一个设定值的时间复位置0。
【例4-9】记忆型通电延时定时器的使用示例,如图4-14所示。
图4-14 记忆型通电延时型定时器的使用示例
其语句表如下:
工作原理说明:
当定时器T5的使能端有效(运行条件满足)时,定时器T5开始计时,运行一段时间后(例如4S),使能端断开,由于是记忆型通电延时定时器,定时器的当前值不变(为4S)。当运行条件再次满足时,使能端有效,继续计时,当达到设定值(100×100=10000ms=10S)时,定时器T5置1,其常开触点接通Q0.0。当I0.1有效时,产生一个停止脉冲,使T5复位,Q0.0置0。
3.定时器的刷新方式及其对编程运行的影响
各种定时单位的刷新如下:
(1)1ms级定时器的当前值刷新为每隔1ms刷新一次,定时器的刷新与扫描周期和程序的运行无关。若扫描周期较长,就可能出现一个周期内定时器多次被刷新,定时器的当前值多次被改变的情况。
(2)10ms级定时器在每个扫描周期开始刷新。每个扫描周期内,定时器的当前值不变。如果定时器的输出与复位操作时间间隔很短,就可能影响程序的运行或达不到程序的设计目的,如图4-13所示。
(3)100ms级定时器在定时器指令执行时被刷新,其结果可以被下一条指令使用。但是,如果该定时器的指令不是每个扫描周期都执行(如跳转指令有效时),定时器的当前值就不能被及时刷新,可能导致错误结果。
下面以通电延时定时器为例来分析1ms级定时器、10ms级定时器的刷新方式对运行的影响。
在图4-15中,使用定时器本身的常闭触点作自激励输入,希望经过延时产生一个机器扫描周期的时钟脉冲。定时器置1时,依靠本身的常闭触点(激励输入)的断开使定时器复位,重新开始设定时间,实现循环工作。采用不同定时单位的定时器时,会有不同的运行结果。
具体分析如下:
(1)T32为1ms级的定时器,每隔1ms定时器刷新一次,CPU当前值若恰好在处理常闭触点和常开触点之间被刷新,Q0.0可以接通一个扫描周期,但这种情况出现的几率很小,在一般情况下,不会正好在这时刷新。若在执行其他指令时,定时时间到,1ms的定时刷新,使定时器输出状态置位,常闭触点断开,当前值复位,定时器输出状态位立即复位,所以输出线圈Q0.0一般不会通电。
图4-15 定时器自激励输入
图4-16 非自激励输入
(2)若将图4-15中定时器T32改成T33,定时单位变为10ms,当前值在每个扫周期开始刷新,计时时间到时,扫描周期开始时,输出状态位置位,常闭触点断开,立即将定时器当前值清零,定时器输出状态位复位为0。这样输出线圈Q0.0永远不可能接通。
(3)若将图4-15中定时器T33改成T37,定时单位变为100ms,当前值在指令执行时刷新,Q0.0在T37计时时间到时准确地接通一个扫描周期,可以输出一个OFF时间为定时时间、ON时间为一个扫描周期的时钟脉冲。
所以,用定时器本身触点激励输入的定时器,定时单位为1ms和10ms时难以可靠地工作。一般不宜使用本身触点作为激励输入。若将图4-15改成图4-16,无论何种计时单位都能正常工作。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。