您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 基于matlab的FIR数字滤波器设计
I基于Matlab的FIR数字滤波器设计摘要:在数字信号处理中,由于信号中经常混有各种复杂成分,所以很多信号分析都是基于滤波器而进行的,因此数字滤波器占有极其重要的地位。在数字控制系统中输入信号中所含的干扰对系统的性能会产生很大的影响,因此需要对输入信号进行处理,以提取有用信号。有限长冲激响应(FIR)滤波器在数字信号处理中发挥着重要作用,采用Matlab软件对FIR数字滤波器进行仿真设计,简化了设计中繁琐的计算。本文采用窗函数法,频率采样法通过调用Matlab函数设计FIR数字滤波器。绘制对应的幅频特性曲线。最后用基于Matlab函数设计的FIR数字滤波器进行语音滤波处理,通过滤波前后信号的频谱图和生成的声音文件的对比,分析不同滤波器的滤波效果。关键词:FIR数字滤波器,仿真,窗函数法,频率抽样法,MatlabIIDesignoftheMATLAB-basedFIRdigitalfilterAbstract:Indigitalsignalprocessing,becausethesignalisoftenmixedwithavarietyofcomplexcomposition,soalotofsignalanalysisarebasedonthefilter,digitalfilteroccupiesanextremelyimportantposition.Indigitalcontrolsystem,interference,whichismixedintheinputsignal,hasagreateffectonperformanceofthesystem.Therefore,processingofinputsignalhastobedonetogetusefulsignal.Finiteimpulseresponse(FIR)filterplaysanimportantroleintheprocessingofdigitalsignal.DesigningtheFIRfilterbyMatlabcansimplifythecomplicatedcomputationinsimulationandimprovetheperformance.Byusingthemethodsofwindowfunction,frequencysampling,thedesignofFIRdigitalfilterhasbeenprocessedinMatlab.IntheviewofthedesignedprogramofMatlabandthefigureoftheamplitude-frequencycharacterization.Atlast,byusingtheFIRdigitalfilterswhichhavebeendesignedtoprocessthesoundsignalbasedontheMatlabfunction,thefilteringeffectofdifferentdigitalfiltersisanalyzedbycomparingthesignal’sspectrumviewersandthesoundfileswhichhavebeengenerated.TheexperimentalresultsshowthattheFIRfiltersdesignedinthispaperareeffective.Keywords:FIRdigitalfilter,simulation,windowingmethod,frequencysamplingmethod,Matlab目录摘要................................................................IAbstract...........................................................II第一章绪论.......................................................11.1Matlab简介.................................................11.1.1MATLAB的发展........................................11.1.2Matlab的主要功能....................................21.2Matlab的优势及特点.........................................21.2.1MATLAB的优势........................................21.2.2Matlab语言的特点...................................2第二章数字滤波器...................................................42.1数字滤波器简介.............................................42.2IIR数字滤波器..............................................42.3FIR数字滤波器..............................................52.4IIR与FIR数字滤波器的比较..................................7第三章FIR数字滤波器的设计.........................................83.1窗函数法设计FIR滤波器.....................................83.2频率抽样法设计线性相位FIR滤波器..........................11第四章利用Matlab实现FIR滤波器设计...............................154.1窗函数法的Matlab实现.....................................154.2频率抽样法的Matlab实现...................................224.3利用滤波器处理加有噪声的音频波形..........................26结论.............................................................32致谢............................................................33参考文献...........................................................34附录.............................................................35附录一外文原文及翻译.........................................35附录二利用Matlab实现FIR滤波器设计参考程序..................541第一章绪论Matlab是矩阵实验室(MatrixLaboratory)的简称,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括Matlab和Simulink两大部分。1.1Matlab简介1.1.1MATLAB的发展MATLAB是英文MATrixLABoratory(矩阵实验室)的缩写。早期的MATLAB是用FORTRAN语言编写的,尽管功能十分简单,但作为免费软件,还是吸引了大批使用者。经过几年的校际流传,在JohnLittle。CleveMoler和SteveBanger合作,于1984年成立MathWorks公司,并正式推出MATLAB第一版版。从这时起,MATLAB的核心采用C语言编写,功能越来越强大,除原有的数值计算功能外,还新增了图形处理功能。MathWorks公司于1992年推出了具有划时代意义的4.0版;1994年推出了4.2版扩充了4.0版的功能,尤其在图形界面设计方面提供了新方法;1997年春5.0版问世,5.0版支持了更多的数据结构,使其成为一种更方便、更完善的编程语言;1999年初推出的MATLAB5.3版在很多方面又进一步改进了MATLAB语言的功能,随之推出的全新版本的最优化工具箱和Simulink3.0达到了很高水平;2000年10月,MATLAB6.0版问世,在操作页面上有了很大改观,为用户的使用提供了很大方便,在计算机性能方面,速度变的更快,性能也更好,在图形界面设计上更趋合理,与C语言接口及转换的兼容性更强,与之配套的Simulink4.0版的新功能也特别引人注目;2001年6月推出的MATLAB6.1版及Simulink4.1版,功能已经十分强大;2002年6月推出的MATLAB6.5版及Simulink5.0版,在计算方法、图形功能、用户界面设计、编程手段和工具等方面都有了重大改进;2004年,MathWorks公司推出了最新的MATLAB7.0版,其中集成了最新的MATLAB7编译器、Simumlink6.0仿真软件以及很多工具箱。这一版本增加了很多新的功能和特性,内容相当丰富。2Matlab主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,代表了当今国际科学计算软件的先进水平。1.1.2Matlab的主要功能1.数值计算和符号计算功能2.绘图功能3.语言体系4.MATLAB的工具箱1.2Matlab的优势及特点1.2.1MATLAB的优势(1)工作平台编程环境十分友好(2)编程语言简单易用(3)数据的计算处理能力十分强大(4)图像处理能力强大(5)模块集合工具箱应用广泛(6)程序的接口和发布平台很实用(7)可以开发用户界面1.2.2Matlab语言的特点MATLAB语言被称为第四代计算机语言,其利用丰富的函数资源,使程序员从繁琐的程序代码中解放出来,其最突出的特点就是简洁。MATLAB用更直观的、符合人们思维习惯的代码,代替了C和FORTRAN语言的冗长代码,给用户带来最直观、最简洁的程序开发环境,下面简单介绍一下MATLAB的主要3特点。语言简洁紧凑,使用方便,库函数十分丰富。MATLAB程序书写的形式自由,利用丰富的库函数避开了繁琐的子程序编程任务,由于库函数都是由本领域的专家编写,所以不必担心函数的可靠性。高效方便的矩阵和数组运算,MATLAB语言不需要定义数组的维数,并给出了矩阵函数、特殊矩阵函数、特殊矩阵专门的库函数,使得在求解信号处理、建模、系统识别、优化和控制等领域的问题时,显得大为简洁、方便、高效,这是其他高级语言所不能的。MATLAB既具有结构化的控制语句,又具有面向对象编程的特性。MATLAB语法限制不严格,程序设计自由度大,通过建立M后缀名文件的形式,与用户已经编好的FORTRAN、C语言成语混合编程,方便地调用有关的FORTRAN、C语言的子程序。可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上面运行。MATLAB的图形功能强大。在C和FORTRAN语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。此外,MATLAB还具有较强的编辑图形界面的能力。MATLAB拥有功能强大的工具箱,主要用来扩充其符号计算功能、图示建模仿真功能、文字处理功能以及与硬件实施交互功能。源程序的开放性强。除内部函数以外,所有MATL
本文标题:基于matlab的FIR数字滤波器设计
链接地址:https://www.777doc.com/doc-4679994 .html