基于MATLAB的IIR数字带通滤波器设计.doc

上传人:管** 文档编号:849963 上传时间:2023-09-13 格式:DOC 页数:25 大小:193.68KB
下载 相关 举报
基于MATLAB的IIR数字带通滤波器设计.doc_第1页
第1页 / 共25页
基于MATLAB的IIR数字带通滤波器设计.doc_第2页
第2页 / 共25页
基于MATLAB的IIR数字带通滤波器设计.doc_第3页
第3页 / 共25页
基于MATLAB的IIR数字带通滤波器设计.doc_第4页
第4页 / 共25页
基于MATLAB的IIR数字带通滤波器设计.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

1、1 绪论11.1 数字滤波器的优点21.2 数字滤波器的发展概况31.3 开发工具41.3.1 MATLAB软件简介41.3.2 MATLAB特点52 数字滤波器理论研究62.1 滤波器的设计62.2 数字滤波器的定义72.3 滤波器的设计步骤82.4 数字滤波器的类型82.5 滤波器的选择92.5.1 FIR和IIR数字滤波器的比较92.5.2 FIR或IIR滤波器的选取原则102.6 数字滤波器的实现方法103 IIR滤波器的设计113.1 数字滤波器113.2 IIR数字滤波器设计方法123.2.1用脉冲相应不变法设计IIR数字滤波器133.22 用双线性变换法设计IIR数字滤波器154

2、 IIR数字带通滤波器设计过程184.1 设计步骤:184.2 程序流程框图:194.3 MATLAB程序:19结论22参考文献23致谢24基于MATLAB的IIR数字带通滤波器设计1 绪论 凡是有能力进行信号处理的装置都可以称为滤波器。在近代电信设备和各类控制系统中,滤波器应用极为广泛;在所有的电子部件中,使用最多,技术最为复杂的要算滤波器了。滤波器的优劣直接决定产品的优劣,所以,对滤波器的研究和生产历来为各国所重视。 1917年美国和德国科学家分别发明了LC滤波器,次年导致了美国第一个多路复用系统的出现。20世纪50年代无源滤波器日趋成熟。自60年代起由于计算机技术、集成工艺和材料工业的发

3、展,滤波器发展上了一个新台阶,并且朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉方向努力,其中小体积、多功能、高精度、稳定可靠成为70年代以后的主攻方向。导致RC有源滤波器、数字滤波器、开关电容滤波器和电荷转移器等各种滤波器的飞速发展,到70年代后期,上述几种滤波器的单片集成已被研制出来并得到应用。80年代,致力于各类新型滤波器的研究,努力提高性能并逐渐扩大应用范围。90年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。当然,对滤波器本身的研究仍在不断进行。 我国广泛使用滤波器是50年代后期的事,当时主要用于话路滤波和报路滤波。经过半个世纪的发展,我国滤波器在研制、生产和应用等方

4、面已纳入国际发展步伐,但由于缺少专门研制机构,集成工艺和材料工业跟不上来,使得我国许多新型滤波器的研制应用与国际发展有一段距离。 目前数字滤波器的设计有许多现成的高级语言设计程序,但他们都存在设计效率较低,不具有可视图形,不便于修改参数等缺点,而Matlab为数字滤波的研究和应用提供了一个直观、高效、便捷的利器。他以矩阵运算为基础,把计算、可视化、程序设计融合到了一个交互式的工作环境中。尤其是Matlab工具箱使各个领域的研究人员可以直观方便地进行科学研究与工程应用。其中的信号处理工具箱、图像处理工具箱、小波工具箱等更是为数字滤波研究的蓬勃发展提供了可能。1.1 数字滤波器的优点数字滤波器(D

5、igital Filter)在数字信号处理(DSP, Digital Signal Processing)中具有非常重要的作用。在许多应用中,例如数据压缩、生物医学信号处理、语音处理、数据传输、数字音频、电话回音对消等等,数字滤波器和模拟滤波器相比因为具有如下一个或多个优势而被优先采用。(1) 数字滤波器可以具有模拟滤波器不可能具有的某些特征,例如真正的线性相位响应。(2) 数字滤波器的性能不像模拟滤波器那样随环境的改变(例如温度的变化)而改变。这样就不必经常去校验。(3) 如果利用一个可编程的处理器来实现,那么数字滤波器的频率响应就能被自动地调整。这就是为什么在自适应的滤波器中广泛利用数字滤

