热门搜索 :
考研考公
您的当前位置:首页正文

matlab设计低通滤波器本科毕业设计论文

来源:东饰资讯网
 -

摘 要

在当今的数字信息的世界里,数字信号处理已经演变成一门越来越重要的学科,并在通信、语音、图像、自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。其中数字滤波是数字信号处理的重要内容。数字滤波器可分为IIR和FIR两大类,对于IIR滤波器的设计来说主要有脉冲响应不变法和双线性变换法,而对于FIR数字滤波器的设计来说主要有窗函数法和频率采样设计法。

本文应用MATLBA对数字低通滤波器进行仿真,并给出一定频率的信号通过所设计的滤波器来验证滤波器的性能,主要的研究工作主要包括以下几方面的内容:

(1)介绍IIR滤波器和FIR滤波器的结构特点并比较两者之间的差别。

(2)在MATLAB中应用双线性变换法和脉冲响应不变法设计IIR滤波器,给出了滤波器的频率特性图和相位特性图。

(3)通过编写MATLAB程序用窗函数设计法和频率采样法来完成FIR低通滤波器的设计,并给出几个不同频率的信号通过所设定的滤波器来验证滤波器的性能。

(4)在MATLAB中应用Simulink模块来仿真FIR低通滤波器,并在示波器上同时显示输入信号的频率和输出信号的频率,最后对结果进行分析。

【关键字】 FIR滤波器 IIR滤波器, 双线性变换法 脉冲响应不变法 窗函数法 频率采样法 MATLAB

I

-

ABSTRACT

In nowadays world of digital information, digital signal processing has become an increasingly important subject, and has been widely applied in all fields, such as medicine, communications, and other areas, digital filters are important elements of digital signal processing. Digital filters can be divided into two kinds of IIR and FIR, IIR filter design for pulse response method and bilinear transformation method, for FIR digital filter design, the main Windows function method and frequency of sampling design.

In this paper simulation using MATLAB for digital low-pass filter, and to give a signal of a certain frequency through the filters designed to verify the performance of filter, the main research work mainly includes the following content:

(1) Describes the structure of FIR and IIR filters filter characteristics and comparison of the differences between the two.

(2) In MATLAB using bilinear transformation method and impulse response method design of IIR filters, to out of the filters of frequency response and phase characteristics.

(3) Design method by writing MATLAB programs use the windows function and frequency sampling method to accomplish the design of FIR low-pass filters, and gives several different frequency signals passes through a set of filters to verify that the filter's performance.

(4) In the MATLAB Simulink simulation FIR low-pass filter module to the application, and also on the scope displays the frequency of the input signal and the output signal frequency, final analysis of the results.

【Key words】FIR digital IIR digital filter Bilinear transformation method

Impulse response method Windows function Frequency sampling method MATLAB

II

-

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作 者 签 名: 日 期: 指导教师签名: 日 期:

使用授权说明

本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名: 日 期:

III

-

学位论文原创性声明

本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。

作者签名: 日期: 年 月 日

学位论文版权使用授权书

本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

涉密论文按学校规定处理。

作者签名: 日期: 年 月 日

导师签名: 日期: 年 月 日

IV

-

目 录

前 言 ......................................................................................................................................................... 1 第一章 数字滤波器 ................................................................................................................................. 2

第一节 数字滤波器的简介 .............................................................................................................. 2 第二节 数字滤波器的应用 .............................................................................................................. 3 第三节 数字滤波器的实现方法分析及优点 .................................................................................. 4 第四节 MATLAB和Simulink简介 ................................................................................................ 5 第五节 本章小结.............................................................................................................................. 7 第二章 数字滤波器的结构和设计原理 .................................................................................................. 8

第一节 数字滤波器的基本结构 ...................................................................................................... 8

一、IIR滤波器的基本结构 ..................................................................................................... 8 二、FIR滤波器的基本结构 .................................................................................................. 10 第二节 数字滤波器的设计原理 .................................................................................................... 12

一、滤波器的设计步奏 .......................................................................................................... 12 二、滤波器的性能指标 .......................................................................................................... 13 第三节 IIR滤波器与FIR滤波器的分析比较 ............................................................................. 13 第四节 本章小结............................................................................................................................ 15 第三章IIR滤波器的设计 ...................................................................................................................... 16

第一节 脉冲响应不变法的基本原理 ............................................................................................ 16

一、变化原理.......................................................................................................................... 16 二、混叠失真.......................................................................................................................... 16 三、 主要特点........................................................................................................................ 17 四、 MATLAB(脉冲响应不变法)设计滤波器 ......................................................... 18 第二节 双线性不变法的基本原理 ................................................................................................ 19

一、变换原理.......................................................................................................................... 19 二、主要优缺点...................................................................................................................... 19 三、MATLAB(双线性变化法)设计数字低通滤波器 ........................................................... 19 第三节 本章小结............................................................................................................................ 21 第四章 FIR滤波器的设计 .................................................................................................................... 22

第一节 线性相位FIR滤波器的特点 ........................................................................................... 22 第二节 利用窗函数设计FIR低通滤波器 ................................................................................... 24

一、窗函数的基本思想 .......................................................................................................... 24 二、几种常用的窗函数 .......................................................................................................... 24 第二节 频率采样法设计FIR低通滤波器 ................................................................................... 32

一、频率采样设计法的基本原理 .......................................................................................... 32 二、线性相位的约束 .............................................................................................................. 32 三、逼近误差及其改进措施 .................................................................................................. 32 第三节 FIR数字滤波器的优化设计 ............................................................................................ 35 第四节 本章小结............................................................................................................................ 36 第五章 仿真结果及分析...................................................................................................................... 37

第一节 MATLAB(窗函数法)设计FIR数字低通滤波器 ............................................................ 37 第二节 MATLAB(频率采样法)设计FIR数字低通滤波器......................................................... 39 第三节 Simulink仿真FIR滤波器 ................................................................................................ 41 第四节 本章小结............................................................................................................................ 43 结 论 ....................................................................................................................................................... 45 致 谢 ....................................................................................................................................................... 46 参考文献 ................................................................................................................................................. 46 V

-

附 录 ....................................................................................................................................................... 47

一、英文原文.......................................................................................................................... 47 二、英文翻译.......................................................................................................................... 55 三、仿真脚本.......................................................................................................................... 62

VI

-

前 言

模拟滤波器与数字滤波器的设计对工程,应用数学及计算机科学都是非常重要的。对设计人员来说,滤波器是控制,信号处理和通信领域的重要组成部分。

数字滤波器是数字信号处理中处理信号的一种基本方式,占有极其重要的地位。经过多年的研究,数字滤波器按单位脉冲响应h(n)的长度分类可分有限长脉冲响应(FIR)滤波器和无限长脉冲响应(IIR)滤波器。其中IIR滤波器的阶次较低,但是一般为非线性相位;若需线性相位,就要采用全通网络进行相位校正,因而会使得系统结构复杂,成本增加。而FIR滤波器的阶次虽然较高,但无需反馈,且可以做成严格的线性相位,故在图像传输、信息处理等方面广泛应用。

因为两者具有不同的特点,所以设计方法也不同。数字滤波器的设计,就是根据所提供的指标,找出一个既能满足指标又能实现的系统函数,然后以此函数实现滤波器要求。

本文针对数字低通滤波器的设计共分为五章。第一章是对数字滤波器的背景以及研究意义和滤波器的发展趋势做一个大体的介绍。第二章主要是对IIR和FIR滤波器的结构做了大致的描述,介绍了滤波器的设计原理,并且比较了两者之间的差异。第三章介绍了IIR滤波器的两种设计方法——脉冲响应不变法和双线性变换法,并对两者的优缺点进行了比较。第四章介绍了用窗函数法和频率采样法来设计FIR滤波器,两种方法分别从时域和频域为出发点来进行设计。第五章在前面讨论的基础上进行了滤波器性能仿真,在MATLAB平台下,给出一个由若干频率组成的信号并使之通过滤波器,通过观察滤波后信号的频谱来验证滤波器的性能。为了进一步阐述,在Simulink平台上也做了相关的验证,并对仿真结果进行了分析。

1

-

第一章 数字滤波器

第一节 数字滤波器的简介

当今,数字信号处理(DSP:Digital Signal Processing)技术正飞速发展,它不仅自成一门学科,更是以不同形式影响和渗透到其他学科:它与现代化通信紧密相关,与国家高科技紧密相连;它影响并且改变着我们的生产、生活方式,因此受到人们的广泛研究。

其中,数字滤波器又是数字信号处理中的一项很重要的内容。通常我们所说滤波器实际上是一种频率选择性的网络,对某些频率处于其通带内的信号,它能让其衰减很小地通过,而对于某些处于其阻带内的信号,它却让其衰减很大。广义上来说,滤波就是把一个信号通过处理变成另一个信号的过程。因此滤波器实际上就是一个系统,按照模拟系统与数字系统的概念,滤波器也可以分为模拟滤波器(AF)与数字滤波器(DF)。

实际生活中遇到的信号多种多样,例如广播信号、电视信号、雷达信号、通信信号、导航信号、射电天文信号、生物医学信号、控制信号、气象信号、地震勘探信号、机械振动信号、遥感遥测信号等大多都是模拟信号,是自变量连续的函数,需经过采样后变为数字信号。若滤波器的输入、输出都是数字信号,那么,该滤波器的单位脉冲响应也必须是数字序列,这样的滤波器即称为数字滤波器。实际上,数字滤波过程实质上是一个数字序列之间的运算过程,输入的数字信号通过与滤波器的单位脉冲序列相卷积转变为输出的数字序列,这种运算可以达到改变输入信号中所含频率成分的相对比例或者直接滤除某些成分。例如,对数字信号经过滤波后以限制它的某些频带或滤除噪音和干扰,或将某一特性的信号与其他信号进行分离;对信号进行频谱分析或功率谱分析以了解信号的频谱组成,进而对信号进行识别;对信号进行某种变换,使之更适合于传输,存储和应用;对信号进行编码以达到数据压缩等。因此,数字滤波器和模拟滤波器相同,只是信号的形式和实现滤波的方法不同。

在信号处理过程中,所处理的信号通常都混有噪音,从接收到的信号中消除或减弱噪音是信号传输和处理中十分重要的问题。根据有用信号和噪音分别占有不同的频率,使信号通过滤波器来提取有用信号的过程称为滤波,实现滤波功能的系统称为滤波器。在近代通信中,数字滤波器应用极为广泛,并扮演着越来越重要的角色【1】。

2

-

第二节 数字滤波器的应用

(1) 通信

在现代通信技术中,几乎每个方面都会应用数字滤波器,比如调制、解调、数据压缩、信源编码、信道编码以及自适应均衡技术等,特别在图像处理,网络通信等方面数字滤波器都扮演着举足轻重的作用。其中,新时代的通信例如3G、4G中的关键技术都无不应用到了数字滤波的技术。 (2)数字电视

当今时代,数字电视基本已经取代了过去的模拟电视,高清的数字电视基本已经进入每家每户,数字刻盘技术同时也得到了极大的发展,并且有了良好的市场前景。其中,使电视领域得以蓬勃发展的关键技术视频压缩和音频压缩都无疑是以数字滤波器为基础的。 (3)图像处理

各种图像的处理过程中比如静止图像的和运动图像的恢复、增强、去除噪声等都应用了数字滤波的技术,并且在雷达、超声波等领域的图像成像也有不少的应用。 (4) 语音处理

语音处理领域也广泛地应用了数字滤波。例如用计算机软件或者用硬件来识别人的讲话的语音识别,用软件或者硬件来模仿语音的语音合成,滤除语音中的噪声,或者从语音中提取有用频谱,还可用于语音的编码和语音信号的分析,并且大量用于现代通信中的音频处理等。今年来,各方面都取得了不少的研究成果,例如在目前的市场上,出现了很多相关的软硬件,例如盲人阅读机、哑人语音合成器、口授打印机、语音应答机,多种会说话的仪器和器具,以及通信和视听产品大量使用的音频压缩编码技术。 (5) 声纳

