QQ登录

只需要一步,快速开始

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

[原创]软件滤波

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

1

主题

0

听众

18

积分

升级  13.68%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2005-4-4 12:08 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
软件滤波方法
" N$ |( H. ~5 j( v( y0 H: S" b* c0 k1 g& e
第1种方法、限幅滤波法(又称程序判断滤波法)! k/ L# x, N. J1 T
A、方法:
: E" K! k) \2 i, S根据经验判断,确定两次采样允许的最大偏差值(设为A)
2 t" R3 D' k( p- h; e, a" C2 M每次检测到新值时判断:
$ z0 N5 M" g# \* f( B) N. N如果本次值与上次值之差<=A,则本次值有效
: g9 D8 u/ g' w7 {3 R) S如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值
; i8 ^8 n1 x% u9 v' g  h5 sB、优点:
! d9 |9 P' r! R5 w能有效克服因偶然因素引起的脉冲干扰
/ a1 i# ?7 T, r7 Q! H2 ~/ eC、缺点
# a0 a9 W: ^. w  h& S" Z无法抑制那种周期性的干扰
& |: W( U$ e  s9 x平滑度差
' `3 s# K0 _/ |  n, K! w
8 _* i) _8 L9 M' b+ A: b4 V6 i第2种方法、中位值滤波法
: \1 j9 z) m  z: N4 O/ rA、方法:
5 L9 S" W3 A, m, T4 x, e连续采样N次(N取奇数)/ S. ?6 u. M: }9 Y1 a3 w& B
把N次采样值按大小排列  ?% w9 n; U4 r, a
取中间值为本次有效值4 F( d* M# n  ]- T; }% Y8 E2 j
B、优点:' t  a3 h* }; l# l( D" h
能有效克服因偶然因素引起的波动干扰/ d) U# g# c. G
对温度、液位的变化缓慢的被测参数有良好的滤波效果
" o% m  ~/ y  Y$ t* A2 n& \. MC、缺点:9 U; W/ ~1 |7 ]; L6 `
对流量、速度等快速变化的参数不宜
! E1 x3 B- T( ?* f
% V  k! t1 z5 ~第3种方法、算术平均滤波法% `3 I: j% ?5 t$ n! H; L; Y
A、方法:% D3 W, g) s' y7 H, z
连续取N个采样值进行算术平均运算
; K: {# d. D5 u$ hN值较大时:信号平滑度较高,但灵敏度较低
. i8 ^7 k* s, [4 l8 ^& l* ZN值较小时:信号平滑度较低,但灵敏度较高
2 w0 ~! g, F# O  ~0 S& P! kN值的选取:一般流量,N=12;压力:N=4
7 j3 t9 I" t# O( P( O, v! D: wB、优点:
9 f  W- S: a& |3 J8 E适用于对一般具有随机干扰的信号进行滤波3 t  J, V9 t% `9 b  x. M3 M  g
这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动
" ^7 J9 q2 S3 @/ W, S: ZC、缺点:
8 a/ ]" g, I' Z! S  Z5 d对于测量速度较慢或要求数据计算速度较快的实时控制不适用
- o" I% e0 z; j. z6 i比较浪费RAM
( p; [  c, x' I& O/ y7 c( G% _/ ^* S! j) [5 c
第4种方法、递推平均滤波法(又称滑动平均滤波法). K( k; F4 X) X8 W
A、方法:' j1 Q. Y/ ?2 e; {
把连续取N个采样值看成一个队列
5 @, J0 z0 N5 j! i: e& ]: u8 K/ \队列的长度固定为N% E# v- C7 L6 K. d5 x
每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则): M# |/ Y$ D4 i3 E) |& m! o2 x
把队列中的N个数据进行算术平均运算,就可获得新的滤波结果
$ z( d, S$ s7 V. xN值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4
6 t  M) X7 j9 }0 N9 b% HB、优点:
- s% _( `3 m7 G对周期性干扰有良好的抑制作用,平滑度高
( g& z- O' ]2 K% [4 G适用于高频振荡的系统 : {" R% c0 Z: F5 q1 s( [+ b
C、缺点:2 l8 t( h$ _/ z* P
灵敏度低! d( q* D2 Z6 g( U' E1 ~; {; ?
对偶然出现的脉冲性干扰的抑制作用较差5 e( z3 Y1 I; S* Y- c
不易消除由于脉冲干扰所引起的采样值偏差' ]5 ]$ H+ D" J7 T7 D
不适用于脉冲干扰比较严重的场合. {9 {- I" g% Q
比较浪费RAM
/ U& h% X4 s6 G* I% J5 i- w0 E8 O0 U' e- \% e$ M' `  m& p) B1 t. E6 j* S
第5种方法、中位值平均滤波法(又称防脉冲干扰平均滤波法)
) U1 ^1 m% f0 A$ A( k- m( i. VA、方法:& x! k  c$ C2 o5 g) Y# {
相当于“中位值滤波法”+“算术平均滤波法”
$ n+ e7 ~# T8 s0 K/ ^2 ]连续采样N个数据,去掉一个最大值和一个最小值
9 N  W( l7 p" ?' s4 N+ d% U然后计算N-2个数据的算术平均值" X7 b' k+ S, N1 T0 z
N值的选取:3~14
+ w  {. Y; d+ J, uB、优点:3 \8 U# R0 K9 B* c) L) O6 p
融合了两种滤波法的优点0 L4 e1 I: W. }3 X
对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差
( X$ N+ P) Q  @0 T' r, I; AC、缺点:# S6 U9 I8 V$ ]1 P1 S4 A
测量速度较慢,和算术平均滤波法一样
( q  @! y( ?4 j比较浪费RAM
/ {$ k4 W0 E1 q$ F" t( d4 T9 R5 j- R/ T$ q0 C

5 O* e% L! N4 m: T0 x" i第6种方法、限幅平均滤波法
' W: M$ Q6 K6 _3 KA、方法:! L+ K  _- L5 Y$ V5 Z, m& b' h
相当于“限幅滤波法”+“递推平均滤波法”
/ T( [  x$ t8 e" c, ~  G6 N9 `每次采样到的新数据先进行限幅处理,& z! w- i+ Z+ ^4 t- O4 a2 K6 |4 f4 n
再送入队列进行递推平均滤波处理
  h* i& J# D7 Q. u4 CB、优点:
) X- B) ]0 H- w& X) [, B融合了两种滤波法的优点
6 \) |  G' N) H8 \9 @: b对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差+ x2 `( L/ F: z: S5 Y& W- k! U
C、缺点:+ {$ F2 _/ F" M+ B3 a$ o) p
比较浪费RAM% @+ Q6 ]* J. v, n/ }! n. w' b
1 f/ y* t" E: l, u0 m& R
第7种方法、一阶滞后滤波法
" c( M, k; f7 ]( S9 m. lA、方法:
  E$ z! t8 |$ x% x5 |取a=0~1
5 B4 \9 o% S7 k& g0 M- O, v$ l+ I, E本次滤波结果=(1-a)*本次采样值+a*上次滤波结果
/ `1 ^6 J$ W, q9 C  wB、优点:
# i3 S. M5 i- a* q) m  M) w对周期性干扰具有良好的抑制作用
) u% K) o, ^. e8 v适用于波动频率较高的场合4 O) F+ i  U$ R& \- }
C、缺点:
2 w: `, q% P6 F相位滞后,灵敏度低
3 ~: ]4 Y8 A4 b滞后程度取决于a值大小
5 x. r; @% K! D/ F2 A& y, l2 e不能消除滤波频率高于采样频率的1/2的干扰信号
7 {" e3 l3 H5 C7 i# j8 E- i  T8 t5 W6 u, @/ o4 }# {! h1 f. H
第8种方法、加权递推平均滤波法
. Z- M8 |) R# F1 f) qA、方法:
+ x0 i- k0 U% b+ q是对递推平均滤波法的改进,即不同时刻的数据加以不同的权" X9 A& `# a2 A  _7 {" L
通常是,越接近现时刻的数据,权取得越大。! @: q) O% Y+ T3 U6 h$ ]# z
给予新采样值的权系数越大,则灵敏度越高,但信号平滑度越低
5 |1 K7 j# c2 y; v2 `) }- y: tB、优点:) y6 ]5 v; D5 C
适用于有较大纯滞后时间常数的对象
4 H0 a- [$ L5 j0 Z和采样周期较短的系统
) _; W/ k( S. U: E+ |8 F2 SC、缺点:
: G8 l* a& v- A6 a& a4 v; ~对于纯滞后时间常数较小,采样周期较长,变化缓慢的信号
  e# j. d& V1 {% |1 C8 ]2 A不能迅速反应系统当前所受干扰的严重程度,滤波效果差( {3 @  T! O, U5 b4 R5 F
* @7 g9 y4 X, }9 j) t% M
第9种方法、消抖滤波法
6 d# Y' S/ e" K+ R* }* VA、方法:) N8 h9 O6 E7 e
设置一个滤波计数器
; h4 ?& l1 ~, `将每次采样值与当前有效值比较:
+ m; h$ I" k6 q( U) \' Y) U如果采样值=当前有效值,则计数器清零$ m- p- \2 `/ Q" u$ R3 u: f
如果采样值<>当前有效值,则计数器+1,并判断计数器是否>=上限N(溢出)
+ R8 L; w4 {3 m8 Z  [如果计数器溢出,则将本次值替换当前有效值,并清计数器
" c' T3 @% r  C! |* G+ MB、优点:1 u( y) R9 A1 y+ V' v
对于变化缓慢的被测参数有较好的滤波效果,
. J0 r$ {/ C! g9 o+ \可避免在临界值附近控制器的反复开/关跳动或显示器上数值抖动8 S# u9 H9 l( _6 |, O3 x
C、缺点:
- x8 `/ q; q% E! I  y3 D对于快速变化的参数不宜4 s4 w9 V$ a/ _
如果在计数器溢出的那一次采样到的值恰好是干扰值,则会将干扰值当作有效值导入系统. {. D5 V" A2 `- l5 M

  n6 u" w: |0 a' q$ J第10种方法、限幅消抖滤波法# s$ z% X6 I" [1 C* a& |" [
A、方法:5 `) X$ G& E' Q& c3 \. g3 C
相当于“限幅滤波法”+“消抖滤波法”  V* S1 K+ v* X1 E
先限幅,后消抖
* X0 p% O0 ~, x1 O8 q1 BB、优点:* z7 k! f4 E/ X! ]3 \6 U' d
继承了“限幅”和“消抖”的优点
  ~  r" a! m0 k% Z5 T9 }改进了“消抖滤波法”中的某些缺陷,避免将干扰值导入系统
7 T' w/ g; \' d9 B2 i2 [C、缺点:
5 }3 u" {: i0 j5 k5 L对于快速变化的参数不宜  q3 e9 B3 c$ D" ^% c" K
( ?+ H" F0 r8 ?2 D8 `8 t

5 P* J4 r' D" q8 R第11种方法:IIR 数字滤波器 ( ^. w8 N7 V0 T( t! S

; ]2 D, [  I1 _* w' B, sA. 方法:
2 @' @& C* O% f0 @/ S9 T确定信号带宽, 滤之。3 K7 V+ ^! {6 q9 U; U$ J
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)  [) ~8 P2 ~  q/ m8 o9 c; R6 M
8 Z/ Q& K2 l6 Y/ t$ M
B. 优点:高通,低通,带通,带阻任意。设计简单(用matlab)
+ |+ n* a$ ?/ r1 B$ J& `8 X8 gC. 缺点:运算量大。
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 08:18 , Processed in 0.647213 second(s), 60 queries .

    回顶部