6、波器的原因。(4) 几个输入信号或通道可以用一个数字滤波器来滤波,而不需要重复硬件。(5) 滤波过的和未滤波的数据都可以将其存储以备将来使用。(6) 可以充分利用在VLSI技术方面的技术进展来制造数字滤波器,使滤波器体积更小、功耗低、价格便宜。(7) 在实践中,模拟滤波器能达到的精度是受限制的。例如,利用现有的元件设计的有源滤波器,通常可能达到最大阻带衰减是60-70dB。而对于数字滤波器,它的精度仅受限于它所采用的字长。(8) 数字滤波器可以以极低的频率运行,例如在生物医学中有许多极低频率应用的例子,在这些应用中采用模拟滤波器是不现实的。另外,数字滤波器仅通过改变抽样频率就可以在很大的频率范

7、围内工作。 和模拟滤波器相比,数字滤波器主要有以下缺点:(1) 速度限制:数字滤波器能实时处理的最大信号带宽,比模拟滤波器低得多。在实时情况下,模拟-数字-模拟转化过程对数字滤波器的性能引入了速度的限制。ADC的转换时间和DAC的建立时间限制了能够处理的最高频率。此外,数字滤波器的运行速度,依赖于所用到的数字处理器的速度,以及滤波算法必须执行的算术操作的数目。滤波器的响应越紧凑,则滤波器的速度越快。(2) 有限字长效应:数字滤波器受量化一个连续信号而引起的ADV噪声的影响,以及在计算过程中发生的舍入噪声的影响。递归滤波器的阶数越高,舍入噪声的累计就越大,可能会引起滤波器的不稳定。(3) 设计和

8、开发期限长:数字滤波器设计和开发期限,特别是硬件的开发可能比模拟滤波器要长得多。不过,一旦硬件和/或软件开发出来,不需要或者稍加变动就可以将其用在别的滤波任务或者DSP任务中。好的计算机辅助设计(CAD)支持软件使得设计滤波器成为一项令人愉快的任务,但是如何充分而有效地利用这些辅助工具就需要专门的技术了。1.2 数字滤波器的发展概况 数字滤波是数字信号处理理论的重要组成部分。数字信号处理主要是研究用数字或符号的序列来表示信号波形,并用数字的方式去处理这些序列,以便估计信号的特征参量,或削弱信号中的多余分量或增强信号中的有用分量。具体来说,凡是用数字方式对信号进行滤波、变换、调制、解调、均衡、增

9、强、压缩、估值、识别、产生等加工处理,都可纳入数字信号处理领域。数字信号处理学科的一项重大进展是关于数字滤波器设计方法的研究。关于数字滤波器,早在上世纪40年代末期,就有人讨论过它的可能性问题,但直到60年代中期,才开始形成关于数字滤波器的一整套完整的正规理论。在这一时期,提出了各种各样的数字滤波器结构,有的以运算误差最小为特点,有的则以运算速度高见长,而有的则二者兼而有之,从而出现了数字滤波器的各种逼近方法和实现方法,对递归和非递归两类滤波器作了全面的比较,统一了数字滤波器的基本概念和理论。数字滤波器领域的一个重要发展是对有限冲激响应(FIR)和无限冲激响应(IIR)关系的认识的转化。在初期

10、,一般认为IIR滤波器比FIR滤波器具有更高的运算效率,因而明显地倾向于前者,但当人们提出用快速傅立叶变换(FFT)实现卷积运算的概念之后,发现高阶FIR滤波器也可以用很高的运算效率来实现,这就促使人们对高性能FIR滤波器的设计方法和数字滤波器的频域设计方法进行了大量的研究,从而出现了此后数字滤波器设计中频域方法和时域方法并驾齐驱的局面。然而,这些均属数字滤波器的早期研究。早期的数字滤波器尽管在语音、声纳、地震和医学的信号处理中曾经发挥过作用,但由于当时计算机主机的价格很昂贵,严重阻碍了专用数字滤波器的发展,使数字滤波器的设计仅仅是对相应模拟滤波器的逼近。上世纪70年代科学技术蓬勃发展,数字信

