摘要
在实际物理世界中,任何一个系统都是非线性的,都不是理想的物理模型。因此针对非理想的模型,我们希望能够设计出一种控制器,使其能够有效处理系统非线性及不确定量,从而在一定程度上使其响应接近于理想模型。模型参考自适应控制(Model reference adaptive control, MRAC)就是基于这个目标提出的,本文将针对模型参考自适应控制(MRAC)过程进行总结。
基本控制策略
目前常见的控制策略主要有两种
- Robust Control:参数是固定的,系统对参数变化不敏感,如果在最坏的情况下,系统仍然能够具有良好的响应,那么系统就是robust的。
- Adaptive Control:参数可以在线调整,系统能够随着外部扰动,及时改变参数,从而达到良好的控制效果。
模型参考自适应控制原理
控制器组成
模型参考自适应控制器由两部分组成
- 参考模型 (理想被控对象,可以通过指定控制性能确定)
- 控制器(参数可变)
- 参数调整机构 (使用一种时变非线性算法,调整控制器参数)
控制目标
将参考模型的输出与被控对象输出的误差调整至最小,这样可以认为我们的被控对象与参考模型表现形式一致。
控制器设计过程
被控对象数学模型建立
被控对象的动力学方程
˙xp=Apxp+Bpλu+Bpδp(xp), xp(0)=xp0Ap和Bp是已知参数,xp可测的(状态反馈),u是控制变量,λ是未知参数,可以表示为:
λ=[λ1>0...λm>0]∈Rm×m如果λ对角线元素有0,那么就是不可控情况,因为这个分量会使对应的控制量清零。
δp(xp)是非线性系统不确定量,几个关键变量所属线性空间为:
xp∈Rnpu∈Rmδp:Rnp→Rm考虑Bpλu+Bpδp(xp),我们可以将其写为
Bpλ[u+λ−1δp(xp)]从上式可以看出,u可以影响δp(xp)的每一部分,这个叫做匹配系统。如果不能,那就是非匹配系统。
δp(xp)可以进一步写为
δp(xp)=WTpσp(xp)其中WTp是未知部分,σp(xp)是已知部分
Wp∈Rs×mσp:Rnp→Rsσp(xp)可以进一步写为:
σp(xp)=[σp1(x1),...,σps(xp)]我们假设$\sigma{p1}到\sigma{ps}$是Locally Lipschitz函数。
实例
考虑一个带有阻尼和弹簧的小车,对小车施加一个向前的控制力u,则
m¨p=u−αp−β˙p假设我们并不知道α和β的值,令
xp=[xp1xp2]其中
xp1=pxp2=˙p则
˙xp1=xp2˙xp2=um−αmxp1−βmxp2可得到下式
˙xp=[0100]xp+[01](1/m)u+[01][−α/m−β/m]T[xp1xp2]其中
Ap=[0100]Bp=[01]λ=1/mWTp=[−α/m−β/m]Tσp=[xp1xp2]在某些情况下,我们甚至不知道σp,我们可以使用拟合方式进行建模。
控制模型建立
现在我们已知被控对象和控制量分别为:
˙xp=Apxp+Bpλu+BpWTpσp(xp), xp(0)=xp0u=un+uaun和ua分别为常规控制量和自适应控制量,我们先考虑最简单的情况:λ是一个单位矩阵,而BpWTpσp(xp)为0(考虑状态空间表达式˙x=Ax+Bu,我们不希望后面跟了一堆累赘),此时
˙xp=Apxp+Bpuu=un=−K1xp+K2c控制量由状态反馈和前馈部分组成
K1∈Rm×npK2∈Rm×ncc∈Rnc