首页 理论教育 C语言教程:如何使用计数器控制装置?

C语言教程:如何使用计数器控制装置?

时间:2023-06-23 理论教育 版权反馈
【摘要】:计数当前值等于设定值5时,计数器C0的触点动作。当复位输入X001为ON时,计数器C0的当前值被复位为0,其触点状态也被复位。复位输入X021为OFF时,计数输入X022每接通一次,计数器C210计一次数。当计数器的当前值由-3减少到-4时,C210触点置0。也有的计数器,当计数器线圈被驱动后,还需启动输入为“ON”时,才对计数输入计数。

C语言教程:如何使用计数器控制装置?

PLC的计数器是按十进制编号分配的,属于字元件,计数器可用常数K作为设定值,也可用数据寄存器(D)的内容作为设定值。计数器拥有无数对常开/常闭触点供用户编程时使用,当计数器的线圈被驱动时,计数器以增或减计数方式计数,当计数值达到设定值时,计数器触点动作。按信号频率分为内部计数器和高速计数器。

978-7-111-46259-0-Chapter02-37.jpg

图2-26 作辅助继电器用参考程序

978-7-111-46259-0-Chapter02-38.jpg

图2-27 停电保持型复位程序

(1)内部信号计数器

内部信号计数器是对PLC的软元件X、Y、M、S、T、C等的触点周期性动作进行计数。比如:X000由OFF→ON变化时,计数器计一次数,当X000再由OFF→ON变化一次时,计数器再计一次数。X0的ON和OFF持续时间必须比PLC的扫描时间要长。计数输入信号的频率一般小于10Hz。计数器有16位和32位计数器,16位和32位计数器的性能比较见表2-10。

表2-10 16位计数器和32位计数器的性能

978-7-111-46259-0-Chapter02-39.jpg

1)16位增计数器的工作过程及工作原理:图2-28所示为16位普通型计数器C0的程序及时序图,当复位输入X001为OFF时,计数输入X002每接通一次,C0计数器计数一次,即当前计数值增加1。计数当前值等于设定值5时,计数器C0的触点动作(常开触点闭合/常闭触点断开)。此时即使仍然有计数输入,计数器的当前值也不改变。当复位输入X001为ON时,计数器C0的当前值被复位为0,其触点状态也被复位。

978-7-111-46259-0-Chapter02-40.jpg

图2-28 16位普通型计数器C0的程序及时序图

16位增计数器在计数过程中,切断电源时,普通型计数器的计数当前值被清除,计数器触点状态复位;而停电保持型计数器的计数当前值、触点状态被保持。若PLC再通电,停电保持型计数器的计数值从停电前计数值开始继续计数,触点为停电前状态,直到计数当前值等于设定值。

当复位输入X001为ON时,计数器不能计数或者计数器当前值清零,触点状态复位。

2)32位增/减计数器:32位增/减计数器在计数过程中,当前值在-2147483648~+2147483647间循环变化。即从-2147483648变化到+2147483647,然后再从+2147483647变化到-2147483648。当计数器的当前值等于设定值时,计数器的触点动作,但计数器仍在计数,计数器的当前值仍在变化,直到执行了复位指令时,计数器的当前值才为0。换句话说,计数器当前值的增/减与其触点的动作无关。

32位增/减计数器由特殊辅助继电器M8200~M8234设定对应计数器C200~C234的计数方式是增计数方式还是减计数方式。

若M82□□为ON状态,则C2□□以减计数方式计数。如M8200为ON,则C200为减计数。

若M82□□为OFF状态,则C2□□以增计数方式计数。如M8230为OFF,则C230为增计数。

32位增/减计数器计数过程中,当切断电源时,普通型计数器的计数当前值被清除,计数器触点状态复位;而停电保持型计数器的计数当前值和触点状态被保持。若PLC再通电,停电保持型计数器的计数值从停电前的计数值继续计数,触点状态为停电前状态。

