一个自己调试成功的matlabGUI程序界面.doc_第1页
一个自己调试成功的matlabGUI程序界面.doc_第2页
一个自己调试成功的matlabGUI程序界面.doc_第3页
一个自己调试成功的matlabGUI程序界面.doc_第4页
一个自己调试成功的matlabGUI程序界面.doc_第5页
免费预览已结束,剩余3页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一个自己调试成功的GUI程序界面% 一个自己调试成功的GUI程序界面。随着阻尼系数的调整,可以显示曲线的最大峰值和上升时间。可以作为GUI学习用的理解。%matlab7.0function varargout = feishijian(varargin)% FEISHIJIAN M-file for feishijian.fig% FEISHIJIAN, by itself, creates a new FEISHIJIAN or raises the existing% singleton*.% H = FEISHIJIAN returns the handle to a new FEISHIJIAN or the handle to% the existing singleton*.% FEISHIJIAN(CALLBACK,hObject,eventData,handles,.) calls the local% function named CALLBACK in FEISHIJIAN.M with the given input arguments.% FEISHIJIAN(Property,Value,.) creates a new FEISHIJIAN or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI before feishijian_OpeningFunction gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to feishijian_OpeningFcn via varargin.% *See GUI Options on GUIDEs Tools menu. Choose GUI allows only one% instance to run (singleton).% See also: GUIDE, GUIDATA, GUIHANDLES% Copyright 2002-2003 The MathWorks, Inc.% Edit the above text to modify the response to help feishijian% Last Modified by GUIDE v2.5 20-Apr-2009 15:13:57% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct(gui_Name, mfilename, . gui_Singleton, gui_Singleton, . gui_OpeningFcn, feishijian_OpeningFcn, . gui_OutputFcn, feishijian_OutputFcn, . gui_LayoutFcn, , . gui_Callback, );if nargin & ischar(varargin1) gui_State.gui_Callback = str2func(varargin1);endif nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);end% End initialization code - DO NOT EDIT% - Executes just before feishijian is made visible.function feishijian_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to feishijian (see VARARGIN)t=0:0.1:10;z=0.02;y=step(1,1 2*z 1,t);hline=plot(t,y);ym,km=max(y);% Choose default command line output for feishijianhandles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes feishijian wait for user response (see UIRESUME)% uiwait(handles.figure1);% - Outputs from this function are returned to the command line.function varargout = feishijian_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structurevarargout1 = handles.output;% - Executes on button press in gridon.function gridon_Callback(hObject, eventdata, handles)% hObject handle to gridon (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)grid on% - Executes on button press in gridoff.function gridoff_Callback(hObject, eventdata, handles)% hObject handle to gridoff (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)grid off% - Executes during object creation, after setting all properties.function axes1_CreateFcn(hObject, eventdata, handles)% hObject handle to axes1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: place code in OpeningFcn to populate axes1% - Executes on slider movement.function slider1_Callback(hObject, eventdata, handles)% hObject handle to slider1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,Value) returns position of slider% get(hObject,Min) and get(hObject,Max) to determine range of sliderz=get(hObject,Value);str1=阻尼系数z=;dt=0.1;t=0:dt:15;N=length(t);y=step(1,1 2*z 1,t);plot(t,y);set(handles.xishu, string ,str1,sprintf( %1.4g ,z); % 更新静态文本框内容 % - Executes during object creation, after setting all properties.function slider1_CreateFcn(hObject, eventdata, handles)% hObject handle to slider1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: slider controls usually have a light gray background.if isequal(get(hObject,BackgroundColor), get(0,defaultUicontrolBackgroundColor) set(hObject,BackgroundColor,.9 .9 .9);end% -function option_Callback(hObject, eventdata, handles)% hObject handle to option (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% -function boxon_Callback(hObject, eventdata, handles)% hObject handle to boxon (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)box on set(handles.boxon,enable,off) set(handles.boxoff,enable,on) % -function boxoff_Callback(hObject, eventdata, handles)% hObject handle to boxoff (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)box off set(handles.boxoff,enable,off) set(handles.boxon,enable,on) % - Executes during object creation, after setting all properties.function xishu_CreateFcn(hObject, eventdata, handles)% hObject handle to xishu (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% - Executes on button press in shangsheng.function shangsheng_Callback(hObject, eventdata, handles)% hObject handle to shangsheng (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hint: get(hObject,Value) returns toggle state of shangshengt=0:0.1:10;z=get(handles.slider1,Value);y=step(1,1 2*z 1,t);k95=min(find(y0.95);k952=(k95-1),k95;t95=interp1(y(k952),t(k952),0.95); % 线性插值 line(t95,0.95, marker , o , markeredgecolor , r , markersize ,6);tstr95= t95 = ,sprintf( %1.4g ,t95);text(t95,0.65,tstr95)% - Executes on button press in zuida.function zuida_Callback(hObject, eventdata, handles)% hObject handle to zuida (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hint: get(hObject,Value) returns toggle state of zuidadt=0.1;t=0:dt:15;N=length(t);z=get(handles.slider1,Value);y=step(1,1 2*z 1,t);ym,km=max(y);if km(N-3) % 假如在设定时间范围内能插值 k1=km-3;k2=km+3;k12=k1:k2;tt=t(k12);yy=spline(t(k12),y(k12),tt); % 局部样条插值 yym,kkm=max(yy); % 求更精确的峰值位置line(tt(kkm),yym, marker , . , . % 画峰值点 markeredgecolor , r , markersize ,20);ystr= ymax = ,sprintf( %1.4g ,yym);tstr= tmax = ,sprintf( %1.4g ,tt(kkm);text(tt(kkm),1.05*yym,ystr;tstr)else % 假如在设定时间范围内不能插值 text(10,0.4*y(end), ymax - 1 ; tmax - inf )end下面的这个程序是上面页面显示的这个程序的matlab中用*.m源码程序编写的,能实现同样的功能至于喜欢哪个就看自己需要了,希望能帮到大家。%这是一个有关静态框和滑动框的示例程序。源程序是在6.5版本下运行的,但报警告信息原因是因为7.0中修改了sprintf函数的格式6.5中为sprintf(%1.4g,z)7.0中为sprintf(%1.4g,z)%clf resetset(gcf,unit,normalized,position,0.1,0.2,0.64,0.35);set(gcf,defaultuicontrolunits,normalized);set(gcf,defaultuicontrolfontsize,12);set(gcf,defaultuicontrolfontname,隶书);set(gcf,defaultuicontrolhorizontal,left);str=归一化二阶系统阶跃响应曲线;set(gcf,name,str,numbertitle,off);h_axes=axes(position,0.05,0.2,0.6,0.7);set(h_axes,xlim,0,15);str1=当前阻尼比=;t=0:0.1:10;z=0.5;y=step(1,1 2*z 1,t);hline=plot(t,y);htext=uicontrol(gcf,style,text,. position,0.67,0.8,0.33,0.1,. string,str1,sprintf(%1.4g,z);hslider=uicontrol(gcf,style,slider,. position,0.67,0.65,0.33,0.1,. max,2.02,min,0.02,. sliderstep,0.01,0.05,. Value,0.5);hcheck1=uicontrol(gcf,style,checkbox,. str

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论