信号课程设计(滤波器设计)_第1页
信号课程设计(滤波器设计)_第2页
信号课程设计(滤波器设计)_第3页
信号课程设计(滤波器设计)_第4页
信号课程设计(滤波器设计)_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、塔里木大学信息工程学院课程设计第 1 页 共 19 页目目 录录前前 言言 .2工程概况工程概况 .2正正 文文 .33.1 课程设计目的.33.2 IIR 数字滤波器的基本理论.33.2.1 IIR 数字滤波器概念.33.2.2 IIR 数字滤波器的特点.33.2.3 基本原理.43.3 数字滤波器设计方法概述.63.4 MATLAB 简介及发展.73.4.1 简介.73.4.2 Matlab 语言有如下特点:.73.5 设计内容.83.5.1 设计步骤.83.5.2 程序流程框图.93.5.3 程序及运行结果.9致致 谢谢 .17参考书目参考书目 .17塔里木大学信息工程学院课程设计第 2

2、 页 共 19 页 前前 言言随着数字技术的发展,用数字技术设计滤波器的功能越来越受到人们的注意和广泛的应用。由数字乘法器、加法器和延时单元组成的一种装置。其功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。由于电子计算机技术和大规模集成电路的发展,数字滤波器已可用计算机软件实现,也可用大规模集成数字硬件实时实现。数字滤波器是一个离散时间系统(按预定的算法,将输入离散时间信号转换为所要求的输出离散时间信号的特定功能装置) 。应用数字滤波器处理模拟信号时,首先须对输入模拟信号进行限带、抽样和模数转换。数字滤波器输入信号的抽样率应大于被处理信号带宽的两倍,其频率响应具有以抽样频

3、率为间隔的周期重复特性,且以折叠频率即 12 抽样频率点呈镜像对称。IIR 数字滤波器采用递归型结构,即结构上带有反馈环路。IIR 滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。工程概况工程概况数字滤波器被广泛地关注和使用,已成为通信系统中至关重要的器件之一。针对数字滤波器的要求,利用多目标进化算法对一维数字滤波器进行优化,以期降低其期回波损耗和插入损耗,并证明是可行的。 IIR 滤波器是一种被广泛应用的基本的数字信号处理部件。基于 DSP 信号处理的

4、优越性,将 Manab 与 DSP 相结合应用于 IIR 滤波器的设计。介绍了 IIR 数字滤波器的理论及其Matlab 常用设计函数。结合某高通滤波器的设计,给出了其 Matlab 仿真设计及在 DSP 上的实现过程及结果。该方法具有较强的实用性,对其它数字滤波器设计及 DSP 实现提供了参考价值。 21 世纪是数字化的时代,随着越来越多的电子产品将数字信号处理作为技术核心,数字信号处理应经成为推动数字化进程的动力。在数字信号处理中,数字滤波器占有极其重要的地位。在经典滤波中,常用的数字滤波器有 fir 滤波器 和 iir 滤波器,其中 iir 数字滤波器因为具有结构简单、占用储存空间少、运

5、算速度快、较高的计算精度和能够用较低的阶数实现较好的选频特性等特点,得到了广泛应用。 IIR 数字滤波器的设计借助模拟滤波器原型,再将模拟滤波器转换成数字滤波器,这些过程已经成为一整套成熟的设计程序。模拟滤波器的设计已经有了一套相当成熟的方法,它不但有完整的公式,而且还有较为完整的图表查询,因此,充分利用这些已有的资源将会给数字滤波器的设计带来很大的方便。 总而言之,数字滤波器在当今这样一个信息化、数字化的时代当中扮演着一个非同寻常的角色,也将是更多高科技产品的基石。塔里木大学信息工程学院课程设计第 3 页 共 19 页正正 文文3. .1 课程设计目的(1)熟悉用双线性变换法设计 IIR 数

6、字滤波器的原理与方法。(2)学会调用 MATLAB 信号处理工具箱中滤波器设计函数设计各种 IIR 数字滤波器,学会根据滤波需求确定滤波器指标参数。(3)掌握 IIR 数字滤波器的 MATLAB 实现方法。(4)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。3.2 IIR 数字滤波器的基本理论3.2.1 IIR 数字滤波器概念数字滤波器是完成信号滤波处理功能的,用有限精度算法实现的离散时间线性非时变系统。输入一组数字量,通过运算输出的是另一组数字量。数字滤波器具有稳定性好、精度高、灵活性大等突出优点。随着数字技术的发展,用数字技术设计滤波器的功能越来越受到人们的注意和广泛的

