基于MATLAB的fir数字滤波器设计及simulink仿真实现设计

上传人:仙*** 文档编号:74553526 上传时间:2022-04-14 格式:DOC 页数:30 大小:572.08KB
收藏 版权申诉 举报 下载
基于MATLAB的fir数字滤波器设计及simulink仿真实现设计_第1页
第1页 / 共30页
基于MATLAB的fir数字滤波器设计及simulink仿真实现设计_第2页
第2页 / 共30页
基于MATLAB的fir数字滤波器设计及simulink仿真实现设计_第3页
第3页 / 共30页
资源描述:

《基于MATLAB的fir数字滤波器设计及simulink仿真实现设计》由会员分享,可在线阅读,更多相关《基于MATLAB的fir数字滤波器设计及simulink仿真实现设计(30页珍藏版)》请在装配图网上搜索。

1、2012届毕业设计题 目 基于Matlab的FIR低通滤波器设计及simulink仿真实现学 院 自动化与电气工程学院 专 业 测控技术与仪器 班 级 083 学 号 108034063 学生姓名 乔静兵 指导教师 施秧 完成日期 2012年5月25日 浙 江 科 技 学 院本 科 毕 业 论 文 (2012届) 题 目 基于Matlab的FIR低通滤波器设计及simulink 仿真实现 学 院 自动化与电气工程学院 专 业 测控技术与仪器 班 级 083 学 号 108034063 学生姓名 乔静兵 指导教师 施秧 完成日期 2012年5月25号 浙江科技学院毕业设计、学位论文版权使用授权书

2、本人 乔静兵 学号 108034063 声明所呈交的毕业设计、学位论文 基于Matlab的FIR低通滤波器设计及simulink仿真实现 ,是在导师指导下进行的研究工作及取得的研究成果。除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,与我一同工作的人员对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。本毕业设计、学位论文作者愿意遵守浙江科技学院 关于保留、使用学位论文的管理办法及规定,允许毕业设计、学位论文被查阅。本人授权 浙江科技学院 可以将毕业设计、学位论文的全部或部分内容编入有关数据库在校园网内传播,可以采用影印、缩印或扫描等复制手段保存、汇编

3、毕业设计、学位论文。(保密的学位论文在解密后适用本授权书)论文作者签名:乔静兵 导师签名: 施秧 签字日期: 2012 年5月 25日 签字日期: 2012 年 5 月 25日浙江科技学院本科毕业设计摘 要数字滤波器是数字信号处理的一个重要的技术分支。在现代电子系统中,FIR数字滤波器以其良好的线性特性被广泛使用,属于数字信号处理的基本模块之一。在工程实践中,一般对信号处理要求有实时性和灵活性,而已有的一些软件和硬件计算和实现方式则难以同时达到这两方面的要求。而随着EDA技术和可编程逻辑器件的发展,使用MATLAB计算及实现FIR滤波的技术已经非常成熟。随着滤波技术的发展,给人们带来了很多方便

4、不论是学习、生活还是工作中,都有着不可小觑的作用。在设计滤波器中,首先是基于Matlab软件,然后再利用Matlab里的simulink平台进行实现。本次毕业设计首先对滤波器的现状和已有的技术进行了深入的研究,在研究的基础上开发出一个基于MATLAB的FIR低通滤波器,通过编写程序,得到滤波器的仿真图,进行比较、分析。在这次毕业设计中,针对IIR和FIR滤波器各自的优点和缺点进行比较、分析,得出FIR的优点,得到最终设计FIR滤波器更为实用。实践证明,与其他的滤波器相比,FIR低通滤波器应用更为广泛。关键词: MATLAB;FIR;低通滤波器Abstract Digital filter is

5、 an important technical branch of a digital signal processing.In modern electronic systems, the FIR digital filter with good linearity is widely used, which belongs to one of the basic digital signal processing module .In engineering practice, the general signal processing need require the real time

6、 and flexibility, and some software and hardware computing and realization way is difficulty to achieve these two requirements at the same time.As EDA technology and programmable logic device development, the use of MATLAB algorithm and Realization of FIR filter has a very sophisticated technology.W

7、ith the filter technology development, bringing convenience to people whether it is learning, life and work, have an essential role.In the design of filter, the first is based on the Matlab software, and then using the Matlab simulink platform to achieve. MATLAB based on the FIR low-pass filter, the

8、 filter is obtained by writing a program, the simulation map, comparative, analysis.In this graduation design, IIR and FIR filter for the respective advantages and disadvantages are compared, analysis, obtains the advantages of FIR, to get the final FIR filter design is more practical.Practice has p

