设计最优控制系统.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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)

天马行空 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档