11、号处理开始与大规模和超大规模集成电路技术,微处理器技术、高速数字算术单元、双极型高密度半导体存储器、电荷转移器件等新技术、新工艺相结合,并且引进了计算机辅助设计方法。一般说来,通过对模拟滤波器函数的变换来设计数字滤波器,很难达到逼近任意频率响应或冲激响应,而采用计算机辅助设计则有可能实现频域或时域的最佳逼近,或频域时域联合最佳逼近。这样,数字滤波器的分析与设计的内容也更加丰富起来,各种新的数字信号处理系统,也都能用专用数字硬件实时加以实现。恩格斯曾经指出:“科学的发生和发展一开始就是由生产决定的”。数字信号处理理论与技术的发展,主要是由于电子计算机与大规模集成电路的大量生产和广泛应用,替代了原

12、来的模拟信号处理中的线性滤波与频谱分析所应用的模拟计算机和分立元件RLC线性网络,高度发挥了计算技术与数字技术相结合的特色和优越性。特别是微处理器和微型计算机技术日新月异的发展,更有利于电子仪器与电子技术应用系统朝着数字化、小型化、自动化以及多功能化等方向发展,促使它们成为富有智能型的电子系统。现在,包括数字滤波在内的数字信号处理技术正以惊人的速度向纵深和高级的方向发展,据估计这种趋势还要持续一个较长的时期,未来的发展可能会比过去的进程更为激动人心,必将引起某些领域的飞跃性转折。我国广泛使用滤波器是上世纪50年代后期的事,当时主要用于话路滤波。经过半个世纪的发展,我国滤波器在研制、生产和应用等

13、发面已纳入国际发展步伐,但由于缺少专门的研制机构,集成工艺和材料工业跟不上,使得我国许多新型滤波器的研制应用与国际发展有一段距离。1.3 开发工具1.3.1 MATLAB软件简介MATLAB是美国Math Works 公司推出的一套用于工程计算的可视化高性能语言与软件环境。MATLAB为数字滤波器的研究和应用提供了一个直观、高效、便捷的利器。它以矩阵计算为基础,把计算、可视化、程序设计融合到了一个交互式的工作环境中,MATLAB推出的工具箱使各个领域的研究人员可以直观方便地进行科学研究、工程应用,其中的信号处理(Signal Processing)、图像处理(Image Processing)

14、、小波(Wavelet)等工具箱为数字滤波研究的蓬勃发展提供了有力的工具MATLAB软件自1984年推向市场以来,历经十几年的发展和竞争,现己成为国际公认的最优秀的科技应用软件。它功能强大、界面友善、语言自然、开放性强的特点使它获得了对应用学科(特别是边缘学科和交叉学科)的极强适应力,并很快成为应用学科计算机辅助分析、设计、仿真、教学乃至科技文字处理不可缺少的基础软件。在欧美等高校,MATLAB己成为理工科高级课程的基本教学工具,成为攻读学位的大学生、硕士生、博士生必须掌握的技能。在设计研究单位和工业部门,MATLAB己经成为研究和解决各种具体工程问题的一种标准软件。近几年来该软件系统开始在我

15、国国内流行,受到理工科大专院校师生及科研人员的重视,这也是本文选择用它来设计实现数字滤波器的原因所在。1.3.2 MATLAB特点MATLAB语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于它有着不同于其它语言的特点:(1) 语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用其丰富的库函数避开了繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都是由本领域的专家编写,所以用户不必担心函数的可靠性。(2) 运算符丰富。由于MATLAB是用C语言编写的,所以MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短

16、。(3) MATLAB既具有结构化的控制语句,又有面向对象编程的特性。(4) 语法限制不严格,程序设计自由度大。(5) 程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。(6) MATLAB的图形功能强大。在C和FORTRAN语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。此外,MATLAB还具有较强的编辑图形界面能力。(7) MATLAB具有的一项重要特色是拥有功能强大的工具箱。MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分有数百个核心内部函数。其工具箱又可分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能

17、、图示建模仿真功能、文字处理功能以及与硬件实时交互功能。功能性工具箱能用于多种学科。而学科性工具箱是专业性比较强的,如control toolbox、signal processing toolbox, communication toolbox等。这些工具箱都是由该领域内的学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高、精、尖的研究。(8) 程序的开放性。除内部函数以外,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可通过对源文件的修改以及加入自己的文件构成新的工具箱。2 数字滤波器理论研究2.1 滤波器的设计滤波器有各种不同的分类方法,一

