『7x24小时有问必答』
    
    我们在设计自动化设备时,往往少不了对一些压力传感器、仪器信号或者温度传感器进行监控和控制。很多时候这些仪器仪表都会有模拟量输入或输出信号,我们就需要使用PLC对它的模拟量进行读取和输出模拟量给到仪器仪表。


    到底什么是模拟量?有些电气工程师在调试时总是没计算好,它没有想像中的复杂。下面我们来看看常见的几种模拟量使用场景吧。

一、常见模拟量范围
模拟量输入:DC -10V~+10VDC、 -20mA~+20mA、DC 0V~10VDC、4mA~20mA
模拟量输出:DC -10V~+10V、 0mA~20mA、DC 0V~10V、4mA~20mA

    还会有DC 0V~5V等,不一一列举,我们后面主要讲0~10V和4~20mA两个。

二、使用场景,在哪些地方会用到?
变频器控制
温度监控
压力监控
液位监控
比例阀控制
............

    使用模拟量的地方很多,工作中接触最多的是变频器、压力、液位。近几年随着技术的发展,可能更多的是使用通讯来实现,这个模拟量我们可以不用,但是我们得懂。

三、模拟量类型选择,电压还是电流?怎么选

选信号前得先明白本质区别,不然选错了,后期调试能熬到半夜。

0-10V 电压信号:像 “短距离快递”,适合柜内或 10 米内的设备,比如 PLC 和同柜子里的变频器、柜内温度传感器,优点是接线简单(两根线就行),新手也能接;但缺点明显,线一长就容易被干扰(比如旁边有变频器动力线),而且信号会 “衰减”(比如 10V 信号传 20 米,可能只剩 8V,数据就不准了)。

4-20mA 电流信号:是 “长途货车”,50 米甚至 100 米的距离都稳,比如车间角落的液位变送器、室外的流量计,抗干扰能力强,还能 “自检”:正常情况下信号不会低于 4mA,要是 PLC 读成 0mA,不用查传感器,先看线是不是断了(0-10V 就没法区分 “没信号” 和 “数值为 0”)。

四、模拟量转换为想要的数据。
下面我们使用温度计和比例阀来举例
模拟量输入:外部温度计输出的DC 0~10V模拟量,接到PLC的模拟量输入模块上,PLC模拟量它是一个数值(如0~32000)出来,我们再把数值转换成电压,这样我们就知道外部输入的电压是多少了。
直接上图,这个很好理解吧。
然后我们程序里面再把数值,比如0~10V对应0~100摄氏度,一般电压转换为温度会有一个转换公式,我们把PLC计算的电压值代入进公式,就能得出我们想要的温度了。
计算1:先计算我们程序里面从模拟量输入模块取得的电压
我们假设y-数值,x-电压。公式是y=ax+b
代入
32000 = a * 10 + b
0 = a * 0 + b
解得公式:y=3200x,x=y/3200(先记住,后面会用到)
计算2:计算电压对应的温度
我们假设0摄氏度对应0V,100摄氏度对应10V,也为二元一次方程关系y=ax+b。y-温度,x-电压
0 = a * 0 + b
100 = a* 10 + b
解得公式:y = 10x


模拟量输出:我们要控制一个比例阀(能够控制输出压力的一个东西,用的机器不多,我也比较少接触),这个比例阀可以接收0~20mA的电流,对应0~500KPa压力输出,如下图:
那么我们在程序内部对应的寄存器写入数值,写入32000对应20mA,这时比例阀会输出500KPa压力,写入0对应0mA,这时比例阀会输出0KPa压力。
计算1:先把我们对应的数值0~32000转换成0~20mA
我们假设y-电流,x-数值,公式也是y=ax+b。
20 = a * 32000 + b
0 = a * 0 + b
解得公式:y= x/1600

计算2:把0~20mA,对应0~500kPa
我们假设y-压力,x-电流,公式也是y=ax+b。
0 = a * 0 +b
500 = a * 20 +b
解得公式:y= 25x

五、编程实例,我们以FX3U的4AD和4DA进行举例
这里说一下,缓冲区操作指令FROM/TO和U/G指令,他们都是一个目的,移动数据,
TO:模块号、缓冲区、要传的数据、多少个长度
FROM:模块号、缓冲区、读取出来的数据存哪里、多少个长度
U/G:U模块号、G缓冲区。使用MOV或BMOV指令
开始编程吧。


模拟量输入模块FX3U-4AD编程:
BFM 0输入模式:
选哪种模拟量,第四点我们选择的是DC 0~10V电压模
拟量输出的温度计,所以模式可以选0。

在通道数据(BFM 10~13)、峰值(BFM 101~104111~114)、数据历史记录(BFM 200~69999)的值上加上加法运算数据(BFM 61~64),该加法运算数据的值被保存在61。

注意:使用加法运算数据时,需要将加法运算数据功能(BFM222b0)置ON

PLC程序:(前面解得公式:电压x=数值y/3200;温度y = 10 * 电压x
OK,D4就是我们的温度了。


模拟量输出模块FX3U-4DA编程:
先确定输出模式,选哪种模拟量。我们第四点选择的是0~20mA电流模拟量输入比例阀,所以模式选2。
输出比输入稍微简单一些。

PLC程序:(前面解得公式:电流y=数值x/1600;压力y=25*电流x
我们要算数值,把数值存到PLC缓冲区。
电流x = 压力y / 25,数值x = 电流y * 1600
OK,到这里就完成啦。是不是很简单。

总结三大要点:
搞懂缓冲区功能。
熟悉FROM/TO、U/G操作指令
PLC数据量的数值、模拟电压/电流、实际温度/压力与电压/电流的公式换算。
这三个搞懂,就很轻松了。

用得上的话大家帮点点关注收藏一下。

以下是一些相关的技术分享文章,感兴趣的可以看看:


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码