基于MATLAB环境的数字滤波器设计.doc
《基于MATLAB环境的数字滤波器设计.doc》由会员分享,可在线阅读,更多相关《基于MATLAB环境的数字滤波器设计.doc(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 引 言随着信息时代与数字世界到来,数字信号处理已成为今一门极其重要学科与技术领域。数字滤波器是数字信号处理基础,用来对信号进行过滤、检测及参数估计等处理,在通信、图像、语音、雷达等许多领域有着十分广泛应用。尤其在图像处理、数据压缩等方面取得了令人瞩目进展与成就2。所以,数字滤波器设计就显尤为重要。在及模拟滤波器相比,数字滤波器是利用离散时间系统特性对输入信号波形或频率进行加工处理。或者说,把输入信号变成一定输出信号,从而达到改变信号频谱目。它具有精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配以及能实现模拟滤波器无法进行特殊滤波等优点。 目前数字滤波器设计有很多现成高级语言设计程序,但它们
2、都存在设计效率低,不具有可视图形,不便于修改等缺点,而MATLABFDATOOL工具为数字滤波器研究与应用提供了一个直观、高效、便捷利器。它以矩阵运算为基础,把计算、可视化、仿真设计融合到一个交互式工作环境中。MATLAB拥有多样工具箱,它们为各领域带来了直观方便应用。其中,信号处理、图像处理等工具箱为数字滤波研究蓬勃发展提供了有力工具。本文介绍了一种基于MATLAB环境下对数字滤波器进行设计及仿真方法。 在基于MATLAB环境数字滤波器设计过程中,MATLAB工具箱提供了几种模拟滤波器原型产生函数;模拟低通滤波器原型向低通、高通、带通、带阻转变函数;从模拟滤波器向数字滤波器转换双线性变换与冲
3、激响应不变法;数字滤波器直接设计函数等。这一套设计函数在MATLAB中对于滤波器设计带来了极大方便。在使用时,可以随时对比设计要求与滤波器特性调整参数,直观简便,极大减轻了工作量,有利于滤波器设计最优化。第 37 页1数字滤波器及MATLAB语言概述1.1.1 滤波器发展过程 凡是有能力进行信号处理装置都可以称为滤波器。在所有电子部件中,使用最多,技术最复杂,滤波器优劣直接决定产品优劣,所以,对滤波器研究与生产历来为各国所重视。1917年美国与德国科学家分别发明了LC滤波器,次年美国第一个多路复用系统出现。到20世纪50年代,无源滤波器EI日趋成熟。到60年代中期,形成了数字滤波器完整而正规理
4、论。具体来说,人们提出了各种滤波器结构,有以运算误差最小为特点,有则以运算速度高见长,而有则二者兼而有之。70年代以后滤波器主攻方向为低耗能、高精度、小体积、多工艺、稳定可靠并且价廉,这就导致数字滤波器、RC有源滤波器、开关电容滤波器与电荷转移滤波器等各种滤波器飞速发展。到了80年代,人们开始致力于各种新型滤波器研究,如对自适应滤波器广发研究,所取得成果在通信、雷达、语音、图像等领域获得了广泛应用。90年代至今仍致力于把各类滤波器应用在产品开发与研制上。当然,对滤波器本身研究仍在不断进行。我国广泛使用滤波器是在50年代以后,经过半个世纪发展,我国在研制、生产与应用等方面已纳入国际发展步伐,现有
5、滤波器种类与所覆盖频率也基本上可以满足各种电信产品。 1.1.2 滤波器原理 滤波器,其作用是对输入信号起到滤波作用。对于图1-1所示LSI系统,其时域输入输出关系为: (1-1) x(n) y(n) h(n)图 1-1 若y(n),x(n)傅立叶变换存在,则输入输出频域关系是: (1-2) 当输入信号x(n)通过滤波器系统h(n)后,其输出y(n)中不再含有|c频率成分,仅使|c信号成分通过。因此,滤波器形状不同,其滤波后信号结果也不一样。 当滤波器输入、输出都是离散时间信号,那么该滤波器单位冲激响应h(n)也必然是离散,这种滤波器称为数字滤波器(DF)。当用硬件实现一个DF时,所需元件是延
6、迟器、乘法器与加法器;而利用MATLAB软件时,它仅需要线性卷积程序便可实现。而模拟滤波器(AF)只能用硬件实现。因此DF比AF容易实现,且更容易获得理想滤波特性。数字滤波器具有以下优点:精度与稳定性高;系统函数容易改变;灵活性高;不存在阻抗匹配 ;便于大规模集成;可实现多维滤波。 在滤波器中,把信号能够通过频率范围,称为通频带或通带;反之,信号受到很大衰减或完全被抑制频率范围称为阻带;通带与阻带之间分界频率称为截止频率;理想滤波器在通带内电压增益为常数,在阻带内电压增益为零;实际滤波器通带与阻带之间存在一定频率范围过渡带。1.2 数字滤波器定义及分类1.2.1 数字滤波器定义 数字滤波器是指
7、完成信号滤波处理功能,用有限精度算法实现离散时间线性非时变系统,信号通过线性系统后,其输出就是输入信号与系统冲激响应卷积。因此,数字滤波器本身既可以是用数字硬件装配成一台完成给定运算专用数字计算机,也可以将所需要运算编程程序,让通用计算机来执行。数字滤波器,输入输出均为数字信号,通过一定运算关系,改变输入信号中所含频率成分相对比例,或则滤除某些频率成分器件。 数字滤波器可以有很多分类方法,但总体上可以分为两大类。一类称为经典滤波器,即一般滤波器,其特点是输入信号中有用成分与希望滤除成分占用不同频带,通过合适选频滤波器可以实现滤波。例如,若输入信号中有干扰,信号与干扰频带互不重叠,则可滤除信号中
8、干扰得到纯信号。但是,如果输入信号中信号与干扰频带相重叠,则干扰就不能被有效滤除。另一类称为现代滤波器,如维纳滤波器、卡尔曼滤波器等,其输入信号中有用信号与希望滤除成分频带重叠。对于经典滤波器,从频域上也可以分为低通、高通、带通与带阻滤波器。从时域特性上看,数字滤波器还可以分为有限冲激响应数字滤波器(FIR)与无限冲激响应数字滤波器(IIR)。 对于有限冲激响应数字滤波器(FIR),其输出y(n)只取决于有限个过去与现在输入,x(n),x(n-1),x(n-m),滤波器输入输出关系可表示为: (1-3) 对于无限冲激响应数字滤波器(IIR),它输出不仅取决于过去与现在输入,而且还取决于过去输出
9、,其差分方程为: (1-4) 该差分方程单位冲激响应是无限延续。 滤波器性能一般用系统频率特性H(ejw)来说明,常用性能指标主要有以下三个参数:1. 幅度平方函数 (1-5)该性能指标主要用来说明系统幅频特性。2. 相位函数 (1-6) 其中: (1-7)该指标主要用来说明系统相位特性。3. 群延时 (1-8) 定义为相位对角频率导致负值,说明了滤波器对不同频率成分平均延时。当要求在通带内群延迟是常数时,滤波器相位响应特性是线性。 实际设计中所能得到滤波器频率特性及理想滤波器频率特性之间存在着一些显著差别,现以低通滤波器频率特性为例进行说明。1. 理想低通滤波器特性:设滤波器输入信号为x(t
10、),信号中混入噪音u(t),它们有不同频率成分。滤波器单位脉冲响应为h(t)。则理想滤波器输出为: (1-9)即噪音信号被滤除u(t)*h(t)=0.而信号无失真只有延时与线性放大。对上式作傅立叶变换得: (1-10)假定噪音信号被滤除,即: (1-11) 整理得: (1-12)图1-2 理想滤波器频率特性 图1-3 理想滤波器单位脉冲响应假定信号频率成分为,噪音频率成分为。则完成滤波理想低通滤波器特性是: (1-13)即: (1-14) (1-15)系统单位脉冲响应为: (1-16)理想低通滤波器频率特性如图1-2所示,单位脉冲响应波形如图1-3所示。理想滤波器具有非因果、无限长单位脉冲响应
11、与不连续频率特性,要用稳定线性时不变(LTI)系统来实现这样特性是不可能。工程上是用脉冲响应为有限长、因果、稳定线性时不变系统或具有连续频率特性线性时不变系统来逼近理想特性。在满足一定误差要求情况下来实现理想滤波特性。因此实际滤波器频率特性如图1-4所示。 图1-4 实际滤波器频率特性其中:c截止频率s阻带起始频率s-c过渡带宽在通带内幅度响应以误差接近于1,即: (1-17)s为阻带起始频率,在阻带内幅度响应以小于误差接近于零,即: (1-18) 为了使逼近理想低通滤波器方法成为可能,还必须提供一带宽为s-c不为零过渡带。在这个频带内,幅度响应从通带平滑下落到阻带。1.3 MATLAB软件概
12、述 MATLAB是美国MathWorks公司开发一种功能极其强大高技术计算语言与内容极其丰富软件库,集数值计算、矩阵运算与信号处理及显示于一身。该软件最初是由美国教授Cleve Moler创立。1980年前后,他在教线性代数课程时,发现用其他高级语言编程时极不方便,便构思开发了MATLAB,即矩阵实验室(Matrix Laboratory)。该软件利用了当时代表数值线性代数领域最高水平EISPACK与LINPACK两大软件包,并且利用Fortran语言编写了最初一套交互式软件系统,MATLAB最初版本便由此产生了。 最初MATLAB由于语言单一,只能进行矩阵运算,绘图也只能用原始描点法,内部函
13、数只有几十个,因此功能十分简单。1984年该公司推出了第一个MATLAB商业版,并用C语言作出了全部改写。现在MATLAB程序是MathWorks公司用C语言开发,第一版由Steve Bangert主持开发翻译解释程序,Steve Kleiman完成图形功能设计,John Little与Cleve Moler主持开发了各类数学分析子模块、撰写用户指南与大部分M文件。接着又添加了丰富图形图像处理、多媒体功能、符号运算与及其它流行软件接口功能,使MATLAB功能越来越强大。 MATLAB系统主要由以下五个部分组成3: (1)MATLAB语言体系。 MATLAB是高层次矩阵(数组)语言,具有条件控制
14、、函数调用、数据结构、面向对象等程序语言特性。利用它既可以进行小规模编程,完成算法设计与算法实验基本任务,也可以进行大规模编程,开发复杂应用程序。 (2)MATLAB工作环境。 这是对MATLAB提供给用户使用管理功能总称。包括管理工作空间中变量数据输入输出方式与方法,以及开发、调试、管理M文件各种工具。 (3)图形句相系统。 这是MATLAB图形系统基础,包括完成2D与3D数据显示、图像处理、动画生成、图形显示等功能高层MATLAB命令,也包括用户对图形图像等对象进行特性控制低层MATLAB命令,以及开发GUI(图形用户界面,Graphic User Interface)应用程序各种工具。
15、(4)MATLAB数学函数库。这是对MATLAB使用各种数学算法总称。包括各种初等函数算法,也包括矩阵运算、矩阵分析等高层次数学算法。 (5)MATLAB应用程序接口(API)。这是MATLAB为用户提供一个函数库,使得用户能够在MATLAB环境中使用C程序或FORTRAN程序,包括从MATLAB中调用于程序,读取MAT文件功能。 除此之外,MATLAB系统还具有如下特点: a可以在多种操作系统下运行,如DOS、Windows95/98/2000/NT、Compaq Alpha、Linuxsun Solaris等。 b有超过500种数学、统计、科学及工程方面函数,使用简单快捷,并且有很强用户自
16、定义函数能力。 c. 有强大图形绘制与可视化功能,可以进行视觉数据处理与分析,进行图形、图像显示及编辑,能够绘制二维、三维图形,使用户可以制作高质量图形,从而写出图文并茂文章。 d.有与其他高级语言(如C、C+,FORTRAN,JAVA)编写外部程序相接口能力,也可以把MATLAB程序转换成上述高级语言子程序。 e.有从外部文件及外部硬件设备读入数据能力。 f.有丰富网络资源,从相关Web网站可以直接获得全套MATLAB联机帮助文件与说明书电子文档,还可以获得各类技术支持及帮助。 g. MATLAB缺点是,及其他高级程序相比,程序执行速度较慢。由于MATLAB程序不用编译等预处理,也不生成可执
17、行文件,程序为解释执行,所以速度较慢。 h功能强大工具箱是MATLAB另一特色。MATLAB包含两个部分:核心部分与各种可选工具箱。核心部分中有数百个核心内部函数。其工具箱又分为两类:功能性工具箱与学科性工具箱。功能性工具箱主要用来扩充MATLAB符号计算、图形可视化、建模仿真、文字处理等功能以及及硬件实时交互功能。功能性工具箱用于多种学科。学科性工具箱是按学科领域来分类,如信号处理、控制、通信、神经网络图像处理、系统辨识、模糊逻辑等工具箱。 MATLAB中信号处理工具箱内容丰富,使用简便。在数字信号处理中常用算法,如FFT,卷积,相关,滤波器设计,参数模型等,几乎都只用一条语句即可调用。数字
18、信号处理中常用函数有波形产生、滤波器分析与设计、傅里叶变换、Z变换等。 MATLAB数字信号处理工具箱与滤波器设计工具箱专门应用于信号处理领域。工具箱可以使原来繁琐程序设计简化成函数调用。只要以正确指标参数调用相应滤波器设计程序或工具箱函数,便可以得到正确设计结果,使用非常方便。接下来将分别要对IIR数字滤波器与FIR数字滤波器设计实现进行分析讨论。在具体设计工程中,将充分发挥MATLAB软件在数值计算、图像处理中优势,并充分利用其强大滤波器设计工具箱(FDTOOL)及图像用户界面工具辅助设计分析。2. IIR滤波器设计2.1 数字滤波器设计方法概述数字滤波器设计一个重要步骤是确定一个可实现传
19、递函数H(z),这个确定传递函数H(z)过程称为数字滤波器设计。数字滤波器设计一般步骤为:1.按照实际需要,确定滤波器性能要求(通常在频域内给定数字滤波器性能要求)。2.寻找一满足预定性能要求离散时间线性系统。3.用有限精度运算实现所设计系统。4.通过模拟,验证所设计系统是否符合给定性能要求。2.2 IIR滤波器设计 IIR数字滤波器冲激响应h(n)是无限长,其输入输出关系为: (2-1) 系统函数为: (2-2) 设计无限长单位脉冲响应(IIR)数字滤波器一般可有三种方法: 第一种方法:先设计一个合适模拟滤波器,然后将其数字话,即将S平面映射到Z平面得到所需数字滤波器。模拟滤波器设计技巧非常
20、成熟,不仅得到是闭合形式公式,而且设计系数已经表格化了。因此,由模拟滤波器设计数字滤波器方法准确,简便,得到普遍采用。对于这种方法,工程上有两种常见变换法脉冲响应不变法及双线性变换法。 第二种方法:在Z平面直接设计IIR数字滤波器,给出闭合形式公式,或者以所希望滤波器响应作为依据,直接在Z平面上通过多次选定极点与零点位置,以逼近该响应。 第三种方法:利用最优化技术设计参数,选定极点与零点在Z平面上合适位置,在某种最优化准则意义上逼近所希望响应。但一般不能得到滤波器系数(即零,极点位置)作为给定响应闭合形式函数表达式。优化设计需要完成大量迭代运算,这种设计法实际上也是IIR滤波器直接设计法。 利
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MATLAB 环境 数字滤波器 设计
限制150内