水电电工知识
电工文库|算术、逻辑运算指令
2017-02-13  浏览:34
水电之家讯:目前各种型号的plc普遍具备较强的运算功能。和其他PLC不同,S7—200 PLC对算术运算指令来说,在使用要注意存储单元的分配。建议大家在使用算术指令和数学指令时,最好用LAD形式编程。运算指令包括加法、减法、乘法、除法、数学函数指令、增减和逻辑运算指令。

一、加法

1、整数加法

+I,整数加法指令。使能输入有效时,将两个单字长(16位)的符号整数IN1和IN2相加,产生一个16位整数结果OUT。





图1 整数加法2、双整数加法

+D,双整数加法指令。使能输入有效时,将两个双字长(32位)的符号双整数IN1和IN2相加,产生一个32位双整数结果OUT。

在LAD和FBD中,以指令盒形式编程,执行结果:IN1+IN2=OUT。

在STL中,执行结果:IN1+OUT=OUT。

OUT的寻址范围:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD。

指令格式:+D IN1, OUT

3、+R,实数加法指令

使能输入有效时,将两个双字长(32位)的实数IN1和IN2相加,产生一个32位实数结果OUT。

在LAD和FBD中,以指令盒形式编程,执行结果:IN1+IN2=OUT。

OUT的寻址范围:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD。

本指令影响的特殊存储器位:SM1.0(零);SM1.1(溢出);SM1.2(负)。

二、减法

减法指令是对有符号数进行相减操作。包括:整数减法、双整数减法和实数减法。这三种减法指令与所对应的加法指令除运算法则不同之外,其他方面基本相同。





图2 减法在LAD和FBD中,以指令盒形式编程,执行结果:IN1-IN2=OUT。

在STL中,执行结果: OUT- IN2=OUT。

指令格式: -I IN2, OUT (整数减法);-D IN2, OUT (双整数减法);-R IN2, OUT (实数减法)

例: -I AC0, VW4





图3 减法运算三、乘法

1、整数乘法

*I,整数乘法指令。使能输入有效时,将两个单字长(16位)的符号整数IN1和IN2相乘,产生一个16位整数结果OUT。

指令格式:*I IN1,OUT

例:*I VW0,AC0







图4 乘法



图5 乘法2、完全整数乘法

MUL,完全整数乘法指令。使能输入有效时,将两个单字长(16位)的符号整数IN1和IN2相乘,产生一个32位双整数结果OUT。

在LAD和FBD中,以指令盒形式编程,执行结果:IN1*IN2=OUT。

OUT的寻址范围:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD。

本指令影响的特殊存储器位:SM1.0(零);SM1.1(溢出);SM1.2(负);SM1.3(被0除)。

指令格式: MUL IN1,OUT

例: MUL AC0,VD10

3、双整数乘法

*D,双整数乘法指令。使能输入有效时,将两个双字长(32位)的符号整数IN1和IN2相乘,产生一个32位双整数结果OUT。

在STL中,执行结果:IN1*OUT=OUT。

N1和IN2的寻址范围:VD、ID、QD、MD、SD、SMD、LD、HC、AC、*VD、*AC、*LD和常数。

OUT的寻址范围:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD。

本指令影响的特殊存储器位:SM1.0(零);SM1.1(溢出);SM1.2(负);SM1.3(被0除)。

指令格式:*D IN1,OUT

例:*D VD0,AC0

4、实数乘法

*R,实数乘法指令。使能输入有效时,将两个双字长(32位)的实数IN1和IN2相乘,产生一个32位实数结果OUT。

在LAD和FBD中,以指令盒形式编程,执行结果:IN1*IN2=OUT。

在STL中,执行结果:IN1*OUT=OUT。

IN1和IN2的寻址范围:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD和常数。

OUT的寻址范围:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*AC、*LD。

本指令影响的特殊存储器位:SM1.0(零);SM1.1(溢出);SM1.2(负);SM1.3(被0除)。

指令格式:*R IN1,OUT

例:*R VD0,AC0

四、除法

在LAD和FBD中,以指令盒形式编程,执行结果: IN1/IN2=OUT。

在STL中,执行结果: OUT/ IN2=OUT。

指令格式: /I IN2, OUT(整数除法)

DIV IN2, OUT(整数完全除法)

/D IN2, OUT(双整数除法)

/R IN2, OUT(实数除法)





图6 除法

例:DIV VW10, VD100

