西门子PLC计数器用C 表示,主要用来累计输入脉冲的次数。它也是应用非常广泛的编程元件,经常用来对产品进行计数或进行特定功能的编程。使用时要提前输入它的设定值(计数的个数)。当输入条件满足时,计数器开始累计它的输入端脉冲电位上升沿(正跳变)的次数。当计数达到预定的设定值时,其触点动作,常开闭合,常闭断开。
计数器指令的梯形图指令符号为指令块形式,指令格式见图1所示。
图 1
梯形图指令符号中CU为增1计数脉冲输入端;CD为减1计数脉冲输入端;R为复位脉冲输入端;LD为减计数器的复位脉冲端。编程范围C0—C255。
1)增计数指令CTU
计数指令在CU端输入脉冲上升沿,计数器的当前值增1计数。当前值大于或等于预设值(PV)时,计数器状态置1,其触点动作。当前值累加的最大值为32767。复位输入R有效时,计数器状态复位(置0),当前值清零,其触点恢复常态。例图见图2。
图 2
在网络1中,I4.0接C1的CU端,输入达到C1预设值4次(PV为+4),C1状态为1,其触点改变状态。网络2设有C1常开触点,C1状态为1 时,常开触点闭合。输出继电器Q0.0状态为1。I3.0接C1复位输入端R,按下I3.0,C1状态复位(置0),当前值清零,其触点恢复常态,输出Q0.0断开为0。
2)减计数器指令CTD
复位输入(LD)有效时,计数器把预设值(PV)装入当前值存储器,计数器状态位复位(置0)。CD端每个输入脉冲上升沿,减数器的当前值从预设值开始递减计数,当前值等于0时,计数器状态位置1,停止计数。减计数指令程序见图3所示。减计数器在计数脉冲I4.0的上升沿减1计数,当前值从预设值开始减至0时,计数器输出状态位置1,QO.0通电(置1)。在复位脉冲I3.0时,计数器状态位置0(复位),当前值等于预设值,为下一次计数做准备。
图 3
网络1中,复位输入(LD)有效时,即按下I3.0,计数器才把预设值(PV为+3)装入存储器,计数器C20状态为0,网络2中C20触点为常态,Q0.0输出为0。计数器C20的CD端每一个正脉冲(每按一次I4.0),计数器当前值减1,预设值减为0时,计数器状态为1,其常开触点闭合,Q0.0输出为1。
应用实例一:用一个按钮控制一盏灯,按钮接I0.0,灯接Q0.0。当按钮按下3此灯为亮,再按下按钮2次灯为灭,如此重复。编写控制程序见图4。
图 4
这个程序中,使用了两个增计数器C0、C1。在网络1中,C0计数设置为3,CU端接输入I0.0(只一个按钮),复位端R接输出Q0.0常开触点;在网络2中,C1计数设置为2,CU端也接输入I0.0(同一个按钮),复位端R接输出Q0.0常闭触点;在网络3中,C0常开触点和C1常闭触点串联控制输出Q0.0,Q0.0常开触点自锁。
I0.0按下3次,计数器C0状态为1,其常开触点闭合,Q0.0输出为1,灯亮(网络3中)。同时Q0.0触点改变状态:在网络1中Q0.0闭合,C0复位(为下一次起动计数做准备);在网络2中Q0.0常闭触点断开,解除C1复位(为停止做准备)。在网络3中Q0.0闭合,自锁,使灯长时间亮。
灯亮过后,I0.0在按2次,达到了C1计数设定值,计数器C1状态为1,其触点改变状态。在网络3中C1常闭触点断开,输出继电器Q0.0状态为0,输出断电,灯灭。同时其触点也改变状态(恢复常态):网络1中接C1复位端的Q0.0触点断开,接触C0的复位;网络2中C1复位端Q0.0Q触点闭合,使C1复位计数器C1状态为0;网络3中Q0.0触点断开,解除自锁。
在C1计数器复位置0时,在网络3中的C1常闭触点也恢复为常态(闭合),为下次重复工作做准备。
实例二:异步电动机正反转电路,为了测试安装质量,需先点动三次,没问题在正转5秒、反转3秒,按停止按钮停止。
I/O端子分配:启动按钮接I0.0,停止按钮接I0.1;输出继电器Q0.0接正转接触器KM1,Q0.1接反转接触器KM2。(先不考虑热保护)。梯形图见图5。
图 5
大家试着分析一下其控制原理、动作过程。谢谢大家!