Matlab的IIR数字滤波器设计_第1页
Matlab的IIR数字滤波器设计_第2页
免费预览已结束,剩余22页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、封面作者:PanHongliang仅供个人学习摘要在现代通信系统中,由于信号中经常混有各种复杂成分,所以很多信号分 析都是基于滤波器而进行的,而数字滤波器是通过数值运算实现滤波,具有处 理精度高、稳定、灵活、不存在阻抗匹配问题,可以实现模拟滤波器无法实现 的特殊滤波功能。数字滤波器根据其冲激响应函数的时域特性,可分为两种, 即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。实现IIR滤波器的阶次较低,所用的存储单元较少,效率高,精度高,而且能够保留 一些模拟滤波器的优良特性,因此应用很广。Matlab软件以矩阵运算为基础,把计算、可视化及程序设计有机融合到交互式工作环境

2、中,并且为数字滤波的 研究和应用提供了一个直观、高效、便捷的利器。尤其是Matlab中的信号处理工具箱使各个领域的研究人员可以直观方便地进行科学研究与工程应用。本文 首先介绍了数字滤波器的概念,分类以及设计要求。接着利用MATLA函数语言编程,用信号处理图形界面FDAToo来设计滤波器以及Sptool界面设计的方法, 并用FDATool模拟IIR数字滤波器处理信号。重点设计Chebyshev I型和Chebyshev II型数字低通滤波器,并介绍最优化设计。【关键字】IIR滤波器FDAToolSptoolSimulinkABSTRACTIn modern communication syste

3、ms,Becauseoften mixed with various signalcomplex components,So many signal analysis is based on filters, and the digital filter isrealized through numerical computation, digital filters filter with high precision, stabilityand flexibility, dont exist, can realize the impedance matching simulating th

4、e special filtercannot achieve filter function. Digital filter according to its impulse response function andcharacteristics of the time can be divided into two kinds, namely the infinite impulseresponse(IIR) digital filter and finite impulse response (FIR digital filters). The order ofrealizing IIR

5、 filter is used, low and high efficiency less storage unit, high precision, andcan keep some simulation characteristics of filter, so it is widely used. Matlab softwarebased on matrix computation, the calculation, visualization and program design oforganic integration to interactiveenvironment for d

6、igital filter, and the research andapplication of provides an intuitive, efficient and convenient tool. Especially in the Matlabsignal processing to all areas of research toolbox personnel can easily for scientificresearch and engineering application. This paper introduces the concept of digital fil

7、ter,classification and design requirements. Then using MATLAB language programming,with functions of signal processing FDATool graphical interface design of interfacedesign and Sptool filter, and FDATool analog signal processing IIR digital filter. Keydesign Chebyshev type I and II digital Chebyshev

8、 lowpass filter, and introducesoptimization design.【Keywords】IIR Filter FDATool Sptool Simulink目录、八、 _前言5第一章数字滤波器5第一节数字滤波器的概念5第二节数字滤波器的分类6第三节数字滤波器的设计要求7第二章IIR数字滤波器设计方法7第一节IIR数字滤波器的设计步骤8第二节用脉冲相应不变法设计IIR数字滤波器9一、设计原理9二、脉冲响应不变法优缺点10第三节双线性变换法设计IIR数字滤波器11一、设计原理11二、双线性变换法优缺点12第三章IIR滤波器的MATLAB计13第一节IIR数字滤波器

