定时与计数指令主要用于定时与计数。本质上也是一种逻辑输出指令。只是,它是延时实现,或计数满后实现。所以,有的PLC,如三菱公司FX机,起用定时器、计数器就是用OUT指令,只是其操作数用定时器、计数器,并在使用它时,同时对定时值、计数值也作设定。
定时与计数指令使用的工作单元,为定时器与计数器。如TIM1,表示定时器1,既可把它看成标志位,又可把它看成是字(其内容与现值有关)。有的PLC对这两者的表示是分开的。
1.普通定时指令(TIM)
指令的助记符为
地址TIM定时器编号
设定值(即时数或地址)
在这指令之前,当然要对寄存R赋值,即写R,建立条件,或说连一个输入端。
指令在梯形图上的符号是方框或圆圈。如方框为
这里×××为指定定时器的编号及设定值。
普通定时指令的设定值的单位为0.1s,仅能区别100ms的精度。设定值、现值都用BCD码表达。最大设定值可达9999,即999.9s。有的PLC也可十六进制数,最大设定值可达65535。
图2-33为OMRONPLC使用定时器的梯形图。其程序为
图2-33 定时器使用
这里0001为定时器号,#150为定时设定值,单位为0.1s,故定时值为15s。0.02ON后延时15s,TIM0001常开触点ON。而一旦0.02OFF,则TIM0001立即OFF。
OMRONCJ1H机还有TIMX指令。其功能与TIM相同,只是它是按十六进制计时。其格式为
这里,N为定时器编号;
S为定时设定值,按十六进制计;
550是它的功能号。
提示:虽然这种PLC同时有TIM及TIMX指令,但在编程前要用编程软件,在PLC属性栏中,先作选择,而且,只能选用其中的一种。默认选定为TIM。其它带“X”的指令也都有此情况。
2.高速定时指令(TIMH)
与普通的定时指令无重大区别,只是它的计数单位为0.01s,而不是0.1s。有的高速计数器的单位为0.01s,可实现10ms级的计数。
TIMH不太常用,OMRON指定其为功能指令。指定其功能码为15,CJ1机为015。高速定时指令所用的定时器编号有限制,一般用前边的号(如000~014)。这些定时器可中断工作,可保证能区分较小的定时单位。
CJ1机还有高速定时指令TIMHH,它的定时值设定单位为毫秒。可知,它可处理毫秒级事件。这也是过去OMRONPLC所没有的。它的功能码为540。
此外,CJ1H机还有与TIMH、TIMHH对应的TIMHX、TIMHHX指令,所不同的也只是它们是按十六进制数计时,定时值设定范围可增大近6倍。
3.其它定时指令
(1)累计定时指令(TTIM):CV1000,C200α机开始有此指令,CJ1机也有此指令,用以累计计时。它是增计时,计时单位为0.1s。输入端ON时计时,OFF不计时,但不复位。再ON,再计,并累计计时,直到达到设定值,计时停止,并产生输出。计时器的复位用复位位ON。
CJ1机也还有与TTIM对应的TTIMX指令,所不同的也只是它是按十六进制数计时。
(2)8位计时指令(TIML):CV1000机开始有此指令,是普通定时指令的加长,设定值可达8位,即99999999。可计115天。(www.xing528.com)
CJ1机还有与TIML对应的TIMLX指令,所不同的也只是它是按十六进制数计时。最多可计49710天。
(3)多输出计时指令(MTIM):CV1000机开始有此指令,可产生8个输出。这8个输出相应于8个设定值。计时时,计时是增计数,现值不断增大,与某一设定值相比,大或等于后者时,即产生相应输出。这个定时指令,一个相当于多个,扩大了定时器的功能。
CJ1H机也还有与MTIM对应的MTIMX指令,也是用十六进制计时。
4.减计数指令(CNT)
它实现减计数。有两个输入端,一为计数端,另一为复位端。指令的梯形图格式为
它的工作情况是:复位端(R)的逻辑条件为ON,停止计数,现值复位为设定值。复位端OFF,允许计数。这种情况下,当计数端(C)的逻辑条件从OFF到ON时,在该扫描周期,计数器的现值减1。其它情况下,现值不变。当现值减为0时,产生输出,且现值保持为0。
CJ1H机还有CNTX指令,所不同的它用十六进制计数。所以,它的计数范围可扩大到65535。
5.可逆计数指令(CNTR)
它为功能指令,功能码为12,CJ1机为012。除了有复位端,还有两个计数端,一个为正计数端(U),一个为减计数端(D)。其梯形图格式为
其工作情况是,初始状态,或复位端ON时,现值为0,不计数。复位端OFF,允许计数。正端从OFF到ON,正计数,计数现值加1;负端从OFF到ON,减计数,计数现值减1。具体计数情况如图2-34所示。
图2-34 可逆计数示意图
计数增到设定值,再增计1个数,则现值变为0,且产生输出,计数完成标志位ON,如图2-35所示。
图2-35 计数增到设定值再增1计数
计数到现值为0,再减1个数,则现值变为设定值,也产生输出,计数完成标志位ON,如图2-36所示。
图2-36 计数减到0,再减1计数
CJ1H机还有CNTRX指令,与CNTR不同的是,它用十六进制,而不是用BCD码计数。所以,它的计数范围可扩大到65535。
6.复位定时器/计数指令(CNR、CNRX)
它用于成批复位定时器及计数器。CNR用于BCD数定时器、计数器,而CNRX则用于十六进制数定时器、计数器。它们的格式为
这里,N1为将成批复位的定时器、计数器的开始编号;
N2为将成批复位的定时器、计数器的结束编号;
545、547是本指令的功能码。
再次提示:OMRON公司的CJ1H等机型,虽然支持十六进制计数、定时的指令,但在一个程序中,不能与BCD码计数的计数、定时指令同时使用。到底用那种计时、定时指令,可用CX-Programmer软件(见后,本章第6节)设定。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。