毕业设计(论文)基于MATLAB的IIR的滤波器的设计

上传人:无*** 文档编号:42428219 上传时间:2021-11-26 格式:DOC 页数:31 大小:2.22MB
收藏 版权申诉 举报 下载
毕业设计(论文)基于MATLAB的IIR的滤波器的设计_第1页
第1页 / 共31页
毕业设计(论文)基于MATLAB的IIR的滤波器的设计_第2页
第2页 / 共31页
毕业设计(论文)基于MATLAB的IIR的滤波器的设计_第3页
第3页 / 共31页
资源描述:

《毕业设计(论文)基于MATLAB的IIR的滤波器的设计》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于MATLAB的IIR的滤波器的设计(31页珍藏版)》请在装配图网上搜索。

1、基于MATLAB的IIR的滤波器的设计摘 要随着信息化的推进,数字信号处理的地位和作用变得越来越重要。因为信息化的基础是数字化,而数字化的核心技术就是数字信号处理。而数字滤波器在需要进行数字信号处理的许多系统中起着重要作用。实际上,语音处理设备、图像处理设备和数字通信系统等各种系统中都使用数字滤波器。在进行DSP系统设计时,往往先采用MATLAB等对算法进行仿真,确定最佳算法和参数。利用MATLAB的信号处理工具箱可以直接设计数字滤波器,也可以建立模拟原型,离散化设计数字滤波器。本文在深刻理解数字滤波器的基础上,充分利用MATLAB强大的信号处理功能,对IIR数字滤波器进行设计。在IIR数字滤

2、波器设计过程中,本文介绍了IIR数字滤波器的特点、结构、设计原理以及在MATLAB中的实现。关键词:IIR数字滤波器,数字信号处理(DSP),MATLABDesign Of IIR Digital Filter Based On MATLAB Author: Yan Chengzhi Tutor : Yang YongshuangAbstractAlong with the information advancement, the digital signal processing status and the function changes more and more importantl

3、y. Because the information foundation is the digitization, but the digitized core technology is the digital signal processing. In fact, the pronunciation handling equipment, the picture handling equipment and the digital communication system and so on in each kind of system all uses the digital filt

4、er.When we design DSP system,usually used for such MATLAB simulation algorithm , so that best algorithms and parameters can be determinedThe digital filter can be designed and the analog filter model can be built by signal processing toolbox of MATLABThis paper introduces design principle of digital

5、 filter,procedures and rea1ization with MATLAB.This article in the profound understanding numeral filter foundation, fully uses the MATLAB formidable signal processing function, carries on the design to the IIR numeral filter. In the IIR numeral filter design process, this article introduced the IIR

6、 numeral filter characteristic, the structure, the principle of design as well as in the MATLAB realization.Keywords : IIR digital filter,Digital signal processing(DSP),MATLAB 目 录1 绪论11.1 IIR的滤波器设计的问题的提出11.2 本论文主要研究内容22 MATLAB语言32.1 概述32.1.1 MATLAB的发展32.1.2 MATLAB系统42.2 MTATLAB 语言52.2.1 MATLAB 语言介绍5

7、2.2.2 MATLAB的主要特点62.2.3 MATLAB语言的功能62.2.4 MATLAB的界面62.3 MTATLAB的应用72.3.1简单的数学运算72.3.2 MATLAB的工作空间82.3.3基本的绘图命令82.3.4程序流程控制93 数字滤波器113.1 数字滤波器的基本概念113.1.1数字滤波器分类113.1.2数字滤波器技术要求113.1.3数字滤波器性能指标123.1.2数字滤波器设计方法概述143.2 IIR滤波器的基本概念143.2.1 IIR滤波器特点143.2.2 IIR滤波器结构143.2.3 IIR滤波器原理174 IIR滤波器的MATLAB设计194.1

