1、输出逻辑行的运算结果Q,M,SM,T,C,V,S置位S bit,N置继电器状态为接通Q,M,SM,V,S复位R bit,N使继电器复位为断开S7-200系列PLC的比较指令在SIEMENS S7-200的编程软件STEP-7中,有专门的比较指令:IN1与IN2比较,比较的数据类型可以是B、I(W)、D、R,即字节、字整数、双字整数和实数;还可以有其他的比较式:、=、 来分别对应SUB 指令的三个输出;若还要对应、或=、和。(1)字节比较字节比较用于比较两个字节型整数值INl和IN2的大小,字节比较是无符号的。比较式可以是LDB、AB或OB后直接加比较运算符构成。如:LDB=、AB=等。整数IN
2、l和IN2的寻址范围:VB、IB、QB、MB、SB、SMB、LB、*VD、*AC、*LD和常数。指令格式例如: LDB= VBl0,VBl2(2)整数比较整数比较用于比较两个一字长整数值INl和IN2的大小,整数比较是有符号的(整数范围为16#8000和16#7FFF之间)。比较式可以是LDW、AW或OW后直接加比较运算符构成。LDW=、AWVW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常数。 LDW= VWl0,VWl2(3)双字整数比较双字整数比较用于比较两个双字长整数值INl和IN2的大小,双字整数比较是有符号的(双字整数范围为16#80000
3、000和16#7FFFFFFF之间)。比较式可以是LDD、AD或OD后直接加比较运算符构成。LDD=、AD双字整数INl和IN2的寻址范围:VD、ID、QD、MD、SD、SMD、LD、HC、AC、*VD、*AC、*LD和常数。 LDD= VDl0,VDl2(4)实数比较实数比较用于比较两个双字长实数值INl和IN2的大小,实数比较是有符号的(负实数范围为-1.175495E-38和-3.402823E+38,正实数范围为+1.175495E-38和+3.402823E+38)。比较式可以是LDR、AR或OR后直接加比较运算符构成。LDR=、AR实数INl和IN2的寻址范围:VD、ID、QD、M
4、D、SD、SMD、LD、AC、*VD、*AC、*LD和常数。 LDR= VDl0,VDl2S7-200PLC功能指令概述般的逻辑控制系统用软继电器、定时器和计数器及基本指令就可以实现。利用功能指令可以开发出更复杂的控制系统,以致构成网络控制系统。这些功能指令实际上是厂商为满足各种客户的特殊需要而开发的通用子程序。功能指令的丰富程度及其合用的方便程度是衡量PLC性能的一个重要指标。S7-200的功能指令很丰富,大致包括这几方面:算术与逻辑运算、传送、移位与循环移位、程序流控制、数据表处理、PID指令、数据格式变换、高速处理、通信以及实时时钟等。功能指令的助记符与汇编语言相似,略具计算机知识的人学
5、习起来也不会有太大困难。但S7-200系列PLC功能指令毕竟太多,一般读者不必准确记忆其详尽用法,需要时可可查阅产品手册。S7-200PLC四则运算指令介绍四则运算指令如表4-20所示。表4-20 四则运算指令名称指令格式(语句表)操作数寻址范围加法指令+I IN1,OUT两个16位带符号整数相加,得到一个16位带符号整数。执行结果:IN1+OUT=OUT(在LAD和FBD中为:IN1+IN2=OUT)IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LDIN1和IN2还可以是AIW和常数+D IN1,IN2两个32位带符号整数相加,得到一个
6、32位带符号整数。VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LDIN1和IN2还可以是HC和常数+R IN1,OUT两个32位实数相加,得到一个32位实数。IN1和IN2还可以常数减法指令-I IN1,OUT两个16位带符号整数相减,得到一个16位带符号整数。OUT-IN1=OUT(在LAD和FBD中为:IN1-IN2=OUT)-D IN1,OUT两个32位带符号整数相减,得到一个32位带符号整数。-R IN1,OUT乘法指令*I IN1,OUT两个16位符号整数相乘,得到一个16整数。IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)MUL IN
7、1,OUT两个16位带符号整数相乘,得到一个32位带符号整数。IN1,IN2:VW,IW,QW,MW,SW,SMW,LW,AIW,T,C,AC,*VD,*AC,*LD和常数OUT:*D IN1,OUT两个32位带符号整数相乘,得到一个32位带符号整数。*R IN1,OUT两个32位实数相乘,得到一个32位实数。IN1和IN2还可以是常数除法指令/I IN1,OUT两个16位带符号整数相除,得到一个16位带符号整数商,不保留余数。OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)DIV IN1,OUT两个16位带符号整数相除,得到一个32位结果,其中低16位为商,高16位为结
8、果。/D IN1,OUT两个32位带符号整数相除,得到一个32位整数商,不保留余数。/R IN1,OUT两个32位实数相除,得到一个32位实数商。数学函数指令SQRT IN,OUT把一个32位实数(IN)开平方,得到32位实数结果(OUT)IN,OUT:IN还可以是常数LN IN,OUT对一个32位实数(IN)取自然对数,得到32位实数结果(OUT)EXP IN,OUT对一个32位实数(IN)取以e为底数的指数,得到32位实数结果(OUT)SIN IN,OUT分别对一个32位实数弧度值(IN)取正弦、余弦、正切,得到32位实数结果(OUT)COS IN,OUTTAN IN,OUT增减指令INC
9、B OUT将字节无符号输入数加1OUT+1=OUT(在LAD和FBD中为:IN+1=OUT)VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LDDECB OUT将字节无符号输入数减1OUT-1=OUT(在LAD和FBD中为:IN-1=OUT)INCW OUT将字(16位)有符号输入数加1VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LDIN还可以是AIW和常数DECW OUT将字(16位)有符号输入数减1INCD OUT将双字(32位)有符号输入数加1IN还可以是HC和常数DECD OUT将字(32位)有符号输入数减1S7-200PLC逻辑运算
10、指令逻辑运算指令如表4-21所示。表4-21 逻辑运算指令字节逻辑运算指令ANDB IN1,OUT将字节IN1和OUT按位作逻辑与运算,OUT输出结果ORB IN1,OUT将字节IN1和OUT按位作逻辑或运算,OUT输出结果XORB IN1,OUT将字节IN1和OUT按位作逻辑异或运算,OUT输出结果INVB OUT将字节OUT按位取反,OUT输出结果字逻辑运算指令ANDW IN1,OUT将字IN1和OUT按位作逻辑与运算,OUT输出结果ORW IN1,OUT将字IN1和OUT按位作逻辑或运算,OUT输出结果XORW IN1,OUT将字IN1和OUT按位作逻辑异或运算,OUT输出结果INVW
11、OUT将字OUT按位取反,OUT输出结果双字逻辑运算指令ANDD IN1,OUT将双字IN1和OUT按位作逻辑与运算,OUT输出结果ORD IN1,OUT将双字IN1和OUT按位作逻辑或运算,OUT输出结果XORD IN1,OUT将双字IN1和OUT按位作逻辑异或运算,OUT输出结果INVD OUT将双字OUT按位取反,OUT输出结果S7-200PLC数据传送指令数据传送指令如表4-22所示。表4-22 数据传送指令单一传送指令MOVB IN,OUT将IN的内容拷贝到OUT中IN和OUT的数据类型应相同,可分别为字,字节,双字,实数MOVW IN,OUTOUT还可以是AQWMOVD IN,OU
12、TIN还可以是HC,常数,&VB,&IB,&QB,&MB,&T,&CMOVR IN,OUTBIR IN,OUT立即读取输入IN的值,将结果输出到OUTIN:IBBIW IN,OUT立即将IN单元的值写到OUT所指的物理输出区VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数QB块传送指令BMB IN,OUT,N将从IN开始的连续N个字节数据拷贝到从OUT开始的数据块N的有效范围是1255VB,IB,QB,MB,SB,SMB,LB,*VD,*AC,*LDN:BMW IN,OUT,N将从IN开始的连续N个字数据拷贝到从OUT开始的数据块VW,IW,QW,MW,SW,SM
13、W,LW,T,C,*VD,*AC,*LDIN还可以是AIWBMD IN,OUT,N将从IN开始的连续N个双字数据拷贝到从OUT开始的数据块VD,ID,QD,MD,SD,SMD,LD, *VD,*AC,*LDS7-200PLC移位与循环移位指令移位与循环移位指令如表4-23所示。表4-23 移位与循环移位指令字节移位指令SRB OUT,N将字节OUT右移N位,最左边的位依次用0填充IN,OUT,N:IN和N还可以是常数SLB OUT,N将字节OUT左移N位,最右边的位依次用0填充RRB OUT,N将字节OUT循环右移N位,从最右边移出的位送到OUT的最左位RLB OUT,N将字节OUT循环左移N
14、位,从最左边移出的位送到OUT的最右位字移位指令SRW OUT,N将字OUT右移N位,最左边的位依次用0填充VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数SLW OUT,N将字OUT左移N位,最右边的位依次用0填充RRW OUT,N将字OUT循环右移N位,从最右边移出的位送到OUT的最左位RLW OUT,N将字OUT循环左移N位,从最左边移出的位送到OUT的最右位双字移位指令SRD OUT,N将双字OUT右移N位,最左边的位依次用0填充SLD OUT,N将双字OUT左移N位,最右边的位依次用0填充RRD OUT,N将双字OUT循环右移N位,从最右边移出的位送到OUT的最左位RLD OUT,N将双字OUT循环左移N位,从最左边移出的位送到OUT的最右位位移位寄存器指令SHRB DATA,S_BIT,N将DATA的值(位型)移入移位寄存器;S_BIT指定移位寄存器的最低位,N指定移位寄存器的长度(正向移位=N,反向移位=-N)DATA,S_BIT:I,Q,M,SM,T,C,V,S,LS7-
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1