您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > GUI控制系统典型环节的演示
GUI控制系统典型环节的演示森地无疆-1-控制系统典型环节的演示程序1.GUI的启动在工具栏选打开,或者在命令窗口提示符下输入guide打开。打开GUIDE后,即呈现如图1.1所示的启动界面。图1.1GUI启动界面2.GUI界面的创建如图1.1所示,选择默认界面,即BlankGUI(default),确认后即弹出如图1.2所示的初始界面。图1.2现实控件名称的设置界面3.控制系统典型环节的演示程序的设计1)程序功能描述进行控制系统典型环节的演示,包括典型环节运行效果的演示与代码的展示。也可以在代码区输入绘制曲线语句并通过单击定制按钮绘制曲线。2)程序界面设计根据程序功能要求,添加不同控件,并设置控件各自的属性。GUI控制系统典型环节的演示森地无疆-2-1)添加Axes控件,用来显示演示图形,双击调出属性编辑器进行各种属性设置,Tag属性设为“myAxes”。如图1.3所示。图1.3Axes控件属性设置2)添加Panel控件用来盛放其他控件,如图1.4所示。这里我们盛放EditText控件。Tag属性设为“uipanel”,Title属性设为空。图1.4添加Panel控件3)添加EditText控件盛放于Panel控件中,此处作为代码区,如图1.5所示。Tag属性设为“strCode”,String属性设为空,可以看到该控件中心“EditText”字样消失,及背静颜色等的设置。图1.5EditText控件的添加GUI控制系统典型环节的演示森地无疆-3-4)添加StaticButton控件作为标识。Tag属性设为“textDemo”,String属性设为“典型环节演示”。5)添加ListBox控件来从中选择4个不同的典型环节选项。Tag属性设为“lstBox”,String属性设为:6)添加两个PushButton控件。一个用于定制曲线的绘制,用户在代码区输入绘制曲线语句后,单击此按钮进行曲线的绘制。Tag的属性设为“btnDraw”,String属性设为“定制曲线”,TooltipString属性设为“在代码区中输入曲线参数,绘制任意曲线”。另一个用于关闭运行窗口,Tag的属性设为“btnClose”,String属性设为“关闭”,TooltipString属性设为“关闭窗口”。至此,界面所需控件已设置完毕,如图1.6所示。图1.6程序界面设计草图如果控件排列的不够整齐,可进行控件的排列。在工具栏选或选Tools|AlignObjects弹出窗口如图1.7所示。如对窗口右侧4个控件按钮竖排整齐,如图1.7所示。GUI控制系统典型环节的演示森地无疆-4-图1.7界面控件布局设置如果需要还可以添加类似于Windows窗口菜单栏选项。在编辑窗口工具栏选或选Tools|MenuEditor,弹出编辑窗口如图1.8所示。图1.8菜单设计的编辑窗口3)程序代码设计根据功能需求,给按钮添加动作按钮,即给它编写一个回调函数。(1)定制曲线按钮的回调函数选定“定制曲线”按钮后,右击鼠标,选择ViewCallbacks|Callback保存生成文件后自动打开helloworld.m文件,并指向该回调函数如图1.9所示,根据需要为其在指向处GUI控制系统典型环节的演示森地无疆-5-添加语句如下。添加效果如图1.10所示。trystr=char(get(handles.strCode,'String'));str0=[];forii=1:size(str,1)str0=[str0,deblank(str(ii,:))];endeval(str0);axes(handles.myAxes);plot(x,y);catcherrordlg('请重新检查输入数据!');end图1.9定制曲线回调函数位置图1.10定制曲线的回调函数(2)典型环节列表框的回调函数按上操作添加语句如下。添加后如图1.11所示。GUI控制系统典型环节的演示森地无疆-6-v=get(handles.lstBox,'value');switchvcase1,str1='nump=3;denp=1;';str2='t=0:0.1:10;';str3='[y,t,x]=step(nump,denp,t);';set(handles.strCode,'String',char(str1,str2,str3));set(handles.uipanel,'Title','比例环节');case2,str1='nump=1;deng=[0.21];';str2='t=0:0.1:10;';str3='[y,t,x]=step(nump,deng,t);';set(handles.strCode,'String',char(str1,str2,str3));set(handles.uipanel,'Title','惯性环节');case3,str1='K=2;T=0.1;N=5;numpd=[K*TK];denpd=[T/N1];';str2='t=0:0.1:10;';str3='[y,t,x]=step(numpd,denpd,t);';set(handles.strCode,'String',char(str1,str2,str3));set(handles.uipanel,'Title','比例微分环节');case4,str1='K=4;T=0.2;N=5;numpi=[K*TK];denpd=[T0];';str2='t=0:0.1:10;';str3='[y,t,x]=step(numpi,denpi,t);';set(handles.strCode,'String',char(str1,str2,str3));set(handles.uipanel,'Title','比例积分环节');endbtnDraw_Callback(hObject,eventdata,handles)(3)关闭窗口的回调函数添加如下语句,添加后如图1.12所示。close(gcf);4.程序测试运行运行程序后,出现如图1.13所示界面。输入绘制曲线如下代码,x=0:0.1:4*pi;y=cos(x);单击“定制曲线”按钮后,出现如图1.14所示的运行结果。5.各典型环节演示运行点击工具栏按钮,弹出如图1.1所示GUI启动界面,选择OpenExitingGUI打开已经编辑建立好的窗口如图1.15所示,打开窗口编辑界面,选择编辑栏Tools|Run选项或点击按钮弹出运行界面后选择各典型环节,运行结果分别如图1.16~1.19所示。GUI控制系统典型环节的演示森地无疆-7-图1.11典型环节列表框的会点函数图1.12关闭窗口的回调函数GUI控制系统典型环节的演示森地无疆-8-图1.3程序界面图1.14定制曲线运行结果GUI控制系统典型环节的演示森地无疆-9-图1.15打开已经设计好的演示窗口图1.16比例环节演示结果图1.17惯性环节演示结果GUI控制系统典型环节的演示森地无疆-10-图1.18比例微分环节演示结果图1.19比例积分环节演示结果
本文标题:GUI控制系统典型环节的演示
链接地址:https://www.777doc.com/doc-5462059 .html