【状态空间漫游记】(三)模型参考自适应控制(MRAC):基于传递函数的自适应控制(变增益法、变参数法)

目录

1  基础理论

1.1  Lyapunov稳定性理论

1.2  正实函数理论

2  变增益法MRAC

2.1  基本结构

2.2  方法推导

2.1.1  能观标准型

2.2.2  构造Lyapunov函数

2.2.3  导出自适应律

2.3  仿真示例

3  变参数法MRAC

3.1  基本结构

3.2  方法推导

3.2.1  能控标准型

3.2.2  构造Lyapunov函数

3.2.3  导出自适应律

3.3  仿真示例

参考文献

下载链接

友情链接


        在前一篇文章中,我们已经了解了最简单的自适应控制规律——MIT律。然而MIT律适用性较差,需满足除增益外的系统完全一致的假设,且难以保证闭环控制系统的稳定性。本文将基于Lyapunov稳定性理论等方法推导适用性更强的自适应控制方法。

        众所周知,传递函数和状态空间是最常用的两种系统模型,且线性条件下二者可以相互等价转换。本文先讨论基于传递函数的自适应控制方法,分为变增益型变参数型两种;有关状态空间的方法将在下一篇文章中再进一步讨论。

1  基础理论

        基于传递函数的自适应控制方法所需的数学基础理论包括Lyapunov稳定性理论正实函数理论KYP引理等。它们的详细介绍及证明过程请参见有关专业资料,本文仅从应用的角度简要介绍其与自适应控制理论有关的部分。以下数学理论较为枯燥,若无兴趣的读者可直接阅读第2节。

1.1  Lyapunov稳定性理论

        Lyapunov方法是最常用的稳定性分析工具之一,常见的现代控制理论教材均对该理论作了详细的介绍,以下仅简要回顾:

定理1.1  (线性系统渐进稳定)自由响应的线性系统\dot{\boldsymbol{x}}=\boldsymbol{Ax}渐进稳定的充分必要条件是:

\forall \boldsymbol{Q}\succ 0\exists \boldsymbol{P}\succ0:

\boldsymbol{A}^\mathrm{T}\boldsymbol{P}+\boldsymbol{P}\boldsymbol{A}=-\boldsymbol{Q}.        (1)

        式(1)称为Lyapunov方程,相应的Lyapunov函数为:

V(\boldsymbol{x})=\boldsymbol{x}^\mathrm{T}\boldsymbol{P}\boldsymbol{x}.

1.2  正实函数理论

        正实函数是针对复函数定义的概念,本文使用的是其加强后的定义“严格正实函数”。

定义1.1  (严格正实函数)复变量s=\sigma+j\omega的函数h(s)满足以下条件:

1)  \forall s\in\mathbb{R},\;h(s)\in\mathbb{R}

2) 在右半复平面\begin{aligned} \Omega=\left \{ s\in \mathbb{C} | \mathrm{Re}\{s\}>0 \right \} \end{aligned}上无极点(解析)

3) \forall \omega\in\mathbb{R},\;\mathrm{Re}\{h(j\omega)\}>0

h(s)称为严格正实(Strictly Positive Real, S.P.R)函数。

        若某一传递函数是严格正实函数,即

\begin{aligned} h(s)=\dfrac{\sum_{i=0}^{m}b_is^i}{\sum_{j=0}^{n}a_js^j}\in S.P.R \end{aligned}

则其拥有以下性质:

性质1.1  (严格正实传递函数的性质)

1)  h(s)的Nyquist曲线必在右半复平面(RHP),因而闭环系统必然稳定

2) 相对阶数n-m\in \{0,1\}

        此外,对于严格正实函数有以下的正实函数引理:

引理1.1  (Kalman-Yakubovich-Popov引理)对于LTI系统