18、般有以下三种。(1) 按处理信号类型分类 根据被处理信号的类型,可分为模拟滤波器和数字滤波器两大类。其中模拟滤波器又可分为有源、无源、异类三个分类;数字滤波器又可分为数字、取样模拟、混合三个分类。当然,每个分类又可继续分下去。 实际上有些滤波器很难归于哪一类,例如开关电容滤波器即可以属于取样模拟滤波器,又可以属于混合滤波器,还可以属于有源滤波器。因此,不必苛求这种“精确”分类,只是让人们了解滤波器的大体类型,有个总体概念就行了。(2) 按处理的物理量分类 按处理的物理量分类,滤波器可以分为频率选择、幅度选择、时间选择(例如PCM制中的话路信号)和信息选择(例如匹配滤波器)等四类滤波器。 (3)

19、 按频率通带范围分类按频率通带范围分类,滤波器可分为低通、高通、带通、带阻、全通五个类别。2.2 数字滤波器的定义一个滤波器实质上是一个系统或者网络,它以一种期望的模式有选择地改变信号的波形、幅度-频率和相位-频率特性。一般滤波的目的是为了改善一个信号的质量(例如消除或者减少噪声),或者从信号中提取信息,或者是把以前为了有效地利用通信信道而组合在一起的两个或多个信号分离出来。数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数字处理来达到频域滤波的目的,可以设计系统的频率响应,让它满足一定的要求,从而对通过该系统的信号的某些特定的频率成分进行过滤,这就是滤波器的基本原理。如果系

20、统是一个连续系统,则滤波器称为模拟滤波器。如果系统是一个离散系统,则滤波器称为数字滤波器。数字滤波器设计是用硬件或者软件实现的一种算法,这个算法是为了达到滤波的目的而对数字输入信号进行运算产生数字输出信号。数字滤波器这个词是指执行滤波算法的特定硬件或者软件程序,数字滤波器经常作用的对象是数字化的模拟信号,或者刚好是存储在计算机存储器里代表某些变量的数据。下图给出了一个具有模拟输入信号和输出信号的实时数字滤波器的简化框图。带限模拟信号x(t)被周期地抽样,然后通过量化转化成一数字序列x(n)(n=0,1,)。 输入滤波器 带抽样保持的ADC 数字滤波器 DAC 输出滤波器 x(t) (他) 模拟

