FIR滤波器设计.docx

上传人:b****6 文档编号:14143983 上传时间:2023-06-21 格式:DOCX 页数:14 大小:329.04KB
下载 相关 举报
FIR滤波器设计.docx_第1页
第1页 / 共14页
FIR滤波器设计.docx_第2页
第2页 / 共14页
FIR滤波器设计.docx_第3页
第3页 / 共14页
FIR滤波器设计.docx_第4页
第4页 / 共14页
FIR滤波器设计.docx_第5页
第5页 / 共14页
FIR滤波器设计.docx_第6页
第6页 / 共14页
FIR滤波器设计.docx_第7页
第7页 / 共14页
FIR滤波器设计.docx_第8页
第8页 / 共14页
FIR滤波器设计.docx_第9页
第9页 / 共14页
FIR滤波器设计.docx_第10页
第10页 / 共14页
FIR滤波器设计.docx_第11页
第11页 / 共14页
FIR滤波器设计.docx_第12页
第12页 / 共14页
FIR滤波器设计.docx_第13页
第13页 / 共14页
FIR滤波器设计.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

FIR滤波器设计.docx

《FIR滤波器设计.docx》由会员分享,可在线阅读,更多相关《FIR滤波器设计.docx(14页珍藏版)》请在冰点文库上搜索。

FIR滤波器设计.docx

FIR滤波器设计

数字信号处理实验报告

FIR滤波器设计

 

 

学生姓名

班级

电子信息工程1203班

学号

指导教师

2015.5.14

实验三FIR滤波器设计

1.实验目的

(1)掌握用窗函数法,频率采样法及优化设计法设计FIR滤波器的原理及方法,熟悉响应的matlab编程。

(2)熟悉线性相位FIR滤波器的幅频特性和相频特性。

(3)了解各种不同窗函数对滤波器性能的影响。

2.实验原理

(一)线性相位实系数FIR滤波器按其N值奇偶和h(n)的奇偶对称性分为四种:

1、h(n)为偶对称,N为奇数;H(ejω)的幅值关于ω=0,π,2π成偶对称。

2、h(n)为偶对称,N为偶数;H(ejω)的幅值关于ω=π成奇对称,不适合作高通。

3、h(n)为奇对称,N为奇数;H(ejω)的幅值关于ω=0,π,2π成奇对称,不适合作高通和低通。

4、h(n)为奇对称,N为偶数;H(ejω)ω=0、2π=0,不适合作低通。

3.实验内容

(1)N=45,计算并画出矩形窗、汉明窗、布莱克曼窗的归一化的幅度谱,并比较各自的主要特点。

MATLAB源程序:

clearall;

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(abs(h1)),'-',w2/pi,20*log10(abs(h2)),'--',w3/pi,20*log10(abs(h3)),':

');

axis([0,1,-140,10]);grid;

xlabel('归一化频率/\pi');ylabel('幅度/dB');

title('三种窗口函数');

legend('矩形窗','汉明窗','布莱克曼窗',3);

实验结果图:

分析:

矩形窗函数具有最窄的主瓣宽度,但有最大的旁瓣峰值;汉明窗函数的主瓣稍宽,而旁瓣较小;布莱克曼窗函数则更甚之。

矩形窗设计的滤波器过渡带最窄,但是阻带最小衰减也最差;布莱克曼窗设计的滤波器阻带衰减最好,过渡带最宽,约为矩形窗设计的三倍。

汉明窗设计的滤波器处于矩形窗和布莱克曼窗之间。

(2)N=15,带通滤波器的两个通带边界分别是

用汉宁(Hanning)窗设计此线性相位带通滤波器,观察它的实际3dB和20dB带宽。

N=45,重复这一设计,观察幅频和相位特性的变化,注意长度N变化的影响。

MATLAB源程序:

clearall;

N=15;

h=fir1(N-1,[0.30.5],'bandpass',hanning(N));

figure

(1)

freqz(h,1)

title('N=15,汉宁窗');

N=45;

h=fir1(N-1,[0.30.5],'bandpass',hanning(N));

figure

(2)

freqz(h,1)

title('N=45,汉宁窗');

实验结果图:

分析:

观察它的实际3dB和20dB带宽,发现N=15时,其3DB带宽约为0.2pi,20db带宽约为0.45pi;N=45时,其3DB带宽约为0.16pi,20db带宽约为0.3pi可见N增大,其3db带宽和20db带宽分别减小,滤波器特性变好,过渡带变陡,幅频曲线显示其通带较平缓,波动小,阻带衰减大。

相频特性曲线显示其相位随频率变化也变大。

(3)分别改用矩形窗和Blackman窗,设计

(2)中的带通滤波器,观察并记录窗函数对滤波器幅频特性的影响,比较三种窗的特点。

MATLAB源程序:

clearall;%矩形窗

N=15;h=fir1(N-1,[0.30.5],'bandpass',kaiser(N,0));

[h1,w1]=freqz(h,1);

subplot(2,2,1);plot(w1/pi,20*log10(abs(h1)));

axis([0,1,-80,10]);grid;

xlabel('归一化频率/\pi');ylabel('幅度/dB');title('N=15,矩形窗');

N=45;h=fir1(N-1,[0.30.5],'bandpass',kaiser(N,0));

[h1,w1]=freqz(h,1);

subplot(2,2,2);plot(w1/pi,20*log10(abs(h1)));

axis([0,1,-80,10]);grid;

xlabel('归一化频率/\pi');ylabel('幅度/dB');title('N=45,矩形窗');

N=15;h=fir1(N-1,[0.30.5],'bandpass',blackman(N));

[h1,w1]=freqz(h,1);

subplot(2,2,3);plot(w1/pi,20*log10(abs(h1)));

