⑴ MATLAB中FIR濾波器如何設計
一般濾波的要求主要是通帶邊界頻率、阻帶邊界頻率、通帶最大波紋及阻帶最小衰減。
而由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數字濾波器的設計步驟及主要公式。
將模擬頻率轉化為數字頻率,設取樣時間為T(要滿足抽樣定理)
Ωp=2π*fp*T Ωs=2π*fs*T
過渡帶寬度△Ω=Ωp-Ωs
阻帶衰減已經超過74db,要選用Kaiser窗了,Kaiser的參數可變,要根據公式確定濾波器的參數
一般都選用Ⅰ型線性相位濾波器即濾波器階數M為偶數,程序如下:
wp=;ws=;Ap=1;As=100;
Rp=1-10.^(-0.05*Ap);Rs=10.^(-0.05*As);
f=[fp fs];
a=[0 1];
dev=[Rp Rs];
[M,wc,beta,ftype]=kaiserord(f,a,dev);
M=mod(M,2)+M;
h=fir1(M,wc,ftype,kaiser(M+1,beta));
omega=linspace(0,pi,512);
mag=freqz(h,[1],omega);
plot(omega/pi,20*log10(abs(mag)));
grid;
omega1=linspace(0,wp,512);
h1=freqz(h,[1],omega1);
omega2=linspace(ws,pi,512);
h2=freqz(h,[1],omega2);
fprintf('Ap=%.4f\n',-20*log10(min(abs(h1))));
fprintf('As=%.4f\n',-20*log10(max(abs(h2))));
運行程序可以得到濾波器的通阻帶衰減,畫出頻率響應,若同阻帶衰減不滿足要求還可以使用濾波器的優化,一般使用的等波紋FIR進行優化
⑶ 急!!!!!!!!用窗函數法設計FIR濾波器的主要特點是什麼
系統的單位沖激響應h (n)在有限個n值處不為零。系統函數H(z)在|z|>0處收斂,極點全部在z = 0處(因果系統)。結構上主要是非遞歸結構,沒有輸出到輸入的反饋,但有些結構中(例如頻率抽樣結構)也包含有反饋的遞歸部分。
設FIR濾波器的單位沖激響應h (n)為一個N點序列,0 ≤ n ≤N —1,則濾波器的系統函數為H(z)=∑h(n)*z^-k。
就是說,它有(N—1)階極點在z = 0處,有(N—1)個零點位於有限z平面的任何位置。
(3)fir的設計方法有哪些擴展閱讀:
在進入FIR濾波器前,首先要將信號通過A/D器件進行模數轉換,把模擬信號轉化為數字信號;為了使信號處理能夠不發生失真,信號的采樣速度必須滿足香農采樣定理,一般取信號頻率上限的4-5倍做為采樣頻率;
一般可用速度較高的逐次逼進式A/D轉換器,不論採用乘累加方法還是分布式演算法設計FIR濾波器,濾波器輸出的數據都是一串序列,要使它能直觀地反應出來,還需經過數模轉換,因此由FPGA構成的FIR濾波器的輸出須外接D/A模塊。
FPGA有著規整的內部邏輯陣列和豐富的連線資源,特別適合於數字信號處理任務,相對於串列運算為主導的通用DSP晶元來說,其並行性和可擴展性更好,利用FPGA乘累加的快速演算法,可以設計出高速的FIR數字濾波器。
⑷ 簡述 頻率采樣法設計FIR數字濾波器的步驟!
第一步:確定希望逼近的理想濾波器的頻率響應
第二步:在頻域內對進行N點等間隔采樣,利用頻率采樣設計公式求頻率采樣值Hd(k),采樣間隔△ω=2π/N=O.1 π,這樣在通帶內共有3個采樣點,分別是k=0,1,2。利用頻率采樣設計式(10)和式(11),可以得到:
第三步:用離散傅里葉逆變換求得要設計的實際濾波器的單位脈沖響應h(n):
第四步:根據傅里葉變換的定義求得實際濾波器的頻率響應,驗證是否滿足濾波器技術指標的要求,主要驗證濾波器的阻帶衰減是否能夠滿足阻帶的要求。藉助於Matlab軟體,按照以上4個步驟設計出低通濾波器的模擬結果如圖2所示。
由模擬結果圖2(d)可以看出其衰減比較小,約為-17 dB。在通常情況下,這個阻帶衰減不能滿足阻帶技術指標的要求,可以通過在通帶和阻帶之間的邊界頻率處增加過渡采樣點來增大阻帶衰減。
為改進阻帶衰減,在邊界頻率處增加一個過渡點;為保證過渡帶寬不變,將采樣點數增加一倍,變為N=40,並將過渡點的采樣值進行優化,取H1=0.390 4,其模擬結果如圖3所示。由圖3(d)可見,這時阻帶衰減達到了-43 dB。
⑸ 請簡述窗函數法設計FIR數字濾波器的方法與步驟。
濾波器的理想頻率響應函數為Hd(ejω),則其對應的單位脈沖響應為hd(n)=窗函數設計法的基本原理是用有限長單位脈沖響應序列h(n)逼hd(n)。由於hd(n)往往是無限長序列,且是非因果的,所以用窗函數。w(n)將hd(n)截斷,並進行加權處理:
h(n)=hd(n)w(n)h(n)就作為實際設計的FIR數字濾波器的單位脈沖響應序列,其頻率響應函數H(ejω)為H(ejω)=用窗函數法設計的濾波器性能取決於窗函數w(n)的類型及窗口長度N的取值。設計過程中,要根據對阻帶最小衰減和過渡帶寬度的要求選擇合適的窗函數類型和窗口長度N。
一般都選用Ⅰ型線性相位濾波器即濾波器階數M為偶數,程序如下:
wp=;ws=;Ap=1;As=100;
dev=[Rp Rs];
[M,wc,beta,ftype]=kaiserord(f,a,dev);
M=mod(M,2)+M;
plot(omega/pi,20*log10(abs(mag)));
運行程序可以得到濾波器的通阻帶衰減,畫出頻率響應,若同阻帶衰減不滿足要求還可以使用濾波器的優化,一般使用的等波紋FIR進行優化。
(5)fir的設計方法有哪些擴展閱讀:
濾波器與機箱之間的一段連線會產生兩種不良作用: 一個是機箱內部空間的電磁干擾會直接感應到這段線上,沿著電纜傳出機箱,藉助電纜輻射,使濾波器失效;另一個是外界干擾在被板上濾波器濾波之前,藉助這段線產生輻射,或直接與線路板上的電路發生耦合,造成敏感度問題;
濾波陣列板、濾波連接器等面板濾波器一般都直接安裝在屏蔽機箱的金屬面板上。由於直接安裝在金屬面板上,濾波器的輸入與輸出之間完全隔離,接地良好,電纜上的干擾在機箱埠上被濾除,因此濾波效果相當理想。