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中的数值数据类型转换为实数再进行乘除运算。
相关问答
plc一共有多少指令?
三菱PLC指令:LD:取指令(常开触点)LDI:取反指令(常闭触点)AND:串指令(常开触点)ANI:串反指令(常闭触点)OR:并指令(常开触点)ORI:并反指令...三菱PLC指令.....
一台plc能同时控制多少电器?
你好,这要看您用的PLC是什么型号的哦,不同的型号能控制的设备电路数量不一样,比如像西门子200和三菱3U这种就比西门子1500和三菱Q系列能控制的设备少,PLC还是...
plc常操作数的指令有?
一般来说,操作数是指令后面的操作对象可以是常数、地址寄存器、内存寄存器、数据块、跳转地址等他是直接的操作对象,是指令执行影响的区域或者是传送的...
各种型号的plc编程指令都一样吗?
目前各家plc的指令是不一样的,即使是同一家公司的不同型号的plc所支持的指令也不完全相同。例如西门子的s7400支持的指令就比300多一些为了打破这种局面,国际...
PLC27个基本指令是分别是什么?
分别是;LD.LDI.LDP.LDF.OR.ORI.ORP.ORF.AND.ANI.ANDP.ANDF.ANB.PLS.PLF.END.MC.MCR,MPS.MPP.MRD.SET.RST.NOP.O...
plc的常用代码?
PLC品牌比较多!每个都不一样!西门子,施耐德,AB(罗克韦尔),GE。中型PLC:西门子,施耐德,欧姆龙,三菱。小型PLC:西门子,欧姆龙,三菱,LS,松下,富士...PLC品牌比较...
PLC的乘法指令有哪些?
PCL乘法指令是将指定的源元件中的二进制数相乘,结果送到指定的目标元件中去。PCL乘法指令分16位和32位两种情况。当为16位运算,执行条件X0由OFF→ON...
plc长操作数的指令有?
一般来说,操作数是指令后面的操作对象可以是常数、地址寄存器、内存寄存器、数据块、跳转地址等他是直接的操作对象,是指令执行影响的区域或者是传送的...
plc加减乘除指令是什么?
PLC(可编程逻辑控制器)是一种用于自动化控制的设备。它可以执行各种指令,包括加减乘除指令。加法指令用于将两个数相加,减法指令用于将一个数减去另一个数,...
plc指令集架构?
PLC的指令集是通过编程语言实现的,主要包括:梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)...PLC的...