1、第7章 过程控制数据处理的方法,7.1 数字滤波技术 7.2 标度变换7.3 越限报警处理,7.1 数字滤波技术,引言: 环境需要滤波。 目的:提高信/噪这就是数字滤波。 方法: 模拟滤波 数字滤波,微机控制技术,1 数字滤波器的优点,(1)无需增加任何硬设备。(2)系统可靠性高,不存在阻抗匹配问题。(3)可多通道共享,从而降低了成本。(4)可以对频率很低(如0.01Hz)的信号进行滤波。(5)使用灵活、方便,可根据需要选择不同的滤 波方法,或改变滤波器的参数。在计算机控制系统中得到广泛的应用。,微机控制技术,2数字滤波的方法,数字滤波的几种常用方法: (1)程序判断滤波 (2)中值滤波 (3
2、)算术平均值滤波 (4)加权平均值滤波 (5)滑动平均值滤波 (6)RC低通数字滤波 (7)复合数字滤波,微机控制技术,7.1 数字滤波技术,7.1.1 程序判断滤波 7.1.2 算术平均值滤波 7.1.3 加权平均值滤波 7.1.4 滑动平均值滤波 7.1.5 RC低通数字滤波 7.1.6 复合数字滤波 7.1.7 各种数字滤波性能的比较,7.1.1 程序判断滤波,(1)方法: 根据生产经验,确定出相邻两次采样信号之间可能出现的最大允许偏差 Y。 若两次采样信号之间的偏差超过Y :则表明该输入信号是干扰信号,去掉。小于Y :将信号作为本次采样值。 (2)应用场合:当采样信号由于随机干扰,如大
3、功率用电设备的启动或停止,造成电流的尖峰干扰或误检测,以及变送器不稳定而引起的严重失真等,可采用程序判断法进行滤波。,微机控制技术,滤波方法限幅滤波 和 限速滤波,1限幅滤波作法: |Y(k)-Y(k-1)|Y,则取Y(k)= Y(k) |Y(k)-Y(k-1)| Y,则Y(k)= Y(k-1)(7-1)式中:Y(k)第 k 次采样值;Y(k-1)第(k-1)次采样值;Y相邻两次采样值允许的最大偏差。(其大小取决于采样周期T及Y值的变化动态响应)。,微机控制技术,7.1.1 程序判断滤波,用途: 主要用于变化比较缓慢的参数,(温度、物位等) 门限值Y的选取: Y太大,增大了系统误差允许的程度;
4、 Y太小,又会使计算机采样效率变低。(根据经验数据获得,必要时,也可由实验得出)。,微机控制技术,7.1.1 程序判断滤波,2限速滤波 基本原理设在顺序采样时刻 t1、t2、t3 所采集的数据分别为:Y(1)、Y(2)、Y(3),则当|Y(2)-Y(1)|Y ,则 Y(2)作为采样值; |Y(2)-Y(1)|y, 则保留Y2,但不作为采样值,继续采样取得 Y(3):如果|Y(3)-Y(2)|Y时,则Y3作为采样值;|Y(3)-Y(2)|Y时,则取(Y3+Y2)/2作为采样值。,微机控制技术,7.1.1 程序判断滤波,特点:限速滤波是一种折衷的方法,既照顾了采样的实时性,又顾及了采样值变化的连续
5、性。 注意:比较限幅滤波与限速滤波的不同。,微机控制技术,7.1.2 算术平均值滤波,所谓算术平均滤波就是对某一被测参数连续采样N次,把N个采样值相加,然后取其算术平均值作为本次有效的采样信号,即:,其中:N为采样次数;x(i)为第i次采样值;,7.1.2 算术平均值滤波,说明: 算术平均滤波主要用于对周期性脉动的采样值进行平滑加工(如压力、流量等) 对脉冲性干扰的平滑作用尚不理想。 随着 N值的增大,平滑度将提高,灵敏度降低。 经验数据:流量参数滤波时,N取12次,压力取4次,如无噪声干扰,温度可不取平均值。,微机控制技术,7.1.3 加权平均值滤波,微机控制技术,在算术平均滤波程序中,n次
6、采样值在最后的结果中所占的比重是相等的,这样虽然消除了随机干扰,但有用信号的灵敏度也随之降低。为了提高滤波效果,将各个采样值取不同的比重,求其和作为滤波结果,这种方法称为加权平均滤波。 一个n项加权平均式为:,式中: Ci为各次采样值的系数项,它体现了各次采样值在平均值中所占的比例。应满足如下关系:,7.1.4 滑动平均值滤波,算术平均值滤波,加权平均值滤波,适合于有脉动式干扰的场合。 采用滑动平均值滤波法,可加快平均滤波的速度。作法:在RAM中建立一个数据缓冲区,依顺序存放N次采样数据,每采集进一个新数据就将最早采集的那个数据丢掉,而后求包括新数据在内的N个数据的算术平均值或加权平均值。这样
7、每一次采样,就可计算出一个新的平均值。,微机控制技术,7.1.4 滑动平均值滤波,滑动平均值滤波程序有两种:一种是滑动算术平均值滤波,一种是滑动加权平均值滤波。,微机控制技术,7.1.5 中值滤波,所谓中值滤波法就是对某一被测参数连续采样n次(n一般取奇数),然后把n次采样值按顺序排列,取其中间值做为本次采样值。中值滤波程序的流程框图,如图所示。,适用范围:能有效地滤去由于偶然因素引起的波动或采样开关和A/D等工作不稳定造成的误差所引起的脉冲干扰。对变化缓慢的被测参数有良好的滤波效果,但不适宜于快速变化的过程参数(如流量)。一般来讲,n值越大滤波效果越好,但总的采样 控制时间会增长。所以n值也
8、不能太大,一般取59即可。,7.1.5 中值滤波,7.1.6 RC低通数字滤波,前面讲的几种滤波方法基本上属于静态滤波,适用于变化过程比较快的参数,如压力、流量等;对于慢速随机变量,其滤波效果往往不够理想。 仿照模拟系统RC低通滤波器的方法,用数字形式实现低通滤波,可以提高滤波效果。如图7-3所示。,微机控制技术,7.1.6 RC低通数字滤波,图7-3 RC低通滤波器,微机控制技术,7.1.6 RC低通数字滤波,由图7-3,写出模拟低通滤波器的传递函数,即(7-6)其中, 为 RC滤波器的时间常数,RC。由公式(7-6)可以看出,RC低通滤波器实际上是一个一阶滞后滤波系统。将式(7-6)离散后
9、,可得(7-7)式中,X(k)第k次采样值;Y(k-1)第k-1次滤波结果输出值;,微机控制技术,Y(k)第k次滤波结果输出值; 滤波平滑系数, T采样周期。,7.1.6 RC低通数字滤波,微机控制技术,式(7-7)即为模拟RC低通滤波器的数字滤波器,可用程序来实现。,7.1.7 复合数字滤波,为进一步提高滤波效果,可以把两种或两种以上不同滤波功能的数字滤波器组合起来,组成复合数字滤波器,或称多级数字滤波器。例如 算术平均滤波/加权平均滤波只能对周期性的脉动采样值进行平滑加工。 中值滤波可以解决随机的脉冲干扰(电网的波动,变送器的 临时故障等)。 将二者组合起来,形成多功能的复合滤波。,微机控
10、制技术,即把采样值先按从大到小的顺序排列起来,然后将最大值和最小值去掉,再把余下的部分求和并取其平均值。上述滤波方法的原理可由下式表示:若 X(1)X(2)X(N), 3 N14 (7-10),微机控制技术,7.1.7 复合数字滤波,7.1.8 各种数字滤波性能的比较,以上介绍了七种数字滤波方法,读者可根据需要设计出更多的数字滤波程序。每种滤波程序都有其各自的特点,可根据具体的测量参数进行合理的选用。,微机控制技术,7.1.8 各种数字滤波性能的比较,1. 滤波效果 (1)变化比较慢的参数,如温度,用程序判断滤波及一阶滞后滤波方法。 (2)变化比较快的脉冲参数,如压力、流量等,则可 选择算术平
11、均和加权平均滤波法,特别是加权平 均滤波法更好。 (3)要求比较高的系统,需要用复合滤波法。 (4)在算术平均滤波和加权平均滤波中,其滤波效果与所选择的采样次数N有关。N越大,则滤波效果越好,但花费的时间也愈长。 (5)RC低通滤波程序是比较特殊的滤波程序,使用时 一定要根据其特点选用。,微机控制技术,7.1.8 各种数字滤波性能的比较,2滤波时间在考虑滤波效果的前提下,应尽量采用执行时间比较短的程序,若计算机时间允许,可采用效果更好的复合滤波程序。,微机控制技术,7.2 标度变换,1.为什么要进行标度变换? 生产中的各个参数都有着不同的数值和量纲,如测温元件用热电偶或热电阻,温度单位为,如铂
12、铑-铂热电偶 镍铬-镍铬热电偶 017.677mV 048.87mV变送器:15V 15V A/D: 00FFH 00FFH 01600 01200当系统在进行显示、记录、打印以及报警等操作,必须把这些测得的数字量还原为相应量纲的物理量,以便操作人员对生产过程进行监视和管理,这就是所谓的标度变换。,微机控制技术,7.2 标度变换,下图为一个温度测控系统,某种热电偶传感器把现场中的温度 01200转变为048mV信号,经输入通道中的运算放大器放大到05V,再由8位A/D转换成00FFH的数字量,这一系列的转换过程是由输入通道的硬件电路完成的。,CPU 读入该数字信号在送到显示器进行显示以前,必须
13、把这一无量纲的二进制数值再还原变换成原量纲为的温度信号。比如,最小值00H应变换对应为0、最大值FFH应变换对应为1200。,7.2 标度变换,7.2.1 线性参数标度变换 7.2.2 非线性参数标度变换,7.2.1 线性参数标度变换,线性参数标度变换-最常用的标度变换方式 前提条件-传感器输出信号与被测参数间呈线性关系(即被测参数值与AD转换结果为线性关系),7.2.1 线性参数标度变换,线性标度变换的公式为:(7-15)式中, :一次测量仪表的下限; :一次测量仪表的上限;:实际测量值(工程量);:仪表下限所对应的数字量;:仪表上限所对应的数字量;:测量值所对应的数字量。,微机控制技术,7
14、.2.1 线性参数标度变换,线性参数标度变换子程序,change(float Am, float A0,uchar Nm,uchar N0,uchar Nx) float a1,b1,Ax;a1=(Am-A0)/(Nm-N0);b1=A0-a1N0;Ax=(float)a1Nx+b1;return(Ax); ,7.2.1 线性参数标度变换,为使程序设计简单,一般把一次测量仪表的下限A0所对应的AD转换值N0置为0,也即使N0=0。 这样式(7-15)可写成(7-16)在很多测量系统中,仪表下限值A0=0,此时对应的N0=0,式(7-16)可进一步简化为 (7-17)式(7-15)、(7-16)
15、、(7-17)即为在不同情况下的线性参数的标度变换公式。,微机控制技术,7.2.1 线性参数标度变换,例某压力测量仪表的量程为4001200Pa,采用8位A/D转换器,设某采样周期计算机中经采样及数字滤波后的数字量为ABH,求此时的压力值。解:根据题意,已知A0=400Pa,Am=1200Pa, Nx=ABH=(171)D,选Nm=FFH=255D,N0=0,所以采用公式(7-16),则,微机控制技术,7.2.2 非线性参数标度变换,必须指出,前面讲的标度变换公式,只适用于线性变化的参量。如果被测参数为非线性,上面的三个公式均不再适用,需重新建立标度变换公式。一般而言,非线性参数的变化规律各不
16、相同,故其标度变换公式亦需根据各自的具体情况建立。,微机控制技术,1公式变换法 条件-传感器的输出信号与被测参数之间呈非线性关系, 但函数关系可用解析式来表示。 例如,在流量测量中,流量与差压间的关系式为 (7-21)式中, Q: 流量;K: 刻度系数,与流体的性质及节流装置 的尺寸相关;P:节流装置的差压。,微机控制技术,7.2.2 非线性参数标度变换,7.2.2 非线性参数标度变换,可见,流体的流量与被测流体流过节流装置前后产生的压力差的平方根成正比,于是得到测量流量时的标度变换公式为 (7-22)式中, 被测流体的流量值流量仪表的上限值流量仪表的下限值差压变送器所测得的差压值(数字量);
17、差压变送器上限所对应的数字量;差压变送器下限所对应的数字量。,微机控制技术,7.2.2 非线性参数标度变换,非线性参数标度变换子程序,change(float Qm, float Q0, char Nm, char N0, char Nx) float K1, b,t,i,j,Qx;t= Nm-N0;b=sqrt(t);K1=(Qm-Q0)/b;i=Nx-N0;j=sqt(i);Qx= K1j+Q0;return(Qx); ,7.2.2 非线性参数标度变换,对于流量仪表,一般下限皆为0,即Q0=0,所以,式(7-22)可简化为 (7-23)若取流量表下限对应的数字量N0=0,更可进一步简化公式
18、: (7-24)式(7-22),(7-23),(7-24)即为不同初始条件下的流量标度变换公式。,微机控制技术,2其它标度变换法许多非线性传感器并不象上面讲的流量传感器 那样,可以写出一个简单的公式或者虽然能够写出,但计算相当困难。这时可采用线性插值法或查表法 进行标度变换。,微机控制技术,7.2.2 非线性参数标度变换, 插值法 线性插值算法 用计算机处理非线性函数应用最多的方法是线性插值法。线性插值法是代数插值法中最简单的形式。假设变量和自变量的关系如图7-13所示。,微机控制技术,7.2.2 非线性参数标度变换,图7-11 线性插值法示意图,微机控制技术,7.2.2 非线性参数标度变换,
19、已知y在点x0和x1的对应值分别为y0和y1。现在,用直线AB代替弧线AB,由此可得直线方程 (7-28)根据插值条件,应满足: (7-29) 解方程组(7-29),可求出直线方程的参数a和b。由此可求出该直线方程的表达式为 (7-30),微机控制技术,7.2.2 非线性参数标度变换,式中 ,称为直线方程的斜率。式(7-30)为点斜式直线方程.,微机控制技术,7.2.2 非线性参数标度变换,插值点y0和y1之间的间距越小,那么在这一区间g(x)和f(x)之间的误差越小。 只要误差在允许的范围内,即可用几条直线来代替曲线。此方法称为分段插值法。,讨论:,微机控制技术,7.2.2 非线性参数标度变
20、换, 分段插值算法 分段插值法的基本思想是将被逼近的函数(或测量结果)根据其变化情况分成几段,各段可根据精度要求采用不同的逼近公式。最常用的是:线性插值和抛物线插值。关于抛物线插值算法,读者可参阅2。,微机控制技术,7.2.2 非线性参数标度变换,分段插值法程序设计步骤如下:(1)用实验法测量出传感器的输出变化曲线,或各插值节点的值 。为使测量结果更接近实际值,要反复进行测量,以便求出 一个比较精确的输入输出曲线。(2)将上述曲线进行分段,选取各插值基点。为了使基点的选取更合理,可根据不同的方法分段。主要有两种方法:,微机控制技术,7.2.2 非线性参数标度变换, 等距分段法插值基点等距离。优
21、点是使 常数, 过程简化。但是,当函数的曲率和斜率变化比较大时,将会产生一定的误差。要想减小误差,必须把基点分得很细,这样,势必占用更多的内存,并使计算机的开销加大。 非等距分段法函数基点的分段不是等距的,而是根据函数曲线形状的变化率的大小来修正插值间的距离。曲率变化大的,插值距离小一点。非等距插值点的选取比较麻烦。,微机控制技术,7.2.2 非线性参数标度变换,(3)根据各插值基点的 值,使用相应的插值公式,求出模拟 的近似表达式 。(4)根据 编写出汇编语言应用程序。用式(7-30)进行计算比较简单,只须进行一次减法,一次乘法和一次加法运算即可。,微机控制技术,7.2.2 非线性参数标度变
22、换,在用分段法进行程序设计之前,必须首先判断 输入值Xi处于哪一段。为此,需将Xi与各分点值进行比较,以便判断出该点所在的区间。然后,转到该段逼近公式进行计算。,微机控制技术,7.2.2 非线性参数标度变换,(2) 查表法,7.2.2 非线性参数标度变换,查表法- 就是把事先计算或测得的数据按照一定顺序编制成 表格查表程序的任务- 就是根据被测参数的值或者中间结果, 查出最终所需要的结果。查表方法-顺序查表法,计算查表法,对分搜索法等。,微机控制技术,7.2.2 非线性参数标度变换, 顺序查表法,顺序查表法是针对无序排列表格的一种方法。 其查表方法类似人工查表。因为无序表格中所有各项的排列均无
23、一定的规律,所以只能按照顺序从第一项开始逐项寻找,直到找到所要查找的关键字为止。 顺序查表法虽然比较“笨”,但对于无序表格或较短表格而言,仍是一种比较常用的方法。, 计算查表法,根据所给的数据元素Xi ,通过一定的计算,求出 元素Xi所对应的数值的地址,然后将该地址单元的内容取出即可。,这种有序表格要求各元素在表中的排列格式及所 占用的空间必须一致,而且各元素是严格按顺序排列。其关键在于找出一个计算表地址的公式,只要公式存在,查表的时间与表格的长度无关。正因为它对表格的要求比较严格,并非任何表格均可采用。通常它适用于某些数值计算程序、功能键地址转移程序以及数码转换程序等。,7.2.2 非线性参
24、数标度变换,微机控制技术,7.2.2 非线性参数标度变换, 对分查表法,先取数组的中间值D=n/2进行查找,与要搜索的 X值进行比较,若相等,则查到。对于从小到大的顺序来说,如果Xn/2项,则下 一次取n/2-n间的中值,即3n/4与X进行比较;若Xn/2项,则取0n/2的中值,即n/4与X进行 比较。如此比较下去,则可逐次逼近要搜索的关键字, 直到找到为止。,7.3 越限报警处理,在微型机控制系统中,为了安全,对于一些重要的参数或系统部位,都设有紧急状态报警系统,以便提醒操作人员注意或采取紧急措施。,7.3 越限报警处理,7.3.1 越限报警方式7.3.2 越限报警程序,7.3.1 越限报警
25、方式,在控制系统中通常可采用 声音 如:电铃、电笛、蜂鸣器、集成电子音乐芯片等。 光 如:发光二极管或闪烁的白炽灯等 语音报警如:语音芯片等 图形与声音混合报警如:显示报警画面(如报警发生的顺序、报警发生 的时间、报警回路编号、报警内容及次数等)。,7.3.1 越限报警方式,1普通声光报警,7.3.1 越限报警方式,2模拟声光报警,常采用模拟声音集成电路芯片,如 KD-956X 系列芯片。,图 KD-9561的外形和报警电路图,7.3.1 越限报警方式,表1 KD-956系列报警芯片功能表,7.3.1 越限报警方式,表2 KD956X 系列报警芯片功能表,7.3.1 越限报警方式,3、语音报警,图 语音芯片与单片机的连接框图,软件报警程序这种方法的基本作法是把被测参数如温度、压力、流量、速度、成分等参数,经传感器,变送器、模数转换器,送到微型机后,再与规定的上、下限值进行 比较,根据比较的结果进行报警或处理,整个过程都 由软件实现。这种报警程序又可分简单上、下限报警程序,以及上、下限报警处理程序。,7.3.2 越限报警程序,7.3.2 越限报警程序,上限报警:若XK XH则发出上限报警,否则继续执行原定操作。下限报警:若XK XL ,则下限报警,否则继续执行原定操作。上下限报警:若XK XH,则上限报警,否则判断XK XL否?若是则下限报警,否则继续执行原定操作。,报警流程图,