axis([0,1,-80,10]);grid;

xlabel('归一化频率/\pi');ylabel('幅度/dB');title('N=15,布莱克曼窗');

N=45;h=fir1(N-1,[0.30.5],'bandpass',blackman(N));

[h1,w1]=freqz(h,1);

subplot(2,2,4);plot(w1/pi,20*log10(abs(h1)));

axis([0,1,-80,10]);grid;

xlabel('归一化频率/\pi');ylabel('幅度/dB');title('N=45,布莱克曼窗');

实验结果图:

分析:

同一N值,分别用矩形窗,汉宁窗,汉明窗,布莱克曼窗设计滤波器时,通过滤波器的幅频特性可见,矩形窗过渡带最窄,阻带衰减最小;布莱克曼窗过渡带最宽,阻带衰减最大。

N增加,主瓣变窄,旁瓣的分量增加,过渡带变陡,起伏震荡变密。

(4)用Kaiser窗设计一专用线性相位滤波器,N=40,如图,当β=4、6、10时,分别设计、比较它们的幅频和相频特性,注意β取不同值时的影响。

MATLAB源程序:

clearall;

N=40;

f=[00.20.20.40.40.60.60.80.81];

a=[0011001100];

beta=4;h=fir2(N-1,f,a,kaiser(N,beta));

[h1,w1]=freqz(h,1);

subplot(3,1,1);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,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);

subplot(3,1,2);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,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);

subplot(3,1,3);plot(w1/pi,20*log10(abs(h1)));axis([0,1,-80,10]);grid;

xlabel('归一化频率/\pi');ylabel('幅度/dB');

title('beta=10时凯塞窗专用线性相位滤波器');

实验结果图:

分析:

随着β取值增大,过渡带变宽,阻带衰减增大。

(5)用频率采样法设计(4)中的滤波器,过渡带分别设一个过渡点,令H(k)=0.5。

比较两种不同方法的结果。

MATLAB源程序:

clearall;

N=40;

Hk=[zeros(1,3)0.5ones(1,5)0.5zeros(1,1)0.5ones(1,5)0.5...

zeros(1,5)-0.5-ones(1,5)-0.5zeros(1,1)-ones(1,5)-0.5zeros(1,3)];

k=0:

N-1;

hn=real(ifft(Hk.*exp(-j*pi*(N-1)*k/N)));

[Hw]=freqz(hn,1);

plot(w/pi,20*log10(abs(H)));

axis([01-8010]);grid;

xlabel('归一化频率/\pi')

ylabel('幅度/dB')

title('频率采样法设计专用线性相位滤波器');

实验结果图:

分析:

与实验4窗口法的设计结果比较,频率采样法设计的滤波器阻带衰减小于窗口法,约30dB;窗口法的通带边界误差较大,在通带边界处有6dB的衰减。

(6)用雷米兹(Remez)交替算法设计(4)中的滤波器,并比较(4)、(5)、(6)三种不同方法的结果。

MATLAB源程序:

clearall;

N=40;

f=[00.150.20.40.450.550.60.80.851];

a=[0011001100];

wt=[21212];

b=remez(N-1,f,a,wt);

[h,w]=freqz(b,1);

plot(w/pi,20*log10(abs(h)));

axis([01-7010]);grid;

xlabel('归一化频率/\pi')

ylabel('幅度/dB')

title('雷米兹交替算法设计专用线性相位滤波器');

 

实验结果图:

分析:

与实验34的结果比较,雷米兹交替算法设计的滤波器阻带衰减大于频率采样法,小于窗口法;雷米兹交替算法带内带外起伏呈现等波纹状;雷米兹交替算法设计的滤波器边界易于控制,而窗口法的通带边界误差较大,在通带边界有约6dB的衰减。

(7)利用雷米兹(Remez)交替算法,设计一个线性相位高通FIR数字滤波器,其指标为:

MATLAB源程序:

clearall;

fedge=[500800];

mval=[01];

dev=[0.010.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([02500-8010]);grid;

xlabel('频率/Hz')

ylabel('幅度/dB')

title('雷米兹交替算法设计线性相位高通FIR数字滤波器');

实验结果图:

4.实验思考题

1.定性地说明用本实验程序设计的FIR滤波器的3dB截止频率在什么位置?

它等于理想频率响应Hd(ejω)的截止频率吗?

答:

三分贝截止频率在主瓣内,幅度为最大幅度的一半的位置。

它理论上不等于理想频率响应的截止频率,因为加了窗函数,频域上相当于是理想频率响应乘以窗函数,因此不一样。

实验中读出的3dB带宽刚好和给的数值一样只是因为读数的误差,由上图读得的比较不精确。

 

2.如果没有给定h(n)的长度N,而是给定了通带边缘截止频率ωc和阻带临界频率ωp,以及相应的衰减,你能根据这些条件用窗函数法设计线性相位FIR低通滤波器吗?

答:

可以,先根据不同窗函数的最小阻带衰减不同来选择适合(有不同的选择方法,只要符合条件即可)的窗函数,再利用主瓣宽,计算出N的值,下面就可以按前面的方法进行设计了。

5.实验结论

通过本实验FIR滤波器的设计,采用窗函数法,进一步熟悉了滤波器的设计,掌握了用窗函数设计FIR数字滤波器的原理及方法,熟悉了相应的计算机高级语言编程,从所做的图中也更熟悉了FIR滤波器的幅频和相频响应,也更清楚地知道了各种窗函数的不同。

主瓣宽度和旁瓣高度是互相矛盾的两方面,主瓣宽度反映的是滤波器的通带频率和阻带频率,旁瓣高度则反映了滤波器的阻带衰减特性,设计时要兼顾双方,根据滤波器的要求相互协调。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2