用MATLAB設(shè)計(jì)FIR濾波器的方法
介紹了利用MATLAB信號(hào)處理工具箱進(jìn)行FIR濾波器設(shè)計(jì)的三種方法:程序設(shè)計(jì)法、FDATool設(shè)計(jì)法和SPTool設(shè)計(jì)法,給出了詳細(xì)的設(shè)計(jì)步驟,并將設(shè)計(jì)的濾波器應(yīng)用到一個(gè)混和正弦波信號(hào),以驗(yàn)證濾波器的性能。
本文引用地址:http://cafeforensic.com/article/190611.htm1 前言
數(shù)字濾波器是一種用來過濾時(shí)間離散信號(hào)的數(shù)字系統(tǒng),通過對(duì)抽樣數(shù)據(jù)進(jìn)行數(shù)學(xué)處理來達(dá)到頻域?yàn)V波的目的。根據(jù)其單位沖激響應(yīng)函數(shù)的時(shí)域特性可分為兩類:無限沖激響應(yīng)(IIR)濾波器和有限沖激響應(yīng)(FIR)濾波器。與IIR濾波器相比,FIR的實(shí)現(xiàn)是非遞歸的,總是穩(wěn)定的;更重要的是,F(xiàn)IR濾波器在滿足幅頻響應(yīng)要求的同時(shí),可以獲得嚴(yán)格的線性相位特性。因此,它在高保真的信號(hào)處理,如數(shù)字音頻、圖像處理、數(shù)據(jù)傳輸、生物醫(yī)學(xué)等領(lǐng)域得到廣泛應(yīng)用。
2 FIR濾波器的窗函數(shù)設(shè)計(jì)法
FIR濾波器的設(shè)計(jì)方法有許多種,如窗函數(shù)設(shè)計(jì)法、頻率采樣設(shè)計(jì)法和最優(yōu)化設(shè)計(jì)法等。窗函數(shù)設(shè)計(jì)法的基本原理是用一定寬度窗函數(shù)截取無限脈沖響應(yīng)序列獲得有限長的脈沖響應(yīng)序列,主要設(shè)計(jì)步驟為:
(1) 通過傅里葉逆變換獲得理想濾波器的單位脈沖響應(yīng)hd(n)。
(2) 由性能指標(biāo)確定窗函數(shù)W(n)和窗口長度N。
(3) 求得實(shí)際濾波器的單位脈沖響應(yīng)h(n), h(n)即為所設(shè)計(jì)FIR濾波器系數(shù)向量b(n)。
(4) 檢驗(yàn)濾波器性能。
本文將針對(duì)一個(gè)含有5Hz、15Hz和30Hz的混和正弦波信號(hào),設(shè)計(jì)一個(gè)FIR帶通濾波器,給出利用MATLAB實(shí)現(xiàn)的三種方法:程序設(shè)計(jì)法、 FDATool設(shè)計(jì)法和SPTool設(shè)計(jì)法。參數(shù)要求:采樣頻率fs=100Hz,通帶下限截止頻率fc1=10 Hz,通帶上限截止頻率fc2=20 Hz,過渡帶寬6 Hz,通阻帶波動(dòng)0.01,采用凱塞窗設(shè)計(jì)。
2 程序設(shè)計(jì)法
MATLAB信號(hào)處理工具箱提供了各種窗函數(shù)、濾波器設(shè)計(jì)函數(shù)和濾波器實(shí)現(xiàn)函數(shù)。本文的帶通濾波器設(shè)計(jì)及濾波程序如下:
[n,Wn,beta,ftype]=kaiserord([7 13 17 23],[0 1 0],[0.01 0.01 0.01],100);
%得出濾波器的階數(shù)n=38,beta=3.4
w1=2*fc1/fs; w2=2*fc2/fs;%將模擬濾波器的技術(shù)指標(biāo)轉(zhuǎn)換為數(shù)字濾波器的技術(shù)指標(biāo)
window=kaiser(n+1,beta);%使用kaiser窗函數(shù)
b=fir1(n,[w1 w2],window);使用標(biāo)準(zhǔn)頻率響應(yīng)的加窗設(shè)計(jì)函數(shù)fir1
freqz(b,1,512);%數(shù)字濾波器頻率響應(yīng)
t = (0:100)/Fs;
s = sin(2*pi*t*5)+sin(2*pi*t*15)+sin(2*pi*t*30);%混和正弦波信號(hào)
sf = filter(b,1,s);%對(duì)信號(hào)s進(jìn)行濾波
程序執(zhí)行的結(jié)果如圖1所示:
(1)濾波器幅頻特性和相頻特性 (2)濾波前后的波形
圖1 濾波器特性和濾波效果圖
濾波器相關(guān)文章:濾波器原理
濾波器相關(guān)文章:濾波器原理
電源濾波器相關(guān)文章:電源濾波器原理
評(píng)論