QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5090|回复: 1
打印 上一主题 下一主题

[原创]软件滤波

[复制链接]
字体大小: 正常 放大
xjq2005        

1

主题

0

听众

18

积分

升级  13.68%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2005-4-4 12:08 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
软件滤波方法+ `6 ?( _- u' S
: l' J2 X( Y# v. J' w: u
第1种方法、限幅滤波法(又称程序判断滤波法)
' ~. x$ b- [% _% ~A、方法:
4 \5 L6 h$ O  t' @4 z# f根据经验判断,确定两次采样允许的最大偏差值(设为A)3 p; p% B* m/ e
每次检测到新值时判断:
& h0 y: b* P/ v# y& e% \+ |' g5 v如果本次值与上次值之差<=A,则本次值有效
% D% Z4 I( l1 z$ g& w如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值
: ~! z' ?4 Z& I. i5 pB、优点:. N, H- e9 M! G0 o, T
能有效克服因偶然因素引起的脉冲干扰
; _$ T# |. z6 P( s9 b' pC、缺点
1 b# L2 q: R1 [0 @无法抑制那种周期性的干扰
+ J$ D  G0 c$ g, e! s( q平滑度差
6 o2 T, [: z! V% T/ E
5 a" l: g' b# o1 w( H第2种方法、中位值滤波法
# }9 n$ T# o4 t2 \' M" e+ MA、方法:
2 J/ a1 Q4 e6 h6 W- [$ G2 j连续采样N次(N取奇数), O( x! h& T1 K9 i/ G9 A/ U" _
把N次采样值按大小排列
# k5 A  I- {! o/ m7 I# Q取中间值为本次有效值& Q4 O8 t. j" N( |& m) T: W
B、优点:( V8 ?0 J' @2 ~4 Y. \4 M, a
能有效克服因偶然因素引起的波动干扰# h, p3 Y" f1 M5 u4 J: x7 Z
对温度、液位的变化缓慢的被测参数有良好的滤波效果; N" t, n# {, G
C、缺点:
0 n# m$ t% d5 Q对流量、速度等快速变化的参数不宜
7 q3 h0 n+ h( L7 y0 v0 \- B8 _$ u* A1 q! b$ n; d9 J/ s7 q
第3种方法、算术平均滤波法
' q3 G- w4 A1 _A、方法:
* b, z" g4 K3 }连续取N个采样值进行算术平均运算
, E; j. q$ [2 @0 k' xN值较大时:信号平滑度较高,但灵敏度较低) U$ P- B5 q, G  U9 `
N值较小时:信号平滑度较低,但灵敏度较高
0 ?5 e1 k: {- X" ?N值的选取:一般流量,N=12;压力:N=4, m3 [1 n( Q+ p2 m" ~
B、优点:
2 p$ c: B3 a$ }2 |  w6 L8 r4 h适用于对一般具有随机干扰的信号进行滤波* ?* r4 O, w: B/ U7 w5 t
这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动
! m8 K' g9 g8 k& B8 kC、缺点:
8 ?9 h0 z+ J5 S6 i# D, d对于测量速度较慢或要求数据计算速度较快的实时控制不适用
. p. @  G# p6 A5 A6 {* L4 P比较浪费RAM2 B$ H" i' N4 d  M1 [

