PLC编程必备:模拟量计算,结合实际案例详解,这操作一看就懂
模拟量是工业自动化使用的蛮多的一个东西,一般用在对温度、压力等数字量的检测和控制,比较高端的还会结合PID进行使用。在学习模拟量的过程中,读取到相应的数据很简单,困扰大家学习模拟量的最大难题是对模拟量的量程范围的选择以及计算。下面,陈老师将对模拟量的计算进行一个详细的解说,会结合相应的案例,帮助大家理解模拟量。
例1:
如上图,一个温度感应模块,感应的温度时0~150°,对应的输出电压时0~10V,也就是说感应到0的温度,这个模块就输出一个0V的电压;感应到150°,就输出一个10V的电压。中间的每一个温度也会对应一个相应的电压,这里需要去计算么,不不不,现在还不到计算的时候,我们继续往下看。
上图是我们FX系列的plc,加了2个模拟量的模块,其中FX3U-4AD就是用来接收这些电压数值的模块(也可以接收电流)。有一点要记住,plc显示出来的是数字,而不是电压值。而且,显示出来的数值大小也可以是不同范围,例如,可以把0-10V的电压显示为0-10000的数值,也可以显示为0-4000或者0-32000的对应数值,你选择的数值越大,检测的就越精确,看下图的3种模式,我们可以通过plc编程进行设定,选择其中一种:
(由于我们的温度模块是0-10V的,我们plc的接收范围是-10V--+10V,我们把负数部分去掉,对应的数值的负数范围也可以去掉)
下面我们选择0-32000的数值范围进行计算。也就是说,读取到是数值0,就是电压为0v;读取到32000的数值,就是感应到的电压是10V。再对应到我们温度模块的0-150°,可以发现0-10V就是一个中间量,我们不需要拿他来计算, 0数值对应的温度是0°150°对应的数值是32000。
如上图,温度和读取的数值是一个线性关系,我们可以用坐标系表示,温度为X,显示的数值为Y,这时我们发现,他们之间存在一个比例关系,Y是X的k倍,也就是说,显示的数值是实际温度的K倍,具体是多少倍,我们不知道,我们可以列公式 y=k*x,这时可以代入 x=150°时,y=32000,即 32000=k*150,可以求得,k=32000/150=2133
结论是,读取到的数值除以2133就是实际的温度。
选择不同的量程范围,计算的过程都是一样的,这里就不给大家一一演示,下面进入第二个例子,来看看更有难度的计算。
例2:
下图是我们另外一种温度变送器,它能感应到-50°~+150°的温度范围,输出的是4~20ma的电流。
就是说我们的感应器感应到-50°时,输出电流4mA;感应到150°的温度时,输出20mA的电流。参照下图,我们可以选择不用的量程范围
比如,我们选择0~16000的量程范围,那么这时候对应关系如下:
我们把读取的数值命名为y把实际温度命名为x,x变化,我们的y也会跟着变化,这时,因为我们的温度初始检测值不为零,所以计算比前面有所不同。我们先根据-50°对应数值0, +150°对应的数值为16000,做出下图
我们可以列出这样的方程y=k*x+b,然后代入(-50,0)、(150,16000)
这是初中的直线方程的知识点,我们可以接出k=80,b=4000;
y=80*x+4000或x=(y-4000)/80
最后可以得出,实际的数值减去4000,再除以80就是实际的温度。
我们再来回顾下计算的流程。
这就是我们模拟量的计算过程,当然plc也可以通过D\A模块输出电压或者电流,其计算过程和原理都是一样的,这里就留给大家自己去思考。(本文为技成老师原创,作者:陈育鑫,未经授权不得转载,违者必究!)
往期优秀文章回顾:
变频器的控制回路端口详解,图文并茂~
「收藏」什么品牌PLC都适用的模拟量万能公式
一、LAD方法实现
1)计算公式说明
[(IN0-IN1)/(IN2-IN1)]*(IN4-IN3)+IN3
IN0:模拟量输入信号,数据类型为整数IN1:模拟量信号下限,数据类型为整数IN2:模拟量信号上限,数据类型为整数IN3:工程量数值下限,数据类型为实数IN4:工程量数值上限,数据类型为实数2)程序编写说明
二、 SCL方法实现
1)计算公式说明
三、程序编写说明
相关问答
plc电机控制算法?
PLC中无非就是三大量:开关量、模拟量、脉冲量。只在搞清楚三者之间的关系,你就能熟练的掌握PLC了。PLC编程算法(一)1、开关量也称逻辑量,指仅有两个取值,0...
三菱PLC用SPD指令测得编码器每秒钟发出的脉冲个数是10个。怎样计算编码器每分钟的转速?写出过程?
用高速计数器的话,如转的较快,你可以每秒钟把高速计数器的值传给一个寄存器,用这个值乘以60秒,再除以编码器一圈的脉冲数即可得到转速,同时复位高速计数器进...
求助PLC程序的大小如何计算?-盖德问答-化工人互助问答社区
不过我们这边都用1756的,基本上多大的程序都不成问题在电脑上显示的文件不是全部装入plc的吧,编程的时候存储空间是预留的,在电脑上显示的文件不...
运用PLC和编码器怎么计算电机速度?
外围接线就不用说了!程序里边就是用高速计数器去记编码器过来的脉冲!例如x0口接编码器,你想得到每秒的脉冲数,程序里边就是ldx10spdx0k100d0...外围接...
PLC模拟量计算?
是指在PLC(可编程逻辑控制器)中对模拟量进行计算和处理的过程。具体的计算方法和步骤会根据具体的应用和需求而有所不同。一般来说,算可以通过以下步骤进行1...
plc浮点数计算公式?
说白了,就是小数点运算啦。比如,支持浮点数的PLC对于3除以2的结果为1.5,不支持浮点数的结果为1就这么简单,浮点数只是小数在科学应用的一种表示方法而已了...
流量计在plc用怎么编程?
例如,使用一个0-20mA的模拟量信号输入,在S7-200CPU内部,0-20mA对应于数值范围0-32000;对于4-20mA的信号,对应的内部数值为6400-32000也就是说如;PIW256读...
设备运转速率如何在PLC中编程?
设备运转速度如何在PLC中编程,如果你采用的变频器控制电机调速的话,要求不高的话可以直接将变频器的实际输出频率经过计算转换成转速。现在的变频器矢量控制模...
PLC的cpu负荷率是怎么计算的?-盖德问答-化工人互助问答社区
只是想了解一下原理,从而在编程时注意。dcs是以控制周期为基数,可plc是循环扫描的,它的基数怎么确定?同理,它的通讯模块了?抛砖引玉吧,我们这里用...
三菱PLC控制伺服电机脉冲频率和脉冲数量如何计算?
假如驱动器电子齿轮比是1:1,再假如编码器是2500X4=10000个脉冲/圈;于是再假如你要马达转一圈,则应该发10000个脉冲;转两圈就发20000个脉冲;还假如你要马...