\begin{cases} \dot{\boldsymbol{x}}=\boldsymbol{Ax}+\boldsymbol{Bu} \\ \boldsymbol{y}=\boldsymbol{C}\boldsymbol{x} \end{cases} \\ \\\\ \boldsymbol{A}\in\mathbb{R}^{n\times n},\;\boldsymbol{B}\in\mathbb{R}^{n\times p},\;\boldsymbol{C}\in\mathbb{R}^{m\times n}

及其传递函数

G(s)= \boldsymbol{C}\left (s\boldsymbol{I}-\boldsymbol{A} \right )^{-1} \boldsymbol{B},

G(s)\in S.P.R,则等价于满足Lyapunov方程(1)并且

\boldsymbol{PB}=\boldsymbol{C}^\mathrm{T}\boldsymbol{\mu},\;\boldsymbol{\mu}\in\mathbb{R}^{m\times p}       (2)


2  变增益法MRAC

2.1  基本结构

        变增益型的基本结构与MIT律所使用的结构一致,同样需要假设实际模型除增益外的其余部分与参考模型完全一致。区别在于,MIT律采用基于梯度信息的局部优化方法,而本方法采用Luyapunov方法来保证了自适应控制律的稳定性。

变增益型MRAC的基本结构

        该方法的主要结构依旧包括参考模型、实际模型、可调部分及自适应机构,所用信号为广义误差和参考输出等。

2.2  方法推导

2.1.1  能观标准型

        首先假设除增益外的传递函数为

\dfrac{N(s)}{D(s)}=\dfrac{b_{n}s^{n}+b_{n-1}s^{n-1}+\cdots+b_0}{s^n+a_{n-1}s^{n-1}+\cdots+a_0},

则可得输出的广义误差:

E(s)=Y_m(s)-Y(s)=\left (K_m-K_cK \right )\dfrac{N(s)}{D(s)}R(s).

若定义

\tilde{K}:=K_m-K_cK,\quad u:=\tilde{K}r,        (3)

则关于广义误差的微分方程为

e^{(n)}+a_{n-1}e^{(n-1)}+\cdots+a_0e=b_nu^{(n)}+b_{n-1}u^{(n-1)}+\cdots+b_0u.

按以下方式选取状态变量和状态输出

\xi_i:=\begin{cases}e-h_0u, & i=1 \\ \dot{\xi}_{i-1}-h_{i-1}u,&i=2,3,\cdots,n \end{cases} \\ \\ y:=e

可得状态方程为

\dot{\boldsymbol{\xi}}=\underbrace{ \begin{bmatrix} 0 & 1 & 0 & \cdots & 0\\ 0 & 0 & 1 & \cdots & 0\\ \vdots & \vdots & \vdots & \ddots & \vdots\\ 0 & 0 & 0 & \cdots & 1\\ -a_0 & -a_1 & -a_2 & \cdots & -a_{n-1} \end{bmatrix}}_{\boldsymbol{A}}\boldsymbol{\xi} +\underbrace{\begin{bmatrix} h_1\\ h_2\\ \vdots\\ h_{n-1}\\ h_n \end{bmatrix}}_{\boldsymbol{B}}u\;,         (4)

输出方程为

y=\underbrace{\begin{bmatrix} 1 & 0 & 0 & \cdots & 0 \end{bmatrix}}_{\boldsymbol{C}}\boldsymbol{\xi}+h_0 u\;.        (5)

其中系数h_i由以下线性方程组解得:

\begin{bmatrix} 1 & & & & & \\ a_{n-1} & 1 & & & & \\ a_{n-2} & a_{n-1} & 1 & & & \\ \vdots & \vdots & \vdots & \ddots & & \\ a_1 & a_2 & a_3 & \cdots & 1 & \\ a_0 & a_1 & a_2 & \cdots & a_{n-1} &1 \end{bmatrix} \begin{bmatrix}h_0\\ h_1\\ h_2\\ \vdots\\ h_{n-1}\\ h_n \end{bmatrix}= \begin{bmatrix} b_n\\b_{n-1}\\ b_{n-2}\\ \vdots\\ b_1\\ b_0 \end{bmatrix}.        (6)