9 S" R; S: @/ ]2 b第4种方法、递推平均滤波法(又称滑动平均滤波法)
% i- f8 s0 T6 R7 L0 G1 ~6 uA、方法:( A/ {8 b9 Q- J. N; X% A( H
把连续取N个采样值看成一个队列
5 J. v: Q& c1 A; }) U4 q; D队列的长度固定为N! O. M  r( }  M: t4 S" \* p
每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则)
1 @1 u6 X$ V0 T" e把队列中的N个数据进行算术平均运算,就可获得新的滤波结果5 k/ w1 K. v7 n0 b# h9 W  t" `
N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4
: ]; X/ q. _' vB、优点:4 X/ k. H1 Q6 g+ m5 g) \1 y6 Q
对周期性干扰有良好的抑制作用,平滑度高6 b0 n" g9 S2 ]% L0 E% O9 }
适用于高频振荡的系统 " d$ ]1 p! d* A8 Y' @
C、缺点:
# L) d# g. G3 x# {7 Z灵敏度低4 S* v9 y, N9 C, [$ o- _4 t0 w
对偶然出现的脉冲性干扰的抑制作用较差1 K/ |0 U; r9 @' f" Y; a9 s
不易消除由于脉冲干扰所引起的采样值偏差$ [/ n* L2 v% a8 u4 ]
不适用于脉冲干扰比较严重的场合
, u% u. S3 ]6 ^' Y/ l  b0 w比较浪费RAM
+ {  e: q' P* X1 V( s0 p
0 \* X7 u; e9 }4 v9 @第5种方法、中位值平均滤波法(又称防脉冲干扰平均滤波法)
9 e6 B* P5 Z2 p& M0 l0 R* t8 KA、方法:
" U% ~: g6 [) R" M  B相当于“中位值滤波法”+“算术平均滤波法”
) Z/ p, Y+ }0 ]) {8 M" y, D连续采样N个数据,去掉一个最大值和一个最小值+ ]% F# D% r4 q/ b/ ?" E
然后计算N-2个数据的算术平均值
: M# o5 _% w  {& `! m( eN值的选取:3~14) Y8 W. T2 o0 D8 ^9 U- _! i5 m. F& }
B、优点:
* \0 }3 i: u$ Y. U+ Q3 e0 U5 l融合了两种滤波法的优点8 w# }8 o1 a! h' ?3 a8 d8 b
对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差
- S! I4 e4 q5 P7 Z; cC、缺点:, @8 U2 p3 [" \9 g! p+ O6 s  u2 h
测量速度较慢,和算术平均滤波法一样
4 G3 g9 }+ b! D! c, ]比较浪费RAM
. o5 n9 n( J7 q' Z; q+ `$ C) W, U  ?/ A+ N  O

$ M- @# V7 ^0 _' M6 N( R3 V第6种方法、限幅平均滤波法
& q6 u$ p. T2 M& |: }: A; X0 JA、方法:
, M% s$ N# B  R+ V: n8 ~3 @6 F相当于“限幅滤波法”+“递推平均滤波法”9 R8 ?1 ]6 H$ K1 u; C+ P
每次采样到的新数据先进行限幅处理," p1 O$ p% A" t9 b# j4 ?
再送入队列进行递推平均滤波处理, b8 V. ^& I# F& \& {
B、优点:$ {- ?1 B% e* r
融合了两种滤波法的优点' g; G2 k8 W8 k# }3 k4 [
对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差
# \% p" u$ v( hC、缺点:" g5 i  Y' O  y6 z* Q
比较浪费RAM
/ c7 H; ^! }1 ?
0 {3 Q% v) B- J, h  r2 k  K2 o第7种方法、一阶滞后滤波法* b( o1 a! _' `5 |3 V
A、方法:) l4 t! F- p) q) W3 o9 A; X1 Q  M
取a=0~1
) q" e$ K8 u1 h/ \  w' s本次滤波结果=(1-a)*本次采样值+a*上次滤波结果- _0 x! o; d; c, @3 d
B、优点:' i, S% z, d: {& y% t: j
对周期性干扰具有良好的抑制作用' }+ }5 v' B. |& J4 L1 j
适用于波动频率较高的场合9 E* T4 i# n3 N  j0 h9 L# k- B
C、缺点:( Q7 ^" c0 A; R1 b+ q3 A* r
相位滞后,灵敏度低
$ C3 {" @3 B( N1 W滞后程度取决于a值大小5 j+ i: @. b, i, \5 G! H. a
不能消除滤波频率高于采样频率的1/2的干扰信号% V/ [3 W/ ^0 l3 s* ~7 T

' S! z. n6 c5 Z% {) O+ a7 M第8种方法、加权递推平均滤波法& z+ ^4 j: f+ W& n9 h8 [) P/ A9 v
A、方法:
) V3 T5 o$ B1 Y$ Z& H# Y# ]是对递推平均滤波法的改进,即不同时刻的数据加以不同的权
! t" o7 ]: Q- o# S% H通常是,越接近现时刻的数据,权取得越大。
$ n9 O: E1 D& d5 i给予新采样值的权系数越大,则灵敏度越高,但信号平滑度越低, U0 o: Q# s" M- V
B、优点:
7 ]. q0 t9 B7 }+ C! v适用于有较大纯滞后时间常数的对象5 K/ l9 R/ `1 @9 E
和采样周期较短的系统
% `, Z/ i; F. @7 P, xC、缺点:* K( l, ?) b! L; R3 P& J2 S2 s
对于纯滞后时间常数较小,采样周期较长,变化缓慢的信号9 T- I" \% n: w- V+ L- n+ h
不能迅速反应系统当前所受干扰的严重程度,滤波效果差
1 S" n' O1 s& n6 i+ {+ b8 y' m! l# t3 r7 T/ t3 |! O# }
第9种方法、消抖滤波法, t$ c, ?/ e) C0 A- T/ V6 m- z6 Q1 P
A、方法:! N0 E- P( v$ C$ _! T% ~! g% S
设置一个滤波计数器2 L3 r0 O1 H6 h  }: Y, S
将每次采样值与当前有效值比较:
8 F% b; e$ Y  X' y3 D9 b  U- [如果采样值=当前有效值,则计数器清零5 V8 ?2 C  T" m0 g  U0 |0 R; i
如果采样值<>当前有效值,则计数器+1,并判断计数器是否>=上限N(溢出)  ?: ]; w9 P9 b3 [. C- C! Q
如果计数器溢出,则将本次值替换当前有效值,并清计数器7 q. Y% b( K0 R9 v" v
B、优点:
9 Q- `+ U( t: ]* E% n& L对于变化缓慢的被测参数有较好的滤波效果,
6 k* H3 |" Y8 w% T/ c$ R可避免在临界值附近控制器的反复开/关跳动或显示器上数值抖动
  C3 O6 q9 T4 U! f1 ZC、缺点:2 C* e# P5 r: \& h+ b5 K" c
对于快速变化的参数不宜
9 \& V3 R; W# U' b: S+ R. }) ~* U$ Q如果在计数器溢出的那一次采样到的值恰好是干扰值,则会将干扰值当作有效值导入系统
& [2 T  ]! s1 H$ N9 M
/ ]" M. ^4 I, O第10种方法、限幅消抖滤波法$ G1 K8 F* M1 S
A、方法:2 J! D! T1 i* |8 g: m9 \
相当于“限幅滤波法”+“消抖滤波法”' m5 d. H2 @& l$ B; j% ^5 Z; H) z1 {
先限幅,后消抖1 R! q4 u4 p1 K. N; v! D2 l1 l& j
B、优点:8 Z6 e; q3 v6 n4 Q6 M
继承了“限幅”和“消抖”的优点# b  H/ F. G' s4 j
改进了“消抖滤波法”中的某些缺陷,避免将干扰值导入系统
% @, ~) g% r1 [; {% I$ mC、缺点:. G0 D- {6 x+ d+ h
对于快速变化的参数不宜2 l* i+ a- ?( ~( i
$ Y( R- R4 a1 @0 Q

; P. v. C, u$ n" u第11种方法:IIR 数字滤波器
9 `; d5 x, @$ ]( o% q6 K6 [- U, p6 p; _
A. 方法:
0 o3 t) D9 u. ~- [确定信号带宽, 滤之。+ K7 d2 [3 a5 i$ C/ V
Y(n) = a1*Y(n-1) + a2*Y(n-2) + ... + ak*Y(n-k) + b0*X(n) + b1*X(n-1) + b2*X(n-2) + ... + bk*X(n-k)
' j: w. J/ R3 b/ V# v$ ?# |
8 f. o6 Q6 d5 L6 @B. 优点:高通,低通,带通,带阻任意。设计简单(用matlab)- L* p' T, E$ o+ z  `! o- L
C. 缺点:运算量大。
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
jin_geda        

0

主题

10

听众

425

积分

升级  41.67%

  • TA的每日心情
    开心
    2024-2-5 16:43
  • 签到天数: 118 天

    [LV.6]常住居民II

    自我介绍
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-7-20 06:02 , Processed in 0.874890 second(s), 61 queries .

    回顶部