基于matlab的FIR滤波器设计.doc_第1页
基于matlab的FIR滤波器设计.doc_第2页
基于matlab的FIR滤波器设计.doc_第3页
基于matlab的FIR滤波器设计.doc_第4页
基于matlab的FIR滤波器设计.doc_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘 要本文分析了国内外数字滤波技术的应用现状与发展趋势,介绍了数字滤波器的基本结构,在分别讨论了IIR与FIR数字滤波器的设计方法的基础上,分析二者的优缺点并重点介绍了基于matlab的FIR(有限长冲激响应)数字滤波器的三种设计方法。本文采用窗函数法,频率采样法和最优等波纹线性相位法,通过调用Matlab函数设计FIR数字滤波器,并绘制对应的幅频特性曲线。最后,运用三种滤波器对噪声信号进行滤波处理,通过分析滤波前后信号频谱的变化,验证三种滤波器的效果。关键词:数字滤波器,窗函数法,频率采样法,最优化设计法,幅频特性曲线,验证61目 录ABSTRACTThis paper analyzes the present situation of the application of digital filtering technology at home and abroad and the development trend, introduces the basic structure of the digital filter, respectively in IIR and FIR digital filter design method is discussed, on the basis of analysis the advantages and disadvantages of both and introduced based on the matlab the FIR (finite impulse response) digital filter of the three design methods. Window function method in this paper, the frequency sampling method and optimization design method, by calling Matlab function to design FIR digital filter, and draw the corresponding amplitude-frequency characteristic curve. In the end, using three kinds of filter to filter the noise signal, through the analysis of the change of signal spectrum before and after filtering, the validation of three kinds of filter effect.Key words: digital filter and window function method and frequency sampling method, the optimization design method, the amplitude-frequency characteristic curve, and validation.目录目 录第1章 引 言11.1滤波器的概念11.2滤波器的发展过程11.3滤波器的分类21.4 数字滤波器的研究背景与意义31.5 数字滤波器的现实运用及发展趋势41.6 数字滤波器的简介61.6.1 IIR数字滤波器71.6.2 FIR数字滤波器71.6.3 IIR与FIR数字滤波器的优缺点10第2章 FIR滤波器的设计112.1窗函数法设计FIR滤波器112.1.1 窗函数法的设计思路112.1.3 几种常用的窗口函数的讨论、比较132.2频率采样设计法FIR数字滤波器152.2.1 频率采样法的设计思路152.2.1 四中类型的线性相位FIR数字滤波器172.2.3 FIR数字滤波器的改进182.3 最优等波纹线性相位法设计FIR滤波器18第3章 Matlab简介203.1 matlab产生的历史背景203.2 matlab的语言特点213.2 matlab的功能233.3 matlab的优势25第4章 利用matlab实现FIR滤波器设计274.1 窗函数法的matlab实现274.1.1 kaiserord及fir1函数介绍274.1.2 两种滤波器的窗函数设计284.2 频率采样法的Matlab实现324.2.1 fir2函数介绍324.2.2 两种滤波器的频率采样法设计324.3 最优等波纹线性相位FIR滤波器的Matlab实现354.3.1 Firpm函数介绍364.3.2 最优等波纹线性相位FIR低通滤波器37第5章 结论395.1 对本文工作的总结395.2 本文存在的问题405.3 对今后工作学习的展望40参考文献41致谢42附录43附录一:利用Kaiser窗设计低通滤波器的程序43附录二:利用Hamming窗设计带通滤波器的程序44附录三:采用II型线性相位,频率采样滤波器设计的低通滤波器46附录四:频率采样滤波器设计的高通滤波器47附录五:最优等波纹线性相位FIR低通滤波器48外文资料原文50译文56第1章 引 言第1章 引 言1.1滤波器的概念滤波器是一种用来消除干扰杂讯的器件,将输入或输出经过过滤而得到纯净的交流电。您可以通过基本的滤波器积木块-二阶通用滤波器传递函数,推导出最通用的滤波器类型:低通、带通、高通、帯阻滤波器。传递函数的参数 、 、 、和 ,可用来构造所有类型的滤波器。转降频率 为s项开始占支配作用时的频率。设计者将低于此值的频率看作是低频,而将高于此值的频率看作是高频,并将在此值附近的频率看作是带内频率。阻尼 用于测量滤波器如何从低频率转变至高频率,它是滤波器趋向振荡的一个指标。实际阻尼值从0至2变化。高通系数 是对那些高于转降频率的频率起支配作用的分子的系数。带通系数 是对那些在转降频率附近的频率起支配作用的分子的系数。低通系数 是对那些低于转降频率的频率起支配作用的分子的系数。设计者只需这5个参数即可定义一个滤波器。1.2滤波器的发展过程凡是有能力进行信号处理的装置都可以称为滤波器。在近代电信装备和各类控制系统中,滤波器应用极为广泛;在所有的电子部件中,使用最多,技术最复杂要算滤波器了。滤波器的优劣直接决定产品的优劣,所以,对滤波器的研究和生产历来为各国所重视。1917年美国和德国科学家分别发明了LC滤波器,次年导致了美国第一个多路复用系统的出现。50年代无源滤波器日趋成熟。自60年代起由于计算机技术、集成工艺和材料工业的发展,滤波器发展上了一个新台阶,并且朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉方向努力,其中小体积、多功能、高精度、稳定可靠成为70年代以后的主攻方向,导致RC有源滤波器 、数字滤波器、开关电容滤波器和电荷转移器等各种滤波器的飞速发展。到70年代后期,上述几种滤波器的单片集成被研制出来并得到应用。80年代致力于各类新型滤波器性能提高的研究并逐渐扩大应用范围。90年代至今在主要致力于把各类滤波器应用于各类产品的开发和研制。当然,对滤波器本身的研究仍在不断进行。我国广泛使用滤波器是50年代后的事,当时主要用于话路滤波和报路滤波。经过半个世纪的发展,我国滤波器在研制、生产应用等方面已有一定进步,但由于缺少专门研制机构,集成工艺和材料工业跟不上来,使许多新型滤波器的研制应用与国际水平有一段距离。1.3滤波器的分类从大的方面分,滤波器分为模拟滤波器和数字滤波器。模拟滤波器有电阻,电容,电感,及由原器件构成;实际中数字滤波器应用的比较广泛。从实现方法上分,数字滤波器分为IIR和FIR,即无限冲激响应滤波器和有限冲激响应滤波器;其中IIR网络中有反馈回路,FIR网络中没有反馈回路。从小的方面分为:a) 按所处理的信号分为模拟滤波器和数字滤波器两种。b) 按所通过信号的频段分为低通、高通、带通和带阻滤波器四种。 其中:低通滤波器:它允许信号中的低频或直流分量通过,抑制高频分量或干扰和噪声。 高通滤波器:它允许信号中的高频分量通过,抑制低频或直流分量。 带通滤波器:它允许一定频段的信号通过,抑制低于或高于该频段的信号、干扰和噪声。 带阻滤波器:它抑制一定频段内的信号,允许该频段以外的信号通过。 c) 按所采用的元器件分为无源和有源滤波器两种: 其中:无源滤波器: 仅由无源元件(R、L 和C)组成的滤波器,它是利用电容和电感元件的电抗随频率的变化而变化的原理构成的。这类滤波器的优点是:电路比较简单,不需要直流电源供电,可靠性高;缺点是:通带内的信号有能量损耗,负载效应比较明显,使用电感元件时容易引起电磁感应,当电感L较大时滤波器的体积和重量都比较大,在低频域不适用。 有源滤波器:由无源元件(一般用R和C)和有源器件(如集成运算放大器)组成。这类滤波器的优点是:通带内的信号不仅没有能量损耗,而且还可以放大,负载效应不明显,多级相联时相互影响很小,利用级联的简单方法很容易构成高阶滤波器,并且滤波器的体积小、重量轻、不需要磁屏蔽(由于不使用电感元件);缺点是:通带范围受有源器件(如集成运算放大器)的带宽限制,需要直流电源供电,可靠性不如无源滤波器高,在高压、高频、大功率的场合不适用。 1.4 数字滤波器的研究背景与意义当今,数字信号处理(DSP:Digtal Signal Processing)技术正飞速发展,它不但自成一门学科,更是以不同形式影响和渗透到其他学科,它与国民经济息息相关,与国防建设紧密相连;它影响或改变着我们的生产、生活方式,因此受到人们普遍的关注。数字化、智能化和网络化是当代信息技术发展的大趋势,而数字化是智能化和网络化的基础,实际生活中遇到的信号多种多样,例如广播信号、电视信号、雷达信号、通信信号、导航信号、射电天文信号、生物医学信号、控制信号、气象信号、地震勘探信号、机械振动信号、遥感遥测信号,等等。上述这些信号大部分是模拟信号,也有小部分是数字信号。模拟信号是自变量的连续函数,自变量可以是一维的,也可以是二维或多维的。大多数情况下一维模拟信号的自变量是时间,经过时间上的离散化(采样)和幅度上的离散化(量化),这类模拟信号便成为一维数字信号。因此,数字信号实际上是用数字序列表示的信号,语音信号经采样和量化后,得到的数字信号是一个一维离散时间序列;而图像信号经采样和量化后,得到的数字信号是一个二维离散空间序列。数字信号处理,就是用数值计算的方法对数字序列进行各种处理,把信号变换成符合需要的某种形式。例如,对数字信号经行滤波以限制他的频带或滤除噪音和干扰,或将他们与其他信号进行分离;对信号进行频谱分析或功率谱分析以了解信号的频谱组成,进而对信号进行识别;对信号进行某种变换,使之更适合于传输,存储和应用;对信号进行编码以达到数据压缩的目的,等等。数字滤波技术是数字信号分析、处理技术的重要分支。无论是信号的获取、传输,还是信号的处理和交换都离不开滤波技术,它对信号安全可靠和有效灵活地传输是至关重要的。在所有的电子系统中,使用最多技术最复杂的要算数字滤波器了。数字滤波器的优劣直接决定产品的优劣。1.5 数字滤波器的现实运用及发展趋势信号处理过程中,所处理的信号往往混有噪音,故而从包含噪声的信号中消除或减弱噪音在信号传输和处理中具有非常重要价值。根据有用信号和噪音的不同特性,提取有用信号,其过程称为之滤波,实现滤波功能的系统称为滤波器。在近代电信设备和各类控制系统中,数字滤波器应用极为广泛,这里只列举部分应用最成功的领域。(1)语音处理 语音处理是最早应用数字滤波器的领域,也是最早推动数字信号处理理论发展的领域。其中主要包括5个方面的内容:第一,语音信号分析。即对语音信号的波形特征、统计特性、参数等进行分析、计算;第二,语音合成。即利用专用数字硬件或在通用计算机上运行软件来产生语音;第三,语音识别。即用专用硬件或计算机识别人讲的话,或者识别说话的人;第四,语音增强。即从噪音或干扰中提取被掩盖的语音信号。第五,语音编码。主要用于语音数据压缩。近年来,这5个方面都取得了不少研究成果,并且,在市场上已出现了一些相关的软件和硬件产品,例如,盲人阅读机、口授打印机、语音应答机,各种会说话的仪器和玩具,以及通信和视听产品大量使用的音频压缩编码技术。(2)通信在现代通信技术领域中,几乎全部都受到数字滤波技术的影响。信源编码、信道编码、调制、多路复用、数据压缩以及自适应信道均衡等,都广泛地采用数字滤波器,特别是在数字通信、网络通信、图像通信、多媒体通信等应用中,都不可能离开了数字滤波器。(3)图像处理数字滤波技术以成功地应用于静止图像和活动图像的恢复和增强、数据压缩、去噪音和干扰、图像识别,还成功地应用于雷达、声纳、超声波和红外信号的可见图像成像。(3)雷达雷达信号占有的频带非常宽,数据传输速率也非常高,因而压缩数据量和降低数据传输速率是雷达信号数字处理面临的首要问题。高速数字器件的出现促进了雷达信号处理技术的进步。在现代雷达系统中,数字信号处理部分是不可或缺的,因为从信号的产生、滤波、加工到目标参数的估计和目标成像显示都离不开数字滤波技术。(6)声纳声纳信号处理分为两大类,即有源声纳信号处理和无源声纳信号处理,有源声纳系统涉及的许多理论和技术与雷达系统相同。例如,他们都要产生和发射脉冲式探测信号,他们的信号处理任务都主要是对微弱的目标回波进行检测和分析,从而达到对目标进行探测、定位、跟踪、导航、成像显示等目的,他们要应用到的主要信号处理技术包括滤波、门限比较、谱估计等。(7)生物医学信号处理 数字滤波器在医学中的应用日益广泛,如对脑电图和心电图的分析、层析X射线摄影的计算机辅助分析、胎儿心音的自适应检测等。(8)其他领域数字滤波器的应用领域如此广泛,以至于想完全列举他们是根本不可能的,除了以上几个领域外,还有很多其他的应用领域。例如,在军事上被大量应用于导航、制导、电子对抗、战场侦察;在电力系统中被应用于能源分布规划和自动检测;在环境保护中被应用于对空气污染和噪声干扰的自动监测,在经济领域中被应用于股票市场预测和经济效益分析等等。1.6 数字滤波器的简介滤波就是有选择性地提取或去掉(或削弱)某一段或某几段频率范围内的信号,数字滤波器是一个离散的系统,通过对输入的离散信号进行一系列运算处理,从输入的信号中获得所需要的信息。数字滤波器的系统函数通常表示为 (1-1)其中均为滤波器参数。在(1-1)中,当值不全为零值时, 必定含有一个或一个以上的极值点,此时单位脉冲响应为无限长,对于一个因果稳定的数字滤波器来说,系统函数所有极点必须在单位圆内,因而把含有这样极值点的系统函数的数字滤波器称为无限脉冲响应数字滤波器(Infinite Impulse Response),即IIR数字滤波器。而当值全为零时,系统函数只有一个零点,(1-1)表示的系统函数可以写成: (1-2)公式(1-2)表明,FIR滤波器的系统函数是的阶多项式,在有限平面上有个零点,而在平面原点处有极点。(1-2)式表示的系统,其单位脉冲响应可以表示为:(1-3)在(1-3)中,只有当,有非零值,数字滤波器的脉冲响应是有限长的,把这种数字滤波器称为有限脉冲响应数字滤波器(Finite Impulese Response),即FIR数字滤波器。设计一个数字滤波器一般包括以下三步:a) 按照任务要求,确定滤波器的性能,例如,需要滤除哪些频率分量,保留哪些频率分量,保留的部分允许有多大的幅度或相位失真等。 b) 用一个因果稳定的离散线性时不变系统的系统函数去逼近这一性能要求。c) 数字滤波器的实现。其中包括选择运算结构,确定运算和系数的存储字长,选用通用计算机及相应的软件或者专用数字滤波器硬件实现这一系统。1.6.1 IIR数字滤波器无限脉冲响应(IIR)数字滤波器的设计就是在给定的技术指标下去确定滤波器的阶数N和系数 , 。通常先设计一个合适的模拟滤波器,然后变换成满足预定指标的数字滤波器。由于模拟滤波器的设计技术相对成熟,不仅有高效的设计方法,而且有各种现成的设计软件,故而可以广泛使用。1.6.2 FIR数字滤波器N阶系统函数可以写成: (1-4)FIR滤波器的频率响应为 (1-5)它的另外一种表示方法为 (1-6)其中和分别为系统的幅度响应和相位响应。线性相位,群时延 为常数。=0或者,对应两类线性相位特性。严格地说第二种情况是不具有线性相位特性的,但都满足群延迟是一个常数,仍可以视为具有线性相位的。对于N-1阶FIR数字滤波器,频率响应为 (1-7)显然,等式中间和右边的实部与虚部各自相等,同样,各自实部与虚部的比值也相等,故 (1-8)将(1-8)式两边交相叉乘,再运用三角函数的恒等关系,得 (1-9)下面分别讨论两种线性相位第I类线性相位特性: ,初始相位=0,是一个与无关的常数相位响应是一条通过原点的直线,式(1.9)可以写成 (1-10)由于关于序列中心点 (1-11)奇对称,因此只要关于中心点偶对称,则(1-10)式成立,即 (1-12)第II类线性相位特性: ,初始相位=,是一个与无关的常数相位响应不是一条通过原点的直线,有一个在纵轴上的截距,式(1-9)可以写成 (1-13)由于关于序列中心点对称,所以只要关于中心点奇对称,则(1-10)式成立,即 (1-14)表1-1 四种线性相位FIR滤波器的性质类型IIIIIIIV阶数N-1偶数奇数偶数奇数hn的对称性偶对称偶对称奇对称奇对称相位特 幅频特性关于 对称性偶对称偶对称奇对称奇对称幅频特性关于对称性偶对称奇对称奇对称偶对称幅频特性周期 任意任意00 任意00任意可适用的滤波器类型LP,HP,BP,SPLP,BP微分器,变换器,Hilbert微分器,变换器,Hilbert,HP资料来源:姚天仁.数字信号处理综上所述:单位冲激响应应满足(1-12)或者(1-14)的条件,即关于序列中心点偶对称或者奇对称的FIR滤波器,都具有线性相位,而且群时延都等于,N-1是滤波器的阶数。同时,N-1取偶数或者奇数,分别对应四中线性相位滤波器,四种线性相位FIR滤波器的性质如表1-1所示1.6.3 IIR与FIR数字滤波器的优缺点a) 对于幅频特性而言,IIR滤波器可以用较少的阶数获得相同技术指标,这样所需的存储单元少,运算次数少,较为经济。b) FIR滤波器可得到严格的线性相位,而IIIR滤波器则做不到这一点,IIR滤波器的频率选择性越好,则相位的非线性越严重。IIR滤波器加全通网络补偿才能得到线性相位,这同样大大的增加了滤波器的阶数和复杂性。c) FIR滤波器不存在内部的反馈,因而系统稳定。FIR滤波器的有限精度误差较小。IIR滤波器的反馈有时会造成系统的不稳定,为了较少运算误差,IIR滤波器对运算的精度要求也比较高。d) FIR滤波器可以用快速傅里叶变换(FFT)算法减少运算量,IIR滤波器则不可能这么计算。e) 从设计工作看,IIR滤波器可以借助原型模拟滤波器的设计方法和设计程序,其设计计算的工作量不大,但主要用于设计频率特性为分段常数的低通,高通,带通,带阻等类型的滤波器。FIR滤波器设计则无法借助于原型模拟滤波器的设计方法。第2章 FIR滤波器的设计第2章 FIR滤波器的设计FIR数字滤波器的设计方法主要有窗函数设计法、频率采样设计法、最优等波纹线性相位,其中窗函数设计法是最常用的,其次是频率采样法,虽然这两种设计方法简单易行,但在实际工程应用中,有时会偏离设计指标,存在不足,故而,采样最优等波纹线性相位FIR滤波器设计法,三种设计方法中,第三中最精确。 2.1窗函数法设计FIR滤波器2.1.1 窗函数法的设计思路窗函数设计法是FIR数字滤波器里最简单的一种设计法,又叫傅里叶级数法。一般设计过程总是先给定一理想的滤波器频率响应,然后设计一个FIR滤波器,用它的频率响为 (2-1)来逼近理想的。这种逼近中最直接的方法,是在时域中用FIR滤波器的单位脉冲响应h(n)去逼近理想的单位脉冲。因而,先由的IDTF导出 (2-2)滤波器是有限长的,所以要用有限长的h(n)来逼近无限长的,最简单的方法是截取中最重要的一段,将无限长的截取成长度为N的有限长序列,等效于在上施加了一个长度为N的矩形窗口,更一般的,可以用一个长度为N的窗口函数来截取,即 (2-3)这种方法即窗口设计法,窗口函数的形状及长度N的选择是窗口设计法的关键。这里以截止频率为的线性相位理想低通滤波器为例,讨论FIR滤波器的设计问题。 给定的理想低通滤波器为 (2-4)其中 为低通相位特性的常系数通过傅里叶反变换得到对应的为: (2-5)是中心点在 的偶对称的无限长非因果序列,截取n=0N-1的一段长度为N的序列,在保证h(n)为因果下,设定 (2-6)所得h(n)表示为: (2-7) 其中 表示窗函数,一般用下标来表示窗函数的类型,矩形窗记为 。2.1.2吉布斯现象 理想滤波器的单位脉冲响应在经窗函数加权后,通带截止频率 处的间断点变成了连续曲线,从而使出现一个过渡带,由此过渡带所带来的通带和阻带的振荡和波动,即吉布斯现象。过渡带的宽度取决于窗函数的主瓣宽度,增加截取长度N,主瓣变窄,减少过度带宽,但不会改变尖峰的相对值(主瓣和旁瓣的相对比例)。在矩形窗下,最大的尖峰值都是8.95。为了减少序列因截断而产生的Gibbs效应,窗函数在设计时需要注意:a) 主瓣宽度要小,以获得较陡的过渡带。b) 与主瓣的幅度相比,旁瓣尽量小,以减小带内,带外波动的最大振幅。二者很难同时满足,故采取折衷,即在保证主瓣宽度的前提下,适当的牺牲主瓣来换取旁瓣波动的减小。2.1.3 几种常用的窗口函数的讨论、比较a) 矩形窗 (2-8) 频谱为 (2-9)幅度函数为 (2-10)矩形窗的主瓣宽度为。用矩形窗设计的FIR滤波器过渡带宽度近似为 。b) 汉宁(Hanning)窗,又称升余弦窗 (2-11)幅度函数近视为 (2-12)这三部分之和,使旁瓣相互抵消,能量集中在主瓣。但代价是主瓣宽度比矩形窗的主瓣宽度增加一倍,即为。c) 汉明(Hamming)窗,又称改进的升余弦窗 (2-13) 幅度函数近视为 (2-14)它是汉宁窗的改进,在主瓣宽度(对应第一零点宽度)相同的情况下,旁瓣进一步减小,可使99.96的能量集中在窗谱的主瓣内。d) 布莱克曼(Blackman)窗,又称三阶升余弦窗 (2-15)幅度函数近视为 (2-16)增加一个二次谐波余弦分量,可进一步降低旁瓣,但主瓣宽度进一步增加,为。e) 凯塞(Kaiser)窗凯塞窗是一种最优窗函数,不同于前面四种窗函数,凯塞窗是一种参数可调的窗函数,其函数形式如下: (2-17)是零阶修正贝塞尔函数,参数可自由选择,决定主瓣宽度与旁瓣衰减。越大,w(n)窗越窄,其频谱的主瓣变宽,旁瓣变小。一般取 49=5.44 接近汉明=8.5 接近布莱克曼=0 为矩形不同窗函数的比较如下表2-1:表2-1 不同窗函数的比较窗函数主瓣带宽过渡带带宽旁瓣峰值衰减(dB)阻带最小衰减(dB)矩形-13-21汉宁-31-44汉明-41-53布莱克曼-57-74资料来源:吴镇扬的数字信号处理窗函数法设计的滤波器设计方法简单,而且通常能够设计出性能较好的滤波器。但有三大主要缺点:(a)无论怎么改变截取长度N,采取何种窗函数设计,都无法消除吉布斯现象。只能是较少通带的波动,增加阻带的衰减。(b)不能分别控制通带和阻带的波动幅度,窗函数设计的滤波器具有基本相等的波纹幅度。但在实际中,通常要求阻带波纹幅度要比通带波纹幅度小很多,因此,用窗函数设计的滤波器,当阻带波纹满足设计要求时,通带波纹幅度就必然远小于设计指标,即通带波纹的过设计。(c)大多数窗函数设计的滤波器,其通带或阻带内的波纹不是等福的。具体而言,在过渡带附近波纹最大,随着远离过渡带,波纹幅度逐渐减小。因此在设计滤波器时,总是以过渡带附近的最大波纹幅度作为设计指标要求。这样设计出的滤波器,在远离过渡带的频率范围内,通带或者阻带内的波纹都是过设计。2.2频率采样设计法FIR数字滤波器2.2.1 频率采样法的设计思路根据要求的理想频率响应选定N个取样值,令=,计算 的N点IDFT便得到设计的FIR滤波器的冲激响应h(n)。思路简单,但是, h(n)的频率响应是否准确等于要求的频率响应,如何最好的逼近。简要的具体方法如图2-1所示h(n)要求的冲激响应周期延展 DTFTh(n)N点取样IDFT设计的滤波器冲激响应要求的频率响应 DTFT逼近 设计的滤波器频率响应 数据来源: 日谷萩隆嗣图2-1 频率采样法的简要框图频率采样法的具体方法:频率采样法是从频率出发,对理想的频率响应等间隔采样, (2-18)以作为实际的FIR滤波器的频率特性的离散样本H(k),再有H(k)通过IDFT求出有限长序列h(n)为 (2-19)利用N个频率的离散样本H(k),求出FIR滤波器的系统函数H(Z)及频率响应 (2-20)在单位圆上的频响为 (2-21)这是一个内插公式,其中是内插函数,令 则 (2-22)由此:频响在采样点等于H(K),而在采样点之间等于采样值的内插函数延伸叠加形成。故而有一定的误差,其大小取决于理想频率响应的曲线形状。采样点之间的变化越陡,误差越大,因而在理想频率特性的不连续点附近,出现尖峰和波纹,反之,亦然。当然,增大N值,可以减小逼近误差,但间断点附近误差仍然最大,且N太大会增加滤波器级数与成本。2.2.1 四中类型的线性相位FIR数字滤波器为了设计线性相位的FIR滤波器,采样值 要满足一定的约束条件,见表(1-1)a) 第I类线性相位FIR数字滤波器,h(n)偶对称,N为奇数,线性相位FIR滤波器在之间的值可由确定,在的值确定后,对做N点的IDFT即可得到I型线性相位滤波器的hn。b) 第II类线性相位FIR数字滤波器,h(n)偶对称,N为偶数,线性相位FIR滤波器在之间的值可由 确定。c) 第III类线性相位FIR数字滤波器,h(n)奇对称,N为奇数,线性相位FIR滤波器在之间的值可由确定。d) 第IV类线性相位FIR数字滤波器,h(n)奇对称,N为偶数,线性相位FIR滤波器在之间的值可由确定。2.2.3 FIR数字滤波器的改进为了提高滤波器的质量并减少误差,可以采用人为地扩展过渡带的方法,即在频率相应的过渡带内插入一个或多个比较连续的采样点,使得过渡带比较连续,从而使得通带和阻带之间变法比较缓慢,使得设计得到的滤波器对理想滤波器的逼近误差较小。在理想低通滤波器的设计中,若不增加过渡点,阻带和通带之间的衰减约为-21dB,如果在通带和阻带之间增加一个采样点,阻带的最小衰减可以提高到-65dB,如果增加两个采样点,阻带的最小衰减可以提高到-75dB,如果增加3个采样点,阻带的最小衰减可以提高到-85dB至-95dB。2.3 最优等波纹线性相位法设计FIR滤波器在最优化设计中,“最优”的准则有两种:均方误差最小准则和最大误差最小准则。窗函数法设计的滤波器在定义均方误差最小的意义上是最优的,频率取样法以阻带衰减最大为目标对过渡带的取样值进行优化。而最优等波纹线性相位法所依据的最优化准则是使通带和阻带内的最大误差的绝对值最小化。等波纹逼近法是一种优化设计方法,它克服了窗函数设计法和频率采样法的缺陷,是最大误差最小化设计方法,并在整个逼近频段上均匀分布。为希望逼近的幅度特性函数,为实际设计的幅度特性函数,定义加权误差函数为 (2-23)式中,被称为误差加权函数,是由设计者定义的,用来控制不同频段的逼近精度。经过推导可把统一标示为: (2-24)式中,是系数不同的余弦组合式,记 (2-25)是不同的常数,在设计FIR滤波器时存在四种线性相位,当 且奇对称时,N为奇数,为1;N为偶数时, 为 ;而当偶对称时,不管N为奇数还是偶数,都取。等波纹逼近的问题就是选择N个系数 ,使加权误差的最大值最小。设定误差加权函数、通带波纹峰值 及N+1个初始频率 ,i=0,1,2,N,计算各个频率点上的加权误差函数值,如果这些加权误差函数值小于等于给定的通带波纹峰值,则为最佳频率点;如果某个频率点上的加权误差函数值大于给定的通带波纹峰值 ,就用Remez算法更新迭代查找最佳频率点。找到最佳频率点后,计算的系数及。借助Remez算法来设计等波纹的FIR数字滤波器的步骤如下:给出所需的频率响应、误差加权函数和单位脉冲响应的长度N,根据具体情况,进行 统一表达式的转换;设定初始频率点和通带波纹值,采用Remez算法计算最佳频率点组,由最佳频率点组计算及系数,根据求出的的表达式再利用傅里叶逆变换求得滤波器的单位脉冲响应 。第3章 Matlab简介第3章 Matlab简介MATLAB是由美国Mathworks公司推出的用于数值计算和图形处理的科学计算系统环境。MATLAB是英文MATrix LABoratory(矩形实验室)的缩写。在MATLAB环境下,用户可以集成地进行程序设计,数值计算,图形绘制,输入输出,文件管理等各项操作。除此之外,MATLAB还具有很强的功能扩展能力,与它的主系统一起,可以配备各种各样的工具箱,以完成一些特定的任务。目前,Mathworks公司推出了18种工具箱。用户可以根据自己的工作任务,开发自己的工具箱。3.1 matlab产生的历史背景在70年代中期,Cleve Moler博士和其同事在美国国家科学基金的资助下开发了调用EISPACK和LINPACK的FORTRAN子程序库.EISPACK是特征值求解的FOETRAN程序库,LINPACK是解线性方程的程序库.在当时,这两个程序库代表矩阵运算的最高水平.到70年代后期,身为美国New Mexico大学计算机系系主任的Cleve Moler,在给学生讲授线性代数课程时,想教学生使用EISPACK和LINPACK程序库,但他发现学生用FORTRAN编写接口程序很费时间,于是他开始自己动手,利用业余时间为学生编写EISPACK和LINPACK的接口程序. Cleve Moler给这个接口程序取名为MATLAB,该名为矩阵(matrix)和实验室(labotatory)两个英文单词的前三个字母的组合.在以后的数年里,MATLAB在多所大学里作为教学辅助软件使用,并作为面向大众的免费软件广为流传.1983年春天,Cleve Moler到Standford大学讲学,MATLAB深深地吸引了工程师JohnLittle.John Little敏锐地觉察到MATLAB在工程领域的广阔前景.同年,他和CleveMoler,Steve Bangert一起,用C语言开发了第二代专业版.这一代的MATLAB语言同时具备了数值计算和数据图示化的功能.1984年,Cleve Moler和John Little成立了Math Works公司,正式把MATLAB推向市场,并继续进行MATLAB的研究和开发.在当今30多个数学类科技应用软件中,就软件数学处理的原始内核而言,可分为两大类.一类是数值计算型软件,如MATLAB,Xmath,Gauss等,这类软件长于数值计算,对处理大批数据效率高;另一类是数学分析型软件, Mathematica,Maple等,这类软件以符号计算见长,能给出解析解和任意精确解,其缺点是处理大量数据时效率较低.MathWorks公司顺应多功能需求之潮流,在其卓越数值计算和图示能力的基础上,又率先在专业水平上开拓了其符号计算,文字处理,可视化建模和实时控制能力,开发了适合多学科,多部门要求的新一代科技应用软件MATLAB.经过多年的国际竞争,MATLAB以经占据了数值软件市场的主导地位.在MATLAB进入市场前,国际上的许多软件包都是直接以FORTRANC语言等编程语言开发的。这种软件的缺点是使用面窄,接口简陋,程序结构不开放以及没有标准的基库,很难适应各学科的最新发展,因而很难推广。MATLAB的出现,为各国科学家开发学科软件提供了新的基础。在MATLAB问世不久的80年代中期,原先控制领域里的一些软件包纷纷被淘汰或在MATLAB上重建。时至今日,经过MathWorks公司的不断完善,MATLAB已经发展成为适合多学科,多种工作平台的功能强大大大型软件。在国外,MATLAB已经经受了多年考验。在欧美等高校,MATLAB已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具;成为攻读学位的大学生,硕士生,博士生必须掌握的基本技能。在设计研究单位和工业部门,MATLAB被广泛用于科学研究和解决各种具体问题。在国内,特别是工程界,MATLAB一定会盛行起来。可以说,无论你从事工程方面的哪个学科,都能在MATLAB里找到合适的功能。3.2 matlab的语言特点一种语言之所以能如此迅速地普及,显示出如此旺盛的生命力,是由于它有着不同于其他语言的特点,正如同FORTRAN和C等高级语言使人们摆脱了需要直接对计算机硬件资源进行操作一样,被称作为第四代计算机语言的MATLAB,利用其丰富的函数资源,使编程人员从繁琐的程序代码中解放出来。MATLAB最突出的特点就是简洁。MATLAB用更直观的,符合人们思维习惯的代码,代替了C和FORTRAN语言的冗长代码。MATLAB给用户带来的是最直观,最简洁的程序开发环境。以下简单介绍一下MATLAB的主要特点:a) 语言简洁紧凑,使用方便灵活,库函数极其丰富。MATLAB程序书写形式自由,利用起丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。由于库函数都由本领域的专家编写,用户不必担心函数的可靠性。可以说,用MATLAB进行科技开发是站在专家的肩膀上。b) 运算符丰富。由于MATLAB是用C语言编写的,MATLAB提供了和C语言几乎一样多的运算符,灵活使用MATLAB的运算符将使程序变得极为简短。c) MATLAB既具有结构化的控制语句(如for循环,while循环,break语句和if语句),又有面向对象编程的特性。d) 程序限制不严格,程序设计自由度大。例如,在MATLAB里,用户无需对矩阵预定义就可使用。e) 程序的可移植性很好,基本上不做修改就可以在各种型号的计算机和操作系统上运行。f) MATLAB的图形功能强大。在FORTRAN和C语言里,绘图都很不容易,但在MATLAB里,数据的可视化非常简单。MATLAB还具有较强的编辑图形界面的能力。g) MATLAB的缺点是,它和其他高级程序相比,程序的执行速度较慢。由于MATLAB的程序不用编译等预处理,也不生成可执行文件,程序为解释执行,所以速度较慢。h) 功能强大的工具箱是MATLAB的另一特色。MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。其工具箱又分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能。功能性工具箱用于多种学科。而学科性工具箱是专业性比较强的,如control,toolbox,signl proceessing toolbox,commumnication toolbox等。这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序,而直接进行高、精、尖的研究。i) 源程序的开放性。开放性也许是MATLAB最受人们欢迎的特点。除内部函数以外,所有MATLAB的核心文件和工具箱文件都是可读可改的源文件,用户可通过对源文件的修改以及加入自己的文件构成新的工具箱。3.2 matlab的功能MATLAB包含的内容非常丰富,功能强大,可以概括为以下几个方面:a) 可以在多种操作系统下运行,如DOS、Windows 95/98/2000/2000/NT、Compaq Alpha、LinuxSun Solaris等。b) 有超过500种的数学、统计、科学及工程方面的函数,使用简单快捷,并且有很强的用户自定义函数的能力。c) 有强大的图形绘制和可视化功能,可以进行视觉数据处理和分析,进行图形、图像的显示及编辑,能够绘制二维、三维图形,使用户可以制作高质量的图形,从而写出图文并茂的文章。d) 有和用其他高级语言(如C,C+,FORTRAN,JAVA)编写的外部程序相接口的能力,也可把MATLAB程序转换成上述高级语言的子程序。e) 有从外部文件及外部硬件设备读入数据的能力。f) 有丰富的网络资源,从相关的Web网站可以直接获得全套的MATLAB联机帮助文件和说明书的电子文档,还可以获得各类技术支持与帮助。g) 有丰富的工具箱toolbox。各个领域的专家学者将众多学科领域中常用的算法编写为一个个子程序,即m文件,这些m文件包含在一个个工具箱中。其工具箱可以分为两大类,即功能性工具箱和科学性工具箱。功能性工具箱主要用来扩充MATLAB的符号计算、图形可视化、建模仿真、文字处理等功能以及与硬件实时交互的功能。学科性工具箱是按学科领域来分类的,如信号处理、控制、通信、神经网络图像处理、系统辨识、鲁棒控制、模糊逻辑、小波等工具箱。MATLAB中的信号处理工具箱内容丰富,使用简便。在数字信号处理中常用的算法,如FFT,卷积,相关,滤波器设计,参数模型等,几乎都只用一条语句即可调用。数字信号处理常用的函数有波形的产生、滤波器的分析和设计、傅里叶变换、Z变换等,如:波形产生的函数:sawtooth(锯齿波或三角波)Diric(Dirichlet或周期sinc函数)rand(白噪声信号波形)square(方波)sinc(sinc或 函数)chirp(chirp信号波形)滤波器的分析的函数:abs(求幅值)angle(求相角)conv(求卷积)freqz(数字滤波器频率响应)impz(数字滤波器的冲击响应)zplane(数字系统零极点图)IIR滤波器设计函数:butter(巴特沃思数字滤波器)cheby1(切比雪夫I型)cheby2(切比雪夫II型)maxflat(最平滤波器)ellip(椭圆滤波器)yulewalk(递归数字滤波器)bilinear(双线性变换)impinvar(冲激响应不变法)FIR滤波器设计函数: triang(三角窗)blackman(布莱克曼窗)boxcar(矩形窗)hamming(海明窗)hanning(汉宁窗)kaiser(凯塞窗)fir1(基于窗函数法)fir2(基于频率抽样法)firrcos(上升余弦FIR滤波器设计法)intfilt(内插FIR滤波器设计法)kaiserord(用Kaiser窗设计FIR滤波器的参数估计)各种变换的函数:czt(线性调频Z变换)dct(离散余弦变换)fft(一维快速傅里叶变换)fft2(二维快速傅里叶变换)idct(逆离散余弦变换)ifft(一维逆快速傅里叶变换)ifft2(二维逆快速傅里叶变换)hilbert(Hilbert变换)3.3 matlab的优势a.工作平台编程环境十分友好。b.编程语言简单易用。c.数据的计算处理能力十分强大。d.图像处理能力强大。e.模块集合工具箱应用广泛。f.程序的接口和发布平台很实用。g.可以开发用户界面。总之,可以看出MATLAB是一个功能十分强大的系统,是集数值计算、图形管理、程序开发为一体的环境。除此之外,MATLAB还具有很强的功能扩展能力,与它的主系统一起,可以配备各种各样的工具箱,以完成一些特定的任务。用户可以根据自己的工作任务,开发自己的工具箱。在国际学术界,MATLAB已经被确认为准确、可靠的科学计算标准软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),都可以看到MATLAB的应用。 在设计研究单和工业部门,MATLAB被认作进行高效研究、开发的首选软件工具。如美国National Instruments公司信号测量、分析软件LabVIEW,Cadence公司信号和通信分析设计软件SPW等,或者直接建筑在MATLAB之上,或者以MATLAB为主要支撑。 第4章 利用matlab实现FIR滤波器设计第4章 利用matlab实现FIR滤波器设计4.1 窗函数法的matlab实现在用matlab实现窗函数中,常使用的函

温馨提示

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

评论

0/150

提交评论