具体推导参见文献[3]。由(4)(5)构成的状态空间称为能观标准型(Observable Canonical Form)

        在大多数情况下,传递函数分子的阶次小于分母的阶次,此时只需令相应的系数b_i为0即可。

2.2.2  构造Lyapunov函数

        与MIT法一样,自适应控制的方法依旧是通过实时地调节K_c(t),使得系统的实际输出跟随参考输出。不过,本文的要求不再仅仅局限于最优化误差指标,而是直接了当地确保广义误差渐进收敛,即关于广义误差的状态空间渐进稳定:

\begin{aligned}\lim_{t\to \infty} \boldsymbol{\xi}(t)=0\end{aligned}.

        然而对于上述能观标准型

\begin{cases} \dot{\boldsymbol{\xi}}=\boldsymbol{A\xi}+\boldsymbol{B}\tilde{K}r \\ y=\boldsymbol{C\xi}+h_0\tilde{K}r \end{cases},

可知其稳定性不仅由系统矩阵\boldsymbol{A}决定,还与控制矩阵\boldsymbol{B}、输入信号r以及增益误差\tilde{K}有关。因此,选取一个待定的李雅普诺夫函数(Candidate Lyapunov Function):

V( \boldsymbol{\xi},\tilde{K} )= \boldsymbol{\xi}^\mathrm{T} \boldsymbol{P} \boldsymbol{\xi}+\lambda \tilde{K}^2.        (7)

其中\boldsymbol{P}\succ0,且通常为对称矩阵。显然

V( \boldsymbol{\xi},\tilde{K} )>0.\quad \left (\boldsymbol{\xi}\neq\boldsymbol{0},\;\tilde{K} \neq0 \right )

计算其关于时间的导数:

\begin{aligned} \dot{V}( \boldsymbol{\xi},\tilde{K} )&=\dot{ \boldsymbol{\xi}}^\mathrm{T} \boldsymbol{P} \boldsymbol{\xi}+\boldsymbol{\xi}^\mathrm{T} \boldsymbol{P} \dot{ \boldsymbol{\xi}}+2\lambda \tilde{K}\cdot\dot{ \tilde{K}} \\&= \left (\boldsymbol{A\xi}+\boldsymbol{B}\tilde{K}r \right )^\mathrm{T} \boldsymbol{P} \boldsymbol{\xi}+\boldsymbol{\xi}^\mathrm{T} \boldsymbol{P}\left ( \boldsymbol{A\xi}+\boldsymbol{B}\tilde{K}r \right )+2\lambda \tilde{K}\cdot\dot{ \tilde{K}} \\&=\boldsymbol{\xi}^\mathrm{T}\left (\boldsymbol{A}^\mathrm{T}\boldsymbol{P}+\boldsymbol{PA} \right )\boldsymbol{\xi}+\tilde{K}r\left (\boldsymbol{B}^\mathrm{T}\boldsymbol{P\xi}+\boldsymbol{\xi}^\mathrm{T}\boldsymbol{PB} \right )+2\lambda \tilde{K}\cdot\dot{ \tilde{K}} \end{aligned}.

由于需要保证定理1.1\boldsymbol{A}^\mathrm{T}\boldsymbol{P}+\boldsymbol{P}\boldsymbol{A}=-\boldsymbol{Q};此外由\boldsymbol{B}\in\mathbb{R}^{n\times1},\;\boldsymbol{P}\in\mathbb{R}^{n\times n},\;\boldsymbol{\xi}\in\mathbb{R}^{n\times1}

\boldsymbol{B}^\mathrm{T}\boldsymbol{P\xi}=\boldsymbol{\xi}^\mathrm{T}\boldsymbol{PB}\in\mathbb{R}.

因此上述待定Lyapunov函数可进一步写作

\begin{aligned} \dot{V}( \boldsymbol{\xi},\tilde{K} )&=-\boldsymbol{\xi}^\mathrm{T}\boldsymbol{Q}\boldsymbol{\xi}+2\tilde{K}r\boldsymbol{\xi}^\mathrm{T}\boldsymbol{PB}+2\lambda \tilde{K}\cdot\dot{ \tilde{K}} \end{aligned}.        (8)

