武汉理工大学MATLAB课程设计.doc
《武汉理工大学MATLAB课程设计.doc》由会员分享,可在线阅读,更多相关《武汉理工大学MATLAB课程设计.doc(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流武汉理工大学MATLAB课程设计.精品文档.课程设计任务书学生姓名: 专业班级: 指导教师: 工作单位: 题 目:利用Matlab仿真软件系统结合窗函数法设计一个数字带通FIR滤波器初始条件: 1.数字信号处理基本理论知识 2.信号与系统基本理论知识3.MATLAB编程基础知识4.装有MATLAB的PC机要求完成的主要任务: 分别使用矩形窗、三角形窗、汉明窗、布莱克曼窗、凯泽窗进行设计,并输出滤波器的频率特性。时间安排:序号阶段内容所需时间1方案设计1天2软件设计2天3系统仿真1天4答辩1天合计5天指导教师签名: 年 月 日系主任(或责任教师
2、)签名: 年 月 日目录摘要3Abstract3一、数字滤波器的原理说明41.1数字滤波技术4 1.2 FIR滤波器51.3 窗函数5二、滤波器的设计62.1 滤波器设计要求62.2 设计函数的选取62.3 窗函数的构造62.4 设计步骤及流程图82.5 设计方法9三、滤波器的测试193.1 滤波器滤波性能的测试193.2 滤波器的稳定性的测试20四、心得体会21五、参考文献22附件、程序清单23摘要数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。根据其单位冲激响应函数的时域特性可分为两类:无限冲激响应(IIR)滤波器和有限冲激响应(FIR)滤波
3、器。与IIR滤波器相比,FIR的实现是非递归的,总是稳定的;更重要的是,FIR滤波器在满足幅频响应要求的同时,可以获得严格的线性相位特性。因此,它在高保真的信号处理,如数字音频、图像处理、数据传输、生物医学等领域得到广泛应用。滤波器的设计是信号处理的核心问题之一。根据FIR滤波器的原理,提出了FIR滤波器的窗函数设计法,给出了在MATLAB环境下,用窗函数法设计FIR滤波器的过程和设计实例。通过利用不同的窗函数方法设计FIR滤波器,对所设计的滤波器进行分析比较,得出各种方法设计的滤波器的优缺点及其不同的使用场合,从而可以在设计滤波器时能够正确的选择FIR数字滤波器的窗函数的选取及设计方法。本文
4、给出了使用MATLAB语言进行程序设计和利用信号处理工具箱的FDA Tool工具进行界面设计的方法。利用MATLAB设计滤波器,可以随时对比设计要求和滤波器特性调整参数,直观简便,极大的减轻了工作量,有利于滤波器设计的最优化。关键词MATLAB,数字滤波器,有限冲激响应,窗函数,FIRAbstractDigital filter is a time discrete signal which is used to filter digital system, through the mathematical treatment of the sample data to achieve the
5、 frequency-domain filtering purposes.In accordance with its unit impulse response function of the time-domain characteristics can be divided into two categories: Infinite Impulse Response (IIR) filter and finite impulse response (FIR) filters. Compared with the IIR filters, FIR realization of a non-
6、recursive, is always stable; more importantly, FIR filters to meet the requirements of the amplitude-frequency response at the same time, get a strictly linear phase characteristics.Therefore, it is high-fidelity signal processing, such as digital audio, image processing, data transmission, biomedic
7、al areas such as widely used.Signal processing filter design is one of the core issues.According to the principle of FIR filters is proposed FIR filter window function design method is given in the MATLAB environment, with the window function method for FIR filter design process and design examples.
8、Through the use of different window functions designed FIR filter, the filter designed to analyze and compare a variety of methods designed to filter obtained the advantages and disadvantages of the use of their different occasions, so you can design a filter to correctthe choice of FIR digital filt
9、er function selection window and the design method. This article presents use MATLAB language for programming and utilization of signal processing Toolbox FDA Tool for interface design. A filter was designed using MATLAB. You can always compare the design requirements and adjust the parameters of fi
10、lter characteristics, visual simple and greatly reduced the workload will help filter design optimized. Key words:MATLAB, digital filters, finite impulse response, window function, FIR数字带通FIR滤波器(Digital Band-pass FIR Filter)一、 数字滤波器的原理说明随着信息时代的到来,数字信号处理已经成为一门极其重要的学科和技术,并且在通信、语音、图像、自动控制等众多领域得到了广泛的应用。
11、在数字信号处理中,数字滤波器占有极其重要的地位,它具有精度高、可靠性好、灵活性大等特点。现代数字滤波器可以用软件或硬件两种方式来实现。软件方式实现的优点是可以通过滤波器参数的改变去调整滤波器的性能。MATLAB是一种面向科学和工程计算的语言,它集数值分析、矩阵运算、信号处理和图形显示于一体,具有编程效率高、调试手段丰富、扩充能力强等特点。MATLAB的信号处理工具箱具有强大的函数功能,它不仅可以用来设计数字滤波器,还可以使设计达到最优化,是数字滤波器设计的强有力工具。1.1 数字滤波技术数字滤波,就是通过一定的计算或判断程序减少干扰在有用信号中的比重,故实质上是一种程序滤波。与此对应的就是模拟
12、滤波,模拟滤波主要无源绿波(直接用电阻、电容、电感等不外接电源的元件组成的)与有源滤波(如运算放大器等需要外接电源组成的),其目的是将信号中的噪音和干扰滤去或者将希望得到的频率信号滤出为我所用。数字滤波的出现克服了模拟滤波的很多不足,具有以下优点:A是用程序实现的,不需要增加硬设备,所以可靠性高,稳定性好。B可以对频率很低的信号实现滤波,克服了模拟滤波的缺陷。C可以根据信号的不同,采用不同的滤波方法或参数,具有灵活、方便、功能强的特点。数字滤波技术通过数字滤波器实现,从实现方法上可以分为FIR数字滤波器和IIR数字滤波器,按功能可分为低通滤波器(LPF)、高通滤波器(HPF)、带通滤波器(BP
13、F)和带阻滤波器(BSF)。本文主要对FIR滤波器加以介绍。1.2 FIR滤波器FIR(Finite Impulse Response)滤波器,即有限长单位冲激响应滤波器,是数字信号处理系统中最基本的元件,它可以在保证任意幅频特性的同时具有严格的线性相频特性,同时其单位冲激响应是有限的,没有输入到输出的反馈,是稳定的系统。因此,FIR滤波器在通信、图像处理、模式识别等领域都有着广泛的应用,FIR滤波器具有以下主要优点:1.FIR滤波器具有准确的线性相位;2.FIR滤波器设计方法一般是线性的;3.FIR滤波器在硬件上具有更高的运行效率;FIR滤波器的主要缺点有:1.FIR滤波器为达到同样的性能要
14、求需要比IIR滤波器高得多的阶数;2.相应的FIR滤波器的时延比同等性能的IIR滤波器高很多。FIR滤波器的硬件实现主要有数字集成芯片,DSP芯片FIR滤波器,可编程FIR滤波器,后两者的实际方法主要通过MATLAB软件进行设计,其设计方法多样,形式灵活,能够满足各种要求,并且不受数字集成芯片规格的限制。FIR滤波器的设计方法主要有窗函数法、多带和过渡带、约束最小二乘法、任意相应法、升余弦法,其中最常用的是窗函数法。1.3 窗函数窗函数法是设计FIR滤波器的最主要方法之一,实际中遇到的离散时间信号总是有限长的,因此不可避免的要遇到数据截短的问题,在信号处理中,对离散序列的截短是通过序列与窗函数
15、相乘来实现的。在信号处理中,窗函数是一种除在给定区间之外取值均为0的实函数。譬如:在给定区间内为常数而在区间外为0的窗函数被形象地称为矩形窗。任何函数与窗函数之积仍为窗函数,所以相乘的结果就像透过窗口“看”其他函数一样。窗函数在光谱分析、滤波器设计以及音频数据压缩等方面有广泛的应用。常用的窗函数有矩形窗、巴特利特(Bartlett)窗、三角窗、海明(Hamming)窗、汉宁(Hanning)窗、布莱克曼(Blackman)窗、切比雪夫(Chebyshev)窗、凯泽(Kaiser)窗。二、 滤波器的设计2.1 滤波器的设计要求利用MATLAB仿真软件系统结合窗函数法设计一个数字带通FIR滤波器。
16、要求:分别使用矩形窗、三角形窗、汉明窗、布莱克曼窗、凯泽窗进行设计,并输出滤波器的频率特性。技术指标:1 采样频率为20kHz;2 通带边缘频率:fp1=3.5kHz,fp2=6.5kHz;3 通带峰值起伏:p40dB2.2 设计函数选取 MATLAB信号处理工具箱提供了基于加窗的线性相位FIR滤波器设计函数fir1和fir2,fir1函数的调用格式为:b=fir1(n,Wn)b=fir1(n,Wn,ftype)b=fir1(n,Wn,window)b=fir1(n,Wn,ftype,window)函数参数说明如下:(1) n表示滤波器的阶数;(2) ftype表示所设计滤波器的类型;(3)
17、window为窗函数,是长度为n+1的列向量,默认时函数自动取汉明窗。该函数实现加窗的线性相位FIR滤波器设计,可以设计标准低通、带通、高通和带阻滤波器(具有任意频率响应的加窗滤波器可以采用fir2进行设计)。2.3 窗函数的构造MATLAB工具箱已经提供了各种窗函数的构造函数,因而窗函数的构造十分方便,下面给出几种常用窗函数的构造方法:1矩形窗:利用w=boxcar(n)的形式得到窗函数,其中n为窗函数的长度,而返回值w为一个n阶的向量,它的元素由窗函数的值组成。w=boxcar(n)等价于w=ones(1,n).2三角窗:利用w=triang(n)的形式得到窗函数,其中n为窗函数的长度,而
18、返回值w为一个n阶的向量,它的元素由窗函数的值组成。w=triang(N-2)等价于bartlett(N)。3汉明窗:利用w=hamming(n)得到窗函数,其中n为窗函数的长度,而返回值w为一个n阶的向量,包含了窗函数的n个系数。它和汉宁窗的主瓣宽度相同,但是它的旁瓣进一步被压低。4布拉克曼窗:利用w=blackman(n)得到窗函数,其中n为窗函数的长度,而返回值w为一个n阶的向量,包含了窗函数的n个系数。它的主瓣宽度是矩形窗主瓣宽度的3倍,为12*pi/N,但是它的最大旁瓣值比主瓣值低57dB。5凯泽窗:利用w=kaiser(n,beta)的形式得到窗函数。2.3.1 窗函数设计原则在使
19、用窗函数设计滤波器时要遵循以下两个原则:1 窗谱主瓣尽可能地窄,从而可以获得较陡峭的过渡带;2尽量减少窗谱的最大旁瓣的相对幅度,及尽可能是能量集中于主瓣,减少峰肩和波纹,进而增加阻带的衰减。2.3.2 窗函数设计条件实际工程常用的窗函数有五种,即矩形窗、三角窗、汉明窗、布莱克曼窗和凯泽窗。这些窗函数之间的性能比较如表2-1所示。表2-1 5种窗函数性能比较窗函数旁瓣峰值幅度/dB过渡带宽阻带最小衰减/dB矩形窗-134/N-21三角形窗-258/N-25汉明窗-418/N-53布莱克曼窗-5712/N-74凯泽窗-5710/N-80常用窗函数绘图比较:在MATLAB中运行以下代码:n=50;x
20、=1:50;juxing=boxcar(n); %构造矩形窗sanjiao=triang(n); %构造三角窗hanming=hamming(n); %构造汉明窗bulaikeman=blackman(n); %构造布莱克曼窗kaize=kaiser(n); %构造凯泽窗plot(x,juxing,b.,x,sanjiao,gx,x,hanming,r+,x,bulaikeman,cd,x,kaize,k*);legend(矩形窗,三角窗,汉明窗,布莱克曼窗,凯泽窗); 运行结果如图2-1所示 图2-1 5种窗函数绘图比较2.4 设计步骤及流程图实际利用窗函数法进行FIR滤波器设计时,依据所给
21、的技术指标一般需要经过以下几个步骤进行设计:1 给定理想的频率响应函数Hd(ejw)及技术指标;2 求出理想的单位抽样响应hd(n);3 根据阻带衰减选择窗函数w(n)4 根据过渡带宽度确定N值;5 求出所设计的FIR滤波器的单位抽样响应;6 计算频率响应,验算指标是否满足要求。结束调用绘图子程序(函数)绘制H(k)幅度相位曲线调用子程序(函数)计算H(k)=DFTh(n)计算h(n)= hd(n) w(n)调用窗函数子程序求w(n) 计算hd(n) 读入窗口长度N开始流程图如图2-4所示:2.5 设计方法MATLAB作为一款优秀的数值计算软件,本身就内置了丰富的函数,其中便有用于通信仿真的一
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 武汉理工大学 MATLAB 课程设计
限制150内