7、应用。由数字乘法器、加法器和延时单元组成的一种装置。其功能是对输入离散信号的数字代码进行运算处理,以达到改变信号频谱的目的。由于电子计算机技术和大规模集成电路的发展,数字滤波器已可用计算机软件实现,也可用大规模集成数字硬件实时实现。数字滤波器是一个离散时间系统(按预定的算法,将输入离散时间信号转换为所要求的输出离散时间信号的特定功能装置) 。应用数字滤波器处理模拟信号时,首先须对输入模拟信号进行限带、抽样和模数转换。数字滤波器输入信号的抽样率应大于被处理信号带宽的两倍,其频率响应具有以抽样频率为间隔的周期重复特性,且以折叠频率即 12 抽样频率点呈镜像对称。为得到模拟信号,数字滤波器处理的输出

8、数字信号须经数模转换、平滑。数字滤波器具有高精度、高可靠性、可程控改变特性或复用、便于集成等优点。数字滤波器在语言信号处理、图像信号处理、医学生物信号处理以及其他应用领域都得到了广泛应用。数字滤波器有低通、高通、带通、带阻和全通等类型。它可以是时不变的或时变的、因果的或非因果的、线性的或非线性的。应用最广的是线性、时不变数字滤波器。3.2.2 IIR 数字滤波器的特点数字滤波器有低通、高通、带通、带阻和全通等类型。它可以是时不变的或时变的、因果的或非因果的、线性的或非线性的。应用最广的是线性、时不变数字滤波器,以及fir 滤波器。特点:IIR 数字滤波器采用递归型结构,即结构上带有反馈环路。I

9、IR 滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱 寄生震荡。IIR 数字滤波器采用递归型结构,即结构上带有反馈环路。IIR 滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微塔里木大学信息工程学院课程设计第 4 页 共 19 页弱的寄生振荡。IIR 数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯、契比雪夫和椭圆滤波器等,有

10、现成的设计数据或图表可查,其设计工作量比较小,对计算工具的要求不高。在设计一个 IIR 数字滤波器时,我们根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。IIR 数字滤波器的相位特性不好控制,对相位要求较高时,需加相位校准网络。在MATLAB 下设计 IIR 滤波器可使用 Butterworth 函数设计出巴特沃斯滤波器,使用 Cheby1函数设计出契比雪夫 I 型滤波器,使用 Cheby2 设计出契比雪夫 II 型滤波器,使用ellipord 函数设计出椭圆滤波器。下面主要介绍前两个函数的使用。与 FIR 滤波器的设计不同,IIR 滤波器设计时的

11、阶数不是由设计者指定,而是根据设计者输入的各个滤波器参数(截止频率、通带滤纹、阻带衰减等),由软件设计出满足这些参数的最低滤波器阶数。在 MATLAB 下设计不同类型 IIR 滤波器均有与之对应的函数用于阶数的选择。IIR 单位响应为无限脉冲序列 FIR 单位响应为有限的 IIR 幅频特性精度很高,不是线性相位的,可以应用于对相位信息不敏感的音频信号上; FIR 幅频特性精度较之于 iir 低,但是线性相位,就是不同频率分量的信号经过 FIR 滤波器后他们的时间差不变。这是很好的性质。另外有限的单位响应也有利于对数字信号的处理,便于编程,用于计算的时延也小,这对实时的信号处理很重要。另外还有如

12、下几个特点:(1)系统的单位冲激响应 h(n)是无限长的;(2)系统函数 H(z)在有限 z 平面(0 |z )上有极点存在;(3)结构上存在着输出到输入的反馈,也就是结构上是递归型的;(4)因果稳定的 IIR 滤波器全部极点一定在单位圆内。3.2.3 基本原理从模拟滤波器设计 IIR 数字滤波器在工程上常用的方法有两种:脉冲响应不变法和双线性变换法。冲激响应不变法的一个重要特点是频率坐标的变换是线形的,其应用的局限性是有频谱的周期延拓效应,存在频谱混叠的现象。使数字滤波器的频率响应与模拟滤波器的频率响应相似。冲激响应不变不得法、阶跃响应不变法:时域模仿逼近缺点是产生频率响应的混叠失真双线性变