2.2.3  导出自适应律

        根据Lyapunov稳定性定理,要保证系统稳定,必须有\dot{V}( \boldsymbol{\xi},\tilde{K} )\le0。基于此,如果令(8)除了关于状态向量的二次型之外的所有项都为0,即

2\tilde{K}\left (r\boldsymbol{\xi}^\mathrm{T}\boldsymbol{PB}+\lambda \dot{ \tilde{K}} \right )=0,        (9)

则可得

\dot{V}( \boldsymbol{\xi} )=-\boldsymbol{\xi}^\mathrm{T}\boldsymbol{Q}\boldsymbol{\xi}\quad\begin{cases} <0, & \boldsymbol{\xi}\neq\boldsymbol{0} \\ =0, & \boldsymbol{\xi}=\boldsymbol{0} \end{cases},

满足Lyapunov稳定性定理,系统渐进稳定。因此,(9)式是一种可行的自适应律设计方式。

        由于e(t)\neq0\tilde{K}\neq0,要使(9)式成立,则必须有

r\boldsymbol{\xi}^\mathrm{T}\boldsymbol{PB}+\lambda \dot{ \tilde{K}} =0,

\dot{ \tilde{K}} =-\dot{K_c}K=-\dfrac{1}{\lambda}\cdot r\boldsymbol{\xi}^\mathrm{T}\boldsymbol{PB},

故可得:

\dot{K_c}=\dfrac{1}{\lambda K}\cdot r\boldsymbol{\xi}^\mathrm{T}\boldsymbol{PB}.        (10)

        实践中,获知\boldsymbol{B},\boldsymbol{\xi}通常是不容易的。因此借助正实函数的KYP引理,考虑h_0=b_n=0且相对阶不大于1的情况,假设相应传递函数满足S.P.R.,则式(2)成立:

\boldsymbol{PB}=\boldsymbol{C}^\mathrm{T}\mu

由此(10)式可进一步化为

\dot{K_c}=\dfrac{1}{\lambda K}\cdot r\boldsymbol{\xi}^\mathrm{T}\boldsymbol{C}^\mathrm{T}\mu,

其中\boldsymbol{\xi}^\mathrm{T}\boldsymbol{C}^\mathrm{T}=y=e,同时记\Gamma:={\mu}/{\lambda K},则可得最终的自适应律:

\dot{K_c}(t)=\Gamma\cdot r(t)e(t).        (11)

        与MIT法相比,自适应律(11)使用的是系统输入r(t),而非参考输出y_m(t),是一种前馈补偿的思想。

注意:若系统的相对阶大于1,则必不满足S.P.R.条件,此时只能使用(10)式作为自适应律。对于已知的传递函数,可先验证其是否S.P.R,若是,则不必使用广义误差的各阶导数,只用e(t)即可;若否,则只能使用状态向量\boldsymbol{\xi}(t),同时还要计算能观标准型的控制矩阵\boldsymbol{B}和解Lyapunov方程得\boldsymbol{P}.

2.3  仿真示例

        由于变增益法与MIT法仅有较小的差别,其仿真结果也相近,因此不再赘述相关的仿真过程,可参考前一篇文章中的MIT法仿真结果。

【状态空间漫游记】(二)模型参考自适应控制(MRAC):局部参数最优化方法(MIT律)-优快云博客https://blog.youkuaiyun.com/ych0872/article/details/152175663?spm=1001.2014.3001.5501【免费】模型参考自适应控制(MRAC):局部参数最优化方法(MIT律)Simulink仿真模型资源-优快云下载https://download.youkuaiyun.com/download/ych0872/92354278?spm=1001.2014.3001.5503