8、Matlab实现IIR滤波器的基本方法194.1.1模拟原型方法194.1.2直接设计方法194.1.3 通用Butterworth设计方法194.1.4 参数建模方法法194.2 Matlab实现IIR滤波器的基本方法示例194.2.1双线性变换法194.2.2脉冲响应不变法204.2.3直接设计法214.2.4使用MatLab下的Filter Disigned Tool224.3 Matlab实现IIR滤波器的具体示例22结论26致谢27参考文献281绪论1.1 IIR滤波器的设计的问题的提出随着信息化的推进,数字信号处理的地位和作用变得越来越重要。因为信息化的基础是数字化,而数字化的核心

9、技术就是数字信号处理。半个世纪以来,在如此强有力的需求牵引下,伴随着计算机技术、微电子技术日新月异的突破,数字信号处理的方法和应用越来越广泛和深入,发展十分迅速。“数字信号处理(DSP)”是研究数字序列信号的表示方法,并对信号进行运算,以提取包含在其中的特殊信息的一门学科。DSP是一门理论和实践密切结合的理论性和工程性都很强的学科,其理论性体现在,它综合应用数学、电路理论、信号与系统等领域的基础理论和方法,发展并形成了自己的理论体系,成为通信、雷达、声纳.、电声、电视、测控、生物医学工程的众多学科和领域的重要理论与技术基础。其工程性体现在,它的应用极为广泛,从科学技术的各个领域到国民经济的各个

10、行业,从国防建设的各种武器到装备到林林总总的消费类电子产品的设计与生产,都是数字信号处理技术的应用领域。而数字滤波器在需要进行数字信号处理的许多系统中起着重要作用。实际上,语音处理设备、图像处理设备和数字通信系统等各种系统中都使用数字滤波器。一种强大的科学计算和工程仿真软件MATLAB就产生,它的交互式集成界面能帮助用户快速的完成数据分析,矩阵运算,数字信号处理,建模仿真等。在国际学术界,MTATLAB 已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),都可以看到 MTATLAB 的应用。MTATLA 作为计算工具和科技资源,可以扩大科学研究的范围、提

11、高工程生产的效率、缩短开发周期、加快探索步伐、激发创造活力。以此为背景,本论文以MTATLAB对IIR的滤波器的设计,通过MATLAB的信号处理工具箱的应用,让我们认识到数字信号处理的重要性。对数字信号处理技术在工程技术领域的认识有进一步的了解。本文首先介绍了MATLAB的基本内容,从理论上IIR数字滤波器进行深入细致的研究是非常必要的。本文对滤波器设计中的一些重要环节,包括IIR滤波器的原理、设计步骤等做了详细的阐述。1.2 本论文主要研究内容现代社会发展要求通信系统功能越来越强,性能越来越高,构成越来越复杂;另一方面,要求数字信号处理技术研究和产品开发缩短周期,降低成本,提高水平。这样尖锐

12、对立的两个方面的要求,只有通过使用强大的计算机辅助分析设计技术和工具才能实现。IIR数字滤波器在数字信号处理中有举足轻重的地位,可以满足社会发展的要求。 本论文针对IIR滤波器的研究主要做了以下的工作:(1)介绍了数字滤波器的相关内容,包括数字滤波器分类、技术指标以及设计的一般方法。(2)对IIR滤波器的主要环节,包括基本结构以及IIR滤波器设计原理、方法和过程进行了详细的阐述。(3)在理解IIR滤波器理论的基础上,利用MATLAB强大的仿真功能,用四种不同方法对IIR进行设计及分析。2 MTATLAB语言2.1概述2.1.1 MATLAB的发展 MATLAB语言是由美国的Clever Mol

13、er博士于1980年开发的设计者的初衷是为解决“线性代数”课程的矩阵运算问题取名MATLAB即Matrix Laboratory 矩阵实验室的意思。MathWorks公司于1993年推出了基于Windows平台的MATLAB4.0。4.x版在继承和发展其原有的数值计算和图形可视能力的同时,出现了以下几个重要变化:(1)推出了SIMULINK,一个交互式操作的动态系统建模、仿真、分析集成环境。(2)推出了符号计算工具包。一个以Maple为“引擎”的Symbolic Math Toolbox 1.0。此举结束了ITI际上数值计算、符号计算孰优孰劣的长期争论,促成了两种计算的互补发展新时一代。(3)