声纳信号处理分为两大类,即有源声纳信号处理和无源声纳信号处理,有源声纳系统涉及的许多理论和技术与雷达系统相同。例如,他们都要产生和发射脉冲式探测信号,他们的信号处理任务都主要是对微弱的目标回波进行检测和分析,从而达到对目标进行探测、定位、跟踪、导航、成像显示等目的,他们要应用到的主要信号处理技术包括滤波、门限比较、谱估计等【2】。 (6) 生物医学信号处理

数字滤波器在医学中的应用日益广泛,如对脑电图和心电图的分析、层析X射线摄影的计算机辅助分析、胎儿心音的自适应检测等。 (7) 音乐

3

-

音乐领域因为有了数字滤波器的出现也开辟了一个崭新的局面。例如,数字滤波在对音乐信号的合成、编辑、以及制造和声的特殊音乐效果等方面都显示了其的重要性,尤其随着数字时代的到来,数字滤波可以使音乐效果变得更好,还可用于谱曲录音等,大大满足了现代人们的需求。 (8) 其他领域

数字滤波器应用广泛,除了以上提到的以外,在其他领域也都扮演着极其重要的角色。例如,在环境保护中应用在对空气污染指数的监测,尤其在军事战争中应用于监测、导航等,电力系统中的监测也应用到了数字滤波,并且在经济领域也得到了应用,比如证券市场的预测、期货行情、经济效益的好坏等等【3】。

第三节 数字滤波器的实现方法分析及优点

模拟滤波器的实现只能借助硬件,其元件是R、L、C及运算放大器或者电容开关。而数字滤波器的实现,大体上有如下几种方法:

(1) 通过硬件实现

根据所描述的数字滤波器的数学模型或者信号流图,用数字硬件装配成一台专门的设备,构成专用的信号处理机。

(2)在计算机上直接用软件来实现

直接通过计算机,通过软件的编写与测试来让计算机执行信号处理的过程。这种实现方法速度较慢,多用于教学与科研。

(2) 用单片机来实现。

目前单片机的发展速度很快,依靠单片机的硬件环境和信号处理的软件可也实现滤波,并在某些领域成功应用,如数字控制、医疗仪器等【4】。

(3) 利用专门用于信号处理的DSP芯片来实现。

DSP芯片较之单片机有着更为突出的优点,如内部带有乘法器、累加器,并且配有并行指令处理结构,因此,DSP芯片的出现与发展,都为信号处理的实现提供了可能【3】。

同时,数字滤波器与模拟滤波器相比,还具有以下的优点: (1) 稳定性高,灵活性强。 (2) 无阻抗匹配的问题。

(3) 能处理低频信号并可实现严格的线性相位滤波和多维滤波。 (4) 可简单地获得自适应滤波。

(5) 控制数字字长可以精确地控制滤波器的精度等特点。

4

-

正是由于这些特点,很多模拟滤波器也常用数字滤波器来代替,但此时首先需要将模拟信号转换成数字信号,经过数字滤波器处理后再变成模拟信号【5】。

第四节 MATLAB和Simulink简介

一、MATLAB简介

MATLAB是美国MathWorks公司开发的一种功能极其强大新一代科学计算软件。内容极其丰富,它集数值计算、矩阵运算和信号处理与显示于一身。MATLAB是英文MATrix LABoratory的缩写,该软件最初是由美国教授Cleve Moler创立的。该软件利用了当时代表数值线性代数领域最高水平的EISPACK和LINPACK两大软件包,并且利用Fortran语言编写了最初的一套交互式软件系统,MATLAB的最初版本便由此产生了。

最初的MATLAB由于语言单一,只能进行矩阵的运算,绘图也只能用原始的描点法,内部函数只有几十个,因此功能十分简单。1984年该公司推出了第一个MATLAB的商业版,并用C语言作出了全部改写。现在的MATLAB程序是MathWorks公司用C语言开发的,第一版由steve Bangert主持开发编译解释程序,Steve Kleiman完成图形功能的设计,John Little和Cleve Moler主持开发了各类数学分分析的子模块,撰写用户指南和大部分的M文件。接着又添加了丰富的图形图像处理、多媒体功能、符号运算和与其它流行软件的接口功能,使MATLAB的功能越来越强大[5]。

与其他高级语言相比,MATLAB语言具有以下的显著特点。

(1) MATLAB的基本数据类型是双精度的、无需定义的、下标从1开始的复数矩阵。

(2)MATLAB有命令行操作和编程执行两种使用方法,分别适用于简单的草稿式计算和复杂的应用开发。

(3)绝大多数MATLAB函数的输入输出参数个数都是可变的,调用函数时输入输出参数的个数不同,函数完成的功能也会有一定的差异。

(4)MATLAB操作界面友好,编程语言简练,算法高效准确,图形显示和数据可视化功能强大。

(5)MATLAB帮助系统非常完善,内容包括各个组件的入门指南、完全用户手册和实例演示等,且有多种获取和使用帮助的简便方法。例如,即使是在 help和helpdesk帮助中显示的代码也可通过现场菜单执行或直接打开编辑。另外,MATLAB帮助内容有PDF格式和HTML格式两套,用户既可以通过阅读相关的PDF文档来系统地学

5

-

习MATLAB,也可以使用中随时查找需要的信息。

(6)MATLAB采用开放性结构设计。这具体体现在以下三方面的内容:一是除少数内部函数外,所有的MATLAB主包函数和各种工具箱函数都是可读可改的M文件,这使得新工具箱的开发和扩展非常方便。二是支持DDE、COM、ActiveX等技术,可以提供和接受Active组件服务;三是对外提供MATLAB的C/C++数学函数库、图形函数库以及相关的API函数,这就便于其他开发环境中使用MATLAB的强大功能,或在MATLAB中使用其他语言编写程序以提高性能【6】。

二、Simulink简介

FDATool(Filter Design & Analysis Tool)是MATLAB信号处理工具箱里专用的滤波器设计分析工具, FDATool可以设计几乎所有的基本的常规滤波器,包括FIR和FIR的各种设计方法。它操作简单,方便灵活。

FDATool界面总共分两大部分,一部分是Design Filter,在界面的下半部,用来设置滤波器的设计参数,另一部分则是特性区,在界面的上半部分,用来显示滤波器的各种特性。Design Filter部分主要分为:Filter Type(滤波器类型)选项,包括Lowpass(低通)、Highpass(高通)、Bandpass(带通)、Bandstop(带阻)和特殊的FIR滤波器。

Design Method(设计方法)选项,包括IIR滤波器的Butterworth(巴特沃思)法、Chebyshev Type I(切比雪夫I型)法、 Chebyshev Type II(切比雪夫II型) 法、Elliptic(椭圆滤波器)法和FIR滤波器的Equiripple法、Least-Squares(最小乘方)法、Window(窗函数)法。

Filter Order(滤波器阶数)选项,定义滤波器的阶数,包括Specify Order(指定阶数)和Minimum Order(最小阶数)。在Specify Order中填入所要设计的滤波器的阶数(N阶滤波器,Specify Order=N-1),如果选择Minimum Order则MATLAB根据所选择的滤波器类型自动使用最小阶数。

Frenquency Specifications选项,可以详细定义频带的各参数,包括采样频率Fs和频带的截止频率。它的具体选项由Filter Type选项和Design Method选项决定,例如Bandpass(带通)滤波器需要定义Fstop1(下阻带截止频率)、Fpass1(通带下限截止频率)、Fpass2(通带上限截止频率)、Fstop2(上阻带截止频率),而Lowpass(低通)滤波器只需要定义Fstop1、Fpass1。采用窗函数设计滤波器时,由于过渡带是由窗函数的类型和阶数所决定的,所以只需要定义通带截止频率,而不必定义阻带参数。

Magnitude Specifications选项,可以定义幅值衰减的情况。例如设计带通滤波器时,可以定义Wstop1(频率Fstop1处的幅值衰减)、Wpass(通带范围内的幅值衰减)、Wstop2(频率Fstop2处的幅值衰减)。当采用窗函数设计时,通带截止频率处的幅值

6

-

衰减固定为6dB,所以不必定义。

Window Specifications选项,当选取采用窗函数设计时,该选项可定义,它包含了各种窗函数[7]。

第五节 本章小结

在通信技术越来越发达的今天,数字低通滤波器扮演着越来越重要的角色,在各个领域,例如军事、医学、通信、音乐等领域都发挥着无可取代的作用。随着技术的方法,目前我们可以有多种方法来实现数字滤波,例如软件、硬件、DSP芯片等。本章介绍了MATLAB软件,具体的应用参照下文。

7

-

第二章 数字滤波器的结构和设计原理

第一节 数字滤波器的基本结构

作为线形时不变系统的数字滤波器可以用系统函数来表示,而实现一个系统函数表达式所表示的系统可以用两种方法:一种方法是采用计算机软件实现;另一种方法是用加法器、乘法器、和延迟器等元件设计出专用的数字硬件系统,即硬件实现。不论软件实现还是硬件实现,在滤波器设计过程中,由同一系统函数可以构成很多不同的运算结构。对于无限精度的系数和变量,不同结构可能是等效的,与其输入和输出特性无关;但是在系数和变量精度是有限的情况下,不同运算结构的性能就有很大的差异。因此,有必要对离散时间系统的结构有一基本认识。

一、IIR滤波器的基本结构

IIR数字滤波器可以用系统函数表示为:

bkzk0MkH(z)

1akzk1NkY(z) X(z)

由这样的系统函数可以得到表示系统输入与输出关系的常系数线形差分程为:

y(n)aky(nk0Nk)bkx(nk0Mk)

可见数字滤波器功能既是把输入序列x(n)通过与数字滤波器的单位脉冲响应相卷积输出序列

。不同的运算处理方法决定了滤波器实现结构的不同。无限

冲激响应滤波器(IIR)的单位抽样响应h(n)是无限长的,其差分方程如式所示

IIR滤波器的主要特点是: (1) 单位脉冲响应h(n)是无限长的。

(2) 系统函数H(z)在有限的z平面(0z)上有极点存在。 (3) 结构上存在着输出到输入的反馈,即结构式是递归的。

对于一个给定的线形时不变系统的系统函数,有着各种不同的等效差分方程或网络结构。由于乘法是一种耗时运算,而每个延迟单元都要有一个存储寄存器,因此采用最少乘法器和最少延迟支路的网络结构是通常的选择,以便提高运算速度和减少存储器。然而,当需要考虑有限寄存器长度的影响时,往往也采用并非最少乘法器和延

8

-

迟单元的结构【8】。

IIR滤波器实现的基本结构有: (1) IIR滤波器的直接型结构,如图所示

优点:直接型都可通过差分方程或者系统函数描述直接得出,因此变得十分方便,并且可以节省存储单元或者寄存器。

缺点:系数与系统函数的零极点关系部明显,零极点难以调整,因而它们对滤波器的性能控制作用不明显;此外,这种结构极点对系统的变化非常敏感,致使系统频率响应对系数变化的反应过于灵敏,也就是对有限精度运算过于灵敏,容易出现不稳定或者产生较大的误差。

x(n)Zx(n-1) Z-1Z-1-1b0b1b2-a1 -a2Z-1 y(n)y(n-1)Z-1Z-1Z-1y(n-M)Z-1x(n-M)bM-a3

图 直接型

(2)IIR滤波器的级联型结构,如图所示

优点:系统结构的每一个基本节只是关系到数字滤波器的某一对极点和一对零点,调整系数1k,2k,就能单独调整滤波器的第k对极点,而不影响其他零极点。因此,级联结构的优点是便于准确地实现数字滤波器的零极点,因而便于调整数字滤波器的频率特性。另外,这种结构受系数量化的影响也较小。因此,级联结构得到了广泛的应用。

