实验四 用窗函数法设计 FIR数字滤波器
实验目的
(1) 掌握用窗函数法设计FIR数字滤波器的原理和方法。
(2) 熟悉线性相位FIR数字滤波器特性。
(3) 了解各种窗函数对滤波特性的影响。
实验原理、
滤波器的理想频率响应函数为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。
实验内容
MATALAB程序
任务一
N1=15;
N2=33;
b1=fir1(14,1/4,hanning(15));
b2=fir1(32,1/4,hanning(33));
[H1,W]=freqz(b1,1);
H1_db=20*log10(abs(H1));
magH1=abs(H1);
phaH1=angle(H1);
[H2,W]=freqz(b2,1);
H2_db=20*log10(abs(H2));
magH2=abs(H2);
phaH2=angle(H2);
figure(1);
subplot(2,1,1);stem(b1);
title('N=15时,汉宁窗得到的FIR滤波器脉冲响应');
subplot(2,1,2);stem(b2);
title('N=33时,汉宁窗得到的FIR滤波器脉冲响应');
figure(2);
subplot(3,1,1);plot(W/pi,magH1);
title('N=15时汉宁窗得到的FIR滤波器的幅频特性')
subplot(3,1,2);plot(W/pi,H1_db);
title('N=15时汉宁窗得到的FIR滤波器的对数幅频特性')
subplot(3,1,3);plot(W/pi,phaH1);
title('N=15时汉宁窗得到的FIR滤波器的相频特性')
figure(3);
subplot(3,1,1);plot(W/pi,magH2);
title('N=33时汉宁窗得到的FIR滤波器的幅频特性')
subplot(3,1,2);plot(W/pi,H2_db);
title('N=33时汉宁窗得到的FIR滤波器的对数幅频特性')
subplot(3,1,3);plot(W/pi,phaH2);
title('N=33时汉宁窗得到的FIR滤波器的相频特性')
任务二
N=33;
b1=fir1(32,1/4,boxcar(33));
b2=fir1(32,1/4,hanning(33));
b3=fir1(32,1/4,bartlett(33));
b4=fir1(32,1/4,blackman(33));
[H1,W]=freqz(b1,1);
H1_db=20*log10(abs(H1));
magH1=abs(H1);
phaH1=angle(H1);
[H2,W]=freqz(b2,1);
H2_db=20*log10(abs(H2));
magH2=abs(H2);
phaH2=angle(H2);
[H3,W]=freqz(b3,1);
H3_db=20*log10(abs(H3));
magH3=abs(H3);
phaH3=angle(H3);
[H4,W]=freqz(b4,1);
H4_db=20*log10(abs(H4));
magH4=abs(H4);
phaH4=angle(H4);
figure(1);
subplot(2,2,1);stem(b1);
title('矩形窗得到的FIR滤波器脉冲响应')
subplot(2,2,2);stem(b2);
title('汉宁窗得到的FIR滤波器脉冲响应')
subplot(2,2,3);stem(b3);
title('三角窗得到的FIR滤波器脉冲响应')
subplot(2,2,4);stem(b4);
title('布拉克曼窗得到的FIR滤波器脉冲响应')
figure(2);
subplot(2,2,1);plot(W/pi,magH1);
title('矩形窗得到的FIR滤波器幅频特性')
subplot(2,2,2);plot(W/pi,magH2);
title('汉宁窗得到的FIR滤波器幅频特性')
subplot(2,2,3);plot(W/pi,magH3);
title('三角窗得到的FIR滤波器幅频特性')
subplot(2,2,4);plot(W/pi,magH4);
title('布拉克曼窗得到的FIR滤波器幅频特性')
figure(3);
subplot(2,2,1);plot(W/pi,H1_db);
title('矩形窗得到的FIR滤波器相频特性')
subplot(2,2,2);plot(W/pi,H2_db);
title('汉宁得到的FIR滤波器相频特性')
subplot(2,2,3);plot(W/pi,H3_db);
title('三角窗得到的FIR滤波器相频特性')
subplot(2,2,4);plot(W/pi,H4_db);
title('布拉克曼得到的FIR滤波器相频特性')
figure(4);
subplot(2,2,1);plot(W/pi,phaH1);
title('矩形窗得到的FIR滤波器相频特性')
subplot(2,2,2);plot(W/pi,phaH2);
title('汉宁窗得到的FIR滤波器相频特性')
subplot(2,2,3);plot(W/pi,phaH3);
title('三角窗得到的FIR滤波器相频特性')
subplot(2,2,4);plot(W/pi,phaH4);
title('布拉克曼窗得到的FIR滤波器相频特性')
实验波形图
任务一
任务二
实验结论
N的大小决定了窗谱的主瓣宽度,N越大,窗谱的主瓣宽度越大
最小阻带衰减只有窗行决定,不受N的影响,过渡带宽度与N和窗形都有关,N越大,过渡带宽越小
由实验可知滤波特性:布拉克曼窗>汉宁窗>三角窗>矩形窗
思考题
如果给定通带截止频率和阻带截止频率以及阻带最小衰减,如何用窗函数法设计线性相位低通滤波器?写出设计步骤。
答:①根据计算出所要设计的滤波器的过渡带
②查表找到满足的阻带最小衰减所需的窗函数
③利用已选的窗函数的过渡带宽除以得到低通滤波器单位脉冲响应的长度N
④根据求出h(n)
⑤再根据H(ejω) =求出响应函数H(ejω)
如果要求用窗函数法设计带通滤波器,且给定上、下边带截止频率为ω1和ω2,试求理想带通的单位脉冲响应hd(n)。
答:由算出,求出滤波器过渡带宽和滤波器长度N,最后由或求出,其中
- 下载文档
- 收藏
- 0