14、构作了Notebook MathWorks公司瞄准应用范围最广的Word,运用DDE和OLE,实现了MATLAB与Word的无缝连接,从而为令业科技工作者创造了融科学计算、图形可视、文字处理于一体的高水准环境。从1997年春的5.0版起,后历经5.1,5.2,5. 3,6.0,6.1到7.0等多个版本的不断改进,MATLAB “面向对象”的特点愈加突出,数据类型愈加丰富,操作界ICI愈加友善。2002年初夏所推6 5版的最大特点是:该版本采用了JIT加速器,从而使MATLAB朝运算速度与C程序相比肩的方向前进了一大步。它将一个优秀软件的易用性与可靠性、通用性与专业性 、一般目的的应用与高深的科

15、学技术应用有机的相结合。MATLAB是一种直译式的高级语言,比其它程序设计语言容易。MATLAB语言与其它语言的关系仿佛和C语言与汇编语言的关系一样。 MATLAB已经不仅仅是一个“矩阵实验室”了,它集科学计算、图象处理;声音处理于一身,并提供了丰富的Windows图形界面设计方法。MATLAB语言是功能强大的计算机高级语言,它以超群的风格与性能风靡全世界,成功地应用于各工程学科的研究领域1。2.1.2 MATLAB系统MATLAB系统共由5个主要部分构成:(1)MATLAB语言;(2)MATLAB工作环境;(3)MATLAB数学函数库;(4)MATLAB图形处理系统;(5)MATLAB应用程

16、序接口。1MATLAB语言MATLA9语言是一种面向对象的高级语言不如前面所述它以矩阵作为最基本的数据结构。MATLAB语言有自已独特的数据结构、输入输出功能、流程控制语句和函MATLAB在工程计算方面具有其他高级语言无法比拟的优越性,它集计算、数据可视化、程序设计于一体,并能将数学问题和解决方案以用户热悉的数学符号表示出来,因而被称为“科学便笺式”的科学工程计算语言2。2MATLAB工作环境MATLAB工作环境是一个集成化的工作空间,它给用户提供了管理变量和输入输出数据的功能,并提供了用于管理调试M文件的工具。它主要包括以下部分:(1)命令窗口;(2)M文件编辑调试器;(3)MATLAB工作

17、空间;(4)在线帮助文档。3MATLAB数学函数库MATLAB数学函数库中包括了大量的数学函数,既有诸如求和、取正弦、指数运算等简单函数,也包含了矩阵转置、傅里叶变换、矩阵分解、求解线性方程组等复杂函数。MATLAB数学函数有两种方式,第一种是比较简单的内部函数,它们直接内置于MATLAB的核心中,因此运行的效率很高;第二种是以M文件提供的外部函数,它们极大地扩展了MATLAB的功能,并使MATUB具有了很高的可扩充性,使MATLAB能够应用于越来越多的科学领域3。4MATLAB图形处理系统MATLAB具有强大的图形处理功能,用于使科学计算的结果可视化。图形处理系统的功能主要包括: (1)二维

18、图形的绘制和处理; (2)三维图形的绘制和处理;(3)图形用户界面的定制。5MATLAB应用程序接口MATLAB应用程序接口(APl)是一个让MATLAB语言同C、FORTRAN等其它高级语言进行交互的函数库,该函数库的函数通过动态镕接来读写MATLAB文件。MATIA8应用程序接口的主要功能如下:(1)在MATLAB中输入和输出数据;(2)从MATLAB中调用C和FORTRAN程序; (3)在MATLAB和其他应用程序中建立客户机服务器的关系。MATLAB 数值计算函数库的另一个特点是其内容的基础性和通用性。它正由于这一特点,而适应了诸如自动控制、信号处理、动力工程、电力系统等应用学科的需要

