S7-200 SMART提供了 256个计数器,编号为C0-C255,共有3种计数器,分别为加计数器、减计数器和加/减计数器,不同类型的计数器不能共用同一个计数器号。
加计数器(CTU, Counter Up)指令的梯形图如图3-72a所示,由加计数器助记符CTU、 计数脉冲输入端CU、复位信号输入端R、设定值PV和计数器编号Cn构成,编号范围为0〜255。加计数器指令的语句表如图3-72b所示,由加计数器操作码CTU、计数器编号Cn和设定值PV构成。
【例3-8】加计数器的应用(如图3-73所示)。
加计数器的复位信号I0.1接通时,计数器C0的当 前值SV=0,计数器不工作。当复位信号I0.1断开时, 计数器C0可以工作。每当一个计数脉冲的上升沿到来时(I0.0接通一次),计数器的当前值SV=SV+1。当SV等于设定值PV时,计数器的输出位变为ON,线圈Q0.0中有信号流流过。若计数脉冲仍然继续,计数器的当前值仍不断累加,直到SV=32767 (最大)时,才停止计数。只要SV≥PV,计数器的常开触点接通,常闭触点则断开。直到复位信号I0.1接通时,计数器的SV复位清零,计数器停止工作,其常开触点断开,线圈Q0.0没有信号流流过。
可以用系统块设置有断电保持功能的计数器的范围。断电后又上电,有断电保持计数器保持断电时的当前值不变。
【例3-9】减计数器的应用(如图3-75所示)。
减计数器的装载输入端信号10.1接通时,计数器C0的设定值PV被装入计数器的当前 值寄存器,此时SV=PV,计数器不工作。当装载输入信号端信号10.1断开时,计数器C0可以工作。每当一个计数脉冲到来时(即I0.0接通一次),计数器的当前值SV=SV-1。 当 SV=0时,计数器的位变为ON,线圈Q0.0有信号流流过。若计数脉冲仍然继续,计数器的 当前值仍保持0。这种状态一直保持到装载输入端信号I0.1接通,再一次装入PV值之后, 计数器的常开触点复位断开,线圈Q0.0没有信号流流过,计数器才能再次重新开始计数。 只有在当前值SV=0时,减计数的常开触点接通,线圈Q0.0有信号流流过。
加减计数器(Counter Up/Down, CTUD)指令的梯形图如图3-76a所示,由加减计数器 助记符CTUD、加计数脉冲输入端CU、减计数脉冲输入端CD、复位端R、设定值PV和计数器编号Cn构成,编号范围为0〜255。加减计数器指令的语句表如图3-76b所示,由加减计数器操作码CTUD、计数器编号Cn和设定值PV构成。
【例3-10】加减计数器的应用(如图3-77所示)。
计数器的复位信号I0.2接通时,计数器CO 的当前值SV=0,计数器不工作。当复位信号断开时,计数器CO可以工作。
每当一个加计数脉冲到来时,计数器的当前值SV=SV+1。当SV≥PV时,计数器的常开触点接通,线圈Q0.0有信号流流过。这时若再来加计数器脉冲,计数器的当前值仍不断地累加,直到SV=+32767(最大值),如果再有加计数脉冲到来,当前值变为-32768,再继续进行加计数。
每当一个减计数脉冲到来时,计数器的当前值sv=SV-1。当SV< PV时,计数器的常开触点复位断开,线圈Q0.0没有信号流流过。这时若再来减计数器脉冲,计数器的当前值仍不断地递减,直到SV=-32768(最小值),如果再有减计数脉冲到来,当前值变为+32767,再继续进行减计数。
复位信号I0.2接通时,计数器的SV复位清零,计数器停止工作,其常开触点复位断开,线圈Q0.0没有信号流流过。
知识点词条:计数器指令