基于GUI的仿真平台的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于GUI的仿真平台的设计
3 基于GUI的《信号与系统实验》仿真平台的设计
3.1 设计思想
3.1.1 设计步骤
本课题设计的界面布局是先设计GUI总界面,然后设计子界面,再在子界面上设置按钮、坐标轴、文本框等一系列控件,最后借助于callback函数调用程序。在函数调用程序的设计中先编写各个子界面中的回调函数下的程序,再编写GUI界面的回调函数下的程序。
1. 用MATLAB的GUIDE提供的创建图形界面工具设计整个实验仿真界面的主界面,在设计子界面;
2. 在实验子界面中添加各个控件对象,编写控件按钮回调函数,实现每个控件的控制功能,直接通过界面上的控件实现对结果的分析;
3. 最后编写GUI总界面的回调函数程序,把所有的子界面集合在总界面中,通过总界面可以进入任意子界面中并可以进行操作;
4. 退出实验界面。
设计流程如图3-1:
先设计
在子界
编写子
最后编写GUI
主界面回调函
退出实
图3-1 设计流程图
3.1.2 实验系统整体结构设计
信号与系统实验繁多、复杂、许多实验还需要输入参数,若将系统设计成一个界面,使得系统繁重、拥挤、不能够实现友好,美化的界面的设计要求。因此,在设计界面的时候,采用一个主界面和若干个子界面,每个子界面是一个模块,实现一个实验或功能,并且可以通过主界面调用子界面的设计方法。
本实验系统整体结构设计由两部分组成:界面模块设计和菜单模块设计。其中界面模块中包含六大实验模块:主界面模块、基本信号的产生实验模块、信号的基本运算实验模块、卷积实验模块、傅里叶变换实验模块、连续零状态响应实验模块、低通滤波器实验模块。如傅里叶变换实验模块又包含方波傅里叶实验界面、离散傅里叶实验界面、快速傅里叶实验界面。在菜单设计时,在实验子界面中除了使用系统约定的菜单条外,还增加了几个控制背景和退出实验的菜单。系统的整体结构如图3-2所示:
图3-2 实验系
基本信
号信号的
基 卷
积 傅立叶
变连续系统
低通滤波
主
退出
统的整体结构
3.2 基于GUI的系统总界面的设计
3.2.1 设计步骤
在GUIDE的编辑界面中,在空白处双击或者单机右键选择property inspector,出现属性设置对话框,可以对GUI的属性风格进行个性化。Color选项可以改变背景颜色,选择自己喜欢的颜色,本课题是插入图片。Position选项可以对界面窗口的大小进行调整,窗口的大小可以通过设置width和height进行调整,也可以用鼠标拖拽窗口,用鼠标拖拽窗口设置比较方便、快捷,也更容易设置适合于实验设计内容的大小GUI界面。
下面详细介绍主界面的设计过程:
点击运行MATLAB软件后,在软件界面中直接点击GUIDE工具,选择Create New GUI中的Blank GUI(Defarlt)点击OK,在弹出的新建窗口中拖入7个静态文本框(Statec Text)和7个按钮(Push Button)如图3-4所示。设置静态文本的String为“基于GUI的信号与系统仿真实验平台的设计”Background Color为浅红色,FontSize为28.0,Foreground Color位黑色。依次设置另外六个静态文本框String 为“实验一基本信号的产生”、“实验二信号的基本运算”、“实验三卷积”、“实验四傅里叶变换”、“实验五连续系统零状态响应”、“实验六低通滤波器”这几个实验的Fonsize为22.0,另外的六个按钮依次设计的Fonsize为16.0。点击每个实验后的按钮编写回调函数进入相应的实验子界面中,也可参考图3-3流程:
图3-3 主界面流程图
在其相应的位置编写主界面进入子界面的程序如下:
function pushbutton1_Callback(hObject, eventdata, handles)
set(0,'CurrentFigure',jbxhdcs)进入“实验一基本信号的产生”实验中可实现信号的产生。
还可在主界面中插入一些背景图片,使主界面看起来更加的美观,如添加学校LOGO、风景图片等来美化实验主界面。插入背景图片相应的需要编写回调函数,点击主界面背景函数Callback中的CreateFcn进入相应的程序编写位置,编写的背景插入图片的程序参考附录,点击主界面中的运行按钮如图3-5所示是设计完成后的实验系统主界面。
3.2.2 主界面仿真平台设计
在设计的主界面平台添加相应的按钮、文本框、设置字体的大小和字体背景的颜色,编写回调函数和界面背景图片插入。如图3-4所示:
图3-4 主界面
3.2.3 仿真结果分析
点击运行按钮后的主界面仿真结果如图3-5所示,可以点击任意一个实验按钮进入相应的子界面实验中,实验仿真结果结束后,可点击退出按钮结束本次实验。
图3-5 运行后的主界面
3.3 基于GUI的系统子界面的设计
3.3.1 设计步骤
子界面的设计和主界面的设计有些相似,主要由每个控件的属性,并加入相应的回调函数callback程序实现其相应的功能。如图3-7所示以“基本信号的产生”子界面为例,点击Menu Editor 中的New Menu会出现Untitled1,在其上点击出现Menu Properties,修改其中的Label选项,命名为“基本信号的产生”。
点击Axes按钮,在GUIDE界面空白处适当位置点击,会出现一个坐标轴图标,用鼠标拖拽到想要的大小。在此图标上点击右键,在View Callback选项中选择buttondownfcn,编写回调函数。选择Static text按钮,在空白处点击左键,把出现在窗口中的Static文本拖拽到适当大小,单击右键或双击左键,设置背景颜色“Background color”,字体颜色“Foreground color”,字体大小“Font size”;选择Edit text按钮,在空白处适当位置处点击,把出现的文本框拖拽到适当大小,双击左键,设置“String”为“”等的属性。本课题设计的字体大小一般设置为15,有的会适当调整。“退出”的设置:在Push button5上双击左键将“String”选项内容改为“退出”,在这个按钮的回调函数view Callback中的Callback选项下写入“Close jbxhdcs”就可实现子界面的关闭。可参考流程图3-6:
创建
在子界面中添加
坐标和按钮调节到适当
在控件按钮处添
编写子界面关
点击界面中的Menu
Editor中的New Menu出
结