21、滤波器 x(n) y(t) ( 模拟 输出 数字处理器依据滤波器的计算算法执行滤波运算,把输入系列x(n)映射到输出系列y(n)。DAC把数字滤波后的输出转化成模拟值,这些模拟值接着被模拟滤波器平滑,并且消去不想要的高频分量。由于计算机和大规模集成电路技术的进步,依靠传统的模拟电路来实现的电子系统已不适应。现在都在开始采用数字化技术,传统的模拟滤波器,正在被数字滤波器所代替。数字滤波器的输入是个数字序列,输出是另一个数字序列。从本质上说它只是个序列的运算加工,但另一方面因为它是一个离散系统,而一个离散系统具有一定的频率响应特性,适当地控制离散系统结构使其频率特性满足一定的要求,可以起到和模拟滤

22、波器同样的作用。但数字滤波器却具有精度高,可靠性强,灵活性大,适应范围广(在甚低频范围),快速等优点。而且可以分时复用,同时处理若干不同信号,因此已得到越来越广泛的应用。2.3 滤波器的设计步骤设计一个数字滤波器通常包括下面5个步骤: (1)滤波器要求的规范。 (2)合适的滤波器系数的计算。 (3)用一个适当的结构来表示滤波器(实现结构)。 (4)有限字长效应对滤波器性能的影响的分析。 (5)用软件和/或者硬件来实现滤波器。这五个步骤不是必需相互独立的,它们也不是总要按照上面给出的顺序执行。实际上经常把第二步、第三步和第四步组合在一起进行。2.4 数字滤波器的类型数字滤波器通常根据系统单位脉冲

23、响应的长度分为两大类,即无限长冲击响应(IIR, Infinite Impulse Response)滤波器和有限长冲击响应(FIR, Finite Impulse Response)滤波器。在基本形式上,每一种滤波器都可以用它的冲击响应序列h(k)(k=0,1,)来表示。滤波器的输入输出信号通过卷积和相联系,式(1)给出了IIR滤波器的相关公式,式(2)给出了FIR滤波器的相关公式。y(n)= (1)y(n)= (2)从这些等式可知,IIR滤波器的冲激响应具有无限的持续时间,而FIR滤波器的冲激响应具有有限持续时间,因为FIR的h(k)只有N个值。在实际中,利用式(1)来计算IIR滤波器的输

24、出是不可行的,因为它的冲击响应的长度太长(理论上是无穷大的)。2.5 滤波器的选择2.5.1 FIR和IIR数字滤波器的比较 在很多实际应用中,如语音和音频信号处理,数字滤波器用来实现选频功能。因此,滤波器指标的形式应为频域中的幅度和相位响应。在通带范围,通常希望具有线性相位响应。IIR数字滤波器的设计和模拟滤波器的设计有着紧密的联系,通常是根据设计指标要求选取一个合适的模拟滤波器原型,再通过一定的频带变换把它转换成为所需要的数字IIR滤波器。此外,任何数字信号理系统中也还不可避免地用到模拟滤波器,比如A/D变换器前的抗混叠滤波及D/A转换后的平缓滤波器,因此模拟滤波器设计也是数字信号处理中应

25、当握的技术。 从性能上来说,IIR数字滤波器传递函数包括零点和极点两组可调因素,极点的唯一限制是在单位圆内。因此可用较低的阶数获得高的选择性,所用存储单元少、计算量小、效率高。但是这个高效率是以相位的非线性为代价的,选择性越好,则相位非线性越严重。FIR滤波器传递函数的极点是固定在原点的,它只能靠改变零点位置来改变它的性能,所以要达到高的选择性,必须用高的阶数,对于同样的滤波器设计指标,FIR滤波器所要求的阶数可能比IIR滤波器高5-10倍,结果成本高信号延时也较大。如果按线性相位要来说,IIR滤波器必须加全通网络进行相位校正,同样大大增加了滤波的阶数和复杂性。从结构上看,IIR滤波器必须采用

26、递归结构来配置极点,并保证极点位置位于单位圆内。由于有限字长效应,运算过程中将对系数进行舍入处理,引起极点的偏移,这种情况有时会造成稳定性问题,甚至造成寄生振荡。相反,FIR滤波器采用非递归结构,不论在理论上还是实际的有限精度运算中都不存稳定性问题,因此造成的频率特性误差也较小。此外FIR滤波器可以采用快傅立叶变换算法,在相同阶数条件下运算速度可以快得多。从设计工具看,IIR滤波器可以借助模拟滤波器的成果,因此一般都有有效的封闭形式的设计公式可供参考,计算工作量比较小,而且对计算工具的要求较高。2.5.2 FIR或IIR滤波器的选取原则从上面的简单比较可以看到IIR与FIR滤波器各有所长,所以

27、在实际应用时应该从多方面考虑来加以选择。 (1)FIR滤波器可以具有精确的线性相位响应。其潜在的含义就是采用这种滤波器不会给信号带来相位失真。这在许多应用中,例如数据传输、生物医学、数字音频和图像处理等,相位不失真是非常重要的要求。(2)FIR的实现是非递归的,也就是通过式(2)直接得出的结果,它总是稳定的。而IIR滤波器的稳定性不是一直都能得到保证的。(3)采用有限位数实现滤波器的影响,例如舍入噪声和系数量化误差,FIR比IIR要小得多。(4)对锐截止(sharp cutoff)滤波器,FIR要求的系数比IIR要多。因此对一个给定的幅度响应的规范,FIR实现要求更多的处理时间和更大的存储。然

28、而,我们可以很容易地利用FFT的计算速度和多速率技术来有效地提高FIR实现的效率。(5)模拟滤波器可以很容易地转化成等价的满足类似性能规范的IIR滤波器。使用FIR滤波器是不可能的,因为它没有对应的模拟滤波器。然而,通过FIR可以更容易地合成具有任意频率响应的滤波器。综上所述,下面简要说明FIR及IIR的大致选用指南。当锐截止滤波器和高吞吐率是唯一重要的要求时,采用IIR滤波器。因为IIR滤波器,特别是具有椭圆特性的IIR滤波器,所需的系数比FIR少。如果滤波器系数的数目不是太大,而且在实践中需要相位失真很小或者不能有相位失真,那么采用FIR滤波器。另外有一条要增加的是:新的DSP处理器具有适

29、应于FIR滤波器的结构,实际上某些DSP就具有针对FIR滤波的设计。2.6 数字滤波器的实现方法 数字滤波器的实现方法一般有以下几种: (1) 在通用的计算机(如PC)上用软件(如C语言)实现。软件可以是由自己编写,也可以使用现成的软件包。这种方法的缺点是速度太慢,不能用于实时系统,主要用于DSP算法的模拟与仿真。 (2) 在通用的计算机系统中加上专用的加速处理机实现。这种方法不便于系统的独立运行。 (3) 用通用的单片机实现。单片机的接口性能良好,容易实现人机接口。由于单片机采用的是冯诺依曼总线结构,系统比较复杂,实现乘法运算速度较慢,而在数字滤波器中涉及大量的乘法运算,因此,这种方法适用于

30、一些不太复杂的数字信号处理。 (4) 用通用的可编程DSP芯片实现。与单片机相比,DSP有着更适合于数字滤波的特点。它利用改进的哈佛总线结构,内部有硬件乘法器、累加器,使用流水线结构,具有良好的并行特点,并有专门设计的适用于数字信号处理的指令系统等。 (5) 用专用的DSP芯片实现。在一些特殊的场合,要求的信号处理速度极高,而通用DSP芯片很难实现,这种芯片将相应的信号处理算法在芯片内部用硬件实现,无须进行编程。 (6) 用FPGA等可编程器件来开发数字滤波算法。使用相关开发工具和VHDL等硬件开发语言,通过软件编程用硬件实现特定的数字滤波算法。这一方法由于具有通用性的特点并可以实现算法的并行

31、运算,无论是作为独立的数字信号处理,还是作为DSP芯片的协作处理器都是比较活跃的研究领域。通过比较这些方法可见:可以采用MATLAB等软件来学习数字滤波器的基本知识,计算数字滤波器的系数,研究算法的可行性。对数字滤波器进行前期的仿真,可以采用DSP或FPGA来实现硬件电路。本论文研究的重点集中在利用MATLAB来实现数字滤波的软件仿真和实现。3 IIR滤波器的设计3.1 数字滤波器数字滤波器是对数字信号实现滤波的线性时不变系统。数字滤波实质上是一种运算过程,实现对信号的运算处理。输入数字信号(数字序列)通过特定的运算转变为输出的数字序列,因此,数字滤波器本质上是一个完成特定运算的数字计算过程,

32、也可以理解为是一台计算机。描述离散系统输出与输入关系的卷积和差分方程只是给数字信号滤波器提供运算规则,使其按照这个规则完成对输入数据的处理。时域离散系统的频域特性:,其中、分别是数字滤波器的输出序列和输入序列的频域特性(或称为频谱特性),是数字滤波器的单位取样响应的频谱,又称为数字滤波器的频域响应。输入序列的频谱经过滤波后,因此,只要按照输入信号频谱的特点和处理信号的目的, 适当选择,使得滤波后的满足设计的要求,这就是数字滤波器的滤波原理。数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。IIR 数字滤波器的特征是,具

33、有无限持续时间冲激响应,需要用递归模型来实现,其差分方程为:系统函数为:设计IIR滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。3.2 IIR数字滤波器设计方法IIR数字滤波器是一种离散时间系统,其系统函数为假设MN,当MN时,系统函数可以看作一个IIR的子系统和一个(M-N)的FIR子系统的级联。IIR数字滤波器的设计实际上是求解滤波器的系数和 ,它是数学上的一种逼近问题,即在规定意义上(通常采用最小均方误差准则)去逼近系统的特性。如果在S平面上去逼近,就得到模拟滤波器

34、;如果在z平面上去逼近,就得到数字滤波器。3.2.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变换与模拟信号的拉普拉斯变换的关系得(1-1)则可看出,脉冲响应不变法将模拟滤波器的S平面

35、变换成数字滤波器的Z平面,这个从s到z的变换z=esT是从S平面变换到Z平面的标准变换关系式。图1-1脉冲响应不变法的映射关系 由(1-1)式,数字滤波器的频率响应和模拟滤波器的频率响应间的关系为(1-2)这就是说,数字滤波器的频率响应是模拟滤波器频率响应的周期延拓。正如采样定理所讨论的,只有当模拟滤波器的频率响应是限带的,且带限于折叠频率以内时,即(1-3)才能使数字滤波器的频率响应在折叠频率以内重现模拟滤波器的频率响应,而不产生混叠失真,即| (1-4)但是,任何一个实际的模拟滤波器频率响应都不是严格限带的,变换后就会产生周期延拓分量的频谱交叠,即产生频率响应的混叠失真。这时数字滤波器的频

36、响就不同于原模拟滤波器的频响,而带有一定的失真。当模拟滤波器的频率响应在折叠频率以上处衰减越大、越快时,变换后频率响应混叠失真就越小。这时,采用脉冲响应不变法设计的数字滤波器才能得到良好的效果。图1-2脉冲响应不变法中的频响混叠现象 对某一模拟滤波器的单位冲激响应ha(t)进行采样,采样频率为fs,若使fs增加,即令采样时间间隔(T=1/fs)减小,则系统频率响应各周期延拓分量之间相距更远,因而可减小频率响应的混叠效应。脉冲响应不变法优缺点:从以上讨论可以看出,脉冲响应不变法使得数字滤波器的单位脉冲响应完全模仿模拟滤波器的单位冲激响应,也就是时域逼近良好,而且模拟频率和数字频率之间呈线性关系=

37、T。因而,一个线性相位的模拟滤波器(例如贝塞尔滤波器)通过脉冲响应不变法得到的仍然是一个线性相位的数字滤波器。脉冲响应不变法的最大缺点是有频率响应的混叠效应。所以,脉冲响应不变法只适用于限带的模拟滤波器(例如,衰减特性很好的低通或带通滤波器),而且高频衰减越快,混叠效应越小。至于高通和带阻滤波器,由于它们在高频部分不衰减,因此将完全混淆在低频响应中。如果要对高通和带阻滤波器采用脉冲响应不变法,就必须先对高通和带阻滤波器加一保护滤波器,滤掉高于折叠频率以上的频率,然后再使用脉冲响应不变法转换为数字滤波器。当然这样会进一步增加设计复杂性和滤波器的阶数。3.22 用双线性变换法设计IIR数字滤波器脉

38、冲响应不变法的主要缺点是产生频率响应的混叠失真。这是因为从S平面到平面是多值的映射关系所造成的。为了克服这一缺点,可以采用非线性频率压缩方法,将整个频率轴上的频率范围压缩到-/T/T之间,再用z=esT转换到Z平面上。也就是说,第一步先将整个S平面压缩映射到S1平面的-/T/T一条横带里;第二步再通过标准变换关系z=es1T将此横带变换到整个Z平面上去。这样就使S平面与Z平面建立了一一对应的单值关系,消除了多值变换性,也就消除了频谱混叠现象,映射关系如图1-3所示。图1-3双线性变换的映射关系为了将S平面的整个虚轴j压缩到S1平面j1轴上的-/T到/T段上,可以通过以下的正切变换实现(1-5)

39、式中,T仍是采样间隔。当1由-/T经过0变化到/T时,由-经过0变化到+,也即映射了整个j轴。将式(1-5)写成将此关系解析延拓到整个S平面和S1平面,令j=s,j1=s1,则得再将S1平面通过以下标准变换关系映射到Z平面z=es1T从而得到S平面和Z平面的单值映射关系为:(1-6)(1-7)式(1-6)与式(1-7)是S平面与Z平面之间的单值映射关系,这种变换都是两个线性函数之比,因此称为双线性变换式(1-5)与式(1-6)的双线性变换符合映射变换应满足的两点要求。首先,把z=ej,可得(1-8)即S平面的虚轴映射到Z平面的单位圆。其次,将s=+j代入式(1-8),得因此由此看出,当0时,|

40、z|0时,|z|1。也就是说,S平面的左半平面映射到Z平面的单位圆内,S平面的右半平面映射到Z平面的单位圆外,S平面的虚轴映射到Z平面的单位圆上。因此,稳定的模拟滤波器经双线性变换后所得的数字滤波器也一定是稳定的。双线性变换法优缺点双线性变换法与脉冲响应不变法相比,其主要的优点是避免了频率响应的混叠现象。这是因为S平面与Z平面是单值的一一对应关系。S平面整个j轴单值地对应于Z平面单位圆一周,即频率轴是单值变换关系。这个关系如式(1-8)所示,重写如下:上式表明,S平面上与Z平面的成非线性的正切关系。在零频率附近,模拟角频率与数字频率之间的变换关系接近于线性关系;但当进一步增加时,增长得越来越慢

41、,最后当时,终止在折叠频率=处,因而双线性变换就不会出现由于高频部分超过折叠频率而混淆到低频部分去的现象,从而消除了频率混叠现象。图1-4双线性变换法的频率变换关系但是双线性变换的这个特点是靠频率的严重非线性关系而得到的,如式(1-8)及图1-4所示。由于这种频率之间的非线性变换关系,就产生了新的问题。首先,一个线性相位的模拟滤波器经双线性变换后得到非线性相位的数字滤波器,不再保持原有的线性相位了;其次,这种非线性关系要求模拟滤波器的幅频响应必须是分段常数型的,即某一频率段的幅频响应近似等于某一常数(这正是一般典型的低通、高通、带通、带阻型滤波器的响应特性),不然变换所产生的数字滤波器幅频响应

42、相对于原模拟滤波器的幅频响应会有畸变,如图1-5所示。图1-5双线性变换法幅度和相位特性的非线性映射对于分段常数的滤波器,双线性变换后,仍得到幅频特性为分段常数的滤波器,但是各个分段边缘的临界频率点产生了畸变,这种频率的畸变,可以通过频率的预畸来加以校正。也就是将临界模拟频率事先加以畸变,然后经变换后正好映射到所需要的数字频率上。4 IIR数字带通滤波器设计过程根据以上IIR数字滤波器设计方法,下面运用双线性变换法基于MATLAB设计一个IIR带通滤波器,其中带通的中心频率为p0=0.5,;通带截止频率p1=0.4,p2=0.6;通带最大衰减p=3dB;阻带最小衰减s=15dB;阻带截止频率s

43、2=0.74.1 设计步骤:(1)根据任务,确定性能指标:在设计带通滤波器之前,首先根据工程实际的需要确定滤波器的技术指标:带通滤波器的阻带边界频率关于中心频率p0几何对称,因此ws1=wp0- (ws2-wp0)=0.3通带截止频率wc1=0.4,wc2=0.6;阻带截止频率wr1=0.3,wr2=0.7;阻带最小衰减s=3dB和通带最大衰减p=15dB;(2)用=2/T*tan(w/2)对带通数字滤波器H(z)的数字边界频率预畸变,得到带通模拟滤波器H(s)的边界频率主要是通带截止频率p1,p2;阻带截止频率s1,s2的转换。为了计算简便,对双线性变换法一般T=2s通带截止频率wc1=(2

44、/T)*tan(wp1/2)=tan(0.4/2)=0.7265wc2=(2/T)*tan(wp2/2)=tan(0.6/2)=1.3764阻带截止频率wr1=(2/T)*tan(ws1/2)=tan(0.3/2)=0.5095wr2=(2/T)*tan(ws2/2)=tan(0.7/2)=1.9626阻带最小衰减s=3dB和通带最大衰减p=15dB;(3)运用低通到带通频率变换公式=(2)-(02)/(B*)将模拟带通滤波器指标转换为模拟低通滤波器指标。B=wc2-wc1=0.6499normwr1=(wr12)-(w02)/(B*wr1)=2.236normwr2=(wr22)-(w02)

45、/(B*wr2)=2.236normwc1=(wc12)-(w02)/(B*wc1)=1normwc2=(wc22)-(w02)/(B*wc2)=1得出,normwc=1,normwr=2.236模拟低通滤波器指标:normwc=1,normwr=2.236,p=3dB,s=15dB(4)设计模拟低通原型滤波器。用模拟低通滤波器设计方法得到模拟低通滤波器的传输函数Ha(s);借助巴特沃斯(Butterworth)滤波器、切比雪夫(Chebyshev)滤波器、椭圆(Cauer)滤波器、贝塞尔(Bessel)滤波器等。(5)调用lp2bp函数将模拟低通滤波器转化为模拟带通滤波器。(6)利用双线性变

46、换法将模拟带通滤波器Ha(s)转换成数字带通滤波器H(z).4.2 程序流程框图:开始读入数字滤波器技术指标将指标转换成归一化模拟低通滤波器的指标设计归一化的模拟低通滤波器阶数N和3db截止频率模拟域频率变换,将G(P)变换成模拟带通滤波器H(s)用双线性变换法将H(s)转换成数字带通滤波器H(z)输入信号后显示相关结果结束4.3 MATLAB程序:MATLAB 程序如下:clearwp0=0.5*pi;wp1=0.4*pi;wp2=0.6*pi;Ap=3;ws2=0.7*pi;As=15;T=2; %数字带通滤波器技术指标ws1=wp0-(ws2-wp0); %计算带通滤波器的阻带下截止频率wc1=(2/T)*tan(wp1/2);wc2=(2/T)*tan(wp2/2);wr1=(2/T)*tan(ws1/2);wr2=(2/T)*tan(ws2/2);w0=(2/T)*tan(wp0/2);

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文 > 毕业设计

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922