算术运算指令可完成整数、长整数及实数的加、减、乘、除、求余、求绝对值等基本算数运算,以及32位浮点数的二次方、二次方根、自然对数、基于e的指数运算及三角函数等扩展算数运算。S7-300PLC的算术运算指令在累加器1和累加器2中进行,在累加器2中的值作为被减数或被除数。算术运算的结果存在累加器1中,累加器1原有的值被运算结果覆盖,累加器2中的值保持不变。算术运算指令见表3-52~表3-54。
表3-52 算术运算指令①
表3-53 算术运算指令②
表3-54 算术运算指令③
例3-12 求解数学算式:
参考梯形图程序如图3-52所示。
图3-52 例3-12求解数学算式例程梯形图程序(www.xing528.com)
说明:网络1中用到了打开数据块指令,其功能是打开一个共享数据块(SDB)或背景数据块(IDB)。该指令是一种数据块无条件调用功能。数据块的编号被传送到SDB或IDB寄存器。之后,SDB和IDB指令根据寄存器的内容访问相应的数据块。使用说明见表3-55。
表3-55 打开数据块指令
例3-13 A-D转换计算。
压力变送器的量程为0~10MPa,输出信号为4~20mA;S7-300PLC的模拟量输入模块的量程为4~20mA,转换后的数字量为0~27648;设转换后的数字为N,试求以kPa为单位的压力值。
解:0~10MPa(0~10000kPa)对应于转换后的数字0~27648,转换公式为
P=(10000×N)/27648kPa
值得注意的是,在运算时一定要先乘后除,否则会损失原始数据的精度。假设A-D转换后的数据N在MD6中,以kPa为单位的运算结果在MW10中。图3-53是实现模式转换运算的梯形图程序。
图3-53 A-D转换计算梯形图程序
说明:语句表中“∗I”指令的运算结果为32位整数,梯形图中MUL_I指令的运算结果为16位整数。A-D转换后的最大数字为27648,所以要使用MUL_DI。双字除法指令DIV_DI的运算结果为双字,运算结果不会超过16位正整数的最大值(32767)。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。