19、,并进而开发出一系列应用工具包。 2.2 MTATLAB 语言2.2.1 MATLAB 语言介绍 MATLAB语言是由美国的Clever Moler博士于1980年开发的设计者的初衷是为解决“线性代数”课程的矩阵运算问题取名MATLAB即Matrix Laboratory 矩阵实验室的意思。一种语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于它有着不同于其他语言的特点,正如同FORTRAN和C等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一样,被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB最突出的特点就是简洁。

20、MATLAB用更直观的,符合人们思维习惯的代码,代替了C和 FORTRAN语言的冗长代码。MATLAB给用户带来的是最直观,最简洁的程序开发环境。2.2.2 MATLAB的主要特点语言简洁紧凑,使用方便灵活,库函数极其丰富;运算符丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短;MATLAB既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性;程序限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需对矩阵预定义就可使用;程序的可移植性很好,基本上不

21、做修改就可以在各种型号的计算机和操作系统上运行;MATLAB的图形功能强大;MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢;功能强大的工具箱是MATLAB的另一特色;源程序的开放性。2.2.3 MATLAB语言的功能强大的数值(矩阵)运算功能;广泛的符号运算功能;高级与低级兼备的图形功能(计算结果的可视化功能);可靠的容错功能;应用灵活的兼容与接口功能;信息量丰富的联机检索功能。2.2.4 MATLAB的界面如图2.1所示:图 2.1界面New 建立新文件Open M-File 打开M-文

22、件Open selected 打开选定文件Save Workspace As 将工作区存为Run M-File 运行M-文件Look For Selected 寻找选定文件Print 打印Print Setup 打印设置Exit MATLAB 退出 MATLAB如图2.2所示:图 2.2工作界面工作界面有4个主要的窗口:Command Window 命令窗口Command History 当前目录窗口Workspace 工作间管理窗口Current Directory 当前路径窗口2.3 MTATLAB的应用2.3.1简单的数学运算(1)常用的数学运算符+,-,*(乘),/(左除),(右除),

23、(幂)在运算式中,MATLAB通常不需要考虑空格,多条命令可以放在一行中,它们之间需要用分号隔开;逗号告诉MATLAB显示结果,而分号则禁止结果显示。(2) 常用数学函数abs,sin,cos,tan,asin,acos,atan,sqrt,exp,imag,real,sign,log,log10,conj(共扼复数)等。2.3.2 MATLAB的工作空间(1)MATLAB的工作空间包含了一组可以在命令窗口中调整(调用)的参数who :显示当前工作空间中所有变量的一个简单列表 whos :则列出变量的大小,数据格式等详细信息clear :清除工作空间中所有的变量clear :变量名:清除指定的

24、变量(2)保存和载入workspace将变量列表variables所列出的变量保存到磁盘文件filename中Variables所表示的变量列表中,不能用逗号,各个不同的变量之间只能用空格来分隔 未列variables时,表示将当前工作空间中所有变量都保持到磁盘文件中 缺省的磁盘文件扩展名为 mat,可以使用-定义不同的存储格式(ASCII,V4等)。将以前用save命令保存的变量variables从磁盘文件中调入MATLAB工作空间,用load 命令调入的变量,其名称为用save命令保存时的名称,取值也一样 Variables所表示的变量列表中,不能用逗号,各个不同的变量之间只能用空格来分隔

25、 未列出variables时,表示将磁盘文件中的所有变量都调入工作空间。2.3.3基本的绘图命令plot(x1,y1,option1,x2,y2,option2,)x1,y1给出的数据分别为x,y轴坐标值,option1为选项参数,以逐点连折线的方式绘制1个二维图形;同时类似地绘制第二个二维图形,等。这是plot命令的完全格式,在实际应用中可以根据需要进行简化如:plot(x,y);plot(x,y,option)选项参数option定义了图形曲线的颜色,线型及标示符号,它由一对单引号括起来 例exp2_3 m exp2_3_ m。2.3.4程序流程控制(1)for循环语句基本格式for 循环