3  变参数法MRAC

        无论是MIT法还是本文先前讨论的变增益法,都存在一个根本性缺陷——它们都假设参考模型与实际模型仅有增益上的差异,而这一假设在实际中往往过于严苛。一方面,实际系统的结构参数(除增益外的其他参数)通常是未知的;另一方面,即使已知结构参数,这两种方法也只能通过调整增益来改善系统性能。换言之,基于增益自适应的控制方法仅能使系统闭环极点沿根轨迹移动,无法实现极点的任意配置,具有很大的局限性。

        因此,更加合理的做法是,不仅对系统增益进行自适应调节,同时还通过一定的方法对实际系统的结构参数也进行自适应调节,使其完全地能够跟踪任意参考模型的运动状态。

3.1  基本结构

        首先假设参考模型的传递函数为

G_m(s)=\dfrac{Y_m(s)}{R(s)}=\dfrac{s^m+b_{m-1}s^{m-1}+\cdots+b_1s+b_0}{s^n+a_{n-1}s^{n-1}+\cdots+a_1s+a_0},        (12)

而实际系统的传递函数是

G(s)=\dfrac{Y(s)}{R(s)}=\dfrac{s^m+\beta_{m-1}s^{m-1}+\cdots+\beta_1s+\beta_0}{s^n+\alpha_{n-1}s^{n-1}+\cdots+\alpha_1s+\alpha_0},        (13)

其中系统结构参数\left [\alpha_0,\alpha_1,\cdots,\alpha_{n-1} \right ],\;\left [\beta_0,\beta_1,\cdots,\beta_{m-1} \right ]经过前馈、反馈等环节的补偿后均直接可调

3.2  方法推导

3.2.1  能控标准型

        接下来的目标就是如何设计\left [\alpha_0,\alpha_1,\cdots,\alpha_{n-1} \right ],\;\left [\beta_0,\beta_1,\cdots,\beta_{m-1} \right ]的调节规律,使得它们能尽可能地与参考模型参数\left [a_0,a_1,\cdots,a_{n-1} \right ],\;\left [b_0,b_1,\cdots,b_{m-1} \right ]保持一致。为此,定义如下的参数误差及参数误差向量:

\begin{cases} \delta_i:=\alpha_i-a_i, & i=1,2,\cdots,n \\ \varepsilon_j:=\beta_j-b_j, & j=1,2,\cdots,m \end{cases}        (14)

\boldsymbol{\tilde{\theta}}:=\left [ \delta_1,\delta_2,\cdots,\delta_n,\varepsilon_1, \varepsilon_2,\cdots,\varepsilon_m\right ]^\mathrm{T},        (15)

进而可得微分方程:

\begin{cases} \begin{aligned} y_m^{(n)}+\sum_{i=0}^{n-1} a_iy_m^{(i)}=r^{(m)}+\sum_{j=0}^{m-1} b_jr^{(j)} \\ y^{(n)}+\sum_{i=0}^{n-1} \alpha_iy^{(i)}=r^{(m)}+\sum_{j=0}^{m-1} \beta_jr^{(j)} \end{aligned} \end{cases}

两式相减,可得关于广义误差e:=y_m-y的微分方程:

\begin{aligned} e^{(n)}+\sum_{i=0}^{n-1} a_iy_m^{(i)}-\sum_{i=0}^{n-1} \alpha_iy^{(i)}=-\sum_{j=0}^{m-1} \varepsilon_jr^{(j)} \end{aligned},

等式两边同时减去\sum_{i=0}^{n-1} a_iy^{(i)},再同时加上\sum_{i=0}^{n-1} \alpha_iy^{(i)},可得

\begin{aligned} e^{(n)}+\sum_{i=0}^{n-1} a_ie^{(i)}= \sum_{i=0}^{n-1} \delta_iy^{(i)}-\sum_{j=0}^{m-1} \varepsilon_jr^{(j)}\end{aligned}.        (16)

注意!为防止正负号出现错误,我们特别强调:参数误差应定义为实际量(可调量)减去参考量,而广义误差定义为参考量减去实际量

        根据(16)式建立状态空间,选取状态向量为

