邓海鹏IIR有源滤波器的设计与实现

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1IIR有源滤波器的设计与实现摘要:数字滤波器是数字信号处理中的重要组成部分.它主要分为有限脉冲响应,(FIR)和无限冲激响应(IIR)两大类。本文主要介绍了对有限脉冲响应(FIR)和无限冲激响应(IIR)数字滤波器的原理与设计思路、设计方法、设计步骤进行了详细的设计。在MATLAB环境下,通过对一个模拟原型法中的完全设计函数对低通ButterworthIIR数字滤波器的实现和用Haing窗函数法对低通FIR数字滤波器进行实现。实例发现,IIR数字滤波器和FIR数字滤波器各有优点,但是FIR数字滤波器比IIR数字滤波器有稳定、误差小、运算效率高等优势。关键词.MATLAB数字滤波器IIRMatlabIIRbasedonthefilterwhosedesignAbstract:figuresfilteristhenumberofimportantpartofthesignalprocessing.itislimitedmainlyimpulseresponse(FIR)andinfiniteresponseatprovoking(IIR)twocategories.thispapermainlyintroducesimpulseresponsetoalimited(FIR)andinfiniteresponseatprovoking(IIR)figuresfiltertheprinciplesanddesignmethods,designandimplementationprocedures.detailedinformationonmatlabenvironment,forexamplebythemethodofanalysistoIIRfiguresfilterandfiguresarebasedonthedesignapproach.found:IIRfiguresfilterandFIRfiguresfilterhaveadvantages,buttheFIRfiguresfilterthanIIRfiguresfilterastableanderror,theoperationefficiency,etc.Keywords:MATLABIIRthefunction2目录引言………………………………………………………………31IIR数字滤波器…………………………………………………41.1数字滤波器的设计方法………………………………………41.2IIR数字滤波器的设计思路…………………………………41.3利用模拟滤波器设计IIR数字滤波器的步骤…………………51.4IIR滤波器的典型设计法……………………………………52IIR滤波器的MATLAB的实现………………………………………92.1滤波器的MATLAB的实现…………………………………9小结………………………………………………………………10参考文献…………………………………………………………113引言�随着信息技术的迅猛发展,数字信号处理已成为一个极其重要的学科和技术领域,在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理的基本方法中。通常会涉及到变换、滤波、频谱分析、调制解调和编码解码等处理。其中,数字滤波是是数学信号处理的重要环节,它在数字信号处理中占据着重要的地位,它具有可靠性好、精度高、爱活性大、体积小、重量轻等优点。随着数字技术的发展,数字滤波器越来越受到人们的重视,广泛地应用于各个领域。MATLAB是于1984年由美国Mathworks公司推出,该软件具有使用简单、方便,易编程,语言简练,数据库可任意扩充,采用全新数据类型和面向对象编程技术等特点,有强大的数值分析、矩阵运算、图形绘制、数据处理等功能,因此已被广泛应用在数学、科研和工程设计的各个领域。如今ATLAB已经成为信号与信号处理,特别是数字信号处理,DigitalSignalProcessing,DSP,应用中分析与仿真设计的主要工具。本文将在ATLAB环境下,对有限脉冲响应(FIR)数字滤波器和无限脉冲响应(IIR)数字滤波器的设计原理和设计方法及步骤进行分析,并结合实例根据对FIR数字滤波器和IIR数字滤波器的实现来对它们进行分析比较。41.IIR数字滤波器IIR滤波器有以下几个特点①单位冲激响应h(n)是无限长的,②系统函数Hz在有限z平面0|z|∞上极点存在,②结构上存在着输出到输入的反馈,也就是结构上是递归型的。1.1.IIR数字滤波器的设计方法1模拟原型法,采用经典低通滤波器作为连续域上的设计模型,使其逼近性能指标,而后将模拟滤波器系统函数变换为所需的数字滤波器系统函数,最终得到IIR数字滤波器.2直接设计法,基于给定的滤波器参数直接在离散域上寻找合适的数字滤波器,不同于基于模拟滤波器的方法,该方法并不局限于常规的滤波器类型,如低通、高通带通和带阻等,而可以设计任意的频率响应.3参数建模法,寻找接近于所需要设计的滤波器通用模型,分为时域和频域建模两类方法1.2.IIR数字滤波器的设计思路IIR数字滤波器可用一个n阶差分方程不难看出,数字滤波器与模拟滤波器的设计思路相仿,其设计实质也是寻找一组系数b,a,去逼近所要求的频率响应,使其在性能上满足预定的技术要求,不同的是模拟滤波器的设计是在S平面上用数学逼近发去寻找近似的所需特性H(S),而数字滤波器则是在Z平面寻找合适的H(Z),IIR数字滤波器的单位响应应是无限长的,而模拟滤波器一般都具有无限长的单位脉冲响应,因此与模拟滤波器相匹配。由于模拟滤波器的设计在理论上已经什么成熟,因此数字滤波器的设计的关键是将H(S)H(Z),即利用复值映射将模拟滤波器离散化。已经证明,冲击响应不变法和双线性变换法能较5好地担当此任,则在此基础上,数字滤波器的设计就可首先归结为模拟滤波器的设计了。数字滤波器设计步骤如下图所示,1.3利用模拟滤波器设计IIR数字滤波器的步骤(1)将给定的数字滤波器的性能指标,按某一变换(映射)规则转换成相应的模拟滤波器性能指标。(2)如果要设计的不是数字滤波器,则还需要将步骤(1)中变换所得到相应的(高通,带通,带阻)模拟滤波器性能指标变换成模拟低通滤波器的性能指标这是因为模拟低通滤波器才有图形和表格可以利用.(3)用所得到的模拟低通滤波器的性能指标,利用某种模拟滤波器逼近方法,设计并查表求得此模拟低通滤波器的系统函数,以它作为设计数字滤波器的样本。(4)利用与步骤(1),(2)中的同一变换规则,将此作为“样本”的模拟原型低通滤波器的系统函数最终变换成所需的数字各型滤波器的系统函数H(z)步骤(1)中的变换规则就是从模拟滤波器数字化成为数字滤波器的方法,也就是要把s平面映射到z平面,使模拟系统函数Ha(s)变换成所需的数字滤波器的系统函数H(z)+这种由复变量s到复变量z之间的映射(变换)关系,必须满足以下两条基本要求,第一,H(z)的频率响应必须有可能模仿Ha(s)的频率响应,即s平面的虚轴JΩ必须映射到z平面的单位圆ejw上,也就是频率轴要对应。第二,果稳定的Ha(s)应能映射成因果稳定的H(z)..也就是s平面的左半平面Re[s]o必须映射到z平面单位圆的内部z11.4IIR滤波器的典型设计法常见的模拟滤波器类型包括Butterworth.巴特沃斯Chebyshev.切比雪夫..Ⅰ型、ChebyshevⅡ型和椭圆滤波器..基于这些模拟滤波器..ATLAB信号处理工具箱提供了对应的IIR数字滤波器设计函数。(1)完全设计函数MATLAB信号处理工具箱提供了几个完全设计函数.只要一条语句就可轻松地产生任何阶数、任何类型..低通、高通、带通、带阻..的IIR数字滤波器。①butter函数。Butter函数用于设计Butterworth模拟和数字滤波器..该类6型滤波器的特点是在通带内具有最大平坦的幅度特性..并且在通带和阻带内幅度都随着频率的增大而单调下降。函数的用法如下.b.a=butter(n,Rp,Wn).b.a=butter(n,Rp,Wn,’ftype’)b.a=butter(n,Rp,Wn,’s’).b.a=butter(n,Rp,Wn,’ftype’,’s’)z.p.k=butter(n,Rp,Wn,’ftype’,’s’)A.B.C.D=butter(n,Rp,Wn,’ftype’,’s’)函数输出可以有滤波器的三种形式..传递函数形式..零极点增益形式和状态方程形式。a)数字域b.a..=butter(n,Rp,Wn)可设计出n阶低通数字Butterworth滤波器..其截止频率由Wn确定..通带内的波纹由Rp确定.截比频率是滤波器幅度下降到-Rp分贝处的频率,且是归一化之后的范围[0,1]。通带波纹Rp越小,可得到更宽的变换宽度。b,a,=butter(n,Rp,Wn,’ftype’)可设计高通、带通和带阻滤波器,Ftype=high时,可设计截止频率为Wn的高通滤波器,Ftype=band时,可设计带通滤波器,Wn=[W1W2]其带通为W1ωW2。当Wn=[W1W2]时,ftype默认,butter函数可产生一个2n阶的数字带通滤波器,其带通为W1ωW2。Ftype=stop时,可设计带阻滤波器,这时Wn=[W1W2],且阻带为W1ωW2。b)模拟域[b,a]=butter(n,Rp,Wn,’s’)可设计出截止频率为Wn的n阶低通模拟Butterworth滤波器。即其截止频率Wn0。注意这时Wn必须以弧度为单位。函数buttord可在给定滤波器性能情况下,选择模拟或数字Butterworth滤波器最小的阶数使用格式如下:[n,Wn]=buttord(Wp,Ws,Rp,Rs)-------数字域[n,Wn]=buttord(Wp,Ws,Rp,Rs,’s’)-------模拟域其中,Wp和Ws分别是通带相阻带的截止频率,其值为0≤Wp(Ws)≤1,当其值为1时,表示0.5Fs。Rp和Rs分别是通带和阻带内的波纹系数7②Cheby1函数。Cheby1函数用于设计ChebyshevⅠ型数字滤波器,该类型滤除波器幅频特性在通带内为等波纹,在阻带单调下降。函数用法如下,[b,a]=cheby1(n,Rp,Wn)[b,a]=cheby1(n,Rp,Wn,’ftype’)[b,a]=cheby1(n,Rp,Wn,’s’)[b,a]=cheby1(n,Rp,Wn,’ftype’,’s’)[z,p,k]=cheby1(n,Rp,Wn,’ftype’,’s’)[A,B,C,D]=cheby1(n,Rp,Wn,’ftype’,’s’)函数输出可以有滤波器的三种形式,传递函数形式,零极点增益形式和状态方程形式。a)数字域[b,a]=cheby1(n,Rp,Wn)可设计出n阶低通数字ChebyshevⅠ型滤波器,其截8止频率由Wn确定,通带内的波纹由Rp确定,滤波器系统函数为,截比频率是滤波器幅度下降到-Rp分贝处的频率,且是归一化之后的范围[0,1]。通带波纹Rp越小,可得到更宽的变换宽度。[b,a]=cheby1(n,Rp,Wn,’ftype’)可设计高通、带通和带阻滤波器,Ftype=high时,可设计截止频率为Wn的高通滤波器,Ftype=band时,可设计带通滤波器,Wn=[W1W2],其带通为W1ωW2。当Wn=[W1W2]时,ftype缺省,cheby1函数可产生一个2n阶的数字带通滤波器,其带通为W1ωW2。Ftype=stop时,可设计带阻滤波器,这时Wn=[W1W2],且阻带为W1ωW2。b)模拟域[b,a]=cheby1(n,Rp,Wn,’s’)可设计出截止频率为Wn的n阶低通模拟ChebychevⅠ型滤波器。即其截止频率Wn0。注意这时Wn必须以弧度为单位。③cheby2函数。Cheby2函数用于设计ChebyshevⅡ型数字滤波器,该类型滤波器的频率响应特性在通带内单调下降,在阻带为等波纹。Che

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功