- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
数模信号之间的函数变换
随着技术进步和工业发展,越来越多的机电一体化应运而生。为了提高设备的自动化水平及安全性,就经常要用到各种各样的变送器,如压力变送器,压差变送器,位置传感器,温度传感器等等。它们多数都是将所要检测的物理量转换为标准的电量信号如 0~20mA,4~ 20mA,0~10v 等,再传送给控制元件如 PLC 等。而 plc 等元件通过标准信号按约定的定义以数字量化的形式对其进行多种运算并正确的判断执行各种动作或输出相应的数字量控制执行装置,从而减少了许多原来由人观察判断、处理的过程,不但提高了效率而且更加安全、准确、快速。
一、问题的提出
如上所述,plc 等元件必须真实地理解变送器送来的信号的定义,才能谈的上正确运行及动作。笔者在设计中,曾经遇到这么一个问题,由于实际需要而决定了选取元件的局限性,选用了 Siments S7-200 系列 PLC,其模拟量输入模块可接受的信号为 0-20mA 或 0-10v,而采用的压力变送器输出信号则为 4-20Ma,需要将该变送器测得的信号与设定的压力值进行比较并发出升速、降速、欠压、超压等信号控制执行机构的运作。这样,就出现了一个问题。即在 plc 接收到 0-4mA 信号时,实际压力值为0,而 plc 则不认为是”0”,怎样才能解决这一矛盾呢
二、问题分析
笔者利用了 plc 的软件功能,采用了函数转换成功地解决了这个问题,并经过实际使用证明是一种行之有效的方法.特简述如下. 压力变送器发出的信号是线性的,对于4-20mA 的信号.其定义即为 4mA 时对应压力值为 0, 20mA 时对应压力值为满量程(本例中为 60MPa)那么,只要当压力值为“0”时我们设法使plc 也认为是“0”,并以线性方式知道其中各点的实际压力值,该问题也就解决了. 我们知道,plc 是以直线方程去理解模拟量输入的。这时,我们可以看到问题的实质实际上是将plc的信号处理成一个以坐标零点为起点的线段.本例中0-20mA的输入信号在plc中相应的寄存器数值为 0-16000,即 4-20mA 的压力输入,PLC 理解为 3200-16000,那么如何使 PLC 以另外一条直线去理解模拟量输入,即在 y=3200 时,x=0;y=16000 时,x=16000 呢 我们可以得出如下直线方程:设 Y=kX+b。 k 为直线的斜率,b 为纵截距。将数据代入得 3200=b 16000=16000k+b 解之得 k=4/5 b=3200 则有 Y=4X/5+3200
(1)在函数(1)中 x 的定义为 PLC 正确理解的压力值,其定义域为 0-16000。 y 的定义为 PLC 中读取的压力值,其定义域为 3200-16000;取该一次函数的反函数即 Y=5Y/4-4000
(2)在函数(2)中 X 的定义为 PLC 中读取的压力值,其定义域为 3200-16000; Y 的定义为 PLC 正确理解的压力值,其定义域为 0-16000。
三、解决问题
通过函数(1)和函数(2),在进行软件编程中,plc 读取压力值时,利用函数(2);而输出压力值时,利用函数(1)。我们就可以很容易地实现 plc 与压力变送器的适配,使得 plc 能够正确的理解实际的物理量并加以分析运算,并给予执行元件正确的指令.
四、结论
plc 具有强大的软件编程功能,而其外部输入输出却受到硬件的限制很难满足所有使用者的要求.在实际使用中,只要我们充分利用其软件功能分析问题并善于解决它,完全可以使 plc 尽可能大的实现各种要求。
上一篇:透析工厂信息应用
下一篇:物流信息技术应用现状及趋势