入門

Utkin’s Observer…Homework

[1] 次の制御対象のモデルを考えます。

\displaystyle{(1)\quad \begin{array}{l} \dot{x}(t)=Ax(t)+Bu(t)\\ y(t)=Cx(t)\\ (x(t)\in{\rm\bf R}^n, u(t)\in{\rm\bf R}^m, y(t)\in{\rm\bf R}^p1, p\ge m) \end{array} }

ただし、Bは列フルランク、Cは行フルランクをもち、(A,C)は可観測対とします。

●行列C\left[\begin{array}{cc} 0 & I_p \end{array}\right]の形にするために、座標変換

\displaystyle{(2)\quad \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{x'(t)} = \underbrace{ \left[\begin{array}{cc} N_c^T \\ C \\ \end{array}\right] }_{T_c} x(t) \Leftrightarrow x(t)= \underbrace{ \left[\begin{array}{cc} N_c^T \\ C \\ \end{array}\right]^{-1} }_{T_c^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{x'(t)} }

を行うと(N_c^TT_cを正則とする適当な行列)、次式を得ます。

\displaystyle{(3.1)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot y(t) \end{array}\right] }_{\dot{x}'(t)} = \underbrace{ \left[\begin{array}{cc} A_{c11} & A_{c12} \\ A_{c21} & A_{c22} \\ \end{array}\right] }_{T_cAT_c^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{x'(t)} + \underbrace{ \left[\begin{array}{c} B_{c1}\\ B_{c2} \end{array}\right] }_{T_cB} u(t) \end{array} }