13、换法也是一种由 S 平面到 z 平面的映射过程,双线性变换法与脉冲响应不变法不同,它是一种从 S 平面到 z 平面简单映射。IIR 数字滤波器的设计借助模拟滤波器原型,再将模拟滤波器转换成数字滤波器,这些过程已经成为一整套成熟的设计程序。模拟滤波器的设计已经有了一套相当成熟的方法,它不但有完整的公式,而且还有较为完整的图表查询,因此,充分利用这些已有的资源将会给数字滤波器的设计带来很大的方便。 已知数字低通滤波器的设计要求 wp,ws,Rp 和 As,首先设计一个等效的模拟滤波器,然后再将它映射为所期望的数字滤波器来确定 H(z)。对这个过程所要求的步骤是:1)选取 T 并确定模拟频率,利用设

14、计参数 p,s,Rp 和 As,设计一个模拟滤波器 Ha(s);这可以利用模拟滤波器的原型来完成;3)再将(1)代入 Ha(s),求出 H(z)。利用 MATLAB 信号处理工具箱中的滤波器设计和分析工具(FDATool)可以很方便地设计出符合应用要求的未经量化的 IIR 数字滤波器。需要将 MATLAB 设计出的 IIR 数字滤波器进一步分解和量化,从而获得可用 FPGA 实现的滤波器系数。IIR 数字滤波器的设计步骤由于采用了级联结构,因此如何将滤波器的每一个极点和零点相组合,从而使得数字滤波器输出所含的噪声最小是个十分关键的问题。为了产生最优的量化后的 IIR 数字滤波器,采用如下步骤进

15、行设计。首先计算整体传递函数的零极点;选取具有最大幅度的极点以及距离它最近的零点,使用它们组成一个二阶基本节的传递函数;对于剩下的极点和零点采用与此相类似的步骤,直至形成所有的二阶基本节。通过上面三步法进行的设计可塔里木大学信息工程学院课程设计第 5 页 共 19 页以保证 IIR 数字滤波器中 N 位乘法器产生的量化舍入误差最小。获得最优 IIR 数字滤波器系数,为了设计出可用 FPGA 实现的数字滤波器,需要对上一步分解获得的二阶基本节的滤波器系数进行量化,即用一个固定的字长加以表示。量化过程中由于存在不同程度的量化误差,由此会导致滤波器的频率响应出现偏差,严重时会使 IIR 滤波器的极点

16、移到单位圆之外,系统因而失去稳定性。为了获得最优的滤波器系数,采用以下步骤进行量化,计算每个系数的绝对值;查找出每个系数绝对值中的最大值;计算比此绝对值大的最小整数;计算需要表示此整数的最小位数;计算用于表示系数值分数部分的余下位数。除了系数存在量化误差,数字滤波器运算过程中有限字长效应也会造成误差,因此对滤波器中乘法器、加法器及寄存器的数据宽度要也进行合理的设计,以防止产生极限环现象和溢出振荡。与FIR 数字滤波器的设计不同,IIR 滤波器设计时的阶数不是由设计者指定,而是根据设计者输入的各个滤波器参数(截止频率、通带滤纹、阻带衰减等) ,由软件设计出满足这些参数的最低滤波器阶数。在 MAT