26、变量=起始值:步长:终止值循环体end(2)while 表达式while循环语句基本格式循环体end若表达式为真,则执行循环体的内容,执行后再判断表达式是否为真,若不为真,则跳出循环体,向下继续执行。While循环和for循环的区别在于,while循环结构的循环体被执行的次数不是确定的,而for结构中循环体的执行次数是确定的 。(3)if,else,else if语句if 逻辑表达式执行语句end当逻辑表达式的值为真时,执行该结构中的执行语句,执行完之后继续向下进行。若为假,则跳过结构中的内容,向下执行。if 逻辑表达式执行语句1else执行语句2end if-else的执行方式为:如果逻辑表

27、达式的值为真,则执行语句1,然后跳过语句2,向下执行;如果为假,则执行语句2,然后向下执行。if逻辑表达式1执行语句1else if 逻辑表达式2执行语句2end if-else if的执行方式为:如果逻辑表达式1的值为真,则执行语句1;如果为假,则判断逻辑表达式2,如果为真,则执行语句2,否则向下执行。 switch语句格式:switch 表达式(%可以是标量或字符串)case 值1语句1case 值2 语句2 otherwise语句3end3 数字滤波器3.1数字滤波器的基本概念3.1.1 数字滤波器分类数字滤波器从实现的网络结构或者从单位脉冲响应分类,可以分成无限脉冲响应(IIR)滤波器

28、和有限脉冲响应(FIR)滤波器。它们的系统函数分别为: 数字滤波器从功能上可分类,和模拟滤波器一样,可以分为低通、高通、带通、和带阻滤波器。它们的理想幅度特性如图3.1所示4。 图3.1 理想低通、高通、带通、带阻滤波器幅度特性3.1.2 数字滤波器设计的技术要求我们通常用的数字滤波器一般属于选频滤波器。假设数字滤波器的传输函数H用下式表示: 图3.2 低通滤波器的技术要求通带内和阻带内允许的衰减一般用dB数表示,通带内允许的最大衰减用p表示,阻带内允许的最小衰减用s表示,p和s分别定义为:如将|H(ej0)|归一化为1,上式则表示成:当幅度下降到时,此时,称为3dB通带截止频率。、统称为边界

29、频率,它们在滤波器设计中是很重要的5。3.1.3数字滤波器的性能指标在进行滤波器设计时,需要确定其性能指标。一般滤波器的性能指标是以频率响应的幅度响应特性的允许误差来表征。以低通数字滤波器为例: 图 3.3 幅度特性图3.3中给出的是要设计的数字滤波器的幅度特性要求,归一化为1,是通带允许的误差,是阻带允许的误差。为通带截止频率,为阻带截止频率。用最大衰减和最小衰减(dB)的形式来表示,则通带允许的最大衰减定义为:阻带允许的最小衰减定义为:例如:若=0.707,则3dB;若0.001,60dB。以上给出的是数字域指标,因为IIR数字滤波器是根据指标先设计出模拟滤波器,然后根据s-z的映射关系得

30、到数字滤波器,所以应注意数字和模拟指标的转换。如果模拟频率和数字频率的关系为,则在模拟滤波器中对应的数值要转换一下6。例如:模拟数字滤波器的指标,在频带上的增益最大衰减为0.086dB,在频带上的最小衰减为60dB。则4000,6000对应的数字指标为:0.01,0.001,3.1.4数字滤波器设计方法概述(1)按照任务的要求,确定滤波器的性能指标。(2)用一个因果稳定的离散线性时不变系统的系统函数去逼近这一性能要求。系统函数有无限脉冲响应(IIR)系统函数及有限脉冲响应(FIR)系统函数两种。(3)利用有限精度算法来实现这个系统函数。这里包括运输结构、选择合适的字长以及有效数字的处理方法(舍

31、入、截尾)等。实际的技术实现,包括采用通用计算机软件或专用数字滤波器硬件来实现,或采用专用的或通用的数字信号处理器来实现7。3.2 IIR数字滤波器基本概念3.2.1 IIR数字滤波器的特点(1) 系统的单位抽样相应h(n)无限长(2) 系统函数H(z)在有限Z平面(0Z)上有极点存在(3) 存在输出到输入的反馈,递归型结构8。3.2.2 IIR数字滤波器的结构(1)直接型 直接按有理分式的形式画成,分为直接型和直接型。 (a) 直接型结构 (b) 直接型结构图3.4 直接型结构图 比较直接型和直接型,可以发现,直接型比直接型节省M个延时单元,比M=N的情况下要省一半。(2)级联型将传输函数化