\boldsymbol{\xi}:=\left [ e,\dot{e},\cdots,e^{(n-1)} \right ]^{\mathrm{T}},

则状态方程为

\boldsymbol{\dot{\xi}}=\underbrace{\begin{bmatrix} 0 & 1 & 0 & \cdots & 0\\ 0 & 0 & 1 & \cdots & 0\\ \vdots & \vdots & \vdots & \ddots & \vdots\\ 0 & 0 & 0 & \cdots & 1\\ -a_0 & -a_1 & -a_2 & \cdots & -a_{n-1} \end{bmatrix}}_{\boldsymbol{A}}\boldsymbol{\xi}+\underbrace{\begin{bmatrix} 0 \\ 0\\ \vdots\\ 0\\ 1 \end{bmatrix}}_{\boldsymbol{B}}u,        (17)

其中

u= \sum_{i=0}^{n-1} \delta_iy^{(i)}-\sum_{j=0}^{m-1} \varepsilon_jr^{(j)}.

可知该状态空间为一能控标准型(Controllable Canonical Form)

3.2.2  构造Lyapunov函数

        由(17)可知,该系统的稳定性不仅与参考模型参数\left [a_0,a_1,\cdots,a_{n-1} \right ]有关,还与时变的参数误差\boldsymbol{\tilde{\theta}}:=\left [ \delta_1,\delta_2,\cdots,\delta_n,\varepsilon_1, \varepsilon_2,\cdots,\varepsilon_m\right ]^\mathrm{T}有关。因此,选取待定Lyapunov函数为:

V(\boldsymbol{\xi},\boldsymbol{\tilde{\theta}})=\boldsymbol{\xi}^\mathrm{T}\boldsymbol{P\xi}+\boldsymbol{\tilde{\theta}}^\mathrm{T}\boldsymbol{\Lambda}\boldsymbol{\tilde{\theta}},        (18)

其中\boldsymbol{P}\succ0,\boldsymbol{\Lambda}\succ0,且通常为对称矩阵。显然有

V( \boldsymbol{\xi},\boldsymbol{\tilde{\theta}} )>0.\quad \left (\boldsymbol{\xi}\neq\boldsymbol{0},\;\boldsymbol{\tilde{\theta}} \neq0 \right ).

继续计算时间导数:

\dot{V}(\boldsymbol{\xi},\boldsymbol{\tilde{\theta}})=-\boldsymbol{\xi}^\mathrm{T}\boldsymbol{Q}\boldsymbol{\xi}+ u\boldsymbol{B}^\mathrm{T}\boldsymbol{P\xi}+\boldsymbol{\xi}^\mathrm{T}\boldsymbol{PB}u+ \boldsymbol{\dot{\tilde{\theta}}}^\mathrm{T}\boldsymbol{\Lambda}\boldsymbol{\tilde{\theta}}+ \boldsymbol{\tilde{\theta}}^\mathrm{T}\boldsymbol{\Lambda}\boldsymbol{\dot{\tilde{\theta}}},

由各矩阵的相应维度可知:

\boldsymbol{B}^\mathrm{T}\boldsymbol{P\xi}=\boldsymbol{\xi}^\mathrm{T}\boldsymbol{PB}\in\mathbb{R},\;\boldsymbol{\dot{\tilde{\theta}}}^\mathrm{T}\boldsymbol{\Lambda}\boldsymbol{\tilde{\theta}}=\boldsymbol{\tilde{\theta}}^\mathrm{T}\boldsymbol{\Lambda}\boldsymbol{\dot{\tilde{\theta}}}\in\mathbb{R}

因此可将Lyapunov函数的导数写作

\dot{V}(\boldsymbol{\xi},\boldsymbol{\tilde{\theta}})=-\boldsymbol{\xi}^\mathrm{T}\boldsymbol{Q}\boldsymbol{\xi}+ 2u\boldsymbol{B}^\mathrm{T}\boldsymbol{P\xi}+2\boldsymbol{\dot{\tilde{\theta}}}^\mathrm{T}\boldsymbol{\Lambda}\boldsymbol{\tilde{\theta}}.        (19)

