




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计任务书学生姓名: 专业班级:指导教师:陈德军 工作单位: 信息工程学院题目:FIR低通滤波器的设计初始条件:具备数字信号处理的理论知识;具备Matlab编程能力;熟悉低通滤波器的设计原理;提供编程所需要的计算机一台要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1、 设计通带截止频率为200Hz的FIR数字低通滤波器;2、 独立编写程序实现3、 完成符合学校要求的设计说明书时间安排:一周,其中3天程序设计,2天程序调试指导教师签名: 年月日系主任(或责任教师)签名:年月曰系主任(或责任教师)签名:年月曰目录TOC\o"1-5"\h\z\o"CurrentDocument"摘要 I\o"CurrentDocument"1MATLAB简介及应用 1MATLAB 简介 1MATLAB 应用 1MATLAB 特点 2MATLAB 的优点 2\o"CurrentDocument"2设计目的 4\o"CurrentDocument"3设计要求 4\o"CurrentDocument"4设计原理 4\o"CurrentDocument"5用窗函数设计FIR滤波器的基本方法 5\o"CurrentDocument"6程序的设计 8\o"CurrentDocument"7仿真结果 10\o"CurrentDocument"8心得体会 11\o"CurrentDocument"参考文献 12摘要提出FIR敷字滤波器的设计方案,并基于Matlab实现滤波仿真。通过使用Matlab信号处理工具箱提供的函数,选择适当的窗函数编写程序,其中窗函数按照实际信号的处理需求,参数折中选择。实验获得了比较理想的滤波器特性,可以实现较好的滤波作用。而且在实际应用中只需按需求修改滤波器参数,并结合程序的相应改动,即可实现不同功能的滤波器。关键词:Matlab;FIR窗函数;低通滤波器1MATLAB的简介及应用MATLAB简介MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB是矩阵实验室(MatrixLaboratory)的简称,和MathematicalMaple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB应用MATLAB产品族可以用来进行以下各种工作:•数值分析•数值和符号计算•工程与科学绘图•控制系统的设计与仿真•数字图像处理技术•数字信号处理技术•通讯系统设计与仿真•财务与金融工程MATLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。MATLAB特点•此高级语言可用于技术计算•此开发环境可对代码、文件和数据进行管理•交互式工具可以按迭代的方式探查、设计及求解问题•数学函数可用于线性代数、统计、傅立叶分析、筛选、优化以及数值积分等•二维和三维图形函数可用于可视化数据•各种工具可用于构建自定义的图形用户界面•各种函数可将基于MATLAB的算法与外部应用程序和语言(如C、C++、Fortran、Java、COM以及MicrosoftExcel)集成[2]•不支持大写输入,内核仅仅支持小写MATLAB的优势1)友好的工作平台和编程环境MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采的的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。(2) 简单易用的程序语言Matlab一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。(3) 强大的科学计算机数据处理能力MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C++。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。2设计目的1、 通过课程设计把自己在大学中所学的知识应用到实践当中。2、 深入了解利用Matlab设计FIR数字滤波器的基本方法。3、 在课程设计的过程中掌握程序编译及软件设计的基本方法。4、 提高自己对于新知识的学习能力及进行实际操作的能力。5、 锻炼自己通过网络及各种资料解决实际问题的能力。3设计要求1、 设计通带截止频率为200Hz的FIR数字低通滤波器;2、 独立编写程序实现3、 完成符合学校要求的设计说明书4设计原理FIR滤波器具有严格的相位特性,对于信号处理和数据传输是很重要的。目前FIR滤波器的设计方法主要有三种:窗函数法、频率取样法和切比雪夫等波纹逼近的最优化设计方法。常用的是窗函数法和切比雪夫等波纹逼近的最优化设计方法。本实验中的窗函数法比较简单,可应用现成的窗函数公式,在技术指标要求高的时候是比较灵活方便的。如果FIR滤波器的h(n)为实数,而且满足以下任意条件,滤波器就具有准确的线相位:第一种:偶对称,h(n)=h(N-1-n), 中(3)=-(NT)3/2。第二种:奇对称,h(n)=-h(N-1-n),中(3)=-(N-1)3/2+pi/2。对称中心在n=(N-1)/2处。5用窗函数设计FIR滤波器的基本方法基本思路:从时域出发设计h(n)逼近理想hd(n)。设理想滤波器的单位响应时域表达为hd(n),则Hd(n)一般是无限长的,且是非因果的,不能直接作为FIR滤波器的单位脉冲响应。要想得到一个因果的有限长的滤波器单位抽样响应h(n),最直接的方法是先将hd(n)往右平移,再连行截断,即截取为有限长因果序列:h(n)=hd(n)w(n),并用合适的窗函数连行加权作为FIR滤波器的单位脉冲响应。按照线性相位滤波器的要求,线性相位FIR数字低通滤波器的单位抽样响应h(n)必须是偶对称的。对称中心必须等于滤波器的延时常数,即用矩形窗设计的FIR低通滤波器,所设计滤波器的幅度函数在通带和阻带都呈现出振荡现象,且最大波纹大约为幅度的9%,返个现象称为吉布斯(Gibbs)效应。为了消除吉布斯效应,一般采用其他类型的窗函数。MATLAB设计FIR滤波器有多种方法和对应的函数。窗函数设计法不仅在数字滤波器的设计中占有重要的地位,同时可以用于功率谱的估计,从根本上讲,使用窗函数的目的就是消除由无限序列的截短而引起的Gibbs现象所带来的影响。FIR数字滤波器的设计是选择有限长度(长度为H)的单位脉冲响应h(n),使其传输函数HS)二习顷)ejwn满足技术要求。FIR数字滤波器的设计问题就是要求所设计的FIRn=0数字滤波器的频率响应H(ejw)去逼近所要求的理想滤波器的响应H/ejw)。从单位取样序列来看,就是使所设计的滤波器的h(n)逼近单位取样响应序列h/n)。而且错误!未找到引用源。错误!未找到引用源。错误!未找到引用源。设理想低通滤波器的传输函数为Hd(ejw),它的表达式如下:错误!未找到引用源。边界频率wc是不连续点,相应的单位取样响应错误!未找到引用源。可见,理想低通滤波器的单位取样响应hd(n)是无限长的,n从-8到+8,且是非因果序列。为了从hd(n)得到一个因果线性相位的FIR滤波器,必须利用有限长度N的窗函数wN(n)对hd(n)进行截取,截取后的冲击响应函数h⑹可表示为:
h(n)=Ad(n)ww(n),n=0,1,-,N-1h(n)=Q其他此时h(n)为关于T=J偶对称的有限因果序列。当N为奇数时,所设计的FIR数字低通2滤波器为I型滤波器;当N为偶数时,为II型滤波器。而h(n)表示的滤波器频率特性为:成的)=土「七(尚w(>b))扁"—TTH(ejw)是否能够很好的逼近Hd(ejw)取决于窗函数的频谱特性W(ejw)。若将理想滤波器的频率响应写成:乩0加)=如(诃臼一疙服其中幅度频率特性:dto,<M<71此时,h(n)滤波器的频率特性可表示为:H(*)=土由此可以得到所设计的滤波器的幅度频率特性为:H(m)=|H(的)|=土匚如(9)吨(皿-&)%实际对FIR滤波器的H(3)有影响的只是窗函数的幅度频率特性Wr(3)。实际中的FIR滤波器的幅度频率特性,是理想低通滤波器的幅度频率特性和窗函数的幅度频率特性的复卷积。复卷积给H(3)带来过冲和波动,所以加窗函数后,对滤波器的理想特性的影响有以下几点:Hd(3)在截止频率的间断点变成了连续的曲线,使得H(3)出现了一个过渡带,它的宽度等于窗函数的主瓣宽度,过渡带就越宽,由于窗函数的旁瓣的影响,使得滤波器的幅度频率特性出现了波动,波动的幅度取决于旁瓣的相对幅度。旁瓣范围的面积越大,通带波动和阻带波动就越大,也就是说阻带的衰减减小。而波动的多少,取决于旁瓣的多少。增加创函数的长度,只能减少窗函数的幅度频率特性W(3)的主瓣宽度,而不能减少主瓣和旁瓣的相对值,该值取决于窗函数的形状,即增加取决函数的长度N只能相应的减小过渡带,而不能改变滤波器的波动程度。为了满足工程上的需要,可以通过改变窗函数的形状来改善滤波器的幅度频率特性,而创函数的选择原则是:具有较低的旁瓣幅度,尤其是第一旁瓣的幅度;旁瓣的幅度下降的速率要快,以利于增加阻带的衰减;主瓣的宽度要窄,这样就可以得到比较窄的过渡带。通常上述的几点难以同时满足。当选用主瓣宽度较窄时,虽然能够得到比较陡峭,但是通带和阻带的波动明显增加;当选用比较小的旁瓣幅度时,虽然能够得到比较平坦和匀滑的幅度频率响应,但是过渡带将加宽,因此实际中选用的窗函数往往是它们的折中。在保证主瓣宽度达到一定要求的条件下,适当牺牲主瓣宽度来换取旁瓣的波动减小。以上是从幅度频率特性设计方面对窗函数提出的要求,实际中设计FIR数字滤波器往往要求是线性相位的,以此要求w(n)满足线性相位的条件,即要求w(n)满足:W(n)=W(N-1-n)所以,窗函数不仅有截短的作用,而且能够起到平滑的作用,在很多领域得到了应用。表一、六种窗函数基本参数比较窗函数窗谱性能指标加窗后滤波器性能指标旁瓣峰值/dB主瓣宽度/(2n/N)过滤带宽乙w/(2n/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仿真结果Figure1EileEdityihwInsertZoolzIlesktopjtindowHelp□sskqn.®i^c□ □0八心得体会通过本次课程设计自己对滤波器的设计有了初步的了解与掌握。也对MATLAB有了一定的了解。设计过程中,学习了许多数字信号处理课程中关于数字滤波器的设计的内容,再通过利用参考文献与网络,完成了用Matlab进行数字信号处理课程设计。通过课程设计,加深了对课堂抽象概念的理解,巩固了课堂上所学的理论知识,并能很好地理解与掌握数字信号处理中的基本概念、基本原理、基本分析方法。同时掌握编程方法和解决实际问题的技巧。与其他高级语言的程序设计相比,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 药师职业发展方向讨论试题及答案
- 考试题及答案有哪些
- 系统规划与管理师考试职业技能提升的方式研究试题及答案
- 心理咨询师考试应对客户多样性问题的技巧试题及答案
- 知识产权政策的实施与效果的考试试题及答案
- 提高光电工程师证书考试分数的试题及答案
- 机考心理学试题及答案
- 考点梳理计算机二级考试试题及答案
- 激光技术工程师基础知识回顾试题及答案
- 激光设备的健康管理策略试题及答案
- 浙江省杭州市萧山区高桥初中教育集团2024学年第二学期4月份素养调研九年级语文试卷题卷
- 2025年滁州市城投交通控股有限公司招聘19人笔试参考题库附带答案详解
- 汽车美容师洗车方法实际操作试题及答案
- 盐城2025年江苏盐城建湖县部分医疗卫生事业单位校园招聘专业技术人员37人笔试历年参考题库附带答案详解
- 中国电影史知到课后答案智慧树章节测试答案2025年春华东师范大学
- 对外经济贸易大学自主招生个人陈述写作实例
- 部门决算管理制度
- 神经内科护理案例分析
- 2025年安徽省中考模拟英语试题(原卷版+解析版)
- 【初中语文】第11课《山地回忆》课件-2024-2025学年统编版语文七年级下册
- 入团考试模拟100题及答案
评论
0/150
提交评论