9、的典型设计法14第二节IIR数字滤波器的直接设计法17第三节FDATool介绍和界面设计20第四节FDATOO设计IIR数字滤波器22第五节SIMULINK仿真IIR滤波器22总结23致谢24参考文献24结束语25、八前言随着信息时代和数字世界的到来,数字信号处理已成为当今一门极其重要 的学科和技术领域。目前数字信号处理在通信、语音、图像、自动控制、雷 达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理中起着重要的作用并已获得广泛应用的是数字滤波器(DF,DigitalFilter),根据其单位冲激响应函数的时域特性可分为两类:无限冲激响应IIR(Infinite I

10、mpulseResponse) 滤 波 器 和 有 限 冲 激 响 应FIR(Finite Impulse Respons&滤波器。与FIR滤波器相比,IIR的实现采用的是递归结构, 极点须 在单位圆内, 在相同设计指标下, 实现IIR滤波器的阶次较低,即所用的存储 单元少,从而经济效率高。MATLAB是英文MATrixLABoratory(矩阵实验室)的 缩写。它是美国的MathWorks公司推出的一套用于科学计算和图形处理可视 化、 高性能语言与软件环境。MATLAB的信号处理工具箱是专门应用于信号处理 领域的专用工具箱,它的两个基本组成就是滤波器的设计与实现部分以及谱分 析部分。

11、工具箱提供了丰富而简便的设计,使原来繁琐的程序设计简化成函数 的调用。只要以正确的指标参数调用相应的滤波器设计程序或工具箱函数,便 可以得到正确的设计结果,使用非常方便。第一章 数字滤波器第一节数字滤波器的概念滤波器是指用来对输入信号进行滤波的硬件和软件。数字滤波器是对数字 信号实现滤波的线性时不变系统。数字滤波器可以理解为是一个计算程序或算 法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并 在转化过程中,使信号按预定的形式变化。数字滤波实质上是一种运算过程, 实现对信号的运算处理。数字滤波器和模拟滤波器相比,因为信号的形式和实 现滤波的方法不同,数字滤波器具有比模拟滤波器

12、精度高、稳定、体积小、重 量轻、灵活、不要求阻抗匹配等优点。输入数字信号(数字序列)通过特定的 运算转变为输出的数字序列,因此,数字滤波器本质上是一个完成特定运算的 数字计算过程,也可以理解为是一台计算机。描述离散系统输出与输入关系的 卷积和差分方程只是给数字信号滤波器提供运算规则,使其按照这个规则完成对输入数据的处理时域离散系统的频域特性:(式1-1) 其中、分别是数字滤波器的输出序列和输入序列的频域特性(或称为频谱特 性),是数字滤波器的单位取样响应的频谱,又称为数字滤波器的频域响应。输 入序列的频谱经过滤波后,因此,只要按照输入信号频谱的特点和处理信号的目 的,适当选择 , 使得滤波后的

13、满足设计的要求,这就是数字滤波器的滤波原 理。第二节数字滤波器的分类按照不同的分类方法,数字滤波器有许多种类,但总起来可以分成两大 类:经典滤波器和现代滤波器。经典滤波器的特点是其输入信号中有用的频率 成分和希望滤除的频率成分占有不同的频带,通过一个合适的选频滤波器滤除 干扰,得到纯净信号,达到滤波的目的。但是,如果信号和干扰的频谱相互重 叠,则经典滤波器不能有效地滤除干扰,最大限度地恢复信号,这时就需要现 代滤波器,例如维纳滤波器、卡尔曼滤波器、自适应滤波器等最佳滤波器。现 代滤波器是根据随机信号的一些统计特性,在某种最佳准则下,最大限度地抑 制干扰,同时最大限度地回复信号,从而达到最佳滤波

14、的目的。经典数字滤波器从滤波特性上分类,可以分为:低通滤波器、高通滤波 器、带通滤波器、带阻滤波器。图1-1各种理想滤波器的幅频特性 数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激 响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。IIR数字滤波器的 特征是,具有无限持续时间冲激响应,需要用递归模型来实现,其差分方程为:(式1-2)系统函数为:(式1-3)设计IIR滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频 率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截 止频率、通带衰减系数和阻带衰减系数。第三节数字滤波器的设计要求滤

15、波器的指标常常在频域给出。数字滤波器的频响特性函数一般为复函 数,所以通常表示为:(式1-4)其中,|称为幅频特性函数,称为相频特性函数。幅频特性表示信号 通过该滤波器后各频率成分的衰减情况,而相频特性反映各频率通过滤波器后 在时间上的延时情况。一般IIR数字滤波器,通常只用幅频响应函数|来描述 设计指标,相频特性一般不作要求。IIR滤波器指标参数如下图所示。图中,3 p和3s分别为通带边界频率和 阻带边界频率;S1和S2分别为通带波纹和阻带波纹;允许的衰减一般用dB数表示,通带内所允许的最大衰减(dB)和阻带内允许的最小衰减(dB)分别 为ap和口aS表示:(式1-5)(式1-6)一般要求:

16、当时,;当时,。图1-2低通滤波器的技术要求第二章IIR数字滤波器设计方法IIR数字滤波器是一种离散时间系统,其系统函数为(式2-1)假设MN,当e N寸,系统函数可以看作一个IIR的子系统和一个(M-N)的FIR子系统的级联。IIR数字滤波器的设计实际上是求解滤波器的系数和,它是 数学上的一种逼近问题,即在规定意义上(通常采用最小均方误差准则)去逼 近系统的特性。如果在S平面上去逼近,就得到模拟滤波器;如果在z平面上去逼近,就得到数字滤波器。第一节IIR数字滤波器的设计步骤IIR数字滤波器的设计一般有两种方法:一个是借助模拟滤波器的设计方法 进行。其设计步骤是,先设计模拟滤波器,再按照某种方

17、法转换成数字滤波 器。这种方法比较容易一些,因为模拟滤波器的设计方法已经非常成熟,不仅 有完整的设计公式,还有完善的图表供查阅;另外一种直接在频率或者时域内 进行,由于需要解联立方程,设计时需要计算机做辅助设计。其设计步骤是: 先设计过渡模拟滤波器得到系统函数,然后将按某种方法转换成数字滤波器的 系统函数。这是因为模拟滤波器的设计方法已经很成熟,不仅有完整设计公 式,还有完善的图表和曲线供查阅;另外,还有一些典型的优良滤波器类型可 供我们使用。为了保证转换后的稳定且满足技术指标要求,对转换关系提出两点要求:(1)因果稳定的模拟滤波器转换成数字滤波器,仍是因果稳定的。(2)数字滤波器的频率相应模

18、仿模拟滤波器的频响特性,s平面的虚轴映射为z平面的单位圆,相应的频率之间呈线性关系。利用模拟滤波器成熟的理论设计IIR数字滤波器的过程是:(1)确定数字低通滤波器的技术指标:通带边界频率、通带最大衰减、阻带 截止频率、阻带最小衰减。(2)将数字低通滤波器的技术指标转换成相应的模拟低通滤波器的技术指 标。(3)按照模拟低通滤波器的技术指标设计过渡模拟低通滤波器。(4)用所选的转换方法,将模拟滤波器转换成数字低通滤波器系统函数。IIR数字滤波器的设计流程图如下:图2-1IIR数字滤波器的设计步骤流程图成熟的模拟滤波器设计方法主要有脉冲响应不变法和双线性变换法。第二节用脉冲相应不变法设计IIR数字滤

19、波器一、设计原理利用模拟滤波器来设计数字滤波器,也就是使数字滤波器能模仿模拟滤波 器的特性,这种模仿可以从不同的角度出发。脉冲响应不变法是从滤波器的脉 冲响应出发,使数字滤波器的单位脉冲响应序列h(n)模仿模拟滤波器的冲激响应ha(t),即将ha(t)进行等间隔采样,使h(n)正好等于ha(t)的采样值,满足h(n)=ha(nT)式中,T是采样周期。如果令HL(s)是ha(t)的拉普拉斯变换,H(z)为h(n)的Z变换,利用采样序 列的Z变换与模拟信号的拉普拉斯变换的关系得(式2-2)则可看出,脉冲响应不变法将模拟滤波器的S平面变换成数字滤波器的Z平面,这个从s到z的变换z=esT是从S平面变

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

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

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

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

24、6)式中,T仍是采样间隔。当Q1由-n/T经过0变化到n/T时,Q由-x经过o变化到+*,也即映射 了整个jQ轴。将式(2-6)写成(式2-7)将此关系解读延拓到整个S平面和S1平面,令jQ=s,jQ1=s1,则得(式2-8)再将S1平面通过以下标准变换关系映射到Z平面(式2-9)从而得到S平面和Z平面的单值映射关系为:(式2-10)(式2-11)式(2-10)与式(2-11)是S平面与Z平面之间的单值映射关系,这种变 换都是两个线性函数之比,因此称为双线性变换式(2-6)与式(2-10)的双线性变换符合映射变换应满足的两点要求。 首先,把z=ejS可得式2-12)即S平面的虚轴映射到Z平面的

