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,*LD
IN1和IN2还可以是AIW和常数
D IN1,IN2
两个32位带符号整数相加,得到一个32位带符号整数。
执行结果:IN1 OUT=OUT(在LAD和FBD中为:IN1 IN2=OUT)
IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是HC和常数
R IN1,OUT
两个32位实数相加,得到一个32位实数。
执行结果:IN1 OUT=OUT(在LAD和FBD中为:IN1 IN2=OUT)
IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以常数
减法指令
-I IN1,OUT
两个16位带符号整数相减,得到一个16位带符号整数。
执行结果:OUT-IN1=OUT(在LAD和FBD中为:IN1-IN2=OUT)
IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD
IN1和IN2还可以是AIW和常数
-D IN1,OUT
两个32位带符号整数相减,得到一个32位带符号整数。
执行结果:OUT-IN1=OUT(在LAD和FBD中为:IN1-IN2=OUT)
IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是HC和常数
-R IN1,OUT
两个32位实数相加,得到一个32位实数。
执行结果:OUT-IN1=OUT(在LAD和FBD中为:IN1-IN2=OUT)
IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以常数
乘法指令
*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,*LD
IN1和IN2还可以是AIW和常数
MUL IN1,OUT
两个16位带符号整数相乘,得到一个32位带符号整数。
执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)
IN1,IN2:VW,IW,QW,MW,SW,SMW,LW,AIW,T,C,AC,*VD,*AC,*LD和常数
OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
*D IN1,OUT
两个32位带符号整数相乘,得到一个32位带符号整数。
执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)
IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是HC和常数
*R IN1,OUT
两个32位实数相乘,得到一个32位实数。
执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)
IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是常数
除法指令
/I IN1,OUT
两个16位带符号整数相除,得到一个16位带符号整数商,不保留余数。
执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)
IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD
IN1和IN2还可以是AIW和常数
DIV IN1,OUT
两个16位带符号整数相除,得到一个32位结果,其中低16位为商,高16位为结果。
执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)
IN1,IN2:VW,IW,QW,MW,SW,SMW,LW,AIW,T,C,AC,*VD,*AC,*LD和常数
OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
/D IN1,OUT
两个32位带符号整数相除,得到一个32位整数商,不保留余数。
执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)
IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是HC和常数
/R IN1,OUT
两个32位实数相除,得到一个32位实数商。
执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)
IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN1和IN2还可以是常数
数学函数指令
SQRT IN,OUT
把一个32位实数(IN)开平方,得到32位实数结果(OUT)
IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
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,OUT
TAN IN,OUT
增减指令
INCB OUT
将字节无符号输入数加1
执行结果:OUT 1=OUT(在LAD和FBD中为:IN 1=OUT)
IN,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD
IN还可以是常数
DECB OUT
将字节无符号输入数减1
执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT)
INCW OUT
将字(16位)有符号输入数加1
执行结果:OUT 1=OUT(在LAD和FBD中为:IN 1=OUT)
IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD
IN还可以是AIW和常数
DECW OUT
将字(16位)有符号输入数减1
执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT)
INCD OUT
将双字(32位)有符号输入数加1
执行结果:OUT 1=OUT(在LAD和FBD中为:IN 1=OUT)
IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD
IN还可以是HC和常数
DECD OUT
将字(32位)有符号输入数减1
执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT)
详细的应用参照http://www.plc100.com/sanling/
提交
助力企业恢复“战斗状态”:MyMRO我的万物集·固安捷升级开工场景方案
车规MOSFET技术确保功率开关管的可靠性和强电流处理能力
未来十年, 化工企业应如何提高资源效率及减少运营中的碳足迹?
2023年制造业“开门红”,抢滩大湾区市场锁定DMP工博会
2023钢铁展洽会4月全新起航 将在日照触发更多商机