资源描述:
《基于matlab+gui滤波器设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、MATLAB课程设计报告基于MATLABGUI的“滤波器设计软件”设计59摘要面对庞杂繁多的原始信号,如何提取所需信号、抑制不需要的信号这就需要使用滤波器。滤波器的作用主要是选择所需频带的信号内容而抑制不需要的其他频带的信号内容。数字滤波器因其精度高、可靠性好、灵活性大等优点,在语音信号处理、信号频谱估计、信号去噪、无线通信中的数字变频以及图像处理等工程实际应用中都很广泛。根据其冲击响应函数的时域特性可将数字滤波器分为IIR(有限长冲击响应)和FIR(无限长冲击响应)。作为强大的计算软件,MATLAB提供了编写图形用户界面的功能。所谓图形用户界面,简称为GUI,是由各种图
2、形对象,如图形窗口菜单按钮、文本框等构建的用户界面。MATALB可以创建图形用户界面GUI(GraphicalUserInterface),它是用户和计算机之间交流的工具。MATLAB将所有GUl支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。而且具有强大的绘图功能,可以轻松的获得更高质量的曲线图。关键词:MATLABGUIIIR滤波器FIR滤波器59目录1设计任务12MATLABGUI的简介23滤波器设计原理33.1滤波器概述33.2IIR数字滤波器43.2.1IIR数字滤波器设计原理43.2.2IIR
3、滤波器设计思想53.2.3IIR滤波器设计编程实现63.3FIR数字滤波器83.3.1FIR数字滤波器设计原理83.3.2FIR滤波器设计思想94基于MatlabGUI的数字滤波器设计思路及实现124.1GUI界面设计概述124.2“滤波器设计软件”设计所实现任务144.3基于MatlabGUI的数字滤波器设计实现164.3.1“滤波器设计软件”GUI界面设计164.3.2“滤波器设计软件”回调函数编写174.3.3AutoChoose.m程序的编写224.4运行和结果显示285设计总结和心得335.1设计总结335.2设计心得34Abstract35参考文献36附录59
4、1设计任务1设计目的1.巩固所学习过的关于数字信号处理的滤波器的设计2.学习使用MATLABGUI设计工具应用平面2设计要求要求:“滤波器设计软件”设计1、要有人机交互界面。2、滤波器设计的类型、参数均有多个值可供选择。3、当用户选择(或输入)滤波器的参数时,能够及时显示设计好的滤波器的频谱。4、该软件可设计FIR或IIR型滤波器至少一种。592MATLABGUI的简介 MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。 MATLAB
5、是矩阵实验室(MatrixLaboratory)的简称,和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLA
6、B成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用。MATALB可以创建图形用户界面GUI(GraphicalUserInterface),它是用户和计算机之间交流的工具。MATLAB将所有GUl支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。而且具有强大的绘图功能,可以轻松的获得更高质量的曲线图。593滤波器设计原理3.1滤波器概述随着信息时代和数字世界的到来,数字信号处理已成
7、为当今一门极其重要的学科和技术领域。数字信号处理在通信、语音、图像,自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理中,数字滤波器占有极其重要的地位。现代数字滤波器可以用软件或设计专用的数字处理硬件两种方式来实现,用软件来实现数字滤波器优点是随着滤波器参数的改变,很容易改变滤波器的性能。根据数字滤波器单脉冲响应的时域特性可将数字滤波器分为两种,即IIR(InfiniteImpulseResponse)无限长脉冲响应数字滤波器和FIR(FiniteImpulseResponse)有限长脉冲