新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 幾種軟件濾波算法的原理和比較

        幾種軟件濾波算法的原理和比較

        作者: 時間:2015-09-12 來源:網絡 收藏

          簡介:主要描述了各種濾波的方法、優點和缺點,以供讀者參考、借鑒。

        本文引用地址:http://www.104case.com/article/280051.htm

          第1種方法:限幅濾波法(又稱程序判斷濾波法)

          A方法:根據經驗判斷,確定兩次采樣允許的最大偏差值(設為A),每次檢測到新值時判斷:如果本次值與上次值之差<=A,則本次值有效,如果本次值與上次值之差>A,則本次值無效,放棄本次值,用上次值代替本次值。

          B優點:能有效克服因偶然因素引起的脈沖干擾。

          C缺點:無法抑制那種周期性的干擾,平滑度差。

          第2種方法:中位值濾波法

          A方法:連續采樣N次(N取奇數),把N次采樣值按大小排列,取中間值為本次有效值。

          B優點:能有效克服因偶然因素引起的波動干擾,對溫度、液位的變化緩慢的被測參數有良好的濾波效果。

          C缺點:對流量、速度等快速變化的參數不宜。

          第3種方法:算術平均濾波法

          A方法:連續取N個采樣值進行算術平均運算,N值較大時:信號平滑度較高,但靈敏度較低;N值較小時:信號平滑度較低,但靈敏度較高。N值的選取:一般流量,N=12;壓力:N=4。

          B優點:適用于對一般具有隨機干擾的信號進行濾波,這樣信號的特點是有一個平均值,信號在某一數值范圍附近上下波動。

          C缺點:對于測量速度較慢或要求數據計算速度較快的實時控制不適用,比較浪費RAM。

          第4種方法:遞推平均濾波法(又稱滑動平均濾波法)

          A方法:把連續取N個采樣值看成一個隊列,隊列的長度固定為N,每次采樣到一個新數據放入隊尾,并扔掉原來隊首的一次數據(先進先出原則)。把隊列中的N個數據進行算術平均運算,就可獲得新的濾波結果。N值的選取:流量,N=12;壓力:N=4;液面,N=4~12;溫度,N=1~4。

          B優點:對周期性干擾有良好的抑制作用,平滑度高,適用于高頻振蕩的系統。

          C缺點:靈敏度低,對偶然出現的脈沖性干擾的抑制作用較差,不易消除由于脈沖干擾所引起的采樣值偏差,不適用于脈沖干擾比較嚴重的場合,比較浪費RAM。

          第5種方法:中位值平均濾波法(又稱防脈沖干擾平均濾波法)

          A方法:相當于“中位值濾波法”+“算術平均濾波法”,連續采樣N個數據,去掉一個最大值和一個最小值,然后計算N-2個數據的算術平均值。N值的選取:3~14。

          B優點:融合了兩種濾波法的優點,對于偶然出現的脈沖性干擾,可消除由于脈沖干擾所引起的采樣值偏差。

          C缺點:測量速度較慢,和算術平均濾波法一樣,比較浪費RAM。

          第6種方法:限幅平均濾波法

          A方法:相當于“限幅濾波法”+“遞推平均濾波法”,每次采樣到的新數據先進行限幅處理,再送入隊列進行遞推平均濾波處理。

          B優點:融合了兩種濾波法的優點,對于偶然出現的脈沖性干擾,可消除由于脈沖干擾所引起的采樣值偏差。

          C缺點:比較浪費RAM。

          第7種方法:一階滯后濾波法

          A方法:取a=0~1,本次濾波結果=(1-a)*本次采樣值+a*上次濾波結果。

          B優點:對周期性干擾具有良好的抑制作用,適用于波動頻率較高的場合。

          C缺點:相位滯后,靈敏度低,滯后程度取決于a值大小,不能消除濾波頻率高于采樣頻率的1/2的干擾信號。

          第8種方法:加權遞推平均濾波法

          A方法:是對遞推平均濾波法的改進,即不同時刻的數據加以不同的權,通常是,越接近現時刻的資料,權取得越大,給予新采樣值的權系數越大,則靈敏度越高,但信號平滑度越低。

          B優點:適用于有較大純滯后時間常數的對象和采樣周期較短的系統。

          C缺點:對于純滯后時間常數較小,采樣周期較長,變化緩慢的信號,不能迅速反應系統當前所受干擾的嚴重程度,濾波效果差。

          第9種方法:消抖濾波法

          A方法:設置一個濾波計數器,將每次采樣值與當前有效值比較:如果采樣值=當前有效值,則計數器清零。如果采樣值<>當前有效值,則計數器+1,并判斷計數器是否>=上限N(溢出),如果計數器溢出,則將本次值替換當前有效值,并清計數器。

          B優點:對于變化緩慢的被測參數有較好的濾波效果,可避免在臨界值附近控制器的反復開/關跳動或顯示器上數值抖動。

          C缺點:對于快速變化的參數不宜,如果在計數器溢出的那一次采樣到的值恰好是干擾值,則會將干擾值當作有效值導入系統。

          第10種方法:限幅消抖濾波法

          A方法:相當于“限幅濾波法”+“消抖濾波法”,先限幅后消抖。

          B優點:繼承了“限幅”和“消抖”的優點,改進了“消抖濾波法”中的某些缺陷,避免將干擾值導入系統。

          C缺點:對于快速變化的參數不宜。

          第11種方法:IIR數字

          A方法:確定信號帶寬,濾之。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)。

          B優點:高通,低通,帶通,帶阻任意。設計簡單(用matlab)。

          C缺點:運算量大。

        電源濾波器相關文章:電源濾波器原理


        高通濾波器相關文章:高通濾波器原理
        塵埃粒子計數器相關文章:塵埃粒子計數器原理
        脈沖點火器相關文章:脈沖點火器原理
        數字濾波器相關文章:數字濾波器原理


        關鍵詞: 濾波器 算法

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 衡山县| 微博| 于都县| 辽宁省| 新田县| 陆河县| 常德市| 疏勒县| 肥西县| 池州市| 钟山县| 陆河县| 井陉县| 旅游| 玛曲县| 大埔区| 巴林左旗| 西平县| 无锡市| 元氏县| 桂平市| 汝阳县| 马鞍山市| 秦皇岛市| 长子县| 怀集县| 苗栗市| 平罗县| 汝城县| 秦皇岛市| 三台县| 武安市| 星子县| 广东省| 定州市| 延吉市| 清远市| 宜良县| 射洪县| 九寨沟县| 安宁市|