六用窗函数法设计FIR数字滤波器.doc

六用窗函数法设计FIR数字滤波器.doc

ID:58667685

大小:324.50 KB

页数:16页

时间:2020-10-15

六用窗函数法设计FIR数字滤波器.doc_第1页
六用窗函数法设计FIR数字滤波器.doc_第2页
六用窗函数法设计FIR数字滤波器.doc_第3页
六用窗函数法设计FIR数字滤波器.doc_第4页
六用窗函数法设计FIR数字滤波器.doc_第5页
资源描述:

《六用窗函数法设计FIR数字滤波器.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验六用窗函数法设计FIR数字滤波器一.实验目的(1)掌握用窗函数法设计FIR数字滤波器的原理与方法。(2)熟悉线性相位FIR数字滤波器的特性。(3)了解各种窗函数对滤波特性的影响。一.实验内容和要求(1)复习用窗函数法设计FIR数字滤波器一节内容,阅读本实验原理,掌握设计步骤。(2)用升余弦窗设计一线性相位低通FIR数字滤波器,截止频率。窗口长度N=15,33。要求在两种窗口长度情况下,分别求出,打印出相应的幅频特性和相频特性曲线,观察3dB带宽和20dB带宽。总结窗口长度N对滤波器特性的影响。设计低通FIR数字滤波器时,一般以理想低通

2、滤波特性为逼近函数,即其中(3),,用四种窗函数设计线性相位低通滤波器,绘制相应的幅频特性曲线,观察3dB带宽和20dB带宽以及阻带最小衰减,比较四种窗函数对滤波器特性的影响。一.实验方法、步骤及结果测试如果所希望的滤波器的理想的频率响应函数为,则其对应的单位脉冲响应为(4.1)窗函数设计法的基本原理是用有限长单位脉冲响应序列逼近。由于往往是无限长序列,而且是非因果的,所以用窗函数将截断,并进行加权处理,得到:(4.2)就作为实际设计的FIR数字滤波器的单位脉冲响应序列,其频率响应函数为(4.3)式中,N为所选窗函数的长度。我们知道,用窗

3、函数法设计的滤波器性能取决于窗函数的类型及窗口长度N的取值。设计过程中,要根据对阻带最小衰减和过渡带宽度的要求选择合适的窗函数类型和窗口长度N。各种类型的窗函数可达到的阻带最小衰减和过渡带宽度见表4.1。表1各种窗函数的基本参数窗函数旁瓣峰值幅度/dB过渡带宽阻带最小衰减/dB矩形窗-134π/N-12三角形窗-258π/N-25汉宁窗-318π/N-44哈明窗-418π/N-53不莱克曼窗-5712π/N-74凯塞窗(α=7.865)-5710π/N-80这样选定窗函数类型和长度N之后,求出单位脉冲响应,并按照式(4.3)求出。是否满足

4、要求,要进行演算。一般在尾部加零使长度满足2的整数次幂,以便用FFT计算。如果要观察细节,补零点数增多即可。如果不满足要求,则要重新选择窗函数类型和长度N,再次验算,直至满足要求。如果要求线性相位特性,则还必须满足根据上式中的正、负号和长度N的奇偶性又将线性相位FIR滤波器分成四类。要根据所设计的滤波特性正确选择其中一类,例如,要设计线性相位低通特性,可以选择这一类,而不能选择这一类。主程序框图如图4.1所示。其中幅度特性要求用dB表示。开始读入窗口长度N计算hd(n)调用窗函数子程序求w(n)调用子程序(函数)计算H(k)=DFT[h(

5、n)]调用绘图子程序(函数)绘制H(k)幅度相位曲线结束图6-1主程序框图计算h(n)=hd(n)w(n)设画图时,用打印幅度特性。第k点对应的频率。为使曲线包络更接近的幅度特性曲线,DFT变换区间要选大些。例如窗口长度N=33时,可通过在末尾补零的方法,使长度变为64,再进行64点DFT,则可以得到更精确的幅度衰减特性曲线。下面给出MATLAB主程序:%实验四,用窗函数法设计FIR数字滤波器b=1;closeall;i=0;while(b);temp=menu('选择窗函数长度N','N=10','N=15','N=20','N=25'

6、,'N=30','N=33','N=35','N=40','N=45','N=50','N=55','N=60','N=64');menu1=[10,15,20,25,30,33,35,40,45,50,55,60,64];N=menu1(temp);temp=menu('选择逼近理想低通滤波器截止频率Wc','Wc=pi/4','Wc=pi/2','Wc=3*pi/4','Wc=pi','Wc=0.5','Wc=1.0','Wc=1.5','Wc=2.0','Wc=2.5','Wc=3.0');menu2=[pi/4,pi/2,3*pi

7、/4,pi,0.5,1,1.5,2,2.5,3];w=menu2(temp);n=[0:(N-1)];hd=ideal(w,N);%得到理想低通滤波器k=menu('请选择窗口类型:','boxcar','hamming','hanning','blackman');ifk==1B=boxcar(N);string=['Boxcar','N=',num2str(N)];elseifk==2B=hamming(N);string=['Hamming','N=',num2str(N)];elseifk==3B=hanning(N);strin

8、g=['Hanning','N=',num2str(N)];elseifk==4B=blackman(N);string=['Blackman','N=',num2str(N)];endend

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。