基于MATLAB的IIR数字滤波器的设计与仿真-论文原文精品资料.doc
本科毕业设计论文题 目 基于MATLAB的IIR数字滤波器的设计与仿真专业名称 电子信息工程 学生姓名 王星 指导教师 令前华 完成时间 2012年6月 西北工业大学明德学院本科毕业设计论文目录摘 要1ABSTRACT2前 言3第1章 滤波器的基本概念41.1 滤波器的定义41.2 滤波器的发展41.3 滤波器的分类5第2章 滤波器的原理与设计72.1 模拟滤波器的原理与设计72.2 数字滤波器的原理与设计8第3章 IIR数字滤波器的设计103.1 IIR数字滤波器简介103.2 IIR数字滤波器的主要技术指标103.3 IIR数字滤波器的设计过程123.3.1用脉冲相应不变法设计IIR数字滤波器133.3.2双线性变换法设计IIR数字滤波器16第4章 IIR数字滤波器的实现204.1 matlab简介204.1.1 matlab的概况204.1.2 matlab的语言特点204.1.3 matlab的功能224.2 利用模拟原型进行IIR数字滤波器的设计和仿真234.2.1巴特沃斯(Butterworth)和椭圆数字低通滤波器的设计244.2.2切比雪夫(Chebyshev)数字滤波器的设计304.3 IIR数字滤波器的直接设计法34第5章 IIR数字滤波器的综合设计和仿真405.1数字低通滤波器设计实例与仿真405.2数字带通滤波器设计实例与仿真42结 论45致 谢46参考文献47毕业设计小结48II摘 要在现代通信系统中,由于信号中经常混有各种噪声和干扰,所以很多信号分析都是基于滤波器而进行的,而数字滤波器是通过数值运算实现滤波,具有处理精度高、稳定、灵活、不存在阻抗匹配问题等优点,可以实现模拟滤波器无法实现的特殊滤波功能。数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。实现IIR滤波器的阶次较低,所用的存储单元较少,效率高,精度高,而且能够保留一些模拟滤波器的优良特性,因此应用很广。Matlab软件以矩阵运算为基础,把计算、可视化及程序设计有机融合到交互式工作环境中,并且为数字滤波的研究和应用提供了一个直观、高效、便捷的利器。尤其是Matlab中的信号处理工具箱使各个领域的研究人员可以直观方便地进行科学研究与工程应用。本文根据模拟滤波器的设计原理,提出了IIR数字滤波器的设计方法,并在MATLAB环境下实现了IIR 数字滤波器的设计和仿真。其主要内容概括为:首先对滤波器的原理和设计进行了介绍;接着描述了IIR数字滤波器的基本概念,其中包括系统的描述、系统的传递函数、系统的模型;接着简单介绍MATLAB,并对数字滤波器在MATLAB环境下如何实现进行了介绍;重点描述了IIR数字滤波器的设计过程,最后对IIR滤波器进行仿真。关键词: MATLAB, IIR数字滤波器, 模拟滤波器ABSTRACTIn modern communication system, because the signal is often mixed with various noise and interference, so a lot of signal analysis are based on the filter and the digital filter, and through numerical arithmetic to realize filtering, has high processing precision, stable, flexible, there is no problem of impedance matching and other advantages, can realize analog filter can achieve special filtering function.Digital filter based on the impulse response function in the time domain characteristics, can be divided into two types, namely, infinite impulse response (IIR) digital filters and finite impulse response (FIR) digital filter.Realization of IIR filter order is relatively low, the storage unit is less, high efficiency, high precision, and can retain some analog filter of excellent properties, so the application is very wide.Matlab software for matrix computation based on the calculation, visualization, and the program design of the organic integration of the interactive environment, and digital filtering for applications in research and provides an intuitive, efficient, convenient tool.Especially the Matlab signal processing toolbox to various fields of research personnel can undertake scientific research and engineering application. In this paper, according to the analog filter design theory, puts forward the design of IIR digital filter method, and MATLAB environment in the realization of IIR digital filter design and simulation.Its main content is wraparound for: first on the filter principle and design are introduced; then described the IIR basic concepts of digital filter, which includes system is described, the transfer function of the system, system model; then a brief introduction of the MATLAB, and the digital filters in the MATLAB environment how to realization are introduced; focus on the description of IIR digital filter design process, the last of the IIR filter simulation.KEY WORDS: MATLAB, IIR digital filter, Dimulation filt前 言滤波是信号处理的基础,滤波运算是信号处理中的基本运算,滤波器的设计也就相应成为数字信号处理的最基本问题之一。滤波器可广义的理解为一个信号选择系统,它让某些信号成分通过又阻止或衰减另一些成分。在更多的情况下,滤波器可理解为选频系统,如低通、高通、带通、带阻。滤波器可分为三种:模拟滤波器、采样滤波器和数字滤波器。模拟滤波器可以是由RLC构成的无源滤波器,也可以是加上运放的有源滤波器,是连续时间系统;采样滤波器由电阻、电容、电荷转移器件、运放等组成,属于离散时间系统,幅度连续;数字滤波器由加法器、乘法器、存储延迟单元、时钟脉冲发生器和逻辑单元等数字电路构成,精度高,稳定性好,不存在阻抗匹配问题,可以时分复用。数字滤波器是具有一定传输选择特性的数字信号处理装置,其输入、输出均为数字信号,实质上是一个由有限精度算法实现的线性时不变离散系统。它的基本工作原理是利用离散系统特性对系统输入信号进行加工和变换,改变输入序列的频谱或信号波形,让有用频率的信号分量通过,抑制无用的信号分量输出。数字滤波器和模拟滤波器有着相同的滤波概念,数字滤波器根据其单位脉冲响应的性质可分为无限长单位脉冲响应滤波器IIR和有限长单位脉冲响应滤波器(FIR)两种,按其频率响应特性可分为低通、高通、带通、带阻等类型,与模拟滤波器相比,数字滤波器除了具有数字信号处理的固有优点外,还有灵活性强、稳定性好、滤波精度高等优点。61第1章 滤波器的基本概念1.1 滤波器的定义滤波器是一种用来消除干扰杂讯的器件,凡是可以使信号中特定的频率成分通过,而极大地衰减或抑制其他频率成分的装置或系统都称之为滤波器,相当于频率“筛子”。 滤波器的功能就是允许某一部分频率的信号顺利的通过,而另外一部分频率的信号则受到较大的抑制,它实质上是一个选频电路。滤波器中,把信号能够通过的频率范围,称为通频带或通带;反之,信号受到很大衰减或完全被抑制的频率范围称为阻带;通带和阻带之间的分界频率称为截止频率;理想滤波器在通带内的电压增益为常数,在阻带内的电压增益为零;实际滤波器的通带和阻带之间存在一定频率范围的过渡带。1.2 滤波器的发展在近代电信设备和各类控制系统中,滤波器应用极为广泛;在所有的电子部件中,使用最多,技术最为复杂的要算滤波器了。滤波器的优劣直接决定产品的优劣,所以,对滤波器的研究和生产历来为各国所重视。 1917年美国和德国科学家分别发明了LC滤波器,美国第一个多路复用系统的出现,20世纪50年代无源滤波器日趋成熟,60年代起由于计算机技术、集成工艺和材料工业的发展,滤波器发展上了一个新台阶,并且朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉的方向努力,70年代以后的主攻方向为小体积、多功能、高精度、稳定可靠导致RC有源滤波器、数字滤波器、开关电容滤波器和电荷转移器等各种滤波器的飞速发展,到70年代后期,上述几种滤波器的单片集成已被研制出来并得到应用,80年代,致力于各类新型滤波器的研究,努力提高性能并逐渐扩大应用范围,90年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。当然,对滤波器本身的研究仍在不断进行。 我国于50年代后广泛使用滤波器,当时主要用于话路滤波和报路滤波。经过半个世纪的发展,我国滤波器在研制、生产和应用等方面已踏入国际发展步伐,但由于缺少专门研制机构,集成工艺和材料工业跟不上来,使得我国许多新型滤波器的研制应用与国际发展有一段距离。1.3 滤波器的分类安县好处理的类型分,滤波器分为模拟滤波器和数字滤波器。模拟滤波器由电阻,电容,电感等原器件构成;而数字滤波器则可由数字电路实现或软件实现。按脉冲响应来分类,数字滤波器分为IIR和FIR,即无限冲激响应滤波器和有限冲激响应滤波器;其中IIR网络中有反馈回路,FIR网络中没有反馈回路。从小的方面分:a.按所处理的信号分为模拟滤波器和数字滤波器两种。b.按所通过信号的频段分为低通、高通、带通和带阻滤波器四种。低通滤波器:它允许信号中的低频或直流分量通过,抑制高频分量或干扰和噪声。 高通滤波器:它允许信号中的高频分量通过,抑制低频或直流分量。带通滤波器:它允许一定频段的信号通过,抑制低于或高于该频段的信号、干扰和噪声。 带阻滤波器:它抑制一定频段内的信号,允许该频段以外的信号通过。图1.1 由通过信号的频段划分的四种滤波器c.按所采用的元器件分为无源和有源滤波器两种: 无源滤波器:仅由无源元件(R、L 和C)组成的滤波器,它是利用电容和电感元件的电抗随频率的变化而变化的原理构成的。这类滤波器的优点是:电路比较简单,不需要直流电源供电,可靠性高;缺点是:通带内的信号有能量损耗,负载效应比较明显,使用电感元件时容易引起电磁感应,当电感L较大时滤波器的体积和重量都比较大,在低频域不适用。 有源滤波器:由无源元件(一般用R和C)和有源器件(如集成运算放大器)组成。这类滤波器的优点是:通带内的信号不仅没有能量损耗,而且还可以放大,负载效应不明显,多级相联时相互影响很小,利用级联的简单方法很容易构成高阶滤波器,并且滤波器的体积小、重量轻、不需要磁屏蔽(由于不使用电感元件);缺点是:通带范围受有源器件(如集成运算放大器)的带宽限制,需要直流电源供电,可靠性不如无源滤波器高,在高压、高频、大功率的场合不适用。第2章 滤波器的原理与设计滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。可以设计系统的频率响应,让它满足一定的要求,从而对通过该系统的信号的某些特定的频率成分进行过滤,这就是滤波器的基本原理。如果系统是一个连续系统,则滤波器称为模拟滤波器。如果系统是一个离散系统,则滤波器称为数字滤波器。2.1 模拟滤波器的原理与设计模拟滤波器可以分为无源和有源滤波器,滤波器是一种能使有用信号顺利通过而同时对无用频率信号进行抑制(或衰减)的电子装置。工程上常用它来做信号处理、数据传送和抑制干扰等。以往主要采用无源元件R、L和C组成模拟滤波器,六十年代以来,集成运放获得了迅速地发展,由它和R、C组成的有源滤波器,具有不用电感、体积小、重量轻等优点。此外,由于集成运放的开环电压增益和输入阻抗均很高,而输出阻抗又很低,而且,由其构成的有源滤波器还具且一定的电压放大和缓冲作用。因此,基于放大器和R、C构成的有源滤波器应用日益广泛。模拟滤波器的设计,就是用模拟系统的系统函数去逼近所要求的理想特性。标准的模拟低通滤波器的设计公式有巴特沃思和切比雪夫等,它们都是根据幅度平方函数来确定的。为逼近理想低通滤波器,其模拟理想低通滤波器的幅度特性可用幅度平方函数表示,即 (2.1)式中,为所设计的模拟滤波器的系统函数,它是s的有理函数;是其稳态响应,即滤波器频率特性为滤波器的稳态振幅特性。由幅度平方函数确定的方法是:(a) 在中,令,得到;(b) 将的有理式进行分解,得到零点和极点。如果系统函数是最小相位函数,则s平面左半平面的零点和极点都属于,而任何在虚轴上的极点和零点都是偶次的,其中一半属于(c) 根据具体情况,比较和的幅度特性,确定增益常数,这样就完全确定了。在模拟滤波器中,低通滤波器的设计是最基本的,高通,带通和带阻滤波器等可以用频带变换方法由低通滤波器转变得到。2.2 数字滤波器的原理与设计所谓数字滤波器,是指输入、输出均为数字信号,通过一定运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的器件。数字滤波器和模拟滤波器相比,因为信号的形式和实现滤波的方法不同,数字滤波器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配等优点。数字滤波器从功能上分类:可分为低通滤波器、高通滤波器、带通滤波器、带阻滤波器。从滤波器的网络结构或者从单位脉冲响应分类:可分为IIR滤波器(即无限长单位冲激响应滤波器)和FIR滤波器(即有限长单位冲激响应滤波器)。IIR数字滤波器可用一个n阶差分方程表示: (2.2)或用它的Z域系统函数: (2.3)对照模拟滤波器的传递函数: (2.4)可以看出,设计数字滤波器的思路与模拟滤波器相仿,设计实质都是寻找一组系数b,a,去逼近所求的频率响应,以便在性能上满足预定的技术要求;不同的是数字滤波器是在Z平面寻找合适的H(Z), 模拟滤波器则是在S平面用数学逼近法寻找近似的所需特性H(S)。由于模拟滤波器的设计在理论上已十分成熟,因此数字滤波器设计的关键是将H(S)变换至H(Z),即利用复值映射将模拟滤波器离散化。已经证明,脉冲响应不变法和双线性变换法能较好地担当此任。IIR数字滤波器的单位响应是无限长的,而模拟滤波器一般都具有无限长的单位脉冲响应,故与模拟滤波器相类似。第3章 IIR数字滤波器的设计3.1 IIR数字滤波器简介数字滤波器在数字信号处理的各种应用中发挥着十分重要的作用。它是通过对采样数据信号进行数学运算处理来达到滤波的目的。其中无限冲击响应数字滤波器也称IIR是采用对离散采样数据作差分方程运算来进行滤波。IIR数字滤波器的优点在于可以利用模拟滤波器设计的结果,然后采用双线性变换法或冲激响应不变法将模拟滤波器转换成数字滤波器,而模拟滤波器的设计方便简单、有大量的图表可查。IIR数字滤波器具有以下特点:(1) IIR数字滤波器的系统函数可以写成封闭函数的形式。 (2) IIR数字滤波器采用递归型结构,即结构上带有反馈环路。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。 (3) IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有现成的设计数据或图表可查,其设计工作量比较小,对计算工具的要求不高。在设计一个IIR数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。 (4) IIR数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准网络。3.2 IIR数字滤波器的主要技术指标在设计IIR数字滤波器之前,首先了解数字滤波器的技术指标,才能将其转化成满足要求的模拟滤波器技术指标,再将模拟滤波器转化成数字滤波器。数字滤波器的主要技术指标为:(1) 特征频率参数滤波器的频率参数主要有:通带截止频率:为通带与过渡带的边界点,在该点信号增益到规定的下限。阻带截频:为阻带于过渡带的边界点,在该点信号衰减到规定的下限。转折频率:为 信号功率衰减到(约为3)时的频率,但在多数情况下也常以作为通带或阻带截频。当电路没有损耗时,固有频率,就是其谐振频率。(2) 增益和衰减滤波器在通带内的增益并不是常数。对低通滤波器来说,通带增益一般指时的增益;对于高通而言,通带增益指时的增益;对于带通而言,通带增益则指中心频率处的增益。对带阻滤波器而言,应给出阻带衰减,衰减定义为增益的倒数。通带增益变化指通带内各点增益的最大变化量,如果以为单位,则指增益值的变化量。(3) 阻尼系数与品质因数阻尼系数是表征滤波器对角频率为信号的阻尼作用,同时是滤波器中表示能量衰减的一项重要指标,也是与传递函数的极点实部大小相关的一项系数。阻尼系数的倒数1/称为品质因数Q,是评价带通和带阻滤波器频率选择特性的一个重要指标,它可以表示为。其中为带通或带阻的带宽,为中心频率,在多数情况下中心频率等于固有频率。(4) 灵敏度滤波器的滤波电路是由很多元件构成的,每个元件的参数值变化都会影响它的性能。当滤波器的某一个性能指标对另一个性能指标变化的灵敏度记为,定义为: (3.1)灵敏度是滤波电路设计中的一个重要参数,但该灵敏度与测量仪器或电路系统灵敏度概念不同,该灵敏度越小,标志着电路容错能力越大,稳定性也就越高。(5) 群延时函数当滤波器幅频特性满足设计要求时,为保证输出信号失真不超过允许范围,对其相频特性也相应提出了一定要求。在滤波器设计中,常用群延时函数评价信号经滤波后相位失真程度,越接近常数,信号相位失真越小。3.3 IIR数字滤波器的设计过程IIR数字滤波器的设计一般有两种方法:一个是借助模拟滤波器的设计方法进行。其设计步骤是,先设计模拟滤波器,再按照某种方法转换成数字滤波器。这种方法比较容易一些,因为模拟滤波器的设计方法已经非常成熟,不仅有完整的设计公式,还有完善的图表供查阅;另外一种直接在频率或者时域内进行,由于需要解联立方程,设计时需要计算机做辅助设计。其设计步骤是:先设计过渡模拟滤波器得到系统函数,然后将按某种方法转换成数字滤波器的系统函数。另外,还有一些典型的优良滤波器类型可供我们使用。为了保证转换后的稳定且满足技术指标要求,对转换关系提出两点要求:(1)因果稳定的模拟滤波器转换成数字滤波器,仍是因果稳定的。(2)数字滤波器的频率相应模仿模拟滤波器的频响特性,s平面的虚轴映射为z平面的单位圆,相应的频率之间呈线性关系。利用模拟滤波器成熟的理论设计IIR数字滤波器的过程是:(1)确定数字低通滤波器的技术指标:通带边界频率、通带最大衰减、阻带截止频率、阻带最小衰减。(2)将数字低通滤波器的技术指标转换成相应的模拟低通滤波器的技术指标。(3)按照模拟低通滤波器的技术指标设计过渡模拟低通滤波器。(4)用所选的转换方法,将模拟滤波器转换成数字低通滤波器系统函数。IIR数字滤波器的设计流程图如下:数字滤波器技术指标模拟滤波器 技术指标 数字滤波器 模拟滤波器 模拟滤波器设计方法变换变换图3.1 IIR数字滤波器的设计步骤流程图成熟的数字滤波器设计方法主要有脉冲响应不变法和双线性变换法。3.3.1用脉冲相应不变法设计IIR数字滤波器一 设计原理利用模拟滤波器来设计数字滤波器,也就是使数字滤波器能模仿模拟滤波器的特性,这种模仿可以从不同的角度出发。脉冲响应不变法是从滤波器的脉冲响应出发,使数字滤波器的单位脉冲响应序列h(n)模仿模拟滤波器的冲激响应ha(t),即将ha(t)进行等间隔采样,使h(n)正好等于ha(t)的采样值,满足h(n)=ha(nT),式中T是采样周期。如果令Ha(s)是ha(t)的拉普拉斯变换,H(z)为h(n)的Z变换,利用采样序列的Z变换与模拟信号的拉普拉斯变换的关系得 (3.2)则可看出,脉冲响应不变法将模拟滤波器的S平面变换成数字滤波器的Z平面,这个从s到z的变换z=esT是从S平面变换到Z平面的标准变换关系式。图3.2 脉冲响应不变法的映射关系由(3.2)式,数字滤波器的频率响应和模拟滤波器的频率响应间的关系为 (3.3)这就是说,数字滤波器的频率响应是模拟滤波器频率响应的周期延拓。正如采样定理所讨论的,只有当模拟滤波器的频率响应是限带的,且带限于折叠频率以内时,即 (3.4)才能使数字滤波器的频率响应在折叠频率以内重现模拟滤波器的频率响应,而不产生混叠失真,即 (3.5)但是,任何一个实际的模拟滤波器频率响应都不是严格限带的,变换后就会产生周期延拓分量的频谱交叠,即产生频率响应的混叠失真。这时数字滤波器的频响就不同于原模拟滤波器的频响,而带有一定的失真。当模拟滤波器的频率响应在折叠频率以上处衰减越大、越快时,变换后频率响应混叠失真就越小。这时,采用脉冲响应不变法设计的数字滤波器才能得到良好的效果。图3.3脉冲响应不变法中的频响混叠现象对某一模拟滤波器的单位冲激响应ha(t)进行采样,采样频率为fs,若使fs增加,即令采样时间间隔(T=1/fs)减小,则系统频率响应各周期延拓分量之间相距更远,因而可减小频率响应的混叠效应。二 脉冲响应不变法的优点从以上讨论可以看出,脉冲响应不变法使得数字滤波器的单位脉冲响应完全模仿模拟滤波器的单位冲激响应,也就是时域逼近良好,而且模拟频率和数字频率之间呈线性关系=T。因而,一个线性相位的模拟滤波器(例如贝塞尔滤波器)通过脉冲响应不变法得到的仍然是一个线性相位的数字滤波器。脉冲响应不变法的最大缺点是有频率响应的混叠效应。所以,脉冲响应不变法只适用于限带的模拟滤波器(例如,衰减特性很好的低通或带通滤波器),而且高频衰减越快,混叠效应越小。至于高通和带阻滤波器,由于它们在高频部分不衰减,因此将完全混淆在低频响应中。如果要对高通和带阻滤波器采用脉冲响应不变法,就必须先对高通和带阻滤波器加一保护滤波器,滤掉高于折叠频率以上的频率,然后再使用脉冲响应不变法转换为数字滤波器。当然这样会进一步增加设计复杂性和滤波器的阶数。3.3.2双线性变换法设计IIR数字滤波器一 设计原理脉冲响应不变法的主要缺点是产生频率响应的混叠失真。这是因为从S平面到平面是多值的映射关系所造成的。为了克服这一缺点,可以采用非线性频率压缩方法,将整个频率轴上的频率范围压缩到-/T/T之间,再用z=esT转换到Z平面上。也就是说,第一步先将整个S平面压缩映射到S1平面的-/T/T一条横带里;第二步再通过标准变换关系z=es1T将此横带变换到整个Z平面上去。这样就使S平面与Z平面建立了一一对应的单值关系,消除了多值变换性,也就消除了频谱混叠现象,映射关系如图3.4所示。图3.4双线性变换的映射关系为了将S平面的整个虚轴j压缩到S1平面j1轴上的-/T到/T段上,可以通过以下的正切变换实现 (3.6)式中,T仍是采样间隔。当1由-/T经过0变化到/T时,由-经过0变化到+,也即映射了整个j轴。将式(2-6)写成 (3.7)将此关系解析延拓到整个S平面和S1平面,令j=s,j1=s1,则得 (3.8)再将S1平面通过以下标准变换关系映射到Z平面 (3.9)从而得到S平面和Z平面的单值映射关系为: (3.10) (3.11)式(3.10)与式(3.10)是S平面与Z平面之间的单值映射关系,这种变换都是两个线性函数之比,因此称为双线性变换式(3.6)与式(3.10的双线性变换符合映射变换应满足的两点要求。首先,把z=ej,可得 (3.12)即S平面的虚轴映射到Z平面的单位圆。其次,将s=+j代入式(2-12),得 (3.13)因此 (3.14)由此看出,当<0时,|z|<1;当>0时,|z|>1。也就是说,S平面的左半平面映射到Z平面的单位圆内,S平面的右半平面映射到Z平面的单位圆外,S平面的虚轴映射到Z平面的单位圆上。因此,稳定的模拟滤波器经双线性变换后所得的数字滤波器也一定是稳定的。二 双线性变换法优缺点双线性变换法与脉冲响应不变法相比,其主要的优点是避免了频率响应的混叠现象。这是因为S平面与Z平面是单值的一一对应关系。S平面整个j轴单值地对应于Z平面单位圆一周,即频率轴是单值变换关系。这个关系如式(3.10)所示,重写如下: (3.15)上式表明,S平面上与Z平面的成非线性的正切关系,如图3.5所示。由图3.5看出,在零频率附近,模拟角频率与数字频率之间的变换关系接近于线性关系;但当进一步增加时,增长得越来越慢,最后当时,终止在折叠频率=处,因而双线性变换就不会出现由于高频部分超过折叠频率而混淆到低频部分去的现象,从而消除了频率混叠现象。图3.5双线性变换法的频率变换关系但是双线性变换的这个特点是靠频率的严重非线性关系而得到的,如式(3.12)及图3.4所示。由于这种频率之间的非线性变换关系,就产生了新的问题。首先,一个线性相位的模拟滤波器经双线性变换后得到非线性相位的数字滤波器,不再保持原有的线性相位了;其次,这种非线性关系要求模拟滤波器的幅频响应必须是分段常数型的,即某一频率段的幅频响应近似等于某一常数(这正是一般典型的低通、高通、带通、带阻型滤波器的响应特性),不然变换所产生的数字滤波器幅频响应相对于原模拟滤波器的幅频响应会有畸变,如图3.6所示:图3.6双线性变换法幅度和相位特性的非线性映射对于分段常数的滤波器,双线性变换后,仍得到幅频特性为分段常数的滤波器,但是各个分段边缘的临界频率点产生了畸变,这种频率的畸变,可以通过频率的预畸变来加以校正。也就是将临界模拟频率事先加以畸变,然后经变换后正好映射到所需要的数字频率上。第4章 IIR数字滤波器的实现利用MATLAB设计滤波器,可以按照设计要求非常方便地调整设计参数,极大地减轻了设计的工作量,有利于滤波器设计的最优化。MATLAB因其强大的数据处理功能被广泛应用于工程计算,其丰富的工具箱为工程计算提供了便利,利用MATLAB信号处理工具箱可以快速有效地设计各种数字滤波器,设计简单方便。4.1 MATLAB简介4.1.1 MATLAB的概况MATLAB是矩阵实验室(Matrix Laboratory)之意。除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多.MATLAB拥有数百个内部函数的主包和三十几种工具包(Toolbox).工具包又可以分为功能性工具包和学科工具包.功能工具包用来扩充MATLAB的符号计算,可视化建模仿真,文字处理及实时控制等功能.学科工具包是专业性比较强的工具包,控制工具包,信号处理工具包,通信工具包等都属于此类.开放性使MATLAB广受用户欢迎.除内部函数外,所有MATLAB主包文件和各种工具包都是可读可修改的文件,用户通过对源程序的修改或加入自己编写程序构造新的专用工具包.4.1.2 MATLAB的语言特点MATLAB最突出的特点就是简洁。MATLAB用更直观的,符合人们思维习惯的代码,代替了C和FORTRAN语言的冗长代码。MATLAB给用户带来的是最直观,最简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点:(1)语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发是站在专家的肩膀上。(2)运算符丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。(3)MATLAB既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。(4)程序限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需对矩阵预定义就可使用。(5)程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。(6)MATLAB的图形功能强大。在FORTRAN和C语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。MATLAB还具有较强的编辑图形界面的能力。(7)MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。(8)功能强大的工具箱是MATLAB的另一特色。MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能。功能性工具箱用于多种学科。而学科性工具箱是专业性比较强的,如control,toolbox,signl proceessing toolbox,commumnication toolbox等。这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高、精、尖的研究。(9)源程序的开放性。开放性也许是MATLAB最受人们欢迎的特点。除内部函数以外,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可通过对源文件的修改以及加入自己的文件构成新的工具箱。4.1.3 MATLAB的功能MATLAB包含的内容非常丰富,功能强大,可以概括为以下几个方面:(1)可以在多种操作系统下运行,如DOS、Windows 95/98/2000/2000/NT、Compaq Alpha、LinuxSun Solaris等。(2)有超过500种的数学、统计、科学及工程方面的函数,使用简单快捷,并且有很强的用户自定义函数的能力。(3)有强大的图形绘制和可视化功能,可以进行视觉数据处理和分析,进行图形、图像的显示及编辑,能够绘制二维、三维图形,使用户可以制作高质量的图形,从而写出图文并茂的文章。(4)有和用其他高级语言(如C,C+,FORTRAN,JAVA)编写的外部程序相接口的能力,也可把MATLAB程序转换成上述高级语言的子程序。(5)有从外部文件及外部硬件设备读入数据的能力。(6)有丰富的网络资源,从相关的Web网站可以直接获得全套的MATLAB联机帮助文件和说明书的电子文档,还可以获得各类技术支持与帮助。(7)有丰富的工具箱toolbox。各个领域的专家学者将众多学科领域中常用的算法编写为一个个子程序,即m文件,这些m文件包含在一个个工具箱中。其工具箱可以分为两大类,即功能性工具箱和科学性工具箱。功能性工具箱主要用来扩充MATLAB的符号计算、图形可视化、建模仿真、文字处理等功能以及与硬件实时交互的功能。学科性工具箱是按学科领域来分类的,如信号处理、控制、通信、神经网络图像处理、系统辨识、鲁棒控制、模糊逻辑、小波等工具箱。MATLAB中的信号处理工具箱内容丰富,使用简便。在数字信号处理中常用的算法,如FFT,卷积,相关,