基于MATLABGUI滤波器设计.doc
《基于MATLABGUI滤波器设计.doc》由会员分享,可在线阅读,更多相关《基于MATLABGUI滤波器设计.doc(63页珍藏版)》请在咨信网上搜索。
1、MATLAB课程设计报告 基于MATLAB GUI的“滤波器设计软件”设计 59摘 要面对庞杂繁多的原始信号, 如何提取所需信号、抑制不需要的信号这就需要使用滤波器。滤波器的作用主要是选择所需频带的信号内容而抑制不需要的其他频带的信号内容。数字滤波器因其精度高、可靠性好、灵活性大等优点, 在语音信号处理、信号频谱估计、信号去噪、无线通信中的数字变频以及图像处理等工程实际应用中都很广泛。根据其冲击响应函数的时域特性可将数字滤波器分为IIR(有限长冲击响应)和FIR(无限长冲击响应)。作为强大的计算软件, MATLAB提供了编写图形用户界面的功能。所谓图形用户界面, 简称为GUI, 是由各种图形对
2、象, 如图形窗口菜单按钮、文本框等构建的用户界面。MATALB 可以创建图形用户界面GUI ( GraphicalUser Interface) ,它是用户和计算机之间交流的工具。MATLAB 将所有GUl 支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。而且具有强大的绘图功能,可以轻松的获得更高质量的曲线图。关键词:MATLAB GUI IIR滤波器 FIR滤波器目 录1设计任务12 MATLAB GUI的简介23 滤波器设计原理33.1滤波器概述33.2 IIR数字滤波器43.2.1 IIR数字滤波器设计原理43.2.2
3、IIR滤波器设计思想53.2.3 IIR滤波器设计编程实现63.3 FIR数字滤波器83.3.1 FIR数字滤波器设计原理83.3.2 FIR滤波器设计思想94 基于Matlab GUI的数字滤波器设计思路及实现124. 1 GUI界面设计概述124.2 “滤波器设计软件”设计所实现任务144.3 基于Matlab GUI的数字滤波器设计实现164.3.1 “滤波器设计软件”GUI界面设计164.3.2 “滤波器设计软件”回调函数编写174.3.3AutoChoose.m程序的编写224.4 运行和结果显示285 设计总结和心得335.1 设计总结335.2 设计心得34Abstract35参
4、考文献36附录1设计任务1 设计目的1.巩固所学习过的关于数字信号处理的滤波器的设计2.学习使用MATLAB GUI设计工具应用平面2 设计要求要求:“滤波器设计软件”设计1、要有人机交互界面。2、滤波器设计的类型、参数均有多个值可供选择。3、当用户选择(或输入)滤波器的参数时,能够及时显示设计好的滤波器的频谱。4、该软件可设计FIR或IIR型滤波器至少一种。2 MATLAB GUI的简介MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB是矩阵实
5、验室(Matrix Laboratory)的简称,和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的
6、版本中也加入了对C,FORTRAN,C+ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用。 MATALB 可以创建图形用户界面GUI ( GraphicalUser Interface) ,它是用户和计算机之间交流的工具。MATLAB 将所有GUl 支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。而且具有强大的绘图功能,可以轻松的获得更高质量的曲线图。3 滤波器设计原理3.1滤波器概述随着信息时代和数字世界的到来,数字信号处理已成为当今一门极其重要的学科和技术领域。数字
7、信号处理在通信、语音、图像,自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理中,数字滤波器占有极其重要的地位。现代数字滤波器可以用软件或设计专用的数字处理硬件两种方式来实现,用软件来实现数字滤波器优点是随着滤波器参数的改变,很容易改变滤波器的性能。根据数字滤波器单脉冲响应的时域特性可将数字滤波器分为两种, 即IIR (Infinite Impulse Response)无限长脉冲响应数字滤波器和FIR (Finite Impulse Response)有限长脉冲响应数字滤波器。从功能上分类, 可分为低通、高通、带通、带阻滤波器。3.2 IIR数字滤波器3
8、.2.1 IIR数字滤波器设计原理滤波器的设计质上是寻找一个既能物理实现,又能满足给定频率特性指标要求的系统传输函数。IIR滤波器一般采用递归型的结构,系统的输入与输出服从N阶差分方程: 相应的传输函数为:设计IIR数字滤波器就是要确定传输函数中的系数、或零极点增益、A,使滤波器的频率特性满足给定的性能指标要求。设计原理主要包括两个方面:一是根据设计指标,先设计出相应的模拟滤波器再通过脉冲响应不变法或双线性变换法转换成对应的数字滤波器;二是选择一种优准则,如最小均方准则,再在, 先最误差此准则下求出滤波器传输函数的系数。根据设计理论,在MATLAB环境下设计IIR数字滤波器主要有四种方法:一是
9、典型设计法;二是完全设计法;三是最优设计法;四是工具设计法。由于完全设计法程序简单,我们在这里利用完全设计法设计滤波器。3.2.2 IIR滤波器设计思想IIR滤波器设计思想是:利用已有的模拟滤波器设计理论,首先根据设计指标设计一个合适的模拟滤波器,然后再通过脉冲响应不变法或双线性变换法,完成从模拟到数字的变换。常用的模拟滤波器有巴特沃斯(Butterworth)滤波器、切比雪夫(Chebyshev) 滤波器、椭圆(Ellipse)滤波器、贝塞尔(Bessel)滤波器等,这些滤波器各有特点,供不同设计要求选用。滤波器的模拟数字变换,通常是复变函数的映射变换,也必须满足一定的要求 由于数字滤波器传
10、输函数只与频域的相对值有关,故在设计时可先将滤波器设计指标进行归一化处理,设采样频率为Fs,归一化频率的计算公式是: 利用完全设计法设计数字滤波器的步骤:(1)将设计指标归一化处理。(2)根据归一化频率,确定最小阶数N 和频率参数Wn。可供选用的阶数选择函数有:buttord,cheblord,cheb2ord,ellipord 等。(3)运用最小阶数N 设计模拟低通滤波器原型。根据最小阶数直接设计模拟低通滤波器原型,用到的函数有:butter, chebyl,cheby2, ellip 和bessel。如B,A = butter(N,Wn,type) 设计type型巴特沃斯(Butterwo
11、rth)滤波器filter。N为滤波器阶数,Wc为截止频率, type决定滤波器类型, type= high,设计高通IIR滤波器,ftype= stop,设计带阻IIR滤波器。(4)再用freqz 函数验证设计结果。3.2.3 IIR滤波器设计编程实现例如选择设计IIR的Butterworth低通滤波器,其Fs=22050Hz,Fp1=3400Hz,Fs1=5000Hz,Rp=2dB,Rs=20dB 程序和效果图(图2)如下:Fs=22050;Fp1=3400;Fs1=5000;Rp=3;Rs=20;%设计指标wp1=2*Fp1 /Fs;ws1=2*Fs1 /Fs;%求归一化频率% 确定bu
12、tterworth 的最小阶数N 和频率参数Wnn,Wn=buttord(wp1,ws1,Rp,Rs);B,A = butter(N,Wn);%确定传递函数的分子、分母系数 h,f=freqz(b,a,Nn,Fs_value);%生成频率响应参数 plot(f,20*log(abs(h) %画幅频响应图plot(f,angle(h); %画相频响应图%N, Wn = buttord(Wp, Ws, Rp, Rs) 确定butterworth 的N 和Wn%N, Wn = cheblord ( (Wp, Ws, Rp, Rs) 确定Chebyshev滤波器的N 和Wn%N, Wn = cheb2
13、ord (Wp, Ws, Rp, Rs) 确定Chebyshev2滤波器的N 和Wn%N, Wn = ellipord (Wp, Ws, Rp, Rs) 确定椭圆(Ellipse) 滤波器 的N 和Wn%B,A = butter(N,Wn,type) 设计type型巴特沃斯(Butterworth)滤波器filter.%B,A = cheby1 (N,R,Wn, type) 设计type型切比雪夫滤波器filter.%B,A = cheby2(N,R,Wn, type) 设计type型切比雪夫滤波器filter.%B,A = ellip(N,Rp,Rs,Wn, type) 设计type 型椭圆
14、filter. 图 2 Butterworth低通滤波器3.3 FIR数字滤波器3.3.1 FIR数字滤波器设计原理根据数字滤波器冲激响应的时域特征,可将数字滤波器分为2种,即无限长冲激响应滤波器( IIR DF)和有限长冲激响应滤波器( F IR DF) 。F IR DF具有突出的优点:系统总是稳定的、易于实现线性相位、允许设计多通带(或多阻带)滤波器。因此F IR DF在数字信号处理中得到广泛的应用。但与IIR DF相比,在满足同样的阻带衰减的情况下需要较高的阶数。滤波器阶数越高将占用更多的DSP运算时间。因此,对F IR DF的设计目标是在满足指标要求的情况下尽量减少滤波器的阶数。数字滤
15、波器可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化过程中,使信号按预定的形式变化。FIR DF的冲激响应h ( k)是有限长的M 阶F IR DF系统函数可表示为滤波器的输出它的设计问题实质上是确定能满足所要求的转移序列或脉冲响应的常数问题,设计方法主要有窗函数法、频率采样法和等波纹最佳逼近法等。若要逼近的理想滤波器的频率响应为常用的有巴特沃思滤波器、切比雪夫型滤波器、椭圆滤波器和巴塞尔滤波器。3.3.2 FIR滤波器设计思想在这里我们利用窗函数法设计FIR滤波器。窗函数法的基本想法是选取某一种合适的理想频率选择性滤波器(这种滤波器总是有
16、一个非因果,无限长的脉冲响应),然后将它的脉冲响应截断(或加窗)以得到一个线形相位和因果的FIR滤波器。因此,这种方法的重点在于选择某种恰当的窗函数和一种合适的理想滤波器。窗函数法又称傅立叶级数法, 一般是先给定所要求的滤波器的频率响应Hd ( ejw) , 要求设计一个FIR 滤波器的频率响应H( ejw) 来逼近Hd( ejw) .设计是在时域进行的, 首先由傅立叶变换导出hd( n) , 因此hd( n) 一定是无限长的序列, 而h( n) 是有限长的, 即要用有限长的h( n) 来逼近无限长的hd( n) , 最有效的方法是截断hd ( n) , 或者说用一个有限长的窗口函数w( n)
17、 来截取hd( n) , 即: h( n) = hd( n) w( n) , 因而窗函数的形状及长度的选择就很关键了. 在MATLAB 中常用的窗函数有矩形窗, Hanning 窗, Hamming 窗, Blackman 窗,Kaiser 窗等, 这些窗函数各有优缺点, 各有利弊, 默认值是Hamming 窗。利用完全设计法设计数字滤波器的步骤:(1)将设计指标归一化处理。(2)根据归一化频率,选择函数buttord确定最小阶数N 和频率参数Wn。(3)确定窗口值。Windows指定窗函数类型,默认为Hamming窗;可选Hanning、Hamming、Blackman、triangle、b
18、artlett等窗,每种窗都可以由Matlab的相应函数生成。(4)确定传递函数的分母系数。函数fir1的调用格式为B= fir1(n, Wn, ftype, Windows),同时选择在此函数中选择要设计的滤波器的类型。其中,n为滤波器阶数,Wc为截止频率ftype决定滤波器类型,ftype= high,设计高通FIR滤波器,ftype= stop,设计带阻FIR滤波器。(5)再用freqz 函数验证设计结果。3.3.3 FIR滤波器设计编程实现例如选择设计FIR的Blackman窗的低通滤波器,其Fs=22050Hz,Fp1=3400Hz,Fs1=5000Hz,Rp=2dB,Rs=20dB
19、 程序和效果图(图 3)如下:Fs=22050;Fp1=3400;Fs1=5000;Rp=3;Rs=20;n=75;%设计指标wp1=2*Fp1 /Fs;ws1=2*Fs1 /Fs;%求归一化频率% 确定的最小阶数N 和频率参数Wnn,Wn=buttord(wp1,ws1,Rp,Rs);b,a = butter(N,Wn);%确定传递函数的分子、分母系数w=blackman(n+1); %确定窗口值% w=boxcar(n+1);% w=bartlett(n+1);% w=triang(n+1);% w=hanning(n+1);% w=hamming(n+1);b=fir1(n,wn,w);
20、% 确定传递函数的分母系数h,f=freqz(b,1); %生成频率响应参数plot(f,20*log(abs(h) %画幅频响应图plot(f,angle(h); %画相频响应图 图 3 Blackman窗低通滤波器4 基于Matlab GUI的数字滤波器设计思路及实现4. 1 GUI界面设计概述 GUI设计面板是GUI设计工具应用的平面,面板上部提供了菜单和常用工具按钮,左边提供了多种如命令按钮、单选按钮、可编辑文本框、静态文本框、弹出式菜单等。进行设计时, 首先单击面板左边所需的控件, 然后在右边的图形界面编辑区中再次单击某一恰当位置, 这时将在该位上为图形界面添加相应的控件。一个图形界
21、面的完成, 除了设计其外观外, 还有相当的一部分是通过属性的设来完成的。因此在设置这些属性时, 要注意下面几个常用又很重要的属性设置: 1、控件风格和外观 (1)BackgroundColor:设置控件背景颜色,使用R G B或颜色定义。 (2)CData:在控件上显示的真彩色图像,使用矩阵表示。 (3)ForegroundColor:文本颜色。 (4)String属性:控件上的文本,以及列表框和弹出菜单的选项。 (5)Visible:控件是否可见。 2、对象的常规信息 (1)Enable属性: 表示此控件的使能状态,设置为on”,表示可选,为“off”时则表示不可选。 (2)Style:控件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MATLABGUI 滤波器 设计
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【人****来】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【人****来】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。