基于matlab的fir数字滤波器设计及simulink仿真实现毕业设计(编辑修改稿)内容摘要:

学者的贡献。 甚至可以说, MATLAB 语言是自动控制领域学者和工程技术人员捧红的,因为在 MATLAB语言的发展进程中,很多有代表性的成就和控制界的要求与贡献是分不开的。 至今为止,大多数工具箱也都是控制方面的。 MATLAB 有很强大的方便实 用的绘图功能、数学运算能力及语言的高度集成性,它在其他科学与工程领域的应用也是越来越广,并且有着更广阔的应用前景和无穷无尽的潜能。 如果说有一种十分有效的工具能解决在教学和研究中遇到的问题,那么这种工具正是 MATLAB。 它可以帮助使用者从繁琐、无谓的底层编程中解放出来,把宝贵时间更多地花在解决问题中,这样肯定会提高工作效率。 现在, MATLAB 已经成为国际上最流行的科学与工程计算的软件工具,现在的 MATLAB 已经不单单是一个 “矩阵实验室 ”了,它已成为了一种具有广泛应用前景的全新的计算机高级编程语言了,有人称它 为 “第四代 ”计算机语言,它在国内外高校和研究部门正扮演着重要的角色。 MATLAB 的语言优势 概括的讲,整个 MATLAB 系统由两部分组成,即 MATLAB 内核及辅助工具箱,两者的调用构成了 MATLAB 的强大功能。 MATLAB 语言以矩阵为基本单位,包括输入输出、函数、数据结构、控制流语句及面向对象等特点的高级语言。 MATLAB 语言之所以能如此迅速地普及并被人们应用,显示出如此旺盛的生命力,是因为它有着不同于其他语言的特点。 被称作第四代计算 浙江科技学院本科毕业设计 4 机语言的 MATLAB,利用其丰富的函数资源,帮助编程 人员从繁琐的程序代码中解放出来。 MATLAB 的最突出的特点是简洁。 MATLAB 用直观的,符合人们思维习惯的代码,代替了 C 和Fortran 语言的冗长代码。 MATLAB 给用户带来的是最直观、最简洁的程序开发环境。 以下简单介绍一下 MATLAB 的主要特点: ( 1)语言简洁紧凑,使用方便灵活。 MATLAB 程序书写自由,利用其丰富的库函数避开繁杂的子程序编程任务,减缩了不必要的程序,由于库函数都有本领域的专家编写,用户不必担心函数的可靠性。 可以说,用 MATLAB 进行科技开发是站在专家的肩膀上。 ( 2)运 算符和库函数极其丰富。 由于 MATLAB 是用 C 语言编写的, MATLAB 提供了和 C语言几乎一样多的运算符,灵活使用 MATLAB 的运算符将使程序变得极为简短。 ( 3) MATLAB 不但具有结构化的控制语句(如 while 循环、 for 循环、 if 语句和 break 语句)还具有面向对象编程的特性。 ( 4)程序自由度大,语法限制不严格。 例如,在 MATLAB 里,用户无需对矩阵预定义就便可使用。 ( 5)程序的可移植性良好,几乎不做修改就可以在各种型号的计算机和操作系统上运行。 ( 6) MATLAB 的图 形功能强大。 在 Fortran 和 C语言里,绘图都不怎么容易,但在 MATLAB里,数据的可视化非常简单。 MATLAB 还具有很强的编辑图形界面的能力。 ( 7) MATLAB 另一大的特点就是具有较强大的工具箱。 MATLAB 包含两个部分:核心部分和各种可选的工具箱。 核心部分中有数百个核心内部函数。 其工具箱又可分为两类:功能性工具箱和学科性工具箱。 功能性工具箱主要用来扩充其符号计算功能、文字处理功能、图示建模仿真功能以及与硬件实时交互功能。 功能性工具箱能用于多种学科。 而学科性工具箱是专业性比较强的,如 control、 munication toolbox、 signal processing toolbox、 toolbox等。 这些工具箱都是由该领域内的学术水平很高的专家编写的,所以用于无需编写自己学科范围内的基础程序,而直接进行高、精、尖的研究。 ( 8) MATLAB 的缺点是,它和其他高级程序相比,程序的执行速度较慢。 由于 MATLAB 的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。 浙江科技学院本科毕业设计 5 2 滤波器技术概述 滤波器概述 凡是可以用来进行信号处理的装置或设备都可以称为滤波 器。 在近现代电信设备和各类控制系统中,滤波器应用极为普遍;在人们使用的所有的电子部件中,使用最多,技术最为复杂的可以说是滤波器了。 滤波器的质量直接决定产品的优劣,所以,对滤波器的研究和生产一直被生产商们所重视。 对于不同的 滤波器 ,每个 频率 范围的信号的强弱程度不同。 当使用在音频应用时,它可以被称为高频剪 切滤波器 , 或高音消除滤波器。 低通滤波器概念的形式有许多种,其中包括电子线路(如音频设备中使用的 hiss 滤波器、平滑数据的数字算法、音障( acoustic barriers)、图像模糊处理等等,这两个工具都是通过剔除掉短期波动、保留长期发展趋势提供了信号的平滑形式。 低通滤波器在信号处理中的作用等同于其它领域如金融领域中移动平均数( moving average)所起的作用;低通滤波器有很多种,其中,最通用的就是巴特沃斯滤波器和 切比雪夫滤波器。 滤波器各种形式的分类,一般可以归纳为如下几种。 ( 1)按被处理信号类型分类 按被处理信号类型分类,可分为模拟滤波器和离散滤波器两大类。 其中模拟滤波器又可分为有源、无源、异类三个小分类;离散滤波器又可分为数字、取样模拟、混合三个小分类。 ( 2)按选择的物理量分类 按选择物理量分类,滤波器可分为幅度选择、频率选择、信息选择(例如匹配滤波器)和时间选择(例如 PCM 制中的话路信号)等四类滤波器。 ( 3)按频率通带范围分类 按频率通带范围分类,滤波器可分为低通、 高通、带通、带阻、全通五个类别,而梳形滤波器属于带通和带阻滤波器,因为它有周期性的通带和阻带 [3]。 滤波器的工作原理 模拟滤波器的工作原理 大家都知道,凡是对模拟信号进行线性滤波的一种线性时不变系统就被称为模拟滤波器,如图 所示。 在时域内,它的动态特性可以用系统的单位冲激函数的响应 )(tha 来描述,也就是该滤波系统在任何时刻对输入单位冲激信号 txa =δ( t)的输出响应  thty aa 。 此函数从时域上反映了该滤波系统的传输特性。 对于任意输入信号 txa ,系统的输出 tya 可以用卷积来表示: 浙江科技学院本科毕业设计 6        dtxhty aaa   =       dthx aa 上式表明在对线性滤波器系统进行时域分析时,采用了叠加原理,先将任意输入信号的波形分成不同时间的窄脉冲之和,再分别求出各个脉冲通过滤波器之后的响应,再进行线性叠加从而得 出总的输出信号。 ( ) 图 模拟滤波器原理 在进行频域分析时,线性滤波器的转移函数 SHa 等于系统的单位冲激函数的响应 )(tha 的拉普拉斯变换:     dtehH stta ( ) 很明显,当 s=jω,上式就成为傅立叶变换的表达式,此表达式反映了滤波器的传输特性对各种频率的响应,也就是滤波器的频率响应函数  jHa ,它决定着滤波特性。 当滤波器输入信号 txa与输出信号 tya 进行拉普拉斯变换,得      sXsHsY aaa  ( ) 这表明两 信号卷积的变换等于各自变换的乘积。 在频谱关系上,一个输入信号的频谱  jaX ,经过滤波器的作用后,被变换成     jXjH aa 的频谱。 所以,根据不同的滤波要求来选定 jHa ,就可以得到不同类型的模拟滤波器。 还可以看出,滤波器的滤波过程就是完成信号txa 与它的单位冲激函数响应 tha 之间的数学卷积运算过程。 数字滤波器的 工作原理 在数字滤波中,我们大部分讨论的都是离散时间序列。 如图 所示。 设输入序列为 nx ,离散或数字滤波器对单位抽样序列 n 的响应为 nh。 因为 n 在时域离散信号系统中所起的tya 模拟 滤波器)(tha ,H(s) sya sxa txa 浙江科技学院本科毕业设计 7 作用就相当于单位冲激函数在时域连续信号系统中所起的作用一样。 图 数字滤波器原理 数字滤波器的序列 ny 即是这两个序列的离散卷积,即        k knxkhny ( ) 同样,两个序列卷积的 z 变换等于各自 z 变换的乘积,即      zXzHzY  ( ) 用 Tjez  代入上式,其中 T 为抽样周期,则得到      TjTjTj eXeHeY   ( ) 式中  TjeX  和  TjeY  分别为数字滤波器输入序列和输出序列的频谱,而  TjeH  为单位抽样序列响应 nh 的频谱。 由此可见,输入序列的频谱  TjeX  经过滤波后,变为   TjTj eXeH  ,按照  TjeX  的特点和我们处理信号的目的,选取适当的  TjeH  使的滤波后的    TjTj eXeH  符合我们的要求 [5]。 FIR低通滤波器 FIR滤波器的原理 在国内外的研究中,设计 FIR滤波器所涉及到的乘法运算方式:并行乘法、位串行乘法和采用分布式算法的乘法。 并行乘法虽然速度快,但是它占用的硬件资源极 大。 随着滤波器的阶数的增加,乘法器位数也随之增长很快,硬件规模将变得非常庞大。 位串行乘法器的实现方法主要是通过先对乘法运算进行分解,然后用加法器来完成乘法,也就是没有乘法操作的乘法器。 由于一个 8*8位的乘法器输出为 16位,为了能得到正确的 16位结果,串行输入的二进制补码数就得进行符号位扩展,就是在串行输入的 8位二进制补码数前面补 8个数字滤波器nh ,H(z) zx nx ny zy 浙江科技学院本科毕业设计 8 0(对正数 )或 8个 1(对负数 )后再输入乘法器。 如果每一位的运算都要用一个时钟周期的话,要得出正确结果就要 16个时钟周期,这就意味着这类乘法器要完全计算出结果,它的延迟必 将会很大。 所以位串行乘法器虽然可以使乘法器的硬件规模达到了最节省的优点,但是由于它是位串行运算,导致它的运算周期太长,而我们要折衷考虑速度与规模,那这就不是最优的选择了。 分布式算法 (distributed arithmetic, DA)的主要特点是巧妙地利用了 ROM查找表将固定系数的乘累加 (Multiply—accumulator, MAC)运算转化为查表操作,它与传统算法实现乘。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。