9、roved that, compared with other filters, the FIR low-pass filter is more widely applied.Keywords: MATLAB;FIR;Lowpass filter目 录摘要.Abstract.1 绪论. 11.1 课题研究背景.1 1.2 国内外现状和发展趋势. 11.3 MATLAB概述. .21.3.1 MATLAB发展历史.21.3.2 MATLAB的语言优势.32 滤波器技术概述.52.1 滤波器概述.52.2 滤波器的工作原理. .5 2.2.1 模拟滤波器的工作原理. .5 2.2.2 数字滤波器的

10、工作原理. .62.3 FIR低通滤波器 .7 2.3.1 FIR滤波器的原理.7 2.3.2 FIR滤波器的应用及特点.82.4 滤波器的基本特性.9 2.4.1 模拟滤波器与数字滤波器的基本特性.93 FIR低通滤波器设计.123.1 FIR低通滤波器设计.12 3.1.1 FIR低通滤波器设计原理.12 3.1.2 窗函数法设计及MATLAB实现原理.12 3.1.3 FIR数字滤波系统.133.2 窗函数法设计及MATLAB仿真.13 3.3 基于Matlab仿真系统.15 3.3.1 simulink仿真系统原理.15 3.3.2 simulink仿真系统. . . .16 3.3.

11、3 模型的创建和模型文件. . .16 3.3.4 simulink仿真. . .174 总结.21 致谢.22 参考文献.23231 绪 论1.1 课题研究背景 随着21世纪经济全球化的到来,人们的生活水平不断的提高,人们对精神文化的要求也越来越高,对周边环境的要求也日益提上了日程。喜欢高质量的影碟,安静的锻炼环境,修身养性的休憩场所,等等1。然而,不尽人愿的是,在现如今的一个高科技发展的世界中,在任何一个场所,都离不开各种机器设备的应用系统的运作。而在一个实际的应用系统中, 由于设备本身的缺陷和外界环境的无常变化, 总存在着各种干扰的影响,使信号中掺杂了各种噪音。比如音频信号中的混杂的高频

12、成分的噪声使得音乐听起来非常刺耳, 失去了原有的悦耳的音质。为了提高理想信号的信噪比, 可以对理想信号进行滤波, 尽可能的将信号滤除掉。滤波有模拟滤波和数字滤波之分, 但是随着信息时代和数字世界的到来, 数字信号处理已经成为当今一门非常重要的学科和技术领域, 它在图像、语音、通信、军事、雷达、自动控制、航空航天、医疗和家用电器等众多领域得到了广泛的应用。而在数字信号处理应用中, 数字滤波器十分重要并已获得广泛应用。在数字滤波中,又有IIR和FIR滤波器之分2,IIR数字滤波器的设计保留了一些典型的模拟滤波器优良的幅度特性,但它所涉及的滤波器相位特性通常情况下都是非线性的, 而FIR滤波器则可以

13、在即保证幅度特性又满足技术要求的同时, 也很容易地做到严格的线性的相位特性3。因此,FIR 高度的线性和稳定性使其受到了使用者很大的欢迎,将其广泛的应用在实际设计中。低通滤波对人们的生活如此重要,所以,进一步加深对低通滤波的研究将有及其重要的意义。1.2 国内外现状和发展趋势随着信息时代和数字世界的到来, 数字信号处理已成为当今一门及其重要的学科和技术领域。数字信号处理在通信、军事、医疗、自动控制、雷达、语音、航空航天、图像和家用电器等众多领域得到了广泛的应用。在数字信号处理应用中, 数字滤波器十分重要井已获得广泛应用。数字滤波是数字信号处理的一种重要算法,在数字信号处理应用中, 滤波占有十分

14、重要的地位,如对信号的过滤、检测、预测等, 都要广泛地用到滤波器。数字滤波器是使用最为广泛的装置,在工业、农业和其他行业均有应用。数字滤波器按其单位脉冲响应的长度可分为有限脉冲响应(FIR)滤波器和无限脉冲响应(IIR)滤波器两类。IIR数字滤波器的设计保留了一些典型模拟滤波器优良的幅度特性, 但所涉及的滤波器相位特性一般是非线性的, 而FIR滤波器则可在保证幅度特性并满足技术要求的同时, 也很容易做到严格的线性相位特性。FIR 滤波器的线性与稳定性使其应用更为广泛,这对于要求高保真度的信号处理有很重要意义。利用MATLAB 实现FIR 低通数字滤波器的设计,并对被高频干扰的信号进行滤波,达到

