祝廣場 李志 梅映新
(中國船舶重工集團公司第七一二研究所,武漢 430064)
巴特沃斯濾波器具有通帶內最大平坦的振幅特性,而且隨著頻率的增加而單調下降[1]。
其幅度平方函數具有如下形式:

其中,N為整數,稱為濾波器階數,N越大,通帶和阻帶的近似性越好,過渡性也越陡。如圖1所示:
歸一化 L(L為偶數)階巴特沃斯模擬低通濾波器的傳遞函數為

可見,巴特沃斯濾波器可以寫成L/2個2階級聯的形式。

圖1 巴特沃斯濾波器的幅值響應曲線
(1)計算預畸變后模擬濾波器的通帶邊界頻率

(2)模擬濾波器的頻率尺度變換:


數字濾波克服了硬件濾波的許多不足,它與硬件濾波相比有以下優點[1]:
(1)數字濾波用軟件實現,不需要增加硬件設備因而可靠性高、穩定性好,不存在阻抗匹配問題。
(2)硬件濾波通常是各通道專用,而數字濾波則可多通道共享,從而降低了成本。
(3)數字濾波可以對頻率很低的信號進行濾波(如0.01 Hz),而硬件濾波由于受電路元件的限制,頻率不可能太低。
(4)數字濾波可以根據信號的不同,采用不同的濾波方法或濾波參數,具有靈活、方便、功能強的特點。
在單片機系統中常用的數字濾波器算法有程序判斷法、中值判斷法、算術平均值濾波法、加權濾波法、滑動濾波法、低通濾波法和復合濾波法等,這幾種方法原理簡單,已廣泛應用于控制系統等領域,但是采用上述濾波算法后數據的精度不高。而巴特沃斯數字濾波器屬于無限沖擊響應數字濾波器IIR的一種,被稱為最平的幅頻響應濾波器,IIR數字濾波器用系統函數表示為:

當系數{ai;i=1,2,3,…,N}至少有一個是非零時,式(3)描述的系統被稱為無限沖擊響應(IIR)數字濾波器。對于IIR濾波器,一般情況下滿足M≤N,這時系統稱為N階IIR數字濾波器。由式(3)可得出表示輸入輸出關系的常系數差分方程表達式:

IIR 濾波器的結構分為直接型(包括直接Ⅰ型和直接Ⅱ型)、級聯型和并聯型三種。在選擇濾波器結構時應該本著易于控制濾波性能、適于模塊化和編程實現的原則,一般情況下可設計一個二階濾波器,通過級聯可實現可控的高階IIR 濾波器。也可以設計一個具有良好特性的雙二階濾波器,然后通過控制級聯的個數,就可以實現任意階數的濾波器[3]。本系統根據控制精度和系統內部資源的要求選用直接Ⅱ型濾波器。
數字濾波器的一般設計步驟是:首先利用模擬頻率和數字頻率的關系將數字濾波器的頻率指標轉換為模擬濾波器的頻率指標,然后根據模擬濾波器的技術指標設計模擬濾波器的H(s),最后用脈沖響應不變法,將模擬濾波器H(s)轉換為數學濾波器H(z)。這種傳統的設計方法繁瑣且效率不高。
用Matlab設計巴特沃斯濾波器有兩種方法,第一種是用函數設計,Matlab中提供了buttord()和butter()兩個函數,在輸入通帶阻帶的截止頻率和衰減后可得到欲設計的巴特沃斯濾波器的階數和截止頻率,進而得到濾波器的系數。另一種方法是用Matlab的信號處理工具箱特有的濾波器分析設計工具FDATOOL,它是圖形GUI 分析設計工具,可以直接設計濾波器并觀察實際效果,隨時修改,所見即所得,方便高效快捷。所以我們采用這種方法來設計巴特沃斯濾波器。
(1)在Matlab命令窗口中,輸入FDATOOL,回車,即可打開濾波器設計工具箱,其設計界面如圖2所示:

圖2 Matlab濾波器設計工具界面
(2)在濾波器類型中選擇“Lowpass”,設計方法選“IIR-Butterworth”,指定濾波器階數為5階,采樣頻率1000 Hz,截至頻率25Hz,然后點“Design Filter”,就完成了低通巴特沃斯濾波器的設計,結果如圖3所示。

圖3 Butterworth濾波器設計圖
(3)導出系數。從圖4-8的左上部可以看出,5階的巴特沃斯濾波器被分成了3節級聯的形式。從設計界面的File菜單中,可以將濾波器的增益和系數矩陣導出到Matlab的工作空間中,如圖4所示:

圖4 導出系數
(4)圖5為濾波器傳遞函數系數,每一行代表一個二階濾波器的傳遞函數系數,他們之間的增益是2.341e-006。然后根據濾波器的級聯關系,算出5階巴特沃斯濾波器的系數為:


圖5 濾波器系數矩陣
(5)將IIR數字濾波器傳遞函數寫成如下一般形式:

再根據式(5)列出5階巴特沃斯的差分方程,并作變形如下:

式(6)即為巴特沃斯濾波器的差分方程式,在程序中采用迭代方式來實現。
本文在巴特沃斯濾波器原理的基礎上探討了其特性,根據巴特沃斯濾波器的設計算法,利用Matlab工具箱中的FDATOOL設計工具,設計出了一個5階的巴特沃斯低通數字濾波器。在GPS的加速度處理中,其濾波性能良好,保證了測量數據的準確性。
[1]李鐘鎮. 基于Matlab 設計巴特沃斯低通濾波器. 信息技術, 2003, (3).
[2]馬杰, 董金明. IIR數字濾波器在定點DSP上的實現.聲學與電子工程, 2006, (2):40-44.
[3]公丕波, 郝金明, 朱偉剛. GPS接收機與PC機間串口通信的實現. 海洋測繪, 2005, (5).