自动控制原理Matlab程序作业精.docx
- 文档编号:27623525
- 上传时间:2023-07-03
- 格式:DOCX
- 页数:13
- 大小:256.09KB
自动控制原理Matlab程序作业精.docx
《自动控制原理Matlab程序作业精.docx》由会员分享,可在线阅读,更多相关《自动控制原理Matlab程序作业精.docx(13页珍藏版)》请在冰豆网上搜索。
自动控制原理Matlab程序作业精
自控控制原理MATLAB程序设计作业
指导老师:
汪晓宁
一、题目............................................2
二、运行结果........................................3
三、程序说明........................................8
四、附录............................................9代码..............................................9参考文献.........................................17
一、题目
用Matlab创建用户界面,并完成以下功能
a将产生未综合系统的根轨迹图以及0.707阻尼比线,你可以交互地选择交点的运行点。
界面能显示运行点的坐标、增益值以及近似为二阶系统估算的超调量、调整时间、峰值时间、阻尼比、无阻尼自然震荡频率以及稳态误差
b显示未综合系统的阶跃响应
c输入控制器的参数,绘制综合后系统的根轨迹图以及显示综合的设计点(主导极点,允许不断改变控制器参数,知道所绘制的根轨迹通过设计点
d对于综合后的系统,显示运行点的坐标、增益,近似为二阶系统估算的超调量、调整时间、峰值时间、阻尼比、无阻尼自然震荡频率以及误差系数
e显示综合后系统的阶跃响应
二、运行结果
输入传递函数分子分母
生成根轨迹图
选择点并得到该点各项参数在下方输出面板输出
获得阶跃响应图
用rltool(辅助,选择合适的插入零点
输入零点,并得到根轨迹图
选择根轨迹图上的任一点,得到数据,在下方输出面板输出
得到阶跃响应图
三、运行说明
第一步,在请输入分子后的输入框输入传递函数分子的矩阵,在下一输入框输入传递函数分母并按“生成根轨迹图”按钮获得根轨迹
第二步,按选择点并显示各参数获得根轨迹图上任一点的各项数据,数据全部输出在下方输出面板
第三步,按“生成阶跃响应图”按钮可以获得该函数的阶跃响应
第四步,在“请输入插入零点”后的输入框中输入参数,并按“生成综合后根轨迹图”按钮产生根轨迹(可以通过点击“根轨迹校正”按钮,调用工具箱拖动零点进行快速查看根轨迹图,选择合适的根轨迹再在输入框中输入零点的值
第五步,按“选择点并显示各参数(综合后系统”选取各点,查阅参数,数据输出在下方输出面板上
第六步,按“生成阶跃响应图(综合后系统”可以得到综合后系统的阶跃响应
最后,点击“退出”结束程序
四、附录
代码:
functionvarargout=Liushuai20122510(varargin
%LIUSHUAI20122510MATLABcodeforLiushuai20122510.fig
%LIUSHUAI20122510,byitself,createsanewLIUSHUAI20122510orraisestheexisting
%singleton*.
%
%H=LIUSHUAI20122510returnsthehandletoanewLIUSHUAI20122510orthehandleto
%theexistingsingleton*.
%
%LIUSHUAI20122510('CALLBACK',hObject,eventData,handles,...
callsthelocal
%functionnamedCALLBACKinLIUSHUAI20122510.Mwiththegiveninputarguments.
%
%LIUSHUAI20122510('Property','Value',...createsanewLIUSHUAI20122510orraisesthe
%existingsingleton*.Startingfromtheleft,propertyvaluepairsare
%appliedtotheGUIbeforeLiushuai20122510_OpeningFcngetscalled.An
%unrecognizedpropertynameorinvalidvaluemakespropertyapplication
%stop.AllinputsarepassedtoLiushuai20122510_OpeningFcnviavarargin.
%
%*SeeGUIOptionsonGUIDE'sToolsmenu.Choose"GUIallowsonlyone
%instancetorun(singleton".
%
%Seealso:
GUIDE,GUIDATA,GUIHANDLES
%EdittheabovetexttomodifytheresponsetohelpLiushuai20122510%LastModifiedbyGUIDEv2.516-Dec-201410:
28:
20
%Begininitializationcode-DONOTEDIT
gui_Singleton=1;
gui_State=struct('gui_Name',mfilename,...
'gui_Singleton',gui_Singleton,...
'gui_OpeningFcn',@Liushuai20122510_OpeningFcn,...
'gui_OutputFcn',@Liushuai20122510_OutputFcn,...'gui_LayoutFcn',[],...
'gui_Callback',[];
ifnargin&&ischar(varargin{1}
gui_State.gui_Callback=str2func(varargin{1};
end
ifnargout
[varargout{1:
nargout}]=gui_mainfcn(gui_State,varargin{:
};
else
gui_mainfcn(gui_State,varargin{:
};
end
%Endinitializationcode-DONOTEDIT
%---ExecutesjustbeforeLiushuai20122510ismadevisible.
functionLiushuai20122510_OpeningFcn(hObject,eventdata,handles,varargin
%Thisfunctionhasnooutputargs,seeOutputFcn.
%hObjecthandletofigure
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
%varargincommandlineargumentstoLiushuai20122510(seeVARARGIN
%ChoosedefaultcommandlineoutputforLiushuai20122510
handles.output=hObject;
%Updatehandlesstructure
guidata(hObject,handles;
%UIWAITmakesLiushuai20122510waitforuserresponse(seeUIRESUME%uiwait(handles.figure1;
%---Outputsfromthisfunctionarereturnedtothecommandline.functionvarargout=Liushuai20122510_OutputFcn(hObject,eventdata,handles
%varargoutcellarrayforreturningoutputargs(seeVARARGOUT;
%hObjecthandletofigure
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
%Getdefaultcommandlineoutputfromhandlesstructure
varargout{1}=handles.output;
%---Executesonbuttonpressinpushbutton1.
functionpushbutton1_Callback(hObject,eventdata,handles
%hObjecthandletopushbutton1(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
num=str2num(get(handles.edit1,'String';
den=str2num(get(handles.edit2,'String';
G=tf(num,den;
rlocus(G
holdon;
sgrid(0.707,[]
holdoff;
%---Executesonbuttonpressinpushbutton2.
functionpushbutton2_Callback(hObject,eventdata,handles
%hObjecthandletopushbutton2(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
num=str2num(get(handles.edit1,'String';
den=str2num(get(handles.edit2,'String';
sys=tf(num,den;
[y,t]=step(sys;
plot(t,y;
gridon;
%---Executesonbuttonpressinpushbutton3.
functionpushbutton3_Callback(hObject,eventdata,handles
%hObjecthandletopushbutton3(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATAclose(gcbf;
functionedit1_Callback(hObject,eventdata,handles
%hObjecthandletoedit1(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
%Hints:
get(hObject,'String'returnscontentsofedit1astext
%str2double(get(hObject,'String'returnscontentsofedit1asadouble
%---Executesduringobjectcreation,aftersettingallproperties.functionedit1_CreateFcn(hObject,eventdata,handles
%hObjecthandletoedit1(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesempty-handlesnotcreateduntilafterallCreateFcnscalled
%Hint:
editcontrolsusuallyhaveawhitebackgroundonWindows.
%SeeISPCandCOMPUTER.
ifispc&&isequal(get(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'
set(hObject,'BackgroundColor','white';
end
%---Executesonbuttonpressinpushbutton4.
functionpushbutton4_Callback(hObject,eventdata,handles
%hObjecthandletopushbutton4(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
num=str2num(get(handles.edit1,'String';
den=str2num(get(handles.edit2,'String';
finalvalue=polyval(num,0/polyval(den,0
sys=tf(num,den;
[Kc,p]=rlocfind(sys;
set(handles.Kc,'string',Kc;
X=real(p(1
Y=imag(p(1
set(handles.Xpoint,'string',num2str(X;
set(handles.Ypoint,'string',num2str(Y;
damp=sqrt(X(1,1^2/(X(1,1^2+Y(1,1^2;
Wn=abs(X(1,1/damp;
Tp=pi/(Wn*sqrt(1-damp^2;
overshoot=exp(-pi*damp/sqrt(1-damp^2;
Ts=3/(damp*Wn;
deviation=Wn^2;
set(handles.overshoot,'string',num2str(overshoot;
set(handles.Ts,'string',Ts;
set(handles.Tp,'string',Tp;
set(handles.Wn,'string',num2str(Wn;
set(handles.damp,'string',num2str(damp;
set(handles.deviation,'string',deviation;
functionedit2_Callback(hObject,eventdata,handles
%hObjecthandletoedit1(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
%Hints:
get(hObject,'String'returnscontentsofedit1astext
%str2double(get(hObject,'String'returnscontentsofedit1asadouble
%---Executesduringobjectcreation,aftersettingallproperties.functionedit2_CreateFcn(hObject,eventdata,handles
%hObjecthandletoedit1(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesempty-handlesnotcreateduntilafterallCreateFcnscalled
%Hint:
editcontrolsusuallyhaveawhitebackgroundonWindows.
%SeeISPCandCOMPUTER.
ifispc&&isequal(get(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'
set(hObject,'BackgroundColor','white';
end
%---Executesonbuttonpressinpushbutton5.
functionpushbutton5_Callback(hObject,eventdata,handles
%hObjecthandletopushbutton5(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
num=str2num(get(handles.edit1,'String';
den=str2num(get(handles.edit2,'String';
sys=tf(num,den
rltool(sys;%ÀûÓù¤¾ßµ÷Õû¿ØÖÆÆ÷²ÎÊýʹ֮¾-¹ýÖ÷µ¼¼«µã
functionedit4_Callback(hObject,eventdata,handles
%hObjecthandletoedit4(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
%Hints:
get(hObject,'String'returnscontentsofedit4astextw'q%str2double(get(hObject,'String'returnscontentsofedit4asadouble
%---Executesduringobjectcreation,aftersettingallproperties.functionedit4_CreateFcn(hObject,eventdata,handles
%hObjecthandletoedit4(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesempty-handlesnotcreateduntilafterallCreateFcnscalled
%Hint:
editcontrolsusuallyhaveawhitebackgroundonWindows.
%SeeISPCandCOMPUTER.
ifispc&&isequal(get(hObject,'BackgroundColor',get(0,'defaultUicontrolBackgroundColor'
set(hObject,'BackgroundColor','white';
end
%---Executesonbuttonpressinpushbutton6.
functionpushbutton6_Callback(hObject,eventdata,handles
%hObjecthandletopushbutton6(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
%---Executesonbuttonpressinpushbutton7.
functionpushbutton7_Callback(hObject,eventdata,handles
%hObjecthandletopushbutton7(seeGCBO
%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA
%---Executesonbuttonpressinpushbutton8.
functionpushbutton8_Callback(hObject,eventdata,handles
%hObjecthandletopushbutton8(seeGCBO
%eventdatareserved-tobedefinedinafuturevers
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自动控制 原理 Matlab 程序 作业