基于MATLAB的线性二次型最优控制设计.docxVIP

基于MATLAB的线性二次型最优控制设计.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中国科技论文在线 — 1— 基于 MATLAB 的线性二次型最优控制设计 王国星 西北工业大学自动化学院,陕西西安(710129) E-mail: wangguoxing@ 摘 要 : 本文介绍了线性二次型最优控制的基本原理,并给定了一个具体的控制系统,利 用 MATLAB 软件对其最优控制矩阵进行了求解,最后用 SIMULINK 对所给定的系统进行 了仿真,通过仿真实验,设计所得到的线性二次型最优控制效果比较好,达到了设计的目的。 关键词: MATLAB; 线型二次型;最优控制; SIMULINK 中图分类号: TP391 文献标识码: A 1. 引 言 最优控制问题就是寻找一个控制系统的最优控制方案或最优控制规律,使系统能最优地 达到预期的目标。以状态空间理论为基础的最优控制算法是当前振动控制中采用最为普遍的 控制器设计方法。本文所讨论的系统是完全可观测的,所以可以用线性二次型最优控制。 2. 最优控制理论介绍 假设线性时不变系统的状态方程模型为] 引入一个最优控制的性能指标,即设计一个输入量u, 使得 为最小。其中Q和R分别为对状态变量和输入变量的加权矩阵;t;为控制作用的终止时间。矩 阵S 对控制系统的终值也给出某种约束,这样的控制问题称为线性二次型 (Linear Quadratic, 简称LQ) 最优控制问题。 为了求解LQ问题,我们取 Hamilton 函数山 H(t,x(t),u(t),A(t)) =0.5(x(t)Q(t)x(t)+u2(t)R(t)u(t))+a(t)(A(t)x(t)+B(t)u(t)); 并应用变分原理推导出LQ 问题解满足的必要条件: x(t)=A(t)x(t)+B(t)u(t); 其中一种较为简便的解法为: 令 A(t)=P(t)x(t) http://www,中国科技论文在线 http://www, —2— 而将对A(t) 的求解转化到对函数矩阵 P(t) 的求解`,特别的,将几(t)=P(t)x(t)代入上述式子 中可得函数矩阵 P(t) 因满足的微分方程是 (1) 对它的求解可应用成熟的Euler方法。假定方程(1)的唯一对称半正定解P(t),则LQ问题的解u(t) 由下式给出: u^(t)=-R?(t)B(t)P(t)x(t). 上述LQ 问题的一个特例是动态方程为定常的情形,即 相应的控制向量取为u(t)=-Kx(t), 其中, K 为才是矩阵,而二次性能指标为 这里Q和R 是给定的实对称正定(或半正定)矩阵`,它们规定了误差和控制信号能量 消耗的模式,在这特别的情形,我们可求出 K=R-B”P 这里P满足方程: AP+PA-PBRB?P+Q=0; 的唯一对称半正定矩阵解 3. 问题的阐述与解决 3.1.问题的阐述: 设系统为: 而控制信号为u(t)=-Kx(t),试求最优反馈增益矩阵K使二次性能指标: 极小凹,并运用 SIMULINK 仿真,输出 x1 、x2 、J 的波形。 3.2.问题的求解: 根据系统的状态空间方程,可以看出 A=[01;00],B=[0;1],Q=[10;01],R=[1]。 控制系统工具箱供了Iqr() 函数4,用来依照给定的加权矩阵设计 LQ 最优控制器,该函 数的调用格式为: [K,P]=lqr(A,B,Q,R) 式中: (A,B) 为给定的的对象状态方程模型; (Q,R) 分别为加权矩阵Q 和 R;返回的 向量K 为状态反馈向量,也就是控制器,P为 Riccati 代数方程的解。 在本题中,可用下面的MATLAB 代码求解K 和P: clear A=[01;00]; —3— 一 一 中 国科 技 论 文 在 线 http://www, B=[0;1]; Q=[10;01]; R=[1]; [K,P]=lqr(A,B,Q,R) 解得: K=[1.0000 1.7321] 因此,最优控制信号为 ü(t)=-Kx(t)=-x;(t)- 1.7321x?(t) 3.3.利用 SIMULINK 仿真给定的控制系统: 将给定的控制系统进行变形,如下: 根据以上方程组,利用 SIMULINK 对系统进行仿真[2,其中 u(t)用 x1(t),x2(t)负反馈3 表示, .最终可做出仿真系统,如图1所示。 x2 x2 x1 x1 对 Gain x1 x1*x1 Gain1 × x2*×2 × uu Add1 Integrator2 Integrator1 7.81 Integrstor Add x1 × 1 3 u u J x2 J1 图 1 SIMULINK 仿真图 当K=[1.0000

文档评论(0)

159****7880 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档