文档介绍:可编程控制器原理及应用
莱钢培训中心王兵
运算指令包括算术运算指令和逻辑运算指令。
算术运算包括加法、减法、乘法、除法及一些常用的数学函数;在算术运算中,数据类型为整型INT,双整型DINT和实数REAL。
逻辑运算包括逻辑与、逻辑或、逻辑非、逻辑异或,以及数据比较,数据类型为字节型BYTE,字型WORD,双字型DWORD。
运算指令
S7-200的基本数据类型
基本数据类型
位数
说明
布尔型BOOL
1
位范围:0,1
字节型BYTE
8
字节范围:0~255
字型WORD
16
字范围:0~65535
双字型DWORD
32
双字范围:0~232-1
整数型INT
16
整数范围:-32768~+32767
双整数型DINT
32
双字整数范围:-231~(231-1)
实数型REAL
32
IEEE浮点数
+I IN1,OUT
+D IN1,OUT
+R IN1,OUT
ADD-I
EN
IN1
OUT
ENO
IN2
ADD-DI
EN
IN1
OUT
ENO
IN2
ADD-R
EN
IN1
OUT
ENO
IN2
—对两个有符号数进行相减操作
—对两个有符号数进行相加操作
在语句表STL中,指令格式为:+I IN1,OUT。这里IN2与OUT是同一个存储单元。
在STL中,执行结果:OUT-IN2=OUT,这里IN1与OUT是同一个存储单元。
算术运算指令
-I IN2,OUT
-D IN2,OUT
-R IN2,OUT
SUB-I
EN
IN1
OUT
ENO
IN2
SUB-DI
EN
IN1
OUT
ENO
IN2
SUB-R
EN
IN1
OUT
ENO
IN2
*I IN1,OUT
*D IN1,OUT
*R IN1,OUT
MUL-I
EN
IN1
OUT
ENO
IN2
MUL-DI
EN
IN1
OUT
ENO
IN2
MUL-R
EN
IN1
OUT
ENO
IN2
MUL IN1,OUT
MUL
EN
IN1
OUT
ENO
IN2
/I IN2,OUT
/D IN2,OUT
/R IN2,OUT
DIV-I
EN
IN1
OUT
ENO
IN2
DIV-DI
EN
IN1
OUT
ENO
IN2
DIV-R
EN
IN1
OUT
ENO
IN2
DIV IN2,OUT
DIV
EN
IN1
OUT
ENO
IN2
整数与双整数相乘(MUL)指令将两个16位整数相乘,得出一个32位乘积。整数与双整数相除(DIV)指令将两个16位整数相除,得出一个32位结果,其中包括一个16位余数(高位)和一个16位商(低位)。
算术运算指令
整数加法、减法、乘法、除法指令操作数
双整数加法、减法、乘法、除法指令操作数
整数完全乘法、除法指令操作数
实数加法、减法、乘法、除法指令操作数
算术运算指令
算术运算指令应用举例
数学函数指令
1、平方根函数(SQRT)
SQRT指令的功能是将一个双字长(32位)的实数IN开平方,得到32位的结果OUT。
输入/输出操作数数据类型
IN VD, ID, QD, MD, SMD, SD, LD, AC, 常量, *VD, *LD, *AC 实数
OUT VD, ID, QD, MD, SMD, SD, LD, AC, *VD, *LD, *AC 实数
2、自然对数函数(LN)
LN指令的功能是将一个双字长的32位实数IN取自然对数,得到32位的实数结果OUT。
输入/输出操作数数据类型
IN VD, ID, QD, MD, SMD, SD, LD, AC, 常量, *VD, *LD, *AC 实数
OUT VD, ID, QD, MD, SMD, SD, LD, AC, *VD, *LD, *AC 实数
欲从自然对数获得以10为底数的对数,(约等于10的自然对数)。
数学函数指令
例:求以10为底的60(存放在VD0)的常用对数,结果存放到AC0。运算的梯形图及语句表如下图所示。
LD
LN VD0,AC0
LN ,VD100
/R VD100,AC0
数学函数指令