/I VW20, VW200

两条指令的编程及执行情况比较如图所示。



图7 指令执行图

对于完全除法指令:



图8 完全除法指令

对于除法指令:



图9 除法指令



图10 算术运算举例





图11 算术运算举例五、数学函数指令

1、平方根

SQRT,平方根指令。把一个双字长(32位)的实数IN开平方,得到32位的实数结果。

在LAD和FBD中,以指令盒形式编程,执行结果:SQRT(IN)=OUT。

在STL中,执行结果:SQRT(IN)=OUT。

本指令影响的特殊存储器位:SM1.0(零);SM1.1(溢出和非法值);SM1.2(负)。

使能流输出ENO断开的出错条件:SM1.1(溢出);SM4.3(运行时间);0006(间接寻址)。

指令格式: SQRT IN,OUT

例: SQRT VD0,AC0





图12 平方根2、自然对数

LN,自然对数指令。将一个双字长(32位)的实数IN取自然对数,得到32位的实数结果。

应用实例:求以10为底的50(存于VD0)的常用对数,结果放到AC0。





图13 自然对数3、指数

EXP,指数指令。将一个双字长(32位)的实数IN取以e为底的指数,得到32位的实数结果OUT。

在LAD和FBD中,以指令盒形式编程,执行结果:EXP(IN)=OUT。

在STL中,执行结果:EXP(IN)=OUT。

指令格式: EXP IN, OUT

例: EXP VD0, AC0





图14 指数4、正弦、余弦、正切SIN、COS、TAN,即正弦、余弦、正切指令。将一个双字长(32位)的实数弧度值IN分别取正弦、余弦、正切,各得到32位的实数结果。

如果已知输入值为角度,要先将角度值转化为弧度值,方法:使用(*R)MUL_R指令用角度值乘以π/180°即可。



图15 正弦余弦正切 例: TAN VD0, AC0

应用实例:求Cos160°的值。



图16 应用实例六、增减指令

1、字节增和字节减

INCB,字节增指令。使能输入有效时,把一字节长的无符号输入数(IN)加1,得到一字节的无符号输出结果OUT。

DECB,字节减指令。使能输入有效时,把一字节长的无符号输入数(IN)减1,得到一字节的无符号输出结果OUT。





图17 字节增和字节减 2、字增和字减





图18 字增和字减 3、双字增和双字减

INCD,双字增指令。使能输入有效时,把双字长(32位)的有符号输入数(IN)加1,得到双字长的有符号输出结果OUT。

DECD,双字减指令。使能输入有效时,把双字长的有符号输入数(IN)减1,得到双字长的有符号输出结果OUT。





图19 双字增和双字减 4、应用实例

控制要求:食品加工厂对饮料生产线上的盒装饮料进行计数,每24盒为一箱,要求能记录生产的箱数。





图20 应用实例七、逻辑运算

1、字节逻辑运算

字节逻辑运算包括字节与、字节或、字节异或、字节取反。





图21 字节逻辑运算 2、字逻辑运算

字节逻辑运算包括字节与、字节或、字节异或、字节取反。





图22 字逻辑运算 3、双字逻辑运算

字逻辑运算包括双字与、双字或、双字异或、双字取反。



图23 双字逻辑运算





图24





图25水电之家为您提供最全面的管材,管件,水电,电线,电工,管材水电品牌的装修知识点和各种管材水电的导购与在线购买服务,拥有最便宜的管材水电价格和最优质的售后服务,每天都有秒杀的抢购活动哦!敬请登陆水电之家:http://shuidian.jc68.com/
更多»您可能感兴趣的文章:
更多»有关 水电之家 的产品:
  • 水电电工资讯
  • 发表评论 | 0评
  • 评论登陆
  • 移动社区 天花之家 木门之家 灯具之家 铁艺之家 幕墙之家 五金头条 楼梯头条 墙纸头条 壁纸头条 玻璃头条 老姚之家 灯饰之家 电气之家 全景头条 照明之家 防水之家 防盗之家 区快洞察 建材 枣庄建材 临沂建材 南昌建材 上饶建材 抚州建材 宜春建材 吉安建材 赣州建材 鹰潭建材 新余建材 九江建材 萍乡建材 景德镇陶瓷 石家庄建材 衡水建材 廊坊建材 沧州建材 承德建材 建材之家 企业之家 720全景
    (c)2015-2017 Bybc.cn SYSTEM All Rights Reserved