32、为因子乘积的形式通常称式,k=1,L为基本的二阶节形式。下图是一个N=6时按式所得到的级联型结构,其中每个基本的二阶节采用直接型构成。图3.5 N=6时 IIR滤波器的级联型结构(3)并联型 将传输函数用部分分式将它展开以下的形式其中N=L+2P。若MN,若M=N,仅有存在,在MN的情况下,上式可表示为其中代表式中的第2个求和项中一阶节,而则代表式中的第3个求和项中二阶节。下图是并联结构的流图形式。 图3.6 IIR滤波器的并联结构(4)转置型 按照信号流图的转置定理,将以上各种信号流图中所有分支的方向反转,并保持支路的增益不变,并将网络的输入也输出交换位置,可得到相应流图结构的转置型结构9。

33、总之,任意阶的IIR滤波器可通过数学分解,表示为:其中为如下的二阶形式:这样就可以将任意阶的IIR滤波器通过若干二阶网络(也称为滤波器的二阶基本节)级联起来构成,其结构如图3.7所示。其中,代表第i级的二阶网络。图3.7 二阶网络结构图对于每一个二阶基本节,可以转置直接II型结构加以实现,如图所示: 图3.8 转置直接II型结构图采用这种级联结构实现IIR滤波器的优点是每一个基本节只是关系到滤波器的某一对极点和一对零点,调整系数a0i、a1i、a2i,只单独地调整了滤波器第i对零点而不影响其他任何零、极点。同样,调整b1i、b2i系数、也只单独调整了第i对极点。因此,这种结构便于准确地实现滤波

34、器的零、极点,也便于调整滤波器的频率响应性能。这种结构的另一个优点是存储单元需要较少,在硬件实现时,可以用一个二阶节进行时分复用,从而降低对FPGA硬件资源的要求。3.2.3 IIR滤波器原理IIR滤波器广泛应用于数字信号处理中。IIR的传输函数如下:该传输函数既有极点又有零点。输出既依赖于输入又依赖于过去输出。IIR所需计算比FIR少。但是IIR具有稳定性问题。对滤波系数的量化特别敏感。一个N阶IIR滤波器的结构如图3.9所示:图3.9 N阶IIR滤波器的一般结构通常,IIR滤波器是以二阶节级联方式实现。一个双二阶节的IIR滤波器结构如图3.10所示:图3.10 2级双节IIR滤波器的结构4

35、 IIR滤波器的MATLAB设计4.1 Matlab实现IIR滤波器的基本方法4.1.1模拟原型方法描述:采用经典低通滤波器作为连续域上的设计模型,通过频域变换得到IIR数字滤波器,最后还要进行离散化处理10。完整设计函数:besself,butter,cheby1,cheby2,ellip;滤波器的阶估函数:buttord,cheb1ord,cheb2ord,ellipord;低通模拟滤波器原型函数:besselap,buttap,cheb2ap,ellipap;频域变换函数:lp2bp,lp2bs,lp2hp,lp2lp;其他函数:bilinear,impinvar4.1.2直接设计方法描

36、述:直接在离散时域上估计线性的幅度响应函数:yulewalk4.1.3通用Butterworth设计方法描述:使用Butterworth设计低通数字滤波器函数:maxflat4.1.4参数建模方法描述:寻找接近于所需要设计的滤波器的通用模型时域上的建模函数:lpc,prony,stmcb;频域上的建模函数:invreqs,invfreqz4.2 Matlab实现IIR滤波器基本方法示例4.2.1双线性变换法低通,采样频率为1Hz,通带临界频率fp =0.2Hz,通带内衰减小于1dB(p=1);阻带临界频率fs=0.3Hz,阻带内衰减大于25dB(s=25)。设计一个数字滤波器满足以上参数11。

