PLC难点:加,减,乘,除的运算指令,虽然不常用,但是很重要!
PLC是电力作业人员经常都会用到的自动控制设备,在工业的控制中应用非常广泛,一个有趣的问题:PLC可以进行加,减,乘,除的运算吗?答案是当然可以,只不过作用没有那么常见,但是也是可以进行运算的,今天就重点来看看PLC的加,减,乘,除指令和具体使用:
PLC的加、减、乘、除指令有什么用?其实功能十分强大!
大家好,欢迎关注电气技术微课堂!这里会每天更新关于电气自动化、PLC、工业机器人、电子技术的原创文章和微课,如果你感兴趣请关注我
今天我们要谈一谈西门子S7-1200PLC中常用的
什么是四则运算指令呢?
四则运算指令包括加法指令ADD、减法指令SUB、乘法指令MUL、除法指令DIV四种。
一、加法指令ADD
执行加法指令ADD将输入IN1的值与输入IN2的值相加,并将加得结果存储在OUT设定的寄存器中。
加法指令功能框各端口的定义如下
EN: 使能输入端,EN为1时执行加法指令,EN为0时不执行。
ENO: 使能输出端,当指令正确执行期间使能输出端ENO为1,指令结果超出输出 OUT指定数据类型的允许范围或浮点数为无效值时ENO为0。
IN1/IN2: 要相加的数值,可以是寄存器的地址或常数,单击ADD指令下的星标可以扩展输入的数目。
OUT: 加法计算结果输出,IN1+IN2=OUT,OUT端一般填写寄存器地址。
加法指令小提示: 可以从指令框的“<???>”下拉列表中选择该指令的数据类型,当地址长度与数据类型不匹配时,会将输入数值隐式转换为指定的数据类型,编译不会报错,但运行过程中可能会出错。
二、减法指令SUB
执行减法指令SUB,将由被减数IN1的值减去减数IN2的值,并将结果存入OUT设定的寄存器地址中。
减法指令功能框各端口的定义如下
EN: 使能输入端,EN为1时执行加法指令,EN为0时不执行。
ENO: 使能输出端,当指令正确执行期间使能输出端ENO为1,指令结果超出输出 OUT 指定数据类型的允许范围或浮点数为无效值时ENO为0。
IN1: 被减数,可以是寄存器地址或常数。
IN2: 减数,可以是寄存器地址或常数。
OUT: 减法计算结果输出,IN1-IN2=OUT,OUT端一般填写寄存器地址。
三、乘法指令MUL
乘法指令MUL将输入 IN1 的值与输入 IN2 的值相乘,并将乘积保存在输出 OUT指定的寄存器中。
乘法指令功能框各端口的定义如下
EN: 使能输入端,EN为1时执行加法指令,EN为0时不执行。
ENO: 使能输出端,指令正确执行期间ENO输出为1,
IN1: 乘数,可以是寄存器地址或常数。
IN2: 乘数,可以是寄存器地址或常数。
Inn: 可以添加多个相乘的数。
OUT: 输出乘积存入指定的寄存器中。
四、除法指令DIV
除法指令DIV将输入 IN1 的值除以输入 IN2 的值,并将除得的商保存在输出 OUT指定的寄存器中。DIV指令支持各种整型和实数型数据。
除法指令功能框各端口的定义如下
EN: 使能输入,EN为1时执行加法指令,EN为0时不执行。
ENO: 使能输出 ,指令正确执行期间ENO状态为1。
IN1: 被除数,可以是寄存器地址、整数或浮点数,需要与所选数据类型匹配。
IN2: 除数,可以是寄存器地址、整数或浮点数,需要与所选数据类型匹配。
OUT: 商值,输出OUT为执行除法指令得到的商,数据类型为无符号整数,余数被省略不计。
除法指令小提示
在使用除法指令DIV时,OUT输出端为除得的商值,数据类型为无符号整型,余数被省略不显示,如果需要求余数需使用MOD指令。
四则运算指令的实际应用举例
例题:温度传感器将采集到的温度值转换为电压信号输入给PLC,测量范围是0~100Co,数值经过被CPU集成的模拟量通道0(地址为IW64)转换为0~27648的数字,假设转换后的数字为T,试求以为Co单位的温度值。
解:0~100Co的温度值经A/D转换后的数字为0~27648,设转换后得到的数字为T,转换公式为
在编辑指令时,为了保证运算精度,应先乘后除。
因为公式中IW64乘以100的运算结果可能会大于16位整数的最大值32767(IW64为16位存储器,模拟值为二进制的补码,最高位为符号位,0为负,1为正),因此应将IW64中的数值数据类型转换为实数再进行乘除运算。
相关问答
西门子s7_200plc怎么用除法指令求余数?
用DIV指令例:DIVVW10,VD200(除数VW10是个字,16位;后面的VD200必须是双字,32位)意思是:VD200中的低16位VW202/VW10,余数保存在VW200中,商保存在VW20...
plc除法怎么保存小数?
在PLC(可编程逻辑控制器)中,保存小数可以使用浮点数数据类型。浮点数数据类型允许存储和处理小数值。以下是保存小数的一般步骤:1.在您的PLC编程软件中,选...
plc中负数怎么取出来?
在PLC(可编程逻辑控制器)中,负数的表示方式取决于使用的数据类型。常见的数据类型包括整数(Integer)、浮点数(Float)等。对于整数类型,负数通常使用补码...
如何用三菱plc加,减,乘除,法计算器有程序最好了?
加指令:addd0d1d2d0+d1=d2减指令:subd0d1d2乘指令:dmuld0d2d4除指令:ddivd0d2d4乘除用双字节加指令:addd0d1d2d0+d1=d2减指令:su...
plc加减乘除指令试验时要需注意什么?
在进行PLC加减乘除指令试验时,需要注意以下几点:首先,确保输入和输出的数据类型和范围是匹配的。其次,要注意防止溢出或除数为零的情况,这可能导致程序崩...
【用plc程序从集合{4,6,12,17,24}找出4的倍数的数字】作业帮
[最佳回答]思路:把需要判断的数值送进一个寄存器D0里,用除法指令将这个寄存器里面的数除以4,然后输出的D目标数据D1中,因为除法指令得出的结果是A余B的,A代表...
西门子plc程序控制指令?
关于这个问题,以下是一些常见的西门子PLC程序控制指令:1.LD:加载指令,将一个变量或者寄存器的值加载到一个寄存器中。2.AND:逻辑与指令,将两个逻辑值进...
PLC中bcd码如何应用?
在PLC中,BCD码通常用于表示十进制数字。PLC中的BCD码应用主要有以下几个方面:1.数字输入和输出:PLC控制系统中,通常需要与数字设备(如数码管、计时器等)进...
为什么PLC要运用到浮点数运算-189****6906的回答-懂得
PLC总是用16进制(二进制),或者BCD码,是难以满足越来越复杂的控制需要的。如果是单纯的逻辑控制当然用到的都是开关量,一般的数据采集和PID控制用BC...
为什么PLC要运用到浮点数运算-138****8550的回答-懂得
PLC总是用16进制(二进制),或者BCD码,是难以满足越来越复杂的控制需要的。如果是单纯的逻辑控制当然用到的都是开关量,一般的数据采集和PID控制用BC...