缺点:当用二进制表示零极点时,只能采用有限位字长,对于各种实现方案,其带来的误差是不一样的,因此需要优化各二阶级联的次序和极点,并且,该模式不能直接调整零点。

b0Z-1Z-1a11b1b2 -b1LZ-1a1L -b11 -b21a21 Z-1a2L -b2L

图 级联结构

9

-

(3)IIR滤波器的并联型结构,如图所示

优点:二阶基本节的极点即为滤波器的极点,而其零点却与滤波器的零点不同,因此,并联型结构可以用调整系数1k,2k的办法来单独调整滤波器的一对极点的位置,另外,并联型结构中,各并联型基本节的误差相互没有影响,所以误差较小,在要求准确地传输零点的场合下,宜采用级联型结构【9】。

缺点:不能像级联型那样单独调整滤波器零点的位置。

A1A01b11Z-1Z-1A11b21A1LZ-1b1Lb2LZ-1A2L

图并联结构

二、FIR滤波器的基本结构

FIR滤波器的单位抽样响应为有限长,其长度为N,0nN1,并且一般采用非递归形式实现。通常的FIR数字滤波器有横截性和级联型两种。

FIR滤波器的系统函数为

N1n0 H(z)h(n)zn

这就是说,FIR滤波器有N-1阶极点在z0处,有N-1阶零点位于有限z平面的任何位置。

FIR滤波器的特点归纳如下:

(1) 系统单位脉冲响应h(n)在有限个n处不为零。

(2) 系统函数H(z)在处z0收敛,对因果系统而言,极点全部位于z=0处;而 在

0z的有限z平面只有零点。

(3)结构上主要是非递归结构,没有输出到输入的反馈。但在有些结构上,例如频率采样结构,也可以包含反馈的递归部分。

FIR滤波器实现的基本结构有【10】: (1)FIR滤波器的横截型结构

10

-

表示系统输入输出关系的差分方程可写作:

y(n)N10

直接由差分方程得出的实现结构如图2-1所示:

h(m)x(nmm)

x(n)Z-1h(0)Z-1h(1)Z-1Z-1h(N-2)h(N-1)y(n)

图 FIR滤波器的横截型结构

若h(n)呈现对称特性,即此FIR滤波器具有线性相位,则可以简化加横截型结构,下面分情况讨论:

x(n)Z-1Z-1Z-1Z-1Z-1h(0)Z-1h(1)h(2)Z-1 h[(N-3)/2] h[(N-1)/2]y(n)

图 N为奇数时FIR滤波器实现结构

Z-1Z-1Z-1Z-1

Z-1h(0)Z-1h(1)h(2)Z-1h(N/2-1)

图 N为偶数时FIR滤波器实现结构

(2)FIR滤波器的级联型结构

将H(z)分解成实系数二阶因子的乘积形式:

H(z)h(n)zn0N1nn/2k1

b0kb1kz1b2kz2

这时FIR滤波器可用二阶节的级联结构来实现,图给出了N为奇数时,FIR滤波器的级联结:

11

-

b01Z-1b11Z-1b21h(1)b02Z-1b12Z-1b22图 FIR滤波器的级联结构

b0(N-1)Z-1b1(N-1)Z-1b2(N-1)

这种结构的每一节控制一对零点,因而在需要控制传输零点时,可以采用这种结

N构它。但是这种结构所需要的系数bik,(i0,1,2,k1,2,...)比卷积型系数h(n)要多,

2因而所需的乘法次数也比卷积型的多。另外,当H(z)的阶次较高时,也不易分解。因此,普遍应用的是直接型结构【10】。

第二节 数字滤波器的设计原理

一、滤波器的设计步奏

数字滤波器根据其单位脉冲响应函数的时域特性可分为两种,即有限长冲激响应(FIR)滤波器和无限长冲激响应(IIR)滤波器。其中,FIR滤波器的脉冲响应函数是有限长的,且没有输出到输入的反馈,因此在工程上一般采用的是非递归方式实现,设计方法一般为窗函数法和频率采样法。而IIR滤波器的脉冲响应函数是无限时间的,并且需要递归来实现,因此有时也称之为递归滤波器。IIR滤波器的设计一般采用脉冲响应不变法和双线性变换法。随着MATLAB软件尤其是MATLAB的信号处理工作箱的不断完善,也可采用工具箱直接对滤波器进行设计。 数字滤波器设计的基本步骤如下【11】:

(1) 确定指标

按照实际的任务要求,确定滤波器的性能指标。一般给出了滤波器的幅度指标和相位指标,其中幅度指标有两种形式。第一种是绝对幅度指标,第二种是相对指标,它以分贝的形式给出,这种指标比较流行。除了幅度和相位以外,还需给出滤波器的通带频率、截止频率等。 (2)逼近

用一个因果稳定的离散线性时不变系统去逼近这个性能指标。 (3)实现系统函数

用一个有限精度的算法来实现这个系统函数,包括选择运算结构与选择合适的字长以及有效的数字的处理方法等。

12

-

(4)技术的实现与仿真

根据所设计的滤波器的系统函数,在计算机软件上或者专用的数字滤波器硬件上引用多个信号通过该滤波器,通过分析滤波以后的结构来判断滤波器的性能。

二、滤波器的性能指标

我们在进行滤波器设计时,需要确定其性能指标。一般来说,滤波器的性能要求往往以频率响应的幅度特性的允许误差来表征。以低通滤波器特性为例,频率响应有通带、过渡带及阻带三个范围。

在通带内 :1ApHej1 c 在阻带中: H(ej)As s 其中c为通带截止频率, s为阻带截止频率,Ap为通带误差, As为阻带误差。

与模拟滤波器类似,数字滤波器按频率特性划分为低通、高通、带通、带阻、全通等类型,由于数字滤波器的频率响应是周期性的,周期为2。各种理想数字滤波器的幅度频率响应如图2-8所示:

图 各种理想数字滤波器的幅度频率响应

第三节 IIR滤波器与FIR滤波器的分析比较

选择哪一种滤波器取决于每种类型滤波器的优点在设计中的重要性。为了能在实际工作中恰当地选用合适的滤波器,现将两种滤波器特点比较分析如下:

(1)选择数字滤波器是必须考虑经济问题,通常将硬件的复杂性、芯片的面积或计

13

-

算速度等作为衡量经济问题的因素。在相同的技术指标要求下,由于IIR数字滤波器存在输出对输入的反馈,因此可以用较少的阶数来满足要求,所用的存储单元少,运算次数少,较为经济。通常说FIR滤波器的阶数要高5~10倍左右。

(2)在很多情况下,虽然FIR数字滤波器的成本较高,但是其能获得线性相位的高这一点是非常值得的。而对于IIR滤波器,选择性越好,其相位的非线性越严重。如果要使IIR滤波器既满足幅度特性的要求,又能够获得线性相位,那么就必须在其后面加全通网络进行相位校正,这无疑会大大加大滤波器设计的复杂性。从这一点来看,FIR滤波器显然要优于IIR滤波器。

(3) FIR滤波器主要采用非递归结构,所以不存稳定性的问题,并且在进行有限精度运算中误差也较小。而IIR滤波器必须采用递归结构,极点必须在z平面单位圆内才能稳定。有时运算会进行四舍五入,因此有可能产生寄生激荡。

(4)对于FIR滤波器,由于冲激响应是有限长的,其差分方程的运算是一种卷积和运算,因此可以通过快速傅里叶变换算法和其他快速算法来讲计算,运算速度快得多。但是IIR滤波器不能进行这样的运算。

(5)设计方法上,IIR滤波器可以利用模拟滤波器设计的现成公式、数据和表格,因而计算量较小,对计算工具要求不高。可以用完整的设计公式来设计各种选频滤波器。一旦选定了已知的一种逼近方法(如巴特沃斯,切比雪夫等),就可以直接把技术指标带入一组设计方程计算出滤波器的阶次和系统函数的系数(或极点和零点)。FIR滤波器则几乎没有现成的设计公式。仅仅只有窗函数的计算公式,但如果要计算阻带和通带的衰减时就无公式可用。所以FIR滤波器设需要借助于计算机程序,因而计算复杂,工作量大。

(6)IIR滤波器设计规格化、按频率仅可分为低通、高通、带通和带阻滤波器。而FIR滤波器则灵活很多,。因此FIR滤波器可设计出理想正交变换器、理想微分器、线性调频器等各种网络,适应性很广。而且,目前已经有很多FIR滤波器的程序软件可供使用【12】。

表2-1 两种滤波器特点比较分析

设计方法 FIR滤波器 一般无解析的设计公式,要借助计算机程序来完成 IIR滤波器 利用AF的成果,可简单、有效地完成设计 只能得到幅频特性,相位特性失真,如需 设计结果 可得到幅频特性和线性相位 要线性相位,须用全通网络校准,但因此会增加滤波器复杂性和阶次 稳定性 极点全部在原点(永远稳定)无稳定性问题 有稳定性问题 14

-

阶数 结构 运算误差 高 非递归系统 一般无反馈,运算误差小 低 递归系统 有反馈,由于运算中的四舍五入会产生极循环

第四节 本章小结

本章重点讨论了FIR和IIR数字滤波器的结构特点,同时,为了能更好地设计滤波器,介绍了设计滤波器的具体步奏和设计原理。因为FIR滤波器是线性相位的,所以对各类FIR滤波器的频谱图进行了分析。在本章的最后,比较了FIR滤波器和IIR滤波器优缺点,以便在技术指标明确的同时能最大的节约成本。

15

-

第三章IIR滤波器的设计

利用模拟滤波器成熟的理论和设计方法来设计IIR数字滤波器,首先是按任务要求确定数字滤波器的技术指标,然后将这个技术指标变换成相应的模拟滤波器的技术指标,再根据该技术指标设计一个模拟原型滤波器,得到其系统函数H(s),最后按一定标准将模拟原型滤波器的系统函数H(s)变换成数字滤波器的系统函数好H(z),实际上 变换是把s平面映射到z平面。

第一节 脉冲响应不变法的基本原理

一、变化原理

脉冲响应不变法是从滤波器的时间特性上模仿,用脉冲响应不变法设计IIR数字滤波器,就是使数字滤波器的单位脉冲响应序列h(n)模仿模拟滤波器的冲击响应h(t). 将模拟滤波器的冲击响应h(t)进行等间隔采样,使数字滤波器的单位脉冲响应序列h(n)正好等于h(t) 的采样值,即满足

h(n)ha(t)tnTha(nT)

式中,T是采样周期,因此,脉冲响应不变法是一种时域上的转换方法【13】。 利用脉冲响应不变法将模拟滤波器变换成数字滤波器,实际上是先将模拟滤波器

sT的系统函数H(s)作周期延拓,再经过z=e的影射变化,从而得到数字滤波器的系统函数H(z).

二、混叠失真

假设s平面上,s在j轴上取值;z平面上,z在单位圆周e上取值。数字滤波器的频率响应特性H(ej)与模拟滤波器的频率响应特性Ha(j)的关系如式:

