![S7-1200 PLC应用教程(第2版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/807/41309807/b_41309807.jpg)
3.2.2 计数器指令
1.计数器的数据类型
S7-1200有3种IEC计数器:加计数器(CTU)、减计数器(CTD)和加减计数器(CTUD)。它们属于软件计数器,其最大计数频率受到OB1的扫描周期的限制。如果需要频率更高的计数器,可以使用CPU内置的高速计数器。
IEC计数器指令是函数块,调用它们时,需要生成保存计数器数据的背景数据块。
CU(见图3-26)和CD分别是加计数输入和减计数输入,在CU或CD由0状态变为1状态时(信号的上升沿),当前计数器值CV被加1或减1。PV为预设计数值,Q为布尔输出,R为复位输入。CU、CD、R和Q均为Bool变量。
将指令列表的“计数器操作”文件夹中的CTU指令拖放到工作区,单击方框中CTU下面的3个问号(见图3-26的左图),再单击问号右边出现的按钮,用下拉式列表设置PV和CV的数据类型为Int。
PV和CV可以使用的数据类型见图3-26的右图。各变量均可以使用I(仅用于输入变量)、Q、M、D和L存储区,PV还可以使用常数。
![](https://epubservercos.yuewen.com/C499DC/21511156301514206/epubprivate/OEBPS/Images/80_04.jpg?sign=1739137842-uINkfpVvpGFOB25ve8EGVonKrWpJSPO6-0-32b3d3ad9f535e879789932316852c49)
图3-26 设置计数器的数据类型
2.加计数器
当接在R输入端的复位输入I1.1为FALSE(即0状态,见图3-27),接在CU输入端的加计数脉冲输入电路由断开变为接通时(即在CU信号的上升沿),当前计数器值CV加1,直到CV达到指定的数据类型的上限值。此后CU输入的状态变化不再起作用,CV的值不再增加。
CV大于等于预设计数值PV时,输出Q为1状态,反之为0状态。第一次执行指令时,CV被清零。各类计数器的复位输入R为1状态时,计数器被复位,输出Q变为0状态,CV被清零。图3-28是加计数器的波形图。
![](https://epubservercos.yuewen.com/C499DC/21511156301514206/epubprivate/OEBPS/Images/81_01.jpg?sign=1739137842-DXf97xOH8gDJdjTFC182MfMvyPRzGNox-0-1e29ac63d0ad27ff21ca175cac71fbcd)
图3-27 加计数器
![](https://epubservercos.yuewen.com/C499DC/21511156301514206/epubprivate/OEBPS/Images/81_02.jpg?sign=1739137842-qYJiAXZz0JPum3ZwFXddBTVL3OdpLSfG-0-3316a8458b04e4f8a131021fbba48ac1)
图3-28 加计数器的波形图
3.减计数器
图3-29中的减计数器的装载输入LD为1状态时,输出Q被复位为0,并把预设计数值PV的值装入CV。LD为1状态时,减计数输入CD不起作用。
LD为0状态时,在减计数输入CD的上升沿,当前计数器值CV减1,直到CV达到指定的数据类型的下限值。此后CD输入信号的状态变化不再起作用,CV的值不再减小。
当前计数器值CV小于等于0时,输出Q为1状态,反之Q为0状态。第一次执行指令时,CV被清零。图3-30是减计数器的波形图。
![](https://epubservercos.yuewen.com/C499DC/21511156301514206/epubprivate/OEBPS/Images/81_03.jpg?sign=1739137842-UaE0Hv22igvpjszo07EuMuYEVPvKqjt8-0-5e84c6b3adf644e98f589d7c6957039a)
图3-29 减计数器
![](https://epubservercos.yuewen.com/C499DC/21511156301514206/epubprivate/OEBPS/Images/81_04.jpg?sign=1739137842-3ISg8ihL7K9Ja7YHyHZjcMCMpLt5rSsu-0-6404ab2aca74d7d2ce10290722baf275)
图3-30 减计数器的波形图
4.加减计数器
在加减计数器的加计数输入CU的上升沿(见图3-31),当前计数器值CV加1,CV达到指定的数据类型的上限值时不再增加。在减计数输入CD的上升沿,CV减1,CV达到指定的数据类型的下限值时不再减小。
如果同时出现计数脉冲CU和CD的上升沿,CV保持不变。CV大于等于预设计数值PV时,输出QU为1,反之为0。CV小于等于0时,输出QD为1,反之为0。
装载输入LD为1状态时,预设值PV被装入当前计数器值CV,输出QU变为1状态,QD被复位为0状态。
复位输入R为1状态时,计数器被复位,CV被清零,输出QU变为0状态,QD变为1状态。R为1状态时,CU、CD和LD不再起作用。图3-32是加减计数器的波形图。
![](https://epubservercos.yuewen.com/C499DC/21511156301514206/epubprivate/OEBPS/Images/81_05.jpg?sign=1739137842-42rRwTtapOrKsaqyhwyUCVLYAkLjDM4j-0-4216ff2d4b671d011bc284f1249c2deb)
二维码3-5
视频“计数器的基本功能”可通过扫描二维码3-5播放。
![](https://epubservercos.yuewen.com/C499DC/21511156301514206/epubprivate/OEBPS/Images/82_01.jpg?sign=1739137842-WrVfQ40u3Et9LdLILrdiMTZJ9ZnpquYV-0-fa3520d4da4bdcc92b050a2798ffd1c3)
图3-31 加减计数器
![](https://epubservercos.yuewen.com/C499DC/21511156301514206/epubprivate/OEBPS/Images/82_02.jpg?sign=1739137842-X3ZsdePPCR70y0xAcqMaLz1wlWlIQ7u8-0-ee7c2c93f57dc317bcb306ef10498e2f)
图3-32 加减计数器的波形图