目 录
第一章 绪 论 ............................................................................................ 1
1.1 概 述 .................................................................................................. 1
1.2 研究意义 ............................................................................................... 1 1.3 本文的主要工作 ..................................................................................... 2 第二章MATLAB/GUI简介.............................................................................. 3
2.1 MATLAB概述 .......................................................................................... 3 2.2 图形用户界面GUI .................................................................................. 3 第三章 虚拟实验平台设计......................................................................... 5
3.1系统方案设计 ......................................................................................... 5 3.2 系统主界面设计 ..................................................................................... 6 3.3 简单函数性质模块 ................................................................................ 7
3.3.1 简单函数性质模块主界面 ............................................................ 7 3.3.2简单函数性质仿真界面 .................................................................. 8 3.3.3 简单函数波形程序 ...................................................................... 9 3.3.4 信号运算程序代码 .................................................................... 10 3.4 信号抽样模块 .................................................................................... 11 3.5 信号频谱分析模块 .............................................................................. 13 3.6 LTI系统时域分析模块 ........................................................................ 15
3.6.1 连续时间LTI系统 .................................................................... 16 3.6.2 离散时间LTI系统 .................................................................... 17 3.7 滤波器设计模块 ................................................................................. 18 3.8 生成可执行文件 ................................................................................... 22 3.9 小结 ................................................................................................... 22 第四章 虚拟实验平台的使用 ................................................................... 23
4.1 简述 ................................................................................................. 23 4.2 主界面 .............................................................................................. 23 4.3 简单函数性质 .................................................................................... 24 4.3 信号抽样 ........................................................................................... 26 4.4 信号频谱分析 .................................................................................... 27 4.5 LTI系统时域分析 ............................................................................... 28 4.6 滤波器设计 ........................................................................................ 29 第五章 小 结 .......................................................................................... 31
5.1 系统设计成果 .................................................................................... 31 5.2 系统设计不足 .................................................................................... 31 参考文献 ................................................................................................. 32 致 谢 ...................................................................................................... 33
第一章 绪 论
1.1 概 述
通信在现今生活中已是普遍存在,在经济发展,政治军事活动,个人生活中的应用已是相当普遍,是社会发展不可缺少的工具,自1844年莫而斯在华盛顿和巴尔的摩之间发送世界第一份电报以来,通信已经经历了150多年,发展到目前数字通信趋于替代模拟通信的趋势。《信号与系统》课程,是高等理工科类院校通信与电子信息工程等专业中一门十分重要的基础理论课,也是电子信息工程专业许多后续课程的重要理论基础。以前的信号模拟是通过硬件,对仪器和实验室的要求较高,不便于广泛应用,而且信号处理具有内容繁多、概念抽象、设计复杂等特点, 学生在学习时常常会感到枯燥, 难以理解和掌握。
本虚拟实验系统具有可视化的特点,操作方便、直观。通过GUI界面,学生可以进入教师指定的实验项目,进入相应的环境,设置和调整仿真参数,进行仿真试验;或者任意进入感兴趣的实验项目,打开参考资料及问题解答,进行自学。同时,仿真实验平台还提供了对应实验项目的仿真实例,学生可以通过仿真实验结果进行比较分析,自觉发现实验中存在的问题,锻炼独立思考问题、分析问题的能力。
1.2 研究意义
MATLAB作为编程语言和可视化工具 , 用MATLAB开发的实验为学生提供了“信号分析”、“信号抽样”、“系统仿真”、“系统特性”及“滤波器设计”等实验模块 。 它的界面演示框如同通用示波器 , 显示了信号分析与系统设计的动态仿真过程 , 给人以直观的感受。在教学中它能为同学们提供了大量的实例, 同时它也为同学们留下了深刻的印象,在实验中同学们可以改变信号、模块、仿真子系统等的参数 , 并观察信号与系统的相应变化。 在实验过程中 , 同学们对所学的书本知识会有感性的认识和直观的验证 , 加深对“信号与系统”原理的理解。
本课题能避开硬件系统的不足,巧妙的运用软件来仿真硬件才能实现的实验结果,大大降低了实验设备要求,节约了人力和财力,而且有很多的库函数可以在实验时直接调用,避免了用硬件做实验的局限性。可以更方便的做信号系统实验,为教学和研究提供了方便。还能够锻炼一个人在面对一个具体的项
1
目时,遇到问题,分析问题,解决问题的能力;获得独立策划、实施课题,并按照既定计划进行开发的经验,以及查找相关文献的能力。通过自己的努力使得对于MATLAB有一个全面的、深刻的认识,并且对MATLAB做界面的软件有了一定的了解,对系统规划有了初步的认识。为以后研发工作打下坚实的基础,积累宝贵的经验。
1.3 本文的主要工作
本文主要是针对以MATLAB为软件平台的信号系统虚拟实验平台的设计,用MATLAB语言编程开发一个适合小型的信号系统实验平台,方便学生学习。具体的工作主要有:
(1)信号与系统虚拟实验平台系统分析; (2)有关MATLAB软件简介、分析; (3)有关信号与系统实验平台的设计; (4)介绍信号与系统实验平台的使用; (5)系统测试、分析、总结。
2
第二章MATLAB/GUI简介
2.1 MATLAB概述
MATLAB取名源于Matrix Laboratory,意在于以矩阵方式处理数据,是国际上公认的优秀、可靠的科学计算和仿真标准软件。许多最具影响力的学术刊物上都可以看到MATLAB的广泛应用。MATLAB将数值计算和可视化环境集于一体,并提供很多函数,功能强大且直观简便,因而应用范围非常广泛。研究设计单位和工业部门同样公认MATLAB 的重要价值。例如美国 National Instruments 公司的信号测量与分析软件LabVIEW、Cadence 公司的信号和通信分析设计软件SPW 以及TI公司的DSP等都和MATLAB 有良好的接口。
一般认为MATLAB 的典型应用包括:(1)数值计算与分析;(2)符号运算;(3)建模与仿真;(4)数据可视化;(5)图形处理及可视化;(6)基于图形用户界面的应用程序开发。
MATLAB由主包和数十个可选的工具箱组成。主包带有功能丰富和完备的数字函数库,大量复杂的数学运算和分析都可以直接调用MATLAB函数求解。工具箱为特定的学科和研究领域提供丰富的处理工具支持,与信号与系统相关的工具箱,包括信号处理工具箱(Signal Processing Toolbox)、通信工具箱(Communication Toolbox)、控制系统工具箱(Control System Toolbox)等。
2.2 图形用户界面GUI
图形用户界面(Graphical User Interface,GUI)是由按钮、列表框、编辑框等用户界面控件构成的应用程序界面。在GUI下,用户无需记忆繁琐的命令,只需通过鼠标、键盘等即可与系统进行直观、便捷的交互。用户通过一定的方法激活这些图形对象,使计算机产生某种动作或变化,比如实现计算、绘图等。
MATLAB提供了功能强大的集成GUI开发环境(Graphical User Interface Development Environment,GUIDE),利用GUIDE用户可以方便地建立和设计GUI,并通过编程控制GUI和用户之间的交互操作。
图形用户界面(GUI)是用户与计算机程序之间的交互方式,是用户与计算机进行信息交流的方式。计算机在屏幕显示图形和文本,若有扬声器还可产生声音。用户通过输入设备,如:键盘、鼠标、跟踪球、绘制板或麦克风,与计
3
算机通讯。用户界面设定了如何观看和如何感知计算机、操作系统或应用程序。通常,多是根据悦目的结构和用户界面功能的有效性来选择计算机或程序。图形用户界面或GUI是包含图形对象,如:窗口、图标、菜单和文本的用户界面。以某种方式选择或激活这些对象,通常引起动作或发生变化。最常见的激活方法是用鼠标或其它点击设备去控制屏幕上的鼠标指针的运动。按下鼠标按钮,标志着对象的选择或其它动作。
创建GUI界面必须具备的三个基本元素:组件、图形窗口和回应,使用GUIDE创建GUI。GUIDE是一个组件工具集,能够生成用户所需的组件资源并保存在一个Fig文件中;其次,GUIDE还可以生成一个包含GUI初始化和发布控制代码的M文件,该文件为回调函数(用户在图形界面中激活某一控件时要执行的函数)提供了一个框架。GUIDE可以首先在布局GUI的同时生成以下两个文件:① FIG文件:该文件包括GUI图象的窗口和所有子对象(包括用户控件和坐标轴)的完全描述以及所有对象的属性值;② M文件:该文件包含用户用来发布和控制界面和回调函数的各种函数。该文件中不包含任何组件的布置信息。
设计中用到的控件有:按钮、文本框、坐标轴、下拉列表、滚动条等。所设计的GUI界面主要包括实验平台进入界面、实验名称界面、每一个实验项目界面及其对应的仿真实例、参考资料学习子界面等。
4