15、了预期结果。因而,不少学者针对MATLAB本身的特点及低通滤波器的特点和性能先后提出了许多针对性的想法。使得FIR低通滤波器的设计有了很大的改善。然而,随着数字信号的处理和EDA技术的发展,将对低通滤波器的设计提出更高的要求,因而,进一步加深对低通滤波器的研究是很有必要的。1.3 MATLAB概述1.3.1 MATLAB发展历史 MATLAB是“ 矩阵实验室 ”MATrix LABoratory 的缩写,是由美国MathWorks 公司开发的集符号计算、可视化和图形数值计算三大基本功能于一体,操作简单、功能强大的语言。MATLAB提供了一个人机交互的数学系统环境,此系统的基本数据结构是矩阵,在

16、生成矩陈对象时,不要求作明确的维数说明。 MATLAB语言的创造者是Cleve Moler教授,Cleve Moler教授在数值分析,特别是在线性代数的领域中有很大影响,他参与并编写了数值分析领域中的一些著名的著作和两个重要的Fortran程序:EISPACK和LINPACK。他曾经在斯坦福大学、密西根大学和新墨西哥大学担任数学与计算机科学教授。1980年前后,当时的新墨西哥大学计算机系主任Moler教授在教授线性代数时,发现用其他高级语言编程很不方便,因而构思并开发了MATLAB (MATrix LABoratory,即矩阵实验室),此软件利用当时的数值线性代数领域里最高水平的EISPACK

17、和LINPACK两大软件包中可靠的子程序,用Fortran语言编写了集科学计算、命令翻译于一身的一套交互式软件系统4。所谓交互式语言,指的是人们给出一条命令,立即就可以得出该命令的结果。该语言无需像C语言那样,先是要求人们去编写源程序,再对之进行编译、连接,最终才能形成可执行文件。这无疑会给使用者带来极大的方便。早期的MATLAB是用Fortran语言编写的,只能作矩阵运算;绘图也只能用极其原始的方法,即用星号描点的形式画图;内部函数也只提供了几十个。但即使其当时的功能十分简单,当它作为免费软件出现以来,还是吸引了大批的使用者。1984年,Cleve Moler和John Little成立了M

18、ath Works公司,Cleve Moler一直担任该公司的首席科学家。发行了Matlab第1版(DoS版本1.0)。正式把MATLAB推向市场。MATLAB的第一个商业化版本是同年推出的是3.0的DOS版本。并继续进行MATLAB的研究和开发,逐步将其发展成为一个集符号计算、数学建模、图像处理、数值处理、文字处理、图形处理、实时控制、信号处理、动态仿真为一体的数学应用软件。Matlab以商业形式出现后,仅短短几年,就以其良好的开放性和运行的可靠性,使原先控制领域里的封闭式软件包(如德国的KEDDC,瑞典的LUND和SIMNON,)纷纷淘汰,而改以Matlab为平台加以重建。The Math

19、Works公司于1992年推出了具有划时代意义的MATLAB 4.0版本,并于1993年推出了其微机版,可以配合Microsoft Windows一起使用,推出了MATLAB 4.1版。也是在这年(1993年)MathWorks公司从加拿大滑铁卢大学购得Maple的使用权,以Maple为“引擎”开发了Symbolic Math Toolbox 1.0。MathWorks公司因此加快结束了国际上数值计算、符号计算孰优孰劣的长期争论,促成了两种计算互补发展的新时代。1994年推出了4.2版本,其扩充了4.0版本的功能,尤其在图形界面的设计方面提供了新的方法。1997年推出的MATLAB 5.0版本

20、允许了更多的数据结构,如数据结构体、单元数据、对象与类、多维矩阵等,使其成为一种更方便编程的语言。1999年初推出的MATLAB 5.3版在许多方面又改进了MATLAB语言的功能。2000年10月底推出了其全新的MATLAB 6.0正式版(Release 12),在核心数值算法、外部接口、应用桌面、界面设计等诸多方面有了很大的改进。 虽然MATLAB语言是计算数学专家倡导并开发的,但其普及和发展离不开自动控制领域学者的贡献。 甚至可以说,MATLAB语言是自动控制领域学者和工程技术人员捧红的,因为在MATLAB语言的发展进程中,很多有代表性的成就和控制界的要求与贡献是分不开的。至今为止,大多数

