王艷文 于勉
【摘要】本文利用Kaiser 窗實現了FIR低通數字濾波器的設計,設計結果符合FIR數字濾波器技術指標要求。
【關鍵詞】matlab;濾波器;Kaiser 窗
數字濾波器是數字信號處理的重要器件,因其具有精度高和穩定性強、系統函數易改變、靈活性強、不存在阻抗匹配問題、便于大規模集成、可實現多維濾波等優點,故其設計已成為數字信號處理研究的熱點。誕生于20世紀70年代的MATLAB語言是由美國MathWorks公司推出的一套集矩陣運算、數值分析、信號處理和圖形顯示于一體 的高性能數值計算和可視化軟件。由于其中的數字信號處理工具箱功能強大,從而使其成為了數字信號處理領域中的主要編程語言。Matlab可以快速有效地實現濾波器的設計、分析仿真和最優化,已成為數字濾波器設計的基礎軟件。本文采用Kaiser窗實現FIR數字低通濾波器的設計。
一、程序設計及運行結果
根據研究任務,需設計低通數字濾波器的性能指標如下:
wp = 0.2π, Rp = 0.25dB,ws = 0.3π,As = 50dB。
設計程序如下:
wp = 0.2*pi; ws = 0.3*pi; As = 50;
tr_width = ws - wp;
N = ceil((As-7.95)/(14.36*tr_width/(2*pi))+1) + 1
n=[0:1:N];
beta = 0.1102*(As-8.7)
wc = (ws+wp)/2;
h = fir1(N,wc/pi,Kaiser(N+1,beta));
[db,mag,pha,grd,w] = freqz_m(h,[1]);
delta_w = 2*pi/1000;
As = -round(max(db(ws/delta_w+1:1:501))) % Min Stopband Attenuation
二、結果分析
程序運算結果:
N = 61 (濾波器階數)
beta = 4.5513
As = 51 (實際的阻帶衰減)
運行結果滿足設計技術要求。圖1是此濾波器時域中實際的脈沖響應曲線和頻域中幅度響應曲線。
三、結語
利用MATLAB設計濾波器方法簡單、快捷直觀。本文利用Kaiser 窗設計了FIR低通數字濾波器,程序運行結果符合設計技術指標要求,取得了較理想的實驗效果。
參考文獻
[1]程佩青.數字信號處理教程[M].北京:清華大學出版社,2000:10-53.
[2]黎雄. FIR數字濾波器的最優化設計及MATLAB實現[J].信息技術,2004,28(10):38-41.