QQ登录

只需要一步,快速开始

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

[原创]软件滤波

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

1

主题

0

听众

18

积分

升级  13.68%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2005-4-4 12:08 |只看该作者 |正序浏览
|招呼Ta 关注Ta
软件滤波方法
3 c7 g! l! W0 K5 f/ j& m' {# y$ W7 s* d& O# p
第1种方法、限幅滤波法(又称程序判断滤波法)  i0 Z! v) n+ T! p" @+ U
A、方法:' c1 e7 f: A$ ~! ^# F7 l' k
根据经验判断,确定两次采样允许的最大偏差值(设为A)0 P5 _+ i2 w9 B: s0 i5 x
每次检测到新值时判断:" G. g5 d$ R6 }3 i
如果本次值与上次值之差<=A,则本次值有效) S# h  l, s, t6 `- K6 v
如果本次值与上次值之差>A,则本次值无效,放弃本次值,用上次值代替本次值
* O' F, G6 Q; k5 E9 f9 KB、优点:
" x3 I, H" u7 X1 i能有效克服因偶然因素引起的脉冲干扰) \3 E% V  ^  R& g6 B1 |( k2 e. V
C、缺点3 M6 _8 b& _5 H% R. e4 o
无法抑制那种周期性的干扰
5 a+ @8 _0 x  q& m- A2 ?平滑度差' J! N  q& w; Q3 e, p! z

0 s9 D6 y; `& N' J第2种方法、中位值滤波法$ }9 |/ |( ]/ R* O) L% B! [  }
A、方法:
5 {* K5 b5 x( H! _连续采样N次(N取奇数): W* o6 Q( z' b/ [9 x$ [3 `
把N次采样值按大小排列0 s" G4 g+ d$ _, W5 J5 Q" B
取中间值为本次有效值4 c% y! P& T0 r
B、优点:# p: C, G: {' S+ g  i0 f% o
能有效克服因偶然因素引起的波动干扰4 v' y0 A1 _+ _+ N- ?* e
对温度、液位的变化缓慢的被测参数有良好的滤波效果
" o6 y3 N+ a$ ?& ]# f( nC、缺点:
! U" K, Q8 d* `, G对流量、速度等快速变化的参数不宜- l  V9 ?# `! K$ `1 y
7 Z) g. _! L4 O5 y' b
第3种方法、算术平均滤波法2 u1 o8 D! e/ ^& \+ c
A、方法:
4 ~8 B( F( h& _8 s7 |- S/ ^4 M连续取N个采样值进行算术平均运算
! Y9 x" N& x' ^( {1 w# o( UN值较大时:信号平滑度较高,但灵敏度较低
# e8 H8 ]; ~, o: ~9 i4 XN值较小时:信号平滑度较低,但灵敏度较高! U" t/ e, {; Y" T# ^. k1 o& V
N值的选取:一般流量,N=12;压力:N=4
! h) F! |. i, v1 n! B7 v% UB、优点:9 \9 x. o; ?6 f5 `) D9 ^
适用于对一般具有随机干扰的信号进行滤波
5 }& Y) |! b9 @/ k/ X这样信号的特点是有一个平均值,信号在某一数值范围附近上下波动6 q& w6 U# Z3 g( ]
C、缺点:
) {5 S5 h1 E$ o7 K对于测量速度较慢或要求数据计算速度较快的实时控制不适用
! Z, b2 u  j* C! K! ?/ w. A+ s比较浪费RAM
% n: W9 p/ i' S  i& Z
/ A; U5 }0 Y6 i+ k& c4 }第4种方法、递推平均滤波法(又称滑动平均滤波法)4 M+ Q7 X& ~- x2 I
A、方法:
7 M3 h+ c! Y& q, S  h把连续取N个采样值看成一个队列0 a1 m9 G  @2 j9 H2 h
队列的长度固定为N
1 R( h9 u* H  ^6 n2 G! n" P每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则)
" W( f. W3 N* V0 q. Z把队列中的N个数据进行算术平均运算,就可获得新的滤波结果: Q7 B& P3 B0 y! z/ U
N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4
+ a9 n8 L0 H3 VB、优点:. ?) R2 ]  K% V" s2 ^
对周期性干扰有良好的抑制作用,平滑度高
8 n' B) I3 O; X5 v# ~适用于高频振荡的系统 : |3 I0 l/ ?. j3 K
C、缺点:
* x. V2 Z8 M* G. N/ e. F3 @# R, K灵敏度低
. z! q/ t6 t/ _2 v对偶然出现的脉冲性干扰的抑制作用较差
1 H+ f, k) t- N0 K3 n不易消除由于脉冲干扰所引起的采样值偏差3 T$ o' H$ _6 B9 L7 N& G1 c
不适用于脉冲干扰比较严重的场合) J; m  _$ y' }
比较浪费RAM  j$ v. Q8 S0 n( |' y' U

3 }' e" L  A* j& O: r# q9 J. C第5种方法、中位值平均滤波法(又称防脉冲干扰平均滤波法)
5 Y5 ]4 s* D* I$ B9 CA、方法:
* K6 Z* s+ k7 P, i相当于“中位值滤波法”+“算术平均滤波法”3 P0 Q7 `0 j0 {5 C6 M
连续采样N个数据,去掉一个最大值和一个最小值4 I5 V: \: |7 W& F8 y
然后计算N-2个数据的算术平均值. V/ _3 _6 @7 b& Q& X
N值的选取:3~14
6 [. D1 H; F) k2 l0 yB、优点:1 o6 H. a: S2 V
融合了两种滤波法的优点+ e! x# G# |9 k; a- ~
对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差; B8 {* m: F3 n+ r- F
C、缺点:$ }7 B( w3 z2 ]) I/ O+ I$ D
测量速度较慢,和算术平均滤波法一样
7 A$ q$ b- T, i7 w& S- a比较浪费RAM+ s! o8 ]) n" }% o) j

