- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MATLAB实践课题
设计最优控制系统
姓名:朱建军 学号:200992150143 班级:09电控
课题目的:
最优控制是在一定的约束条件下,从已给定的初始状态出发, 确 定最优控制作用的函数式,使目标函数为极小或极大。在设计最优控制器的过程中,运用MATLAB最优控制设计工具,会大大减小设计的复杂性。
课题要求
运用Matlab语言编制程序,并用GUI设计可视化界面,设计最优控制系统。
设计方案
1.参考课件及网络资源,深入了解GUI设计。
2.设计二次型调节器
3.设计最优控制器
4.求黎卡提方程的最优解
四、作品概要
1.开始界面
原系统的阶跃响应
3加最优反馈后系统的阶跃响应
q=10,R=10的情况
q=100,R=1的情况
优化系统的阶跃响应
5状态阶跃响应
核心代码
1.源程序
A=[0,1,0;0,0,1;-1,-4,-9];B=[0;0;1];C=[1,0,0];D=0;
q=input(q=);R=input(R=);
Q=diag([q,1,1]);
[k,s,e]=lqp(A,B,Q,R);k,e
A1=A-B*k;B1=B*k(1);C1=C;D1=D;
s0=ss(A,B,C,D);
[y,t,x]=step(s0);
figure(1)
plot(t,y,*,t,x),grid,
s1=ss(A1,B1,C1,D1);
[y1,t1,x1]=step(s1);u1=k*x1;
figure(2),plot(t1,y1,*,t1,u1,.-,t1,x1),grid
legend(y1,u1,x1);
控制器源代码
%状态阶跃响应
A=-diag([0.2,0.5,14.3,33.3,10])+diag([0.5,1.6,86.8,100],1);
B=[0,0,0,0,30];C=[1,0,0,0,0];D=0;
Q=diag([1,1,1,1,1]);R=1;[k,s,e]=lqr(A,B,Q,R);
disp(最优反馈增益矩阵k);k
%阶跃响应
k1=k(1);
Ac=A-B*k;Bc=B*k1;Cc=C;Dc=D;
figure(1);step(Ac,Bc,Cc,Dc);title(优化系统的阶跃响应);
xlabel(Sec);ylabel(Output y=x1);
figure(2);[y,x,t]=step(Ac,Bc,Cc,Dc);
plot(t,x,k);
title(状态阶跃响应);
xlabel(Sec);ylabel(Output x1,x1,x3,x4,x5);
背景图代码
% **_OpeningFcn函数是GUI在打开时的执行的命令,此时GUI界面还没有显示出来
% 将背景图像载入Matlab
% 如果图像不在当前目录,必须使用完整路径
backgroundImage = importdata(sunset-beach.jpg);
% 选择坐标系
axes(handles.axes1);
% 将图片添加到坐标系中,于是就成了背景了
image(backgroundImage);
% 将坐标系的坐标轴标签去掉
axis off
调用另一个GUI代码
怎样在MATLAB GUI界面中调用另外一个GUI界面
悬赏分:0 | 解决时间:2010-5-21 12:23 | 提问者:weichunxia0122 点击一个按钮,出来另外一个GUI界面,应该怎样在编程
最佳答案 你先用GUI编辑第二个界面,保存命名如wenjian,在第一个按钮的回调函数中写如下语句:
h=gcf;
untitled1;
close(h);
然后保存,运行这个按钮界面,点击按钮就可以出现“wenjian”
这个界面了。
参考资料
MATLAB中文论坛以及matlab贴吧
还有一些博客日记
课本
文档评论(0)