首页 理论教育 C语言实现的计数器优化

C语言实现的计数器优化

时间:2023-06-30 理论教育 版权反馈
【摘要】:当X013触点闭合时,RST指令对C200计数器进行复位,其状态变为OFF,当前计数值也变为0。C200计数器复位后,将X013触点断开,X014触点每闭合断开一次,C200计数器的计数值就加1或减1。

C语言实现的计数器优化

计数器是一种具有计数功能的继电器,它可以有无数个常开触点和常闭触点。计数器可分为加计数器和加/减双向计数器。计数器表示符号为C,编号按十进制方式,计数器可分为普通型计数器和停电保持型计数器。

三菱FX系列PLC支持的计数器如下:

978-7-111-49298-6-Chapter02-34.jpg

(续)

978-7-111-49298-6-Chapter02-35.jpg

1.加计数器的使用

加计数器的使用如图2-26所示,C0是一个普通型的16位加计数器。当X010触点闭合时,RST指令将C0计数器复位(状态值变为OFF,当前计数值变为0),X010触点断开后,X011触点每闭合断开一次(产生一个脉冲),计数器C0的当前计数值就递增1,X011触点第10次闭合时,C0计数器的当前计数值达到设定计数值10,其状态值马上变为ON,C0常开触点闭合,Y000线圈得电。当计数器的计数值达到设定值后,即使再输入脉冲,其状态值和当前计数值都保持不变,直到用RST指令将计数器复位。

停电保持型计数器的使用方法与普通型计数器基本相似,两者的区别主要在于:普通型计数器在PLC停电时状态值和当前计数值会被复位,上电后重新开始计数,而停电保持型计数器在PLC停电时会保持停电前的状态值和计数值,上电后会在先前保持的计数值基础上继续计数。

978-7-111-49298-6-Chapter02-36.jpg

图2-26 加计数器的使用说明

2.加/减计数器的使用

三菱FX系列PLC的C200~C234为加/减计数器,这些计数器既可以加计数,也可以减计数,进行何种计数方式分别受特殊辅助继电器M8200~M8234控制,即C200计数器的计数方式受M8200辅助继电器控制,M8200=1(M8200状态为ON)时,C200计数器进行减计数,M8200=0时,C200计数器进行加计数。

加/减计数器在计数值达到设定值后,如果仍有脉冲输入,其计数值会继续增加或减少,在加计数达到最大值2147483647时,再来一个脉冲,计数值会变为最小值-2147483648,在减计数达到最小值-2147483648时,再来一个脉冲,计数值会变为最大值2147483647,所以加/减计数器是环形计数器。在计数时,不管加/减计数器进行的是加计数或是减计数,只要其当前计数值小于设定计数值,计数器的状态就为OFF,若当前计数值大于或等于设定计数值,计数器的状态为ON。(www.xing528.com)

加/减计数器的使用如图2-27所示。

978-7-111-49298-6-Chapter02-37.jpg

图2-2 加/减计数器的使用说明

当X012触点闭合时,M8200继电器状态为ON,C200计数器工作方式为减计数,X012触点断开时,M8200继电器状态为OFF,C200计数器工作方式为加计数。当X013触点闭合时,RST指令对C200计数器进行复位,其状态变为OFF,当前计数值也变为0。

C200计数器复位后,将X013触点断开,X014触点每闭合断开一次(产生一个脉冲),C200计数器的计数值就加1或减1。在进行加计数时,当C200计数器的当前计数值达到设定值(图中-6增到-5)时,其状态变为ON;在进行减计数时,当C200计数器的当前计数值减到小于设定值(图中-5减到-6)时,其状态变为OFF。

3.计数值的设定方式

计数器的计数值可以直接用常数设定(直接设定),也可以将数据寄存器中的数值设为计数值(间接设定)。计数器的计数值设定如图2-28所示。

978-7-111-49298-6-Chapter02-38.jpg

图2-28 计数器的计数值设定

16位计数器的计数值设定如图2-28a所示,C0计数器的计数值采用直接设定方式,直接将常数6设为计数值,C1计数器的计数值采用间接设定方式,先用MOV指令将常数10传送到数据寄存器D5中,然后将D5中的值指定为计数值。

32位计数器的计数值设定如图2-28b所示,C200计数器的计数值采用直接设定方式,直接将常数43210设为计数值,C201计数器的计数值采用间接设定方式,由于计数值为32位,故需要先用DMOV指令(32位数据传送指令)将常数68000传送到2个16位数据寄存器D6、D5中,然后将D6、D5中的值指定为计数值,在编程时只需输入低编号数据寄存器,相邻高编号数据寄存器会自动占用。

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

我要反馈