并同时满足Lyapunov方程(1)

3.2.3  导出自适应律

        假设系数矩阵

\boldsymbol{P}=\left [ p_{ij} \right ]_{n\times n}=\begin{bmatrix} p_{11} & p_{12} & \cdots & p_{1n}\\ p_{21} & p_{22} & \cdots & p_{2n} \\ \vdots & \vdots & \ddots & \vdots\\ p_{n1} & p_{n2} & \cdots & p_{nn} \end{bmatrix},

计算可得

\begin{aligned} 2u\boldsymbol{B}^\mathrm{T}\boldsymbol{P\xi}&=2u\left [ p_{nk} \right ]_{1\times n}\boldsymbol{\xi} \\&=2u\sum_{k=1}^{n}p_{nk}\xi_k \\&=2 \left [\sum_{i=0}^{n-1} \delta_iy^{(i)}-\sum_{j=0}^{m-1} \varepsilon_jr^{(j)} \right ]\cdot\sum_{k=1}^{n}p_{nk}\xi_k. \end{aligned}

        假设系数矩阵

\boldsymbol{\Lambda}=\mathrm{diag}\left [ \lambda_0,\lambda_1,\cdots,\lambda_{n-1},\mu_0,\mu_1,\cdots,\mu_{m-1} \right ],

计算可得

\begin{aligned} 2\boldsymbol{\dot{\tilde{\theta}}}^\mathrm{T}\boldsymbol{\Lambda}\boldsymbol{\tilde{\theta}}&= 2\left (\sum_{i=0}^{n-1}\lambda_i\dot{\delta}_i\delta_i+\sum_{j=0}^{m-1}\mu_j\dot{\varepsilon}_j\varepsilon_j \right ) . \end{aligned}

        由此可进一步将(19)式展开为

\begin{aligned}\dot{V}(\boldsymbol{\xi})&=-\boldsymbol{\xi}^\mathrm{T}\boldsymbol{Q}\boldsymbol{\xi}+ 2 \left [\sum_{i=0}^{n-1} \delta_iy^{(i)}-\sum_{j=0}^{m-1} \varepsilon_jr^{(j)} \right ]\cdot\sum_{k=1}^{n}p_{nk}\xi_k+2\left (\sum_{i=0}^{n-1}\lambda_i\dot{\delta}_i\delta_i+\sum_{j=0}^{m-1}\mu_j\dot{\varepsilon}_j\varepsilon_j \right ) \\&= -\boldsymbol{\xi}^\mathrm{T}\boldsymbol{Q}\boldsymbol{\xi}+ 2\sum_{i=0}^{n-1}\delta_i\left [\lambda_i\dot{\delta}_i+y^{(i)}\sum_{k=1}^{n}p_{nk}\xi_k \right ]+ 2\sum_{j=0}^{m-1}\varepsilon_j\left [\mu_j\dot{\varepsilon}_j-r^{(j)}\sum_{k=1}^{n}p_{nk}\xi_k \right ] . \end{aligned}

在上式中,由于\dot{\delta_i},\dot{\varepsilon_j}尚不确定,\dot{V}(\boldsymbol{\xi})的负定性不能保证,因此可以令

\begin{cases} \lambda_i\dot{\delta}_i+y^{(i)}\sum_{k=1}^{n}p_{nk}\xi_k =0 \\ \\ \mu_j\dot{\varepsilon}_j-r^{(j)}\sum_{k=1}^{n}p_{nk}\xi_k = 0\end{cases},

从而使得\dot{V}(\boldsymbol{\xi})=-\boldsymbol{\xi}^\mathrm{T}\boldsymbol{Q}\boldsymbol{\xi},系统渐进稳定。考虑到(14)的定义,由此导出自适应律为:

\left\{\begin{matrix} \begin{aligned} &\dot{\delta}_i =\dot{\alpha}_i=-\dfrac{y^{(i)}}{\lambda_i}\cdot\sum_{k=1}^{n}p_{nk}\xi_k \\ &\dot{\varepsilon}_j =\dot{\beta}_j=\dfrac{r^{(j)}}{\mu_j} \sum_{k=1}^{n}p_{nk}\xi_k \end{aligned} \end{matrix}\right.        (20)

3.3  仿真示例

        在本例中,假设实际系统模型和参考模型分别为

G(s)=\dfrac{2}{s^2+2s+1},\;G_m(s)=\dfrac{10}{s^2+4s+4}

要使G(s)参数可调,可以考虑引入内环反馈和增益前馈,如下图所示:

参数任意可调系统

由此将实际系统校正结构参数任意可调的系统:

\Phi(s)=\dfrac{2K_c}{s^2+2(f_1+1)s+2f_0+1},

\alpha_1=2(f_1+1),\;\alpha_0=2f_0+1,\;\beta_0=2K_c,则与先前所推结论保持一致的形式。

        由传递函数建立(17)式中的系统矩阵,并设定相应的正定矩阵:

\boldsymbol{A}=\begin{bmatrix} 0 & 1\\ -4 & -4\end{bmatrix},\;\boldsymbol{Q}=\begin{bmatrix} 1 & 0\\ 0 & 1\end{bmatrix}.

解Lyapunov方程(1)可得

\boldsymbol{P}=\begin{bmatrix} \dfrac{9}{8} & \dfrac{1}{8} \\ \\ \dfrac{1}{8} & \dfrac{5}{32} \end{bmatrix}

直接应用式(20)的结论,得到参数自适应律:

\left\{\begin{matrix} \begin{aligned} &\dot{\alpha}_0=-\dfrac{y}{\lambda_0}\cdot \left (p_{21}e +p_{22}\dot{e}\right ) = -\dfrac{y}{\lambda_0}\cdot \left (1.125e +0.156\dot{e}\right ) \\ & \dot{\alpha}_1=-\dfrac{\dot{y}}{\lambda_1}\cdot \left (p_{21}e +p_{22}\dot{e}\right ) = -\dfrac{\dot{y}}{\lambda_1}\cdot \left (1.125e +0.156\dot{e}\right ) \\ & \dot{\beta}_0=\dfrac{r}{\mu_0} \cdot \left (p_{21}e +p_{22}\dot{e}\right )=\dfrac{r}{\mu_0} \cdot \left (1.125e +0.156\dot{e}\right ) \end{aligned} \end{matrix}\right.

继续反推即可写出关于f_1,\;f_0,\; K_c的自适应调节规律。

        将以上结果使用Simulink进行仿真,取\lambda_0=\lambda_1=\mu_0=0.1,结果如下图所示。源文件请移步文末链接获取。

变参数法 - 阶跃输入
变参数法 - 正弦输入
变参数法 - 方波输入

参考文献

[1] 董宁. 自适应控制[M]. 北京理工大学出版社, 2009.
[2] 柴天佑, 岳恒. 自适应控制[M]. 北京: 清华大学出版社, 2016.
[3] 胡寿松, 姜斌等. 自动控制原理(第八版)[M].科学出版社, 2023: 452-453.


下载链接

注:slx文件基于Matlab2024a版本,使用较低版本Matlab可能无法打开,可在S“imulink-建模-环境-Simulink预设项-模型文件”中去除勾选“不要加载用更新版本的Simulink创建的模型”。

【免费】模型参考自适应控制(MRAC):变参数法Simulink仿真模型资源-优快云下载https://download.youkuaiyun.com/download/ych0872/92380517


友情链接

【状态空间漫游记】(二)模型参考自适应控制(MRAC):局部参数最优化方法(MIT律)-优快云博客

【玩转机械臂】(一)机器人学的数学基础:坐标变换与位姿描述_机械臂坐标变换-优快云博客
【玩转倒立摆】(一)一阶倒立摆之 - 数学模型的建立-优快云博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值