21、工具箱也都是控制方面的。MATLAB有很强大的方便实用的绘图功能、数学运算能力及语言的高度集成性,它在其他科学与工程领域的应用也是越来越广,并且有着更广阔的应用前景和无穷无尽的潜能。如果说有一种十分有效的工具能解决在教学和研究中遇到的问题,那么这种工具正是MATLAB。它可以帮助使用者从繁琐、无谓的底层编程中解放出来,把宝贵时间更多地花在解决问题中,这样肯定会提高工作效率。 现在,MATLAB已经成为国际上最流行的科学与工程计算的软件工具,现在的MATLAB已经不单单是一个“矩阵实验室”了,它已成为了一种具有广泛应用前景的全新的计算机高级编程语言了,有人称它为“第四代”计算机语言,它在国内外高

22、校和研究部门正扮演着重要的角色。1.3.2 MATLAB的语言优势 概括的讲,整个MATLAB系统由两部分组成,即MATLAB内核及辅助工具箱,两者的调用构成了MATLAB的强大功能。MATLAB语言以矩阵为基本单位,包括输入输出、函数、数据结构、控制流语句及面向对象等特点的高级语言。 MATLAB语言之所以能如此迅速地普及并被人们应用,显示出如此旺盛的生命力,是因为它有着不同于其他语言的特点。被称作第四代计算机语言的MATLAB,利用其丰富的函数资源,帮助编程人员从繁琐的程序代码中解放出来。MATLAB的最突出的特点是简洁。MATLAB用直观的,符合人们思维习惯的代码,代替了C和Fortra

23、n语言的冗长代码。MATLAB给用户带来的是最直观、最简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点: (1)语言简洁紧凑,使用方便灵活。MATLAB程序书写自由,利用其丰富的库函数避开繁杂的子程序编程任务,减缩了不必要的程序,由于库函数都有本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发是站在专家的肩膀上。 (2)运算符和库函数极其丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。 (3)MATLAB不但具有结构化的控制语句(如while循环、for循环、if语句和

24、break语句)还具有面向对象编程的特性。 (4)程序自由度大,语法限制不严格。例如,在MATLAB里,用户无需对矩阵预定义就便可使用。 (5)程序的可移植性良好,几乎不做修改就可以在各种型号的计算机和操作系统上运行。 (6)MATLAB的图形功能强大。在Fortran和C语言里,绘图都不怎么容易,但在MATLAB里,数据的可视化非常简单。MATLAB还具有很强的编辑图形界面的能力。(7)MATLAB另一大的特点就是具有较强大的工具箱。MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又可分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充

25、其符号计算功能、文字处理功能、图示建模仿真功能以及与硬件实时交互功能。功能性工具箱能用于多种学科。而学科性工具箱是专业性比较强的,如control、communication toolbox、signal processing toolbox、toolbox等。这些工具箱都是由该领域内的学术水平很高的专家编写的,所以用于无需编写自己学科范围内的基础程序,而直接进行高、精、尖的研究。 (8)MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。 2 滤波器技术概述 2.1 滤波器概述凡是可以用来进