例:32位增/减计数器C210的工作过程。

图2-29所示为32位普通型增/减计数器C210的程序及时序图。

复位输入X021为OFF时,计数输入X022每接通一次,计数器C210计一次数。

当X020为OFF,即M8210为“OFF”时,C210以增计数方式计数,C210每计数一次,当前值加1。当计数器的当前值由-4增加到-3时,C210触点接通(置1)。

当X020为ON,即M8210为“ON”时,C210为减计数方式,C210每计数一次,当前值减1。当计数器的当前值由-3减少到-4时,C210触点置0(假设C210触点原来为“1”状态)。

复位输入X021为ON时,计数器被复位,当前值为0,计数器触点也复位。

978-7-111-46259-0-Chapter02-41.jpg

图2-29 32位普通型增/减计数器C210的程序及时序图

3)计数器的设定值设定方法如图2-30和图2-31所示。

978-7-111-46259-0-Chapter02-42.jpg

图2-30 直接设定计数器的设定值参考程序

978-7-111-46259-0-Chapter02-43.jpg

图2-31 间接设定计数器的设定值参考程序

4)计数器的使用注意事项:在使用计数器时一定要注意计数器的16位和32位区别,如图2-32所示。

978-7-111-46259-0-Chapter02-44.jpg

图2-32 计数器使用注意事项

(2)高速计数器

高速计数器是32位停电保持型增/减计数器,它可以对频率高于10Hz计数输入信号进行计数。它对特定输入端子(输入继电器X000~X007)的OFF→ON的动作进行计数(因为高速脉冲信号只能接入X000~X007端)。它采用中断方式进行计数处理,不受PLC扫描周期的影响。其计数范围为-2147483648~+2147483647(十进制常数),地址编号是C235~C255,最高响应频率为60kHz。

高速计数器可由程序实现复位或计数开始;也可由中断输入来实现中断复位或复位输入端子复位。特定输入端子X000~X007不能重复使用,即当某个输入端子被计数器使用后,其他计数器或输入不能再使用该输入端子。高速计数器的特定输入端子号与高速计数器的地址编号分配见表2-11,从表中可看出,计数器的地址号选定后,带有启动或复位的中断输入也相应被指定。(www.xing528.com)

978-7-111-46259-0-Chapter02-45.jpg

图2-33 单相单计数输入高速计数器信号输入形式

1)单相单计数输入高速计数器C235~C245:单相单计数输入高速计数器计数的增/减方式由M8235~M8245的状态决定。其信号输入形式如图2-33所示。若M82□□为OFF状态,则C2□□以增计数方式计数。该计数器线圈被驱动后,只对一路计数信号计数。也有的计数器(如C244),当计数器线圈被驱动后,还需启动输入(X006)为“ON”时,才对计数输入计数。单相单计数输入高速计数器C244的工作过程示例如图2-34所示。

表2-11 高速计数器的特定输入端子号与地址编号的分配

978-7-111-46259-0-Chapter02-46.jpg

注:U:加计数器输入;D:减计数输入;R:复位输入;S:启动输入;A:A相输入;B:B相输入。

978-7-111-46259-0-Chapter02-47.jpg

图2-34 单相单计数输入高速计数器C244的工作过程

2)单相双计数输入高速计数器C246~C250:单相双计数输入高速计数器的计数增/减方式是根据计数输入端子不同,自动进行增/减计数。利用M8246~M8250特殊辅助继电器对计数器C246~C250的增/减计数方向进行监视,其信号输入形式如图2-35所示。单相双计数输入高速计数器C249的工作过程,如图2-36所示,当X011接通时,若输入X006接通,则C249立即开始计数,当计数输入为X000时,计数器做增计数,当计数输入为X001时,计数器做减计数。X010为ON时,计数器复位(程序复位)。如果X002闭合,计数器立即复位(与程序无关的复位)。

978-7-111-46259-0-Chapter02-48.jpg