37、FS=1%通带、阻带截止频率Fl=0.2;Fh=0.3;%频率预畸wp=(Fl/FS)*2*pi; %临界频率采用角频率表示ws=(Fh/FS)*2*pi; %临界频率采用角频率表示OmegaP=2*FS*tan(wp/2);OmegaS=2*FS*tan(ws/2);n,Wn=buttord(OmegaP,OmegaS,1,25,s);b,a=butter(n,Wn,s);%freqs(b,a) %设计模拟的bz,az=bilinear(b,a,FS); %映射为数字的freqz(bz,az,512,FS,whole)运行结果如图4.1: 图4.1运行结果4.2.2脉冲不响应变法低通,采样频

38、率为1Hz,通带临界频率fp =0.2Hz,通带内衰减小于1dB(p=1);阻带临界频率fs=0.3Hz,阻带内衰减大于25dB(s=25)。设计一个数字滤波器满足以上参数12。FS=1n,Wn=buttord(0.2*2*pi,0.3*2*pi,1,25,s); %临界频率采用角频率表示b,a=butter(n,Wn,s);%freqs(b,a) %设计模拟的bz,az=impinvar(b,a,FS); %映射为数字的freqz(bz,az,512,FS)运行结果如图4.2: 图4.2运行结果4.2.3直接设计法低通,采样频率为1Hz,通带临界频率fp =0.2Hz,通带内衰减小于1dB(

39、p=1);阻带临界频率fs=0.3Hz,阻带内衰减大于25dB(s=25)。设计一个数字滤波器满足以上参数。% Matlab 使用归一化的频率参数(临界频率除以采样频率的1/2)。%这样临界频率参数的取值范围在0和1之间,1代表Fs/2(用角频率表示的时候对应)FS=1n,Wn=buttord(0.2/(FS/2),0.3/( FS /2),1,25);b,a=butter(n,Wn);freqz(b,a,512, FS);运行结果如图4.3所示: 图4.3运行结果4.2.4使用MatLab6下的Filter Designed Tool如图4.4所示:图4.4运行结果4.3 Matlab实现I

40、IR滤波器具体举例下面以实现双线性变换法实现Butterworth低通滤波器、低通变换为带通为例:实现Butterworth低通滤波器具体编程如下:%采样频率10Hz,通带截止频率fp=3Hz,阻带截止频率fs=4Hz%通带衰减小于1dB,阻带衰减大于20dB%使用双线性变换法由模拟滤波器原型设计数字滤波器T=0.1; FS=1/T;fp=3;fs=4;wp=fp/FS*2*pi;ws=fs/FS*2*pi;Rp = 1; % 通带衰减As = 20; % 阻带衰减% 频率预畸OmegaP = (2/T)*tan(wp/2); % Prewarp Prototype Passband freq