& [. t) \0 R" H  B1 e+ ]& B
+ S: D; z6 _2 i8 D3 q# u第6种方法、限幅平均滤波法
! t' J4 ^" K' H. u4 ]4 \# [6 ^& gA、方法:& A5 t/ S# i7 e/ r+ ?# S, N1 P
相当于“限幅滤波法”+“递推平均滤波法”
. ]+ d8 }# V2 C每次采样到的新数据先进行限幅处理,
. i* p! a8 M5 n" d2 f再送入队列进行递推平均滤波处理0 }; W* ~. U( t4 F% q3 M9 g
B、优点:0 v' k& X$ y- @
融合了两种滤波法的优点. N2 @- e: X" }. N$ l7 m/ \
对于偶然出现的脉冲性干扰,可消除由于脉冲干扰所引起的采样值偏差
$ N6 b+ z/ c% T8 ?C、缺点:
: c1 e' {6 D! I  ?- L$ g  s) P比较浪费RAM% a; u+ H' p/ \( c9 L3 a
0 X" f4 L" T% b
第7种方法、一阶滞后滤波法  U( I% r, u  ~  V! A
A、方法:
* G& M0 a+ v2 j2 n. @  _2 g1 r; _取a=0~1
; |" P4 F" M: j: L6 f6 A  v& f$ d$ f本次滤波结果=(1-a)*本次采样值+a*上次滤波结果
3 {9 v! a0 i/ zB、优点:# |' ~; c6 r2 Q8 K# n
对周期性干扰具有良好的抑制作用& x. S4 ]9 {1 E( S# s- Y# a
适用于波动频率较高的场合
+ ?0 N, r9 e! @7 Y: zC、缺点:
- O0 b& ^  z! d( H5 A& c3 k相位滞后,灵敏度低9 f' k7 S. _! ?* S
滞后程度取决于a值大小
4 X8 o/ C3 L7 G& D: j5 o/ n不能消除滤波频率高于采样频率的1/2的干扰信号% T) c4 u& `! h4 ]' O

* q* t6 f& _- g/ u$ l2 Q! U第8种方法、加权递推平均滤波法
$ r8 B3 l. t% K& c) G2 Z7 SA、方法:
) Q$ r3 V+ t( e是对递推平均滤波法的改进,即不同时刻的数据加以不同的权
& q2 q8 {! s7 ^% X7 ]: R通常是,越接近现时刻的数据,权取得越大。
: C. c3 C& T9 |& Q5 k6 l: U) u给予新采样值的权系数越大,则灵敏度越高,但信号平滑度越低
# j  k5 {9 Y2 @/ B3 zB、优点:
. [1 d2 |+ _8 \& R适用于有较大纯滞后时间常数的对象+ m+ f" ]& |' M
和采样周期较短的系统
/ o* t( F2 H" @7 k4 t* CC、缺点:
  l3 r* R' f) Y1 b" G  T% v: `. Y对于纯滞后时间常数较小,采样周期较长,变化缓慢的信号; H9 r$ X) O" X# W
不能迅速反应系统当前所受干扰的严重程度,滤波效果差
) q. F, P; A% A* `' k0 J
4 |  I* W! ?3 X" n第9种方法、消抖滤波法2 O; G' k: T5 z3 ~7 Q) {
A、方法:' P2 [) [0 v2 T2 g  ]
设置一个滤波计数器4 @, X! Z' N0 Z  T& X" R
将每次采样值与当前有效值比较:, U- m" @2 \. {1 s, f
如果采样值=当前有效值,则计数器清零9 R- ?" ]. w& x6 z' f- H; W& C: e
如果采样值<>当前有效值,则计数器+1,并判断计数器是否>=上限N(溢出)
, T8 a$ f5 v' ~) x( y如果计数器溢出,则将本次值替换当前有效值,并清计数器' ^& C4 z, y$ o5 h; G* y6 e4 S. b
B、优点:
7 ~& M; U' U( Q% ~0 T对于变化缓慢的被测参数有较好的滤波效果,
3 }* v# v4 Q( v% ]可避免在临界值附近控制器的反复开/关跳动或显示器上数值抖动
6 T  Q$ @) B" q. aC、缺点:# H0 n/ O# O) E; t1 f* `
对于快速变化的参数不宜
% B7 ~, {: P" s# P5 f9 C) A$ b如果在计数器溢出的那一次采样到的值恰好是干扰值,则会将干扰值当作有效值导入系统3 _  v0 c$ s; S2 Z" {+ B. _% `1 n

+ Y9 J; g! p. A# y% R3 e$ p2 M第10种方法、限幅消抖滤波法
( P. _5 {: ^2 n+ ~& T$ IA、方法:
& ~0 ^0 H0 z, ?; f9 z- C* g相当于“限幅滤波法”+“消抖滤波法”
' o" ]1 D1 w" o5 O4 D* E7 k$ H先限幅,后消抖' K  O8 F: n$ I" a( |/ Y
B、优点:; h8 [1 \, Y3 O
继承了“限幅”和“消抖”的优点- S2 J* V; c' W0 [, X- W* v
改进了“消抖滤波法”中的某些缺陷,避免将干扰值导入系统
2 D5 `2 J6 @: ?! H+ M3 ~- S1 p/ ~$ fC、缺点:
9 w1 Z7 {: w! f* ^对于快速变化的参数不宜% b$ |. p* v8 `

" Y2 ~( X$ }2 J: g0 ~4 d/ t2 o5 T
. G/ @0 {( O/ L! e: [2 ~. j! G# j第11种方法:IIR 数字滤波器 " M1 i. }* n  G* @- s0 {6 R" J! }

  m: J0 C4 x. u# r2 [- iA. 方法:
$ U6 ^9 I6 X2 i4 r/ B3 K- }- o5 [确定信号带宽, 滤之。, `0 z1 e1 y) u5 A2 k
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)
; v1 N$ q+ l" `  e+ h" O! u- U% F- }
B. 优点:高通,低通,带通,带阻任意。设计简单(用matlab)
% B$ x3 D' g) o# b/ F3 }+ J: c" v: T2 BC. 缺点:运算量大。
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-4-20 12:30 , Processed in 0.484410 second(s), 61 queries .

    回顶部