1、滤波器的设计样本实验三:FIR数字滤波器设计 实验目1)掌握用窗函数法,频率采样法及优化设计法设计FIR 滤波器原理及办法。2)熟悉线性相位FIR 滤波器幅频特性和相频特性。3)理解各种不同窗函数对滤波器性能影响。一、实验内容1.N=45,计算并画出矩形窗、汉明窗、布莱克曼窗归一化幅度谱,并比较各自重要特点。clear all;N=45;wn1=kaiser(N,0);wn2=hamming(N);wn3=blackman(N);h1,w1 = freqz(wn1,N);h2,w2 = freqz(wn2,N);h3,w3 = freqz(wn3,N);plot(w1/pi,20*log10(
2、abs(h1),r-,w2/pi,20*log10(abs(h2),b-,w3/pi,20*log10(abs(h3),g-);axis(0,1,-120,10);grid;xlabel(归一化频率/pi);ylabel(幅度/dB);title(三种窗口函数);legend(矩形窗,汉明窗,布莱克曼窗,3);分析:阻带衰减和过渡带带宽是互相矛盾,矩形窗过渡带带宽窄,但是阻带衰减比较少;布莱克曼窗过渡带带宽宽,但是阻带衰减比较大2.N=15,带通滤波器两个通带边界分别是1=0.3,2=0.5。用汉宁窗设计此线性相位带通滤波器,观测它实际3dB 和20dB 带宽。N=45,重复这一设计,观测幅频
3、和相位特性变化,注意长度N 变化影响。N=15;h= fir1(N-1,0.3 0.5,bandpass,hanning(N);figure(1)freqz(h,1);axis(0,1,-60,10);title(N=15,汉宁窗);N=45;h= fir1(N-1,0.3 0.5,bandpass,hanning(N);figure(2)freqz(h,1);axis(0,1,-60,10);title(N=45,汉宁窗);结论:增长窗口函数长度可以在幅度频谱和相位频谱上获得较好特性。但代价是增长了计算量和系统阶数。3.分别改用矩形窗和布莱克曼窗,设计(2)中带通滤波器,观测并记录窗函数对滤
4、波器幅频特性影响,比较三种窗特点。clear all;%矩形窗N=15;h= fir1(N-1,0.3 0.5,bandpass,kaiser(N,0);h1,w1=freqz(h,1);subplot(2,1,1);plot(w1/pi,20*log10(abs(h1);axis(0,1,-60,10);grid;xlabel(归一化频率/pi);ylabel(幅度/dB);title(N=15,矩形窗);N=45;h= fir1(N-1,0.3 0.5,bandpass,kaiser(N,0);h1,w1=freqz(h,1);subplot(2,1,2);plot(w1/pi,20*lo
5、g10(abs(h1);axis(0,1,-60,10);grid;xlabel(归一化频率/pi);ylabel(幅度/dB);title(N=45,矩形窗);clear all;%布莱克曼窗N=15;h= fir1(N-1,0.3 0.5,bandpass,blackman(N);h1,w1=freqz(h,1);subplot(2,1,1);plot(w1/pi,20*log10(abs(h1);axis(0,1,-60,10);grid;xlabel(归一化频率/pi);ylabel(幅度/dB);title(N=15,布莱克曼窗);N=45;h= fir1(N-1,0.3 0.5,b
6、andpass,blackman(N);h1,w1=freqz(h,1);subplot(2,1,2);plot(w1/pi,20*log10(abs(h1);axis(0,1,-60,10);grid;xlabel(归一化频率/pi);ylabel(幅度/dB);title(N=45,布莱克曼窗);总结:同实验内容1结论,除此之外,运用各窗口函数构造带通滤波器特性也有些差别。汉宁窗在这方面具备较好特性。4. 用Kaiser 窗设计一专用线性相位滤波器,N=40,当=4、6、10 时,分别设计、比较它们幅频和相频特性,注意取不同值时影响。clear all;N=40;f = 0 0.2 0.2
7、 0.4 0.4 0.6 0.6 0.8 0.8 1;a = 0 0 1 1 0 0 1 1 0 0;beta=4;h = fir2(N-1,f,a,kaiser(N,beta);h1,w1=freqz(h,1);figure;plot(w1/pi,20*log10(abs(h1);axis(0,1,-60,10);grid;xlabel(归一化频率/pi);ylabel(幅度/dB);title(beta=4 时凯塞窗专用线性相位滤波器);beta=6;h = fir2(N-1,f,a,kaiser(N,beta);h1,w1=freqz(h,1);figure;plot(w1/pi,20*
8、log10(abs(h1);axis(0,1,-60,10);grid;xlabel(归一化频率/pi);ylabel(幅度/dB);title(beta=6 时凯塞窗专用线性相位滤波器);beta=10;h = fir2(N-1,f,a,kaiser(N,beta);h1,w1=freqz(h,1);figure;plot(w1/pi,20*log10(abs(h1);axis(0,1,-60,10);grid;xlabel(归一化频率/pi);ylabel(幅度/dB);title(beta=10 时凯塞窗专用线性相位滤波器);总结:Kaiser 窗beta值越大,过渡带带宽越宽,阻带衰减
9、越是厉害;beta值越小,过渡带带宽越窄,阻带衰减越是却有所减少。因此在实际应用时候,要权衡过渡带带宽和阻带衰减,以获得最优性能!5.用频率采样法设计(4)中滤波器,过渡带分别设一种过渡点,令H(k)=0.5。比较两种不同办法成果。clear all;N=40;Hk=zeros(1,3) 0.5 ones(1,5) 0.5 zeros(1,1) 0.5 ones(1,5) 0.5 zeros(1,5) -0.5 -ones(1,5) -0.5 zeros(1,1) -ones(1,5) -0.5 zeros(1,3);k=0:N-1;hn=real(ifft(Hk.*exp(-j*pi*(N-
10、1)*k/N);H w=freqz(hn,1);plot(w/pi,20*log10(abs(H);axis(0 1 -80 10);grid;xlabel(归一化频率/pi)ylabel(幅度/dB)title(频率采样法设计专用线性相位滤波器);总结:运用频率采样,获得滤波器通带内波动较好,但衰减有所减少,过渡带也比较宽!6.用雷米兹(Remez)交替算法设计(4)中滤波器,并比较(4)、(5)、(6)三种不同办法成果。clear all;N=40;f=0 0.15 0.2 0.4 0.45 0.55 0.6 0.8 0.85 1;a=0 0 1 1 0 0 1 1 0 0;wt=2 1
11、2 1 2;b=remez(N-1,f,a,wt);h,w=freqz(b,1);plot(w/pi,20*log10(abs(h);axis(0 1 -70 10);grid;xlabel(归一化频率/pi)ylabel(幅度/dB)title(雷米兹交替算法设计专用线性相位滤波器);总结:运用雷米兹交替算法可以在通带波动和阻带衰减上选取一种较好平衡。7.运用雷米兹交替算法,设计一种线性相位高通FIR 数字滤波器,其指标为:通带边界频率f c=800Hz,阻带边界频率f r=500Hz,通带波动=1dB,阻带最小衰减At=40dB,采样频率f s=5000Hz。clear all;fedge
12、=500 800;mval=0 1;dev=0.01 0.109;fs=5000;N,fpts,mag,wt=remezord(fedge,mval,dev,fs);b=remez(N,fpts,mag,wt);h,w=freqz(b,1);plot(w*2500/pi,20*log10(abs(h);axis(0 2500 -60 10);grid;xlabel(频率/Hz)ylabel(幅度/dB)title(雷米兹交替算法设计线性相位高通FIR 数字滤波器);结论:雷米兹算法是建立在频域采样基本上,运用最大值最小化原理,在带内波动和阻带衰减上进行最优化解决,因此得到滤波器效果较好。二、思考题1)定性地阐明用本实验程序设计FIR 滤波器3dB 截止频率在什么位置?它等于抱负频率响应Hd (ej)截止频率吗? 答:如果在时域通过矩形窗截取办法,3dB截止频率并不等于抱负频率响应截止频率,但如果通过在时域采样办法,3dB 截止频率和抱负截止频率有较好吻合2)如果没有给定h(n)长度N,而是给定了通带边沿截止频率c 和阻带临界频率p,以及相应衰减,能依照这些条件用窗函数法设计线性相位FIR 低通滤波器吗?答:可以,运用matlab fir1函数,将M获得大某些,就可以获得比较好线性相位低通滤波器。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1