一、實(shí)驗(yàn)?zāi)康?/h2>
1、掌握FIR數(shù)字濾波器設(shè)計(jì)的一般方法和步驟;
2、了解各種窗函數(shù)的性能
3、學(xué)會利用窗函數(shù)法設(shè)計(jì)FIR數(shù)字濾波器;
4、掌握FIR數(shù)字濾波器的實(shí)現(xiàn)方法
5、學(xué)會用所設(shè)計(jì)的濾波器對實(shí)際信號進(jìn)行濾波處理
6、驗(yàn)證FIR數(shù)字濾波器獲取線性相位需要滿足的條件
7、對FIR數(shù)字濾波器的特點(diǎn)有全面的認(rèn)識
二、實(shí)驗(yàn)原理
(1)根據(jù)取樣周期T,確定相應(yīng)的數(shù)字頻率 。
(2)根據(jù)阻帶衰減確定窗函數(shù)形式
(3)根據(jù)過渡帶寬
確定加窗寬度N:
其中系數(shù) 根據(jù)窗函數(shù)確定,稱為窗寬系數(shù); 一般取奇數(shù)。
(4)確定單位取樣響應(yīng)位移系數(shù)
(5)確定濾波器單位取樣響應(yīng)
或
。
(6)計(jì)算濾波器的頻率響應(yīng):
(7)校驗(yàn)技術(shù)指標(biāo)是否已經(jīng)滿足,如不滿足,則重新選取較大的 進(jìn)行(3)、(4)計(jì)算;如滿足有余,則試選較小的N進(jìn)行(3),(4)計(jì)算。
3、FIR數(shù)字濾波器頻率響應(yīng)的計(jì)算FIR數(shù)字濾波器的頻率響應(yīng)可以通過對其單位取樣響應(yīng)進(jìn)行FFT得到。
4、FIR數(shù)字濾波器的實(shí)現(xiàn)FIR數(shù)字濾波器的實(shí)現(xiàn)是借助于線性卷積,即:
線性卷積的運(yùn)算,一般借助于FFT進(jìn)行
5、FIR數(shù)字濾波器獲取線性相位的條件要求濾波器的單位取樣響應(yīng)是中心對稱的,即
三、實(shí)驗(yàn)步驟、數(shù)據(jù)記錄及處理
FIR數(shù)字濾波器的設(shè)計(jì)及應(yīng)用
1、設(shè)置輸入心電圖信號序列,繪制其波形;
2、給定濾波器技術(shù)參數(shù)
3、設(shè)計(jì)FIR數(shù)字濾波器。
4、編寫快速卷積程序利用設(shè)計(jì)好的FIR數(shù)字濾波器完成對信號的濾波處理
5、繪制濾波處理后的心電圖信號波形。(注:前m個點(diǎn)是延遲點(diǎn),畫圖時去掉不畫)
6、改變m的值,驗(yàn)證FIR數(shù)字濾波器獲取線性相位需要滿足的條件
實(shí)驗(yàn)例程:
clear all;clc;close all;%關(guān)閉當(dāng)前窗口
%生成濾波前信號波形
x=[-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,0,-16,-38,-60,-84,-90,-66,-32,-4,-2,-4,8,12,12,10,6,6,6,4,0,0,0,0,0,-2,-4,0,0,0,-2,-2,0,0,-2,-2,-2,-2,0];
nx=length(x);%采樣數(shù)據(jù)點(diǎn)數(shù);
n=0:nx-1;%設(shè)置自變量n的取值范圍;
figure('name','%加窗法設(shè)計(jì)FIR數(shù)字濾波器')
subplot(221);stem(n,x,'.');grid on;xlabel('n');ylabel('x(n)');title('濾波前信號波形');%繪制序列x(n)的圖形%加窗法設(shè)計(jì)FIR數(shù)字濾波器
fp=15;fs=23;Fs=100;T=1/Fs;%給定技術(shù)指標(biāo)
Wp=2*pi*fp;Ws=2*pi*fs;%給定技術(shù)指標(biāo);
wp=Wp*T;ws=Ws*T;%轉(zhuǎn)換為數(shù)字角頻率;
P=2;%窗寬系數(shù)
tr_width=ws-wp;%計(jì)算過渡帶寬
wc=(ws+wp)/2;%計(jì)算FIR濾波器的截止頻率
N0=ceil(P*4*pi/tr_width);%計(jì)算加窗寬度N
N=N0+mod(N0+1,2);%確保N為奇數(shù);
m=(N-1)/2;%計(jì)算移位系數(shù);
n=[0:1:N-1];%設(shè)置自變量n的取值范圍;
window=(hamming(N))';%生成窗函數(shù)序列
nm=n-m+eps;
hd=sin(wc*nm)./(pi*nm);%計(jì)算理想移位低通濾波器的單位取樣響應(yīng)
hn=hd.*window;%對理想移位低通濾波器加窗,得到實(shí)際濾波器的單位取樣響應(yīng)
H=fft(hn,1024);%fft計(jì)算濾波器的實(shí)際頻率響應(yīng)
k=0:1:511;w=2*pi*(Fs*k/1024);%設(shè)置離散頻率k的取值范圍
mag=abs(H);%計(jì)算函數(shù)的幅度特性
pha=angle(H);%計(jì)算相位特性
db=20*log10((mag+eps)/max(mag));%將幅度特性轉(zhuǎn)換為對數(shù)形式
%畫出濾波器相頻響應(yīng)和幅頻響應(yīng)
subplot(224);plot(w,pha(1:512));grid on;xlabel('w/2pi');ylabel('ψ(w)');title('濾波器相頻響應(yīng)');
subplot(222);plot(w,db(1:512));grid on;xlabel('w(pi)');ylabel('|H(jw)|(db)');title('濾波器幅頻響應(yīng)');%對心電圖采樣序列進(jìn)行濾波
L=pow2(nextpow2(nx+length(hn)-1));%確定FFT(快速卷積)的點(diǎn)數(shù)
Xk=fft(x,L);Hk=fft(hn,L);%求x(n)和h(n)序列的快速傅里葉變換關(guān)于L點(diǎn)的
Yk=Xk.*Hk;%求XK;
y=ifft(Yk,L);%對YK調(diào)用ifft,求得y(n);
yn=y(m+1:nx+m);%確定y(n)的自變量取值范圍;
subplot(223);stem(yn,'.');grid on;xlabel('n');ylabel('y(n)');title('濾波器后信號波形'); %繪制濾波器濾波后的圖形
%利用filter()函數(shù)驗(yàn)證濾波后結(jié)果
L=pow2(nextpow2(nx+length(hn)-1));%確定FFT(快速卷積)的點(diǎn)數(shù)
Xk=fft(x,L);%求XK;
x1=ifft(Xk,L);%對YK調(diào)用ifft,求得x1;
r=filter(hn,[1],x1);
rn=r(m+1:nx+m);
%subplot(224);stem(rn,'.');grid on;xlabel('n');ylabel('r(n)');title('濾波器后信號波形');
四、分析
分析略
五、總結(jié)
總結(jié)略
總結(jié)
以上是生活随笔為你收集整理的FIR数字滤波器的设计及应用——MATLAB的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。