图2-35 单相双计数输入高速计数器信号输入形式

3)双相双计数输入高速计数器C251~C255:双相双计数输入高速计数器有A、B两个计数输入(它们在相位上相差90°)。其信号输入形式如图2-37所示,通常高速计数器是1倍频计数(图2-37a),但是程序中若驱动了M8198或M8199,则以4倍频计数(图2-37b)。计数方向见表2-12,可利用M8251~M8255特殊辅助继电器对计数器C251~C255进行增/减计数方向监视。由此可见,双相双计数输入高速计数器的计数由两路计数输入信号控制完成。也有的计数器(如C254),当计数器线圈被驱动后,还需启动输入(如X006)为“ON”时,才对计数输入计数。

978-7-111-46259-0-Chapter02-49.jpg

图2-36 单相双计数输入高速计数器C249的使用

978-7-111-46259-0-Chapter02-50.jpg

图2-37 双相双计数输入高速计数器信号输入形式

表2-12 双相双计数输入高速计数器计数方向

978-7-111-46259-0-Chapter02-51.jpg

双相双计数输入高速计数器C251和C254的工作过程,分别如图2-38和图2-39所示。

978-7-111-46259-0-Chapter02-52.jpg

图2-38 双相双计数输入高速计数器C251的工作过程

(3)使用高速计数器的注意下列事项

1)输入端子的使用问题:输入X0~X7可以用于高速计数器、输入中断、脉冲捕捉以及SPD、DSZR、DVIT、ZRN指令和通用输入,但是不能重复使用输入端子。

如使用C251时,由于X0和X1均被占用,所以计数器(C235、C236、C241、C244、C246、C247、C249、C251、C252、C254)、输入中断(I00□、I01□)、脉冲捕捉用触点(M8170、M8171)和适用输入的SPD指令都不能使用。

2)有关值的问题:高速计数器线圈驱动用的触点,在使用时要一直保持为ON。

978-7-111-46259-0-Chapter02-53.jpg

图2-39 双相双计数输入高速计数器C254的工作过程

所有的高速成计数器在当前值等于设定值的时候,即使执行指令时,只要没有计数输入脉冲,输出的触点都不会动作。

在主程序中通过高速计数器的输出线圈(OUT C□□□)的ON/OFF,可以使计数开始或停止。但是在步进梯形图内和子程序中、中断子程序内使用这种线圈编程时,执行步进梯形图和子程序前,都不可以执行计数或停止。

3)高速计数器响应速度的问题:高速计数器是停电保持型,其经过值和设定值都是32位,经过值及触点状态都会记忆停电之前的状态。作为高速计数器的输入信号,建议使用电子开关信号,如果是机械触点,由于振荡会产生计数误码差。高速计数器是对定的输入端子作中断处理进行计数,而与PLC的扫描周期无关。

计数器对可编程序控制器的内部信号X、Y、M、C、S等触点状态的动作进行循环扫描并计数。但作为计数器的输入信号,其接通的时间,必须比PLC的扫描时间长(通常数值在毫秒级以上)。对于比扫描周期短(通常在毫秒级以下)的计数器输入信号,必须要用高速计数器来计数,高速计数器对特定的输入作中断处理进行计数,而与扫描周期无关。

(4)有关响应频率范围的问题

高速计数器按照使用不同分为硬件计数器和软件计数器。硬件计数器就是硬件计数器,所以能与综合频率无关进行计数。

软件计数器:C235、C236、C246和C251在使用功能指令【FNC53(DHSCS)、FN(DHSCR)、FNC55(DHSZ)】,硬件计数功能被解除而转换成软件计数器;C237~C245,C247~C250,C252~C255都是软件计数器。

硬件计数器:C235、C236、C246和C251作硬件计数器时,C235、C236和C246最高响应频率为60kHz,C251为30kHz。

C237~C245,C247~C250最高响应频率为10kHz,C252~C255最高响应频率为5kHz。

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

我要反馈