实验五_用窗函数法设计FIR滤波器

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

实验六用窗函数法设计FIR滤波器一、实验目的1.掌握窗函数法设计FIR滤波器的原理和方法,观察用几种常用窗函数设计的FIR数字滤波器技术指标;2.掌握FIR滤波器的线性相位特性;3.了解各种窗函数对滤波特性的影响。二、实验原理与方法如果所希望的滤波器的理想频率响应函数为Hd(ejω),则其对应的单位脉冲响应为deeHnhnjjd)(21)(,用窗函数wN(n)将hd(n)截断,并进行加权处理,得到实际滤波器的单位脉冲响应h(n)=hd(n)wN(n),其频率响应函数为njNnjenheH10)()(。如果要求线性相位特性,则h(n)还必须满足)1()(nNhnh。可根据具体情况选择h(n)的长度及对称性。三、实验步骤1.写出理想低通滤波器的传输函数和单位脉冲响应。2.写出用四种窗函数设计的滤波器的单位脉冲响应。3.用窗函数法设计一个线性相位FIR低通滤波器,用理想低通滤波器作为逼近滤波器,截止频率ωc=π/4rad,选择窗函数的长度N=15,33两种情况。要求在两种窗口长度下,分别求出h(n),打印出相应的幅频特性和相频特性曲线,观察3dB带宽和阻带衰减;4用其它窗函数(汉宁窗(升余弦窗)、哈明窗(改进的升余弦窗)、布莱克曼窗)设计该滤波器,要求同1;比较四种窗函数对滤波器特性的影响。四、实验用MATLAB函数可以调用MATLAB工具箱函数fir1实现本实验所要求的线性相位FIR-DF的设计,调用一维快速傅立叶变换函数fft来计算滤波器的频率响应函数。fir1是用窗函数法设计线性相位FIRDF的工具箱函数,调用格式如下:hn=fir1(N,wc,‘ftype’,window)fir1实现线性相位FIR滤波器的标准窗函数法设计。hn=fir1(N,wc)可得到6dB截止频率为wc的N阶(单位脉冲响应h(n)长度为N+1)FIR低通滤波器,默认(缺省参数windows)选用hammiing窗。其单位脉冲响应h(n)满足线性相位条件:h(n)=h(N-1-n)其中wc为对π归一化的数字频率,0≤wc≤1。当wc=[wc1,wc2]时,得到的是带通滤波器。hn=fir1(N,wc,’ftype’)可设计高通和带阻滤波器。当ftype=high时,设计高通FIR滤波器;当ftype=stop时,设计带阻FIR滤波器。应当注意,在设计高通和带阻滤波器时,阶数N只能取偶数(h(n)长度N+1为奇数)。不过,当用户将N设置为奇数时,fir1会自动对N加1。hn=fir1(N,wc,window)可以指定窗函数向量window。如果缺省window参数,则fir1默认为hamming窗。可用的其他窗函数有Boxcar,Hanning,Bartlett,Blackman,Kaiser和Chebwin窗。例如:hn=fir1(N,wc,bartlett(N+1))使用Bartlett窗设计;hn=fir1(N,wc,chebwin(N+1,R))使用Chebyshev窗设计。hn=fir1(N,wc,’ftype’,window)通过选择wc、ftype和window参数(含义同上),可以设计各种加窗滤波器。五、思考题1.如果给定通带截止频率和阻带截止频率以及阻带最小衰减,如何用窗函数法设计线性相位低通滤波器?写出设计步骤。2.如果要用窗函数法设计带通滤波器,且给定上、下边带截止频率为ω1和ω2,试求理想带通的单位脉冲响应hd(n)。六、实验报告要求1.总结用窗函数法设计FIR滤波器的步骤。2.比较四种窗函数设计的滤波器的技术指标:阻带最小衰减和过渡带宽度。3.总结窗函数的形式和长度对设计滤波器的影响,及选择窗函数的依据。附录:用窗函数法设计FIR低通滤波器程序%用窗函数法设计FIR滤波器clearall;N=44;Wc=pi/4;%理想低通滤波器设计(怎样设计理想高通、带通、带阻滤波器?)alpha=(N-1)/2;n=[0:(N-1)];m=n-alpha+eps;hd=sin(Wc*m)./(pi*m);%hd=(sin(pi*m)-sin(Wc*m))./(pi*m);B=boxcar(N);%矩形窗string=['Boxcar','N=',num2str(N)];h=hd.*(B)';%加窗截取%以上过程可直接调用FIR1实现%wc=Wc/pi;%频率归一化%h=fir1(N-1,wc,boxcar(N));[H,m]=freqz(h,[1],1024,'whole');%频率响应mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);subplot(2,2,1)n=0:N-1;stem(n,h,'.')axis([0N-1-0.10.3])holdonn=0:N-1;x=zeros(N);plot(n,x,'-')holdoffxlabel('n')ylabel('h(n)')title('实际低通滤波器的h(n)')text(0.3*N,0.27,string)subplot(2,2,2)plot(m/pi,db)axis([01-1000])xlabel('w/pi')ylabel('dB')title('副频衰减特性')gridonsubplot(2,2,3)plot(m,pha)holdonn=0:7;x=zeros(8);plot(n,x,'-')holdoffaxis([03.15-44])xlabel('频率(rad)')ylabel('相位(rad)')title('相频特性')subplot(2,2,4)plot(m,mag)axis([03.1501.5])xlabel('频率W(rad)')ylabel('幅值')title('幅频特性')text(0.9,1.2,string)实验要求:1.修改理想低通程序为理想高通、带通、带阻的程序,重新进行实验,注意高通、带阻滤波器的情况下,N的取值有何限制?2.直接调用FIR1函数,重新进行实验;3.观察不同窗函数对滤波特性即对阻带衰减的影响,另外观察窗函数的长度N对过渡带宽的影响。

1 / 4
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功