- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
LQR系系统统最最优优控控制制器器设设计计的的MATLAB实实现现及及应应⽤⽤
LQR系统最优控制器设计的MATLAB实现及
应⽤
LQR(linearquadraticregulator)即线性⼆次型调节器,其对象是现代控制理论中状态空间形式给出的线性系统,⽽⽬标函数为
对象状态和控制输⼊的⼆次型函数。LQR最优设计指设计是出的状态反馈控制器K要使⼆次型⽬标函数J取最⼩值,⽽K由权矩
阵Q与R唯⼀决定,故此Q、R的选择尤为重要。LQR理论是现代控制理论中发展最早也最为成熟的⼀种状态空间设计法。特别
可贵的是,LQR可得到状态线性反馈的最优控制规律,易于构成闭环最优控制。⽽且Matlab的应⽤为LQR理论仿真提供了条件,
更为我们实现稳、准、快的控制⽬标提供了⽅便。
⼀、LQR最优控制器系统设计的Matlab实现
1.1LQR最优控制器的系统设计
假设线性系统状态空间描述为:
xAx+Bu,
vCx。
其中x为n*1状态向量,u为m*1输⼊向量。
不失⼀般性考虑⼀个⼆次型⽬标函数:
(1)
式(1)中,Q、R称为加权矩阵,且Q为n*n维正半定阵,R为m*m维正定阵。
最优控制即寻求控制作⽤u(图1)使⽬标函数J最⼩。应⽤极⼩值原理,可得出最优控制作⽤:
1TxukxRBP---,其中,P为代数Riccati⽅程
1():0TTAREAPPAPBRBPQ-+-+的正半定解。
Matlab中的lqr()函数不仅可求解ARE的解P,还可同时求出K。
1.2Q,R的选择原则
由原理知,要求出最优控制作⽤u,除求解ARE⽅程外,加权矩阵的选择也是⾄关重要的。⽽Q、R选择⽆⼀般规律可循,⼀般取
决于设计者的经验,常⽤的所谓试⾏错误法,即选择不同的Q、R代⼊计算⽐较结果⽽确定。这⾥仅提供⼏个选择的⼀般原则:
1)Q、R都应是对称矩阵,Q为正半定矩阵,R为正定矩阵。
2)通常选⽤Q和R为对⾓线矩阵,实际应⽤中,通常将R值固定,然后改变Q的数值,最优控制的确定通常在经过仿
真或实际⽐较后得到。当控制输⼊只有⼀个时,R成为⼀个标量数(⼀般可直接选R1)。
3)Q的选择不唯⼀。这表明当得到的控制器相同时,可有多种Q值的选择,其中总有⼀个对⾓线形式的Q。
1.3LQR最优控制器系统设计的Matlab实现⽅法Matlab控制系统⼯具箱提供了完整的解决线性⼆次型最优控制问题的命令和
算法,其中函数lqr()可直接求解⼆次型调节器问题,命令格式如下:
[K,P,E]lqr(A,B,Q,R),其中K为最优反馈增益矩阵,P为Riccati⽅程的唯⼀正定解,E为A-BK的特征值。
⼆、实际应⽤或实例
倒⽴摆系统是⼀典型的⾮线性、不稳定的被控对象,倒⽴摆系统的控制问题被公认为是控制理论的⼀个典型问题,其结构组成如
图2所⽰。经过线性化后的数学模型为:
倒⽴摆系统基本数据如下:⼩车重量M1.32kg,摆杆质量m0.07kg,⼩车摩擦系数b0.1N/m/s,摆杆长度l
0.2m,摆杆转动惯量I0.00093kg.2m,加在⼩车上的⼒F,⼩车位移x,摆杆与垂直⽅向的夹⾓,采样周期T0.010s。系统设计的性
能指标要求为:当在⼩车上施加⼀⼩阶跃信号F时,摆杆⾓度和⼩车位移调整的时间⼩于4s,x上升时间⼩于
1s,的超调量⼩于50,稳态误差⼩于2%。
由上数据可得到系统的状态⽅程如下:
下⾯来选择LQR最优控制器的2个控制参数R和Q。这2个参量⽤来平衡输⼊量和状态量的权重。在本例中,取
R1,Qdiag(1,0,1,0),运⾏下⾯的Matlab程序:
A[0100;0-0.18182.67270;0001;0-0.454531.18180];
B[0;1.8182;0;4.5455];C[0010;0010];D[0];
Q[1000;0000;0010;0000];R[1];
[k,p,e]lqr(A,B,Q,R);
Ac(A-B*k);BcB;CcC;DcD;
[
文档评论(0)