版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计任务书学生姓名:专业班级:指导教师:陈德军工作单位:信息工程学院题目:FIR低通滤波器的设计初始条件:具备数字信号处理的理论知识;具备Matlab编程能力;熟悉低通滤波器的设计原理;提供编程所需要的计算机一台要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1、设计通带截止频率为200Hz的FIR数字低通滤波器;2、独立编写程序实现3、完成符合学校要求的设计说明书时间安排:一周,其中3天程序设计,2天程序调试指导教师签名:年月日 系主任(或责任教师)签名:年月日目录摘要I1MATLAB简介及应用11.1MATLAB简介11.2MATLAB应用11.3MATLAB特点21.4MATLAB的优点22设计目的43设计要求44设计原理45用窗函数设计FIR滤波器的基本方法56程序的设计87仿真结果108心得体会11参考文献12可见,理想低通滤波器的单位取样响应(n)是无限长的,n从-∞到+∞,且是非因果序列。为了从hd(n)得到一个因果线性相位的FIR滤波器,必须利用有限长度N的窗函数wN(n)对hd(n)进行截取,截取后的冲击响应函数h(n)可表示为:此时h(n)为关于τ=偶对称的有限因果序列。当N为奇数时,所设计的FIR数字低通滤波器为I型滤波器;当N为偶数时,为Ⅱ型滤波器。而h(n)表示的滤波器频率特性为:H(ejw)是否能够很好的逼近Hd(ejw)取决于窗函数的频谱特性W(ejw)。若将理想滤波器的频率响应写成:其中幅度频率特性:此时,h(n)滤波器的频率特性可表示为:由此可以得到所设计的滤波器的幅度频率特性为:实际对FIR滤波器的H(ω)有影响的只是窗函数的幅度频率特性WR(ω)。实际中的FIR滤波器的幅度频率特性,是理想低通滤波器的幅度频率特性和窗函数的幅度频率特性的复卷积。复卷积给H(ω)带来过冲和波动,所以加窗函数后,对滤波器的理想特性的影响有以下几点:Hd(ω)在截止频率的间断点变成了连续的曲线,使得H(ω)出现了一个过渡带,它的宽度等于窗函数的主瓣宽度,过渡带就越宽,由于窗函数的旁瓣的影响,使得滤波器的幅度频率特性出现了波动,波动的幅度取决于旁瓣的相对幅度。旁瓣范围的面积越大,通带波动和阻带波动就越大,也就是说阻带的衰减减小。而波动的多少,取决于旁瓣的多少。增加创函数的长度,只能减少窗函数的幅度频率特性W(ω)的主瓣宽度,而不能减少主瓣和旁瓣的相对值,该值取决于窗函数的形状,即增加取决函数的长度N只能相应的减小过渡带,而不能改变滤波器的波动程度。为了满足工程上的需要,可以通过改变窗函数的形状来改善滤波器的幅度频率特性,而创函数的选择原则是:具有较低的旁瓣幅度,尤其是第一旁瓣的幅度;旁瓣的幅度下降的速率要快,以利于增加阻带的衰减;主瓣的宽度要窄,这样就可以得到比较窄的过渡带。通常上述的几点难以同时满足。当选用主瓣宽度较窄时,虽然能够得到比较陡峭,但是通带和阻带的波动明显增加;当选用比较小的旁瓣幅度时,虽然能够得到比较平坦和匀滑的幅度频率响应,但是过渡带将加宽,因此实际中选用的窗函数往往是它们的折中。在保证主瓣宽度达到一定要求的条件下,适当牺牲主瓣宽度来换取旁瓣的波动减小。以上是从幅度频率特性设计方面对窗函数提出的要求,实际中设计FIR数字滤波器往往要求是线性相位的,以此要求w(n)满足线性相位的条件,即要求w(n)满足:W(n)=W(N-1-n)所以,窗函数不仅有截短的作用,而且能够起到平滑的作用,在很多领域得到了应用。表一、六种窗函数基本参数比较窗函数窗谱性能指标加窗后滤波器性能指标旁瓣峰值/dB主瓣宽度/(2π/N)过滤带宽Δω/(2π/N)阻带最小衰减/dB矩形窗-1320.9-21三角窗-2543.05-25汉宁窗-3143.1-44海明窗-4143.3-53布拉克曼窗-5765.5-74凯泽窗-575-806程序的设计程序如下:functionhd=id_lp(wc,N)n=0:N-1;alp=(N-1)/2;M=n-alp+eps;hd=sin(wc*M)./(pi*N);在MATLAB中利用freqz—m计算绝对和相对的幅度响应。function[db,mag,pha,grd,w]=freqz_m(b,a)[h,w]=freqz(b,a,1000,'whole');h=(h(1:501))';w=(w(1:501))';mag=abs(h);db=20*log10((mag+eps)/max(mag));pha=angle(h);grd=grpdelay(b,a,w);clear;%清除MATLAB工作空间中内存变量%用海明窗设计低通滤波器fs=1000;wp=0.35*pi;ws=0.45*pi;tr_width=ws-wp; %过度带带宽N=ceil(6.6*pi/tr_width)+1;%滤波器的长度,N=奇数为1型,N=偶数为2型disp(['滤波器的长度为',num2str(N)]);n=0:N-1;wc=(ws+wp)/2;%理想低通滤波器的截止频率hd=ideal_lp(wc,N);%理想低通滤波器的单位脉冲响应w_ham=(hamming(N))';%海明窗h=hd.*w_ham;%截取得到的实际单位脉冲响应[db,mag,pha,grd,w]=freqz_m(h,[1]);%计算实际滤波器的幅度响应delta_w=2*pi/1000;ap=-(min(db(1:1:wp/delta_w+1)));%求出实际通带波动as=-round(max(db(ws/delta_w+1:1:501)));%求出最小阻带衰减%绘图subplot(231);stem(n,hd);title('理想冲激响应');ylabel('hd(n)');subplot(232);stem(n,w_ham);title('海明窗w(n)');ylabel('w(n)');subplot(233);stem(n,h);title('实际冲激响应)');ylabel('h(n)');subplot(234);plot((w*fs)/(2*pi),db);title('幅度特性)');subplot(235);plot(w/pi,pha);title('相位特性');ylabel('弧度');7仿真结果八心得体会通过本次课程设计自己对滤波器的设计有了初步的了解与掌握。也对MATLAB有了一定的了解。设计过程中,学习了许多数字信号处理课程中关于数字滤波器的设计的内容,再通过利用参考文献与网络,完成了用Matlab进行数字信号处理课程设计。通过课程设计,加深了对课堂抽象概念的理解,巩固了课堂上所学的理论知识,并能很好地理解与掌握数字信号处理中的基本概念、基本原理、基本分析方法。同时掌握编程方法和解决实际问题的技巧。与其他高级语言的程序设计相比,MATLAB环境下可以更方便、快捷地设计出具有严格线性相位的FIR滤波器,节省大量的编程时间,提高编程效率,且参数的修改也十分方便,还可以进一步进行优化设计。随着版本的不断提高,MATLAB在数字滤波器技术发挥着更大的作用。同时,用MATLAB计算有关数字滤波器的设计参数,如H(z)、h(n)等,对于数字滤波器的硬件实现也提供了一条简单而准确的途径和依据。在平时的数字信号处理实验课中我们很少接触MATLAB编程语言,但在这次编写程序以及调试的过程中遇到了很多困难,一次问我通过去图书馆查找资料,请教同学,在自己一点点改善程序,最终编写出一些比较完善的程序,这使我在这次课程设计中学到了很多知识,使我对数字信号这门课程有了更加的了解和掌握。在这几天的学习中使我对数字信号处理这门课程有了进一步的理解。经过查阅相关资料,逐步的掌握了滤波器的设计过程,使我加强了对实际问题的动手和思考和解决问题的能力。但也暴露了自身的许多不足,如自主解决问题的能力有所欠缺,这在以后学习过程中需要更好的加强。在这一周中每天都是忙碌的,但我觉得很充实,自己学到很多东西,也加深我对数字信号处理的学习兴趣。数字信号里边的公式虽多,但理解了它、掌握了它,就会发现其中也是有规律可循的。这次的课程设计中培养了我如何去学习和掌握新知识的能力,这对以后的学习和工作都有很大的帮助。参考文献[1]数字信
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论