一般濾波的要求主要是通帶邊界頻率、阻帶邊界頻率、通帶最大波紋及阻帶最小衰減。
而由FIR濾波器的窗函式基本引數,可以知道,最小阻帶衰減只由窗形狀決定,不受窗寬N的影響;而過渡帶的寬度則既與窗形狀有關,且隨窗寬N的增加而減小。
這樣的話,設計一個FIR濾波器,主要是由阻帶最小衰減來確定窗形狀,再根據過渡頻寬的要求來確定窗寬N。有一個窗函式基本引數表,可以對照著選。然後用MATLAB中fir1函式來設計,其語法格式為:b=fir1(N,wn,"ftype",window)。需簡單計算N,wn
例題:
設計一個低通數字濾波器,給定抽樣頻率為fs=5000Hz,通帶截止頻率wp=500Hz,阻帶起始頻率ws=800Hz,阻帶衰減不小於-50dB。
解答:
由於阻帶衰減為50dB,查表,可選海明窗,其阻帶最小衰減為53dB,過渡頻寬度為6.6π/N。
MATLAB程式如下:
wp=500*2/5000;%頻率歸一化
ws=800*2/5000;
wdel=ws-wp;%過渡頻寬
wn=0.5*(wp+ws);%近似計算截止頻率
N=ceil(6.6*pi/wdel);%根據過渡頻寬度求濾波器階數
window=hamming(N+1);%海明窗
b=fir1(N,wn,window);%FIR濾波器設計
freqz(b,1,512);%檢視濾波器幅頻及相頻特性
一般濾波的要求主要是通帶邊界頻率、阻帶邊界頻率、通帶最大波紋及阻帶最小衰減。
而由FIR濾波器的窗函式基本引數,可以知道,最小阻帶衰減只由窗形狀決定,不受窗寬N的影響;而過渡帶的寬度則既與窗形狀有關,且隨窗寬N的增加而減小。
這樣的話,設計一個FIR濾波器,主要是由阻帶最小衰減來確定窗形狀,再根據過渡頻寬的要求來確定窗寬N。有一個窗函式基本引數表,可以對照著選。然後用MATLAB中fir1函式來設計,其語法格式為:b=fir1(N,wn,"ftype",window)。需簡單計算N,wn
例題:
設計一個低通數字濾波器,給定抽樣頻率為fs=5000Hz,通帶截止頻率wp=500Hz,阻帶起始頻率ws=800Hz,阻帶衰減不小於-50dB。
解答:
由於阻帶衰減為50dB,查表,可選海明窗,其阻帶最小衰減為53dB,過渡頻寬度為6.6π/N。
MATLAB程式如下:
wp=500*2/5000;%頻率歸一化
ws=800*2/5000;
wdel=ws-wp;%過渡頻寬
wn=0.5*(wp+ws);%近似計算截止頻率
N=ceil(6.6*pi/wdel);%根據過渡頻寬度求濾波器階數
window=hamming(N+1);%海明窗
b=fir1(N,wn,window);%FIR濾波器設計
freqz(b,1,512);%檢視濾波器幅頻及相頻特性