![西门子S7-1200 PLC编程及应用教程(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/884/41309884/b_41309884.jpg)
1.10 定时器及计数器指令
1.10.1 定时器指令
S7-1200 PLC提供了4种类型的定时器,如表1-9所示。
表1-9 S7-1200 PLC的定时器
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/53_02.jpg?sign=1739045734-QyJXMYtItaCaLDCYOW5gcnG7XZEJcjtG-0-32434a4625cadd6ea49fc9230ffce0c7)
定时器的作用类似于继电器-接触器控制系统中的时间继电器,但种类和功能比时间继电器强大得多。在使用S7-1200的定时器时需要注意每一个定时器都使用一个存储在数据块中的结构来保存定时器数据,而S7-200、S7-300/400中的定时器不需要。在程序编辑器中放置定时器时即可分配该数据块,可以采用默认设置,也可以手动自行设置。在函数块中放置定时器指令后,可以选择多重背景数据块选项,各数据结构的定时器结构名称可以不同。
1.脉冲定时器
在梯形图中输入脉冲定时器指令时,打开右边的指令窗口,将“定时器操作”文件夹中的定时器指令拖放到梯形图中适当的位置。在出现的“调用选项”对话框中,可以修改将要生成的背景数据块的名称,或采用默认的名称,单击“确定”按钮,自动生成数据块。
脉冲定时器类似于数字电路中上升沿触发的单稳态电路,其应用如图1-56a所示,图1-56b为其工作时序图。在图1-56a中,“%DB1”表示定时器的背景数据块(此处只显示了绝对地址,因此背景数据块地址显示为“%DB1”,也可设置显示符号地址),TP表示脉冲定时器。脉冲定时器的工作原理如下。
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/54_01.jpg?sign=1739045734-sIzq4AOlR0udodHt1xwjKzglNAX8nEd7-0-85d173298ded90f9b9ca6871ea2bc5d3)
图1-56 脉冲定时器及其时序图
a)脉冲定时器 b)时序图
1)起动:当输入端IN从“0”变为“1”时,定时器起动,此时输出端Q也置为“1”,开始输出脉冲。到达PT(Preset Time)预置的时间时,输出端Q变为“0”状态(见图1-56b波形A、B、E)。IN输入的脉冲宽度可以小于Q端输出的脉冲宽度。在脉冲输出期间,即使IN输入发生了变化又出现上升沿(见波形B),也不影响脉冲的输出。到达预设值后,如果IN输入为“1”,则定时器停止定时且保持当前定时值。若IN输入为“0”,则定时器定时时间清零。
2)输出:在定时器定时过程中,输出端Q为“1”,定时器停止定时,不论是保持当前值还是清零当前值其输出皆为0。
3)复位:当图1-56a中的I0.1为“1”时,定时器复位线圈(RT)通电,定时器被复位。如果此时正在定时,且IN输入为“0”状态,将使已耗时间值清0,Q输出也变为0(见波形C)。如果此时正在定时,且IN输入为“1”状态,将使已耗时间值清0,Q输出保持为“1”状态(见波形D)。如果复位信号I0.1变为“0”状态时,如果IN输入为“1”状态,将重新开始定时(见波形E)。
图1-56a ET(Elapsed Time)为已耗时间值,即定时开始后经过的时间,它的数据类型为32位的Time,采用T#标识符,单位为ms,最大定时时间长达T#24D_20H_31M_23S_647MS(D、H、M、S、MS分别为日、小时、分、秒和毫秒),可以不给输出ET指定地址。
用1.11节中介绍的程序状态功能可以监控已耗时间值的变化情况,定时开始后,已耗时间值从0ms开始不断增大,达到P T预置的时间时,如果IN为“1”状态,则已耗时间值保持不变。如果IN为“0”状态,则已耗时间值变为0s。
定时器指令可以放在程序段的中间或结束处。IEC定时器没有编号,在使用对定时器复位的RT(Reset Time)指令时,可以用背景数据块的编号或符号名来指定需要复位的定时器。如果没有必要,不用对定时器使用RT指令。
打开定时器的背景数据块后(在项目树的“程序块”的系统块中双击打开其背景数据块),可以看到其结构含义如图1-57所示,其他定时器的背景数据块也是类似,不再赘述。
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/55_01.jpg?sign=1739045734-A1mJP3BWocDdeWE6HVFGHxl5Yaeo9YBM-0-fc03835714b26f3732e4443701c58238)
图1-57 定时器的背景数据块结构
【例1-1】按下起动按钮I0.0,电动机立即直接起动并运行,工作2h后自动停止。在运行过程中若发生故障(如过载),或按下停止按钮I0.1,电动机立即停止运行,如图1-58所示。
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/55_02.jpg?sign=1739045734-Q21Tk68wKQO1cyfdRY7JfmDJXgDZC7UV-0-ff5d9899b92dbd8b210bd6ad1e7efe98)
图1-58 电动机起动运行后自动停止程序——使用脉冲定时器
视频“脉冲定时器”可通过扫描二维码1-20播放
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/55_03.jpg?sign=1739045734-vf54QnYVzHsZcM0KPZPIfLMyRL08g7Wz-0-c37d44a10150f969c6bf5132aa59f66d)
二维码1-20
http://www.ad.siemens.com.cn/service/elearning/Course/505.html
2.接通延时定时器
接通延时定时器如图1-59a所示,图1-59b为其工作时序图。在图1-59a中,“%DB2”表示定时器的背景数据块,TON表示接通延时定时器。接通延时定时器的工作原理如下。
1)起动:接通延时定时器的使能输入端IN的输入电路由“0”变为“1”时开始定时。定时时间大于等于预置时间PT指定的设定值时,定时器停止计时且保持为预设值,即已耗时间值ET保持不变(见图1-59b的波形A),只要输入端IN为“1”,定时器就一直起作用。
2)输出:当定时时间到,且输入IN为“1”,此时输出Q变为“1”状态。
3)复位:IN输入端的电路断开时,定时器被复位,已耗时间值被清零,输出Q变为“0”状态。CPU第一次扫描时,定时器输出Q被清零。如果IN输入在未达到PT设定的时间变为“0”(见波形B),输出Q保持“0”状态不变。图1-59a中的I0.1为“1”状态时,定时器复位线圈RT通过(见波形C),定时器被复位,已耗时间值被清零,Q输出端变为“0”状态。I0.1变为“0”状态,如果IN输入为“1”状态,将开始重新定时(见波形D)。
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/56_01.jpg?sign=1739045734-Jg4NMgSwqZcdX4umM3LST6K6ucIwnlRu-0-042d5e977d16c6cece89b33af5377165)
图1-59 接通延时定时器及其时序图
a)接通延时定时器 b)时序图
【例1-2】使用接通延迟定时器实现【例1-1】中电动机的起停控制,如图1-60所示。
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/56_02.jpg?sign=1739045734-21hBU6o2HS39dUaRdWxbcs901urPej2X-0-df2121c1edff04c7167e8b29e22a2be1)
图1-60 电动机起动运行后自动停止程序——使用接通延时定时器
视频“接通延时定时器”可通过扫描二维码1-21播放
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/56_03.jpg?sign=1739045734-6MRV6lbeNjaIZ3KZYqTyupF0PqqJWWqp-0-b54a5c162d697e771942c406399b600e)
二维码1-21
http://www.ad.siemens.com.cn/service/elearning/Course/499.html
3.关断延时定时器
关断延时定时器如图1-61a所示,图1-61b为其工作时序图。在图1-61a中,TOF表示关断延时定时器。关断延时定时器的工作原理如下。
1)起动:关断延时定时器的IN输入由“0”变为“1”时,定时器尚未定时且当前定时值清零。当IN输入由“1”变为“0”时,定时器起动开始定时,已耗时间值从0逐渐增大。当定时器时间到达预设值时,定时器停止计时并保持当前值(见图1-61a波形A)。
2)输出:当IN输入从“0”变为“1”时,输出Q变为“1”状态,如果IN输入又变为“0”,则输出继续保持“1”,直到到达预设的时间。如果已耗时间未达到P T设定的值时,IN输入又变为“1”状态,输出Q将保持1状态(见波形B)。
3)复位:当I0.1为“1”时,定时器复位线圈RT通电。如果IN输入为“0”状态,则定时器被复位,已耗时间值被清0,输出Q变为“0”状态(见波形C)。如果复位时IN输入为“1”状态,则复位信号不起使用(见波形D)。
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/57_01.jpg?sign=1739045734-JCU9P3sChCit18TM3FIeauSxBUxRspAT-0-ad82b3c739619bd4f1e8179970c48a71)
图1-61 关断延时定时器及其时序图
a)关断延时定时器 b)时序图
【例1-3】使用关断延迟定时器实现电动机停止后其冷却风扇延时2min后停止,如图1-62所示。
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/57_02.jpg?sign=1739045734-cAa9a3d16z9w2tx6veh7Jy9T594O6h9S-0-39530386cecb926e03b8dc86634f49c5)
图1-62 冷却风扇延时停止程序
视频“关断延时定时器”可通过扫描二维码1-22播放
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/57_03.jpg?sign=1739045734-mi2ox7PUhyiCFrH9Lpg7NDYbjzTLLzkN-0-0dfe2978cc78662d9acaf83bb150d5e3)
二维码1-22
http://www.ad.siemens.com.cn/service/elearning/Course/503.html
4.保持型接通延时定时器
保持型接通延时定时器如图1-63a所示,图1-63b为其工作时序图。在图1-63a中,TONR表示保持型接通延时定时器。其工作原理如下。
1)起动:当定时器的IN输入从“0”到“1”时,定时器起动开始定时(见图1-63b波形A和B),当IN输入变为“0”时,定时器停止工作并保持当前计时值(累计值)。当定时器的IN输入又从“0”变为“1”时,定时器继续计时,当前值继续增加。如此重复,直到定时器当前值达到预设值时,定时器停止计时。
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/58_01.jpg?sign=1739045734-aZPCBWatCoa4m99aTAYbOdxffh8h9UTJ-0-75b9951b41470fb9deb63699f3cb0b87)
图1-63 保持型接通延时定时器及其时序图
a)保持型接通延时定时器 b)时序图
2)输出:当定时器计时时间到达预设值时,输出端Q变为“1”状态(见波形D)。
3)复位:当复位输入I0.1为“1”时(见波形C),TONR被复位,它的累计时间值变为0,同时输出Q变为“0”状态。
视频“保持型接通延时定时器”可通过扫描二维码1-23播放
![](https://epubservercos.yuewen.com/704901/21511157208181506/epubprivate/OEBPS/Images/58_02.jpg?sign=1739045734-IwPiTQdyssnvbGIopVI7QZlh8tGzN7dK-0-65514c6c55aa2d0c412c4435d9ca1fb1)
二维码1-23
http://www.ad.siemens.com.cn/service/elearning/Course/501.html