12k) H(e)Ha(jjTkTTjjw这就是说,数字滤波器的频率响应是模拟滤波器的频率响应的周期延拓。因此,

只有当模拟滤波器的频率响应是受限于某一频带范围内,且带限于折叠频率以内

T时,即满足:

16

Ha(j)0,||T

-

才能使数字滤波器的频率响应在折叠频率以内重现模拟滤波器的频率响应而不产生混叠失真,既有

H(ej)1Ha(j), TT但是,任何一个实际的模拟滤波器的频率响应都不可能是严格带限的,变换后不可避免的产生周期延拓分量的频谱交叠,即产生频率响应的混叠失真,这种频谱混叠现象,使得设计出的数字滤波器的频率响应不能很好地重现模拟滤波器的频率响应,在附近会程度不同的偏离模拟滤波在/T附近的频率特性,而且严重时会使数字滤波器不满足给定的技术指标。只有当模拟滤波器的频率响应在超过折叠频谱后衰减很大、很快时,频谱混叠失真才会小,在这种情况下,采用脉冲相应不变法设计数字滤波器才能得到良好效果【13】。

将用脉冲响应不变法设计IIR数字滤波器的步骤如下:

(1)确定数字滤波器的一组通、阻带截止频率k,通带内容许的最大衰减p,组袋内容许的最小衰减s。

k把数字滤波器的这组频率指标k变换成相应的模T拟滤波器的一组频率指标k,而通带最大容许衰减p与阻带最小容许衰减s不变。

(2)采用变换公式k(3)根据模拟滤波器的技术要求,设计其系统函数Ha(s)。 (4)由Ha(s)求数字滤波器的系统函数H(z)。

(5)利用H(ej)H(z)|zej校核所设计的数字滤波器是否满足技术指标要求。

三、主要特点

(1)脉冲响应不变法使得数字滤波器的脉冲响应完全模仿模拟滤波器的冲击响应,也就是说时域逼近良好,数字滤波器保持了模拟滤波器的时域瞬态特性。

(2)数字频率和模拟频率坐标是线性变换,即T,这样,当模拟滤波器的频率响应是充分带限的,即其最高频率hT时,用脉冲响应不变法设计的数字滤波器

将不失真地重现模拟滤波器的频率响应,既有

H(ej)1Ha(j), TT如果模拟滤波器是线性相位的低通滤波器,通过变换后,得到的数字滤波器仍然是线性相位的。

(3)脉冲响应不变法最主要的缺点是由于频率响应的周期延拓而造成的混叠效应,因此这种方法只适合于用来设计带限的滤波器,如衰减特性很好的低通和带通滤波器,高于折叠频率的部分衰减越大,混叠效应越小,即失真越小。而高通和带阻滤波器则不宜采用脉冲响应不变法来设计,否则要在其前面加保护滤波器,滤掉高于折叠

17

-

频率

【】

以上的频率,但这会增加系统的成本和复杂性14。 T四、 MATLAB(脉冲响应不变法)设计滤波器

(1)将数字滤波器的技术指标转换为模拟滤波器的技术指标。 (2)设计模拟滤波器的H(s)。

(3)将H(s)转换成数字滤波器的H(z)。

设计要设计的数字低通滤波器的H(z)的技术指标为p,s,P,S,,再根据zesT得到模拟低通滤波器的H(s)的技术指标为ppTs,ssTs,。

比如用脉冲响应不变法设计一个200Hz的数字低通滤波器,采样频率为1000Hz,原程序代码如下

[z,p,k]=buttap(3);

[b,a]=zp2tf(z,p,k); [bt,at]=lp2lp(b,a,200*2*pi); [bz,az]=impinvar(bt,at,1000); freqz(bz,az,512,1000) 结果如图所示:

图 脉冲响应不变法设计低通滤波器

18

-

第二节 双线性不变法的基本原理

脉冲响应不变法是使数字滤波器在时域上较好的模仿模拟滤波器,但是由与S平面到z平面的映射zesT具有多值性,若模拟滤波器的频率响应不是严格带限与折

叠频率之内,就会使得设计出的数字滤波器不可避免地出现频谱的混叠现象。采用

T双线性变换法能够很好的克服这一缺点。

一、变换原理

双线性变换法是使数字滤波器的频率响应模拟模拟滤波器的频率响应的一种变换方法。这种方法的基本原理是:首先把整个s平面(sj)压缩变换到某一中介平面S1(S11j1)的一条从2到,宽度为的横宽里,且使是s1平面TTT中的这条横带与s平面有单值对应关系,然后在通过标准变换关系zes1T将此横带变换到整个z平面上去,这样就使s平面与z平面成为一一对应的单值映射关系。消除了多值变换性,也就消除了频谱混叠现象,从而克服了脉冲响应不变法带来的缺点。这同时也是双线性变换法的最大优点【15】。

二、主要优缺点

由于s平面和z平面之间的单值映射关系,双线性变换法除能满足对变换关系的两点要求之外,还克服了脉冲响应不变法存在的频率响应的混叠现象,这时双线性变换法的最大优点。可知模拟角频率与数字频率之间变换关系为:

2tan() T2它表明s平面和z平面是单值的一一对应关系,s平面的整个j轴单值对应与z平面

圆的一周,也就是说频率轴是单值变换关系.

三、MATLAB(双线性变化法)设计数字低通滤波器

(1)确定数字滤波器的一组通、阻带截止频率{k},通带内容许的最大衰减p及阻

带内容许的最小衰减p。

(2)采用频率预畸变的方法把数字滤波器的这组通、阻带截止频率变换成相应的模拟

滤波器的一组通、阻带截止频率k,变换公式为:

19

-

2tankT2

而通带最大容许衰减p及阻带最小容许衰减s不变。

k(3)根据以上模拟滤波器的技术指标,设计其系统函数Ha(s)。 (4)由Ha(s)求数字滤波器的系统函数,其公式为

H(z)Ha(s)|jws21z1T1z1

(5)利用H(ejw)H(z)|ze校核所设计的数字滤波器是否满足技术指标要求【16】。

比如双线性变换法设计一个200Hz的数字低通滤波器,采样频率为1000Hz,原程序代码如下

[z,p,k]=buttap(3); [b,a]=zp2tf(z,p,k); [bt,at]=lp2lp(b,a,200*2*pi); [bz,az]=bilinear(bt,at,1000); freqz(bz,az,512,1000)

图 双线性变换法设计低通滤波器

20

-

第三节 本章小结

本章针对IIR滤波器的设计,重点介绍了脉冲响应不变法和双线性变换法,其中脉冲响应不变法是从时域来设计IIR滤波器,双线性变化法则是从频域出发。其中,脉冲响应不变法可能造成混叠现象,而采用双线性变换法,s平面和z平面是一一对应的关系,克服了这一现象,这同时也是这种方法最大的优点。

21

-

第四章 FIR滤波器的设计

上一章介绍了IIR滤波器的设计,IIR滤波器保留了一些典型模拟滤波器优良的幅度特性,但是其相位特性却是非线性的。若需要线性相位,就要采用全通网络进行相位校正,因而使得系统结果复杂,成本增加。而有限长单位脉冲响应(FIR)数字滤波器可以做到严格的相位特性,同时又可以具有任意的幅度特性,并且,同样的幅度特性,IIR滤波器所需阶次比FIR滤波器的低得多。

第一节 线性相位FIR滤波器的特点

IIR滤波器的优点是可利用模拟滤波器设计的结果,缺点是相位是非线性的,若需要线性相位,则要用全通网络进行校正。FIR滤波器的优点是可方便地实现线性相位。

FIR滤波器的频率响应为

jN1n0 H(e)h(n)ejn

当h(n)为时序列,可将H(ej)表示为:

H(ej)H(ej)ej()H()ej()

其中H(ej)是幅度响应,()是相位函数。

如果FIR滤波器的单位脉冲响应h(n)为时序列,而且满足下面条件

偶对称 h(n)h(N1n) 奇对称 h(n)h(N1n)

N1其对称中心在n处,则该滤波器就具有准确的线性相位;又因为N可为奇

2也可为偶数,所以把以上四种线性相位FIR滤波器归纳在表中

22

-

表 FIR滤波器特点

23

-

第二节 利用窗函数设计FIR低通滤波器

一、窗函数的基本思想

窗函数设计的基本思想是要选取某一种合适的理想频率选择性滤波器,然后将它的脉冲响应截断以得到一个线性相位和因果的FIR滤波器。使其频率响应

H(e)h(n)ejwn逼近理想低通滤波器的频率响应Hd(ejw)。通常是在时域上进行

jwn0N1的。其系统响应h(n)必然是有限长的,所以要用有限长的h(n)来逼近无限长的hd(n),即

h(n)hd(n)(n)

其中(n)是有限长序列,当

由于理想滤波器的频响Hd(ejw)是序列hd(n)的傅立叶变换,即

Hd(e)jwnh(n)edjwn

这是一个以2为周期的函数。用窗函数设计FIR滤波器就是根据要求,找到有限个傅立叶级数,去近似的代替无限项傅立叶级数系数【17】。

因此这种方法的重点在于选择某种合适的窗函数和一种理想滤波器。对于给定的滤波器技术指标,选择滤波器长度和具有最窄主瓣宽度和尽可能小的旁瓣衰减的某个窗函数。

二、几种常用的窗函数

一般对所选取的窗函数希望满足两项要求:一是窗谱的主瓣要尽可能的窄,以获得较窄的过度带;二是尽量减少窗谱的最大旁瓣的相对幅度,也就是说能量尽量集中于主瓣,这样使得肩峰和波纹减小,就可增大阻带的衰减。但是这两项一般不可同时满足,因而所选取的窗函数,其频谱旁瓣电平要较小,而主瓣宽度就会增宽。工程中比较常用的窗函数有:矩形窗函数、三角形((Bartlett)窗函数、汉宁(Harming)窗函数、海明(Hamming)窗函数、布莱克曼(Blackman)窗函数和凯塞(Kaiser)窗函[14]

(1)矩形窗(Rectangle Window)

其频率响应为【18】:

24

-

sin(N2) WR(e)jsin()2ejN12

sin(幅度函数 WR()用MATLAB产生n的矩形窗函数如下 假设n=40; n=40;

window=boxcar(n); [h,w]=freqz(window,1); subplot(1,2,1),stem(window)

subplot(1,2,2),plot(w,20*log(abs(h)/abs(h(1))))

N)2

sin()2

图 矩形窗脉冲响应和频率响应

(2)三角形窗(Bartlett Window)

Nsin()jN1【18】2j4其频率响应为: W(e)e2 Nsin225

-

用MATLAB生成长度为51的矩形窗如下 n=51;

window=triang(n); [h,w]=freqz(window,1); subplot(1,2,1),stem(window)

subplot(1,2,2),plot(w,20*log(abs(h)/abs(h(1))

图 三角形窗脉冲响应和频率响应

(3)汉宁窗(升余弦窗)

2n w(n)0.51cosRN(n)

N1频率响应

【18】

WejW()ejN12,当N>>1时其幅度特为:

2 W()0.5WR()0.25WR2NWR

N这三部分之和,使旁瓣相互抵消,能量更集中在主瓣,但是代价是主瓣宽度比矩形窗

8的主瓣宽度增加一倍,即为.

N用MATLAB生成长度为51的汉宁窗程序如下: n=51;

window=hanning(n); [h,w]=freqz(window,1); subplot(1,2,1),stem(window)

26

-

subplot(1,2,2),plot(w/pi,20*log(abs(h)/abs(h(1))))

图汉宁窗脉冲响应和频率响应

(4)汉明窗,又称改进的升余弦窗

2n w(n)0.540.46cosRN(n) N1其频率响应【18】为:

22W(n)0.54WR()0.23WR()WR() NN 8结果可将%的能量集中在窗谱的主瓣内,与汉宁窗相比,主瓣宽度相同为,但旁瓣

N幅度更小,旁瓣峰值小于主瓣峰值的1%。 用matlab生成50的汉明窗程序如下: n=50;

window=hamming(n); [h,w]=freqz(window,1); subplot(1,2,1),stem(window)

subplot(1,2,2),plot(w/pi,20*log(abs(h)/abs(h(1))))

27

-

图 汉明窗脉冲响应和频率响应

(5)布拉克曼窗,又称二阶升余弦窗

为了更进一步抑制旁瓣,可对升余弦窗函数加上余弦的二次谐波分量,得到布拉克曼窗

2n4n w(n)0.420.5cos0.08cosRN(n)

N1N1其频率响应为【18】:

2244W0.42WR()0.25WRWR0.04WRWRN1N1N1N1这时主瓣宽度为矩形窗主瓣宽度的三倍,为12/N. 例如用matlab生成长度为50的布莱克曼窗函数程序如下: n=50;

window=blackman(50); [h,w]=freqz(window,1); subplot(1,2,1),stem(window)

subplot(1,2,2),plot(w/pi,20*log(abs(h)/abs(h(1))))

28

-

图 布拉克曼窗脉冲响应和频率响应

下表给出了几种窗函数的性能对比:

表几种窗函数的基本参数 窗函数 矩形窗 三角形窗 汉宁窗 哈明窗 布莱克曼窗 凯塞窗

用窗函数设计滤波器的原则有:

① 主瓣宽度要尽可能的窄,以获得较窄的过度带。

② 具有较低的旁瓣幅度,即能量尽量集中与主瓣,可增大阻带的衰减。 通常上述两点很难同时满足,要么增加主瓣宽度抑制旁瓣的幅度,要么减少主瓣宽度,但同时旁瓣的幅度会增大,因此选用的窗函数往往是他们的折中,在保证主瓣宽度达到一定要求的条件下,适当牺牲主瓣宽度来换取旁瓣波动的减少。 理想滤波器的频响Hd(ej)是序列hd(n)的傅立叶变换,就是寻找一个函数

旁瓣峰值幅度/dB -13 -25 -31 -41 -57 -57 主瓣宽度 4/N 8/N 8/N 8/N 12/N 10/N 过渡带宽 阻带最小衰减/dB -12 -25 -44 -53 -74 -80 N N N N 11/N 10/N 29

-

H(e)h(n)ejn去逼近理想滤波器的频响特性。窗函数法是从时域出发,使h(n)jn0N1逼近理想的单位脉冲响应序列hd(n)。我们知道hd(n)可以从理想频响Hd(ejw)通过傅氏反变换获得

12 hd(n)Hd(ej)ejnd 20但一般来说,这样得到的理想单位脉冲响应hd(n)一般都是无限长序列,而且是

非因果的。但是FIR的h(n)是有限长的,用一个有限长的序列去近似逼近无限长的

hd(n),则只需加一段窗口直接截取其一段以形象地代替h(n),因此h(n)也可表达为理想脉冲响应hd(n)和一个“窗函数”的乘积,即

例如一个截止频率为c的理想低通滤波器,设它的时延为,即它的

sin[c(n)]1cjjn hd(n)eed 2c(n)

h(n)w(n)*hd(n)

图 理想滤波器的脉冲响应和频率响应

这是一个以为中心的偶对称的无限长非因果序列,如果截取一段n=0~N-1,作为窗函数,延时α应为h(n)长度N的一半,N1/2 设WR()为窗函数的频谱,其中 WR(e)RN(e)RN(n)ejjn0N1jn=en0N1jn1eej1ejNN1j2sin(N2)sin2

可以表示成幅度函数和相位函数

Nsin2 其中幅度函数 WR()sin()230

-

相位函数()N12,其幅度函数WR()在之内为一个主瓣,两侧形成

N2许多衰减震荡的旁瓣,如下图所示

图 矩形窗函数的时域函数和频域函数

在时域上为窗函数和理想滤波器相乘,而时域的相乘对应与频域的卷积,所以可得FIR数字滤波器的幅度函数H为

H()12Hd()WR()d,

正好是理想滤波器幅度函数和窗函数幅度函数的卷积,[16]其相位函数为:

N1 ,仍然为线性相位。

22(1)=0,H(0)实际上为两个函数乘积的积分,由于c,所以H(0)可以近似的

N看作是从-到的WR() 的全部积分面积

(2)c时,Hd()正好与WR()的一半重叠,因此此时卷积值正好为H(0)的一

H(c)半,即0.5

H(0)22(3)c时,卷积出现最大值,即Hc为最大值,频响出现正肩峰

NN22(4)c时,卷积结果Hc达到最小值,出现负的肩峰 NN加窗处理后,会产生几点影响:

(1)在频率响应WR(ej)会形成一个过渡带,过渡带宽4,过渡带宽与所选窗函数N有关,窗函数的主瓣越宽,则滤波器的过渡带宽就越宽,反之则越窄,增大N可使过渡带变窄。

2的地方,H()出现肩峰值,其中xN/2,所Nsinx以N的改变不能改变主瓣与旁瓣的比例关系,这个比例是由所确定的,当截取

x(2)在截止频率c的两边c长度N增加时,只会减少滤波器过渡带宽,而不会影响肩峰值,通过计算,肩峰值可知总是为%,这种现象称为吉布斯(Gibbs)效应【19】。

31

-

第二节 频率采样法设计FIR低通滤波器

一、频率采样设计法的基本原理

窗函数法是从时域出发,把理想滤波器的无限长序列hd(n)用一定形状的窗函数截取成有限长的h(n),以此h(n)来近似理想的hd(n),使所设计的FIR滤波器的频率响应H(ej)逼近所希望的理想频率响应Hd(ej)。而频率采样法则是从频域出发,在

=0到2之间对希望逼近的理想滤波器频率响应Hd(ej)进行N点等间隔样,k2k/N,k0,1,2...N1,即得到Hd(ej)|2k/N,再由这N个采样值得到h(n),

利用IDFT得到的h(n)应是hd(n)以N为周期,周期性延拓乘以RN(N),即

 h(n)=Hd(nN)RN(n)



由于时域混叠,会和理想滤波器产生一定误差,N愈大,所设计的滤波器愈逼近待设计的滤波器Hd(ej)。FIR数字滤波器的频率特性采样值H(k),则系统函数H(z)和H(k)的

1zN关系为H(Z)NH(K),这即是频率采样法的基本原理【19】 k1k01WNzN1

二、线性相位的约束

IIR滤波器具有线性相位的条件是h(n)是时序列,且满足h(n)h(N1n),从而可以推出频率响应H(j)需要满足的条件,即:

H(ej)H()ej()H()e其中幅度函数H()是关于0,,2对称的

H()H(2) N为奇数 H()H(2) N为偶数 在为0~2之间等间隔采样N点

k2k/N,k0,1,2....N1

1jN2

三、逼近误差及其改进措施

如果希望逼近的数字滤波器的频率响应为Hd(ej),对其进行傅里叶逆变换,可得滤波器的单位脉冲响应序列为

1jjnH(e)ed d2在用频率采样法设计FIR滤波器时,是用Hd(ej)在0到2之间的N个采样值来恢复出滤波器的单位脉冲响应h(n)的。

hd(n)32

-

由频率采样定理可知,h(n)是hd(n)以N为周期的周期严拓序列的主值序列,即: h(n) 在满足频率采样定理的条件下得到的h(n)可以较准确地逼近hd(n),但是我们通常都是用理想滤波器作为逼近的滤波器。理想滤波器的幅频特性呈矩形,在通 阻带间有间断点,响应的单位脉冲响应hd(n)是无限长的。而对Hd(ej)的采样却只有N个点,显然不满足频域采样定理,因此以N为周期对hd(n)进行周期延拓,就必定会产生时域混叠现象,从而引起所设计的滤波器h(n)与希望逼近的滤波器hd(n)有误差,为此,只有加大频率采样点数N以减少逼近误差,N越大,设计出的滤波器的频率响应H(ej)越逼近希望逼近的滤波器Hd(ej)。

上面从时域方面分析了频率采样法的误差,现在从频域方面来分析。

从以上我们可以得知,又N个频域采样值H(k)可求的FIR滤波器的频率响应H(ej),即

H(e)H(k)()

jk0N1rh(nrN)RdN(n),r为任意整数

其中()1sin(N/2)j(N1)/2e为内插函数。

Nsin(/2)2k(k0,1,...,N1)上,N从上述公式可以看出在各频率采样点k(H(ej2k)1,滤波器的实际频率响应严格地和理想频率响应数值相等,即N2kN)H(k)Hd(k)Hd(ej2kN)。但由于各个采样点之间频率响应则是由采样点

生成的内插函数加权叠加而形成的,所以必然会有一定的误差,误差大小则取决于原滤波器的频响特性曲线,如果原频响特性曲线越缓慢,则其越接近理想值,误差就越小,反之,如果原频响特性曲线变化地越陡峭,则波动越大,因而在其不连续的点附近,就会产生肩峰和起伏波动,如图所示,用其采样值来设计FIR滤波器的效果就会比用图的采样值来设计FIR滤波器的效果差【20】。

图 理想梯形频率采样

33

-

图 平缓梯形频率采样法

增大N可以减小逼近误差,但在频率特性的间断点附近误差仍然最大,阻带衰

减仍有可能达不到指标的要求,且N太大,会增加滤波器的体积和成本,为了逼近质量,减小逼近误差,提高阻带衰减,可采取在理想频率特性的不连续点的边缘加上一个或几个过渡的采样点的方法,即进行过渡带采样的优化设计。加过渡采样点的情况如图所示,这样做的结果,增加了滤波器的过渡带,减小了通带边缘频率特性的突变,从而减小了逼近误差,即减小了频响特性的起伏大小,增大了阻带最小衰减。 在这些点上采样取值不同,效果也不同。每一个频率采样值,都要产生一个与常Nww2k)sin()成正比且在频率上位移数sin(的频率响应,而FIR滤波器的频率响22N2应就是各H(k)与相应的内插函数(wk)相乘后的组合。如果较好地取得过渡带

N上的抽样值,就有可能使得波纹较小,误差较小,从而设计出较好的滤波器。一般过渡带抽样点可以取一、二、三。在低通设计中,当不加过渡抽样点时,误差较大,可导致阻带最小衰减为-20dB,当采用一点过渡抽样时,阻带最小衰减可提高到-40dB到-54dB左右,当采用二点过渡抽样时可达-60dB到-75dB左右,而加三点过渡抽样时则可达-80dB到-95dB左右。在一定范围内,过渡带采样点越多,则滤波器的性能越好【15】。过渡抽样点的示意图如图所示:

34

-

图 频率采样法

图 过渡带采样

第三节 FIR数字滤波器的优化设计

采用窗函数法设计FIR滤波器方法简单,通常会得到一个性能相对很好的滤波器,但是在以下两个方面的问题,这些滤波器的设计还不是最优的:

(1)在阻带和通带内,滤波器的衰减波动基本上是相等的,而且阻带的最小衰减幅度要大于通带的最小衰减幅度,但是由于窗函数不能控制衰减幅度的大小,所以在滤波器的设计中,一般需要在满足滤波器指标要求的同时,适当的增加指标的富裕度,这样才能使所设计的滤波器性能更完善。

(2)对于绝大部分的窗函数来说,由于在通带内和阻带内的波动一般是不均匀的,而且在进入阻带时衰减一般会增大,如果允许在整个通带内都均匀分布,那么必然会产生较小的峰值波动。如果要求一个滤波器在其频带内的波动幅度最小,那么等波纹线性相位滤波器无疑是最优的,在此基础上,等波纹线性相位滤波器设计法又称为等波纹最佳一致逼近设计法【21】。

35

-

第四节 本章小结

本章主要介绍了FIR滤波器的设计,包括窗函数设计法和频率采样法,针对窗函数设计法,本章介绍了五种窗函数,包括矩形窗、三角形窗、汉宁窗、汉明窗和布莱克曼窗,画出了各个窗函数的频响特性曲线和相位特性曲线。并且分析了各个窗的特点,比如过渡带宽和最小幅度衰减。同时还介绍了FIR滤波器设计的另一种方面即频率采样法,从频域方向完成了对FIR滤波器的设计,最后一节给出了滤波器优化设计。

36

-

第五章 仿真结果及分析

下面用MATLAB对窗函数法设计FIR低通滤波器和频率采样法设计FIR低通滤波器进行了仿真。

第一节 MATLAB(窗函数法)设计FIR数字低通滤波器

给定一个数字滤波器的指标,例如通带p0.2,阻带s0.3,采用窗函数设计,首先设计了一个理想低通滤波器hd(n),再生成一个长度为66的汉明窗与原理想低通滤波器相乘,即可得到所需的滤波器;图分别给出了理想低通滤波器是时域波形图、汉明窗的时域波形,通过与窗函数相乘后的实际滤波器的波形以及所生成滤波器的幅度特性。

图 窗函数法设计FIR滤波器

从图中可以看出滤波器在0.3以后的地方衰减很大,符合给定的指标。 为了进一步检测滤波器的性能,现假设一个函数

ssin(2*100*pi*t/fs)sin(2*pi*1000*t/fs)2*sin(2*pi*2000*t/fs)rand(1,length(t/fs))37

-

三个正弦信号的频率分别为100Hz,1000Hz和2000Hz,采样频率fs为5000Hz,通过matlab可以画出原信号的时域图,如图所示,可以看出,原信号波动较大,而经过滤波后的信号变的平缓,这说明高频分量已经得到滤除。

图 原波形的时域图和滤波后的时域图

38

-

图 原信号的频谱图和滤波后信号的频谱图

从图中可以看出原信号的频率主要集中在100Hz,1000Hz与2000Hz附近,还附带随机噪声,把信号与低通滤波器相卷积后得到右图所示的频谱,从图中可以看出高频分量被抑制,只剩下低频分量。

第二节 MATLAB(频率采样法)设计FIR数字低通滤波

下面采用频率采样法设计一个数字低通滤波器。给定滤波器的性能指标如下所示

p0.2,Rp0.25db,s0.3,As50db,采样频率为5000Hz,过渡带采样两个样本,采样点数为60,可得到滤波器的幅度的频率响应特性如图所示,滤波器的实际脉冲响应如图所示:

图 频率采样法设计FIR滤波器

39

-

图 滤波器的时域图

进一步验证滤波器的性能将信号通过所设计的滤波器,通过对图与图的分析比较中可以看出原信号的高频分量已被滤除。

图 原信号的频谱

40

-

图 经滤波后信号的频谱

第三节 Simulink仿真FIR滤波器

在MATLAB中直接输入fdatool即可调出滤波器设计的界面,然后根据滤波器的要求和设计参数可以进行滤波器的设计。例如设计一个通带截止频率为2000Hz,阻带起始频率为3000Hz,采用等值波纹设计,则该滤波器的截止频率为2500Hz.如下图所示,然后保存文件。文件格式为.fda.

41

-

图 低通滤波器参数设计

调用Simulink中的功能模块构成数字滤波器的仿真框图,在仿真过程中,可以双击各功能模块,随时改变参数,获得不同状态下的仿真结果。通过Simulink环境下的Digital Filter Design模块导入先前使用FDATool所设计的滤波器文件.fda。仿真图

图 系统仿真图

对于上述电路,输入信号源的输入频率可变,根据设计的要求,在信号源中改变输入离散信号的频率,输出的是波形也会有所不同,因为该低通滤波器通带截止频率为2000Hz,阻带起始频率为3000Hz,该低通滤波器的截止频率为2500Hz,由仿真结果可知,当输入频率在2000Hz以下时可正常通过,当输入频率在2000Hz和3000Hz之间,输出会有衰减,当输入波形在3000Hz以上时会被滤波器滤除,输出几乎没有波形,结果如下图所示。

42

-

图 f=500Hz时输入和输出波形

图 f=2500Hz时输入和输出波形

图 f=3100HZ时输入和输出波形

第四节 本章小结

本章分别在MATLAB工具分别用窗函数设计法、频率采样法以及MATLAB工具箱simulink对FIR数字低通滤波器进行了仿真,为了验证滤波效果,给出一信号频

43

-

率分别为500Hz,2500Hz和3000Hz可以从图中看出,如500HZ处于通带内,经过滤波器后没有衰减,2500HZ处于过度带内,经过滤波器后幅度有一定的衰减,而3000HZ完全处于阻带内,则完全被滤除,所以在示波器上显示的是一条直线。

44

-

结 论

随着通信技术的不断发展,数字信号处理在各个领域比如军事、医学等方面都发挥着无可取代的作用。其中,数字滤波器在语音处理、图像处理、音乐、视频等方面都扮演着重要的角色。

数字滤波器按单位脉冲响应h(n)的长度是否有限可分有限长脉冲响应(FIR)滤波器和无限长脉冲响应(IIR)滤波器。其中IIR滤波器的阶次较低,但是一般为非线性相位;若需线性相位,就要采用全通网络进行相位校正,因而会使得系统结构复杂,成本增加。而FIR滤波器的阶次虽然较高,但无需反馈,且可以做成严格的线性相位,因此可以通过快速傅里叶变换来计算,故在图像传输、信息处理等方面广泛应用。

本文针对数字低通滤波器的设计,以MATLAB软件为平台,分别采用了脉冲响应不变法和双线性变换法来设计IIR数字滤波器,重点对于FIR滤波器的设计,分别从时域和频域出发,本文主要采用的是窗函数法和频率采样法,用这两种方法分别得出了滤波器的幅度特性,并给定一个由若干频率组成的信号通过所设定的滤波器来观察滤波器的实际效果。最后基于Simulink平台下运用数字信号源、示波器、滤波器设计等模块进一步验证了滤波器的性能。当然,由于所学知识有限,本文对滤波器的优化设计讨论较少,这也是遗憾所在。

45

-

致 谢

毕业设计完成了,在这个过程中我学到了很多东西。首先我要感谢我的导师老师。在我就写论文的时间里,他对我的学业和成长寄予了细微的关怀,在毕业论文的选题、研究与写作,都给予了悉心的指导。同时老师对我的论文的撰写也给予了无微不至的帮助,为我论文的写作创造了良好的环境。张老师在科研上的严谨作风,开朗豁达的人生态度都深深感染着我,在生活上平易近人,他是我今后工作和学习的典范!

在论文开始的初期,我对于论文的结构以及文献选取等方面都有很多困惑,特别是论文的写作,张老师给予我很多资料参考,提出了许多中肯、很有见地的意见和建议。在我毕业设计期间,张老师对专业知识给予了我详细的解释,对脚本的编写及仿真给了很大的帮助。在和老师的交流中,我获得了许多知识,不仅仅关于课题和编程,还包括许多数字信号处理方面的收获。这段时间里,我的进步与他的帮助密切相关。

同时在毕业设计期间,同学之间的讨论也带给了我很多启发,在这里向他们表示感谢,祝愿他们工作顺心,学习顺利!

参考文献

46

-

[1] 刘顺兰,吴杰,高西全. 数字信号处理(第二版).西安电子科技大学出版社 2009. [2] 王宏. 及其在信号处理中的应用,清华大学出版社.2008.

[3] 何方白,张德民,阳莉,李强,刘焕琳. 数字信号处理.高等教育出版社,2008.

[4] 伯晓晨,刘涛,刘路. MATLAB工具箱应用指南——信息工程篇,电子工业出版社,2001. [5] 李行一. 数字信号处理[M]. 重庆:重庆大学出版社,2002.

[6] 刘正士,王勇,陈恩伟,葛运建. 一种数字滤波器的设计方法及其应用[J]..):88~91. [7] 陈后金.数字信号处理[M].北京:高等教育出版社,2008,164~168. [8] 陈后金.数字信号处理[M].北京:高等教育出版社,2008,168~174

[9] 程佩青.数字信号处理教程[M].北京:清华大学出版社,2003:334-342,344.

[10] 陈怀琛.数字信号处理教程——MATLAB释义与实现[M].北京:电子工业出版社,

2004:209-210.

[11] 邓重一.滤波器的过去、现在与未来[J].世界电子元器件.2003,13(4):48~49.

[12] 邹鲲、袁俊泉、龚享铱。MATLAB 信号处理[M].北京:清华大学出版社,2003,204~207. [13] 黎雄, 张学智. FIR 数字滤波器的最优化设计及MATLAB 实现[J].信息技术,2004 [14] Oppenheim A V,Schafer R Signal Hall,1999. [15] Oppenheim A V, Schafer R Signal ,1975.

[16] Vinay K I,John G Signal Processing:Using Learning,2000. [17] Roberts R A,Mullis C Signal Publishers,.

[18] Ludeman L of Digital Signal Processing,Harper&Row,Publishers,Inc,1996

[19] Digital Signal Processing Using MATLAB,vinay K,ingle John G. Proakis.科学出版社. [20] Ingle Vinay K., Proakis John G, 数字信号处理及其MATLAB 实现, 北京: 电子工业出版

社.

[21] Mitra Sanjit K. Digital Signal Processing-A Computer-Based Approach[M].Prentice-Hall Inc,

1989

附 录

一、英文原文

Digital filter

47

-

Wikipedia

Abstract

A general filter with n stages, each with an independent delay, di, and amplification

gain.

In , and , a digital filter is a system that performs mathematical operations on a , to reduce or enhance certain aspects of that signal. This is in contrast to the other major type of , the , which is an operating on . An analog signal may be processed by a digital filter by first being digitized and represented as a sequence of numbers, then manipulated mathematically, and then reconstructed as a new analog signal (see ). In an analog filter, the input signal is \"directly\" manipulated by the circuit.

A digital filter system usually consists of an to sample the input signal, followed by a microprocessor and some peripheral components such as memory to store data and filter coefficients etc. Finally a to complete the output stage. Program Instructions (software) running on the microprocessor implement the digital filter by performing the necessary mathematical operations on the numbers received from the ADC. In some high performance applications, an or is used instead of a general purpose microprocessor, or a specialized DSP with specific paralleled architecture for expediting operations such as filtering.

Digital filters may be more expensive than an equivalent analog filter due to their increased complexity, but they make practical many designs that are impractical or impossible as analog filters. Since digital filters use a sampling process and discrete-time processing, they experience latency (the difference in time between the input and the response), which is almost irrelevant in analog filters.

Digital filters are commonplace and an essential element of everyday electronics such as , , and .

Contents

o

• •

o o o o

• • • •

o o

of digital filters

A digital filter is characterized by its , or equivalently, its . Mathematical analysis of the transfer function can describe how it will respond to any input. As such, designing a filter consists of developing specifications appropriate to the problem (for example, a

48

-

second-order low pass filter with a specific cut-off frequency), and then producing a transfer function which meets the specifications.

The for a linear, time-invariant, digital filter can be expressed as a transfer function in the ; if it is causal, then it has the form:

where the order of the filter is the greater of N or M. See for further discussion of this .

This is the form for a with both the inputs (Numerator) and outputs (denominator), which typically leads to an IIR behaviour, but if the is made equal to . no feedback, then this becomes an FIR or filter. Analysis techniques

A variety of mathematical techniques may be employed to analyze the behaviour of a given digital filter. Many of these analysis techniques may also be employed in designs, and often form the basis of a filter specification.

Typically, one analyzes filters by calculating how the filter will respond to a simple input such as an . One can then extend this information to visualize the filter's response to more complex signals. have been used, together with , for this purpose. Impulse response

The , often denoted or , is a measurement of how a filter will respond to the function. For example, given a difference equation, one would set and for and evaluate. The impulse response is a characterization of the filter's behaviour. Digital filters are typically considered in two categories: (IIR) and (FIR). In the case of linear time-invariant FIR filters, the impulse response is exactly equal to the sequence of filter coefficients:

IIR filters on the other hand are recursive, with the output depending on both current and previous inputs as well as previous outputs. The general form of an IIR filter is thus:

Plotting the impulse response will reveal how a filter will respond to a sudden, momentary disturbance.

Difference equation

In systems, the digital filter is often implemented by converting the to a (LCCD) via the . The discrete transfer function is written as the ratio of two polynomials. For example:

This is expanded:

and divided by the highest order of :

The coefficients of the denominator, , are the 'feed-backward' coefficients and the coefficients of the numerator are the 'feed-forward' coefficients, . The resultant is:

49

-

or, for the example above:

rearranging terms:

then by taking the inverse z-transform:

and finally, by solving for

:

This equation shows how to compute the next output sample, , in terms of the past outputs, , the present input, , and the past inputs, . Applying the filter to an input in this form is equivalent to a Direct Form I or II realization, depending on the exact order of evaluation.

design

The design of digital filters is a deceptively complex topic. Although filters are easily understood and calculated, the practical challenges of their design and implementation are significant and are the subject of much advanced research.

There are two categories of digital filter: the and the . These are often referred to as (IIR) filters and (FIR) filters, respectively.

realization

After a filter is designed, it must be realized by developing a signal flow diagram that

describes the filter in terms of operations on sample sequences.

A given transfer function may be realized in many ways. Consider how a simple expression such as could be evaluated – one could also compute the equivalent . In the same way, all realizations may be seen as \"factorizations\" of the same transfer function, but different realizations will have different numerical properties. Specifically, some realizations are more efficient in terms of the number of operations or storage elements required for their implementation, and others provide advantages such as improved numerical stability and reduced round-off error. Some structures are better for and others may be better for . Form I

A straightforward approach for IIR filter realization is , where the difference equation is evaluated directly. This form is practical for small filters, but may be inefficient and impractical (numerically unstable) for complex designs. In general, this form requires 2N delay elements (for both input and output signals) for a filter of order N.

50

-

Form II

The alternate only needs N delay units, where N is the order of the filter – potentially half as much as Direct Form I. This structure is obtained by reversing the order of the numerator and denominator sections of Direct Form I, since they are in fact two linear systems, and the commutativity property applies. Then, one will notice that there are two columns of delays () that tap off the center net, and these can be combined since they are redundant, yielding the implementation as shown below.

The disadvantage is that Direct Form II increases the possibility of arithmetic overflow for filters of high Q or resonance. It has been shown that as Q increases, the round-off noise of both direct form topologies increases without bounds This is because, conceptually, the signal is first passed through an all-pole filter (which normally boosts gain at the resonant frequencies) before the result of that is saturated, then passed through an all-zero filter (which often attenuates much of what the all-pole half amplifies).

second-order sections

A common strategy is to realize a higher-order (greater than 2) digital filter as a cascaded series of second-order \"biquadratric\" (or \"biquad\") sections (see ). Advantages of this strategy is that the coefficient range is limited. Cascading direct form II sections result in N delay elements for filter order of N. Cascading direct form I sections result in N+2 delay elements since the delay elements of the input of any section (except the first section) are a redundant with the delay elements of the output of the preceding section. Forms

▪ Other forms include:

▪ Direct Form I and II transpose ▪ Series/cascade ▪ Parallel ▪ Ladder form ▪ Lattice form

51

-

▪ ▪ ▪ ▪ ▪

Coupled normal form Multifeedback

Analog-inspired forms such as Sallen-key and state variable filters Systolic arrays

of analog and digital filters

Digital filters are not subject to the component non-linearities that greatly complicate the design of analog filters. Analog filters consist of imperfect electronic components, whose values are specified to a limit tolerance . resistor values often have a tolerance of +/- 5%) and which may also change with temperature and drift with time. As the order of an analog filter increases, and thus its component count, the effect of variable component errors is greatly magnified. In digital filters, the coefficient values are stored in computer memory, making them far more stable and predictable.

Because the coefficients of digital filters are definite, they can be used to achieve much more complex and selective designs – specifically with digital filters, one can achieve a lower passband ripple, faster transition, and higher stopband attenuation than is practical with analog filters. Even if the design could be achieved using analog filters, the engineering cost of designing an equivalent digital filter would likely be much lower. Furthermore, one can readily modify the coefficients of a digital filter to make an or a user-controllable parametric filter. While these techniques are possible in an analog filter, they are again considerably more difficult.

Digital filters can be used in the design of finite impulse response filters. Analog filters do not have the same capability, because finite impulse response filters require delay elements.

Digital filters rely less on analog circuitry, potentially allowing for a better . A digital filter will introduce noise to a signal during analog low pass filtering, analog to digital conversion, digital to analog conversion and may introduce digital noise due to quantization. With analog filters, every component is a source of thermal noise (such as ), so as the filter complexity grows, so does the noise.

However, digital filters do introduce a higher fundamental latency to the system. In an analog filter, latency is often negligible; strictly speaking it is the time for an electrical signal to propagate through the filter circuit. In digital filters, latency is a function of the number of delay elements in the system.

Digital filters also tend to be more limited in bandwidth than analog filters. High bandwidth digital filters require expensive ADC/DACs and fast computer hardware for processing.

In very simple cases, it is more cost effective to use an analog filter. Introducing a digital filter requires considerable overhead circuitry, as previously discussed, including two low pass analog filters.

of digital filters

Many digital filters are based on the , a mathematical algorithm that quickly extracts

the of a signal, allowing the spectrum to be manipulated (such as to create band-pass filters) before converting the modified spectrum back into a time-series signal.

Another form of a digital filter is that of a model. A well used state-space filter is the published by in 1960.

also

▪ ▪

52

-

▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪

, ,

General

▪ A. Antoniou, Digital Filters: Analysis, Design, and Applications, New York, NY: McGraw-Hill,

1993.

▪ J. O. Smith III, , Center for Computer Research in Music and Acoustics (CCRMA), Stanford

University, September 2007 Edition.

▪ . Mitra, Digital Signal Processing: A Computer-Based Approach, New York, NY: McGraw-Hill,

1998.

▪ . Oppenheim and . Schafer, Discrete-Time Signal Processing, Upper Saddle River, NJ:

Prentice-Hall, 1999.

▪ . Kaiser, Nonrecursive Digital Filter Design Using the Io-sinh Window Function, Proc. 1974

IEEE Int. Symp. Circuit Theory, pp. 20–23, 1974.

▪ Bergen and A. Antoniou, Design of Nonrecursive Digital Filters Using the Ultraspherical

Window Function, EURASIP Journal on Applied Signal Processing, vol. 2005, no. 12, pp. 1910–1922, 2005.

▪ and , , IEEE Trans. Circuit Theory, vol. CT-19, pp. 189–194, Mar. 1972. ▪ , . McClellan, and T.W. Parks, , Proc. IEEE, vol. 63, pp. 595–610, Apr. 1975.

▪ . Deczky, , IEEE Trans. Audio Electroacoust., vol. AU-20, pp. 257–263, Oct. 1972. Cited

▪ M. E. Valdez, , 2001. ▪ A. Antoniou, chapter 1 ▪ J. O. Smith III, ▪ J. O. Smith III,

▪ L. B. Jackson, \"On the Interaction of Roundoff Noise and Dynamic Range in Digital

Filters,\" Bell Sys. Tech. J., vol. 49 (1970 Feb.), reprinted in Digital Signal Process, L. R. Rabiner and C. M. Rader, Eds. (IEEE Press, New York, 1972). ▪ J. O. Smith III, ▪ ^ A. Antoniou 53

-

54

-

二、英文翻译

数字滤波器

Wikipedia

摘要

在电子学,计算机科学和数学,数字滤波器是一个基于离散时间信号的采样系统以减少或增强信号某些方面的数学运算。这是在其他主要类型的滤波器例如模拟滤波器不同的。可以通过一个数字滤波器先数字化来处理模拟信号,并表示为一个数字序列,然后操控数学,然后重建一个新的模拟信号(数字信号处理)。在一个模拟滤波器,输入信号是“直接”操纵电路。

数字过滤系统,通常由模拟到数字转换器组成,随后由一个微处理器和一些外围元件,如内存来存储数据和滤波器系数等,最后一个数字 - 模拟转换器来完成输出级。在微处理器上运行的程序指令(软件)实现数字滤波器从ADC接收的电话号码进行必要的数学运算。在一些高性能的应用,FPGAor的ASIC,而不是使用一个通用微处理器,或加快,如过滤操作与特定的并联架构的专用DSP。

比同等由于其日益复杂的模拟滤波器,数字滤波器可能更昂贵,但他们实际模拟滤波器是不切实际或不可能的许多设计。由于数字滤波器使用的采样过程和离散时间处理,他们遇到延迟(输入和响应时间之间的差异),这几乎是在模拟滤波器无关。

数字滤波器是司空见惯的,日常电子产品,如收音机,手机和立体声接收机的基本要素。

目录

• 数字滤波器的特点

o 析技术

冲响应 分方程

• 波器设计 • 波器实现

o 接I型 o 接II型 o 阶阶梯型 o 他类型

• 拟滤波器和数字滤波器的对比 • 字滤波器的类型 55

-

• • 见 考文献 o 般 o 用

1.数字滤波器的特点:

数字滤波器的特点是它的传输功能,其差分方程、数学分析的传递函数可以描

述将如何应对任何输入。因此,设计一个过滤器,包括开发适当的问题(例如,一个二阶与一个特定的截止频率的低通滤波器)的规格,然后生产符合规格的传递函数 线性时不变的,数字滤波器的传递函数可表示,作为一个在Z域传递函数;如果是因果关系,那么它的形式是:

过滤器的顺序是N或M的更大的Z变换的进一步讨论这个传递函数LCCD方法。这是一个递归滤波器输入(分子)和输出(分母),这通常会导致一个IIR无限脉冲响应行为的形式,但如果分母等于统一,即没有反馈,那么这将成为一个FIR或有限脉冲响应滤波器。 分析技术

可以采用多种数学方法来分析一个给定的数字滤波器的行为。许多这些分析技术也可能被受聘在设计,往往形成一个过滤器规范的基础上。 通常情况下,分析计算过滤器将如何回应,如简单的输入一个脉冲响应滤波器。一则可以延长此信息可视化更复杂的信号滤波器的响应。黎曼球已使用,加上数字视频,用于这一目的。 脉冲响应

脉冲响应往往表示 hk 或者 h[k],,是一个过滤器将如何应对克罗内克δ函数的测量。例如,给出一个差分方程,将设置x01和xk0(k0)评估。脉冲响应是一个过滤器的行为表征。通常被认为两类:无限冲激响应(IIR)和有限脉冲响应(FIR)数字滤波器。冲激响应的线性时不变的FIR滤波器的情况下,是完全平等的滤波器系数序列:

另一方面IIR滤波器是递归的,根据当前和以前的投入以及以前的输出与输出。 IIR

k0ynhkxnkn1滤波器的一般形式是这样的:

M1

56

m0amynmbkxnkk0n1

-

绘制脉冲响应,就会发现一个过滤器将如何应对突然,短暂的干扰。 差分方程 在离散时间系统,数字滤波器常常通过Z变换的传递函数转换常系数线性差分方程(LCCD)实施。离散频域传递函数写成两个多项式的比值。例如: (z1)2H(z)13 (z)(z)24扩展可得 z22z1H(z)13 z2z4812z1z2Y(z)H(z) 除以z的最高次数可得131z1z2X(z)48分母系数,反馈系数线性差分方程是: y(n)akynkbkxnk k1k0NM这个公式显示了如何计算下一个输出样本,在过去的输出,目前的输入,并在过去的投入,应用过滤器,在这种形式的投入相当于一个直接的形式,I或II的实现,取决于确切数据。 2.滤波器设计 数字滤波器的设计是一个看似复杂的课题。虽然过滤器是很容易理解和计算,他们的设计和实施的实际挑战是显着的,有许多先进的研究主题。 数字滤波器有两类:递归滤波器和非递归滤波器。这些通常被称为无限脉冲响应(IIR)滤波器和有限冲激响应(FIR)滤波器,分别为。 3.滤波器实现 经过一个过滤器的设计,它必须实现发展信号流图,描述样本序列的操作过滤 一个给定的传输功能,可实现在许多方面。考虑如何进行评估,如简单的表达 - 也可以计算的等效。以同样的方式,全部实现可视为相同的传递函数“分解”,但不同的实现将有不同的数值属性。具体来说,一些实现更有效地在其实施所需的操作或存储单元的数量方面,和其他人提供优势,如改进的数值稳定性和减少舍入误差。有些结57

-

构是更好的定点算术和其他可能更好的浮点运算。 直接I型

IIR滤波器实现的一个简单的方法是直接的形式,差分方程直接进行评估。这种形式是实用的小过滤器,但可能是低效的和不切实际的(数控不稳定)为复杂的设计。[3]在一般情况下,这种形式需要2N延迟秩序N.过滤器元素(输入和输出信号)

3.2直接II型

备用的直接形式II只需要列印延迟单元,其中N是滤波器的阶 - 潜在的一半作为直接的形式一多,这种结构是由扭转直接形式我的分子和分母部分的顺序,因为它们其实两个线性系统,并适用可交换属性。然后,人们会发现,有两列延迟,点击中心网,而这些,因为他们是多余的,可以结合,产生如下所示的实施。

缺点是二或共振高Q滤波器的算术溢出的可能性增加,直接的形式。[4]它已被证明为Q的增加,直接的形式全面小康的噪声拓扑结构没有界限的增加。[5]概念,这是因为,信号首先通过一个全极点滤波器(通常提高共振频率增益)通过前已经饱和的结果,然后通过一个全零的过滤器(往往衰减全极点的一半放大)。

二阶阶梯型

常见的策略是一个高阶(大于2)数字滤波器的实现作为级联系列二阶

58

-

“biquadratric的”(或“双二阶”)。这种策略的优点是,系数范围是有限的。层叠直接提名表格第二部分在N的过滤器的顺序层叠直接形式的列印延迟单元的结果,我在N+2,因为输入的任何部分(第一部分除外)的延迟单元的延迟单元部分结果与延时冗余元素的前一节的输出。

其他类型

▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪

其他类型包括: 直接转移I型和II型 阶梯型 并联型 梯形 格型 双正常型 多反馈性

如Sallen-Key与状态变量滤波器的模拟启发的

4.模拟滤波器和数字滤波器的比较

数字滤波器是不受组件的非线性特性,大大复杂的模拟滤波器的设计。模拟滤波器组成的不完善的电子元件,其值被指定到一个极限公差(如电阻值往往有一个公差为+ / - 5%),这也可能随温度和时间漂移。作为一个模拟滤波器的增加,因而其元件数量的顺序,可变部分错误的影响被大大放大。在数字滤波器,系数的值存储在计算机内存中,使他们更加稳定和可预见的。

因为数字滤波器的系数是明确的,他们可以用来实现更复杂的和有选择性的设计 - 特别是与数字滤波器,可以实现较低的通带纹波,更快的过渡,和更高的阻带衰减比模拟滤波器的实际。设计,即使使用模拟滤波器,可以实现相当于数字滤波器设计的工程造价可能要低得多。此外,人们可以很容易地修改一个数字滤波器的系数,使自适应滤波器或用户可控的参数滤波器。虽然这些技术可能是在一个模拟滤波器,它们又相当多的困难。

可用于数字滤波器的有限脉冲响应滤波器的设计。模拟滤波器不具有相同的能力,因为有限脉冲响应滤波器要求延迟单元。

依靠数字滤波器的模拟电路少,有可能使一个更好的信号信噪比。数字滤波器会引入噪声信号在模拟低通滤波,模拟到数字的转换,数模转换,并可能引入数字由于量化噪声。与模拟滤波器,每一个部件是热噪声源(如约翰逊噪声),因此作为过滤器越来越复杂,因此没有噪音。

然而,数字滤波器引入一个更高的基本系统的延迟。在模拟滤波器,延迟往

59

-

往是微不足道,严格来说,它是为电信号,通过滤波电路传播的时间。在数字滤波器,延迟是一个系统中的延迟单元的数量的功能。

数字滤波器也往往比模拟滤波器在带宽有限的。高带宽数字滤波器需要昂贵的ADC / DAC的处理和快速的计算机硬件。

在非常简单的情况下,它是更具成本效益,使用模拟滤波器。引入数字滤波器,需要相当大的开销电路,正如前面所讨论的,包括两个低通模拟滤波器。

5.数字滤波器的类型

许多数字滤波器是基于快速傅立叶变换,快速提取信号频谱的数学算法,允许被操纵的频谱转换成之前,修改后的频谱回时间(如创建带通滤波器)一系列的信号 另一种形式的数字滤波器的状态空间模型。良好的使用状态空间滤波器是鲁道夫·卡尔曼在1960年出版的卡尔曼滤波器。

6.参见

▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪

贝塞尔滤波器 巴特沃斯滤波器 椭圆滤波器

林奎茨 - 莱利过滤器 切比雪夫滤波器 梯形滤波器 样本(信号) 电子滤波器 滤波器设计 双二阶滤波器

高通滤波器,低通滤波器 IIR, FIR滤波器 双线性变换法

7.参考文献 一般:

▪ ▪ ▪ ▪ ▪

A. Antoniou, Digital Filters: Analysis, Design, and Applications, New York, NY: McGraw-Hill, 1993.

J. O. Smith III, , Center for Computer Research in Music and Acoustics (CCRMA), Stanford University, September 2007 Edition.

. Mitra, Digital Signal Processing: A Computer-Based Approach, New York, NY: McGraw-Hill, 1998.

. Oppenheim and . Schafer, Discrete-Time Signal Processing, Upper Saddle River, NJ: Prentice-Hall, 1999.

. Kaiser, Nonrecursive Digital Filter Design Using the Io-sinh Window Function, Proc. 1974 IEEE Int. Symp. Circuit Theory, pp. 20–23, 1974.

60

-

▪ ▪ ▪

Bergen and A. Antoniou, Design of Nonrecursive Digital Filters Using the Ultraspherical Window Function, EURASIP Journal on Applied Signal Processing, vol. 2005, no. 12, pp. 1910–1922, 2005.

and , , IEEE Trans. Circuit Theory, vol. CT-19, pp. 189–194, Mar. 1972. , . McClellan, and T.W. Parks, , Proc. IEEE, vol. 63, pp. 595–610, Apr. 1975.

. Deczky, , IEEE Trans. Audio Electroacoust., vol. AU-20, pp. 257–263, Oct. 1972.

M. E. Valdez, , 2001. A. Antoniou, chapter 1 J. O. Smith III, J. O. Smith III,

L. B. Jackson, \"On the Interaction of Roundoff Noise and Dynamic Range in Digital Filters,\" Bell Sys. Tech. J., vol. 49 (1970 Feb.), reprinted in Digital Signal Process, L. R. Rabiner and C. M. Rader, Eds. (IEEE Press, New York, 1972).

引用

▪ ▪ ▪ ▪ ▪

61

-

三、仿真脚本

1.理想低通滤波器M文件 function hd=ideal_lp(w,M); alpha=(M-1)/2; n=[0:1:(M-1)]; m=n-alpha; fc=w/pi;

hd=fc*sinc(fc*m); %产生理想低通滤波器的文件

2.用窗函数设计FIR滤波器

wp=*pi; %通带截止频率 ws=*pi; %阻带起始频率 tr_width=ws-wp;

M=ceil*pi/tr_width)+1; %求的窗函数的长度 n=[0:1:M-1]; w=(ws+wp)/2,

hd=ideal_lp(w,M); %调用理想滤波器 w_ham=(hamming(M))';

h=hd.*w_ham; %理想滤波器的函数与窗函数相乘 [H w]=freqz(h,1); mag=abs(H);

db=20*log10((mag+eps)/max(mag));

subplot(2,2,1),stem(n,hd);

axis([0 M-1 ]); %理想滤波器的单位冲击响应 title('理想脉冲响应')

xlabel('n'); ylabel('hd(n)') subplot(2,2,2),stem(n,w_ham); axis([0 M-1 0 ]);

title('汉明窗');ylabel('w_ham'); %汉明窗的图形

subplot(2,2,3),stem(n,h); %加窗后滤波器时域波形 axis([0 M-1 ]);

title('实际脉冲响应');ylabel('h(n)');

subplot(2,2,4),plot(w/pi,db); %滤波器的幅频特性 axis([0 1 -100 10]);

title('滤波器的幅度特性');xlabel('w/pi');ylabel

N1=1024;t=0:1:N1-1;

fs=5000; %采样频率为5000Hz

s=(sin(2*100*pi*t/fs)+sin(2*pi*1000*t/fs)+2*sin(2*pi*2000*t/fs))+randn(1,length(t/fs)); %给出一信号,频率分别为100Hz,1000Hz,2000Hz与一随机信号 Y=fft(s); %

y1=filter(h,1,s); %将该信号经过滤波器

Y1=fft(y1); %经滤波器处理后信号的频谱

62

-

Ts=t(2)-t(1); Ws=2*pi/Ts; Wn=Ws/2;

Ya=abs(Y(1:length(t)/2)); Yb=abs(Y1(1:length(t)/2));

f=linspace(0,Wn/(2*pi),length(t)/2); subplot(1,2,1),plot(t,s);

title('原信号时域波形'); %原信号的时域波形 ylabel('s'); xlabel('t');

subplot(1,2,2),plot(t,y1); title('经滤波后的时域波形'); ylabel('y1');

xlabel('t') %经过滤波器后信号的时域波形

subplot(1,2,1), plot(f*fs,Ya);

axis([0,3000,0,500]);

title('原信号的频谱'); %原信号的频谱 ylabel('F(w)'); xlabel('f'); grid;

subplot(1,2,2); plot(f*fs,Yb);

axis([0,3000,0,500]); %经滤波器后信号的频谱 title('经FIR低通滤波器滤波后的频谱');ylabel('F(w)'); xlabel('f'); grid;

3.用频率采样法设计FIR滤波器 M=60;alpha=(M-1)/2;

Hrs=[ones(1,7),,,zeros(1,43),,,ones(1,6)];%滤波器频谱采样值 k1=0:floor((M-1)/2);

k2=floor((M-1)/2)+1:M-1;

angH=[-alpha*(2*pi)/M*k1,alpha*(2*pi)/M*(M-k2)];

H=Hrs.*exp(j*angH); %经频率采样后系统的频谱函数 hn=ifft(H); [H w]=freqz(hn,1); mag=abs(H);

db=20*log10((mag+eps)/max(mag));

figure(1); plot(w/pi,db);

title('滤波器的幅度特性'), ylabel('db'); xlabel('w/pi');

63

-

figure(2);

stem(real(hn));

title('实际脉冲响应'), %经频率采样法得到的滤波器的实际脉冲响应 ylabel('h(n)'); xlabel('n');

N1=1024;t=0:1:N1-1; fs=5000;

s=(sin(2*100*pi*t/fs)+sin(2*pi*1000*t/fs)+2*sin(2*pi*2000*t/fs))+randn(1,length(t/fs)); %给定一个信号

Y=fft(s); %信号的频谱 y1=filter(hn,1,s);

Y1=fft(y1); %经滤波器处理后信号的频谱 Ts=t(2)-t(1); Ws=2*pi/Ts; Wn=Ws/2;

Ya=abs(Y(1:length(t)/2)); Yb=abs(Y1(1:length(t)/2));

f=linspace(0,Wn/(2*pi),length(t)/2);

figure(3); plot(f*fs,Ya);

axis([0,3000,0,500]);

title('原信号的频谱'); %原信号的频谱图 ylabel('F(w)'); xlabel('f'); grid; figure(4); plot(f*fs,Yb);

axis([0,3000,0,500]); title('经FIR低通滤波器滤波后的频谱');ylabel('F()');xlabel('f'); grid; %经滤波器后信号的频谱图

4.脉冲响应不变法设计IIR滤波器 [z,p,k]=buttap(3); [b,a]=zp2tf(z,p,k);

[bt,at]=lp2lp(b,a,200*2*pi);

[bz,az]=impinvar(bt,at,1000); %所设计滤波器的截止频率为200Hz freqz(bz,az,512,1000) %采样频率为1000Hz

5.双线性变化法设计IIR滤波器 [z,p,k]=buttap(3); [b,a]=zp2tf(z,p,k);

[bt,at]=lp2lp(b,a,200*2*pi); [bz,az]=bilinear(bt,at,1000); freqz(bz,az,512,1000)

64

因篇幅问题不能全部显示,请点此查看更多更全内容

Top