\displaystyle{(3.2)\quad y(t) = \underbrace{ \left[\begin{array}{cc} 0_{p\times n-p} & I_p \\ \end{array}\right] }_{CT_c^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{x'(t)} }

[2] Utkinは次のオブザーバを提案しています。

\displaystyle{(4.1)\quad \boxed{\begin{array}{l} \left[\begin{array}{c} \dot{\hat x}_1(t)\\ \dot{\hat y}(t) \end{array}\right] = \left[\begin{array}{cc} A_{c11} & A_{c12} \\ A_{c21} & A_{c22} \\ \end{array}\right] \left[\begin{array}{c} \hat{x}_1(t)\\ \hat{y}(t) \end{array}\right] + \left[\begin{array}{c} B_{c1}\\ B_{c2} \end{array}\right] u(t)\\ + \left[\begin{array}{c} L\\ -I_p \end{array}\right] \nu \end{array}} }

\displaystyle{(4.2)\quad \boxed{\nu=M \left[\begin{array}{c} {\rm sgn}(\hat{y}_1(t)-y_1(t))\\ \vdots\\ {\rm sgn}(\hat{y}_p(t)-y_p(t)) \end{array}\right]} }

ここで、L\in{\rm\bf R}^{n-p\times p}M\in{\rm\bf R}は設計パラメータです。

通常のオブザーバは、出力の推定誤差 e_y(t)=C\hat{x}(t)-y(t) をフィードバックしますが、上のオブザーバは出力の推定誤差のスイッチング動作が加えられています。これにより、e_y(t)=0の超平面に載せることが考えられます。

●(4.1)から(3.1)を辺々引き算して

\displaystyle{(5)\quad \underbrace{ \left[\begin{array}{c} \dot{\hat x}_1(t)-\dot{x}_1(t)\\ \dot{\hat y}(t)-\dot{y}(t) \end{array}\right] }_{\left[\begin{array}{c} \dot{e}_1(t)\\ \dot{e}_y(t) \end{array}\right]} = \left[\begin{array}{cc} A_{c11} & A_{c12} \\ A_{c21} & A_{c22} \\ \end{array}\right] \underbrace{ \left[\begin{array}{c} \hat{x}_1(t)-{x}_1(t)\\ \hat{y}(t)-{y}(t) \end{array}\right] }_{\left[\begin{array}{c} {e}_1(t)\\ {e}_y(t) \end{array}\right]} + \left[\begin{array}{c} 0\\ -\nu \end{array}\right] }

ここで、座標変換

\displaystyle{(6)\quad \left[\begin{array}{c} \tilde{e}_1(t)\\ {e}_y(t) \end{array}\right] = \left[\begin{array}{cc} I_{n-p} & L \\ 0 & I_p \\ \end{array}\right] \left[\begin{array}{c} {e}_1(t)\\ {e}_y(t) \end{array}\right] }

を行うと、次の誤差方程式を得ます

\displaystyle{(7.1)\quad \boxed{\left[\begin{array}{c} \dot{\tilde e}_1(t)\\ \dot{e}_y(t) \end{array}\right] = \left[\begin{array}{cc} \tilde{A}_{c11} & \tilde{A}_{c12} \\ \tilde{A}_{c21} & \tilde{A}_{c22} \\ \end{array}\right] \left[\begin{array}{c} \tilde{e}_1(t)\\ {e}_y(t) \end{array}\right] + \left[\begin{array}{c} 0\\ -I_p \end{array}\right]\nu} }

ただし

\displaystyle{(7.2)\quad \left\{\begin{array}{l} \tilde{A}_{c11}=A_{c11}+LA_{c21}\\ \tilde{A}_{c12}=A_{c12}+LA_{c22}-\tilde{A}_{c11}L \\ \tilde{A}_{c21}={A}_{c21} \\ \tilde{A}_{c22}=A_{c22}-A_{c21}L \\ \end{array}\right. }

ここで、\tilde{A}_{c11}が安定行列となるようにLが選ばれているとします。

●このとき、仮定

\displaystyle{(8)\quad ||\tilde{A}_{c21}\tilde{e}_1(t)||+\frac{1}{2}(\tilde{A}_{c22}+\tilde{A}^T_{c22})||e_y(t)||<M-\eta }

の下で、次の可到達条件が成り立ちます。

\displaystyle{(9)\quad \begin{array}{l} e^T_y(t)\dot{e}_y(t)=e^T_y(t)(\tilde{A}_{c21}\tilde{e}_1(t)+\tilde{A}_{c22}{e}_y(t)-\nu)\\\\ =e^T_y(t)\tilde{A}_{c21}\tilde{e}_1(t)+e^T_y(t)\tilde{A}_{c22}{e}_y(t)\\ -M \left[\begin{array}{c} \hat{y}_1(t)-y_1(t)\\ \vdots\\ \hat{y}_p(t)-y_p(t) \end{array}\right]^T \left[\begin{array}{c} {\rm sgn}(\hat{y}_1(t)-y_1(t))\\ \vdots\\ {\rm sgn}(\hat{y}_p(t)-y_p(t)) \end{array}\right]\\\\ =e^T_y(t)\tilde{A}_{c21}\tilde{e}_1(t)+e^T_y(t)\frac{1}{2}(\tilde{A}_{c22}+\tilde{A}^T_{c22}){e}_y(t)\\ -M(|\hat{y}_1(t)-y_1(t)|+\cdots+|\hat{y}_p(t)-y_p(t)|)\\\\ \le e^T_y(t)\tilde{A}_{c21}\tilde{e}_1(t)+\frac{1}{2}\bar\sigma(\tilde{A}_{c22}+\tilde{A}^T_{c22})e^T_y(t){e}_y(t)\\ -M(|\hat{y}_1(t)-y_1(t)|+\cdots+|\hat{y}_p(t)-y_p(t)|)\\\\ \le ||e_y(t)||(||\tilde{A}_{c21}\tilde{e}_1(t)||+\frac{1}{2}\bar\sigma(\tilde{A}_{c22}+\tilde{A}^T_{c22})||{e}_y(t)||)\\ -M(|\hat{y}_1(t)-y_1(t)|+\cdots+|\hat{y}_p(t)-y_p(t)|)\\\\ < ||e_y(t)||(M-\eta)-M(|\hat{y}_1(t)-y_1(t)|+\cdots+|\hat{y}_p(t)-y_p(t)|)\\ \le -\eta||e_y(t)||+M\underbrace{(||e_y(t)||-(|\hat{y}_1(t)-y_1(t)|+\cdots+|\hat{y}_p(t)-y_p(t)|))}_{\le0}\\ \le -\eta||e_y(t)||<0 \end{array} }

●これはSM標準形(7.1)に対してスイッチング関数を

\displaystyle{(10)\quad {e}_y(t) = \left[\begin{array}{cc} 0_{p\times n-p} & I_p \\ \end{array}\right] \left[\begin{array}{c} \tilde{e}_1(t)\\ {e}_y(t) \end{array}\right] }

と選ぶとき、スイッチング動作(4.2)によって{e}_y(t)=\hat{y}(t)-y(t)=0となることを示しています。このとき(7.1)から

\displaystyle{(11)\quad \dot{\tilde e}_1(t)=\tilde{A}_{c11}{\tilde e}_1(t) }

を得て、{\tilde e}_1(t)も零の漸近するので、状態オブザーバ(4.1)が構成されていることが分かります。

[3] 以上の結果を数値例で確かめてみます。

MATLAB
%ex5_ob_sm.m
%-----
 clear all, close all
%(A,B,C)
 A=[ 0 1;
    -2 0];
 B=[0; 1];
 C=[1  1];
 [nn,mm]=size(B);
 [pp,nn]=size(C); 
%-----
 Tc=[1 0;1 1];
 Ac=Tc*A*inv(Tc)
 Bc=Tc*B
 Cc=C*inv(Tc)
%[Af,Bf,Cf,r,Ta,Aa,Ba,Ca,Tb,T,Ac,Bc,Cc,Tc]=ca_form1(A,B,C)
%-----
 M=1
 L=0.5
 Tti=[eye(nn-pp) L;
     zeros(pp,nn-pp) eye(pp)]
 Ati=Tti*Ac*inv(Tti)
%-----
%eof


図1 Utkin’s observerのシミュレーション例