17、LAB 下设计不同类型 IIR 滤波器均有与之对应的函数用于阶数的选择。双线性变换中数字域与频率 和模拟频率 之间的非线性关系限制了它的应用范围,只有当非线性失真是允许的或能被裣时,才能采用双线性变换法,通常低通、高通、带通和带阻等滤波器等具有分段恒定的频率特性,可以采用预畸变的方法来补偿频率畸变,因此可以采用双线性变换设计方法。由于具有频率的混叠效应,所以高通和带阻滤波器不宜采用冲激响应不变法。因为它们高频部分不衰减,将完全混淆在低频中,从而使整个频响面目全非,为了克服冲激响应不变法的频谱混叠现象,提出了双线性变换法,它依靠双线性变换式S=(1-Z-1)/(1+Z-1) (1)Z=(1+S-

18、1)/(1-S-1) (2)其中: S=+j, Z=rej (3)建立起 S 平面和 Z 平面的单值映射关系,数字频域和模拟频域之间的关系为=2arctan (4)基本设计过程是:先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;设计过渡模拟滤波器;将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。MATLAB 信号处理工具箱中的各种 IIR 数字滤波器设计函数都是采用双线性变换法。2.4 IIR 数字滤波器的基本结构IIR 数字滤波器有直接型、级联型和并联型三种基本结构。由 IIR 数字滤波器的阶N差分方程可知,设=2,则网络结构如图 1-1)(nyMiiinxa0)(Njjjnyb1

19、1)(MN所示。塔里木大学信息工程学院课程设计第 6 页 共 19 页 3.3 数字滤波器设计方法概述IIR 数字滤波器的设计步骤流程图如下:IIR 滤波器设计方法有两类,经常用到的一类设计方法是借助于模拟滤波器的设计方法进行的。其设计思路是:先设计模拟滤波器得到传输函数 Ha(s),然后将 Ha(s)按某种方法转换成数字滤波器的系统函数 H (Z)。这一类方法是基于模拟滤波器的设计方法相对比较成熟,它不仅有完整的设计公式,也有完整的图表供查阅。更可以直接调用 MATLAB 中的对应的函数进行设计。数字滤波器是对数字信号实现滤波的线性时不变系统。数字滤波实质上是一种运算过程,实现对信号的运算处

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

21、间冲激响应,需要用递归模型来实现,其差分方程为:y(n)x(n)a2a1b0b1a0z-1z-1数字滤波器技术指标模拟滤波器技术指标模拟滤波器设计方法数字滤波器H(Z)模拟滤波器Ha(S)双线性变换双线性变换=g()S=f(Z)塔里木大学信息工程学院课程设计第 7 页 共 19 页 (6)系统函数为: (7)设计IIR滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。3.4 MATLAB 简介及发展3.4.1 简介MATLAB 语言是当今国际上科学界 (尤其是自动控制领域)

22、最具影响力、也是最有活力的软件。它起源于矩阵运算,并已经发展成一种高度集成的计算机语言。它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。MATLAB 语言在各国高校与研究单位起着重大的作用。MATLAB 的含义是矩阵实验室(MATRIX LABORATORY),主要用于方便矩阵的存取,其基本元素是无须定义维数的矩阵。MATLAB 自问世以来,就是以数值计算称雄。MATLAB 进行数值计算的基本单位是复数数组(或称阵列),这使得 MATLAB 高度“向量化”。经过十几年的完善和扩充,现已发展成为线性代数课程的标准工具。由于它不需定义数组

23、的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得大为简捷、高效、方便,这是其它高级语言所不能比拟的。在命令窗口(matlab command window)键入 simulink,就出现(SIMULINK) 窗口。以往十分困难的系统仿真问题,用 SIMULINK 只需拖动鼠标即可轻而易举地解决问题,这也是近来受到重视的原因所在。在科学研究和工程应用中,往往要进行大量的数学计算,其中包括矩阵运算。这些运算一般来说难以用手工精确和快捷地进行,而要借助计算机编制相应的程序做近似计算4。目前流行用 Basic、Fortran 和 c

24、语言编制计算程序, 既需要对有关算法有深刻的了解,还需要熟练地掌握所用语言的语法及编程技巧。对多数科学工作者而言,同时具备这两方面技能有一定困难。通常,编制程序也是繁杂的,不仅消耗人力与物力,而且影响工作进程和效率。为克服上述困难,美国 Mathwork 公司于 1967 年推出了“Matrix Laboratory” (缩写为 Matlab)软件包,并不断更新和扩充。目前最新的 5.x 版本(windows 环境)是一种功能强、效率高便于进行科学和工程计算的交互式软件包。其中包括:一般数值分析、矩阵运算、数字信号处理、建模和系统控制和优化等应用程序,并集应用程序和图形于一便于使用的集成环境中

25、。在此环境下所解问题的 Matlab 语言表述形式和其数学表达形式相同,不需要按传统的方法编程。不过,Matlab 作为一种新的计算机语言,要想运用自如,充分发挥它的威力,也需先系统地学习它。但由于使用 Matlab 编程运算与人进行科学计算的思路和表达方式完全一致,所以不象学习其它高级语言-如 Basic、Fortran 和 C 等那样难于掌握。实践证明,你可在几十分钟的时间内学会 Matlab 的基础知识,在短短几个小时的使用中就能初步掌握它.从而使你能够进行高效率和富有创造性的计算。 Matlab 大大降低了对使用者的数学基础和计算机语言知识的要求,而且编程效率和计算效率极高,还可在计算

26、机上直接输出结果和精美的图形拷贝,所以它的确为一高效的科研助手。自推出后即风行美国,流传世界。3.4.2 Matlab 语言有如下特点: 塔里木大学信息工程学院课程设计第 8 页 共 19 页(1)编程效率高 它是一种面向科学与工程计算的高级语言,允许用数学形式的语言编写程序,且比Basic、Fortran 和 C 等语言更加接近我们书写计算公式的思维方式,用 Matlab 编写程序犹如在演算纸上排列出公式与求解问题。因此,Matlab 语言也可通俗地称为演算纸式科学算法语言由于它编写简单,所以编程效率高,易学易懂。(2)用户使用方便Matlab 语言是一种解释执行的语言(在没被专门的工具编译

27、之前) ,它灵活、方便,其调试程序手段丰富,调试速度快,需要学习时间少。人们用任何一种语言编写程序和调试程序一般都要经过四个步骤:编辑、编译、连接以及执行和调试。各个步骤之间是顺序关系,编程的过程就是在它们之间作瀑布型的循环。Matlab 语言与其它语言相比,较好地解决了上述问题,把编辑、编译、连接和执行融为一体。它能在同一画面上进行灵活操作快速排除输入程序中的书写错误、语法错误以至语意错误,从而加快了用户编写、修改和调试程序的速度,可以说在编程和调试过程中它是一种比 VB 还要简单的语言。具体地说,Matlab 运行时,如直接在命令行输入 Mailab 语句(命令) ,包括调用 M 文件的语

28、句,每输入一条语句,就立即对其进行处理,完成绩译、连接和运行的全过程。又如,将 Matlab 源程序编辑为 M 文件,由于 Mat1ab 磁盘文件也是 M 文件,所以编辑后的源文件就可直接运行,而不需进行编译和连接。在运行 M 文件时,如果有错,计算机屏幕上会给出详细的出锗信息,用户经修改后再执行,直到正确为止。所以可以说,Mat1ab 语言不仅是一种语言,广义上讲是一种该语言开发系统,即语言调试系统。 (3)扩充能力强高版本的 Matlab 语言有丰富的库函数,在进行复杂的数学运算时可以直接调用,而且Matlab 的库函数同用户文件在形成上一样,所以用户文件也可作为 Matlab 的库函数来

29、调用。因而,用户可以根据自己的需要方便地建立和扩充新的库函数,以便提高 Matlab 使用效率和扩充它的功能。另外,为了充分利用 Fortran、C 等语言的资源,包括用户已编好的Fortran,C 语言程序,通过建立 Me 调文件的形式,混合编程,方便地调用有关的Fortran,C 语言的子程序。(4)语句简单,内涵丰富Mat1ab 语言中最基本最重要的成分是函数,其一般形式为a,6,c = fun(d,e,f,) ,即一个函数由函数名,输入变量 d,e,f,和输出变 量a,b,c组成,同一函数名 F,不同数目的输入变量(包括无输入变量)及不同数目的输出变量,代表着不同的含义(有点像面向对象

30、中的多态性。这不仅使 Matlab 的库函数功能更丰富,而大大减少了需要的磁盘空间,使得 Matlab 编写的 M 文件简单、短小而高效。(5)高效方便的矩阵和数组运算Matlab 语言象 Basic、Fortran 和 C 语言一样规定了矩阵的算术运算符、关系运算符、逻辑运算符、条件运算符及赋值运算符,而且这些运算符大部分可以毫无改变地照搬到数组间的运算,有些如算术运算符只要增加“”就可用于数组间的运算,另外,它不需定义数组的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得大为简捷、高效、方便,这是其它高级语言所不能比拟的。在

31、此基础上,高版本的 Matlab 已逐步扩展到科学及工程计算的其它领域。因此,不久的将来,它一定能名符其实地成为“万能演算纸式的”科学算法语言。(6)方便的绘图功能Matlab 的绘图是十分方便的,它有一系列绘图函数(命令) ,例如线性坐标、对数坐标,半对数坐标及极坐标,均只需调用不同的绘图函数(命令) ,在图上标出图题、XY 轴标注,格(栅)绘制也只需调用相应的命令,简单易行。另外,在调用绘图函数时调整自变量可绘出不变颜色的点、线、复线或多重线。这种为科学研究着想的设计是通用的编程语言所不及的。 总之,Matlab 语言的设计思想可以说代表了当前计算机高级语言的发展方向。我们相信,在不断使用

32、中,读者会发现它的巨大潜力。(7)执行速度较慢它和其他高级程序相比,程序的执行速度较慢。由于 MATLAB 的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。 塔里木大学信息工程学院课程设计第 9 页 共 19 页 3.5 设计内容3.5.1 设计步骤(1) 将设计指标归一化处理。(2) 根据归一化频率,确定最小阶数N和3db截止频率,从而求得圆形滤波器的传递函数Ha(s)。(3) 用变换公式S=(1-Z-1)/(1+Z-1),代入Ha(s),求得数字滤波器传递函数H(Z)= Ha(s) | S=(1-Z-1)/(1+Z-1) (8)(4) 模拟低通滤波原型转换模拟低通

33、、高通、带通、带阻滤波器, (5) 运用双线性变法把模拟滤波器转数字滤波器6。(6) 根据输出的分子分母系数,用 tf 函数生成 H(z)的表达式,再用 freqz 函数验证设计结果。3.5.2 程序流程框图读入数字滤波器技术指标将指标转换成归一化模拟低通滤波器的指标 设计归一化的模拟低通滤波器阶数 N 和 3db 截止频率 模拟域频率变换,将 G(P)变换成 模拟带通滤波器 Ha(s) 用双线性变换法将 Ha(s)转换成 数字带通滤波器 H(z) 输入信号后显示相关结果图 3-1 程序流程框图3.5.3 程序及运行结果(1)IIR 低通滤波% IIR Lowpass Use Butterwo

34、rth% copyright by Etualclear;fs=20; %采样频率fpass=4;fstop=5;Ap=0.5; %通带衰减As=10; %阻带衰减wp=2*pi*fpass/fs; %通带截止频率ws=2*pi*fstop/fs; %阻带截止频率塔里木大学信息工程学院课程设计第 10 页 共 19 页omegap=tan(wp/2);omegas=tan(ws/2);ep=sqrt(10(Ap/10)-1);es=sqrt(10(As/10)-1);N=ceil(log(es/ep)/log(omegas/omegap);omega0=omegap/ep(1/N);K=flo

35、or(N/2);for i=1:K theta(i)=pi*(N-1+2*i)/(2*N);endfor i=1:K G(i)=omega02/(1-2*omega0*cos(theta(i)+omega02);endfor i=1:K a1(i)=2*(omega02-1)/(1-2*omega0*cos(theta(i)+omega02);endfor i=1:K a2(i)=(1+2*omega0*cos(theta(i)+omega02)/(1-2*omega0*cos(theta(i)+omega02);endif K(N/2) G0=omega0/(omega0+1);a0=(om

36、ega0-1)/(omega0+1);endw=0:pi/300:pi;Hw2=1./(1+(tan(w/2)/omega0).(2*N);plot(w/pi,Hw2);grid;运行结果如下:塔里木大学信息工程学院课程设计第 11 页 共 19 页00.10.20.30.40.50.60.70.80.9100.10.20.30.40.50.60.70.80.91图 3-2 低通滤波图(2)IIR 带通滤波器(Butterworth)% IIR Bandpass Use Butterworth% copyright by Etualclear;fs=20;fpa=2;fpb=4;fsa=1.5

37、;fsb=4.5;Ap=0.0877;As=16.9897;wpa=2*pi*fpa/fs;wpb=2*pi*fpb/fs; %通带截止频率wsa=2*pi*fsa/fs;wsb=2*pi*fsb/fs; %阻带截止频率c=sin(wpa+wpb)/(sin(wpa)+sin(wpb);omegap=abs(c-cos(wpb)/sin(wpb);omegasa=(c-cos(wsa)/sin(wsa);omegasb=(c-cos(wsb)/sin(wsb);omegas=min(abs(omegasa),abs(omegasb);ep=sqrt(10(Ap/10)-1);es=sqrt(1

38、0(As/10)-1);N=ceil(log(es/ep)/log(omegas/omegap);omega0=omegap/ep(1/N);K=floor(N/2);for i=1:K theta(i)=pi*(N-1+2*i)/(2*N);end塔里木大学信息工程学院课程设计第 12 页 共 19 页for i=1:K G(i)=omega02/(1-2*omega0*cos(theta(i)+omega02);endfor i=1:K a1(i)=4*c*(omega0*cos(theta(i)-1)/(1-2*omega0*cos(theta(i)+omega02);endfor i=

39、1:K a2(i)=2*(2*c2+1-omega02)/(1-2*omega0*cos(theta(i)+omega02);endfor i=1:K a3(i)=-(4*c*(omega0*cos(theta(i)+1)/(1-2*omega0*cos(theta(i)+omega02);endfor i=1:K a4(i)=(1+2*omega0*cos(theta(i)+omega02)/(1-2*omega0*cos(theta(i)+omega02);endif K(N/2) G0=omega0/(1+omega0);a0(1)=-2*c/(1+omega0);a0(2)=(1-om

40、ega0)/(1+omega0);endw=(0+eps):pi/300:pi;Hw2=1./(1+(c-cos(w)./(omega0*sin(w).(2*N);plot(w/pi,Hw2);grid;运行结果如下:塔里木大学信息工程学院课程设计第 13 页 共 19 页00.10.20.30.40.50.60.70.80.9100.10.20.30.40.50.60.70.80.91图 3-3 带通滤波图(3)IIR 带阻滤波器clear;%下通带截止频率wp1=80HZ,上通带截止频率wp2=170HZ,阻带下限频率ws1=100HZ,阻带上限频率ws2=150HZ;解得wp=89HZ,

41、ws=225Hzwp=89*2*pi; %通带截止频率wpws=225*2*pi; %阻带截止频率wsrp=0.5; %通带衰减rprs=30; %阻带衰减rsfs=2000; %采样频率 n,wc=cheb2ord(wp,ws,rp,rs,s); %计算阶数n,与截止频率wn%建立切比雪夫2型数字滤波器%计算阶数n,与截止频率wnz,p,k=cheb2ap(n,rs); %建立切比雪夫2型数字滤波器%计算阶数n,与截止频率wna,b,c,d=zp2ss(z,p,k); %零极点模型转换到空间状态模型at1,bt1,ct1,dt1=lp2bs(a,b,c,d,wc,100*2*pi); %低通

42、转换到高通at2,bt2,ct2,dt2=bilinear(at1,bt1,ct1,dt1,fs); %用双线性变换法实现模拟滤波器到数字滤波器的转换num,den=ss2tf(at2,bt2,ct2,dt2);%空间状态模型转换到传递函数模型%绘制幅频、相频图(频率响应特性图)figure(1);塔里木大学信息工程学院课程设计第 14 页 共 19 页freqz(num,den,128,fs);grid on;title(幅频、相频图 )%绘制脉冲响应特性图figure(2);impz(num,den,128,fs);grid;title(脉冲响应特性图 )%滤波检验figure(3);t=

43、0:0.0005:0.1;x=sin(2*pi*50*t)+sin(2*pi*150*t);y=filter(num,den,x);plot(t,x,:,t,y,-);grid;title(滤波检验 ) 01002003004005006007008009001000-400-2000200400Frequency (Hz)Phase (degrees)01002003004005006007008009001000-60-40-200Frequency (Hz)Magnitude (dB)、 、 、 、 、 、 塔里木大学信息工程学院课程设计第 15 页 共 19 页00.010.020.0

44、30.040.050.06-0.6-0.4-0.200.20.40.60.8nT (seconds) Amplitude、 、 、 、 、 、 、 00.010.020.030.040.050.060.070.080.090.1-2-1.5-1-0.500.511.52、 、 、 、 (4)IIR高通滤波器clearwp=100*2*pi; %通带截止频率塔里木大学信息工程学院课程设计第 16 页 共 19 页ws=150*2*pi; %阻带截止频率rp=0.5; %通带衰减rs=30; %阻带衰减fs=2000; %采样频率n,wc=cheb2ord(wp,ws,rp,rs,s); %计算阶数,与

温馨提示

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

评论

0/150

提交评论