首页 理论教育 实训十一:计数器指令的基本功能

实训十一:计数器指令的基本功能

时间:2023-06-20 理论教育 版权反馈
【摘要】:用格式C#表示计数器的设定值。计数器一般用来在计了预置值指定的脉冲数后,进行某种操作。图3-46 加计数器线圈指令图中标有CU的线圈为加计数器线圈。输入到OB1后下载到仿真PLC,验证计数器的功能。2)对同一个计数器同时使用加计数器线圈指令和减计数器线圈指令,设计一个加减计数器。

实训十一:计数器指令的基本功能

1.计数器的存储器

每个计数器有一个16位的字和一个二进制位,计数器的字用来存放它的当前计数值,计数器触点的状态由它的位的状态来决定。S7-300的计数器个数(128~2048个)与CPU的型号有关,S7-400 CPU有2048个计数器。

计数器字的0~11位是计数值的BCD码(见图3-42),计数值的范围为0~999。用格式C#表示计数器的设定值。

978-7-111-31641-1-Chapter03-56.jpg

图3-42 计数器字

梯形图中计数器有两种表示方法,即方框型的计数器和计数器线圈。

2.加计数器与减计数器

用“新建项目”向导生成一个名为“计数器”的项目(见随书光盘中的同名例程),CPU为CPU 312C。打开OB1,选择编程语言为梯形图。打开左边的指令列表窗口中的“计数器”文件夹,将其中的S_CU(加计数器)指令拖放到梯形图中。

图3-43和图3-44的计数器指令框中,S为计数器的设置输入端,PV为预置值输入端,CU和CD分别是加、减计数脉冲输入端,R为复位输入端;Q为计数器位输出端,CV端输出十六进制格式的当前计数值,CV_BCD端输出当前计数值的BCD码。

978-7-111-31641-1-Chapter03-57.jpg

图3-43 加计数器

978-7-111-31641-1-Chapter03-58.jpg

图3-44 减计数器

CU、CD、S、R、Q均为BOOL(位)变量,PV、CV和CV_BCD均为WORD(字)变量。各变量均可以使用I、Q、M、L、D存储区,PV还可以使用计数器常数C#。

在“设置”输入信号S的上升沿,将PV端指定的预置值送入计数器字。在加计数脉冲CU的上升沿,如果计数值小于999,加计数器的计数值加1。在减计数脉冲CD的上升沿,如果计数值大于0,减计数器的计数值减1。

复位输入信号R为1状态时,计数器被复位,计数器位变为0状态,计数值被清零。

计数值大于0时,计数器的输出Q为1状态;计数值为0时,Q为0状态。

3.加计数器的仿真实验

1)将图3-43~图3-45中的计数器电路输入到OB1中,将OB1下载到仿真PLC,将仿真PLC切换到RUN或RUN-P模式。

2)打开OB1,单击工具栏上的按钮978-7-111-31641-1-Chapter03-59.jpg,起动程序状态监控功能。

3)单击PLCSIM中加计数脉冲I0.0对应的小方框,方框中出现“√”,CV和CV_BCD输出端的计数值加1后变为1,指令框变为绿色,Q4.0的线圈通电,表示C0的计数器位为1状态。再单击一次该方框,“√”消失,I0.0变为0状态,计数值不变。多次单击I0.0对应的小方框,在I0.0由0状态变为1状态的上升沿,C0的当前值加1。

4)用“设置”输入S设置计数器时,如果加计数输入信号CU为1状态,即使CU没有变化,下一扫描周期也会加计数。

分别令加计数输入I0.0为0状态和1状态,单击两次S(设置)输入I0.1对应的小方框,观察在I0.1的上升沿,CV和CV_BCD输出端的值。

5)在计数器字的值非零时,令复位输入信号I0.2为1状态,观察复位的效果,计数器值是否变为0,Q4.0的线圈是否断电。

4.减计数器的仿真实验

加、减计数器的仿真实验过程基本上相同,做实验时需要注意在减计数信号CD的上升沿,计数器值是否减1。减至0时Q输出端是否变为0状态,Q4.1的线圈断电。(www.xing528.com)

用“设置”输入S设置计数器时,如果减计数输入信号CD为1状态,即使CD没有变化,下一扫描周期也会减计数。

分别令减计数输入I0.3为0状态和1状态,单击两次S(设置)输入I0.4对应的小方框,观察在I0.4的上升沿,CV和CV_BCD输出端的值。

计数器一般用来在计了预置值指定的脉冲数后,进行某种操作。为了实现这一要求,最简单的方法是首先将预置值送入减计数器,计数值减为0时,其常闭触点闭合,用它来完成要做的工作。如果使用加计数器,则需要增加一条比较指令来判断计数值是否等于预置值。

5.加减计数器的仿真练习

图3-45中的加减计数器(S_CUD)的CU和CD分别是加、减计数输入端。按下面的步骤进行实验:

978-7-111-31641-1-Chapter03-60.jpg

图3-45 加减计数器

1)观察在I0.6和I0.7的上升沿,计数值是否分别被加、减1。

2)观察在S(设置)输入I1.0的上升沿,是否能将PV的设定值送给计数器。

3)观察计数值大于0和等于0时输出信号Q的状态。

4)复位输入I1.1为1时,观察计数值和位输出Q的变化。

6.加计数器线圈指令的仿真练习

图3-46是用计数器线圈指令设计的加计数器。“设置计数值”线圈SC用来设置计数值,图中I1.2的常开触点由断开变为接通时,预置值3被送入C3的计数器字。

978-7-111-31641-1-Chapter03-61.jpg

图3-46 加计数器线圈指令

图中标有CU的线圈为加计数器线圈。在I1.3的上升沿,如果计数值小于999,计数值加1。复位输入I1.4为1时,计数器被复位,计数器位和计数值被清零。

图3-46和图3-43中的加计数器的仿真实验过程和仿真的结果相同。

7.计数器线圈指令的仿真练习

1)仿照图3-46,用减计数器线圈指令(线圈中的符号为CD)设计一个减计数器。输入到OB1后下载到仿真PLC,验证计数器的功能。

2)对同一个计数器同时使用加计数器线圈指令和减计数器线圈指令,设计一个加减计数器。输入到OB1后下载到仿真PLC,验证计数器的功能。

8.定时器与计数器的仿真练习

按下按钮I0.0后,Q0.0变为1状态并自保持(见图3-47),I0.1输入3个脉冲后(用C0计数),T0开始定时,5s后Q0.0变为0状态,同时C0被复位,用定时器指令和减计数器指令设计出梯形图程序。输入到OB1后下载到仿真PLC,检查是否能满足要求。

978-7-111-31641-1-Chapter03-62.jpg

图3-47 波形图

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

我要反馈