四则运算指令应用实例PLC程序
- 格式:ppt
- 大小:115.50 KB
- 文档页数:8
PLC还能用来解方程?没想到PLC还能这样玩 - plc本篇文章为大家带来的是用plc解一些简易的方程,想要解更难的方程可以按照这种思路一直往下思考!如果有不懂的可以私信我解决喔!例1:用PLC解下列方程其中X用两位数字开关表示,变化范围(0~99):写出程序的梯形图;首先:把两位数字开关接在PLC的X0~X7上,然后用BIN指令把数字开关输入的BCD码转换为BIN码参与四则运算。
程序示例:在这里我们需要BIN指令把数字开关输入的BCD码转换为BIN码参与四则运算。
在这里D0就相当于等于方程中的X。
然后,我们按照题目中的要求,把25乘于X。
这里我们需要用到MUL乘法指令,MUL,D0,K25,D2就相当于是把X乘于25然后再把值放到D2里面去。
然后在这里我们要特别注意一点因为前面用到了乘法,前面是16位的数值在经过乘法后就可能变成了32位的,所以在这里的加法我们就需要用32位的加法,也就是DADD,D2,C36,D4。
在这里D2的值就等于上一步的25 X,然后D2的值加上C36的值再放到D4里面去。
然后下一步我们用到的是除法,把前面的数据处于255就OK了。
但是这里的除法我们也使用32位的也就是:DDIV,D4,C255,D10.到了这一步后,这个方程就解出来了,答案放在D10里面。
例题2:要控制一个数字D10在(0~500)范围内连续变化,当按住增加按钮X1时,该数字连续增大,但最大为500.当按住减小按钮X2时,该数字减小,但最小为10。
试编出PLC。
:思路:我们要求的是按住增加按钮数值是连续增大与减小的,那么在这里我们可以使用INC加一指令,DEC减一指令,再使用一个比较指令。
当数值等于500的时候停止。
程序示例:当我们接通X001的时候D10里面的就会不停的增加。
按住X002的时候程序就会不停的减小。
然后我们再运用比较指令:CMP,D10,K500,M0.当D10里面的数值等于500的时候,M1的常闭点断开。
欧姆龙cp1h常用指令学习(三)增量与减量、四则运算指令
++指令,BIN增量加一指令, 对应的还--指令。
这个指令类似于C语言中的++和--,勇哥看上去亲切无比。
它还有加L的指令,也就是倍长指令,可以操作32位数。
下面的例子可以很清楚看出倍长指令的区别。
如果你对一个常数100自加,会发生有趣的现象。
你的100.0到100.7的输出IO的灯会狂闪,勇哥实验时步进电机接到了100.0,看到居然电机在运动!
2018.12.26注:勇哥后来在网上看到有人说,操作数如果不加&, # 就是指的对io端口进行操作(某些指令)。
也许就是这个原因吧!
(五)四则运算指令
四则运算比较简单,+-*/
还有倍长指令,加尾缀L
不过勇哥没看到有求余的指令,一点小意外。
对于浮点数的四则运算则为:+F, -F, *F, /F
有一点要强调的是,如果浮点四则运算的对象不为浮点数时,指令置出错标志(ER)为ON,不执行指令。
请注意这一点,勇哥刚才为了浮点乘法没有效果而百思不得其解。
另外,下面代码中的浮点数3.5我是在PLC内在中手工输入的,你是无法直接使用软件在输入浮点数常数的!
---------------------。
PLC基本指令四个经典应用实例本文是建立在已经学习过基本指令的基础上,如果大家对于基本指令是什么都不了解的话,可以先去学习一下。
建议大家能随着文章自己做做看。
1.喷泉控制1)系统控制要求系统要求用两个按钮来控制A、B、C三组喷头工作(通过控制三组喷头的泵电动机来实现),三组喷头排列如图3-22所示。
系统控制要求具体如下:当按下起动按钮后,A组喷头先喷5s后停止,然后B、C组喷头同时喷,5s后,B组喷头停止、C组喷头继续喷5s再停止,而后A、B组喷头喷7s,C组喷头在这7s的前2s内停止,后5s内喷水,接着A、B、C三组喷头同时停止3s,以后重复前述过程。
按下停止按钮后,三组喷头同时停止喷水。
图3-23为A、B、C三组喷头工作时序图。
2)确定输入/输出设备,并为其分配合适的I/O端子喷泉控制需用到的输入/输出设备和对应的PLC端子见表3-153)绘制喷泉控制电路图图3-24为喷泉控制电路图4)编写PLC控制程序启动STEP 7-Micro/WIN编程软件,编写满足控制要求的梯形图程序,编写完成的梯形图如图3-25所示。
下面对照图3-24所示的控制电路来说明梯形图的工作原理:(1)起动控制(2)停止控制2.交通信号灯控制1)系统控制要求系统要求用两个按钮来控制交通信号灯工作,交通信号灯排列如图3-26所示。
系统控制要求具体如下:当按下起动按钮后,南北红灯亮25s,在南北红灯亮25s 的时间里,东西绿灯先亮20s再以1次/s的频率闪烁3次,接着东西黄灯亮2s,25s后南北红灯熄灭,熄灭时间维持30s,在这30s时间里,东西红灯一直亮,南北绿灯先亮25s,然后以1次/s频率闪烁3次,接着南北黄灯亮2s。
以后重复该过程。
按下停止按钮后,所有的灯都熄灭。
交通信号灯的工作时序如图3-27所示。
2)确定输入/输出设备,并为其分配合适的I/O端子交通信号灯控制需用到的输入/输出设备和对应的PLC端子见表3-16。
三菱plc四则运算和逻辑运算指令一、实训任务1.四则运算指令编程:(1) 自行编程分别计算+32767+1=?、-32768-1=?及15/4=?控制要求:分别用16 位的加、减指令,及自增1、自减1 指令编程,要求运行后观察标志位的状态,并分析原因。
(2) 自行编程计算3000×20=?15/4=?控制要求:编写并运行程序,观察运行结果,指出乘积、商及余数所存在的单元及内容。
注:以上两个题目可以分别编程,也可以合在一起编程。
2、逻辑运算指令编程:(1) 自行编程分别计算:K20与K11=?、K20 或K11=?、K20 异或K11=?控制要求:编写并运行程序,写出运行结果。
(2) 自行编程:从X0~X17 传送一个数到D0,若为正数则不处理,若为负数则取补后再传送到D0。
注:以上两个题目可以分别编程,也可以合在一起编程。
3、自动售货机控制售货机自动控制系统主要包括:记币系统、比较系统、选择系统、饮料供给系统、退币系统和报警系统。
(1)计币系统当有顾客买饮料时,投入的钱币经过感应器,感应器记忆投币的个数且传送到检测系统(即电子天平)和计币系统。
只有当电子天平测量的重量少于误差值时,允许计币系统开展叠加钱币,叠加的钱币数据存放在数据存放器D2中。
如果不正确时,认为是假币,则退出投币,等待新顾客。
假设本系统有1角投币如口、2元投币入口、5元投币入口。
(2)比较系统投入完毕后,系统会把D2内钱币数据和可以购买饮料的价格开展区间比较,当投入的钱币小于2元时,指示灯Y0亮,显示投入的钱币缺陷。
此时可以再投币或选择退币。
当投入的钱币在2~3元之间时,汽水选择指示灯长亮。
当大于3元时,汽水和咖啡的指示灯同时长亮。
此时可以选择饮料或选择退币。
(假设本售货机只出售汽水和咖啡,汽水2元/杯、咖啡3元/杯)。
(3)选择系统比较电路完成后选择电路指示灯是长亮的,当按下汽水或咖啡选择,相应的选择指示灯由长亮转为以1秒为周期的闪烁。
plc四则运算项目-回复PLC四则运算项目是一个基于可编程逻辑控制器(PLC)的计算机项目,旨在通过PLC进行基本的数学运算如加法、减法、乘法和除法。
在这篇文章中,我们将逐步回答有关PLC四则运算项目的问题,从项目目标、工作原理、步骤和应用领域等方面进行详细介绍。
第一部分:项目目标在PLC四则运算项目中,我们的目标是利用PLC的功能和特性来实现基本的数学运算。
这样做的主要目的是提高生产线上的自动化程度、减少人力投入和提高运算的准确性。
第二部分:工作原理PLC是一种专门用于自动化控制系统的电子设备,通过编程来控制输入和输出设备的状态和行为。
在PLC四则运算项目中,PLC的主要工作原理包括以下几个步骤:1. 输入数据:通过外部输入设备(如按钮、触摸屏或传感器),将待计算的数值输入到PLC系统中。
2. 逻辑控制:PLC根据预先编写的逻辑程序对输入的数值进行处理,并进行四则运算操作。
3. 输出结果:PLC将计算结果输出到指定的输出设备上(如显示屏、数码管或输出口),以便用户查看和使用。
第三部分:步骤PLC四则运算项目的实施步骤包括以下几个方面:1. 确定需求:明确项目的需求和目标,包括需要执行的运算类型、数值范围和运算精度等。
2. 设计逻辑程序:根据需求和目标,在PLC的编程软件中编写逻辑程序,包括接收输入、进行运算和输出结果的过程。
3. 配置输入输出设备:根据实际情况配置输入和输出设备,如连接按钮和数码管到PLC的输入输出口。
4. 编写输入输出逻辑:根据PLC的编程语言,编写输入和输出的逻辑程序,包括输入信号的检测和输出信号的控制等。
5. 联机测试:将PLC系统连接到实际设备上,并进行实验室测试,确保逻辑程序的正确性和功能的稳定性。
6. 上线部署:将PLC系统部署到生产环境中,并进行线上测试和调试,确保系统的稳定性和生产线的正常运行。
7. 维护和优化:定期对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:乘数,可以是寄存器地址或常数。
西门子plc四则运算指令的使用方法图解
四则运算指令指加、减乘、除指令,接在EN端的使能(Enable)输入信号为1”状态时,分别完成以下运算:
IN1+IN2=OUT
IN1-IN2=OUT
IN1*IN2=OUT
IN1/IN2=OUT
输入变量与输出变量应具有相同的位数,它们可以是单字、双字整数和实数,输入量INI可以是常数。
若输出变量与输入变量相同,为避免在每个扫描周期都执行运算,可在使能输入(EN)电路中增加跳变检测触点。
ENO为使能输出端,它使功能块可串联连接。
如果EN 输入信号为1状态,且在功能块的执行过程中没有错误,它的ENO也
为1状态,如图所示为算术运算。
图算术运算
算术运算指令影响零标志SM1.0、溢出标志SM1.1和负数标志SM1.2,除法指令还影响SM1.3(除数为0)错误标志。
7.1 水管流量精确计算【控制要求】水管直径以mm为单位,水的流速以dm/s(1分米/秒)为单位,水流量以cm3/s(1毫升/秒)为单位。
水管横截面积=πr2=π(d/2)2,水流量=水管横截面积×流速。
要求水流量的计算结果精确到小数后的第2位。
【元件说明】PLC 元件控制说明X0 启动计算D0 水管直径(单位:mm,假设10mm)D10 水管流速(单位:dm/s,假设为25dm/s)R3004 水管横截面积运算结果(单位:mm2)R3006 水管流量运算结果(单位:mm3/s)R3008 水管流量运算结果(浮点型)(单位:mm3/s)R3010 水管流量运算结果(浮点型)(单位:cm3/s)【控制程序】【程序说明】1.涉及到小数点的精确运算时,一般需用浮点数运算指令,但用浮点数运算指令需要转换,比较繁琐。
本例先用整型四则运算指令放大运算数据,再将运算结果转换成浮点数,就可实现小数点的精确运算,如此一来便只需一个转换指令,让运算过程简单而准确。
2.本程序中dm、cm、mm都有用到,所以必须统一单位,保证符合结果需要,程序中先将所有单位统一成mm,最后将单位变成需要的cm3。
3.计算水管横截面积时需要用到π,π≈3.14,在程序中没有将dm/s(分米/秒)扩大100倍,变成mm单位,而却把π扩大了100倍,变为314,这样做的目的可以使运算精确到小数后的2位。
4.最后将运算结果mm3/s 除以1000变成cm3/s,1cm3=1ml,1 升=1000毫升=1000cm3=1dm3。
5.假设水管直径D0为10mm,水流速D10为25dm/s,则水管水流量运算结果为196250 mm3/s,转换成浮点数再除以1000,得到196.25 cm3,精确到小数点后2位。
7.2 加减寸动微调【控制要求】假设有一定位控制系统,每发送100个脉冲可移动1mm距离,当按寸动左移开关X0一下,往左移动1mm,当按寸动右移开关X1一下,往右移动1mm,输出脉冲由PLC输出点Y0提供。
西门子PLC的数学运算指令梯形图编程 -西门子plc1.整数、双整数、浮点数的四则运算西门子S7-200/300/400plc的四则运算指令基本相同,主要是对两个操作数的加、减、乘、除运算,操作数可以是整数、双整数、浮点数等。
S7-200与S7-300/400的指令格式相像,梯形图程序格式如图10-7.1所示。
图中的IN1为四则运算中的被加数、被减数、被乘数、被除数;IN2为加数、减数、乘数、除数:OUT为运算结果存储器地址。
从图10-7.1可见,尽管S7-200与S7-300/400的梯形图指令相同,但从转换后的指令表可以看出两者在执行过程中存在差异。
S7-200的执行过程如下:①将操作数l(被加数、被减数、被乘数、被除数)移动到结果存储器;②将结果存储器(操作数1)与操作数2(加数、减数、乘数、除数)进行运算,并将运算结果存储到结果存储器中。
S7-300/400的执行过程如下:①将操作数l(被加数、被减数、被乘数、被除数)读入到累加器l 中:②将操作数2(加数、减数、乘数、除数)读入到累加器1中,原累加器1中的操作数l移动到累加器2中:③累加器2中的内容与累加器l运算,运算结果存储在累加器l中;④累加器1的运算结果传送到结果存储器中。
四则运算编程时应留意以下几点:①在S7-200中,整数、双整数的运算结果仍旧为整数与双整数,因此,在程序中应留意防止因运算结果溢出而导致的执行错误。
②在S7-200中整数、双整数的除法运算DIV—I、DIV- DI指令,以及S7-300/400的DIV_ DI指令,除法运算的结果不保留余数。
③对于S7-200的整数除法,假如需要余数,可以使用DIV指令。
DIV 指令要求的输出存储器OUT为32位,执行DIV指令后,两个整数的除法运算可以得到32位运算结果,输出存储器OUT的高16位用于存储余数,低16位用于存储商。
④S7-200的双整数除法无法保留余数。
⑤对于S7-300/400的整数除法,可以自动生成余数,执行DIV I指令后,累加器l的高16位存储余数,低16位存储商。
plc的加减乘除运算编程PLC(可编程逻辑控制器)是一种专门用于自动化控制的电子设备,广泛应用于工业领域。
在PLC编程中,加减乘除运算是常见的操作,本文将围绕这一主题展开讨论。
一、PLC加法运算编程在PLC编程中,加法运算常用于对不同信号或数据进行求和。
通过使用PLC的运算指令,可以实现对输入信号或数据进行加法运算,并将结果输出到指定的输出端口或寄存器中。
例如,我们可以通过以下的PLC代码实现两个输入信号的加法运算:```LD X0 // 将X0输入信号加载到内存中ADD X1 // 将X1输入信号与加载到的X0信号相加OUT Y0 // 将加法运算结果输出到Y0输出端口```二、PLC减法运算编程减法运算是PLC编程中常用的一种运算方式。
通过使用PLC的减法指令,可以对输入信号或数据进行减法运算,并将结果输出到指定的输出端口或寄存器中。
下面是一个实现两个输入信号的减法运算的PLC代码示例:```LD X0 // 将X0输入信号加载到内存中SUB X1 // 将加载到的X0信号减去X1输入信号OUT Y0 // 将减法运算结果输出到Y0输出端口```三、PLC乘法运算编程乘法运算在PLC编程中也是常见的一种运算方式。
通过使用PLC的乘法指令,可以对输入信号或数据进行乘法运算,并将结果输出到指定的输出端口或寄存器中。
以下是一个实现两个输入信号的乘法运算的PLC代码示例:```LD X0 // 将X0输入信号加载到内存中MUL X1 // 将加载到的X0信号与X1输入信号进行乘法运算OUT Y0 // 将乘法运算结果输出到Y0输出端口```四、PLC除法运算编程除法运算也是PLC编程中常用的一种运算方式。
通过使用PLC的除法指令,可以对输入信号或数据进行除法运算,并将结果输出到指定的输出端口或寄存器中。
下面是一个实现两个输入信号的除法运算的PLC代码示例:```LD X0 // 将X0输入信号加载到内存中DIV X1 // 将加载到的X0信号除以X1输入信号OUT Y0 // 将除法运算结果输出到Y0输出端口```PLC的加减乘除运算编程是PLC编程中常见且重要的一部分。