基于MATLAB环境的数字滤波器设计.doc
《基于MATLAB环境的数字滤波器设计.doc》由会员分享,可在线阅读,更多相关《基于MATLAB环境的数字滤波器设计.doc(47页珍藏版)》请在三一办公上搜索。
1、河南科技大学毕业设计(论文)基于MATLAB环境的数字滤波器设计摘 要传统的数字滤波器的设计过程复杂,计算工作量大,滤波特性调整困难,影响了它的应用。本文介绍了一种利用MATLAB信号处理工具箱(Signal Processing Toolbox)快速有效的设计由软件组成的常规数字滤波器的设计方法。利用MATLAB设计滤波器,可以随时对比设计要求和滤波器特性调整参数,直观简便,极大的减轻了工作量,有利于滤波器设计的最优化。在本文中,我们分别研究了在MATLAB环境下IIR数字滤波器的典型设计和完全设计等方法。典型设计是先按一定规则将给出的数字滤波器的技术指标转换成模拟低通滤波器的技术指标,据此
2、产生模拟滤波器原型,然后把模拟低通滤波器原型转换成模拟低通、高通、带通、带阻滤波器,最后再把模拟滤波器转换成数字滤波器。完全设计方法中我们利用函数直接设计出低通、高通、带通和带阻滤波器。对于FIR数字滤波器的设计,可以根据所给定的频率特性直接设计,文中采用的设计方法是窗函数法。我们给出了一个用窗函数法设计的带阻滤波器实例与MATLAB程序仿真。本文根据IIR滤波器和FIR滤波器的特点,在MATLAB坏境下分别用双线性变换法设计IIR和用窗函数设计FIR数字滤波器,并对采集的语音信号进行分析,最后给出了IIR和FIR对语音滤波的效果。关键词:数字滤波器 ,MATLAB ,IIR, FIR Bas
3、ed on MATLAB environment digital filter designABSTRACTTraditional digital filter design process complex, the computation work load is big, the filter characteristic adjustment difficulty, has affected its application. This article introduced one kind using the MATLAB signal processing toolbox (Signa
4、l Processing Toolbox) the fast effective design the conventional numeral filter design method which is composed by software.Using the MATLAB design filter ,may contrast the design request and the filter characteristic adjustment parameter as necessary,direct-viewing is simple, enormous reduced the w
5、ork load, is advantageous optimization which designs to the filter.In this thesis the typical and complete disigns under MATLAB are studied.The technical parameters from digital filters that should be disigned,and then transformed into the analog parameters of a low-pass analog filter prototype.The
6、prototype is converted into the analog low-pass,high-pass,band-pass and the band-stop filters respeetively,Which are transformed into the digital ones.The complete design uses the given functions and releases the low-Pass,high-pass,band-pass and the band-stop filters direetly. As for the FIR filter,
7、 we can design it directly based on the giving frequency, in the paper it uses the design of the window function. we are given a window function method with band-stop filter design examples with MATLAB simulation program. This article according to the IIR filter and the FIR filter characteristic, us
8、es the bilinearity method of transformation under the MATLAB bad boundary to design IIR and to design the FIR numeral filter separately with the window box number, and carries on the analysis to the gathering pronunciation signal, and finally gives IIR and FIR to the pronunciation filter effect.Key
9、words: Digital filter,MATLAB ,IIR ,FIR 7目 录前言1第1章 数字滤波器及MATLAB语言概述21.1数字滤波器概述21.1.1数字滤波器的定义21.1.2 数字滤波器的分类21.1.3常用滤波器的性能指标31.2 MATLAB概述6第2章 IIR滤波器的设计82.1 IIR滤波器设计的常用方法82.2双线性变换法设计IIR数字滤波器92.3 脉冲响应不变法102.4 完全滤波器的设计132.5 语音滤波应用18第3章 FIR数字滤波器的设计243.1 典型的窗函数243.2 FIR滤波器对语音信号的应用27结论32参考文献33谢辞35外文资料翻译36前言
10、随着信息时代和数字世界的到来,数字信号处理已成为今一门极其重要的学科和技术领域。数字滤波器是数字信号处理的基础,用来对信号进行过滤、检测与参数估计等处理,在通信、图像、语音、雷达等许多领域都有着十分广泛的应用。尤其在图像处理、数据压缩等方面取得了令人瞩目的进展和成就。鉴于此,数字滤波器的设计就显得尤为重要。例如,在电力系统微机保护和二次控制中,很多信号的处理与分析都是基于对正弦基波和某些整次谐波的分析,而在系统电压电流信号(尤其是故障舜变过程)中各种复杂成分,所以滤波器一直是电力系统二次装置的关键部件。目前微机保护和二次信号处理软件主要是采用的数字滤波器。目前数字滤波器的设计有许多现成的高级语
11、言设计程序,但他们都存在设计效率低,不具有可视图形,不便于参数修改等缺点,而MATLAB的FDATool工具为数字滤波器的研究和应用提供了一个直观、高效、便捷的利器。它以矩阵运算为基础,把计算、可视化、仿真设计融合到一个交互式的工作环境中。尤其是MATLAB工具箱使各个领域的研究人员可以直观方便地进行科学研究和工程应用。其中的信号处理、图像处理等工具箱为数字滤波研究的蓬勃发展提供了有力的工具。本文介绍了一种基于MATLAB环境下对数字理滤波器进行设计与仿真的方法。在基于MATLAB环境的数字滤波器的设计过程中,MATLAB工具箱提供了几种模拟滤波的原型产生函数贝塞尔低通模拟滤波器原型,巴特沃斯
12、滤波器原型,切比雪夫(型、型)滤波器原型,椭圆滤波器原型等不同的模拟滤波器原型;模拟低通滤波器原型向低通、高通、带通、带阻的转变函数;从模拟滤波器向数字滤波器转化的双线性变换和冲激响应不变法;模拟数字IIR滤波器阶数选择函数以及数字滤波器直接设计函数等。这一整套设计函数给在MATLAB中设计IIR数字带来了极大的方便。利用MATLAB设计滤波器,可以随时对比设计要求和滤波器特性调整参数,直观简便,极大地减轻了工作量,有利于滤波器设计的最优化。 第1章 数字滤波器及MATLAB语言概述1.1数字滤波器概述1.1.1数字滤波器的定义数字滤波器是指完成信号滤波处理功能的,用有限精度算法实现的离散时间
13、线性非时变系统,其输入是一组数字量,其输出是经过变换的另一组数字量。因此,数字滤波器本身既可以是用数字硬件装配成的一台完成给定运算的专用的数字计算机,也可以将所需要的运算编成程序,让通用计算机来执行。数字滤波器,输入输出均为数字信号,通过一定的运算关系,改变输入信号中所含频率成分的相对比例,或则滤除某些频率成分的器件。对于数字滤波器而言,若系统函数为H(z),其脉冲响应为h(n),输入时间序列为x(n),则它们在时域内的关系式如下:y(n)=h(n)x(n) (1-1)在Z域内,输入和输出存在如下关系: Y(z)= H(z)X(z) (1-2)式中,X(z)、Y(z)分别为x(n)和y(n)的
14、Z变换。在频域内,输入和输出则存在如下关系:Y(j)=H(j)X(j) (1-3)式中,H(j)是数字滤波器的频率特性;X(j)Y(j)分别为x(n)和y(n)的频谱,而为数字角频率。 1.1.2 数字滤波器的分类数字滤波器可以有很多种分类方法,但总体上可分为两大类。一类称为经典滤波器,即一般的滤波器,其特点是输入信号中的有用成分和希望滤除的成分占用不同的频带,通过合适的选频滤波器可以实现滤波。例如,若输入信号中有干扰,信号和干扰的频带互不重叠,则可滤出信号中的干扰得到纯信号。但是,如果输入信号中信号和干扰的频带相重叠,则干扰就不能被有效的滤出。另一类称为现代滤波器,如维纳滤波器、卡尔曼滤波器
15、等,其输入信号中有用信号和希望滤除的成分频带重叠。对于经典滤波器,从频域上也可以分为低通、高通、带通和带阻滤波器。从时域特性上看,数字滤波器还可以分为有限冲激响应数字滤波器(FIR)和无限冲激响应数字滤波器(IIR)。对于有限冲激响应数字滤波器(FIR),其输出y(n)只取决于有限个过去和现在的输入,x(n),x(n-1),x(n-m),滤波器的输入输出关系可表示为y(n)= (1-4)对于无限冲激响应数字滤波器(IIR),它的输出不仅取决于过去和现在的输入,而且还取决于过去的输出,其差分方程为y(n)+= (1-5)该差分方程的单位冲激响应是无限延续的。 1.1.3常用滤波器的性能指标滤波器
16、性能一般用系统频率特性来说明,常用的性能指标主有以下三个参数:1. 幅度平方函数 (1-6)该性能指标主要用来说明系统的幅频特性。2. 相位函数 (1-7)其中: (1-8)该指标主要用来说明系统的相位特性。3. 群延时 (1-9)定义为相位对角频率导数的负值,说明了滤波器对不同的频率成分的平均延时。当要求在通带内的群延迟是常数时,滤波器相位响应特性是线性的。实际设计中所能得到的滤波器的频率特性与理想滤波器的频率特性之间存在着一些显著的差别,现以低通滤波器的频率特性为例进行说明。1.理想低通滤波器的特性:设滤波器输入信号为,信号中混入噪音,它们有不同的频率成分。滤波器的单位脉冲响应为。则理想滤
17、波器输出为: (1-10)即噪音信号被滤除,而信号无失真只有延时和线性放大。对上式作傅里叶变换得: (1-11)假定噪音信号被滤除,即: (1-12)整理得:h(t)t (1-13)图1-1 理想低通滤波器频率特性 图1-2 理想滤波器的单位脉冲响应假定信号频率成分为:,噪音频率成分为。则完成滤波的理想低通滤波器特性是: (1-14)即: (1-15) (1-16)系统的单位脉冲响应为: (1-17)理想低通滤波器的频率特性如图1-1所示,单位脉冲响应的波形如图1-2所示。理想滤波器具有非因果、无限长的单位脉冲响应和不连续的频率特性,要用稳定的线性时不变(LTI)系统来实现这样的特性是不可能的
18、。工程上是用脉冲响应为有限长的、因果的、稳定的线性时不变系统或具有连续频率特性的线性时不变系统来逼近理想特性。在满足一定的误差要求的情况下来实现理想滤波特性。因此实际的滤波器的频率特性如图1-3所示。通 带阻带过度带渡带图1-3实际滤波器频率特性 其中:截止频率 阻带起始频率过渡带宽在通带内幅度响应以的误差接近于1,即: (1-18)为阻带起始频率,在阻带内幅度响应以小于的误差接近于零,即: (1-19)为了使逼近理想低通滤波器的方法成为可能,还必须提供一带宽为的不为零的过渡带。在这个频带内,幅度响应从通带平滑的下落到阻带。1.2 MATLAB概述MATLAB是美国MathWorks公司开发的
19、一种功能极其强大的高技术计算语言和内容极其丰富的软件库,集数值计算、矩阵运算和信号处理与显示于一身。该软件最初是由美国教授Cleve Moler创立的。1980年前后,他在教线性代数课程时,发现用其他高级语言编程时极不方便,便构思开发了MATLAB,即矩阵实验室(Matrix Laboratory)。该软件利用了当时代表数值线性代数领域最高水平的EISPACK和LINPACK两大软件包,并且利用Fortran语言编写了最初的一套交互式软件系统,MATLAB的最初版本便由此产生了。 最初的MATLAB由于语言单一,只能进行矩阵的运算,绘图也只能用原始的描点法,内部函数只有几十个,因此功能十分简单
20、。1984年该公司推出了第一个MATLAB的商业版,并用C语言作出了全部改写。现在的MATLAB程序是MathWorks公司用C语言开发的,第一版由steve Bangert主持开发编译解释程序,Steve Kleiman完成图形功能的设计,John Little和Cleve Moler主持开发了各类数学分分析的子模块,撰写用户指南和大部分的M文件。接着又添加了丰富的图形图像处理、多媒体功能、符号运算和与其它流行软件的接口功能,使MATLAB的功能越来越强大。MTALAB系统主要由以下五个部分组成:(1)MATALB语言体系。 MATLAB是高层次的矩阵数组语言,具有条件控制、函数调用、数据结
21、构、输入输出、面向对象等程序语言特性。利用它既可以进行小规模端程,完成算法设计和算法实验的基本任务,也可以进行大规模编程,开发复杂的应用程序。(2)MATLAB工作环境 。这是对MATLAB提供给用户使用的管理功能的总称。包括管理工作空间中的变量据输入输出的方式和方法,以及开发、调试、管理M文件的各种工具。(3)图形句相系统 。这是MATLAB图形系统的基础,包括完成2D和3D数据图示、图像处理、动画生成、图形显示等功能的高层MATLAB命令,也包括用户对图形图像等对象进行特性控制的低层MATLAB命令,以及开发GUI应用程序的各种工具。(4)MATLAB数学函数库。这是对MATLAB使用的各
22、种数学算法的总称。包括各种初等函数的算法,也包括矩阵运算、矩阵分析等高层次数学算法。(5)MATLAB应用程序接口(API)。这是MATLAB为用户提供的一个函数库,使得用户能够在MATLAB环境中使用C程序或FORTRAN程序,包括从MATLAB中调用于程序(动态链接),读写MAT文件的功能。 除此之外,MATLAB系统还具有如下特点:(1)具有易学易用的语言体系;(2)具有交互式的工作环境;(3)具有多层面的图像处理系统;(4)具有丰富高效的MATLAB工具箱;(5)具有便利的程序接口(API);(6)应用领域广泛;(7)嵌入了面向对象编程语言。第2章 IIR滤波器的设计2.1 IIR滤波
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MATLAB 环境 数字滤波器 设计
链接地址:https://www.31ppt.com/p-4957773.html