26、行信号处理的装置或设备都可以称为滤波器。在近现代电信设备和各类控制系统中,滤波器应用极为普遍;在人们使用的所有的电子部件中,使用最多,技术最为复杂的可以说是滤波器了。滤波器的质量直接决定产品的优劣,所以,对滤波器的研究和生产一直被生产商们所重视。对于不同的滤波器,每个频率范围的信号的强弱程度不同。当使用在音频应用时,它可以被称为高频剪切滤波器, 或高音消除滤波器。低通滤波器概念的形式有许多种,其中包括电子线路(如音频设备中使用的hiss 滤波器、平滑数据的数字算法、音障(acoustic barriers)、图像模糊处理等等,这两个工具都是通过剔除掉短期波动、保留长期发展趋势提供了信号的平滑形

27、式。低通滤波器在信号处理中的作用等同于其它领域如金融领域中移动平均数(moving average)所起的作用;低通滤波器有很多种,其中,最通用的就是巴特沃斯滤波器和切比雪夫滤波器。滤波器各种形式的分类,一般可以归纳为如下几种。(1)按被处理信号类型分类-按被处理信号类型分类,可分为模拟滤波器和离散滤波器两大类。其中模拟滤波器又可分为有源、无源、异类三个小分类;离散滤波器又可分为数字、取样模拟、混合三个小分类。(2)按选择的物理量分类-按选择物理量分类,滤波器可分为幅度选择、频率选择、信息选择(例如匹配滤波器)和时间选择(例如PCM制中的话路信号)等四类滤波器。(3)按频率通带范围分类 -按频

28、率通带范围分类,滤波器可分为低通、高通、带通、带阻、全通五个类别,而梳形滤波器属于带通和带阻滤波器,因为它有周期性的通带和阻带3。2.2 滤波器的工作原理2.2.1 模拟滤波器的工作原理大家都知道,凡是对模拟信号进行线性滤波的一种线性时不变系统就被称为模拟滤波器,如图1.1所示。在时域内,它的动态特性可以用系统的单位冲激函数的响应来描述,也就是该滤波系统在任何时刻对输入单位冲激信号=(t)的输出响应。此函数从时域上反映了该滤波系统的传输特性。对于任意输入信号,系统的输出可以用卷积来表示: = 上式表明在对线性滤波器系统进行时域分析时,采用了叠加原理,先将任意输入信号的波形分成不同时间的窄脉冲之

29、和,再分别求出各个脉冲通过滤波器之后的响应,再进行线性叠加从而得出总的输出信号。模拟滤波器,H(s) (1.2)图1.1模拟滤波器原理在进行频域分析时,线性滤波器的转移函数等于系统的单位冲激函数的响应的拉普拉斯变换: (1.3)很明显,当s=j,上式就成为傅立叶变换的表达式,此表达式反映了滤波器的传输特性对各种频率的响应,也就是滤波器的频率响应函数,它决定着滤波特性。当滤波器输入信号与输出信号进行拉普拉斯变换,得 (1.4)这表明两信号卷积的变换等于各自变换的乘积。在频谱关系上,一个输入信号的频谱,经过滤波器的作用后,被变换成的频谱。所以,根据不同的滤波要求来选定,就可以得到不同类型的模拟滤波

30、器。还可以看出,滤波器的滤波过程就是完成信号与它的单位冲激函数响应之间的数学卷积运算过程。2.2.2 数字滤波器的工作原理在数字滤波中,我们大部分讨论的都是离散时间序列。如图1.2所示。设输入序列为,离散或数字滤波器对单位抽样序列的响应为。因为在时域离散信号系统中所起的作用就相当于单位冲激函数在时域连续信号系统中所起的作用一样。数字滤波器,H(z)图1.2 数字滤波器原理数字滤波器的序列即是这两个序列的离散卷积,即 (1.5) 同样,两个序列卷积的z变换等于各自z变换的乘积,即 (1.6)用代入上式,其中T为抽样周期,则得到 (1.7)式中和 分别为数字滤波器输入序列和输出序列的频谱,而为单位

31、抽样序列响应的频谱。由此可见,输入序列的频谱经过滤波后,变为 ,按照的特点和我们处理信号的目的,选取适当的使的滤波后的符合我们的要求5。2.3 FIR低通滤波器2.3.1 FIR滤波器的原理在国内外的研究中,设计FIR滤波器所涉及到的乘法运算方式:并行乘法、位串行乘法和采用分布式算法的乘法。并行乘法虽然速度快,但是它占用的硬件资源极大。随着滤波器的阶数的增加,乘法器位数也随之增长很快,硬件规模将变得非常庞大。 位串行乘法器的实现方法主要是通过先对乘法运算进行分解,然后用加法器来完成乘法,也就是没有乘法操作的乘法器。由于一个8*8位的乘法器输出为16位,为了能得到正确的16位结果,串行输入的二进

32、制补码数就得进行符号位扩展,就是在串行输入的8位二进制补码数前面补8个0(对正数)或8个1(对负数)后再输入乘法器。如果每一位的运算都要用一个时钟周期的话,要得出正确结果就要16个时钟周期,这就意味着这类乘法器要完全计算出结果,它的延迟必将会很大。所以位串行乘法器虽然可以使乘法器的硬件规模达到了最节省的优点,但是由于它是位串行运算,导致它的运算周期太长,而我们要折衷考虑速度与规模,那这就不是最优的选择了。 分布式算法(distributed arithmetic,DA)的主要特点是巧妙地利用了ROM查找表将固定系数的乘累加(Multiplyaccumulator,MAC)运算转化为查表操作,它

33、与传统算法实现乘累加运算的不同在于执行部分积运算的先后顺序不同。就小位宽来说,DA算法设计的FIR滤波器的速度可以显著的超过基于MAC的设计。 相对于前两种方法,DA算法不但可以全并行实现,还可以全串行实现,还可以串并行结合实现,可以在硬件规模和滤波器速度之间作适当的折中,所以是现在被研究的主要方法。2.3.2 FIR滤波器的应用及特点 FIR滤波器具有幅度特性可随意设计、线性相位特性可严格精确保证等优点,因此在要求相位线性信道的现代电子系统,如图像处理、数据传输等波形传递系统中,具有很大吸引力。FIRIIR设计方法一般没有解析的设计公式,要借助于计算机程序完成。利用AF的设计图表,可简单有效

34、的完成设计。设计结果可得到幅频特性(可多带)和线性特性(优点)。只能得到幅频特性,想频特性未知(缺点),如需线性相位,须全通网络校准,但增加滤波器阶数和复杂程度。稳定性极点全部在原点(稳定)。无稳定性问题。因果性总是满足,任何一个非因果的有限长序列,总可以通过一定的延时,转变为因果序列。结构非递归递归系统运算误差一般无反馈,运算误差小。有反馈,由于运算中的四舍五入会产生极限环。快速算法可用FFT减少运算量。无快速运算方法。 噪声的基本定义是外来的不想要的干扰信号(或伴随着想要的信息一起发生的无关的或没有意义的数据)。FIR低通滤波器允许用户滤掉这些不想要的信号干扰。噪声可能有无穷无尽的来源,包

35、括设计内部来源或外部来源,噪声会挡住有用的信号。噪声会使您很难在一个信号中找到想要的信息,譬如说测量一个信号的真实电压。提高抖动,增加了定时测量的难度。 几乎处理电路的每个工作人员都要用一定的时间和精力去处理噪声,或者找出噪声来源修复它,或者减少噪声对测量的影响。设计工程师需要做的是找到干净的没有噪声的轨迹,然后把重点放在设计中预计的信号上。其它情况下,干净的轨迹可以用于报告和文档,清楚明白地显示设计运行情况。滤波器频率读数允许用户检定噪声的频率。即使在单次波形上,采集后仍可以使用这种调节,仔细地检测信号。有时也可以使用其它工具来降低信号上的噪声(如带宽限制器或平均模式),可是这些工具有许多限

36、制,如滤波频率有限,没有指定固定滤波,或只能用于重复信号上。用来减少信号上的噪声的其它工具(如带宽限制器或波形平均模式)只会去掉滤波频率以上的信号信息,或去掉不重复的毛刺。使用FIR低通滤波器过滤信号可以让使用者得到很好的效果。2.4 滤波器的基本特性2.4.1 模拟滤波器与数字滤波器的基本特性如果利用模拟电路直接对模拟信号进行处理则构成模拟滤波器,那么它是一个连续时间系统。如果利用离散时间系统对数字信号(时间离散、幅度量化的信号)进行滤波则便构成了数字滤波器。数字滤波器的差分方程可表示为: (1.8)系统函数表示: (1.9)数字滤波器的特性通常用其频率响应函数来描述,包括幅度特性和相位特性

37、。按信号通过系统时的特性(主要是幅频特性)来分类:可以有低通、高通、带通和带阻四种基本类型。(1) 低通数字滤波器:图1.3所示 (2.0)|H(ej)|c-c-22-fs/2-fsfs/2fs-fcfcf图1.3 低通数字滤波器的频谱(2) 高通数字滤波器:图1.4所示 (2.1)|H(ej)|c-c-22图1.4 高通数字滤波器的频谱(3)带通数字滤波器:图1.5所示 (2.2)|H(ej)|2-2-221-1图1.5 带通数字滤波器的频谱(4)带阻数字滤波器:图1.6所示 (2.3)1|H(ej)|2-2-22-1 图1.6 带阻数字滤波器的频谱3 FIR低通滤波器设计FIR滤波器之所以

38、被广泛使用,是由于他们存在的强大的设计算法,实现非递归的形式时有其固有的稳定性,可以实现线性相位的难易程度,在多速率情况下简单可扩展,充足的硬件支持。本演示展示了在过滤器的设计上具有多种特性的低通FIR滤波器设计工具箱功能。这里介绍的许多概念可以扩展到其他的反应,如高通,带通等。3.1 FIR低通滤波器设计3.1.1 FIR低通滤波器设计原理 FIR 数字滤波器可以用下面的差分方程来描述其中x(n)是输入序列,y(n)是输出序列,h(n)是系统的单位脉冲响应。由于其采用卷积的方法得到输出,所以可以采用快速算法FFT进行卷积计算,提高信号处理速度。FIR 数字滤波器之所以满足线性相位的条件是因为

39、其乘法器的系数关于中点对称,又因为其结构是无反馈的回路,所以是无条件的稳定系统。3.1.2 窗函数法设计及MATLAB 实现原理 目前FIR 滤波器常用的设计方法有窗函数法和频率采样法两种,窗函数法是从时域的角度去进行设计的,同样,频率采样法是从频域角度进行设计的。窗函数法由于既简单物理意义又清晰,因而得到了较为广泛的应用5。窗函数法设计的基本思想就是:首先,根据技术指标的要求,然后选取合适的阶数N和窗函数的类型w(n),使其幅频特性逼近理想滤波器的幅频特性。其次,因为理想滤波器的hd(n)是无限长的,所以就需要对hd(n)进行截断,数学上因此就称这种方法为窗函数法。但是在截断的过程中既要保证

40、FIR滤波器的稳定性又要保证它的线性相位的特性。由于截断效应会使所设计的滤波器的幅频特性存在一定的误差,将之称为吉布斯效应。最后,就是验证所设计的滤波器满不满足要求,若不满足要求,则重新设计。 常用的窗函数有大概六种,包括三角窗、矩形窗、凯塞窗和汉宁窗等。窗函数的选择一般要符合以下三个条件:(1)首先要具有较低的旁瓣幅度,尤其是第一旁瓣幅度;(2 )旁瓣幅度下降速度要快,以便利于增加阻带的衰减;(3 )主瓣宽度也要窄,以便获得较陡的过渡带。 MATLAB 为用户提供的是一种综合、简便的图形用户工具FDATool 滤波器设计分析工具箱,它几乎包括了信号处理工具箱中所有的滤波器设计方法6。利用这个

41、工具就可以使复杂的滤波器最佳设计方法变得很简单了, 用户只需要在FDATool 图形工具里面选择相应的滤波器设计方法,再填入滤波器设计的理想指标,就可为用户生成所需要的滤波器频率响应特性。3.1.3 FIR 数字滤波系统MathWorks 公司开发的Simulink 仿真系统是MATLAB软件里面的重要工具箱之一,它的主要功能就是实现系统的建模、仿真及其分析,从而可在实际的系统制作出来之前,提前对系统进行仿真及分析,并可以对系统做出适当的随时修正或按照仿真的最佳效果来调试和整定系统的参数,以便提高系统的性能,减少设计系统过程的时间,实现了高效率开发系统的目标7。利用MATLAB平台提供的Sim

42、ulink工具进行数字滤波系统的仿真,在建立仿真系统时,要注意选用数字模块,并进行其相应参数的设计。3.2 窗函数法设计及MATLAB 仿真 窗函数法设计是一种通过截短和计权的办法使无限长非因果序列变为有限长脉冲响应序列的设计方法。一般在设计滤波器之前, 应该先根据具体的要求来确定滤波器的技术指标8。然后建立目标数字滤波器的模型, 在这里通常先采用理想的数字滤波器模型, 然后根据数学知识和滤波器原理设计出一个实际的滤波器模型用来逼近给定的设计指标。 设计滤波器的常用窗函数有海明窗(Hamming)、矩形窗( Boxcar)、三角窗( barelett)、汉宁窗(Hanning)、布莱克曼窗(

43、Blackm an)等。本次设计是采用海明窗设计的FIR低通滤波器;程序如下:Fc = 0.4; N = 100; % FIR filter order Hf = fdesign.lowpass(N,Fc,N,Fc);Hd = design(Hf,window,window,hamming); hfvt = fvtool(Hd,Color,White); legend(hfvt,Hamming window design)Matlab仿真界面:图 1.7 仿真界面仿真效果图:图 1.8 仿真效果图 海明窗又叫做汉明窗,就拿语音信号打个比方吧,语音信号一般是在10ms到30ms之间,我们可以把它

44、看成是平稳的信号9。为了妥善处理语音信号,我们就得对语音信号进行加窗,也就是仅仅处理窗中的数据。由于实际的语音信号是很长的,但是我们不能也不必对很长的数据进行一次性处理的。最好的解决办法是每次取一段数据,来进行数据分析,然后接着再取下一段数据,再进行数据分析。仅取一段数据的方法就是构造一个函数。这个函数在某一个区间有非零值,但是在其余区间皆为0。汉明窗就是这样的一种函数10,它的主要部分的形状就像sin(x)在0到区间的形状,而其它部分的都是0。这样的函数乘上任何其他一个函数g,g只有一部分有非零值。因为加上了汉明窗,一个图形中只有中间的数据被体现出来了,其他的的数据信息都被丢失了,所以等到移

45、窗的时候,只会移1/3或1/2的窗,这样就把前一帧或前二帧丢失的数据又重新体现出来。 简单的说汉明窗其实就是个函数,它的形状非常像窗,所以与它类似的函数都叫做窗函数。现提取脉冲响应图如下:点击界面上的图标:得到脉冲响应:图 1.9 脉冲响应图3.3 基于Matlab的simulink仿真系统3.3.1 simulink仿真系统原理 系统级设计的核心就是在统一的开发环境中进行算法设计和系统设计仿真,从而有效地把开发流程的两个部分结合在一起。 要进行系统设计得需要一个统一的开发环境,并且在此开发环境中不仅可以对系统机构、算法进行描述,还要能够对系统不同的层次,不同的组件和不同的数据类型进行建模;同

46、时还要有良好的移植性能。Simulink为我们提供了一个很好的开发环境,它是一个基于图块的系统级仿真环境11。分级系统的描述方式为我们提供了真正的自顶向下的设计方法,而且通过图块的方式实现移植和建模。由美国的TI公司 和Math公司联合开发的对象即面向TI TMS320C6000 simulink 开发平台的嵌入式对象,使Matlab/simulink与TI/dsp工具结合为一体。这套软件能够使设计者利用Matlab平台,经概念设计到代码及自动生成模型,对设计的数字信号处理系统进行开发、验证。3.3.2 simulink仿真系统SIMULINK仿真系统是MATLAB软件的扩展,它是实现动态系统

47、建模和仿真的一个软件包,Simulink是一个进行动态系统建模、仿真和综合分析的集成软件包12。它与MATLAB语言的主要区别在于,它与用户的交互接口是基于Windows的模型化之后的图形输入,其结果是可以让用户把更多的精力投放在构建系统的模型上,而并不是其语言的编程上。 所说的模型化图形的输入就是指SIMULINK仿真系统提供了许多按功能来分类的基本的系统模块,我们使用者仅仅需要知道这些模块的输入输出及其各自的功能,而不用研究模块内部的功能是怎样实现的,通过调用这些基本模块,再把它们按需连接起来就能构成我们所需要的系统模型(以.mdl文件进行存取),进而进行仿真及分析。它可以处理的系统有:离

48、散、连续和混合系统;线性、非线性系统;单任务和多任务离散事件系统。在simulink提供的图形用户界面GUI上,要想构造出复杂的仿真模型只需要进行鼠标的简单拖拉操作就可以。它的外表采用方块图形式,且采用分层结构。从建模的角度讲,这不但适用于自上而下的设计流程(概念、功能、系统、子系统、直至器件),还适用于自下而上逆程设计。从分析研究的角度讲,这种simulink仿真模型不仅可以让客户知道具体环节的动态细节,而且还能让客户清晰的了解各器件、各子系统、各系统间的交换信息,以便客户掌握各部分间的交互影响。在simulink环境中,用户可以观察到现实世界中的非线性和各种随机因素对系统行为的影响。在si

49、mulink环境中,用户还可以在仿真进程中改变参数,实时的观察和记录系统行为的变化。3.3.3 模型的创建和模型文件Simulink模型有以下几个基层含义:1. 在视觉上表现为非常直观的方框图;2. 在文件上则是扩展名为mdl或ASCLL的代码;3. 在数学上则表现为一组微分方程或差分方程;4. 在行为上模拟了实际系统的动态特性。Simulink模型通常包含三个“组件”:信源:可以使用常数、时钟、白噪声、阶梯波、正弦波、脉冲生成器、扫频信号、随机数产生器等信号源;系统:即指被研究系统的SIMULINK方框图;信宿:可以是示波器、图形记录仪等。对于具体的SIMULINK模型而言,它不一定完全包含这三大组件。例如:研究初始条件对系统影响就不用包含信源组。SIMULINK模型的创建步骤:创建模型文件;选择对象;选择模块;进行连线;注释模型;常用的Source库信源;常用的Sink库信宿;仿真的配置。3.3.4 simulink仿真实现dsp Blockset为我们提供了200多个高级simulink和数学函数,包括变换、矩阵运算、FIR、IIR、多速率和自适应滤波、谱分析和实时数据I/O-所有的这些都是非常高效的基于帧的实现。dsp Blockset对于开发语音、音频和基带通信算法、基于传感器的信号处理应用都是很理想的。可以利用这个具有强大功能的软件MATLAB中专为

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!