计数器及比较指令精选PPT.ppt
计数器及比较指令2022/9/16第1页,此课件共21页哦一、计数器第2页,此课件共21页哦S7-200系列PLC有三类计数器:CTU-加计数器,CTUD-加/减计数器,CTD-减计数。STLLAD指令使用说明指令使用说明CTU Cxxx,PV(1)梯形图指令符号中:CU为加计数脉冲输入端;CD为减计数脉冲输入端;R为加计数复位端;LD为减计数复位端;PV为预置值。(2)Cxxx 为计数器的编号,范围为:C0C255(3)PV预置值最大范围:32767;PV的数据类型:INT;PV操作数为:VW,T,C,IW,QW,MW,SMW,AC,AIW,KCTD Cxxx,PV CTUD Cxxx,PV 第3页,此课件共21页哦加计数器指令(CTU)当R=0时,计数脉冲有效;当CU端有上升沿输入时,计数器当前值加1。当计数器当前值大于或等于设定值(PV)时,该计数器的状态位C-bit置1,即其常开触点闭合。计数器仍计数,但不影响计数器的状态位。直至计数达到最大值(32767)。当R=1时,计数器复位,即当前值清零,状态位C-bit也清零。加计数器计数范围:032767。CTU Cxxx,PV指令使用要点:指令使用要点:STL形式中 CU,R的顺序不能错;CU,R信号可为复杂逻辑关系。(C0C255)第4页,此课件共21页哦加计数指令应用示例LD I0.1LD I1.0CTD C4,3LD C4=Q0.012345第5页,此课件共21页哦减计数指令(CTD)当复位LD有效时,LD=1,计数器把设定值(PV)装入当前值存储器,计数器状态位复位(置0)。当LD=0,即计数脉冲有效时,开始计数,CD端每来一个输入脉冲上升沿,减计数的当前值从设定值开始递减计数,当前值等于0时,计数器状态位置位(置1),停止计数。CTD Cxxx,PV指令使用要点:指令使用要点:STL形式中 CU,LD的顺序不能错;CU,LD信号可为复杂逻辑关系。(C0C255)第6页,此课件共21页哦减计数指令应用示例LD I0.1LD I1.0CTD C4,3LD C4=Q0.0Q0.0Q0.0第7页,此课件共21页哦加/减计数指令(CTUD)当R=0时,计数脉冲有效;当CU端(CD端)有上升沿输入时,计数器当前值加1(减1)。当计数器当前值大于或等于设定值时,C-bit置1,即其常开触点闭合。当R=1时,计数器复位,即当前值清零,C-bit也清零。加减计数器计数范围:3276832767。CTUD Cxxx,PV指令使用要点:指令使用要点:STL形式中 CU,CD,R的顺序不能错;CU,CD,R信号可为复杂逻辑关系。(C0C255)第8页,此课件共21页哦加减计数器指令应用示例LD I0.1 LD I0.2 LD I0.3 CTUD C50,4441233455第9页,此课件共21页哦二、比较指令 比较指令是将两个操作数按指定的条件比较,操作数可以是整数,也可以是实数,在梯形图中用带参数和运算符的触点表示比较指令,比较条件成立时,触点就闭合,否则断开。比较触点可以装入,也可以串、并联。比较指令为上、下限控制提供了极大的方便。第10页,此课件共21页哦字节比较指令字节比较指令整数比较指令整数比较指令IN1IN2=BLDB=IN1,IN2IN1IN2=ILDW=IN1,IN2实数比较指令实数比较指令双整数比较指令双整数比较指令IN1IN2=RLDR=IN1,IN2IN1IN2=DLDD=IN1,IN2这里“=”和“=”可以替换为:=大于等于大于小于不等于第11页,此课件共21页哦比较指令举例课本45页,例4-5成品库存统计第12页,此课件共21页哦三、移位指令及应用举例 移位指令分为左、右移位和循环左、右移位及寄存器移位指令三大类。前两类移位指令按移位数据的长度又分字节型、字型、双字型3种。第13页,此课件共21页哦左、右移位指令 LAD左移位右移位STL左移位SLB OUT,NSLW OUT,NSLD OUT,N右移位SRB OUT,NSRW OUT,NSRD OUT,N操作数及数据类型IN:VB,IB,QB,MB,SB,SMB,LB,AC,常量。OUT:VB,IB,QB,MB,SB,SMB,LB,AC。数据类型:字节IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,常量。OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC。数据类型:字IN:VD,ID,QD,MD,SD,SMD,LD,AC,HC,常量。OUT:VD,ID,QD,MD,SD,SMD,LD,AC。数据类型:双字N:VB,IB,QB,MB,SB,SMB,LB,AC,常量;数据类型:字节;数据范围:N数据类型(B、W、D)对应的位数。功能SHL:字节、字、双字左移N位;SHR:字节、字、双字右移N位。左、右移位数据存储单元与左、右移位数据存储单元与SM1.1(溢出)端相连,移出位(溢出)端相连,移出位被放到特殊标志存储器被放到特殊标志存储器SM1.1位。移位数据存储单元的另位。移位数据存储单元的另一端补一端补0。第14页,此课件共21页哦?00000111第15页,此课件共21页哦指令说明左移位指令(SHL):使能输入有效时,将输入IN的无符号数字节、字或双字中的各位向左移N位后(右端补0),将结果输出到OUT所指定的存储单元中,如果移位次数大于0,最后一次移出位保存在“溢出”存储器位SM1.1。如果移位结果为0,零标志位SM1.0置1。右移位指令 使能输入有效时,将输入IN的无符号数字节、字或双字中的各位向右移N位后,将结果输出到OUT所指定的存储单元中,移出位补0,最后一移出位保存在SM1.1。如果移位结果为0,零标志位SM1.0置1。使ENO=0的错误条件:0006(间接寻址错误),SM4.3(运行时间)第16页,此课件共21页哦循环左、右移位指令LADSTLRLB OUT,NRRB OUT,NRLW OUT,NRRW OUT,NRLD OUT,NRRD OUT,N操作数及数据类型IN:VB,IB,QB,MB,SB,SMB,LB,AC,常量。OUT:VB,IB,QB,MB,SB,SMB,LB,AC。数据类型:字节IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,常量。OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC。数据类型:字IN:VD,ID,QD,MD,SD,SMD,LD,AC,HC,常量。OUT:VD,ID,QD,MD,SD,SMD,LD,AC。数据类型:双字N:VB,IB,QB,MB,SB,SMB,LB,AC,常量;数据类型:字节。功能ROL:字节、字、双字循环左移N位;ROR:字节、字、双字循环右移N位。第17页,此课件共21页哦00000011000000110000000111第18页,此课件共21页哦指令说明循环左移位指令(ROL)使能输入有效时,将IN输入无符号数(字节、字或双字)循环左移N位后,将结果输出到OUT所指定的存储单元中,移出的最后一位的数值送溢出标志位SM1.1。当需要移位的数值是零时,零标志位SM1.0为1。循环右移位指令(ROR)使能输入有效时,将IN输入无符号数(字节、字或双字)循环右移N位后,将结果输出到OUT所指定的存储单元中,移出的最后一位的数值送溢出标志位SM1.1。当需要移位的数值是零时,零标志位SM1.0为1。第19页,此课件共21页哦移位次数N数据类型(B、W、D)时的移位位数的处理如果操作数是字节,当移位次数N8时,则在执行循环移位前,先对N进行模8操作(N除以8后取余数),其结果0-7为实际移动位数。如果操作数是字,当移位次数N16时,则在执行循环移位前,先对N进行模16操作(N除以16后取余数),其结果0-15为实际移动位数。如果操作数是双字,当移位次数N32时,则在执行循环移位前,先对N进行模32操作(N除以32后取余数),其结果0-31为实际移动位数。使ENO=0的错误条件:0006(间接寻址错误),SM4.3(运行时间)第20页,此课件共21页哦3.移位寄存器指令(SHRB):将DATA数值移入移位寄存器。EN为使能输入端,连接移位脉冲信号,每次使能有效时,整个移位寄存器移动1位。DATA为数据输入端,连接移入移位寄存器的二进制数值,执行指令时将该位的值移入寄存器。S_BIT指定移位寄存器的最低位。N指定移位寄存器的长度和移位方向,移位寄存器的最大长度为64位,N为正值表示左移位,输入数据(DATA)移入移位寄存器的最低位(S_BIT),并移出移位寄存器的最高位。移出的数据被放置在溢出内存位(SM1.1)中。N为负值表示右移位,输入数据移入移位寄存器的最高位中,并移出最低位(S_BIT)。移出的数据被放置在溢出内存位(SM1.1)中。第21页,此课件共21页哦