41、OmegaS = (2/T)*tan(ws/2); % Prewarp Prototype Stopband freq%设计 butterworth 低通滤波器原型N = ceil(log10(10(Rp/10)-1)/(10(As/10)-1)/(2*log10(OmegaP/OmegaS);OmegaC = OmegaP/(10(Rp/10)-1)(1/(2*N);z,p,k = buttap(N);%获取零极点参数p = p*OmegaC;k = k*OmegaCN;B = real(poly(z);b0 = k;cs = k*B;ds = real(poly(p);% 双线性变换b,a

42、 = bilinear(cs,ds,FS);% 绘制结果freqz(b,a,512,FS);运行结果如图4.5:图4.5运行结果实现低通到带通具体编程如下:% 采样频率 100Hz,Wpl=20Hz,Wph=30Hz,Wsl=15Hz,Wsh=35Hz,% 频率/采样频率*2*pi%Wpl=0.4*pi,Wph=0.6*pi,Wsl=0.2*pi,Wsh=0.8*pi,%Rp=1;As=20T = 1; Fs = 1/T; % Set T=1%T=2;Wpl=tan(0.4/2/Fs*pi);Wph=tan(0.6/2/Fs*pi);Wsl=tan(0.3/2/Fs*pi);Wsh=tan(0

43、.7/2/Fs*pi);Rp = 1; % Passband ripple in dBAs = 40; % Stopband attenuation in dB%计算模拟低通原型的参数OmigaP=Wph-Wpl; %低通滤波器通带截止频率OmigaS=Wsh-Wsl; %低通滤波器通带截止频率N,Wn=buttord(OmigaP,OmigaS,Rp,As,s);B,A=butter(N,Wn,s);BT,AT=lp2bp(B,A,sqrt(Wph*Wpl),Wph-Wpl);b,a=bilinear(BT,AT,Fs);H=freqz(b,a,200,whole);plot(abs(H);

44、运行结果如图4.6图4.6运行结果结 论数字滤波器的应用十分广泛,利用MATLAB语言,很容易地设计出IIR滤波器IIR滤波器可以用较少的阶数获得很高的选择特性,所用的存储单元少、运算次数少,具有经济、高效的特点在相位要求不敏感的场合,如语音通信等,适合用IIR滤波器;因为IIR数字滤波器是递归结构,极点必须在Z平面单位圆内才能稳定,这种结构运算中的四舍五入处理有时会引起寄生振荡除了有限字长效应以外,不同结构引入的误差也有所不同在实际设计中,要注意实现中的误差问题另外,IIR滤波器在对相位要求严格线性的场合,需加全通网络进行较正,增加了滤波器的阶数和复杂性这时可选用FIR滤波器。它具有严格的线

45、性相位。利用MATLAB的强大运算功能,基于MATLAB信号处理工具箱(Signal Processing Toolbox)的数字滤波器设计法可以快速有效的设计由软件组成的常规数字滤波器,设计方便、快捷,极大的减轻了工作量。在设计过程中可以对比滤波器特性,随时更改参数,以达到滤波器设计的最优化。利用MATLAB设计数字滤波器在电力系统二次信号处理软件和微机保护中,有着广泛的应用前景。通过本文的研究,使我能够正确的使用Matlab软件,并对进行数字信号处理。对以后信息处理的学习和研究奠定了基础。参考文献1 董长虹,余啸海Matlab信号处理与应用M国防工业出版社,2005232 韩得竹,王 华M

46、ATLAB电子仿真与应用M国防工业出版社,200145-463 邹鲲,袁俊泉,龚享铱MATLAB6x信号处理M清华大学出版社,2002123-1404 张立材,吴冬梅数字信号处理M北京邮电大学出版社2004170-1725 吴振扬数字信号处理的原理与实现M东南大学出版社,2002169-1706 丁玉美,高西全数字信号处理M西安电子科技出版社,20053-207 陈怀琛,高西全MATLAB及在电子信息课程中的应用M电子工业出版社,20038 张圣勤Matlab 7.0实用教程M机械工业出版社,200615-309 Abed, K.H.; Venugopal, V.; Nerurkar, S.B

47、.; High speed digital filter design using minimal signed digit representation. SoutheastCon, 2005. Proceedings. IEEE.8-10 April 2005 Page(s):105 110.Digital Object Identifier 10.1109/SECON.2005.142322710 Bougas, P.; Kalivas, P.; Tsirikos, A.; Pekmestzi, K.Z.;Pipelined array-based IIR filter. Circuit

48、s and Systems I: Regular Papers, IEEE Transactions on see also Circuits and Systems I: Fundamental Theory and Applications, IEEE Transactions onVolume 52, Issue 1, Jan. 2005 Page(s):108 - 118 .Digital Object Identifier 10.1109/TCSI.2004.83854211 饶志强,叶念渝.Fir和IIR数字滤波器的探讨与实现.计算机与数字工程J. 第33 卷(2005) 第7 期12 Jongsun Park; Woopyo Jeong; Hunsoo Choo; Mahmoodi-Meimand, H.; Yongtao Wang; Roy, K.; High performance and low power IIR filter design based on sharing multiplication. Low Power Electronics and Design, 2002. ISLPED 02. Proceedings of the 2002 International Symposium on2002 Page(s):295 300

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!