基于MATLAB的FIR数字滤波器设计(21页).docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于MATLAB的FIR数字滤波器设计(21页).docx》由会员分享,可在线阅读,更多相关《基于MATLAB的FIR数字滤波器设计(21页).docx(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于MATLAB的FIR数字滤波器设计-第 16 页电子技术课程设计题 目 基于MATLAB的FIR数字滤波器设计 学生姓名 专业班级 学 号 院 (系) 电气信息工程学院 指导教师 完成时间 郑州轻工业学院课程设计(论文)任务书题目 简易窗帘自动开闭电路 专业 电子信息10-1 学号 541001030138姓名 谢强 主要内容、基本要求、主要参考资料等:主要内容1阅读相关科技文献。2学习protel软件的使用。3学会整理和总结设计文档报告。4学习如何查找器件手册及相关参数。技术要求1. 要求电路能够通过感应装置,检测到光线的强弱。2. 要求电路根据光线的强弱,自动将窗帘打开和关闭。3.
2、要求电路能够在窗帘接触到边沿时,自动切断电源。主要参考资料1何小艇,电子系统设计,浙江大学出版社,2001年6月2姚福安,电子电路设计与实践,山东科学技术出版社,2001年10月3王澄非,电路与数字逻辑设计实践,东南大学出版社,1999年10月4李银华,电子线路设计指导,北京航空航天大学出版社,2005年6月5康华光,电子技术基础,高教出版社,2003完 成 期 限: 2012年06月22日 指导教师签章: 专业负责人签章: 2012 年 06月 11日目 录摘 要I1 数字滤波器11.1数字滤波器简介11.2 FIR数字滤波器11.3 IIR数字滤波器32 数字滤波器设计工具MATLAB42
3、.1 MATLAB简介42.2 MATLAB的优势53 FIR数字滤波器设计63.1窗函数法设计FIR滤波器63.1.1设计方法73.1.2 各种窗函数73.2频率取样法设计线性相位FIR滤波器83.3线性相位FIR滤波器的优化设计114 利用MATLAB设计FIR数字滤波器124.1 两个重要函数124.2 设计不同参数的FIR滤波器134.2.1 数字高通滤波器的实现134.2.2 数字带通滤波器的实现184.2.3 数字带阻滤波器的实现244.3 不同窗函数设计滤波器的比较294.4 FIR数字滤波器和IIR数字滤波器的比较29参考文献30附录31基于MATLAB的FIR数字滤波器的设计
4、摘 要在数字控制系统中输入信号中所含的干扰对系统的性能会产生很大的影响,因此需要对输入信号进行处理,以提取有用信号。有限长冲激响应(FIR)滤波器在数字信号处理中发挥着重要作用,采用Matlab软件对FIR数字滤波器进行仿真设计,简化了设计中繁琐的计算。本文采用窗函数法,通过调用Matlab函数分别用矩形窗、汉明窗、汉宁窗、三角形窗和布拉克曼窗分别设计了相同参数的数字高通滤波器、数字带通滤波器和数字带阻滤波器,并绘制对应的幅频特性曲线。根据设计结果,比较在相同参数下经由不同的窗函数设计出的滤波器的异同点。最后比较了相同参数下设计出的FIR滤波器和IIR滤波器的异同点。关键词 MATLAB 窗函
5、数 FIR 数字滤波器1 数字滤波器1.1 数字滤波器简介数字滤波器是一个离散的系统。它可以对输入的离散信号进行一系列运算处理,从输入的信号中获得所需要的信息。数字滤波器的系统函数通常表示为 (1-1) 数字滤波器分为有限冲激响应数字滤波器,即FIR数字滤波器和无限冲激响应,即IIR数字滤波器。从公式的角度来看,FIR数字滤波器的 始终为零;IIR数字滤波器至少有一个非零。实现数字滤波器的方法一般有两种:一种是利用计算机的程序编译,从而仿真实现;另一种是利用硬件来实现。实现一个数字滤波器一般需要三个基本的运算单元:加法器、延时器和乘法器。设计一个数字滤波器的一般步骤为:(1)按所给要求确定滤波
6、器的性能(2)用一个因果稳定的离散线性时不变的系统函数逼近此性能的要求(3)利用算法来实现这个系统函数(4)利用计算机仿真或硬件来实现1.2 FIR数字滤波器FIR滤波器是指在有限范围内系统的单位脉冲响应hk仅有非零值的滤波器。M阶FIR滤波器的系统函数H(z)为 (1-2) 其中H(z)是的M阶多项式,在有限的z平面内H(z)有M个零点,在z平面原点z=0有M个极点. FIR滤波器的频率响应为 (1-3)它的另外一种表示方法为 (1-4)其中和分别为系统的幅度响应和相位响应。若系统的相位响应满足下面的条件 (1-5)即系统的群延迟是一个与没有关系的常数,称为系统H(z)具有严格线性相位。由于
7、严格线性相位条件在数学层面上处理起来较为困难,因此在FIR滤波器设计中一般使用广义线性相位。 如果一个离散系统的频率响应可以表示为 (1-6)其中和是与无关联的常数,是可正可负的实函数,则称系统是广义线性相位的。 如果M阶FIR滤波器的单位脉冲响应hk是实数,则可以证明系统是线性相位的充要条件为 (1-7)当hk满足hk=hM-k,称hk偶对称。当hk满足hk=-hM-k,称hk奇对称。按阶数hk又可分为M奇数和M偶数,所以线性相位的FIR滤波器可以有四种类型。四种线性相位FIR滤波器的性质如表1-1所示表1-1 四种线性相位FIR滤波器的性质类型IIIIIIIV阶数M偶数奇数偶数奇数hk的对
8、称性偶对称偶对称奇对称奇对称关于的对称性偶对称偶对称奇对称奇对称关于的对称性偶对称奇对称奇对称偶对称的周期00A(0)任意任意00任意00任意可适用的滤波器类型LP,HP,BP,SPLP,BP微分器,变换器,Hilbert微分器,变换器,Hilbert,HP1.3 IIR数字滤波器无限长单位冲激响应滤波器,即IIR数字滤波器具有下面几个特点:(1) 系统的单位冲激响应为无限长的(2) 系统函数在有限z平面上有极值点(3) 结构上是递归型的IIR滤波器的设计就是在给定的技术指标下去确定滤波器的阶数N和系数,。在已满足给定的技术指标下,应选用阶数尽可能低的滤波器,因为滤波器的阶数越低,在实现时成本
9、就越低。 在设计IIR滤波器时,最常用的方法是利用模拟滤波器来设计数字滤波器。其原因为:(1) 模拟滤波器的设计技术相对成熟,可以广泛利用(2) 模拟滤波器有大量的参考程序和表格(3) 它的解可以为闭合形式的2 数字滤波器设计工具MATLAB2.1 MATLAB简介MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交
10、互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。如图2-1是MATLAB的运行界面。图2-1 MATLAB 2011b运行界面MATLAB和Mathematica、Maple、MathCAD并称为四大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比
11、用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。MATLAB主要功能:1.数值分析2.数值和符号计算3.工程与科学绘图4.控制系统的设计与仿真5.数字图像处理6.数字信号处理7.通讯系统设计与仿真8.财务与金融工程2.2 MATLAB的优势(1)高效的数值计算及符号计算功能,
12、能使用户从繁杂的数学运算分析中解脱出来;(2)具有完备的图形处理功能,实现计算结果和编程的可视化;(3)友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;(4)功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。3 FIR数字滤波器设计3.1 窗函数法设计FIR滤波器窗函数设计法又称为傅里叶级数法。这种方法首先给出,表示要逼近的理想滤波器的频率响应,则由IDTFT可得出滤波器的单位脉冲响应为 (3-1) 由于是理想滤波器,故是无限长序列。但是我们所要设计的FIR滤波器,其hk是有限长的。为了能用FIR滤波器近似理想滤波器,需将理想滤波器
13、的无线长单位脉冲响应分别从左右进行截断。当截断后的单位脉冲响应不是因果系统的时候,可将其右移从而获得因果的FIR滤波器。 另一种设计方案是将线性相位因子加入到理想滤波器的频率响应中,然后利用IDTFT计算出后,取在0kM范围的值为FIR滤波器单位脉冲响应。 理想滤波器的频率响应和设计出的滤波器的频率响应的积分平方误差定义为 (3-2)也可以表示为 (3-3)上式中的第一项和第三项与所设计出的滤波器参数是没有关系的,为了使上式中的第二项达到最小,可选择 (3-4)所以用上面的方法得出的滤波器是在积分平方误差最小意义下的最佳滤波器。Gibbs现象就是理想滤波器的单位脉冲响应截断获得的FIR滤波器的
14、幅度函数在通带和阻带都呈现出振荡现象。随着滤波器阶数的增加,幅度函数在通带和阻带振荡的波纹数量也随之增加,波纹的宽度随之减小,然而通带和阻带最大波纹的幅度与滤波器的阶数M无关。窗函数的主瓣宽度决定了过渡带的宽度,窗函数长度N增大,过渡带减小。3.1.1 设计方法3.1.2 各种窗函数(1)矩形窗 (3-5) 矩形窗的主瓣宽度为。用矩形窗设计的FIR滤波器过渡带宽度近似为。(2)三角形窗(又称巴特列特窗) (3-6)(3)汉宁(Hanning)窗(又称升余弦窗) (3-7) Hanning窗的主瓣宽度为。由Hanning窗的定义可知,Hanning窗在其两个端点的值为零,这就使得在实际的应用中不
15、能利用两个端点的数据。我们可将N+2点的Hanning窗除去两个端点来定义长度为N的Hanning窗。修改后的长度为N的Hanning窗定义为 (3-8)在Matlab信号处理工具箱中所采用的就是这种修改后的定义方式。(4) 海明(Hamming)窗(又称改进的升余弦窗) (3-9)Hamming窗的主瓣宽度为。(5) 布莱克曼(Blackman)窗(又称二阶升余弦窗) (3-10) Blackman窗的主瓣宽度为。3.2 频率取样法设计线性相位FIR滤波器频率取样法是从频域出发,在频域直接设计,把给定的理想频率响应加以等间隔取样,并以此作为实际FIR滤波器的频率响应。设所需滤波器的频率响应为
16、。现要求设计一个M阶的FIR滤波器hk,使得在M+1个取样点上,FIR滤波器的频率响应与所需的频率响应相等,即 (3-11)由设计的要求给定,hk需要通过设计来确定。如果M+1个方程是线性无关的,则可以通过求解M+1阶的线性方程来得出FIR滤波器的hk。对的一些特殊取样方法,上述方程的解可以直接由IDFT得到。由于要求设计出的滤波器是实系数的线性相位FIR滤波器,所以的取样值还需要满足线性相位滤波器的约束条件。 I型和II型线性相位滤波器的,III型和IV型线性相位滤波器的。为了使设计出的滤波器具有线性相位,在M+1个取样点上的值应为 (3-12) 下面分别讨论四种线性相位滤波器在取样点上的值
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MATLAB FIR 数字滤波器 设计 21
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内