《克服随机误差的软件算法精选PPT.ppt》由会员分享,可在线阅读,更多相关《克服随机误差的软件算法精选PPT.ppt(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、克服随机误差的软件算法第1页,此课件共15页哦4.1 4.1 克服随机误差的软件算法克服随机误差的软件算法 随机误差是由窜入仪表的随机干扰所引起,这种误随机误差是由窜入仪表的随机干扰所引起,这种误差是指在相同条件下测量同一量时,其大小和符号作无差是指在相同条件下测量同一量时,其大小和符号作无规则的变化而无法预测,但在多次测量中它是符合统计规则的变化而无法预测,但在多次测量中它是符合统计规律的误差。规律的误差。为为了克服随机干了克服随机干扰扰引入的引入的误误差,首先必差,首先必须须在在仪仪器器的的结结构和构和电电路上采取各种防路上采取各种防护护干干扰扰的措施和方法。减的措施和方法。减小外界干小外
2、界干扰对仪扰对仪器的影响器的影响(如,屏蔽、如,屏蔽、滤滤波等波等)在此基在此基础础上再按上再按统计规统计规律用律用软软件算法来件算法来进进一步抑制有效信号中的一步抑制有效信号中的干干扰扰成分,消除随机成分,消除随机误误差,以保差,以保证证系系统统的正常,可靠运的正常,可靠运行。行。第2页,此课件共15页哦 采采用用数数字字滤滤波波算算法法克克服服随随机机干干扰扰引引入入的的误误差差具具有有如下优点:如下优点:(1)(1)数数字字滤滤波波无无需需硬硬件件,只只是是一一个个计计算算过过程程,因因此此可可靠靠性性高高,不不存存在在阻阻抗抗匹匹配配问问题题,尤尤其其是是数数字字滤滤波波可可以以对对频
3、频率率很很高高或很低的信号进行滤波,这是模拟滤波器所不及的。或很低的信号进行滤波,这是模拟滤波器所不及的。(2)(2)数数字字滤滤波波是是用用软软件件算算法法实实现现的的。因因此此可可以以使使多多个个输输入入通通道道共共用用一一个个软软件件“滤滤波波器器”,从从而而降降低低仪仪器器仪仪表表的硬件成本。的硬件成本。(3)(3)只要适当改变软件滤波器的滤波程序或运算参数,就只要适当改变软件滤波器的滤波程序或运算参数,就能方便地改变滤波特性,这对于低频,脉冲干扰,随机噪声能方便地改变滤波特性,这对于低频,脉冲干扰,随机噪声特别有效。特别有效。第3页,此课件共15页哦一、一阶惯性滤波一、一阶惯性滤波进
4、进行数字化行数字化处理:处理:第4页,此课件共15页哦设:得:而且 若取采样间隔t足够小,则atRC,滤波器的截止频率为:一阶惯性滤波算法适用滤波常数要求较大的场合,且对于周期干扰具有良好的抑制作用。第5页,此课件共15页哦二、限幅滤波二、限幅滤波 基本方法是比较相邻基本方法是比较相邻(n(n和和n-1n-1时刻时刻)的两个采样值的两个采样值 和和 ,如如果果它它们们的的差差值值过过大大,超超过过了了参参数数可可能能的的最最大大变变化化范范围围,则则认认为为发发生生了了随随机机干干扰扰,并并视视后后一一次次采采样样值值 为为非非法值,应予剔除,法值,应予剔除,作废后,可以用作废后,可以用 替替
5、代代 ,或或采采用用递递推推方方法法由由 ,(n-1,n-2(n-1,n-2时时刻的滤波值刻的滤波值)来近似推出,其相应算法为:来近似推出,其相应算法为:上上式式中中a a表表示示相相邻邻两两个个采采样样值值之之差差的的最最大大可可能能变变化化范范围围,上上述述限限幅幅滤滤波波算算法法很很容容易易用用程程序序判判断断的的方方法法实实现现,故故又称程序判断法。又称程序判断法。第6页,此课件共15页哦 设设Data1Data1和和Data2Data2为为内内部部RAMRAM单单元元,分分别别存存放放上上次次滤滤波波值值 和和本本次次采采样样值值 ,滤滤波波值值也也存存入入Data2Data2单单元
6、元(均均为为单单字字节节),则实现算法的程序如下所示:,则实现算法的程序如下所示:PRODET:MOV A,DATA2PRODET:MOV A,DATA2 CLR C CLR C SUBB A,DATA1 SUBB A,DATA1 JNC PRODT1 JNC PRODT1;若若 转转PRODT1PRODT1 CPL A CPL A ;若若 则求补则求补 INC AINC A PRODT1:CJNE A,#a,PRODT2 ;PRODT1:CJNE A,#a,PRODT2 ;若若 转转PRODT2PRODT2 AJMP DONE AJMP DONE PRODT2 PRODT2:JC DONE
7、;JC DONE ;若若 转转DONEDONE MOVE DATA2 MOVE DATA2,DATA1;DATA1;否则否则 DONEDONE:RET RET 第7页,此课件共15页哦三、中位三、中位值滤值滤波波 中位值滤波是对某一被测参数连续采样中位值滤波是对某一被测参数连续采样n n次次(一般一般n n取取奇数奇数),然后把,然后把n n次采样值按大小排列,取中间值为本次采样次采样值按大小排列,取中间值为本次采样值。值。中位值滤波能有效地克服偶然因素引起的波动或采样中位值滤波能有效地克服偶然因素引起的波动或采样器不稳定引起的误码等脉冲干扰。器不稳定引起的误码等脉冲干扰。对对温度,液位等温度
8、,液位等缓缓慢慢变变化的被化的被测测参数,采用此法能收到参数,采用此法能收到良好的良好的滤滤波效果,但波效果,但对对于流量,于流量,压压力等快速力等快速变变化的参数一般化的参数一般不宜采用中位不宜采用中位值滤值滤波。波。设设SAMPSAMP为为存放采存放采样值样值的内存的内存单单元首地址,元首地址,DATADATA为为存放存放滤滤波波值值的内存的内存单单元地址,元地址,N N为为采采样值样值个数,中位个数,中位值滤值滤波程序如波程序如下:下:第8页,此课件共15页哦FILTER:MOV R3,#N-1 FILTER:MOV R3,#N-1 ;置循环初值;置循环初值SORT:MOV R2,R3
9、SORT:MOV R2,R3 ;循环次数送;循环次数送R2R2 MOV R0,#SAMP MOV R0,#SAMP ;采样值首地址送;采样值首地址送R0R0LOOP:MOV A,R0LOOP:MOV A,R0 INC R0 INC R0 CLR C CLR C SUBB A,R0 SUBB A,R0 ;yn-yn-1Ayn-yn-1A JC DONE JC DONE ;ynyn-1yn C1 .Cn-1 0 选择权系数Ci的灵活性很大,一般要通过多次试验才能确定。第14页,此课件共15页哦七、中值平均滤波七、中值平均滤波 设设 N N次次 采采 样样 值值X X1 1,X,X2 2.X.XN N按按 大大 小小 顺顺 序序 排排 列列 为为X X1 1XX2 2XX3 3.X.XN N,把把最最小小的的X X1 1和和最最大大的的X XN N去去掉掉,剩剩下下的的取取算术平均值即为滤波后的值算术平均值即为滤波后的值y y,即:,即:这这种方法即能种方法即能滤滤除脉冲干除脉冲干扰扰,又能平滑,又能平滑滤滤波,即波,即对对快、快、慢干慢干扰扰均有效果。均有效果。第15页,此课件共15页哦
限制150内