25、单位圆。其次,将S=c+jQ代入式(2-12),得(式2-13)因此(式2-14)由此看出,当(70时,|z|0时,|z|1。也就是说,S平面的左 半平面映射到Z平面的单位圆内,S平面的右半平面映射到Z平面的单位圆 外,S平面的虚轴映射到Z平面的单位圆上。 因此, 稳定的模拟滤波器经双线 性变换后所得的数字滤波器也一定是稳定的。二、双线性变换法优缺点双线性变换法与脉冲响应不变法相比,其主要的优点是避免了频率响应的 混叠现象。 这是因为S平面与Z平面是单值的一一对应关系。S平面整个jQ轴 单值地对应于Z平面单位圆一周,即频率轴是单值变换关系。这个关系如式(2-10)所示,重写如下:(式2-15)

26、上式表明,S平面上Q与Z平面的3成非线性的正切关系,如图2-4所示。由图2-4看出,在零频率附近,模拟角频率Q与数字频率3之间的变换关系接近于线性关系;但当Q进一步增加时,3增长得越来越慢,最后当时,3终止在折叠频率3=冗处,因而双线性变换就不会出现由于高频部分超过 折叠频率而混淆到低频部分去的现象,从而消除了频率混叠现象。图2-5双线性变换法的频率变换关系 但是双线性变换的这个特点是靠频率的严重非线性关系而得到的,如式(2-12)及图2-4所示。由于这种频率之间的非线性变换关系,就产生了新的 问题。首先,一个线性相位的模拟滤波器经双线性变换后得到非线性相位的数 字滤波器,不再保持原有的线性相

27、位了;其次,这种非线性关系要求模拟滤波 器的幅频响应必须是分段常数型的,即某一频率段的幅频响应近似等于某一常 数 (这正是一般典型的低通、 高通、 带通、 带阻型滤波器的响应特性) ,不然 变换所产生的数字滤波器幅频响应相对于原模拟滤波器的幅频响应会有畸变, 如图2-5所示。图2-6双线性变换法幅度和相位特性的非线性映射 对于分段常数的滤波器,双线性变换后,仍得到幅频特性为分段常数的滤 波器,但是各个分段边缘的临界频率点产生了畸变,这种频率的畸变,可以通 过频率的预畸变来加以校正。也就是将临界模拟频率事先加以畸变,然后经变 换后正好映射到所需要的数字频率上。第三章IIR滤波器的MATLAB设计

28、MATLAB是矩阵实验室(Matrix Laboratory)之意。除具备卓越的数值计 算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实 时控制等功能。MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程 中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRA等语言完相 同的事情简捷得多在新的版本中也加入了对C,FORTRAN,c+ JAVA的支持.可 以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLA爱好者都编写了一些经典的程序,用户可以直 接进行下载就可以用,非常的方便。模拟滤波器的理论和设

29、计方法已发展得相当成熟,且有一些典型的模拟滤 波器供我们选择,如巴特沃斯(Butterworth )滤波器、切比雪夫(Chebyshev)滤 波器、椭圆(Cauer )滤波器、贝塞尔(Bessel )滤波器等,这些典型的滤波器各 有特点。用MATLA进行数字滤波器的设计的步骤如下:(1) 将设计指标归一化处理。如果采用双线性变换法,还需进行预畸变。(2)根据归一化频率,确定最小阶数N和频率参数Wn可供选用的阶数择函 数有:buttord,cheblord,cheb2ord,ellipord等。(3) 运用最小阶数N设计模拟低通滤波器原型。模拟低通滤波器的创建函数有:buttap,cheblap

30、,cheb2ap,ellipap和besselap,这些函数输出的是零极点式形式,还要用zp2tf函数转换成分子分母多项式形式。如果想 根 据 最 小 阶数 直 接 设 计 模 拟 低 通 滤 波 器 原 型 , 可 用Wn设为1。(4)根据第2步的频率参数Wn模拟低通滤波原型转换模拟低通、高通、带 通、带阻滤波器,可用函数分别是:lp21p,lp2hp,lp2bp,lp2bs。(5) 运用脉冲响应不变法或双线性变法把模滤波器转数字滤波器,调用的函 数是impinvar和bilinear。脉冲响应不变法适用于采样频率大于4倍 截止频率的锐截止低通带通滤波器,而双线性变换法适合于相位特性要 求不

31、高的各型滤波器。(6)根据输出的分子分母系数,调用函数buttord计算N和wc,有系数向量 可以写出数字滤波器系统函数乙再用freqz函数验证设计结果。第一节IIR数字滤波器的典型设计法设计巴特沃斯数字低通滤波器和椭圆数字低通滤波器,要求通带边界频fp=2.1kHZ,通带最大衰减Rp=0.5dB;阻带边界频率fs=8kHZ,阻带最小衰减Rs=30dB采样频率为Fs=20kHZ低通巴特沃斯滤波器设计步骤如下:(1) 确定阶数N。取N=4(2) 求极点? ? ? ? 归一化低通原型系统函数为由N=4直接查表得到:极点:归一化低通滤波器系统函数为式中,0.0000,0.0999,0.1914,0.

32、0252(3) 将去归一化最终得到butter,chebyl,cheby2,ellip,bessel等函数,只是注意要将函数中的通过计算可以总结出过程太麻烦,而且容易出错,结果不直观。下面用M程序设计来实现用脉冲响应不变法设计的巴特沃斯数字低通滤波器的M程序如下:fp=2100。fs=8000。Fs=20000。Rp=0.5。Rs=30。T=1/Fs。%设计指标W1p=fp/Fs*2。W1s=fs/Fs*2。求归一化频率N,Wn=buttord(W1p,W1s,Rp,Rs,s)。%确定butterworth的最小介数N和频率参数Wn设计模拟低通原型的零极点增益参数将零极点增益转换成分子分母参数

33、。%将低通原型转换为模拟低通。%用脉冲响应不变法进行模数变换sys=tf(bz,az,T)。%H,W=freqz(bz,az,512,Fs)。subplot(2,1,1)。plot(W,20*log10(abs(H)。gridon。% xlabel(频率/Hz)。ylabel(振幅/dB)。subplot(2,1,2)。plot(W,abs(H)。grid on。xlabel(频率/Hz)。ylabel(振幅/H)。运行后的波形如下:图3-1典型滤波器在Matlab上运行波形运行结果:N =4 bz = 0.0000 0.0999 0.1914 0.0252az=1.0000 -1.4336

34、1.0984 -0.4115 0.0627可以得出:只需编程,结果非常直观。 双线性变换法设计步骤如下:z,p,k=buttap(N)。%bp,ap=zp2tf(z,p,k)。%bs,as=lp2lp(bp,ap,Wn*pi*Fs)bz,az=impinvar(bs,as,Fs)给出传输函数H(Z)%生成频率响应参数%绘制幅频响应加坐标网格(1)首先写出该滤波器的系统函数(2)利用双线性变换法转换,数字滤波器的系统函数为用双线性变换法设计椭圆数字低通滤波器的M程序如下:fs=20000。wp=2*pi*2100/fs。ws=2*pi*8000/fs。Rp=0.5。Rs=30。Ts=1/fs。W

35、p=2/Ts*tan(wp/2)。Ws=2/Ts*tan(ws/2)。%按频率转换公式进行转换N,Wn=ellipord(Wp,Ws,Rp,Rs,s)。%计算模拟滤波器的最小阶数z,p,k=ellipap(N,Rp,Rs)。%设计模拟原型滤波器Bap,Aap=zp2tf(z,p,k)。%零点极点增益形式转换为传递函数形式b,a=lp2lp(Bap,Aap,Wn)。%低通转换为低通滤波器的频率转化bz,az=bilinear(b,a,fs)。%运用双线性变换法得到数字滤波器传递函数H,f=freqz(bz,az,512,fs)subplot(2,1,1)。plot(f,20*log10(abs(

36、H)title(N=2频率响应)grid on。xlabel(频率/Hz)。ylabel(振幅/dB)。subplot(2,1,2)。plot(f,abs(H)。grid on。xlabel(频率/Hz)。ylabel(振幅/H)。图3-2双线性变换法设计的椭圆数字低通滤波器运行波形 运行结果:N=2bz= 0.1213 0.1662 0.1213az= 1.0000 -0.9889 0.4218第二节IIR数字滤波器的直接设计法除了典型设计以外,MATLAB言号处理工具箱提供了几个直接设计IIR数字滤波器的函数,直接调用就可以设计滤波器,这为设计通用滤波器提供了方 便。主要有以下几种方法:1

37、.零极点累试法 这种方法也称为零极点累试法。在确定零极点位置时要注意:(1)极点必须位于z平面单位圆内,保证数字滤波器因果稳定;(2)复数零极点必须共轭成对,保证系统函数有理式的系数是实的。2.在频域利用幅度平方误差最小法直接设计IIR数字滤波器3.在时域直接设计IIR数字滤波器设计Butterworth滤波器用函数butter(),可以设计低通、高通、带通和 带阻的数字和模拟滤波器,其特性是通带内的幅度响应最大限度的平滑,但损 失了截止频率处的下降斜度。设计Chebyshev I型滤波器用函数chebyl()。可以设计低通、高通、带通 和带阻的数字和模拟Chebyshev I型滤波器,其通带

38、内为等波纹,阻带内为单 调。Chebyshev I型滤波器的下降斜度比II型大,但其代价目是通带内波纹较 大。设计Chebyshev II型滤波器用函数cheby2()。可以设计低通、高通、带 通和带阻的数字和模拟Chebyshev II型滤波器,其通带内为单调,阻带内等波 纹。Chebyshev II型滤波器的下降斜度比I型小,但其阻带内波纹较大。设计椭圆滤波器用函数ellip(),与chebyl, cheby2类似,可以设计低 通、高通、带通和带阻的数字和模拟滤波器。与Butterworth和chebyshev滤 波器相比,ellip函数可以得到下降斜度更大的滤波器,得通带和阻带均为等 波

39、纹。一般情况下,椭圆滤波器能以最低的阶实现指定的性能指标。在使用各类滤波器函数时应当注意以下重点:(1)、阶数和固有频率的选择:N,Wn=buttord(Wp,Ws,Rp,Rs)可得到符合要 求性质的滤波器的最小阶数N以及数字Butterworth滤波器的固有频率Wn即3dB)。设计的要求是在通带内的衰减不超过Rp,在阻带内的衰减不小于Rs,通带和阻带有截止频率分别是Wp, Ws,它们是归一化的频率,范围是0, 1,对应n弧度。(2)、有关滤波器设计当中的频率归一化问题:信号处理工具箱中经常使用的 频率是Nyquist频率,它被定义为采样频率的一半,在滤波器的阶数选择和设 计中的截止频率均使用

40、Nyquist频率进行归一化处理。例如对于一个采样频率为1000 Hz的系统,400Hz的归一化即为400/500=0.8。归一化频率的范围在0, 1之间。如果要将归一化频率转换为角频率,则将归一化频率乘以n。如果要将归一化频率转换为Hz,则将归一化频率乘以采样频率的一半。(3)、设计一个N阶的低通Butterworth滤波器使用函数B,A=butter(N,Wn),返回滤波器系数矩阵B,A。其中固有频率Wn必须是归一化频率。它的最 大值是采样频率的一半。Fs缺省时默认为2Hz。如果Wn=Wl,W2是一个两元素 的向量,则函数将设计出一个2N阶的带通滤波器,通带为W1,W2。设计Chebysh

41、ev I型和Chebyshev II型数字低通滤波器,要求通带边界频 率fp=2.1kHZ,通带最大衰减Rp=0.5dB;阻带边界频率fs=8kHZ,阻带最小衰 减Rs=30dB采样频率为Fs=20kHZChebyshev I型的M程序如下:Fs=20000。%抽样频率20KHzFlp=2100。运行后的波形如下:图3-3Chebyshev I型运行波形 运行结果:N=2 b= 0.1007 0.2014 0.1007a= 1.0000 -0.9872 0.4140Chebyshev II型M程序如下:Fs=20000。Flp=2100。Fls=8000。Wp=2*Flp/Fs。Ws=2*Fl

42、s/Fs。Rp=0.5。Rs=30。N,Wn=cheb2ord(Wp,Ws,Rp,Rs)。%返回最小阶数和截止频率Fls=8000Wp=2*Flp/Fs%归一化的通带截止频率Ws=2*Fls/Fs%归一化的阻带截止频率Rp=0.5。%通带最大衰减(单位:dB)Rs=30。%阻带最小衰减(单位:dB)N,Wn=cheb1ord(Wp,Ws,Rp,Rs)。%返回最小阶数和截止频率b,a=cheby1(N,Rp,Wn)。%返回H(z)的分子分母系数hw,w=freqz(b,a)。subplot(2,1,1)。plot(w/pi,20*log10(abs(hw)。grid on。xlabel(s /

43、nylabel(幅度(dB)I型幅频响应)。subplot(2,1,2)。plot(w/pi,abs(hw)。gridon。xlabel(s/nylabel(幅度(H)。%抽样频率20KHz%归一化的通带截止频率%归一化的阻带截止频率%通带最大衰减(单位:dB)b,a=cheby2(N,Rs,Wn)。%返回H(z)的分子分母系数hw,w=freqz(b,a)。subplot(2,1,1)。plot(w/pi,20*log10(abs(hw)。grid on。xlabel(S /n)。ylabel(幅度(dB)title(切比雪夫II型幅频响应)。subplot(2,1,2)。plot(w/pi

44、,abs(hw)。grid on。xlabel(S /n)。ylabel(幅度(H)。运行后的波形:图3-4 Chebyshev II型运行波形运行结果:N=2b= 0.2357 0.42410.2357a= 1.0000 -0.2996 0.1950从频率响应图中可以看出:巴特沃斯滤波器具有单调下降的幅频特性,通带 内平滑。切比雪I型滤波器的幅频特性在通带内有波动,阻带内单调。chebyshev II型滤波器的幅频特性在阻带内有波动,通带内单调。椭圆滤波器 的选择性相对前三种是最好的,下降斜度比较大,通带和阻带内均为等波纹, 同样的性能指标,椭圆滤波器可以最低的阶数来实现。这样根据不同的要求

45、可 以选用不同类波器。第三节FDATool介绍和界面设计FDATool(Filter Design&Analysis Tool)是MATLAB言号处理工具箱里专用 的滤波器设计分析工具,MATLAB 6.0以上的版本还专门增加了滤波器设计工具 箱(Filter DesignToolbox)。FDATool可以设计几乎所有的常规滤波器,包括FIR和IIR的各种设计方法。它操作简单,方便灵活。FDAToo。界面总共分两大部分,一部分是Design Filter。在界面的下半部,用来设置滤波器的设计参数;另一部分则是特性区,在界面的上半部分, 用来显示滤波器的各种特性。Design Filt

46、er部分主要分为:Filter Type(滤 波器类型)选项,包括Lowpass(低通)、Highpass(高通)、Bandpass(带通)、Bandstop(带阻)和特殊的FIR滤波器。Design Method(设计方法)选项,包括IIR滤波器的Butterwotth(巴特沃 思)法、Chebyshev Type I(切比雪夫I型)法、Chebyshev Type II(切比雪夫II型)法、Elliptic(椭圆滤波器)法和FIR滤波器的Equiripple法、Least- Squares(最小乘方)法、Window(窗函数)法。Filter Order(滤波器阶数)选项,定义滤波器的阶数

47、,包括SpecifyOrder(指定阶数)和Minimum Order(最小阶数)。在Specify Order中填入所要 设计的滤波器的阶数(N阶滤波器,Specify Order=N-1)。如果选择Minimum Order,则MATLA根据所选择的滤波器类型自动使用最小阶数。Frequency Specifications选项,可以详细定义频带的各参数,包括采样 频率和频带的截止频率。它的具体选项由Filter Type选项和Design Method选项决定。例如Bandpass(带通)滤波器需要定义Fstop1 (下阻带截止频率)、Fpass1 (通带下限截止频率)、Fpass2(通

48、带上限截止频率)、Fstop2(上阻带截 止频率),而Lowpass(低通)滤波器只需要定义Fstop1、Fpass1。采用窗函数设 计滤波器时,由于过渡带是由窗函数的类型和阶数所决定,所以只需定义通带 截止频率,而不必定义阻带参数。Magnitude Specifications选项,可以定义幅值衰减的情况。例如设计带 通滤波器时,可以定义Wstop1(频率Fstop1处的幅值衰减)、Wpass (通带范围 内的幅值衰减)、Wstop2(频率Fstop2处的幅值衰减)。当采用窗函数设计时, 通带截止频率处的幅值衰减固定为6db,所以不必定义。Window Specifications选项,当

49、选取采用窗函数设计,该选项可定义, 它包含了各种窗函数。基于MATLABS数的滤波器设计完成后,需要对已设计的滤波器的频率响应要进行校核。要得到幅频、相频响应特性,运算量也是很大的。而利用MATLAB强大的信号处理界面工具进行计算机辅助设计,可以快速有效地设计数字滤波 器,大大地简化了计算量。第四节FDATOOL设计IIR数字滤波器我们将以一个IIR滤波器的设计实例来具体说明使用MATLAB工具箱的方 便。要求设计Chebyshev1型低通滤波器满足指标,首先在Response Type中选 择Bandpass高通滤波器,然后在下面的Desigh Method中选择IIR类型,并且 指定Fil

50、ter Order项中的阶数SpecifyOrder=10,由于是设计Chebyshev滤波 器,其下面Option就不必选择。然后在FrequencySpecifications中选择Unit为Hz,给出采样频率Fs=1000,;最后在Magnitude Specifications中选择Unit为dB,Apass=1。设置完成后点击Design Filter即可得到所设计的IIR滤波器。通过菜单选项Analysis可以在特性区看到所设计的幅频响应、相频响 应、冲击响应和零极点配置等特性。设计完成后将结果保存,封装为filterl.fda文件,下面是运用FDATool设计滤波图3-5FDA设

51、计主界面图3-6相频特性图3-7冲击响应特性从以上这些我们可以清晰明了的看到设计的该滤波器的幅频,相频和冲击 响应特性:我们能够看到,图3-3中Chebshev1型滤波器具有等纹波的通频带、 阻带衰减的特性,总之,使用FDATOOLT具包设计和分析滤波器,是非常方便 易行的,而且交互性良好,不需要极其复杂的程序编制就可以实现。而且我们 在最后的仿真模型设计中将载入这一模块进行信号滤波。第五节SIMULINK仿真IIR滤波器SIMULIN!是一个进行动态系统建模、仿真和综合分析的集成软件包。它可 以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多 任务离散事件系统。本章通过调用

52、Simulink中的功能模块构成IIR数字滤波器的仿真框图,在仿 真过程中,可以双击各功能模块,随时改变参数,获得不同状态下的仿真结 果。首先建立信号传输仿真模块,先打开SIMULINK工具箱,并且建立一个Model,在这个空白Model中进行环节库及框图的建立,在SIMULINK菜单下找到Source,双击Source图标,将正弦信号源和常量信号源拉到Model中,然后分别找到DSP离散正弦信号源,乘法 器和加法器以及示波器,然后把 需要用来设计IIR数字滤波器的模块FDATOOL都拉到Model中,把环节 都布好后,把各环节的端口按框图连接起来。下面就来仿真3.5节中信号处理的模型,以框图

53、的方式直观地现实信号处理 的过程,信号源为f= sin(2*pi*t*40)+sin(3*pi*t*50)+sin(2*pi*t*100),在DSP离 散信号模块中设定参数分别为40HZ,75HZ,100HZ,在simulink环境中,将3.5中封装好的filterl.fda滤波器文件载入FDATOOL中,生成仿真框图和滤波效果 如图所示。图3-8仿真模型图3-9滤波效果结果显示,仿真模型中显示40HZ, 75H Z, 100HZ三个不同频率的正弦信相加 后的波形,干扰后的混合信号是一个夹杂多频率的信号,我们所需要的有用信 号(40HZ)在传输过程中不可避免的受到其他频率信号干扰,我们的目的就

54、是 得到所需要的40HZ频段信号,尽可能滤除干扰信号,滤波效果的图中就是滤波 后信号与原始抽样信号的的波形图,经滤波后,信号周期约为0.025s即频率为40HZ,说明滤波效果很好。通过分析,说明SIMULINK中各种非常有用的工具 箱不仅对于设计IIR数字滤波器非常有用,而且对于整个信号仿真处理具有相当 可视化的效果,从仿真的效果来看,是达到了技术指标的要求。总结通过这几个实验,对设计数字滤波器的整个过程有了很好的掌握。其中对 双线性变换法,巴特沃斯设计模拟滤波器的运用,也更加清楚了。通过对数字带通滤波器的设计,熟悉了MATLAB的运行环境,初步掌握了MATLAB语言在数字信号处理中一些基本库

55、函数的调用和编写基本程序等应用; 熟悉了滤波器设计的一般原理,对滤波器有了一个感性的认识;学会了数字高 通滤波器设计的一般步骤;加深了对滤波器设计中产生误差的原因以及双线性 变换法优缺点的理解和认识。总之,使理论联系了实际,巩固并深化了对课本 基本知识的认识和理解,使理论得以升华。致谢本论文是在雷老师的亲切关怀和悉心指导下完成的。他严肃的科学态度, 严谨的治学精神,精益求精的工作作风,深深地感染和激励着我。从课题的选 择到工程的最终完成,雷老师都始终给予我细心的指导和不懈的支持。一直以 来,雷老师不仅在学业上给我以精心指导,同时还在思想、生活上给我以无微 不至的关怀,在此谨向雷老师致以诚挚的谢

56、意和崇高的敬意。在此,我还要感谢在一起愉快的度过毕业设计生活的同学,正是由于你们 的帮助和支持,我才能克服一个一个的困难和疑惑,直至本文的顺利完成。特 别感谢我的同学,她们对本课题做了不少工作,给予我不少的帮助。在论文即将完成之际,我的心情无法平静,从开始进入课题到论文的顺利 完成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚 挚的谢意!最后我还要感谢培,谢谢你们!参考文献1倪养华数字信号处理与实现上海:上海交通大学出版社,19982飞思科技产品研发中心 MATLAB7辅助信号处理技术与应用 北京:电子 工业出版社,20053楼顺天,李博苗 基于MATLAB的系统分析与设计一信号处理 西安:西 安电子科技大学出版社,1998.4张葛祥,李娜 MATLAB仿真技术与应用 北京:清华大学出版社,20035胡广书数字信号处理、理论、算法与实现M 北京:清华大学出版社,1997陈希林,肖明清 一种LabWindows/CVI与MATLAB混合编程的实现方法J.微计算机信息,20057刘波.MATLAB信号处理.北京:电子工业出版社,200

温馨提示

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

评论

0/150

提交评论