モデル規範・追従SM-OBS制御

モデル規範・SMオブザーバベース・追従SM制御…Homework

[1] 次の状態方程式で表される制御対象を考えます。

\displaystyle{(1)\quad \dot{x}(t)=Ax(t)+Bu(t)+B\xi(t,x,u)\quad(x(t)\in{\rm\bf R}^n) }

この状態が理想的なモデル

\displaystyle{(2)\quad \boxed{\dot{w}(t)=A_mw(t)+B_mr(t)}\quad(w(t)\in{\rm\bf R}^n) }

の状態を追従するように、すなわち

\displaystyle{(3)\quad e_x(t)=x(t)-w(t)\rightarrow 0 \quad(t\rightarrow\infty) }

となるように制御則を決定したいとします。

以下では、(2)は適当な安定化状態フィードバックと入力変換を行って

\displaystyle{(4)\quad \boxed{\begin{array}{l} A_m=A+BL_x\\ B_m=BL_r \end{array}} }

のように得られていると仮定します。

●モデル間の誤差は、(1)と(2)を辺々引き算して

\displaystyle{(5)\quad \begin{array}{l} \underbrace{\dot{x}(t)-\dot{w}(t)}_{\dot{e}_x(t)} =Ax(t)+Bu(t)+B\xi(t,x,u)-(A_mw(t)+B_mr(t))\\ =Ax(t)-A_mx(t)+A_mx(t)-A_mw(t)+Bu(t)+B\xi(t,x,u)-B_mr(t)\\ =A_me_x(t)+(A-A_m)x(t)+Bu(t)+B\xi(t,x,u)-B_mr(t) \end{array} }

に従います。これは(4)を用いて次式となります。

\displaystyle{(6)\quad \dot{e}_x(t)=A_me_x(t)+B(u(t)-L_xx(t)-L_rr(t)+\xi(t,x,u)) }

●出力方程式は次式で与えられるとします。

\displaystyle{(7)\quad y(t)=Cx(t) }

状態フィードバックは使えないので、次のSMオブザーバを考えます。

\displaystyle{(8)\quad \begin{array}{l} \dot{z}(t)=Az(t)+Bu(t)-G \overbrace{C\underbrace{(z(t)-x(t))}_{e(t)}}^{e_y(t)=Cz(t)-y(t)}+B\nu_o\quad(z(t)\in{\rm\bf R}^n)\\ =\underbrace{(A-GC)}_{A_o}z(t)+Gy(t)+Bu(t)+B\nu_o \end{array} }

ここで、GA_o=A-GCが安定行列となるように選ばれているとします。

SMオブザーバの誤差方程式は、(1)と(7)を辺々引き算して

\displaystyle{(9)\quad \begin{array}{l} \underbrace{\dot{z}(t)-\dot{x}(t)}_{\dot{e}(t)} =Az(t)+Bu(t)-G Ce(t)+B\nu_o\\ -(Ax(t)+Bu(t)+B\xi(t,x,u))\\ =Ae(t)-GCe(t)+B\nu_o-B\xi(t,x,u)\\ =\underbrace{(A-GC)}_{A_o}e(t)+B(\nu_o-\xi(t,x,u)) \end{array} }

すなわち

\displaystyle{(9')\quad \boxed{\dot{e}(t)=A_oe(t)+B(\nu_o-\xi(t,x,u))} }

となります。いま

\displaystyle{(10)\quad PA_o+A_o^TP<0 }

を満足するP>0と、あるF\in{\bf R}^{m\times p}に対して

\displaystyle{(11)\quad PB=C^TF^T }

が満足されているものとします。このとき、\nu_oは次式で与えます。

\displaystyle{(12)\quad \boxed{\nu_o=-\rho_o(u_\ell,y)\frac{Fe_y(t)}{||Fe_y(t)||} }

ただし

\displaystyle{(12')\quad Fe_y(t)=FCe(t)=B^TPe(t)\quad(Ce(t)=Cz(t)-y(t)) }

[2] SMオブザーバ(8)の状態((1)の状態の推定値)をモデル(2)の状態を追従させることを考えます。そのために次の制御則を考えます。

\displaystyle{(13)\quad u(t)=L_xz(t)+L_rr(t)+\bar{u}(t) }

このとき、この場合のモデル間の誤差は、(8)と(2)を辺々引き算して

\displaystyle{(14)\quad \begin{array}{l} \underbrace{\dot{z}(t)-\dot{w}(t)}_{\dot{e}_z(t)} =Az(t)+Bu(t)-G Ce(t)+B\nu_o-(A_mw(t)+B_mr(t))\\ =Az(t)-A_mz(t)+A_mz(t)-A_mw(t)-G Ce(t)+B\nu_o\\ +Bu(t)+B\xi(t,x,u)-B_mr(t)\\ =A_me_z(t)+\underbrace{(A-A_m)}_{-BL_x}z(t)-G Ce(t)+B\nu_o\\ +B(L_xz(t)+L_rr(t)+\bar{u}(t))+B\xi(t,x,u)-\underbrace{B_m}_{BL_r}r(t)\\ =A_me_z(t)+B\bar{u}(t)-G Ce(t)+B(\xi(t,x,u)+\nu_o) \end{array} }

すなわち

\displaystyle{(14')\quad \dot{e}_z(t)=A_me_z(t)-G Ce(t)+B(\bar{u}+\xi(t,x,u)+\nu_o) }

に従います。これに対して、スライディングモード制御

\displaystyle{(15)\quad \bar{u}(t)=u_\ell(t)+\nu_c }

を適用することを考えます。スイッチング関数は

\displaystyle{(16)\quad s(t)=Se_z(t) }

とします。これはスイッチング関数(1)またはスイッチング関数(2)の方法で選定します。

●線形制御部を、次式のように決めます。

\displaystyle{(17)\quad \boxed{u_\ell(t)=-\underbrace{(SB)^{-1}(SA_m-\Phi S)}_{L}e_z(t)} }

また、スイッチング部を、次式のように決めます。

\displaystyle{(18)\quad \boxed{\nu_c=-\underbrace{(SB)^{-1}\rho_c(u_\ell,y)}_{L_n} \frac{\bar{P}_2s(t)}{||\bar{P}_2s(t)||} }

ここで、P_2>0は適当な安定行列\Phiを与えて

\displaystyle{(19)\quad \bar{P}_2\Phi+\Phi^T\bar{P}_2<0 }

の解として求め、また、次の関係を満たすものとします。

\displaystyle{(20)\quad \boxed{\rho_c(u_\ell,y)=||SB||\rho_o(u_\ell,y)+\gamma_c} }

●(15),(18)を(14′)に代入して、モデル間の誤差は

\displaystyle{(21)\quad \begin{array}{l} \dot{e}_z(t)=A_me_z(t)-G Ce(t)+B(u_\ell(t)+\nu_c+\xi(t,x,u)+\nu_o)\\ =A_me_z(t)-G Ce(t)+B(-Le_z(t)+\nu_c+\xi(t,x,u)+\nu_o)\\ =\underbrace{(A_m-BL)}_{A_c}e_z(t)-G Ce(t)+B(\nu_c+\xi(t,x,u)+\nu_o) \end{array} }

すなわち

\displaystyle{(21')\quad \boxed{\dot{e}_z(t)=A_ce_z(t)-G Ce(t)+B(\nu_c+\xi(t,x,u)+\nu_o) }

に従います。

[3] 以下では、状態方程式は次のSM標準形をとるように座標変換されているとします。

\displaystyle{(22)\quad \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot x_2(t) \end{array}\right] }_{\dot{x}(t)} = \underbrace{ \left[\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22} \\ \end{array}\right] }_{A} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x(t)} + \underbrace{ \left[\begin{array}{c} 0\\ B_2 \end{array}\right] }_{B} (u(t)+\xi(t,x,u)) }

これに応じて、スイッチング関数(16)を

\displaystyle{(23)\quad s(t)= \underbrace{ \left[\begin{array}{cc} S_1 & S_2 \\ \end{array}\right] }_{S} \underbrace{ \left[\begin{array}{c} e_{z1}(t)\\ e_{z2}(t) \end{array}\right] }_{x(t)} = \underbrace{S_2 \left[\begin{array}{cc} M & I_m \\ \end{array}\right] }_{S} \underbrace{ \left[\begin{array}{c} e_{z1}(t)\\ e_{z2}(t) \end{array}\right] }_{x(t)} \ (M=S_2^{-1}S_1) }

と分割します。

(21)は、A_m=A+BL_xL=(SB)^{-1}(SA_m-\Phi S)に注意して

\displaystyle{(24)\quad \begin{array}{l} \dot{e}_z(t)=(A+BL_x-B(SB)^{-1}(S(A+BL_x)-\Phi S))e_z(t)\\ -G Ce(t)+B(\nu_c+\xi(t,x,u)+\nu_o)\\ =(A-B(SB)^{-1}SA+BL_x-B(SB)^{-1}(SB)L_x+B(SB)^{-1}\Phi S)e_z(t)\\ -G Ce(t)+B(\nu_c+\xi(t,x,u)+\nu_o)\\ =\underbrace{(A-B(SB)^{-1}(SA-\Phi S))}_{A_c}e_z(t) -G Ce(t)+B(\nu_c+\xi(t,x,u)+\nu_o)\\ \end{array} }

となります。これに対して座標変換

\displaystyle{(25)\quad \begin{array}{l} \underbrace{\left[\begin{array}{c} e_{z1}(t)\\ s(t) \end{array}\right]}_{\bar{e}_z(t)}= \underbrace{\left[\begin{array}{cc} I_{n-m} & 0_{n\times m} \\ S_1 & S_2 \\ \end{array}\right]}_{\bar T} \underbrace{\left[\begin{array}{c} e_{z1}(t)\\ e_{z2}(t) \end{array}\right]}_{e_z(t)}\\ \Leftrightarrow \underbrace{\left[\begin{array}{c} e_{z1}(t)\\ e_{z2}(t) \end{array}\right]}_{e_z(t)}= \underbrace{\left[\begin{array}{cc} I_{n} & 0_{n\times m} \\ -M & S_2^{-1} \\ \end{array}\right]}_{\bar{T}^{-1}} \underbrace{\left[\begin{array}{c} e_{z1}(t)\\ s(t) \end{array}\right]}_{\bar{e}_z(t)}\quad(M=S_2^{-1}S_1) \end{array} }

を行うと、まず(25)を(24)に代入して

\displaystyle{(26)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{cc} I & 0 \\ -M & S_2^{-1} \\ \end{array}\right] }_{\bar{T}^{-1}} \underbrace{ \left[\begin{array}{c} \dot e_{z1}(t)\\ \dot s(t) \end{array}\right] }_{\dot{\bar{e}}_z(t)}\\ = (\left[\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22} \\ \end{array}\right] - \left[\begin{array}{c} 0\\ B_2 \end{array}\right] (\left[\begin{array}{cc} S_1 & S_2 \\ \end{array}\right] \left[\begin{array}{c} 0\\ B_2 \end{array}\right])^{-1}\\ \times(\left[\begin{array}{cc} S_1 & S_2 \\ \end{array}\right] \left[\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22} \\ \end{array}\right] -\Phi \left[\begin{array}{cc} S_1 & S_2 \\ \end{array}\right]) ) \underbrace{ \left[\begin{array}{cc} I & 0 \\ -M & S_2^{-1} \\ \end{array}\right] }_{\bar{T}^{-1}} \underbrace{ \left[\begin{array}{c} e_{z1}(t)\\ s(t) \end{array}\right] }_{\bar{e}_z(t)}\\ -G Ce(t)+\left[\begin{array}{c} 0\\ B_2 \end{array}\right](\nu_c+\xi(t,x,u)+\nu_o) \end{array} }

左から\bar{T}をかけて

\displaystyle{(27)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot e_{z1}(t)\\ \dot s(t) \end{array}\right] }_{\dot{\bar{e}}_z(t)} = \underbrace{ \left[\begin{array}{cc} I & 0 \\ S_1 & S_2 \\ \end{array}\right] }_{\bar{T}} (\left[\begin{array}{cc} A_{11}-A_{12}M & A_{12}S_2^{-1}  \\ A_{21}-A_{22}M & A_{22}S_2^{-1}  \\ \end{array}\right] -\left[\begin{array}{c} 0\\ B_2 \end{array}\right](S_2B_2)^{-1}\\ \times(\left[\begin{array}{cc} S_1 & S_2  \end{array}\right] \left[\begin{array}{cc} A_{11}-A_{12}M & A_{12}S_2^{-1}  \\ A_{21}-A_{22}M & A_{22}S_2^{-1}  \\ \end{array}\right] -\Phi \left[\begin{array}{cc} 0 & I_m \\ \end{array}\right]) ) \underbrace{ \left[\begin{array}{c} e_{z1}(t)\\ s(t) \end{array}\right] }_{\bar{e}_z(t)}\\ -\underbrace{\bar{T}G}_{\bar{G}} Ce(t) +\underbrace{\left[\begin{array}{cc} I & 0 \\ S_1 & S_2 \\ \end{array}\right]}_{\bar{T}} \left[\begin{array}{c} 0\\ B_2 \end{array}\right](\nu_c+\xi(t,x,u)+\nu_o)\\ = (\left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12} \\ \bar{A}_{21} & \bar{A}_{22}\\ \end{array}\right] -\left[\begin{array}{c} 0\\ S_2B_2 \end{array}\right](S_2B_2)^{-1}\\ \times(\left[\begin{array}{cc} \bar{A}_{21} & \bar{A}_{22}\\ \end{array}\right] -\Phi \left[\begin{array}{cc} 0 & I_m \\ \end{array}\right]) ) \underbrace{ \left[\begin{array}{c} e_{z1}(t)\\ s(t) \end{array}\right] }_{\bar{e}_z(t)}\\ -\bar{G} Ce(t)+\bar{B}(\nu_c+\xi(t,x,u)+\nu_o)\\ =\underbrace{ \left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12} \\ 0 & \Phi\\ \end{array}\right]}_{A_c} \underbrace{ \left[\begin{array}{c} e_{z1}(t)\\ s(t) \end{array}\right] }_{\bar{e}_z(t)} -\bar{G} Ce(t) +\underbrace{\left[\begin{array}{c} 0\\ S_2B_2 \end{array}\right]}_{\bar{B}}(\nu_c+\xi(t,x,u)+\nu_o) \end{array} }

ただし

\displaystyle{(27')\quad  \left\{\begin{array}{l} \bar{A}_{11}=A_{11}-A_{12}M\quad(M=S_2^{-1}S_1)\\ \bar{A}_{12}=A_{12}S_2^{-1}\\ \bar{A}_{21}=S_2(M\bar{A}_{11}+A_{21}-A_{22}M)\\ \bar{A}_{22}=S_2(M{A}_{12}+A_{22})S_2^{-1} \end{array}\right. }

を得ます。ここで、\bar{A}_{11}が安定行列となるように行列Mが選ばれているとします。

これを誤差方程式(9′)と合わせて、閉ループ系は次式で表されます。

\displaystyle{(28)\quad \begin{array}{l} \left[\begin{array}{c} \dot{e}(t)\\ \dot{\bar{e}}_z(t) \end{array}\right]= \underbrace{\left[\begin{array}{cc} A_o & 0\\ -\bar{G}C & A_c \end{array}\right]}_{A_G} \left[\begin{array}{c} e(t)\\ \bar{e}_z(t) \end{array}\right]\\ + \left[\begin{array}{c} 0\\ \bar{B} \end{array}\right]{\nu}_c + \left[\begin{array}{c} B\\ \bar{B} \end{array}\right]\nu_o + \left[\begin{array}{c} -B\\ \bar{B} \end{array}\right]\xi(t,x,\hat{u}) \end{array} }

●以上に基づく設計手順を、数値例で示します。

MATLAB
%ex9_ob_smm.m
%-----
 clear all, close all
%(A,B,C)
 A=[0 0 1 0 0;
    0 -0.1540 -0.0042  1.5400 0;
    0  0.2490 -1.0000 -5.2000 0;
    0.0386 -0.9960 -0.0003 -0.1170 0;
    0 0.5 0 0 -0.5];
 pl=eig(A)
 B=[0 0;
    -0.7440 -0.0320;
    0.3370 -1.1200;
    0.0200 0;
    0 0];
 CM=[0 1 0 0 -1;
     0 0 1 0  0;
     0 0 0 1  0;
     1 0 0 0  0];
 C=[1 0 0 0 0;
    0 0 0 1 0]; 
 [nn,mm]=size(B);
 [pp,nn]=size(CM); 
%-----
%  p1=[-0.05 -2 1.5 -1.5 1.5]
%  p1=[-0.05 -2+1.5*i -2-1.5*i -1.5+1.5*i -1.5-1.5*i]
 Lx=[-0.3131 3.3211 -0.1386 -0.7379 4.1180;
      3.9524 5.6616  2.2906 -65.6425 -90.7262];
 pCL=eig(A+B*Lx)
 Am=A+B*Lx;
 Lr=-inv(C*(Am\B));
 Bm=B*Lr;
 Cm=C;
%-----
 Q=diag([5,1,1,5,5]);
 S=swflqr(A,B,Q) 
%-----
 p1=-3
 [Acal,Bcal,Ccal,TL,Ta,Tb,Tc,D2]=ca_form2(A,B,CM,p1)
%-----
 p2=[-4,-4.425,-4.5,-5]
 [F,G]=smobs2(Acal,p2,nn,pp,TL,Ta,Tb,Tc,D2) 
 Ao=A-G*CM;
%-----
 p3=[-3,-3]
 Phi=diag(p3)
 Lambda=S*B
 L=inv(Lambda)*(S*Am-Phi*S)
 Ac=Am-B*L
 pl=eig(Ac)
%-----
 rhoo=1
 rhoc=norm(Lambda)*rhoo+1
 Ln=rhoc*inv(Lambda)
 P2=lyap(Phi',eye(mm))
%-----
%eof


図1 モデル規範・SMオブザーバベース・追従SM制御系のシミュレーション例

Note C93 閉ループ系の安定性

●閉ループ系のダイナミックスは次式で表されます。

\displaystyle{ \begin{array}{ll} (1.1) & \dot{w}(t)=A_mw(t)+B_mr(t)\\ (1.2) & \dot{e}(t)=A_oe(t)+B(\nu_o-\xi(t,x,u))\\ (1.3) & \dot{\bar e}_z(t)=A_c\bar{e}_z(t)-\bar{G}Ce(t)+\bar{B}(\nu_c+\nu_o+\xi(t,x,u))\\  & (e(t)=z(t)-x(t), \bar{e}_z(t)={\bar T}(z(t)-w(t)) ) \end{array} }

ただし

\displaystyle{(1.4)\quad \begin{array}{l} A_m=A+BL_x,\ B_m=BL_r\\ A_o=A-GC\\ A_c=\bar{T}(A_m-BL)\bar{T}^{-1}\\ L=(SB)^{-1}(SA_m-\Phi S)\\ \bar{B}=\left[\begin{array}{c} 0\\ S_2B_2 \end{array}\right],\  \bar{G}=\bar{T}G \end{array} }

これに対して次のリャプノフ関数を考えます。

\displaystyle{(2)\quad \boxed{\begin{array}{l} V(e,\bar{e}_z) =e^T(t)Pe(t)+\bar{e}_z^T(t)\bar{P}\bar{e}_z(t) \end{array}} }

ここで、正定行列P\bar{P}は、それぞれ安定行列A_oA_cのリャプノフ行列とし、次のリャプノフ方程式の解とします。

\displaystyle{ \begin{array}{ll} (3.1) & PA_o+A_o^TP=-Q\\ (3.2) & \bar{P}A_c+A_c^T\bar{P}=-\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}-\underline{\bar{P}\bar{Q}\bar{P}} \end{array} }

\bar{P}は、リャプノフ方程式

\displaystyle{(4)\quad \underbrace{\left[\begin{array}{cc} \bar{P}_1 & 0\\ 0 & \bar{P}_2 \end{array}\right]}_{\bar P} \underbrace{\left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12}\\ 0 & \Phi  \end{array}\right]}_{A_c} +\underbrace{\left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12}\\ 0 & \Phi  \end{array}\right]^T}_{A_c^T} \underbrace{\left[\begin{array}{cc} \bar{P}_1 & 0\\ 0 & \bar{P}_2 \end{array}\right]}_{\bar P}<0 }

を満足するブロック対角行列とします。ここで、正定行列\bar{P}_1\bar{P}_2は、それぞれ安定行列\bar{A}_{11}\Phiに対する次のリャプノフ不等式の解です。

\displaystyle{(5)\quad \bar{P}_1\bar{A}_{11}+\bar{A}_{11}^T\bar{P}_1<0 \Leftrightarrow  \bar{A}_{11}\bar{P}_1^{-1}+\bar{P}_1^{-1}\bar{A}_{11}^T<0 }
\displaystyle{(6)\quad \bar{P}_2\Phi+\Phi^T\bar{P}_2<0 \Leftrightarrow \Phi\bar{P}_2^{-1}+\bar{P}_2^{-1}\Phi^T<0 }

このとき、P\bar Pは、次のリャプノフ不等式の解を構成するとします。

\displaystyle{(7)\quad \underbrace{\left[\begin{array}{cc} P & 0\\ 0 & \bar{P} \end{array}\right]}_{P_G} \underbrace{\left[\begin{array}{cc} A_o & 0\\ -\bar{G}C & A_c \end{array}\right]}_{A_G} +\underbrace{\left[\begin{array}{cc} A_o & 0\\ -\bar{G}C & A_c \end{array}\right]^T}_{A_G^T} \underbrace{\left[\begin{array}{cc} P & 0\\ 0 & \bar{P} \end{array}\right]}_{P_G}<0 }

これは次式と等価です。

\displaystyle{(8)\quad \begin{array}{l} \underbrace{\left[\begin{array}{cc} PA_o & 0\\ -\bar{P}\bar{G}C & \bar{P}A_c \end{array}\right]}_{P_GA_G}+ \underbrace{\left[\begin{array}{cc} PA_o & 0\\ -\bar{P}\bar{G}C & \bar{P}A_c \end{array}\right]^T}_{(P_GA_G)^T} =\left[\begin{array}{cc} -Q & -C^T\bar{G}^T\bar{P}\\ -\bar{P}\bar{G}C & \bar{P}A_c+A_c^T\bar{P} \end{array}\right]<0\\ \Leftrightarrow \bar{P}A_c+A_c^T\bar{P}+\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}<0\\ \Leftrightarrow A_c\bar{P}^{-1}+\bar{P}^{-1}A_c^T+\bar{G}CQ^{-1}C^T\bar{G}^T<0\\ \Leftrightarrow A_c\bar{P}^{-1}+\bar{P}^{-1}A_c^T+\bar{G}CQ^{-1}C^T\bar{G}^T=-\bar{Q}\quad(\bar{Q}>0) \end{array} }

ここで、新しいパラメータ\bar{Q}を導入し、次の公式を用いています。

\displaystyle{ \begin{array}{lll} && \left[\begin{array}{cc} P & M \\ M^T & Q \end{array}\right]<0\\ &\Leftrightarrow& P-MQ^{-1}M^T<0,\ Q<0\\ &\Leftrightarrow& P<0,\ Q-M^TP^{-1}M<0 \end{array} }

いま適当な\hat{Q}_1\hat{Q}_2を与えて、

\displaystyle{(9)\quad \bar{A}_{11}\bar{P}_1^{-1}+\bar{P}_1^{-1}\bar{A}_{11}^T=-\hat{Q}_1 \quad(\hat{Q}_1>0)}
\displaystyle{(10)\quad \Phi\bar{P}_2^{-1}+\bar{P}_2^{-1}\Phi^T=-\hat{Q}_2\quad(\hat{Q}_2>0) }

を解いて、\bar{P}_1\bar{P}_2を定めるものとします。このとき(7)は

\displaystyle{(11)\quad \begin{array}{l} \underbrace{\left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12}\\ 0 & \Phi  \end{array}\right]}_{A_c} \underbrace{\left[\begin{array}{cc} \bar{P}_1^{-1} & 0\\ 0 & \bar{P}_2^{-1} \end{array}\right]}_{\bar{P}^{-1}} + \underbrace{\left[\begin{array}{cc} \bar{P}_1^{-1} & 0\\ 0 & \bar{P}_2^{-1} \end{array}\right]}_{\bar{P}^{-1}} \underbrace{\left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12}\\ 0 & \Phi  \end{array}\right]^T}_{A_c^T}\\ +\underbrace{\left[\begin{array}{c} \bar{G}_1\\ \bar{G}_2 \end{array}\right]}_{\bar{G}} \underbrace{CQ^{-1}C^T}_{Q_{22}} \underbrace{\left[\begin{array}{c} \bar{G}_1\\ \bar{G}_2 \end{array}\right]^T}_{\bar{G}^T}\\ = \underbrace{\left[\begin{array}{cc} \bar{A}_{11}\bar{P}_1^{-1} & \bar{A}_{12}\bar{P}_2^{-1}\\ 0 & \Phi \bar{P}_2^{-1} \end{array}\right]}_{A_c\bar{P}^{-1}} + \underbrace{\left[\begin{array}{cc} \bar{A}_{11}\bar{P}_1^{-1} & \bar{A}_{12}\bar{P}_2^{-1}\\ 0 & \Phi \bar{P}_2^{-1} \end{array}\right]^T}_{(A_c\bar{P}^{-1})^T}\\ +\underbrace{\left[\begin{array}{cc} \bar{G}_1Q_{22}\bar{G}_1^T &\bar{G}_1Q_{22}\bar{G}_2^T\\ \bar{G}_2Q_{22}\bar{G}_1^T &\bar{G}_2Q_{22}\bar{G}_2^T  \end{array}\right]}_{\bar{G}CQ^{-1}C^T\bar{G}^T}\\ = \left[\begin{array}{cc} \bar{A}_{11}\bar{P}_1^{-1}+\bar{P}_1^{-1}\bar{A}_{11}^T+\bar{G}_1Q_{22}\bar{G}_1^T & \bar{A}_{12}\bar{P}_2^{-1}+\bar{G}_1Q_{22}\bar{G}_2^T\\ \bar{P}_2^{-1}\bar{A}_{12}^T+\bar{G}_2Q_{22}\bar{G}_1^T & \Phi\bar{P}_2^{-1}+\bar{P}_2^{-1}\Phi^T+\bar{G}_2Q_{22}\bar{G}_2^T \end{array}\right]\\ = \left[\begin{array}{cc} -\hat{Q}_1+\bar{G}_1Q_{22}\bar{G}_1^T & \bar{A}_{12}\bar{P}_2^{-1}+\bar{G}_1Q_{22}\bar{G}_2^T\\ \bar{P}_2^{-1}\bar{A}_{12}^T+\bar{G}_2Q_{22}\bar{G}_1^T & -\hat{Q}_2+\bar{G}_2Q_{22}\bar{G}_2^T \end{array}\right]<0\\ \Leftrightarrow \left\{\begin{array}{l} \bar{G}_1Q_{22}\bar{G}_1^T +(\bar{A}_{12}\bar{P}_2^{-1}+\bar{G}_1Q_{22}\bar{G}_2^T)\\ \times(\bar{G}_2Q_{22}\bar{G}_2^T -\hat{Q}_2)^{-1}(\bar{P}_2^{-1}\bar{A}_{12}^T+\bar{G}_2Q_{22}\bar{G}_1^T) <\hat{Q}_1\\ \bar{G}_2Q_{22}\bar{G}_2^T <\hat{Q}_2 \end{array}\right. \end{array} }

となります。したがって、この制約を(8)の\hat{Q}_1、(9)の\hat{Q}_2に付けておきます。

●以上の準備の下で次式が示され、閉ループ系のリャプノフ安定性が成り立ちます。

\displaystyle{(12)\quad \begin{array}{l} \dot{V}(e,\zeta,e_r)=2e^T(t)P\dot{e}(t) +2\bar{e}_z^T(t)\bar{P}\dot{\bar{e}}_z(t)\\\\ =2e^T(t)P(A_oe(t)+B(\nu_o-\xi(t,x,u))\\ +2\bar{e}_z^T(t)\bar{P}(A_c\bar{e}_z(t)-\bar{G}Ce(t)+\bar{B}(\nu_c+\nu_o+\xi(t,x,u)))\\\\ =e^T(t)\underbrace{(PA_o+A_o^TP)}_{-Q}e(t)+2e^T(t)PB(\nu_o-\xi(t,x,u))\\ +\bar{e}_z^T(t)\underbrace{(\bar{P}A_c+A_c^T\bar{P})}_{-\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}-\bar{P}\bar{Q}\bar{P}}\bar{e}_z(t)\\ -2\bar{e}_z^T(t)\bar{P}\bar{G}Ce(t)+2\bar{e}_z^T(t)\bar{P}\bar{B}(\nu_c+\nu_o+\xi(t,x,u))\\\\ =-e^T(t)Qe(t)+2e^T(t)PB(\nu_o-\xi(t,x,u))\\ -\bar{e}_z^T(t)\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}\bar{e}_z(t)-\underline{\bar{e}_z^T(t)\bar{P}\bar{Q}\bar{P}\bar{e}_z(t)}\\ -2\bar{e}_z^T(t)\bar{P}\bar{G}Ce(t)+2\bar{e}_z^T(t)\bar{P}\bar{B}(\nu_c+\nu_o+\xi(t,x,u))\\\\ =\underbrace{2e^T(t)PB(\nu_o-\xi(t,x,u))}_{\le -2\gamma_o||FCe(t)||}+\underbrace{2\bar{e}_z^T(t)\bar{P}\bar{B}(\nu_c+\nu_o+\xi(t,x,u))}_{\le -2\gamma_c||\bar{P}_2s(t)||}\\ -\underbrace{(e^T(t)Qe(t)+2\bar{e}_z^T(t)\bar{P}\bar{G}Ce(t)+\bar{e}_z^T(t)\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}\bar{e}_z(t))}_{(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\bar{e}_z(t))^TQ(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\bar{e}_z(t))}\\ -\underline{\bar{e}_z^T(t)\bar{P}\bar{Q}\bar{P}\bar{e}_z(t)}\\\\ \le -2\gamma_o||FCe(t)||-2\gamma_c||\bar{P}_2s(t)||\\ -(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\bar{e}_z(t))^TQ(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\bar{e}_z(t))\\ -\bar{e}_z^T(t) \bar{P}\bar{Q}\bar{P} \bar{e}_z(t)<0 \end{array} }

ここで、次の平方完成を行っています。

\displaystyle{(13)\quad \begin{array}{l} (e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\bar{e}_z(t))^TQ(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\bar{e}_z(t))\\ =e^T(t)Qe(t)+2\bar{e}_z^T(t)\bar{P}\bar{G}Ce(t)+\bar{e}_z^T(t)\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}\bar{e}_z(t) \end{array} }

また、次が成り立つことを用いています。

\displaystyle{ \begin{array}{ll} (14.1) &e^T(t)PB(\nu_o-\xi(t,x,u))\le -\gamma_o||FCe(t)||\\ (14.2) &\bar{z}_e^T(t)\bar{P}\bar{B}(\nu_c+\nu_o+\xi(t,x,u))\le -\gamma_c||\bar{P}_2s(t)|| \end{array} }

まず、(14.1)は

\displaystyle{(15)\quad \boxed{\rho_o(u_\ell,y)=\frac{k_1||u_\ell||+\alpha(t,y)+k_1\gamma_c||(SB)^{-1}||+\gamma_o}_{1-k_1\kappa(SB)}} }

を仮定すると、これを変形して得られる

\displaystyle{(16)\quad \begin{array}{l} \rho_o(u_\ell,y)= k_1||u_\ell||+\alpha(t,y)+k_1\gamma_c||(SB)^{-1}||+\gamma_o\\+k_1\underbrace{||SB||||(SB)^{-1}||}_{\kappa(SB)}\rho_o(u_\ell,y)\\ =k_1(||u_\ell||+||(SB)^{-1}||\underbrace{(\rho_o(u_\ell,y)||SB|| +\gamma_c)}_{\rho_c(u_\ell,y)})+\alpha(t,y)+\gamma_o\\ >k_1(||u_\ell||+||\nu_c||)+\alpha(t,y)+\gamma_o\\ \ge k_1(||u_\ell+\nu_c||)+\alpha(t,y)+\gamma_o\\ = k_1||u||+\alpha(t,y)+\gamma_o \end{array} }

を用いて

\displaystyle{(17)\quad \begin{array}{l} 2e^T(t)PB(\nu_o-\xi(t,x,u))\\ =2e^T(t)C^TF^T(-\rho_o(u_\ell,y)\frac{FCe(t)}{||FCe(t)||}-\xi(t,x,u))\\ =-2||FCe(t)||\rho_o(u_\ell,y)-2e^T(t)C^TF^T\xi(t,x,u)\\ \le -2||FCe(t)||\rho_o(u_\ell,y)+2||FCe(t)||||\xi(t,x,u)||\\ \le 2||FCe(t)||(k_1||u||+\alpha(t,y)-\rho_o(u_\ell,y))\\ \le 2||FCe(t)||(\rho_o(u_\ell,y)-\gamma_o-\rho_o(u_\ell,y))\\ \le -2\gamma_o||FCe(t)|| \end{array} }

次に、(14.2)は

\displaystyle{(18)\quad \begin{array}{l} 2\bar{e}_z^T(t)\bar{P}\bar{B}(\nu_c+\nu_o+\xi(t,x,u))\\ =2\underbrace{\left[\begin{array}{c} e_{z1}(t)\\ s(t) \end{array}\right]^T}_{\zeta^T(t)} \underbrace{\left[\begin{array}{cc} \bar{P}_1 & 0\\ 0 & \bar{P}_2 \end{array}\right]}_{\bar P} \underbrace{\left[\begin{array}{c} 0\\ S_2B_2 \end{array}\right]}_{\bar{B}}(\nu_c+\nu_o+\xi(t,x,u))\\ =-2s^T(t)\bar{P}_2(S_2B_2)\rho_o(u_\ell,y)\frac{FCe(t)}{||FCe(t)||}\\ -2s^T(t)\bar{P}_2(S_2B_2)(S_2B_2)^{-1}\rho_c(u_\ell,y) \frac{\bar{P}_2s(t)}{||\bar{P}_2s(t)||}+2s^T(t)\bar{P}_2(S_2B_2)\xi(t,x,u)\\ =-2s^T(t)\bar{P}_2(S_2B_2)\rho_o(u_\ell,y)\frac{B^TPe(t)}{||B^TPe(t)||}\\ -2s^T(t)\bar{P}_2\rho_c(u_\ell,y)\frac{\bar{P}_2s(t)}{||\bar{P}_2s(t)||}+2s^T(t)\bar{P}_2(S_2B_2)\xi(t,x,u)\\ \le 2||\bar{P}_2s(t)||||S_2B_2||\rho_o(u_\ell,y)-2\rho_c(u_\ell,y)||\bar{P}_2s(t)||\\ +2||\bar{P}_2s(t)||||S_2B_2||||\xi(t,x,u)||\\ \le 2||\bar{P}_2s(t)||(\rho_o(u_\ell,y)||S_2B_2||-\rho_c(u_\ell,y))\\ +2||\bar{P}_2s(t)||||S_2B_2||(k_1||u||+\alpha(t,y))\\ \le 2||\bar{P}_2s(t)||(\rho_c(u_\ell,y)-\gamma_c-\rho_c(u_\ell,y))\\ +2||\bar{P}_2s(t)||||S_2B_2||(\rho_o(u_\ell,y)-\gamma_o)\\ =-2\underbrace{(\gamma_c-||S_2B_2||(\rho_o(u_\ell,y)-\gamma_o))}_{\gamma_c'}||\bar{P}_2s(t)|| \end{array} }

追従SMI-OBS制御

SMオブザーバベース・追従SMI制御…Homework

[0] まず準備の復習から始めます。

制御対象の状態空間表現として次式を考えます。

\displaystyle{ \begin{array}{ll} (1.1) & \dot{x}(t)=Ax(t)+Bu(t)+B\xi(t,x,u)\\ (1.2) & y(t)=Cx(t)\\ & (x(t)\in{\rm\bf R}^n, u(t)\in{\rm\bf R}^m, y(t)\in{\rm\bf R}^p, 1\le m= p < n) \end{array} }

これに対して、積分動作

\displaystyle{ \begin{array}{ll} (2.1) &\dot{x}_r(t)=r(t)-y(t)\quad (x_r(t)\in{\rm\bf R}^m)\\ (2.2) &\underbrace{\frac{d}{dt}(r(t)-r_c)}_{\dot{e}_r(t)}=\Gamma\underbrace{(r(t)-r_c)}_{e_r(t)} \end{array} }

とSM状態オブザーバ

\displaystyle{ \begin{array}{ll} (3.1) &\dot{z}(t)=Az(t)+Bu(t)-G \overbrace{C\underbrace{(z(t)-x(t))}_{e(t)}}^{e_y(t)=Cz(t)-y(t)}+B\nu_o\quad(z(t)\in{\rm\bf R}^n)\\ (3.2) &\displaystyle{\nu_o=-\rho_o(u_\ell,y)\frac{Fe_y(t)}{||Fe_y(t)||}} \end{array} }

を考えます。

●以下では、x(t)の代わりにz(t)を用いた制御則u(t)\hat{u}(t)で表します。

\displaystyle{(4)\quad \begin{array}{l} \hat{u}(t)=\underbrace{-L\left[\begin{array}{c} x_r(t)\\ z(t) \end{array}\right]-L_rr(t)+L_{\dot r}\dot{r}(t)}_{\hat {u}_L}+\hat{\nu}_c\\ \displaystyle{\hat{\nu}_c=L_n\frac{P_2(S\left[\begin{array}{c} x_r(t)\\ z(t) \end{array}\right]-S_rr(t))}{||P_2(S\left[\begin{array}{c} x_r(t)\\ z(t) \end{array}\right]-S_rr(t))||}}\\ L=(S\tilde{B})^{-1}(S\tilde{A}-\Phi S)\\ L_r=(S\tilde{B})^{-1}(\Phi S_r+S_2MB_r)\\ L_{\dot r}=(S\tilde{B})^{-1}S_r\\ L_n=(S\tilde{B})^{-1}\rho_c(\hat{u}_L,y) \end{array} }

ここでスイッチング関数は、\left[\begin{array}{c} x_r(t)\\ z(t) \end{array}\right]\in{\rm\bf R}^{m+n}\left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right]\in{\rm\bf R}^{n+m}と分割して、次式で表されるとしています。

\displaystyle{(5)\quad s(t)= \underbrace{ \left[\begin{array}{cc} S_1 & S_2 \\ \end{array}\right] }_{S} %\underbrace{ \left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right] %}_{x(t)} = \underbrace{S_2 \left[\begin{array}{cc} M & I_m \\ \end{array}\right] }_{S} %\underbrace{ \left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right] %}_{x(t)} \ (M=S_2^{-1}S_1) }

[1] (3.1)から(1.1)を辺々引き算して、誤差方程式

\displaystyle{(6)\quad \dot{e}(t)=(A-GC)e(t)+B\nu_o-B\xi(t,x,\hat{u}) }

を得ます。x(t)=z(t)-e(t)を用いて、(2.1)は

\displaystyle{(7)\quad \dot{x}_r(t)=r(t)-y(t)=r(t)-Cx(t)=r(t)-Cz(t)+\underbrace{Ce(t)}_{e_y(t)} }

となります。また(3.1)は、u(t)の代わりに\hat{u}(t)を用いることにすれば

\displaystyle{(8)\quad \dot{z}(t)=Az(t)-Ge_y(t)+B(\hat{u}(t)+\nu_o) }

と表せます。

●(7)と(8)をまとめて

\displaystyle{(9)\quad \boxed{\begin{array}{l} \left[\begin{array}{c} \dot x_r(t)\\ \dot z(t) \end{array}\right] = \left[\begin{array}{cc} 0_{m\times m} & -C \\ 0_{n\times m} & A \\ \end{array}\right] \left[\begin{array}{c} x_r(t)\\ z(t) \end{array}\right] + \left[\begin{array}{c} I_p\\ -G \end{array}\right] e_y(t)\\ + \left[\begin{array}{c} r(t)\\ B(\hat{u}(t)+\nu_o) \end{array}\right] \end{array}} }

ここで座標変換

\displaystyle{(10)\quad \begin{array}{l} \left[\begin{array}{c} \tilde z_1(t)\\ s(t) \end{array}\right]= \underbrace{\left[\begin{array}{cc} I_{n} & 0_{n\times m} \\ S_1 & S_2 \\ \end{array}\right]}_{\bar T} \left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right]\\ \Leftrightarrow \left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right]= \underbrace{\left[\begin{array}{cc} I_{n} & 0_{n\times m} \\ -M & S_2^{-1} \\ \end{array}\right]}_{\bar{T}^{-1}} \left[\begin{array}{c} \tilde z_1(t)\\ s(t) \end{array}\right]\quad(M=S_2^{-1}S_1) \end{array} }

を行うと

\displaystyle{(11)\quad \begin{array}{l} \bar{T}^{-1} \left[\begin{array}{c} \dot{\tilde{z}}_1(t)\\ \dot{s}(t) \end{array}\right] = \underbrace{\left[\begin{array}{cc|c} 0_{m\times m} & -C_1 & -C_2 \\ 0_{n-m\times m} & A_{11} & A_{12} \\\hline 0_{m\times m} & A_{21} & A_{22}  \end{array}\right]}_{\left[\begin{array}{cc} \tilde{A}_{11} & \tilde{A}_{12} \\ \tilde{A}_{21} & \tilde{A}_{22}  \end{array}\right]} \left[\begin{array}{cc} I_{n} & 0_{n\times m} \\ -M & S_2^{-1} \\ \end{array}\right] \left[\begin{array}{c} \tilde z_1(t)\\ s(t) \end{array}\right]\\ + \left[\begin{array}{c} I_p\\ -G_1\\\hline -G_2 \end{array}\right] e_y(t) + \left[\begin{array}{c} r(t)\\ 0\\\hline B_2(\hat{u}(t)+\nu_o) \end{array}\right]\\ = \underbrace{\left[\begin{array}{cc} \tilde{A}_{11}-\tilde{A}_{12}M & \tilde{A}_{12}S_2^{-1}\\ \tilde{A}_{21}-\tilde{A}_{22}M & \tilde{A}_{22}S_2^{-1} \end{array}\right]}_{\tilde{A}\bar{T}^{-1}} \left[\begin{array}{c} \tilde z_1(t)\\ s(t) \end{array}\right] - \left[\begin{array}{c} \bar{G}_1\\ G_2 \end{array}\right] e_y(t)\\ + \left[\begin{array}{c} B_rr(t)\\ B_2(\hat{u}(t)+\nu_o) \end{array}\right]\\ (\left[\begin{array}{c} G_1\\ G_2 \end{array}\right] =\left[\begin{array}{c} A_{12}C_2^{-1} \\ A_{22}C_2^{-1}-C_2^{-1}A_{22}^S \end{array}\right], \quad\bar{G}_1= \left[\begin{array}{c} -I_p\\ G_1 \end{array}\right]) \end{array} }

したがって

\displaystyle{(12)\quad \begin{array}{l} \left[\begin{array}{c} \dot{\tilde{z}}_1(t)\\ \dot{s}(t) \end{array}\right] = \underbrace{\left[\begin{array}{cc} I_{n} & 0_{n\times m} \\ S_1 & S_2 \\ \end{array}\right] \left[\begin{array}{cc} \tilde{A}_{11}-\tilde{A}_{12}M & \tilde{A}_{12}S_2^{-1}\\ \tilde{A}_{21}-\tilde{A}_{22}M & \tilde{A}_{22}S_2^{-1} \end{array}\right]}_{\bar{T}\tilde{A}\bar{T}^{-1}} \left[\begin{array}{c} \tilde z_1(t)\\ s(t) \end{array}\right]\\ - \left[\begin{array}{cc} I_{n} & 0_{n\times m} \\ S_1 & S_2 \\ \end{array}\right] \left[\begin{array}{c} \bar{G}_1\\ G_2 \end{array}\right] e_y(t) + \left[\begin{array}{cc} I_{n} & 0_{n\times m} \\ S_1 & S_2 \\ \end{array}\right] \left[\begin{array}{c} B_rr(t)\\ B_2(\hat{u}(t)+\nu_o) \end{array}\right]\\ \end{array} }

すなわち、第1ブロック行は

\displaystyle{(13)\quad \begin{array}{l} \dot{\tilde{z}}_1(t)= \underbrace{(\tilde{A}_{11}-\tilde{A}_{12}M)}_{\bar{A}_{11}}\tilde{z}_1(t) +\underbrace{\tilde{A}_{12}S_2^{-1}}_{\bar{A}_{12}}\bar{z}_2(t)-\bar{G}_1e_y(t)+B_rr(t)\\ =\bar{A}_{11}\tilde{z}_1(t) +\bar{A}_{12}(\bar{z}_2(t)-S_rr(t))+(B_r+\bar{A}_{12}S_r)r(t)-\bar{G}_1e_y(t) \end{array} }

第2ブロック行は(5)を用いて、\Lambda=S\bar{B}とおいて

\displaystyle{(14)\quad \begin{array}{l} \dot{s}(t)= \underbrace{((S_1\bar{A}_{11}+S_2(\tilde{A}_{21}-\tilde{A}_{22}M))\tilde{z}_1(t)+(S_1\bar{A}_{12}+S_2\tilde{A}_{22}S_2^{-1})s(t)}_{S\tilde{A}\bar{T}^{-1}\left[\begin{array}{c} \tilde z_1(t)\\ s(t) \end{array}\right]=S\tilde{A}\left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right]}\\ -\underbrace{(S_1\bar{G}_1+S_2G_2)}_{\bar G_2}e_y(t)+S_1B_rr(t)\\ +\underbrace{S_2B_2}_{\Lambda}(L\left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right]+L_rr(t)+S_r\dot{r}(t)+\hat{\nu}_c+\nu_o)\\ =S\tilde{A}\left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right]-\bar{G}_2e_y(t)+S_1B_rr(t)\\ +\Lambda(-\Lambda^{-1}(S\tilde{A}-\Phi S)\left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right]-\Lambda^{-1}(\Phi S_r+S_2MB_r)r(t)+\Lambda^{-1}S_r\dot{r}(t))\\ +\Lambda(\hat{\nu}_c+\nu_o)\\ =S\tilde{A}\left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right]-\bar{G}_2e_y(t)+S_1B_rr(t)\\ -(S\tilde{A}-\Phi S)\left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right]-(\Phi S_r+S_2MB_r)r(t)+S_r\dot{r}(t)+\Lambda(\hat{\nu}_c+\nu_o)\\ =\Phi (\underbrace{S\left[\begin{array}{c} \tilde z_1(t)\\ \tilde z_2(t) \end{array}\right]}_{s(t)}-S_rr(t))+S_r\dot{r}(t)-\bar{G}_2e_y(t)+\Lambda(\hat{\nu}_c+\nu_o) \end{array} }

(13)と(14)の結果は、次のようにまとめられます。

\displaystyle{ \begin{array}{ll} (15.1) &\dot{\tilde{z}}_1(t) =\bar{A}_{11}\tilde{z}_1(t) +\bar{A}_{12}(\bar{z}_2(t)-S_rr(t))+(B_r+\bar{A}_{12}S_r)r(t)-\bar{G}_1e_y(t)\\ (15.2) &\dot{s}(t)=\Phi (s(t)-S_rr(t))+S_r\dot{r}(t)-\bar{G}_2e_y(t)+\Lambda(\hat{\nu}_c+\nu_o) \end{array} }

ここで

\displaystyle{(16)\quad \begin{array}{l} \underbrace{\left[\begin{array}{c} \zeta_1(t)\\ \zeta_2(t) \end{array}\right]}_{\zeta(t)}= \left[\begin{array}{c} \tilde z_1(t)\\ s(t) \end{array}\right]+ \left[\begin{array}{c} \bar{A}_{11}^{-1}(\bar{A}_{12}S_r+B_r)r_c\\ -S_rr(t) \end{array}\right] \end{array} }

を定義すると

\displaystyle{\quad \begin{array}{ll} (17.1) &\dot{\zeta}_1(t) =\bar{A}_{11}\underbrace{(\tilde{z}_1(t)+\bar{A}_{11}^{-1}(\bar{A}_{12}S_r+B_r)r_c)}_{\zeta_1(t)} +\bar{A}_{12}\zeta_2(t)\\ &+(B_r+\bar{A}_{12}S_r)\underbrace{(r(t)-r_c)}_{e_r(t)}-\bar{G}_1e_y(t)\\ (17.2) &\underbrace{\dot{s}(t)-S_r\dot{r}(t)}_{\dot{\zeta}_2(t)}=\Phi \underbrace{(s(t)-S_rr(t))}_{\zeta_2(t)}-\bar{G}_2e_y(t)+\Lambda(\hat{\nu}_c+\nu_o) \end{array} }

すなわち

\displaystyle{(18)\quad \begin{array}{l} \underbrace{\left[\begin{array}{c} \dot \zeta_1(t)\\ \dot \zeta_2(t) \end{array}\right]}_{\dot{\zeta}(t)}= \underbrace{\left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12}\\ 0 & \Phi  \end{array}\right]}_{A_c} \underbrace{\left[\begin{array}{c} \zeta_1(t)\\ \zeta_2(t) \end{array}\right]}_{\zeta(t)}\\ - \underbrace{\left[\begin{array}{c} \bar{G}_1\\ \bar{G}_2 \end{array}\right]}_{\bar{G}} \underbrace{e_y(t)}_{Ce(t)} + \underbrace{\left[\begin{array}{c} B_r+\bar{A}_{12}S_r\\ 0 \end{array}\right]}_{\bar{G}_r}e_r(t) + \underbrace{\left[\begin{array}{c} 0\\ \Lambda \end{array}\right]}_{\bar\Lambda}(\hat{\nu}_c+\nu_o) \end{array} }

を得ます。これを誤差方程式(6)すなわち

\displaystyle{(6')\quad \dot{e}(t)=\underbrace{(A-GC)}_{A_o}e(t)+B(\nu_o-\xi(t,x,\hat{u})) }

と合わせて、閉ループ系は次式で表されます。

\displaystyle{(19)\quad \begin{array}{l} \left[\begin{array}{c} \dot{e}(t)\\ \dot \zeta(t) \end{array}\right]= \underbrace{\left[\begin{array}{cc} A_o & 0\\ -\bar{G}C & A_c \end{array}\right]}_{A_G} \left[\begin{array}{c} e(t)\\ \zeta(t) \end{array}\right]\\ + \left[\begin{array}{c} 0\\ \bar{G}_r \end{array}\right]e_r(t) + \left[\begin{array}{c} B\\ \bar\Lambda \end{array}\right]\nu_o + \left[\begin{array}{c} 0\\ \bar\Lambda \end{array}\right]\hat{\nu}_c - \left[\begin{array}{c} B\\ 0 \end{array}\right]\xi(t,x,\hat{u}) \end{array} }

ここまでの手順を、関数ob_smiとしてプログラムすることにします。

●以上に基づく設計手順を、数値例で示します。

MATLAB
%ex8_ob_smi.m
%-----
 clear all, close all
 A=[0 1 0;
    0 0 1;
   -0.0001 -0.0082 -0.1029];
 B=[0;0;1];
 C=[0.0001  0.0022  0.0053];
 Gamma=0;
%-----
 po=-0.2; 
 [G,Gn,F]=smobs3(A,B,C,po)
 rhoo=10;
%----- 
 p1=[-0.025 -0.03+j*0.025 -0.03-j*0.025];
 p2=-0.1;
 [L,Lr,Ldr,Ln,SS,Sr,P2]=ob_smi(A,B,C,p1,p2)
 rhoc=20;
%-----
%eof


図1 SMオブザーバベースSMI追従制御系のシミュレーション例

Note C92 閉ループ系の安定性

●閉ループ系は(19)と(3.2)を合わせて

\displaystyle{ \begin{array}{ll} (1.1) & \dot{e}(t)=A_oe(t)+B(\nu_o-\xi(t,x,u))\\ (1.2) & \dot{\zeta}(t)=A_c\zeta(t)-\bar{G}Ce(t)+\bar{G}_re_r(t)+\bar{\Lambda}(\nu_o+\hat{\nu}_c)\\ (1.3) & \dot{e}_r(t)=\Gamma e_r(t) \end{array} }

で表されます。これに対して次のリャプノフ関数を考えます。

\displaystyle{(2)\quad \boxed{\begin{array}{l} V(e,\zeta,e_r) =e^T(t)Pe(t)+\zeta^T(t)\bar{P}\zeta(t)+e_r^T(t)P_re_r(t) \end{array}} }

ここで、正定行列P\bar{P}P_rは、それぞれ安定行列A_oA_c\Gammaのリャプノフ行列とし、次のリャプノフ方程式の解とします。

\displaystyle{ \begin{array}{ll} (3.1) & PA_o+A_o^TP=-Q\\ (3.2) & \bar{P}A_c+A_c^T\bar{P}=-\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}-\underline{\bar{P}\bar{Q}\bar{P}}\\ (3.3) & P_r\Gamma+\Gamma^TP_r=-Q_r-\underline{\bar{G}_r^T\bar{Q}^{-1}\bar{G}_r} \end{array} }

\bar{P}は、リャプノフ方程式

\displaystyle{(4)\quad \underbrace{\left[\begin{array}{cc} \bar{P}_1 & 0\\ 0 & \bar{P}_2 \end{array}\right]}_{\bar P} \underbrace{\left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12}\\ 0 & \Phi  \end{array}\right]}_{A_c} +\underbrace{\left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12}\\ 0 & \Phi  \end{array}\right]^T}_{A_c^T} \underbrace{\left[\begin{array}{cc} \bar{P}_1 & 0\\ 0 & \bar{P}_2 \end{array}\right]}_{\bar P}<0 }

を満足するブロック対角行列とします。ここで、正定行列\bar{P}_1\bar{P}_2は、それぞれ安定行列\bar{A}_{11}\Phiに対する次のリャプノフ不等式の解です。

\displaystyle{(5)\quad \bar{P}_1\bar{A}_{11}+\bar{A}_{11}^T\bar{P}_1<0 \Leftrightarrow  \bar{A}_{11}\bar{P}_1^{-1}+\bar{P}_1^{-1}\bar{A}_{11}^T<0 }
\displaystyle{(6)\quad \bar{P}_2\Phi+\Phi^T\bar{P}_2<0 \Leftrightarrow \Phi\bar{P}_2^{-1}+\bar{P}_2^{-1}\Phi^T<0 }

このとき、P\bar Pは、次のリャプノフ不等式の解を構成するとします。

\displaystyle{(7)\quad \underbrace{\left[\begin{array}{cc} P & 0\\ 0 & \bar{P} \end{array}\right]}_{P_G} \underbrace{\left[\begin{array}{cc} A_o & 0\\ -\bar{G}C & A_c \end{array}\right]}_{A_G} +\underbrace{\left[\begin{array}{cc} A_o & 0\\ -\bar{G}C & A_c \end{array}\right]^T}_{A_G^T} \underbrace{\left[\begin{array}{cc} P & 0\\ 0 & \bar{P} \end{array}\right]}_{P_G}<0 }

これは次式と等価です。

\displaystyle{(8)\quad \begin{array}{l} \underbrace{\left[\begin{array}{cc} PA_o & 0\\ -\bar{P}\bar{G}C & \bar{P}A_c \end{array}\right]}_{P_GA_G}+ \underbrace{\left[\begin{array}{cc} PA_o & 0\\ -\bar{P}\bar{G}C & \bar{P}A_c \end{array}\right]^T}_{(P_GA_G)^T} =\left[\begin{array}{cc} -Q & -C^T\bar{G}^T\bar{P}\\ -\bar{P}\bar{G}C & \bar{P}A_c+A_c^T\bar{P} \end{array}\right]<0\\ \Leftrightarrow \bar{P}A_c+A_c^T\bar{P}+\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}<0\\ \Leftrightarrow A_c\bar{P}^{-1}+\bar{P}^{-1}A_c^T+\bar{G}CQ^{-1}C^T\bar{G}^T<0\\ \Leftrightarrow A_c\bar{P}^{-1}+\bar{P}^{-1}A_c^T+\bar{G}CQ^{-1}C^T\bar{G}^T=-\bar{Q}\quad(\bar{Q}>0) \end{array} }

ここで、新しいパラメータ\bar{Q}を導入し、次の公式を用いています。

\displaystyle{ \begin{array}{lll} && \left[\begin{array}{cc} P & M \\ M^T & Q \end{array}\right]<0\\ &\Leftrightarrow& P-MQ^{-1}M^T<0,\ Q<0\\ &\Leftrightarrow& P<0,\ Q-M^TP^{-1}M<0 \end{array} }

いま適当な\hat{Q}_1\hat{Q}_2を与えて、

\displaystyle{(9)\quad \bar{A}_{11}\bar{P}_1^{-1}+\bar{P}_1^{-1}\bar{A}_{11}^T=-\hat{Q}_1 \quad(\hat{Q}_1>0)}
\displaystyle{(10)\quad \Phi\bar{P}_2^{-1}+\bar{P}_2^{-1}\Phi^T=-\hat{Q}_2\quad(\hat{Q}_2>0) }

を解いて、\bar{P}_1\bar{P}_2を定めるものとします。このとき(7)は

\displaystyle{(11)\quad \begin{array}{l} \underbrace{\left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12}\\ 0 & \Phi  \end{array}\right]}_{A_c} \underbrace{\left[\begin{array}{cc} \bar{P}_1^{-1} & 0\\ 0 & \bar{P}_2^{-1} \end{array}\right]}_{\bar{P}^{-1}} + \underbrace{\left[\begin{array}{cc} \bar{P}_1^{-1} & 0\\ 0 & \bar{P}_2^{-1} \end{array}\right]}_{\bar{P}^{-1}} \underbrace{\left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12}\\ 0 & \Phi  \end{array}\right]^T}_{A_c^T}\\ +\underbrace{\left[\begin{array}{c} \bar{G}_1\\ \bar{G}_2 \end{array}\right]}_{\bar{G}} \underbrace{CQ^{-1}C^T}_{Q_{22}} \underbrace{\left[\begin{array}{c} \bar{G}_1\\ \bar{G}_2 \end{array}\right]^T}_{\bar{G}^T}\\ = \underbrace{\left[\begin{array}{cc} \bar{A}_{11}\bar{P}_1^{-1} & \bar{A}_{12}\bar{P}_2^{-1}\\ 0 & \Phi \bar{P}_2^{-1} \end{array}\right]}_{A_c\bar{P}^{-1}} + \underbrace{\left[\begin{array}{cc} \bar{A}_{11}\bar{P}_1^{-1} & \bar{A}_{12}\bar{P}_2^{-1}\\ 0 & \Phi \bar{P}_2^{-1} \end{array}\right]^T}_{(A_c\bar{P}^{-1})^T}\\ +\underbrace{\left[\begin{array}{cc} \bar{G}_1Q_{22}\bar{G}_1^T &\bar{G}_1Q_{22}\bar{G}_2^T\\ \bar{G}_2Q_{22}\bar{G}_1^T &\bar{G}_2Q_{22}\bar{G}_2^T  \end{array}\right]}_{\bar{G}CQ^{-1}C^T\bar{G}^T}\\ = \left[\begin{array}{cc} \bar{A}_{11}\bar{P}_1^{-1}+\bar{P}_1^{-1}\bar{A}_{11}^T+\bar{G}_1Q_{22}\bar{G}_1^T & \bar{A}_{12}\bar{P}_2^{-1}+\bar{G}_1Q_{22}\bar{G}_2^T\\ \bar{P}_2^{-1}\bar{A}_{12}^T+\bar{G}_2Q_{22}\bar{G}_1^T & \Phi\bar{P}_2^{-1}+\bar{P}_2^{-1}\Phi^T+\bar{G}_2Q_{22}\bar{G}_2^T \end{array}\right]\\ = \left[\begin{array}{cc} -\hat{Q}_1+\bar{G}_1Q_{22}\bar{G}_1^T & \bar{A}_{12}\bar{P}_2^{-1}+\bar{G}_1Q_{22}\bar{G}_2^T\\ \bar{P}_2^{-1}\bar{A}_{12}^T+\bar{G}_2Q_{22}\bar{G}_1^T & -\hat{Q}_2+\bar{G}_2Q_{22}\bar{G}_2^T \end{array}\right]<0\\ \Leftrightarrow \left\{\begin{array}{l} \bar{G}_1Q_{22}\bar{G}_1^T +(\bar{A}_{12}\bar{P}_2^{-1}+\bar{G}_1Q_{22}\bar{G}_2^T)\\ \times(\bar{G}_2Q_{22}\bar{G}_2^T -\hat{Q}_2)^{-1}(\bar{P}_2^{-1}\bar{A}_{12}^T+\bar{G}_2Q_{22}\bar{G}_1^T) <\hat{Q}_1\\ \bar{G}_2Q_{22}\bar{G}_2^T <\hat{Q}_2 \end{array}\right. \end{array} }

となります。したがって、この制約を(8)の\hat{Q}_1、(9)の\hat{Q}_2に付けておきます。

●以上の準備の下で次式が示され、閉ループ系のリャプノフ安定性が成り立ちます。

\displaystyle{(12)\quad \begin{array}{l} \dot{V}(e,\zeta,e_r)=2e^T(t)P\dot{e}(t) +2\zeta^T(t)\bar{P}\dot{\zeta}(t) +2e_r^T(t)P_r\dot{e}_r(t)\\\\ =2e^T(t)P(A_oe(t)+B(\nu_o-\xi(t,x,u))\\ +2\zeta^T(t)\bar{P}(A_c\zeta(t)-\bar{G}Ce(t)+\bar{G}_re_r(t)+\bar{\Lambda}(\nu_o+\hat{\nu}_c))\\ +2e_r^T(t)P_r\Gamma e_r(t)\\\\ =e^T(t)\underbrace{(PA_o+A_o^TP)}_{-Q}e(t)+2e^T(t)PB(\nu_o-\xi(t,x,u))\\ +\zeta^T(t)\underbrace{(\bar{P}A_c+A_c^T\bar{P})}_{-\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}-\bar{P}\bar{Q}\bar{P}}\zeta(t)\\ -2\zeta^T(t)\bar{P}\bar{G}Ce(t)+2\zeta^T(t)\bar{P}\bar{G}_re_r(t)+2\zeta^T(t)\bar{P}\bar{\Lambda}(\nu_o+\hat{\nu}_c)\\ +e_r^T(t)\underbrace{(P_r\Gamma+\Gamma^TP_r)}_{-Q_r-\bar{G}_r^T\bar{Q}^{-1}\bar{G}_r}e_r(t)\\\\ =-e^T(t)Qe(t)+2e^T(t)PB(\nu_o-\xi(t,x,u))\\ -\zeta^T(t)\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}\zeta(t)-\underline{\zeta^T(t)\bar{P}\bar{Q}\bar{P}\zeta(t)}\\ -2\zeta^T(t)\bar{P}\bar{G}Ce(t)+2\zeta^T(t)\bar{P}\bar{G}_re_r(t)+2\zeta^T(t)\bar{P}\bar{\Lambda}(\nu_o+\hat{\nu}_c)\\ -e_r^T(t)Q_re_r(t)-\underline{e_r^T(t)\bar{G}_r^T\bar{Q}^{-1}\bar{G}_re_r(t)}\\\\ =\underbrace{2e^T(t)PB(\nu_o-\xi(t,x,u))}_{\le -2\gamma_o||FCe(t)||}+\underbrace{2\zeta^T(t)\bar{P}\bar{\Lambda}(\nu_o+\hat{\nu}_c)}_{\le -2\gamma_c||\bar{P}_2\zeta_2(t)||}\\ -\underbrace{(e^T(t)Qe(t)+2\zeta^T(t)\bar{P}\bar{G}Ce(t)+\zeta^T(t)\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}\zeta(t))}_{(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\zeta(t))^TQ(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\zeta(t))}\\ -\underbrace{\underline{\zeta^T(t)\bar{P}\bar{Q}\bar{P}\zeta(t)}-2\zeta^T(t)\bar{P}\bar{G}_re_r(t)+\underline{e_r^T(t)\bar{G}_r^T\bar{Q}^{-1}\bar{G}_re_r(t)}}_{(\zeta(t)-\bar{P}^{-1}\bar{Q}^{-1}\bar{G}_re_r(t))^T \bar{P}\bar{Q}\bar{P} (\zeta(t)-\bar{P}^{-1}\bar{Q}^{-1}\bar{G}_re_r(t))}\\ -e_r^T(t)Q_re_r(t)\\\\ \le -2\gamma_o||FCe(t)||-2\gamma_c||\bar{P}_2\zeta_2(t)||\\ -(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\zeta(t))^TQ(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\zeta(t))\\ -(\zeta(t)-\bar{P}^{-1}\bar{Q}^{-1}\bar{G}_re_r(t))^T \bar{P}\bar{Q}\bar{P} (\zeta(t)-\bar{P}^{-1}\bar{Q}^{-1}\bar{G}_re_r(t))\\ -e_r^T(t)Q_re_r(t)<0 \end{array} }

ここで、次の平方完成を行っています。

\displaystyle{ \begin{array}{ll} (13.1) &(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\zeta(t))^TQ(e(t)+Q^{-1}C^T\bar{G}^T\bar{P}\zeta(t))\\ &=e^T(t)Qe(t)+2\zeta^T(t)\bar{P}\bar{G}Ce(t)+\zeta^T(t)\bar{P}\bar{G}CQ^{-1}C^T\bar{G}^T\bar{P}\zeta(t)\\ (13.2) &(\zeta(t)-\bar{P}^{-1}\bar{Q}^{-1}\bar{G}_re_r(t))^T \bar{P}\bar{Q}\bar{P} (\zeta(t)-\bar{P}^{-1}\bar{Q}^{-1}\bar{G}_re_r(t))\\ &=\underline{\zeta^T(t)\bar{P}\bar{Q}\bar{P}\zeta(t)}-2\zeta^T(t)\bar{P}\bar{G}_re_r(t)+\underline{e_r^T(t)\bar{G}_r^T\bar{Q}^{-1}\bar{G}_re_r(t)} \end{array} }

また、次が成り立つことを用いています。

\displaystyle{ \begin{array}{ll} (14.1) &e^T(t)PB(\nu_o-\xi(t,x,u))\le -\gamma_o||FCe(t)||\\ (14.2) &\zeta^T(t)\bar{P}\bar{\Lambda}(\nu_o+\hat{\nu}_c)\le -\gamma_c||\bar{P}_2\zeta_2(t)|| \end{array} }

まず、(14.1)は

\displaystyle{(15)\quad \rho_o(\hat{u}_L,y)=\frac{k_1||\hat{u}_L||+\alpha(t,y)+k_1\gamma_c||\Lambda^{-1}||+\gamma_o}_{1-k_1\kappa(\Lambda)} }

を変形して得られる

\displaystyle{(16)\quad \begin{array}{l} \rho_o(\hat{u}_L,y)= k_1||\hat{u}_L||+\alpha(t,y)+k_1\gamma_c||\Lambda^{-1}||+\gamma_o+k_1\underbrace{||\Lambda||||\Lambda^{-1}||}_{\kappa(\Lambda)}\rho_o(\hat{u}_L,y)\\ =k_1(||\hat{u}_L||+||\Lambda^{-1}||\underbrace{(\rho_o(\hat{u}_L,y)||\Lambda|| +\gamma_c)}_{\rho_c(\hat{u}_L,y)})+\alpha(t,y)+\gamma_o\\ >k_1(||\hat{u}_L||+||\hat{\nu}_c||)+\alpha(t,y)+\gamma_o\\ \ge k_1(||\hat{u}_L+\hat{\nu}_c||)+\alpha(t,y)+\gamma_o\\ = k_1||\hat{u}||+\alpha(t,y)+\gamma_o \end{array} }

を用いて

\displaystyle{(17)\quad \begin{array}{l} 2e^T(t)PB(\nu_o-\xi(t,x,u))\\ =2e^T(t)C^TF^T(-\rho_o(\hat{u}_L,y)\frac{FCe(t)}{||FCe(t)||}-\xi(t,x,u))\\ =-2||FCe(t)||\rho_o(\hat{u}_L,y)-2e^T(t)C^TF^T\xi(t,x,u)\\ \le -2||FCe(t)||\rho_o(\hat{u}_L,y)+2||FCe(t)||||\xi(t,x,u)||\\ \le 2||FCe(t)||(k_1||\hat{u}||+\alpha(t,y)-\rho_o(\hat{u}_L,y))\\ \le -2\gamma_o||FCe(t)|| \end{array} }

次に、(14.2)は

\displaystyle{(18)\quad \begin{array}{l} 2\zeta^T(t)\bar{P}\bar{\Lambda}(\nu_o+\hat{\nu}_c)\\ =2\underbrace{\left[\begin{array}{c} \zeta_1(t)\\ \zeta_2(t) \end{array}\right]^T}_{\zeta^T(t)} \underbrace{\left[\begin{array}{cc} \bar{P}_1 & 0\\ 0 & \bar{P}_2 \end{array}\right]}_{\bar P} \underbrace{\left[\begin{array}{c} 0\\ \Lambda \end{array}\right]}_{\bar\Lambda}(\nu_o+\hat{\nu}_c)\\ =-2\zeta_2^T(t)\bar{P}_2\Lambda\rho_o(\hat{u}_L,y)\frac{FCe(t)}{||FCe(t)||}-2\zeta_2^T(t)\bar{P}_2\Lambda\rho_c(\hat{u}_L,y)\Lambda^{-1} \frac{\bar{P}_2\zeta_2(t)}{||\bar{P}_2\zeta_2(t)||}\\ \le 2||\bar{P}_2\zeta_2(t)||||\Lambda||\rho_o(\hat{u}_L,y)-2\rho_c(\hat{u}_L,y)||\bar{P}_2\zeta_2(t)||\\ =2||\bar{P}_2\zeta_2(t)||(\rho_o(\hat{u}_L,y)||\Lambda||-\rho_c(\hat{u}_L,y))\\ =2||\bar{P}_2\zeta_2(t)||(\rho_c(\hat{u}_L,y)-\gamma_c-\rho_c(\hat{u}_L,y))\\ =-2\gamma_c||\bar{P}_2\zeta_2(t)|| \end{array} }

Note C92-2 スライディングモードの検討

このSM制御系では、超平面

\displaystyle{(1)\quad {\cal S}_c=\left\{\left[\begin{array}{c} e\\ \zeta_1\\ \zeta_2 \end{array}\right]\in{\bf R}^{2n+p}: \left\{\begin{array}{l} e_y(t)=Ce(t)=Cz(t)-y(t)=0\\ \zeta_2(t)=s(t)-S_rr(t)=0 \end{array}\right. \right\} }

においてスライディングモードが生じることを示します。そのために

\displaystyle{ \begin{array}{ll} (2.1) & \dot{e}(t)=A_oe(t)+B(\nu_o-\xi(t,x,\hat{u}))\\ (2.2) & \dot{\zeta}_2(t)=\Phi\zeta_2(t)-\bar{G}_2\underbrace{e_y(t)}_{Ce(t)} +\Lambda(\hat{\nu}_c+\nu_o) \end{array} }

に対して次のリャプノフ関数を考えます。

\displaystyle{(3)\quad \boxed{V_c(e,\zeta_2)=e_y^T(t)P_2e_y(t)+\zeta_2(t)^T\bar{P}_2\zeta_2(t)} }

この時間微分は次のように計算できます。

\displaystyle{(4)\quad \dot{V}_c=2e_y^T(t)P_2\dot{e}_y(t)+2\zeta_2(t)^T\bar{P}_2\dot{\zeta}_2(t) }

(4)の第1項は、P_2=F^T(CB)^{-1}より

\displaystyle{(5)\quad \begin{array}{l} P_2\dot{e}_y(t)=F^T(CB)^{-1}C\dot{e}(t)\\ =F^T(CB)^{-1}CA_oe(t)+F^T(CB)^{-1}CB(\nu_o-\xi(t,x,\hat{u}))\\ =F^T(CB)^{-1}CA_oe(t)+F^T(\nu_o-\xi(t,x,\hat{u})) \end{array} }

また、(14.1)はPB=C^TF^Tを適用して

\displaystyle{(6)\quad \underbrace{e^T(t)C^T}_{e_y^T(t)}F^T(\nu_o-\xi(t,x,u))\le -\gamma_o||Fe_y(t)|| }

したがって

\displaystyle{(7)\quad \begin{array}{l} e_y^T(t)P_2\dot{e}_y(t)\\ =e_y^T(t)F^T(CB)^{-1}CA_oe(t)+e_y^T(t)F^T(\nu_o-\xi(t,x,\hat{u}))\\ \le ||Fe_y(t)||||(CB)^{-1}CA_oe(t)||-\gamma_o||Fe_y(t)||\\ =-||Fe_y(t)||(\gamma_o-||(CB)^{-1}CA_oe(t)||) \end{array} }

(4)の第2項は、

\displaystyle{(8)\quad \begin{array}{l} 2\zeta_2(t)^T\bar{P}_2\dot{\zeta}_2(t) =2\zeta_2(t)^T\bar{P}_2(\Phi\zeta_2(t)-\bar{G}_2e_y(t) +\Lambda(\hat{\nu}_c+\nu_o))\\ =-\zeta_2(t)^T(\bar{P}_2\Phi+\Phi^T\bar{P}_2)\zeta_2(t)-2\zeta_2(t)^T\bar{P}_2\bar{G}_2e_y(t)+2\zeta_2(t)^T\bar{P}_2\Lambda(\hat{\nu}_c+\nu_o)\\ \le  2||\bar{P}_2\zeta_2(t)||||\bar{G}_2e_y(t)||-2\gamma_c||\bar{P}_2\zeta_2(t)||\\ =-2||\bar{P}_2\zeta_2(t)||(\gamma_c-||\bar{G}_2e_y(t)||) \end{array} }

したがって

\displaystyle{(9)\quad \Omega_\eta=\left\{\left[\begin{array}{c} e\\ \zeta_1\\ \zeta_2 \end{array}\right]\in{\bf R}^{2n+p}:  \left\{\begin{array}{l} ||(CB)^{-1}CA_oe(t)||<\gamma_o-\eta\\ ||\bar{G}_2e_y(t)||<\gamma_c-\eta \end{array}\right. \right\} }

においては

\displaystyle{(10)\quad \begin{array}{l} \dot{V}_c=2e_y^T(t)P_2\dot{e}_y(t) +2\zeta_2(t)^T\bar{P}_2\dot{\zeta}_2(t)\\ \le -2||Fe_y(t)||(\gamma_o-||(CB)^{-1}CA_oe(t)||) -2||\bar{P}_2\zeta_2(t)||(\gamma_c-||\bar{G}_2e_y(t)||)\\ \le -2\eta(||Fe_y(t)||+||\bar{P}_2\zeta_2(t)||)\\ \le -2\eta \kappa \sqrt{V_c}\\ (\kappa=\min\{\underline{\sigma}(F),\underline{\sigma}(\bar{P}_2)\} \times\sqrt{\max\{\bar{\sigma}(P_2),\bar{\sigma}(\bar{P}_2)\}}) \end{array} }

が成り立ち、これより有限時間でV_c=0となり、超平面{\cal S}_cに突入することが分かります(\kappaの表現式はEdwards and Spurgeonによるものです)。

準備

SMオブザーバ

[1] 制御対象の状態空間表現として次式を考えます。

\displaystyle{ \begin{array}{ll} (1.1) & \dot{x}(t)=Ax(t)+Bu(t)+f(t,x,u)\\ (1.2) & y(t)=Cx(t)\\ & (x(t)\in{\rm\bf R}^n, u(t)\in{\rm\bf R}^m, y(t)\in{\rm\bf R}^p, 1\le m\le p < n) \end{array} }

ただし、f(t,x,u)\in{\rm\bf R}^nはモデル誤差、非線形要素、外乱などの影響を表し、次のマッチング条件を満たすとします。

\displaystyle{ \begin{array}{ll} (2.1) & f(t,x,u)=B\xi(t,x,u)\\ (2.2) & ||\xi(t,x,u)||<k_1||u||+\alpha(t,y)\quad(k_1<1)\\ & (f(t,x,y)\in{\rm\bf R}^n, \xi(t,x,u)\in{\rm\bf R}^m) \end{array} }

さらに次の3つを仮定します。 

仮定1^\circ (A,B) は可制御対
仮定2^\circ {\rm ranl}\,CB=m(相対次数1)
仮定3^\circ (A,B,C) の不変零点は安定(最小位相系)

一般性を失うことなく、(1)は次のSM標準形であるとします。

\displaystyle{ \begin{array}{ll} (3.1) & \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot x_2(t) \end{array}\right] }_{\dot{x}(t)} = \underbrace{ \left[\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22} \\ \end{array}\right] }_{A} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x(t)} + \underbrace{ \left[\begin{array}{c} 0\\ B_2 \end{array}\right] }_{B} u(t)\\ (3.2) & y(t) = \underbrace{ \left[\begin{array}{cc} C_1 & C_2 \end{array}\right] }_{C} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x(t)} \end{array} }

●これに対して、次のSMオブザーバを考えます。

\displaystyle{(4)\quad \begin{array}{l} \dot{z}(t)=Az(t)+Bu(t)-G \overbrace{C\underbrace{(z(t)-x(t))}_{e(t)}}^{e_y(t)=Cz(t)-y(t)}+B\nu_o\quad(z(t)\in{\rm\bf R}^n)\\ =\underbrace{(A-GC)}_{A_o}z(t)+Gy(t)+Bu(t)+B\nu_o \end{array} }

ここで、GA_0=A-GCが安定行列となるように選ばれているとします。また、

\displaystyle{(5)\quad PA_0+A_o^TP=-Q\quad(Q>0) }

を満足するP>0と、あるF\in{\bf R}^{m\times p}に対して

\displaystyle{(6)\quad PB=C^TF^T }

が満足されているものとします。このとき、\nu_o

\displaystyle{(7)\quad \nu_o=-\rho_o(u_\ell,y)\frac{Fe_y(t)}{||Fe_y(t)||} }

のように与えます。上の仮定2^\circ3^\circの下で、SMオブザーバの誤差は次の超平面上でスライディングモードを達成します。

\displaystyle{(8)\quad {\cal S}_o=\{e\in{\bf R}^n: Fe_y=FCe=0\} }

●以下では、{\boxed{p=m}}を仮定します。座標変換

\displaystyle{(9)\quad T_c=\left[\begin{array}{cc} I_{n-p} & 0 \\ C_1 & C_2 \end{array}\right] \Leftrightarrow T_c^{-1}=\left[\begin{array}{cc} I_{n-p} & 0 \\ -C_2^{-1}C_1 & C_2^{-1} \end{array}\right] }

を行なうと

\displaystyle{(10)\quad \begin{array}{l} \underbrace{\left[\begin{array}{cc} {\cal A}_{11} & {\cal A}_{12}\\ {\cal A}_{21} & {\cal A}_{22} \end{array}\right]}_{{\cal A}}\\ =\underbrace{\left[\begin{array}{cc} {A}_{11}-{A}_{12}C_2^{-1}C_1 & A_{12}C_2^{-1} \\ C_1{\cal A}_{11}+C_2A_{21}-C_2A_{22}C_2^{-1}C_1 &  C_1A_{12}C_2^{-1}+C_2A_{22}C_2^{-1} \end{array}\right] }_{T_cAT_c^{-1}}\\ {\cal B}=\underbrace{\left[\begin{array}{c} 0 \\ C_2B_2 \end{array}\right] }_{T_cB}\\ {\cal C}=\underbrace{\left[\begin{array}{cc} 0  & I_p \end{array}\right] }_{CT_c^{-1}}\\ {\cal P}= \underbrace{\left[\begin{array}{cc} I_{n-p} & 0 \\ -C_2^{-1}C_1 & C_2^{-1} \end{array}\right]^T \left[\begin{array}{cc} P_1 & 0\\ 0 & P_2 \end{array}\right] \left[\begin{array}{cc} I_{n-p} & 0 \\ -C_2^{-1}C_1 & C_2^{-1} \end{array}\right] }_{T_c^TPT_c}\\ =\left[\begin{array}{cc} I_{n-p} & -C_1^TC_2^{-T} \\ 0 & C_2^{-T} \end{array}\right]^T \left[\begin{array}{cc} P_1 & 0 \\ -P_2C_2^{-1}C_1 & P_2C_2^{-1} \end{array}\right]\\ =\left[\begin{array}{cc} P_1+C_1^TC_2^{-T}P_2C_2^{-1}C_1 & -C_1^TC_2^{-T}P_2C_2^{-1}\\ -C_2^{-T}P_2C_2^{-1}C_1 & C_2^{-T}P_2C_2^{-1} \end{array}\right] \end{array} }

を得ます。したがって

\displaystyle{(11)\quad \begin{array}{l} G=\underbrace{\left[\begin{array}{cc} I_{n-p} & 0 \\ -C_2^{-1}C_1 & C_2^{-1} \end{array}\right] }_{T_c^{-1}} \underbrace{\left[\begin{array}{c} A_{12}C_2^{-1}\\ C_1A_{12}C_2^{-1}+C_2A_{22}C_2^{-1}-{\cal A}_{22}^s \end{array}\right] }_{\left[\begin{array}{c} {\cal A}_{12}\\ {\cal A}_{22}-{\cal A}_{22}^s \end{array}\right]}\\ =\left[\begin{array}{c} A_{12}C_2^{-1} \\ A_{22}C_2^{-1}-C_2^{-1}A_{22}^S \end{array}\right] \end{array} }

\displaystyle{(12)\quad \begin{array}{l} \underbrace{\left[\begin{array}{cc} P_1+C_1^TC_2^{-T}P_2C_2^{-1}C_1 & -C_1^TC_2^{-T}P_2C_2^{-1}\\ -C_2^{-T}P_2C_2^{-1}C_1 & C_2^{-T}P_2C_2^{-1} \end{array}\right] \left[\begin{array}{c} 0 \\ C_2B_2 \end{array}\right] }_{{\cal P}{\cal B}} = \underbrace{\left[\begin{array}{cc} 0  & I_p \end{array}\right]^T }_{{\cal C}^T} F^T\\ \Rightarrow F=(C_2^{-T}P_2C_2^{-1}C_2B_2)^T=B_2^TP_2C_2^{-1} \end{array} }

すなわち

\displaystyle{(13)\quad \boxed{\begin{array}{l} G= \left[\begin{array}{c} A_{12}C_2^{-1} \\ A_{22}C_2^{-1}-C_2^{-1}A_{22}^S \end{array}\right]\\ F=B_2^TP_2C_2^{-1} \end{array}} }

ここまでの手順を、関数smobs3としてプログラムすることにします。

追従SMI制御

[2] 制御対象

\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}^p, m=p) \end{array} }

の出力を、コマンド(次式の解)

\displaystyle{(2)\quad \begin{array}{l} %\dot{r}(t)=\Gamma(r(t)-r_c)\\ \frac{d}{dt}(r(t)-r_c)=\Gamma(r(t)-r_c)\quad(r(t),r_c\in{\rm\bf R}^m) \end{array} }

に追従させることを考えます(\Gammaは安定行列)。そのために、積分動作

\displaystyle{(3)\quad \begin{array}{l} \dot{x}_r(t)=r(t)-y(t)\quad(x_r(t)\in{\rm\bf R}^m) \end{array} }

を導入し、次の拡大系を構成します。ここで、(1)はすでに標準形であるとしています。

\displaystyle{(4)\quad \begin{array}{l} \left[\begin{array}{c} \dot x_r(t)\\ \dot x(t) \end{array}\right] = \left[\begin{array}{c|cc} 0 & -C_1 & -C_2\\\hline 0 & A_{11} & A_{12} \\ 0 & A_{21} & A_{22} \end{array}\right] \left[\begin{array}{c} x_r(t)\\ x(t) \end{array}\right] + \left[\begin{array}{c} 0\\\hline 0\\ B_2 \end{array}\right] u(t) + \left[\begin{array}{c} I_m \\\hline 0 \\ 0 \end{array}\right] r(t)\\ (x_r(t)\in{\rm\bf R}^m, x(t)\in{\rm\bf R}^n) \end{array} }

これを、次のように分割し直しても標準形であることには変わりありません。

\displaystyle{(5a)\quad \begin{array}{l} \left[\begin{array}{c} \dot{x}_1(t)\\ \dot{x}_2(t) \end{array}\right] = \underbrace{ \left[\begin{array}{cc|c} 0 & -C_1 & -C_2\\ 0 & A_{11} & A_{12} \\\hline 0 & A_{21} & A_{22} \end{array}\right] }_{\tilde{A}=\left[\begin{array}{cc} \tilde{A}_{11} & \tilde{A}_{12} \\ \tilde{A}_{21} & \tilde{A}_{22} \\ \end{array}\right]} \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] + \underbrace{ \left[\begin{array}{c} 0\\ 0\\\hline B_2 \end{array}\right] }_{\tilde{B}} u(t) + \left[\begin{array}{c} I_m \\ 0 \\\hline 0 \end{array}\right] r(t)\\ (x_1(t)\in{\rm\bf R}^n, x_2(t)\in{\rm\bf R}^m) \end{array} }

ただし

\displaystyle{(5b)\quad %\begin{array}{l} \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] = \left[\begin{array}{c} x_r(t)\\ x(t) \end{array}\right] %\end{array} }

●この積分器による拡大系を安定化できれば、積分器の値x_r(t)は定値となり、被積分項r(t)-y(t)の値は零となり、y(t)r(t)へ漸近します。そこで、SM制御によって拡大系を安定化し、追従制御系を構成することを考えます。この制御系は特別なr(t)=0の場合を含みますので、まずスイッチング関数として、次式を考えます。

\displaystyle{(6)\quad s(t)= \underbrace{ \left[\begin{array}{cc} S_1 & S_2 \\ \end{array}\right] }_{S} %\underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] %}_{x(t)} = \underbrace{S_2 \left[\begin{array}{cc} M & I_m \\ \end{array}\right] }_{S} %\underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] %}_{x(t)} \ (M=S_2^{-1}S_1) }

(5)に対して、座標変換

\displaystyle{(7)\quad \begin{array}{l} \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] = \underbrace{ \left[\begin{array}{cc} I_n & 0 \\ S_1 & S_2 \\ \end{array}\right] }_{T_s} \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right]\\ \Leftrightarrow \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] = \underbrace{ \left[\begin{array}{cc} I_n & 0 \\ -S_2^{-1}S_1 & S_2^{-1} \\ \end{array}\right] }_{T_s^{-1}} \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] \end{array} }

を行って、次式を得ます。

\displaystyle{(8a)\quad \begin{array}{l} %\underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot s(t) \end{array}\right] %}_{\dot{x}'(t)} = \underbrace{ \left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12} \\ S_2\bar{A}_{21} & S_2\bar{A}_{22}S_2^{-1} \\ \end{array}\right] }_{T_sA_ET_s^{-1}} %\underbrace{ \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] %}_{x'(t)} + \underbrace{ \left[\begin{array}{cc} 0\\ S_2B_2 \end{array}\right] }_{T_sB_E} u(t)\\ + \left[\begin{array}{cc} B_r \\ S_1B_r \end{array}\right] r(t) \end{array} }

ただし

\displaystyle{(8b)\quad \left\{\begin{array}{l} \bar{A}_{11}=\underbrace{ \left[\begin{array}{cc} 0 & -C_1 \\ 0 & A_{11} \end{array}\right]}_{\tilde{A}_{11}} -\underbrace{\left[\begin{array}{c} -C_2\\ A_{12} \end{array}\right]}_{\tilde{A}_{12}}M\quad(M=S_2^{-1}S_1)\\ \bar{A}_{12}= \underbrace{\left[\begin{array}{c} -C_2\\ A_{12} \end{array}\right]}_{\tilde{A}_{12}}S_2^{-1}\\ \bar{A}_{21}=S_2(M\bar{A}_{11} + \left[\begin{array}{cc} 0 & A_{21} \end{array}\right] -A_{22}M)\\ \bar{A}_{22}=S_2(M \left[\begin{array}{c} -C_2\\ A_{12} \end{array}\right] +A_{22})S_2^{-1}\\ B_r=\left[\begin{array}{cc} I_m \\ 0 \end{array}\right] \end{array}\right. }

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

●特別なr(t)=0の場合のスライディングモードはs(t)=0で表されますが、一般のr(t)\ne0の場合のスライディングモードは

\displaystyle{(9)\quad s(t)-S_rr(t)=0 \quad\Rightarrow \dot{s}(t)-S_r\dot{r}(t)=0 }

で表されるとします。ここで、S_rの選び方についてはあとで述べます。

●以上の準備の下で、制御則は次式で表されます。

\displaystyle{(10)\quad  \begin{array}{l} u(t)=u_L(t)+\nu_c\\ u_L(t)=-\underbrace{(S\tilde{B})^{-1}(S\tilde{A}-\Phi S)}_{L=L_{eq}+L_\Phi}\left[\begin{array}{c} x_r(t)\\ x(t) \end{array}\right]\\ -\underbrace{(S\tilde{B})^{-1}(\Phi S_r+S_1B_r)}_{L_r} r(t) +\underbrace{(S\tilde{B})^{-1}S_r}_{L_{\dot r}} \dot{r}(t)\\ \nu_c=-\underbrace{(S\tilde{B})^{-1}\rho_c(u_L,y)}_{L_n}\frac{P_2(s(t)-S_rr(t))}{||P_2(s(t)-S_rr(t))||} \end{array} }

これをSMオブザーバを用いて実施する場合は次式を用います(\Lambda=S\tilde{B}=S_2B_2)。

\displaystyle{(11)\quad \begin{array}{l} \hat{u}(t)=\underbrace{-L\left[\begin{array}{c} x_r(t)\\ z(t) \end{array}\right]-L_rr(t)+L_{\dot r}\dot{r}(t)}_{\hat{u}_L}+\hat{\nu}_c\\ \displaystyle{\hat{\nu}_c=-L_n\frac{P_2(S\left[\begin{array}{c} x_r(t)\\ z(t) \end{array}\right]-S_rr(t))}{||P_2(S\left[\begin{array}{c} x_r(t)\\ z(t) \end{array}\right]-S_rr(t))||}}\\ L=\Lambda^{-1}(S\tilde{A}-\Phi S)\\ L_r=\Lambda^{-1}(\Phi S_r+S_2MB_r)\\ L_{\dot r}=\Lambda^{-1}S_r\\ L_n=\Lambda^{-1}\rho_c(\hat{u}_L,y) \end{array} }

\displaystyle{(11')\quad %\Phi\bar{P}_2^{-1}+\bar{P}_2^{-1}\Phi^T=-\hat{Q}_2 P_2\Phi+\Phi^TP_2=-I_m }

\displaystyle{(11'')\quad \rho_c(\hat{u}_L,y)=||\Lambda||\underbrace{\frac{k_1||\hat{u}_L||+\alpha(t,y)+k_1\gamma_c||\Lambda^{-1}||+\gamma_o}_{1-k_1\kappa(\Lambda)}}_{\rho_o(\hat{u}_L,y)}+\gamma_c }

Note C91 S_rの選び方

積分動作で示した閉ループ系の状態方程式の一部

\displaystyle{(12)\quad  \dot{x}_1(t)=\bar{A}_{11}x_1(t)+\bar{A}_{12}(s(t)-S_rr(t))+(B_r+\bar{A}_{12}S_r)r(t) }

を考えます。定常状態でスライディングモードが達成されたとすると

\displaystyle{(13)\quad  \begin{array}{l} 0=\bar{A}_{11}x_1(\infty)+\bar{A}_{12}\underbrace{(s(t)-S_rr(t))}_{0}+(B_r+\bar{A}_{12}S_r)}r(\infty)\\ \Rightarrow  x_1(\infty)=-\bar{A}_{11}^{-1}(B_r+\bar{A}_{12}S_r)r_c\\ \Rightarrow  x_r(\infty)=-B_r^T\bar{A}_{11}^{-1}(B_r+\bar{A}_{12}S_r)r_c \end{array} }

を得ます。x_r(\infty)=0とするためには

\displaystyle{(14)\quad  \begin{array}{l} 0=-B_r^T\bar{A}_{11}^{-1}(B_r+\bar{A}_{12}S_r)\\ \Rightarrow  \underbrace{B_r^T\bar{A}_{11}^{-1}\tilde{A}_{12}}_{K_s}S_2^{-1}S_r=-B_r^T\bar{A}_{11}^{-1}B_r \end{array} }

において、K_sが正則であれば、S_r

\displaystyle{(14)\quad  \boxed{S_r=-S_2K_s^{-1}B_r^T\bar{A}_{11}^{-1}B_r =-S_2(B_r^T\bar{A}_{11}^{-1}\tilde{A}_{12})^{-1}B_r^T\bar{A}_{11}^{-1}B_r} }

と求めることができます。そこで次式に注目します。

\displaystyle{(15)\quad  \begin{array}{l} \left[\begin{array}{cc} I & 0\\ B_r^T\tilde{A}_{11}^{-1} & -K_s \end{array}\right]= \left[\begin{array}{cc} \tilde{A}_{11} & \tilde{A}_{12}\\ B_r^T & 0 \end{array}\right] \left[\begin{array}{cc} \bar{A}_{11}^{-1} & -\bar{A}_{11}^{-1}\tilde{A}_{12}\\ 0 & I \end{array}\right]\\ = \left[\begin{array}{cc} \tilde{A}_{11} & \tilde{A}_{12}\\ B_r^T & 0 \end{array}\right] \left[\begin{array}{cc} I & 0\\ -M & I \end{array}\right] \left[\begin{array}{cc} \bar{A}_{11}^{-1} & -\bar{A}_{11}^{-1}\tilde{A}_{12}\\ 0 & I \end{array}\right] \end{array} }

これよりK_sが正則であるための条件が次のように求められます。

\displaystyle{(16)\quad  \begin{array}{l} {\rm det}\left[\begin{array}{cc} \tilde{A}_{11} & \tilde{A}_{12}\\ B_r^T & 0 \end{array}\right]\ne 0 \Leftrightarrow  {\rm det}\left[\begin{array}{cc|c} 0 & -C_1 & -C_2\\ 0 & A_{11} & A_{12}\\\hline I & 0 & 0 \end{array}\right]\ne 0\\ \Leftrightarrow  {\rm det}\left[\begin{array}{cc} -C_1 & -C_2\\ A_{11} & A_{12} \end{array}\right]\ne 0 \end{array} }

これは不変零点が複素平面原点にはないことを意味しますが、仮定3^\circにより保証されており、K_sの正則性が成り立ちます。

SMオブザーバ

Walcott-Zak’s observer…Homework

[1] 制御対象の状態空間表現として次式を考えます。

\displaystyle{ \begin{array}{ll} (1.1) & \dot{x}(t)=Ax(t)+Bu(t)+f(t,x,u)\\ (1.2) & y(t)=Cx(t)\\ & (x(t)\in{\rm\bf R}^n, u(t)\in{\rm\bf R}^m, y(t)\in{\rm\bf R}^p, 1\le m\le p < n) \end{array} }

ただし、f(t,x,u)\in{\rm\bf R}^nはモデル誤差、非線形要素、外乱などの影響を表し、次のマッチング条件を満たすとします。

\displaystyle{ \begin{array}{ll} (2.1) & \boxed{f(t,x,u)=B\xi(t,x,u)}\\ (2.2) & ||\xi(t,x,u)||<r_1||u||+\alpha(t,y)\\ & (f(t,x,y)\in{\rm\bf R}^n, \xi(t,x,u)\in{\rm\bf R}^m) \end{array} }

●このとき、Walcott-Zakは次のSMオブザーバを提案しています(z(t)\in{\rm\bf R}^n)。

\displaystyle{(3)\quad \boxed{\begin{array}{l} \dot{z}(t)=Az(t)+Bu(t)-G \overbrace{C\underbrace{(z(t)-x(t))}_{e(t)}}^{e_y(t)=Cz(t)-y(t)}+B\nu\\ =\underbrace{(A-GC)}_{A_o}z(t)+Gy(t)+Bu(t)+B\nu \end{array}} }

ここで、GA_0=A-GCが安定行列となるように選ばれているとします。また、

\displaystyle{(4)\quad PA_0+A_o^TP=-Q\quad(Q>0) }

を満足するP>0と、あるF\in{\bf R}^{m\times p}に対して

\displaystyle{(5)\quad PB=C^TF^T }

が満足されているものとします。このとき、\nu

\displaystyle{(6.1)\quad \boxed{\nu=-\rho(t,y,u)\frac{Fe_y(t)}{||Fe_y(t)||}} }

ただし

\displaystyle{(6.2)\quad \rho(t,y,u)\ge r_1||u||+\alpha(t,y)+\gamma_0  %\rho(t,y,u)\ge r_1||u||+\alpha(t,y)+\gamma_0 \ge ||\xi(t,x,u)||+\gamma_0 }

のように与えます。

これは、通常のオブザーバと同様に、出力の推定誤差 e_y(t)=C\hat{x}(t)-y(t) をフィードバックした上で、出力の推定誤差のスイッチング動作が加えられています。これにより、モデル誤差、非線形要素、外乱などの影響があるにも拘わらず、e_y(t)=0の超平面に載せることが考えられます。

[2] (3)から(1.1)を辺々引き算して、誤差方程式

\displaystyle{(7)\quad \begin{array}{l} \underbrace{\dot{z}(t)-\dot{x}(t)}_{\dot{e}(t)} =Az(t)+Bu(t)-G Ce(t)+B\nu\\ -(Ax(t)+Bu(t)+B\xi(t,x,u))\\ =Ae(t)-GCe(t)+B\nu-B\xi(t,x,u)\\ =\underbrace{(A-GC)}_{A_o}e(t)+B(\nu-\xi(t,x,u)) \end{array} }

すなわち

\displaystyle{(7')\quad \boxed{\dot{e}(t)=A_oe(t)+B(\nu-\xi(t,x,u))} }

を得ます。このとき、リャプノフ関数

\displaystyle{(8)\quad V(e)=e^T(t)Pe(t) }

に対して

\displaystyle{(9)\quad \begin{array}{l} \dot{V}(e)=2e^T(t)P\dot{e}(t)\\ =2e^T(t)P(A_oe(t)-B\xi(t,x,u)+B\nu)\\ =e^T(t)(PA_o+A^T_oP)e(t)-2e^T(t)PB\xi(t,x,u)+2e^T(t)PB\nu\\ <-e^T(t)Qe(t)-2e^T(t)C^TF^T\xi(t,x,u)-2e^T(t)C^TF^T\rho(t,y,u)\frac{FCe(t)}{||FCe(t)||}\\ =-e^T(t)Qe(t)-2(-||FCe(t)||||\xi(t,x,u)||)-2\rho(t,y,u)||FCe(t)||\\ \le -e^T(t)Qe(t)-2||FCe(t)||(\rho(t,y,u)-||\xi(t,x,u)||)\\ \le -e^T(t)Qe(t)-2\eta||FCe(t)||\\ \le -e^T(t)Qe(t)<0 \end{array} }

を得て、2次安定性が成り立ちます。したがって、ある有限時間で、次の超平面上でのスライディングモードが達成されます。

\displaystyle{(10)\quad {\cal S}_{wz}=\{e\in{\bf R}^n: Fe_y=FCe=0\} }

[3] 適当な座標変換を用いて、(1.1)の状態空間表現として次式が得られます。

\displaystyle{(11.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} {\bar A}_{11} & {\bar  A}_{12} \\ {\bar A}_{21} & {\bar  A}_{22} \\ \end{array}\right] }_{{\bar A}=TAT^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{x'(t)} + \boxed{\underbrace{ \left[\begin{array}{c} 0_{n-p\times p}\\ {\bar  B}_{2} \end{array}\right] }_{{\bar B}=TB}} (u(t)+\xi(t))\\ \end{array} }

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

ただし、{\bar A}_{11}は安定行列です。

●これは予備的検討における(3.1)と(3.2)と同じタイプですから、そこでの(18)に相当する

\displaystyle{(12)\quad \begin{array}{l} \dot{\hat x}(t)=A\hat{x}(t)+Bu(t)-G_\ell Ce(t)+G_n\nu\\ G_\ell=T_o^{-1}\left[\begin{array}{c} {\cal A}_{12}\\ {\cal A}_{22}-{\cal A}_{22}^{s} \end{array}\right]\\ G_n=||{\cal D}_{2}||T_o^{-1}\left[\begin{array}{c} 0_{n-p\times p}\\ I_p \end{array}\right]\\ \displaystyle{\nu=-\rho(t,y,u)\frac{P_2e_y(t)}{||P_2e_y(t)||} \quad(P_2{\cal A}_{22}^{s}+{\cal A}_{22}^{s}^TP_2<0)} \end{array} }

を設計できます。これから、(3)と(6.1)におけるGFを、次のように定めることが提案されています。

\displaystyle{(13)\quad \boxed{G=(T_LT_bT_c)^{-1}\left[\begin{array}{c} {\cal A}_{12}\\ {\cal A}_{22}-{\cal A}_{22}^{s} \end{array}\right]} }

\displaystyle{(14)\quad \boxed{F={\bar B}_{2}^T{P}_{2}} }

ここまでの手順を、関数smobs2としてプログラムすることにします。

Note C-83: (11)への座標変換

いま

\displaystyle{(1)\quad P=\left[\begin{array}{cc} {P}_{11} & {P}_{12} \\ {P}_{21} & {P}_{22} \end{array}\right]\quad({P}_{11}\in{\bf R}^{n-p\times n-p}) }

と分割し、座標変換行列

\displaystyle{(2)\quad T=\left[\begin{array}{cc} I_{n-p} & {P}_{11}^{-1}{P}_{12} \\ 0 & I_p \end{array}\right] }

を定義します。このとき

\displaystyle{(3)\quad \bar{C}=CT^{-1}=\left[\begin{array}{cc} 0 & I_p \end{array}\right] }

を得ます、また

\displaystyle{(4)\quad P^{-1}=\left[\begin{array}{cc} {\tilde P}_{11} & {\tilde P}_{12} \\ {\tilde P}_{21} & {\tilde P}_{22} \end{array}\right]\quad({P}_{11}{\tilde P}_{12} + {P}_{12}{\tilde P}_{22}=0)

と表すと、B=P^{-1}C^TF^Tに注意して

\displaystyle{(5)\quad \begin{array}{l} \bar{B}=TB= \left[\begin{array}{cc} I_{n-p} & {P}_{11}^{-1}{P}_{12} \\ 0 & I_p \end{array}\right] \left[\begin{array}{cc} {\tilde P}_{11} & {\tilde P}_{12} \\ {\tilde P}_{21} & {\tilde P}_{22} \end{array}\right] \left[\begin{array}{cc} 0 \\ I_p \end{array}\right] F^T\\ =\left[\begin{array}{cc} {\tilde P}_{12} + {P}_{11}^{-1}{P}_{12}{\tilde P}_{22} \\ {\tilde P}_{22} \end{array}\right] F^T= \underbrace{\left[\begin{array}{cc} 0 \\ {\tilde P}_{22}F^T \end{array}\right] }_{\left[\begin{array}{cc} 0 \\ {\bar B}_{2} \end{array}\right]} \end{array} }

および

\displaystyle{(6)\quad \begin{array}{l} \bar{P}=T^{-T}PT^{-1}\\ = \left[\begin{array}{cc} I_{n-p} & 0 \\ -{P}_{12}^T{P}_{11}^{-1} & I_p \end{array}\right] \left[\begin{array}{cc} {P}_{11} & {P}_{12} \\ {P}_{21} & {P}_{22} \end{array}\right] \left[\begin{array}{cc} I_{n-p} & -{P}_{11}^{-1}{P}_{12} \\ 0 & I_p \end{array}\right]\\ = \left[\begin{array}{cc} {P}_{11} & {P}_{12} \\ 0 & {P}_{22}-{P}_{12}^T{P}_{11}^{-1}{P}_{12} \end{array}\right] \left[\begin{array}{cc} I_{n-p} & -{P}_{11}^{-1}{P}_{12} \\ 0 & I_p \end{array}\right]\\ =\underbrace{\left[\begin{array}{cc} {P}_{11} & 0 \\ 0 & {P}_{22}-{P}_{21}{P}_{11}^{-1}{P}_{12} \end{array}\right] }_{\left[\begin{array}{cc} {\bar P}_{1} & 0 \\ 0 & {\bar P}_{2} \end{array}\right]} \end{array} }

を得ます。また

\displaystyle{(7)\quad \begin{array}{l} \bar{A}=TAT^{-1}\\ = \left[\begin{array}{cc} I_{n-p} & {P}_{11}^{-1}{P}_{12} \\ 0 & I_p \end{array}\right] \left[\begin{array}{cc} {A}_{11} & {A}_{12} \\ {A}_{21} & {A}_{22} \end{array}\right] \left[\begin{array}{cc} I_{n-p} & -{P}_{11}^{-1}{P}_{12} \\ 0 & I_p \end{array}\right]\\ = \left[\begin{array}{cc} {A}_{11}+{P}_{11}^{-1}{P}_{12}{A}_{21} & {A}_{12}+ {P}_{11}^{-1}{P}_{12}{A}_{22}\\ {A}_{21} & {A}_{22} \end{array}\right] \left[\begin{array}{cc} I_{n-p} & -{P}_{11}^{-1}{P}_{12} \\ 0 & I_p \end{array}\right]\\ =\underbrace{\left[\begin{array}{cc} {A}_{11}+{P}_{11}^{-1}{P}_{12}{A}_{21} & * \\ {A}_{21}  & {A}_{22}-{A}_{21}{P}_{11}^{-1}{P}_{12} \end{array}\right] }_{\left[\begin{array}{cc} {\bar A}_{11} & {\bar A}_{12} \\ {\bar A}_{21} & {\bar A}_{22} \end{array}\right]} \end{array} }

より

\displaystyle{(8)\quad \begin{array}{l} \bar{A}_o=\underbrace{TA_oT^{-1} }_{\left[\begin{array}{cc} {\bar A}_{o11} & {\bar A}_{o12} \\ {\bar A}_{o21} & {\bar A}_{o22} \end{array}\right]} =T(A-GC)T^{-1}\\ =\underbrace{TAT^{-1}}_{ \left[\begin{array}{cc} {\bar A}_{11} & {\bar A}_{12} \\ {\bar A}_{21} & {\bar A}_{22} \end{array}\right]} -\underbrace{TGCT^{-1}} _{\left[\begin{array}{cc} 0 & TG \end{array}\right]} = \left[\begin{array}{cc} {\bar A}_{11} & * \\ {\bar A}_{21} & * \end{array}\right] \end{array} }

すなわち{\bar A}_{o11}={\bar A}_{11}であることに注意します。

●本文(4)の左右から、T^{-T}T^{-1}をかけて

\displaystyle{(9)\quad \underbrace{T^{-T}PT^{-1}}_{\bar P}\cdot \underbrace{TA_oT^{-1}}_{\bar{A}_o} +\underbrace{T^{-T}A_o^TT^T}_{\bar{A}_o^T}\cdot \underbrace{T^{-T}PT^{-1}}_{\bar P} =-\underbrace{T^{-T}QT^{-1}}_{\bar Q} }

また本文(5)の左から、T^{-T}をかけて

\displaystyle{(10)\quad \underbrace{T^{-T}C^T}_{\bar{C}^T}F^T=\underbrace{T^{-T}PT^{-1}}_{\bar P}\underbrace{TB}_{\bar B} }

を得ます。したがって、座標変換後も、本文(4)と(5)は同様に成り立ちます。

(9)において(6)と(8)を考慮すると

\displaystyle{(11)\quad \begin{array}{l} \left[\begin{array}{cc} {\bar P}_{1} & 0 \\ 0 & {\bar P}_{2} \end{array}\right]  \left[\begin{array}{cc} {\bar A}_{o11} & {\bar A}_{o12} \\ {\bar A}_{o21} & {\bar A}_{o22} \ \end{array}\right]  +\left[\begin{array}{cc} {\bar A}_{o11} & {\bar A}_{o12} \\ {\bar A}_{o21} & {\bar A}_{o22} \ \end{array}\right]^T \left[\begin{array}{cc} {\bar P}_{1} & 0 \\ 0 & {\bar P}_{2} \end{array}\right]\\ =- \left[\begin{array}{cc} \bar{Q}_{11} & \bar{Q}_{12} \\ \bar{Q}_{12}^T & \bar{Q}_{22} \end{array}\right] \end{array} }

すなわち

\displaystyle{(12)\quad \bar{P}_{1}{\bar A}_{o11}+{\bar A}_{o11}^T\bar{P}_{1}=-\bar{Q}_{11} }

したがって、{\bar A}_{11}={\bar A}_{o11}は安定行列となります。

また(10)において(3)と(5)を考慮すると

\displaystyle{(13)\quad \underbrace{\left[\begin{array}{cc} 0 & I_p \end{array}\right]}_{\bar{C}^T}F^T=\underbrace{\left[\begin{array}{cc} {\bar P}_{1} & 0 \\ 0 & {\bar P}_{2} \end{array}\right]}_{\bar P}\underbrace{\left[\begin{array}{cc} 0 \\ {\bar B}_{2} \end{array}\right]}_{\bar B} }

すなわち

\displaystyle{(14)\quad F={\bar B}_{2}^T{\bar P}_{2} }

予備的検討

[1] 制御対象の状態空間表現として次式を考えます。

\displaystyle{ \begin{array}{ll} (1.1) & \dot{x}(t)=Ax(t)+Bu(t)+f(t,x,u)\\ (1.2) & y(t)=Cx(t)\\ & (x(t)\in{\rm\bf R}^n, u(t)\in{\rm\bf R}^m, y(t)\in{\rm\bf R}^p, 1\le m\le p < n) \end{array} }

ただし、f(t,x,u)\in{\rm\bf R}^nはモデル誤差、非線形要素、外乱などの影響を表し、次のマッチング条件を満たすとします。

\displaystyle{ \begin{array}{ll} (2.1) & \boxed{f(t,x,u)=D\xi(t,x,u)}\\ (2.2) & ||\xi(t,x,u)||<r_1||u||+\alpha(t,y)\\ & (f(t,x,y)\in{\rm\bf R}^n, \xi(t,x,u)\in{\rm\bf R}^q) \end{array} }

●適当な座標変換x'(t)=T_ox(t)によって次式が得られていると仮定します。

\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} {\cal A}_{11} & {\cal A}_{12} \\ {\cal A}_{21} & {\cal A}_{22} \\ \end{array}\right] }_{T_oAT_o^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{x'(t)} + \underbrace{ \left[\begin{array}{c} {\cal B}_{1}\\ {\cal B}_{2} \end{array}\right] }_{T_oB} u(t) +\boxed{ \underbrace{ \left[\begin{array}{c} 0_{n-p\times p}\\ {\cal D}_{2} \end{array}\right] }_{T_oD}} \xi(t) \end{array} }

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

ただし、{\cal A}_{11}は安定行列であることを仮定します。

●このとき次のSMオブザーバを考えます。

\displaystyle{(4)\quad \boxed{\begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot{\hat x}_1(t)\\ \dot{\hat y}(t) \end{array}\right] }_{\dot{\hat x}'(t)} = \underbrace{ \left[\begin{array}{cc} {\cal A}_{11} & {\cal A}_{12} \\ {\cal A}_{21} & {\cal A}_{22} \\ \end{array}\right] }_{T_oAT_o^{-1}} \underbrace{ \left[\begin{array}{c} \hat{x}_1(t)\\ \hat{y}(t) \end{array}\right] }_{\hat{x}'(t)} + \underbrace{ \left[\begin{array}{c} {\cal B}_{1}\\ {\cal B}_{2} \end{array}\right] }_{T_oB} u(t)\\ - \left[\begin{array}{c} {\cal A}_{12}\\ {\cal A}_{22}-{\cal A}_{22}^{s} \end{array}\right] \underbrace{(\hat{y}(t)-y(t))}_{e_y(t)} + \left[\begin{array}{c} 0_{n-p\times p}\\ I_p \end{array}\right] \nu \end{array}} }

ここで、{\cal A}_{22}^{s}は安定行列として選ばれているとします。また、

\displaystyle{(5)\quad P_2{\cal A}_{22}^{s}+{\cal A}_{22}^{s}^TP_2=-Q_2\quad(Q_2>0) }

を満足するP_2>0を用いて、\nu

\displaystyle{(6.1)\quad \boxed{\nu=-\rho(t,y,u)||{\cal D}_{2}||\frac{P_2e_y(t)}{||P_2e_y(t)||}} }

ただし

\displaystyle{(6.2)\quad \rho(t,y,u)\ge r_1||u||+\alpha(t,y)+\gamma_0  %\rho(t,y,u)\ge r_1||u||+\alpha(t,y)+\gamma_0 \ge ||\xi(t,x,u)||+\gamma_0 }

のように与えます。

以下では、モデル誤差、非線形要素、外乱などの影響があるにも拘わらず、状態オブザーバを構成できるを検討します。

[2] (4)から(3.1)を辺々引き算して、次の誤差方程式を得ます。

\displaystyle{(7)\quad \begin{array}{l} \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}{cc} {\cal A}_{11} & {\cal A}_{12} \\ {\cal A}_{21} & {\cal A}_{22} \\ \end{array}\right] \left[\begin{array}{c} \hat{x}_1(t)-x_1(t)\\ \hat{y}(t)-y(t) \end{array}\right]\\ - \left[\begin{array}{cc} 0 & {\cal A}_{12}\\ 0 & {\cal A}_{22}-{\cal A}_{22}^{s} \end{array}\right] \left[\begin{array}{c} \hat{x}_1(t)-x_1(t)\\ \hat{y}(t)-y(t) \end{array}\right] + \left[\begin{array}{c} 0_{n-p}\\ \nu-{\cal D}_{2}\xi(t) \end{array}\right] \end{array} }

すなわち

\displaystyle{(7')\quad \boxed{\begin{array}{l} \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} {\cal A}_{11} & 0_{n-p\times p} \\ {\cal A}_{21} & {\cal A}_{22}^{s} \\ \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_{n-p}\\ \nu-{\cal D}_{2}\xi(t) \end{array}\right] \end{array}} }

●この誤差システムの2次安定性を示します。(5)の解P_2>0を用いて

\displaystyle{(8)\quad \hat{Q}={\cal A}^T_{21}P_2Q_2^{-1}P_2{\cal A}_{21}+Q_1>0\quad(Q_1>0) }

を定義し、

\displaystyle{(9)\quad P_1{\cal A}_{11}+{\cal A}_{11}^TP_1=-\hat{Q} }

の解P_1>0を用いて、リャプノフ関数

\displaystyle{(10)\quad \boxed{V(e_1,e_y)=e_1^T(t)P_1e_1(t)+e_y^T(t)P_2e_y(t)} }

を考えます。このとき

\displaystyle{(11)\quad \begin{array}{l} \underbrace{(e_y(t)-Q_2^{-1}P_2{\cal A}_{21}e_1(t))^T}_{\tilde{e}_y(t)^T}Q_2 \underbrace{(e_y(t)-Q_2^{-1}P_2{\cal A}_{21}e_1(t))}_{\tilde{e}_y(t)}\\ =\underline{e_y^T(t)Q_2e_y(t)-2e_1^T(t){\cal A}_{21}^TP_2e_y(t)}+e_1^T(t){\cal A}_{21}^TP_2Q_2^{-1}P_2{\cal A}_{21}e_1(t) \end{array} }

および

\displaystyle{(12)\quad \begin{array}{l} e_y^T(t)P_2{\cal D}_{2}\xi(t) \ge -|e_y^T(t)P_2{\cal D}_{2}\xi(t)|\\ \ge -||P_2e_y(t)||||{\cal D}_{2}||||\xi(t)||\\ \ge -||P_2e_y(t)||||{\cal D}_{2}||(r_1||u||+\alpha(t,y))\\ \ge -||P_2e_y(t)||||{\cal D}_{2}||(\rho(t,y,u)-\gamma_0) \end{array} }

に注意して

\displaystyle{(13)\quad \begin{array}{l} \dot{V}=2e_1^T(t)P_1\dot{e}_1(t)+2e_y^T(t)P_2\dot{e}_y(t)\\ =2e_1^T(t)P_1{\cal A}_{11}e_1(t)+2e_y^T(t)P_2({\cal A}_{21}e_1(t)+ {\cal A}_{22}^{s}e_y(t)+\nu-{\cal D}_{2}\xi(t))\\\\ =-e_1^T(t)\hat{Q}e_1(t)+2e_y^T(t)P_2{\cal A}_{21}e_1(t)+ 2e_y^T(t)P_2{\cal A}_{22}^{s}e_y(t)\\ +2e_y^T(t)P_2\nu-2e_y^T(t)P_2{\cal D}_{2}\xi(t)\\\\ =-e_1^T(t)\hat{Q}e_1(t)\underline{-e_y^T(t)Q_2e_y(t)+ 2e_y^T(t)P_2{\cal A}_{21}e_1(t)}\\ +2e_y^T(t)P_2\nu-2e_y^T(t)P_2{\cal D}_{2}\xi(t)\\\\ =-e_1^T(t)({\cal A}^T_{21}P_2Q_2^{-1}P_2{\cal A}_{21}+Q_1)e_1(t)\\ +e_1^T(t){\cal A}_{21}^TP_2Q_2^{-1}P_2{\cal A}_{21}e_1(t)-\tilde{e}_y^T(t)Q_2\tilde{e}_y(t)\\ +2e_y^T(t)P_2(-\rho(t,y,u)||{\cal D}_{2}||\frac{P_2{e}_y(t)}{||P_2{e}_y(t)||})-2e_y^T(t)P_2{\cal D}_{2}\xi(t)\\\\ =-e_1^T(t)Q_1e_1(t)-\tilde{e}_y^T(t)Q_2\tilde{e}_y(t)\\ -2\rho(t,y,u)||{\cal D}_{2}||||P_2{e}_y(t)||-2e_y^T(t)P_2{\cal D}_{2}\xi(t)\\ \le -e_1^T(t)Q_1e_1(t)-\tilde{e}_y^T(t)Q_2\tilde{e}_y(t)\\ -2\rho(t,y,u)||{\cal D}_{2}||||P_2{e}_y(t)||- 2(-||P_2e_y(t)||||{\cal D}_{2}||(\rho(t,y,u)-\gamma_0))\\\\ = -e_1^T(t)Q_1e_1(t)-\tilde{e}_y^T(t)Q_2\tilde{e}_y(t) -2\gamma_0||P_2e_y(t)||||{\cal D}_{2}||\\\\ \le -e_1^T(t)Q_1e_1(t)-\tilde{e}_y^T(t)Q_2\tilde{e}_y(t)<0 \end{array} }

●一方、誤差の振舞いはある有限時間で次の超平面上でのスライディングモードとなることがわかります。

\displaystyle{(14)\quad {\cal S}_o=\{\left[\begin{array}{c} e_1\\ e_y \end{array}\right]\in{\bf R}^{n}: e_y=0\} }

実際、(10)の第2項

\displaystyle{(15)\quad \boxed{V_s(e_y)=e_y(t)^TP_2e_y(t)} }

に対して、(12)に注意して

\displaystyle{(16)\quad \begin{array}{l} \dot{V}_s(e_y)=2e_y(t)^TP_2\dot{e}_y(t)\\ =2e_y(t)^TP_2({\cal A}_{21}{e}_1(t)+{\cal A}_{22}^{s} {e}_y(t) +\nu-{\cal D}_{2}\xi(t))\\ =2e_y(t)^TP_2{\cal A}_{22}^{s} {e}_y(t) +2e_y(t)^TP_2{\cal A}_{21}{e}_1(t) +2e_y(t)^TP_2(\nu-{\cal D}_{2}\xi(t))\\\\ \le -e_y(t)^TQ_2e_y(t)+2e_y(t)^TP_2{\cal A}_{21}{e}_1(t)\\ +2e_y^T(t)P_2(-\rho(t,y,u)||{\cal D}_{2}||\frac{P_2{e}_y(t)}{||P_2{e}_y(t)||})-2e_y^T(t)P_2{\cal D}_{2}\xi(t)\\\\ \le 2||e_y(t)^TP_2||||{\cal A}_{21}{e}_1(t)||\\ -2\rho(t,y,u)||{\cal D}_{2}||||P_2{e}_y(t)||-2(-||P_2e_y(t)||||{\cal D}_{2}||(\rho(t,y,u)-\gamma_0))\\\\ =2||P_2e_y(t)||||{\cal A}_{21}{e}_1(t)|| -2\gamma_0||P_2e_y(t)||||{\cal D}_{2}||\\ =2||P_2e_y(t)||(||{\cal A}_{21}{e}_1(t)||-\gamma_0||{\cal D}_{2}||)\\ \le -2\eta||P_2e_y(t)||\quad(||{\cal A}_{21}{e}_1(t)||-\gamma_0||{\cal D}_{2}||<-\eta)\\ \le -2\eta\sqrt{\underline{\sigma}(P_2)}\sqrt{V_s(e_y)} \end{array} }

ただし

\displaystyle{(17)\quad \begin{array}{l} ||P_2e_y(t)||^2=(P_2^{1/2}e_y(t))^TP_2(P_2^{1/2}e_y(t))^\\ \ge \underline{\sigma}(P_2)||P_2^{1/2}e_y(t)||^2=\underline{\sigma}(P_2)V_s(e_y) \end{array} }

●SMオブザーバ(4)と(6.1)を再掲すると

\displaystyle{(4)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot{\hat x}_1(t)\\ \dot{\hat y}(t) \end{array}\right] }_{\dot{\hat x}'(t)} = \underbrace{ \left[\begin{array}{cc} {\cal A}_{11} & {\cal A}_{12} \\ {\cal A}_{21} & {\cal A}_{22} \\ \end{array}\right] }_{T_oAT_o^{-1}} \underbrace{ \left[\begin{array}{c} \hat{x}_1(t)\\ \hat{y}(t) \end{array}\right] }_{\hat{x}'(t)} + \underbrace{ \left[\begin{array}{c} {\cal B}_{1}\\ {\cal B}_{2} \end{array}\right] }_{T_oB} u(t)\\ - \left[\begin{array}{c} {\cal A}_{12}\\ {\cal A}_{22}-{\cal A}_{22}^{s} \end{array}\right] \underbrace{(\hat{y}(t)-y(t))}_{e_y(t)} + \left[\begin{array}{c} 0_{n-p\times p}\\ I_p \end{array}\right] \nu \end{array} }

\displaystyle{(6.1)\quad \nu=-\rho(t,y,u)||{\cal D}_{2}||\frac{P_2e_y(t)}{||P_2e_y(t)||} }

これは、x'(t)=T_ox(t)より{\hat x}'(t)=T_o{\hat x}(t)としてよいので、次のように表すことができます。

\displaystyle{(18)\quad \boxed{\begin{array}{l} \dot{\hat x}(t)=A\hat{x}(t)+Bu(t)-G_\ell e_y(t)+G_n\nu\\ G_\ell=T_o^{-1}\left[\begin{array}{c} {\cal A}_{12}\\ {\cal A}_{22}-{\cal A}_{22}^{s} \end{array}\right]\\ G_n=||{\cal D}_{2}||T_o^{-1}\left[\begin{array}{c} 0_{n-p\times p}\\ I_p \end{array}\right]\\ \displaystyle{\nu=-\rho(t,y,u)\frac{P_2e_y(t)}{||P_2e_y(t)||} \quad(P_2{\cal A}_{22}^{s}+{\cal A}_{22}^{s}^TP_2<0)} \end{array}} }

[2] 以上の議論は(3.1)と(3.2)の形式を得るための座標変換行列T_oの存在が前提になります。これについて調べるために、出力FB型SM制御(p>m)で得られていた次の結果に注目します。

\displaystyle{ \begin{array}{ll} (18.1*)&(T_aT_bT_c)A(T_aT_bT_c)^{-1}= \left[\begin{array}{cccc} A_{11}^o & A_{12}^o & A_{121}^m & A_{121}\\ 0_{n-p-r\times r} & A_{22}^o & A_{122}^m & A_{1221}\\ 0_{p-m\times r} & A_{21}^o & A_{22}^m & A_{1222}\\ A_{2120} & A_{2121} & A_{2122} & A_{22} \end{array}\right]\\ &(A_{11}^o\in{\rm\bf R}^{r\times r},A_{22}^o\in{\rm\bf R}^{n-p-r\times n-p-r},A_{22}^m\in{\rm\bf R}^{p-m\times p-m},A_{22}\in{\rm\bf R}^{m\times m})\\ (18.2*)&(T_aT_bT_c)B= \left[\begin{array}{c} 0_{r\times m} \\ 0_{n-p-r\times m} \\ 0_{p-m\times m} \\ B_2 \end{array}\right]\\ (18.3*)&C(T_aT_bT_c)^{-1}= \left[\begin{array}{cc} 0_{p\times n-p} & T \\ \end{array}\right] \end{array} }

ここで、(A_{22}^o,A_{21}^o)は可観測対、A_{11}^oの固有値は(A,B,C)の不変零点でした。この不変零点は安定であること、{\rm rank}\,CB=mが仮定されていました。

●これはf(t,x,u)=B\xi(t,x,u)の場合ですが、f(t,x,u)=D\xi(t,x,u)の場合も、p>qとして同様にして次式を得ます。

\displaystyle{ \begin{array}{ll} (19.1)&(T_aT_bT_c)A(T_aT_bT_c)^{-1}= \underbrace{ \left[\begin{array}{cc|cc} A_{11}^o & A_{12}^o & A_{121}^m & A_{121}\\ 0_{n-p-r\times r} & A_{22}^o & A_{122}^m & A_{1221}\\\hline 0_{p-q\times r} & A_{21}^o & A_{22}^m & A_{1222}\\ A_{2120} & A_{2121} & A_{2122} & A_{22} \end{array}\right] }_{ \left[\begin{array}{c|c} A_{11} & *\\\hline A_{211} & *\\ *       & * \end{array}\right] }\\ &(A_{11}\in{\rm\bf R}^{n-p\times n-p},A_{211}\in{\rm\bf R}^{p-q\times n-p})\\ (19.2)&(T_aT_bT_c)D= \left[\begin{array}{c} 0_{r\times q} \\ 0_{n-p-r\times q} \\ 0_{p-q\times q} \\ D_2 \end{array}\right]\\ (19.3)&C(T_aT_bT_c)^{-1}= \left[\begin{array}{cc} 0_{p\times n-p} & T \\ \end{array}\right] \end{array} }

ここで、(A_{22}^o,A_{21}^o)は可観測対、A_{11}^oの固有値は(A,D,C)の不変零点です。同様に、この不変零点は安定で、{\rm rank}\,DB=pを仮定します。

A_{11}+LA_{211}を安定行列とするL\in{\rm\bf R}^{n-p\times p-q}を用いて、追加の座標変換行列を

\displaystyle{(20)\quad T_L=\left[\begin{array}{cc} I_{n-p} &  \left[\begin{array}{cc} L & 0_{n-p\times q} \end{array}\right] \\ 0_{p\times n-p} & T \end{array}\right] }

とすると

\displaystyle{ \begin{array}{ll} (21.1)&T_L(T_aT_bT_c)A(T_aT_bT_c)^{-1}= \underbrace{\left[\begin{array}{cc} I_{n-p} &  \left[\begin{array}{cc} L & 0_{n-p\times q} \end{array}\right] \\ 0_{p\times n-p} & T \end{array}\right]}_{T_L} \left[\begin{array}{c|c} A_{11} & *\\\hline A_{211} & *\\ *       & * \end{array}\right]T_L\\ &= \left[\begin{array}{c|c} A_{11}+LA_{211} & *\\\hline *       & * \end{array}\right] \underbrace{\left[\begin{array}{cc} I_{n-p} &  \left[\begin{array}{cc} L & 0_{n-p\times q} \end{array}\right] \\ 0_{p\times n-p} & T \end{array}\right]}_{T_L}\\ (21.2)&T_L(T_aT_bT_c)D= \underbrace{\left[\begin{array}{cc} I_{n-p} &  \left[\begin{array}{cc} L & 0_{n-p\times q} \end{array}\right] \\ 0_{p\times n-p} & T \end{array}\right]}_{T_L} \left[\begin{array}{c} 0_{n-p\times q} \\ 0_{p-q\times q} \\ D_2 \end{array}\right]\\ (21.3)&C(T_aT_bT_c)^{-1}= \left[\begin{array}{cc} 0_{p\times n-p} & I_p \\ \end{array}\right] \underbrace{\left[\begin{array}{cc} I_{n-p} &  \left[\begin{array}{cc} L & 0_{n-p\times q} \end{array}\right] \\ 0_{p\times n-p} & T \end{array}\right]}_{T_L} \end{array} }

すなわち

\displaystyle{ \begin{array}{ll} (22.1)&(T_LT_aT_bT_c)A(T_LT_aT_bT_c)^{-1}= \left[\begin{array}{c|c} A_{11}+LA_{211} & *\\\hline *       & * \end{array}\right]\\ (22.2)&(T_LT_aT_bT_c)D= \left[\begin{array}{c} 0_{n-p\times q} \\ T\left[\begin{array}{c} 0_{p-q\times q} \\ D_2 \end{array}\right] \end{array}\right]\\ (22.3)&C(T_LT_aT_bT_c)^{-1}= \left[\begin{array}{cc} 0_{p\times n-p} & I_p \\ \end{array}\right] \end{array} }

を得ます。したがって、T_o

\displaystyle{(23)\quad \boxed{T_o=T_LT_aT_bT_c} }

と選べばよいことが分かります。

ここまでの手順を、関数ca_form2としてプログラムすることにします。

さらに、関数smobs1としてプログラムすることにします。

入門

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のシミュレーション例

モデル規範・出力FB型SM制御

モデル規範・出力FB型SM制御…Homework

[1] 次の状態方程式で表される制御対象を考えます。

\displaystyle{(1)\quad \dot{x}(t)=Ax(t)+Bu(t)+B\xi(t,x,u)\quad(x(t)\in{\rm\bf R}^n) }

この状態が理想的なモデル

\displaystyle{(2)\quad \dot{x}_m(t)=A_mx_m(t)+B_mr(t)\quad(x_m(t)\in{\rm\bf R}^n) }

の状態を追従するように、すなわち

\displaystyle{(3)\quad e_x(t)=x(t)-x_m(t)\rightarrow 0 \quad(t\rightarrow\infty) }

となるように制御則を決定したいとします。

●(1)と(2)を辺々引き算して

\displaystyle{(4)\quad \begin{array}{l} \underbrace{\dot{x}(t)-\dot{w}(t)}_{\dot{e}_x(t)} %=Ax(t)+Bu(t)+B\xi(t,x,u)-(A_mx_m(t)+B_mr(t))\\ %=Ax(t)-A_mx(t)+A_mx(t)-A_mw(t)+Bu(t)+B\xi(t,x,u)-B_mr(t)\\ %=A_me_x(t)+(A-A_m)x(t)+Bu(t)+B\xi(t,x,u)-B_mr(t)\\ =Ax(t)+Bu(t)+B\xi(t,x,u)-(A_mx_m(t)+B_mr(t))\\ =Ax(t)-Ax_m(t)+Ax_m(t)-A_mx_m(t)+Bu(t)+B\xi(t,x,u)-B_mr(t)\\ =Ae_x(t)+(A-A_m)x_m(t)+Bu(t)+B\xi(t,x,u)-B_mr(t) \end{array} }

となります。いま条件

\displaystyle{(5)\quad \begin{array}{l} BL_x=A_m-A\\ BL_r=B_m \end{array} }

を仮定すると、(4)は次式となります。

\displaystyle{(6)\quad \dot{e}_x(t)=A_me_x(t)+B(u(t)-L_xx_m(t)-L_rr(t)+\xi(t,x,u)) }

次の制御則を考えます。

\displaystyle{(7)\quad u(t)=\underbrace{L_xx_m(t)+L_rr(t)}_{u_f(t)}+u_e(t) }

このとき、(6)は次式となります。

\displaystyle{(8)\quad \dot{e}_x(t)=A_me_x(t)+B(u_e(t)+\xi(t,x,u)) }

ここで、u_e

\displaystyle{(9)\quad e_y(t)=Ce_x(t) }

だけを用いて設計することが考えられます。

[2] ある航空機の線形状態方程式として、次を考えます。

\displaystyle{(1)\quad \begin{array}{l} \dot{x}(t)=Ax(t)+Bu(t)\\ x(t)= \left[\begin{array}{ll} \phi & bank\ angle\\ r & yaw\ rate\\ p & roll\ rate\\ \beta & sideslip\ angle\\ x_5 & washed-out\ filter\ state \end{array}\right],\quad u(t)= \left[\begin{array}{ll} \delta_r & rudder\ deflection\\ \delta_a & aileron\ deflection \end{array}\right]\\ A=\left[\begin{array}{rrrrr} 0 & 0 & 1.0000 & 0 & 0\\ 0 & -0.1540 & -0.0042 & 1.5400 & 0\\ 0 & 0.2490 & -1.0000 & -5.2000 & 0\\ 0.0386 & -0.9960 & -0.0003 & -0.1170 & 0\\ 0 & 0.5000 & 0 & 0 & -0.5000 \end{array}\right],\quad\\ B=\left[\begin{array}{rr} 0 & 0 \\ -0.7440 & -0.0320 \\ 0.3370 & -1.1200 \\ 0.0200 & 0\\ 0 & 20 \end{array}\right] \end{array} }

\displaystyle{(2)\quad \begin{array}{l} y(t)=C_Mx(t),\ z(t)=Cx(t)\\ y(t)= \left[\begin{array}{ll} r_{wo} & washed-out\ yaw\ rate\\ p & roll\ rate\\ \beta & sideslip\ angle\\ \phi & bank\ angle \end{array}\right],\quad z(t)= \left[\begin{array}{ll} \phi & bank\ angle\\ \beta & sideslip\ angle \end{array}\right]\\ C_M=\left[\begin{array}{rrrrr} 0 & 1 & 0 & 0 & -1\\ 0 & 0 & 1 & 0 & 0\\ 0 & 0 & 0 & 1 & 0\\ 1 & 0 & 0 & 0 & 0 \end{array}\right],\quad C=\left[\begin{array}{rrrrr} 1 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 1 & 0 \end{array}\right] \end{array} }

A行列の固有値は次のように求められます。

\displaystyle{(2)\quad \lambda(A):\left\{\begin{array}{cl}   -0.5000 + 0.0000i\\   -0.0882 + 1.2695i\\   -0.0882 - 1.2695i\\   -1.0855 + 0.0000i\\   -0.0092 + 0.0000i\\ \end{array}\right. }

●これに対するモデル規範・出力FB型SM制御系の設計手順を以下に示します。

MATLAB
%ex4_of_sm.m
%-----
 clear all, close all
%(A,B,C)
 A=[0 0 1 0 0;
    0 -0.1540 -0.0042  1.5400 0;
    0  0.2490 -1.0000 -5.2000 0;
    0.0386 -0.9960 -0.0003 -0.1170 0;
    0 0.5 0 0 -0.5];
 pl=eig(A)
 B=[0 0;
    -0.7440 -0.0320;
    0.3370 -1.1200;
    0.0200 0;
    0 0];
 CM=[0 1 0 0 -1;
     0 0 1 0  0;
     0 0 0 1  0;
     1 0 0 0  0];
 C=[1 0 0 0 0;
    0 0 0 1 0]; 
 [nn,mm]=size(B);
 [pp,nn]=size(CM); 
%-----
%  p1=[-0.05 -2 1.5 -1.5 1.5]
%  p1=[-0.05 -2+1.5*i -2-1.5*i -1.5+1.5*i -1.5-1.5*i]
 Lx=[-0.3131 3.3211 -0.1386 -0.7379 4.1180;
      3.9524 5.6616  2.2906 -65.6425 -90.7262];
 pCL=eig(A+B*Lx)
 Am=A+B*Lx;
 Lr=-inv(C*(Am\B));
 Bm=B*Lr;
 Cm=C;
%-----
 [Af,Bf,Cf,r,Ta,Aa,Ba,Ca,Tb,T,Ac,Bc,Cc,Tc]=ca_form1(A,B,CM)
%-----
%Assumes the triple (A,B,C) is in the canonical form of Lemma 5.3
%p1 is an nn-pp-r vector containing the desired poles of (A22o+Lo A21o)
%p2 is an nn-mm-r vector containing the desired poles of (A11tilde-A122 K)
%p3 is an mm vector representing the poles of the range space dynamics
 A11o=Af(1:r,1:r);
 A12o=Af(1:r,r+1:nn-pp);
 A22o=Af(r+1:nn-pp,r+1:nn-pp);
 A21o=Af(nn-pp+1:nn-mm,r+1:nn-pp);
 A121m=Af(1:r,nn-pp+1:nn-mm);
 A122m=Af(r+1:nn-pp,nn-pp+1:nn-mm);
 A22m=Af(nn-pp+1:nn-mm,nn-pp+1:nn-mm);
 A121=Af(1:r,nn-mm+1:nn);
 A122=Af(r+1:nn-mm,nn-mm+1:nn);
 A211=Af(nn-mm+1:nn,1:r);
 A212=Af(nn-mm+1:nn,r+1:nn-pp);
 A213=Af(nn-mm+1:nn,nn-pp+1:nn-mm);
 A22=Af(nn-mm+1:nn,nn-mm+1:nn);
 A11tilde=[A22o A122m;A21o A22m];
 A1221=A122(1:nn-pp-r,:);
 A1222=A122(nn-pp-r+1:nn-mm-r,:);
%-----
 p1=-5
 Lo=place(A22o',-A21o',p1)
 Lo=Lo';
%-----
 Tr=Ta*Tb*Tc
 Q=diag([5,1,1,5,5]);
 Qt=Tr*Q*Tr';
 Q11=Qt(1:nn-mm,1:nn-mm);
 Q12=Qt(1:nn-mm,nn-mm+1:nn);
 Q21=Qt(nn-mm+1:nn,1:nn-mm);
 Q22=Qt(nn-mm+1:nn,nn-mm+1:nn);
 Qhat=Q11-Q12*inv(Q22)*Q21;
 Rhat=Q22;
 [K,pl]=opt(A11tilde,A122,eye(3),Qhat,Rhat);
 K1=K(:,1:nn-pp-r)
 K2=K(:,nn-pp-r+1:nn-mm-r)
%-----
 H=A22o+Lo*A21o
 D1=A122m+Lo*A22m-H*Lo
 D2=A1221+Lo*A1222
 K=K2-K1*Lo
 Kc=K1
 Hhat=[A11o A12o;
       zeros(nn-pp-r,r) H]
 Dhat=[A121m-A12o*Lo A121;
       D1 D2]*T'
%----- 
 S2=eye(mm);
 S=S2*[zeros(mm,r) Kc K eye(mm)]
 Ahat=[A11o A12o A121m-A12o*Lo A121;
       zeros(nn-pp-r,r) H D1 D2;
       zeros(pp-mm,r) A21o A22m-A21o*Lo A1222;
       A211 A212 A213-A212*Lo A22]
 p3=[-5,-5]
 Phi=diag(p3)
 Lambda=S*Bf
 L=-inv(Lambda)*S*Ahat+inv(Lambda)*Phi*S
 rho=1
 Ln=rho*inv(Lambda)
 P2=lyap(Phi',eye(mm))
%-----
%eof


図1 モデル規範・出力FB型SM制御のシミュレーション例

補償器によるSM制御

補償器によるSM制御…Homework

[1] 制御対象

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

に対するSM制御則の線形制御部を、補償器

\displaystyle{(2)\quad \boxed{\dot{x}_c(t)=Hx_c(t)+Dy(t)}\quad(x_c(t)\in{\rm\bf R}^q) }

を用いて実現することを考えます。このときのスイッチング関数を

\displaystyle{(3)\quad \boxed{s(t)=F_cx_c(t)+Fy(t)}\quad(s(t)\in{\rm\bf R}^m) }

とします。

出力FB型SM制御(p>m)の議論により、次のSM標準形を得ているものとします。

\displaystyle{(18.1^*)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot x'''_1(t)\\ \dot x'''_2(t) \end{array}\right] }_{\dot{x}'''(t)} = \underbrace{ \left[\begin{array}{ccc|c} A_{11}^o & A_{12}^o & A_{121}^m & A_{121}\\ 0_{n-p-r\times r} & A_{22}^o & A_{122}^m & A_{1221}\\ 0_{p-m\times r} & A_{21}^o & A_{22}^m & A_{1222}\\\hline A_{2120} & A_{2121} & A_{2122} & A_{22} \end{array}\right] }_{(T_aT_bT_c)A(T_aT_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] }_{x'''(t)}\\ + \underbrace{ \left[\begin{array}{c} 0_{r\times m} \\ 0_{n-p-r\times m} \\ 0_{p-m\times m} \\\hline B_2 \end{array}\right] }_ {(T_aT_bT_c)B} \underbrace{(u(t)+\xi(t,x,u))}_{u'(t)}\\ (A_{11}^o\in{\rm\bf R}^{r\times r},A_{22}^o\in{\rm\bf R}^{n-p-r\times n-p-r},A_{22}^m\in{\rm\bf R}^{p-m\times p-m},A_{22}\in{\rm\bf R}^{m\times m}) \end{array} }

\displaystyle{(18.2^*)\quad \begin{array}{l} y(t) = \underbrace{ \left[\begin{array}{cc} 0_{p\times n-p} & T \\ \end{array}\right] }_{C(T_aT_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] }_{x'''(t)} \end{array} }

このとき、C_1=\left[\begin{array}{cc} 0_{p-m\times n-p} & I_{p-m}  \end{array}\right]とおくと

\displaystyle{(2')\quad \begin{array}{l} \dot{x}_c(t)=Hx_c(t)+Dy(t)\\ =Hx_c(t)+ \left[\begin{array}{cc} 0_{p\times n-p} & DT \\ \end{array}\right] %\underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] %}_{x'''(t)} \\ =Hx_c(t)+ \left[\begin{array}{cc} D_1C_1 & D_2 \\ \end{array}\right] %\underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] %}_{x'''(t)} \\ =Hx_c(t)+D_1C_1x'''_1(t)+D_2x'''_2(t)\\ (DT=\left[\begin{array}{cc} D_1 & D_2 \end{array}\right], D_1\in{\rm\bf R}^{m\times p-m}, D_2\in{\rm\bf R}^{m\times m}) \end{array} }

および

\displaystyle{(3')\quad \begin{array}{l} s(t)=F_cx_c(t)+Fy(t)\\ =Hx_c(t)+ \left[\begin{array}{cc} 0_{p\times n-p} & FT \\ \end{array}\right] %\underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] %}_{x'''(t)} \\ =Hx_c(t)+ \left[\begin{array}{cc} F_1C_1 & F_2 \\ \end{array}\right] %\underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] %}_{x'''(t)} \\ =Hx_c(t)+F_1C_1x'''_1(t)+F_2x'''_2(t)\\ (FT=\left[\begin{array}{cc} F_1 & F_2 \end{array}\right], F_1\in{\rm\bf R}^{m\times p-m}, F_2\in{\rm\bf R}^{m\times m}) \end{array} }

●(18.1^*)と(2′)を結合し、\tilde{C}_1=\left[\begin{array}{cc} 0_{p-m\times n-p-r} & I_{p-m}  \end{array}\right]を用いて、次式を得ます。

\displaystyle{(4)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot x'''_1(t)\\\hline \dot x'''_2(t)\\\hline\hline \dot x_c(t) \end{array}\right] }_{\dot{x}'''(t)} = \left[\begin{array}{c|c||c} \left.\begin{array}{ccc} A_{11}^o & A_{12}^o & A_{121}^m \\ 0_{n-p-r\times r} & A_{22}^o & A_{122}^m \\ 0_{p-m\times r} & A_{21}^o & A_{22}^m \\ \end{array}\right.& \left.\begin{array}{cc} A_{121}\\ A_{1221}\\ A_{1222} \end{array}\right.& \left.\begin{array}{cc} 0_{r\times q} \\ 0_{n-p-r\times q} \\ 0_{p-m\times q} \end{array}\right. \\\hline \left.\begin{array}{ccc} A_{211} & A_{2121} &A_{2122} \end{array}\right.& \left.\begin{array}{cc} A_{22} \end{array}\right.& 0_{m\times q} \\\hline\hline %D_1C_1 \left.\begin{array}{cc} 0_{q\times r} & D_1\tilde{C}_1 \end{array}\right. & D_2 & H \end{array}\right]\\ \times \underbrace{ \left[\begin{array}{c} x'''_1(t)\\\hline x'''_2(t)\\\hline\hline x_c(t) \end{array}\right] }_{x'''(t)} + \left[\begin{array}{c} 0_{r\times m} \\ 0_{n-p-r\times m} \\ 0_{p-m\times m} \\\hline B_2\\\hline\hline 0_{q\times m} \end{array}\right] u'(t) \end{array} }

x'''_2x_cを入れ替えて

\displaystyle{(5)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot x'''_1(t)\\\hline \dot x_c(t)\\\hline\hline \dot x'''_2(t) \end{array}\right] }_{\dot{x}'''(t)} = \left[\begin{array}{c|c||c} \left.\begin{array}{ccc} A_{11}^o & A_{12}^o & A_{121}^m \\ 0_{n-p-r\times r} & A_{22}^o & A_{122}^m \\ 0_{p-m\times r} & A_{21}^o & A_{22}^m \\ \end{array}\right.& \left.\begin{array}{cc} 0_{r\times q} \\ 0_{n-p-r\times q} \\ 0_{p-m\times q} \end{array}\right. & \left.\begin{array}{cc} A_{121}\\ A_{1221}\\ A_{1222} \end{array}\right. \\\hline %D_1C_1 \left.\begin{array}{ccc} 0_{q\times r} & D_1\tilde{C}_1 \end{array}\right.  & \left.\begin{array}{cc} H \end{array}\right. & D_2 \\\hline\hline \left.\begin{array}{ccc} A_{211} & A_{2121} &A_{2122} \end{array}\right. & 0_{m\times q} & A_{22} \end{array}\right]\\ \times \underbrace{ \left[\begin{array}{c} x'''_1(t)\\\hline x_c(t)\\\hline\hline x'''_2(t) \end{array}\right] }_{x'''(t)} + \left[\begin{array}{c} 0_{r\times m} \\ 0_{n-p-r\times m} \\ 0_{p-m\times m} \\\hline 0_{q\times m}\\\hline\hline B_2\\ \end{array}\right] u'(t) \end{array} }

ここで、x'''_1(t)x'''_{r}(t)\in{\rm\bf R}^{r}x'''_{11}(t)\in{\rm\bf R}^{n-p-r}x'''_{12}(t)\in{\rm\bf R}^{p-m}に分割し、座標変換

\displaystyle{(6)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} x'''_r(t)\\ x'''_{11}(t)\\ x'''_{12}(t)\\\hline x_c(t)\\\hline\hline x''''_2(t)\\ \end{array}\right] }_{x''''(t)} = \underbrace{ \left[\begin{array}{ccc|c||c} I_{r} & 0 & 0 & 0& 0 \\ 0 & I_{n-p-r} & 0 & 0& 0 \\ 0 & 0 & I_{p-m} & 0 & 0\\\hline 0 & 0 & 0 & I_q &0 \\\hline\hline 0 & 0 & K & K_c & I_m  \end{array}\right] }_{T_s} \underbrace{ \left[\begin{array}{c} x'''_r(t)\\ x'''_{11}(t)\\ x'''_{12}(t)\\\hline x_c(t)\\\hline\hline x'''_2(t)\\ \end{array}\right] }_{x'''(t)}\\ (K=F_2^{-1}F_1, K_c=F_2^{-1}F_c) \end{array} }

を行って、次式を得ます。

\displaystyle{(7)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot x'''_r(t)\\ \dot x'''_{11}(t)\\ \dot x'''_{12}(t)\\\hline \dot x_c(t)\\\hline \dot x''''_2(t) \end{array}\right] }_{\dot{x}''''(t)} = \left[\begin{array}{c|c} \left[\begin{array}{c|c} \left.\begin{array}{ccc} A_{11}^o & A_{12}^o & A_{121}^m \\ 0_{n-p-r\times r} & A_{22}^o & A_{122}^m \\ 0_{p-m\times r} & A_{21}^o & A_{22}^m \\ \end{array}\right. & \left.\begin{array}{cc} 0_{r\times q} \\ 0_{n-p-r\times q} \\ 0_{p-m\times q} \end{array}\right. \\\hline %D_1C_1 \left.\begin{array}{cc} 0_{q\times r} & D_1\tilde{C}_1 \end{array}\right. & H \end{array}\right]\\ - \left[\begin{array}{cc} A_{121}\\ A_{1221}\\ A_{1222}\\\hline D_2 \end{array}\right] \left[\begin{array}{ccccc} 0_{m\times r} & K\tilde{C}_1 & K_c \end{array}\right] & \left.\begin{array}{cc} A_{121}\\ A_{1221}\\ A_{1222}\\\hline D_2 \end{array}\right. \\\hline \left.\begin{array}{ccc|c} A_{211} & A_{2121} &A_{2122} & 0_{m\times q} \end{array}\right. & A_{22} \end{array}\right]\\ \times \underbrace{ \left[\begin{array}{c} x'''_r(t)\\ x'''_{11}(t)\\ x'''_{12}(t)\\\hline x_c(t)\\\hline x''''_2(t)\\ \end{array}\right] }_{x''''(t)} + \left[\begin{array}{c} 0_{r\times m} \\ 0_{n-p-r\times m} \\ 0_{p-m\times m} \\\hline 0_{q\times m}\\\hline B_2 \end{array}\right] u'(t)\\ = \underbrace{ \left[\begin{array}{c|c} \left.\begin{array}{c|c} \left.\begin{array}{ccc} A_{11}^o & A_{12}^o & A_{121}^m-A_{121}K \\ 0_{n-p-r\times r} & A_{22}^o & A_{122}^m-A_{1221}K \\ 0_{p-m\times r} & A_{21}^o & A_{22}^m-A_{1222}K \end{array}\right. & \left.\begin{array}{cc} -A_{121}K_c\\ -A_{1221}K_c\\ -A_{1222}K_c\\ \end{array}\right. \\\hline %(D_1-D_2K)C_1 \left.\begin{array}{cc} 0_{q\times r} & D(D_1-D_2K)\tilde{C}_1 \end{array}\right. & H-D_2K_c \end{array}\right. & \left.\begin{array}{cc} A_{121}\\ A_{1221}\\ A_{1222}\\\hline D_2 \end{array}\right.\\\hline \left.\begin{array}{ccc|c} A_{211} & A_{2121} &A_{2122} & 0_{m\times q} \end{array}\right. & A_{22} \end{array}\right] }_{ \left[\begin{array}{cc} \tilde{\cal A}_{11} & \tilde{\cal A}_{12} \\ \tilde{\cal A}_{21} & \tilde{\cal A}_{22} \end{array}\right]} \\ \times \underbrace{ \left[\begin{array}{c} x'''_r(t)\\ x'''_{11}(t)\\ x'''_{12}(t)\\\hline x_c(t)\\\hline x''''_2(t)\\ \end{array}\right] }_{x''''(t)} + \left[\begin{array}{c} 0_{r\times m} \\ 0_{n-p-r\times m} \\ 0_{p-m\times m} \\\hline 0_{q\times m}\\\hline B_2 \end{array}\right] u'(t) \end{array} }

以前の議論と同様に、A_{11}^oが安定行列であることを前提として、\tilde{\cal A}_{11}を安定行列とするH,D_1,D_2,K,K_cを求めます。

[2] 一つのアプローチとして

\displaystyle{(8)\quad \begin{array}{l} \left[\begin{array}{c} \dot x'''_{11}(t)\\ \dot x'''_{12}(t) \end{array}\right]= \underbrace{ \left[\begin{array}{cc} A_{22}^o & A_{122}^m \\ A_{21}^o & A_{22}^m \\ \end{array}\right] }_{\tilde{A}_{11}} \left[\begin{array}{c} x'''_{11}(t)\\ x'''_{12}(t) \end{array}\right] + \underbrace{ \left[\begin{array}{cc} A_{1221} \\ A_{1222} \\ \end{array}\right] }_{A_{122}} \underbrace{x'''_{2}(t)}_{\tilde u(t)} \\ \underbrace{x'''_{12}(t)}_{\tilde y(t)} = \underbrace{ \left[\begin{array}{cc} 0_{p-m\times n-p-r} & I_{p-m} \end{array}\right] }_{\tilde{C}_1}} \left[\begin{array}{c} x'''_{11}(t)\\ x'''_{12}(t) \end{array}\right] \end{array} }

に対する安定化状態フィードバック則を

\displaystyle{(9)\quad \tilde u(t)= \left[\begin{array}{cc} K_1 & K_2 \end{array}\right] \left[\begin{array}{c} x'''_{11}(t)\\ x'''_{12}(t) \end{array}\right] }

とします。ここで、x'''_{11}(t)のすべての要素は観測できないので、関数オブザーバ

\displaystyle{(10)\quad \begin{array}{l} \dot{x}_{ob}(t)=\hat{A}x_{ob}(t)+\hat{B}\underbrace{x'''_{12}(t)}_{\tilde{y}(t)}+\hat{J}\underbrace{x'''_{2}(t)}_{\tilde{u}(t)}\\ z(t)=\hat{C}x_{ob}(t)+\hat{D}\underbrace{x'''_{12}(t)}_{\tilde{y}(t)} \end{array} }

を考え、この出力z(t)に安定化状態フィードバック則\tilde{u}(t)を推定させます。すなわち

\displaystyle{(11)\quad z(t)\rightarrow \tilde{u}(t)= K_1x'''_{11}(t)+K_2x'''_{12}(t) \quad(t\rightarrow\infty) }

そのためには、関数オブザーバの状態x_{ob}(t)も適当な状態の線形関数を推定する必要があり、これを次のように表します。

\displaystyle{(12)\quad x_{ob}(t)\rightarrow  \underbrace{ \left[\begin{array}{cc} I_{n-p-r} & -L^o \end{array}\right] }_{U} \left[\begin{array}{c} x'''_{11}(t)\\ x'''_{12}(t) \end{array}\right]= x'''_{11}(t)-L^ox'''_{12}(t) \quad(t\rightarrow\infty) }

いまK_1,K_2,L^oを適当に与えたとき、関数オブザーバのパラメータは

\displaystyle{(13)\quad \left[\begin{array}{c} U\tilde{A}_{11}\\ \left[\begin{array}{cc} {K}_1 & {K}_2 \end{array}\right] \end{array}\right] = \left[\begin{array}{cc} \hat{A} & \hat{B}\\ \hat{C} & \hat{D} \end{array}\right] \left[\begin{array}{c} U\\ \tilde{C}_1 \end{array}\right] }

を解いて

\displaystyle{(14)\quad \begin{array}{l} \left[\begin{array}{cc} \hat{A} & \hat{B}\\ \hat{C} & \hat{D} \end{array}\right] = \left[\begin{array}{c} U\tilde{A}_{11}\\ \left[\begin{array}{cc} {K}_1 & {K}_2 \end{array}\right] \end{array}\right] \left[\begin{array}{c} U\\ \tilde{C}_1 \end{array}\right]^{-1}\\ = \left[\begin{array}{c} \left[\begin{array}{cc} I_{n-p-r} & L^o \end{array}\right] \left[\begin{array}{cc} A_{22}^o & A_{122}^m \\ A_{21}^o & A_{22}^m \\ \end{array}\right]\\ \left[\begin{array}{cc} {K}_1 & {K}_2 \end{array}\right] \end{array}\right] \left[\begin{array}{cc} I_{n-p-r} & L^o\\ 0_{p-m\times n-p-r} & I_{p-m} \end{array}\right]^{-1}\\ = \left[\begin{array}{cc} A_{22}^o+L^oA_{21}^o & A_{122}^m+L^oA_{22}^m \\ {K}_1 & {K}_2 \end{array}\right] \left[\begin{array}{cc} I_{n-p-r} & -L^o\\ 0_{p-m\times n-p-r} & I_{p-m} \end{array}\right]\\ = \left[\begin{array}{cc} A_{22}^o+L^oA_{21}^o & A_{122}^m+L^oA_{22}^m-(A_{22}^o+L^oA_{21}^o)L^o \\ K_1 & K_2-K_1L^o \end{array}\right] \end{array} }

ここで、L_o\hat{A}が安定行列となるように選んでおきます。また

\displaystyle{(15)\quad \hat{J}=UA_{122}= \left[\begin{array}{cc} I_{n-p-r} & L^o \end{array}\right] \left[\begin{array}{cc} A_{1221} \\ A_{1222} \\ \end{array}\right] =A_{1221}+A_{1222}L^o }

以上を踏まえて、K_c=K_1,K=K_2-K_1L^oと選び、線形関数オブザーバを

\displaystyle{(16)\quad \begin{array}{l} \underbrace{\dot{x}_{ob}(t)}_{\dot{x}_c(t)} =\underbrace{\hat{A}}_{H}\underbrace{x_{ob}(t)}_{x_c(t)} +\underbrace{\hat{B}}_{D_1}\underbrace{x'''_{12}(t)}_{\tilde{y}(t)} +\underbrace{\hat{J}}_{D_2}\underbrace{x'''_{2}(t)}_{\tilde{u}(t)}\\ \underbrace{z(t)}_{\tilde{u}(t)} =\underbrace{\hat{C}}_{K_c}\underbrace{x_{ob}(t)}_{x_c(t)} +\underbrace{\hat{D}}_{K}\underbrace{x'''_{12}(t)}_{\tilde{y}(t)} \end{array} }

とみなせば、第2式を第1式に代入して

\displaystyle{(16')\quad \dot{x}_c(t)=(H-D_2K_c)x_c(t)+(D_1-D_2K)x'''_{12}(t) }

ただし

\displaystyle{(16'')\quad \boxed{\begin{array}{l} H=A_{22}^o+L^oA_{21}^o\\ D_1=A_{122}^m+L^oA_{22}^m-(A_{22}^o+L^oA_{21}^o)L^o\\ D_2=A_{1221}+A_{1222}L^o\\ K_c=K_1 \\ K=K_2-K_1L^o \end{array}} }

となって、補償器を得ていることになります。以下では、この補償器を用いたSM制御則の構成法について検討します。

[3] 制御対象の状態方程式と観測方程式は、それぞれ(18.1^*)と(18.2^*)から次式で与えられます。

\displaystyle{(17.1)\quad \begin{array}{l} \left[\begin{array}{c} \dot x'''_r(t)\\ \dot x'''_{11}(t)\\ \dot x'''_{12}(t)\\ \dot x'''_2(t) \end{array}\right]= \left[\begin{array}{ccccc} A_{11}^o & A_{12}^o & A_{121}^m & A_{121} \\ 0_{n-p-r\times r} & A_{22}^o & A_{122}^m & A_{1221} \\ 0_{p-m\times r} & A_{21}^o & A_{22}^m & A_{1222} \\ A_{211} & A_{212} & A_{213} & A_{22} \end{array}\right] \left[\begin{array}{c} x'''_r(t)\\ x'''_{11}(t)\\ x'''_{12}(t)\\ x'''_2(t) \end{array}\right]\\ + \left[\begin{array}{c} 0_{r\times m}\\ 0_{n-p-r\times m}\\ 0_{p-m\times m}\\ B_2\\ \end{array}\right] u(t)\\ (x'''_r(t)\in{\rm\bf R}^{r},x'''_{11}(t)\in{\rm\bf R}^{n-p-r},x'''_{12}(t)\in{\rm\bf R}^{p-m},x'''_{2}(t)\in{\rm\bf R}^{m}) \end{array} }

\displaystyle{(17.2)\quad \begin{array}{l} y(t) = \left[\begin{array}{cc} 0_{p\times n-p} & T \\ \end{array}\right] \left[\begin{array}{c} x'''_r(t)\\ x'''_{11}(t)\\ x'''_{12}(t)\\ x'''_2(t) \end{array}\right]=T \left[\begin{array}{c} x'''_{12}(t)\\ x'''_2(t) \end{array}\right] \quad(T\in{\rm\bf R}^{p\times p}) \end{array} }

補償器は(16′)から次式で与えられます。

\displaystyle{(18)\quad \begin{array}{l} \dot{x}_c(t) =Hx_c(t) +D_1x'''_{12}(t) +D_2}x'''_{2}(t)\\ (x'''_{2}(t)=K_cx_c(t)+Kx'''_{12}(t)) \end{array} }

このとき補償器を合わせた制御対象のダイナミックスは次式のように表すことができます。

\displaystyle{(19.1)\quad \underbrace{ \left[\begin{array}{c} \dot z_r(t)\\ \dot x_c(t)\\ \dot x'''_{12}(t)\\ \dot x'''_2(t) \end{array}\right] }_{\hat x(t)} = \underbrace{ \left[\begin{array}{ccccc} A_{11}^o & A_{12}^o & A_{121}^m-A_{12}^oL^o & A_{121} \\ 0_{q\times r} & H & D_1 & D_2 \\ 0_{p-m\times r} & A_{21}^o & A_{22}^m-A_{21}^oL^o & A_{1222} \\ A_{211} & A_{212} & A_{213}-A_{212}L^o & A_{22} \end{array}\right] }_{\hat A} \underbrace{ \left[\begin{array}{c} z_r(t)\\ x_c(t)\\ x'''_{12}(t)\\ x'''_2(t) \end{array}\right] }_{\hat x(t)} }
\displaystyle{ + \underbrace{ \left[\begin{array}{ccccc} 0_{r\times r} & 0_{r\times m} \\ 0_{q\times r} & 0_{q\times m} \\ 0_{p-m\times r} & A_{21}^o \\ A_{211} & A_{212} \end{array}\right] }_{\hat A_e} \underbrace{ \left[\begin{array}{c} e_r(t)\\ e_c(t) \end{array}\right] }_{\hat{e}(t)} + \underbrace{ \left[\begin{array}{c} 0_{r\times m}\\ 0_{q\times m}\\ 0_{p-m\times m}\\ B_2\\ \end{array}\right] }_{\hat B} u(t) }

\displaystyle{(19.2)\quad \underbrace{ \left[\begin{array}{c} \dot e_r(t)\\ \dot e_c(t) \end{array}\right] }_{\dot{\hat{e}}(t)} = \underbrace{ \left[\begin{array}{cc} A_{11}^o & A_{12}^o \\ 0 & H \end{array}\right] }_{\hat{H}} \underbrace{ \left[\begin{array}{c} e_r(t)\\ e_c(t) \end{array}\right] }_{\hat{e}(t)} }

ここで、A_{11}^oが安定行列であることは前提条件であり、またHは安定行列となるようにオブザーバゲインL_oを決めます。

●(12)における推定誤差を

\displaystyle{(20)\quad e_c(t)=x_c(t) -(x'''_{11}(t)+L_ox'''_{12}(t)) }

で定義します。補償器の状態方程式は

\displaystyle{(21)\quad \begin{array}{l} \dot x_c(t)=Hx_c(t)+D_1x'''_{12}(t)+D_2x'''_{2}(t)}\\ =Hx_c(t)+(A_{122}^m+L^oA_{22}^m-(A_{22}^o+L^oA_{21}^o)L^o)x'''_{12}(t)\\ +(A_{1221}+A_{1222}L^o)x'''_{2}(t) \end{array}  }

となることから、次式すなわち(19.2)の下段式を得ます。

\displaystyle{(22)\quad \begin{array}{l} \dot e_c(t)=Hx_c(t)\\ +(A_{122}^m+L^oA_{22}^m-(A_{22}^o+L^oA_{21}^o)L^o)x'''_{12}(t) +(A_{1221}+A_{1222}L^o)x'''_{2}(t)\\ -(A_{22}^ox'''_{11}(t) + A_{122}^mx'''_{12}(t) + A_{1221}x'''_2(t))\\ -L_o(A_{21}^ox'''_{11}(t) + A_{22}^mx'''_{12}(t) + A_{1222}x'''_2(t))\\ =H(x_c(t) -x'''_{11}(t)-L_ox'''_{12}(t))\\ =He_c(t) \end{array}  }

●(17.1)の第1式から

\displaystyle{(23)\quad \begin{array}{l} \dot x'''_r(t)=A_{11}^ox'''_r (t)+ A_{12}^ox'''_{11}(t) + A_{121}^mx'''_{12}(t) + A_{121}x'''_2(t)\\ =A_{11}^ox'''_r(t) + A_{11}^o(-e_c(t) + x_c(t)-L_ox'''_{12}(t)) + A_{121}^mx'''_{12}(t) + A_{121}x'''_2(t)\\ = A_{11}^ox'''_r(t) + A_{11}^ox_c(t) + (A_{121}^m-A_{11}^oL_o)x'''_{12}(t) + A_{121}x'''_{2}(t) -A_{11}^oe_c(t) \end{array} }

ここで、e_c\rightarrow 0の場合の目標となるダイナミックスを次式で表します。

\displaystyle{(24)\quad \dot z_r(t)=A_{11}^oz_r(t) + A_{12}^ox_c(t) + (A_{121}^m-A_{12}^oL_o)x'''_{12}(t) + A_{121} x'''_2(t) }

両者の状態の誤差を

\displaystyle{(25)\quad e_r(t)=z_r(t)-x'''_r(t)\\ }

とすると、次式すなわち(19.2)の上段式を得ます。

\displaystyle{(26)\quad \begin{array}{l} \dot e_r(t)=A_{11}^oz_r(t) + A_{12}^ox_c(t) + (A_{121}^m-A_{12}^oL_o)x'''_{12}(t) + A_{121} x'''_2(t)\\ -(A_{11}^ox'''_r(t) + A_{12}^ox'''_{11}(t) + A_{121}^mx'''_{12}(t) + A_{121}x'''_2(t))\\ =A_{11}^oe_r(t) + A_{12}^o(x_c(t) -x'''_{11}(t)-L_ox'''_{12}(t))\\ =A_{11}^oe_r(t) + A_{12}^oe_c(t) \end{array} }

●(19.1)の第3式と第4式は、それぞれ(17.1)の第3式と第4式から次式のように得られます。

\displaystyle{(27)\quad \begin{array}{l} \dot x'''_{12}(t)= A_{21}^ox'''_{11}(t) + A_{22}^mx'''_{12}(t)+ A_{1222}x'''_{2}(t)\\ = A_{21}^o(-e_c(t) + x_c(t)-L_ox'''_{12}(t)) + A_{22}^mx'''_{12}(t)+ A_{1222}x'''_{2}(t)\\ = A_{21}^ox_c(t) + (A_{22}^m-A_{21}^oL_o)x'''_{12}(t)+ A_{1222}x'''_{2}(t) -A_{21}^oe_c(t) \end{array}  }

\displaystyle{(28)\quad \begin{array}{l} \dot x'''_2(t)= A_{211}x'''_r(t) + A_{212}x'''_{11}(t) + A_{213}x'''_{12}(t) + A_{22}x'''_{2}(t) \\ = A_{211}(-e_r(t)+z_r(t)) + A_{212}(-e_c(t) + x_c(t)-L_ox'''_{12}(t))\\  + A_{213}x'''_{12}(t) + A_{22}x'''_{2}(t)+B_2u(t)\\ = A_{211}z_r(t) + A_{212}x_c(t) + (A_{213}-A_{212}L_o)x'''_{12}(t)\\ + A_{22}x'''_{2}(t) -A_{211}e_r(t)-A_{212}e_c(t)+B_2u(t) \end{array}  }

ちなみに(19.1)の第1式と第2式は、それぞれ(24)と(18)です。

●このときスイッチング関数(3′)は

\displaystyle{(3'')\quad \begin{array}{l} s(t)=Hx_c(t)+F_1C_1x'''_1(t)+F_2x'''_2(t)\\ =\boxed{\underbrace{F_2\left[\begin{array}{cccc} 0_{m\times r} & K_c & K & I_m \end{array}\right]}_{S}} \underbrace{ \left[\begin{array}{c} z_r(t)\\ x_c(t)\\ x'''_{12}(t)\\ x'''_2(t) \end{array}\right] }_{\hat x(t)} \end{array} }

と表すことができます。

[4] 以上の準備のもとで、補償器によるSM制御則を次のように構築します。これは次のように線形制御部とスイッチング部からなります。

\displaystyle{(29)\quad u(t)=u_\ell(t)+u_n(t) }

線形制御部を、SM標準形(19.1)に基づいて次式のように決めます。

\displaystyle{(30)\quad \boxed{u_\ell(t)=-\underbrace{(S{\hat B})^{-1}(S{\hat A}-\Phi S)}_{L}{\hat x}(t)} }

ここで、{\hat A}{\hat B}は(19.1)で定義されます。また{\hat x}(t)は、(17.2)より

\displaystyle{(31)\quad \left[\begin{array}{c} x'''_{12}(t)\\ x'''_2(t) \end{array}\right] =T'y(t) }

と表せることに注意して、次の補償器の出力として得ます。

\displaystyle{(32)\quad \boxed{\begin{array}{l} \left[\begin{array}{c} \dot z_r(t)\\ \dot x_c(t) \end{array}\right] = \underbrace{ \left[\begin{array}{ccccc} A_{11}^o & A_{12}^o  \\ 0_{q\times r} & H  \end{array}\right] }_{\hat H} \left[\begin{array}{c} z_r(t)\\ x_c(t) \end{array}\right] + \underbrace{ \left[\begin{array}{ccccc} A_{121}^m-A_{12}^oL^o & A_{121} \\ D_1 & D_2  \end{array}\right]T' }_{\hat D} y(t)\\ \underbrace{ \left[\begin{array}{c} z_r(t)\\ x_c(t)\\ x'''_{12}(t)\\ x'''_2(t) \end{array}\right] }_{\hat x(t)}= \underbrace{ \left[\begin{array}{ccccc} I_r & 0_{r\times q}\\ 0_{q\times r} & I_q\\ 0_{p-m\times r} & 0_{p-m\times q} \\ 0_{m\times r} & 0_{m\times q} \\ \end{array}\right]}_{\widehat{\cal C}} \left[\begin{array}{c} z_r(t)\\ x_c(t) \end{array}\right] + \underbrace{\left[\begin{array}{ccccc} 0_{r\times p-m} & 0_{r\times m} \\ 0_{q\times p-m} & 0_{q\times m} \\ I_{p-m} & 0_{p-m\times m}\\ 0_{m\times p-m} & I_m \end{array}\right]T' }_{\widehat{\cal D}} y(t) \end{array}} }

スイッチング部を、次式のように決めます。

\displaystyle{(33)\quad \boxed{u_n(t)=-\rho(t,y)\underbrace{(S{\hat B})^{-1}}_{L_n}\frac{Ps(t)}{||Ps(t)||}} }

ここで、s(t)は(3”)で与えられます。また、P>0は適当な安定行列\Phiを与えて

\displaystyle{(34)\quad P\Phi+\Phi^TP=-I_m }

の解として求め、また\rho(t,y)

\displaystyle{(35)\quad \rho(t,y)=\frac{k_1||S{\hat B}||||u_\ell(t)||+||S{\hat B}||\alpha(t,y)+\gamma_2}{1-k_1\kappa(S{\hat B})} }

●以上に基づく設計手順を、数値例で示します。

MATLAB
%ex2_of_sm.m
%-----
 clear all, close all
%(A,B,C)
 A=[-2 1 0 0;
     0 0 4 1;
     0 1 0 0;
     1 -6 -9 -2];
 B=[0;0;0;1];
 C=[0 0 1 0;
    0 0 0 1];
 [nn,mm]=size(B);
 [pp,nn]=size(C); 
%-----
 [Af,Bf,Cf,r,Ta,Aa,Ba,Ca,Tb,T,Ac,Bc,Cc,Tc]=ca_form1(A,B,C)
%-----
%Assumes the triple (A,B,C) is in the canonical form of Lemma 5.3
%p1 is an nn-pp-r vector containing the desired poles of (A22o+Lo A21o)
%p2 is an nn-mm-r vector containing the desired poles of (A11tilde-A122 K)
%p3 is an mm vector representing the poles of the range space dynamics
 A11o=Af(1:r,1:r);
 A12o=Af(1:r,r+1:nn-pp);
 A22o=Af(r+1:nn-pp,r+1:nn-pp);
 A21o=Af(nn-pp+1:nn-mm,r+1:nn-pp);
 A121m=Af(1:r,nn-pp+1:nn-mm);
 A122m=Af(r+1:nn-pp,nn-pp+1:nn-mm);
 A22m=Af(nn-pp+1:nn-mm,nn-pp+1:nn-mm);
 A121=Af(1:r,nn-mm+1:nn);
 A122=Af(r+1:nn-mm,nn-mm+1:nn);
 A211=Af(nn-mm+1:nn,1:r);
 A212=Af(nn-mm+1:nn,r+1:nn-pp);
 A213=Af(nn-mm+1:nn,nn-pp+1:nn-mm);
 A22=Af(nn-mm+1:nn,nn-mm+1:nn);
 A11tilde=[A22o A122m;A21o A22m];
 A1221=A122(1:nn-pp-r,:);
 A1222=A122(nn-pp-r+1:nn-mm-r,:);
%-----
 p1=-2.5
 Lo=place(A22o',A21o',p1)
 Lo=Lo';
%-----
 p2=[-1,-1.5]
 calK=place(A11tilde,A122,p2)
 K1=calK(:,1:nn-pp-r)
 K2=calK(:,nn-pp-r+1:nn-mm-r)
%-----
 H=A22o+Lo*A21o
 D1=A122m+Lo*A22m-H*Lo
 D2=A1221+Lo*A1222
 K=K2-K1*Lo
 Kc=K1
 Hhat=[A11o A12o;
       zeros(nn-pp-r,r) H]
 Dhat=[A121m-A12o*Lo A121;
       D1 D2]*T'
%----- 
 S2=eye(mm);
 S=S2*[zeros(mm,r) Kc K eye(mm)]
 Ahat=[A11o A12o A121m-A12o*Lo A121;
       zeros(nn-pp-r,r) H D1 D2;
       zeros(pp-mm,r) A21o A22m-A21o*Lo A1222;
       A211 A212 A213-A212*Lo A22]
 p3=-5
 Phi=diag(p3)
 Lambda=S*Bf
 L=-inv(Lambda)*S*Ahat+inv(Lambda)*Phi*S
 P=lyap(Phi',eye(mm))
%-----
%eof


図1 補償器によるSM制御のシミュレーション例

出力FB型SM制御(p>m)

出力数>入力数の場合…Homework

[0] 制御対象の状態空間表現として次式を考えます。

\displaystyle{ \begin{array}{ll} (1.1) & \dot{x}(t)=Ax(t)+Bu(t)+f(t,x,u)\\ (1.2) & y(t)=Cx(t)\\ & (x(t)\in{\rm\bf R}^n, u(t)\in{\rm\bf R}^m, y(t)\in{\rm\bf R}^p, 1\le m\le p < n) \end{array} }

ただし、f(t,x,u)\in{\rm\bf R}^nはモデル誤差、非線形要素、外乱などの影響を表し、次のマッチング条件を満たすとします。

\displaystyle{ \begin{array}{ll} (2.1) & f(t,x,u)=B\xi(t,x,u)\\ (2.2) & ||\xi(t,x,u)||<k_1||u||+\alpha(t,y)\quad(k_1<1)\\ & (f(t,x,y)\in{\rm\bf R}^n, \xi(t,x,u)\in{\rm\bf R}^m) \end{array} }

これに対し、次のスイッチング関数を定義します。

\displaystyle{(3)\quad \begin{array}{l} s(t)=Fy(t)=\underbrace{FC}_{S}x(t)\\ (s(t)\in{\rm\bf R}^m, F\in{\rm\bf R}^{m\times p}) \end{array} }

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

\displaystyle{(4)\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_cT_cを正則とする適当な行列)、次式を得ます。

\displaystyle{(5.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} \underbrace{(u(t)+\xi(t,x,u))}_{u'(t)}\\ (B_{c2}\in{\rm\bf R}^{p\times m}) \end{array} }

\displaystyle{(5.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)} }

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

B_{c2}\in{\rm\bf R}^{p\times m}

\displaystyle{(6)\quad T^TB_{c2}=\left[\begin{array}{c} 0_{p-m\times m}\\ B_2 \end{array}\right]\quad(B_{2}\in{\rm\bf R}^{m\times m}) }

のように変換する直交行列T\in{\rm\bf R}^{p\times p}を用いて(B_2は正則行列)、座標変換

\displaystyle{(7)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} x''_1(t)\\ x''_2(t)\\ \end{array}\right] }_{x''(t)} = \underbrace{ \left[\begin{array}{cc} I_{n-p} & -B_{c1}(B_{c2}^TB_{c2})^{-1}B_{c2}^T \\ 0_{p\times n-p} & T^T  \end{array}\right] }_{T_b} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{x'(t)}\\ \Leftrightarrow \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{x'(t)}= \underbrace{ \left[\begin{array}{cc} I_{n-p} & B_{c1}(B_{c2}^TB_{c2})^{-1}B_{c2}^T \\ 0_{p\times n-p} & T \end{array}\right] }_{T_b^{-1}} \underbrace{ \left[\begin{array}{c} x''_1(t)\\ x''_2(t)\\ \end{array}\right] }_{x''(t)}\\ (x''_1(t)\in{\rm\bf R}^{n-p},x''_2(t)\in{\rm\bf R}^{p},T\in{\rm\bf R}^{p\times p}) \end{array} }

を行うと、次式を得ます。

\displaystyle{(8.1)\quad \underbrace{ \left[\begin{array}{c} \dot x''_1(t)\\ \dot x''_2(t) \end{array}\right] }_{\dot{x}''(t)} = \underbrace{ \left[\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22}  \end{array}\right] }_{(T_bT_c)A(T_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} x''_1(t)\\ x''_2(t)\\ \end{array}\right] }_{x''(t)} + \underbrace{ \left[\begin{array}{c} 0_{n-p\times m}\\ B_2 \end{array}\right] }_ {(T_bT_c)B} u'(t)\\ }

\displaystyle{(8.2)\quad y(t) = \underbrace{ \left[\begin{array}{cc} 0_{p\times n-p} & T \\ \end{array}\right] }_{C(T_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} x''_1(t)\\ x''_2(t)\\ \end{array}\right] }_{x''(t)} }

\displaystyle{(8.3)\quad \begin{array}{l} s(t)= \underbrace{ \left[\begin{array}{cc} 0_{m\times n-p} & FT \\ \end{array}\right] }_{FC(T_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} x''_1(t)\\ x''_2(t)\\ \end{array}\right] }_{x''(t)} = \underbrace{ \left[\begin{array}{cc|c} 0_{m\times n-p} & F_1 & F_2 \\ \end{array}\right] }_{FC(T_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} x''_1(t)\\ x''_2(t)\\ \end{array}\right] }_{x''(t)}\\ (FT=\left[\begin{array}{cc} F_1 & F_2 \end{array}\right], F_1\in{\rm\bf R}^{m\times p-m}, F_2\in{\rm\bf R}^{m\times m}) \end{array} }

ここで、等価制御が存在する条件{\rm rank}\,SB=m

\displaystyle{(9)\quad {\rm rank}\,\underbrace{FCB}_{SB}={\rm rank}\,F\cdot C(T_bT_c)^{-1}\cdot (T_bT_c)B=F_2B_{2}=m }

となります。以下では{\rm rank}\,CB=mを仮定します。このときB_{2}の正則性から、正方行列F_2も正則となります。

[2] (7)では、x''(t)x_1(t)\in{\rm\bf R}^{n-p}x_2(t)\in{\rm\bf R}^pに分割していますが、(8.1)と(8.3)に対するSM標準形を得るために、x''(t)\tilde{x}''_1(t)\in{\rm\bf R}^{n-m}\tilde{x}''_2(t)\in{\rm\bf R}^{m}に分割し直して、座標変換

\displaystyle{(10)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \tilde{x}''_1(t)\\ s(t) \end{array}\right] }_{\tilde{x}''(t)} = \underbrace{ \left[\begin{array}{cc} I_{n-m} & 0 \\ F_1C' & F_2 \\ \end{array}\right] }_{T_s} \underbrace{ \left[\begin{array}{c} \tilde{x}''_1(t)\\ \tilde{x}''_2(t) \end{array}\right] }_{x''(t)}\\ \Leftrightarrow \underbrace{ \left[\begin{array}{c} \tilde{x}''_1(t)\\ \tilde{x}''_2(t) \end{array}\right] }_{x''(t)} = \underbrace{ \left[\begin{array}{cc} I_{n-m}& 0 \\ -F_2^{-1}F_1C' & F_2^{-1}  \end{array}\right] }_{T_s^{-1}} \underbrace{ \left[\begin{array}{c} \tilde{x}''_1(t)\\ s(t) \end{array}\right] }_{\tilde{x}''(t)}\\ (C'=\left[\begin{array}{cc} 0_{p-m\times n-p} & I_{p-m}  \end{array}\right]) \end{array} }

を行うと、次式を得ます。

\displaystyle{(11)\quad \underbrace{ \left[\begin{array}{c} \dot{\tilde{x}}''_1(t)\\ \dot{s}(t) \end{array}\right] }_{\dot{\tilde{x}}''(t)} = \underbrace{ \left[\begin{array}{cc} \tilde{A}_{11} & \tilde{A}_{12} \\ \tilde{A}_{21} & \tilde{A}_{22} \end{array}\right] }_{\tilde{A}=(T_sT_bT_c)A(T_sT_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} \tilde{x}''_1(t)\\ s(t) \end{array}\right] }_{\tilde{x}''(t)} + \underbrace{ \left[\begin{array}{c} 0\\ \tilde{B}_2 \end{array}\right] }_{\tilde{B}=T_sT_bT_cB} u'(t) }

ただし

\displaystyle{(11')\quad  \left\{\begin{array}{l} \tilde{A}_{11}=A_{11}-A_{12}M\quad(M=F_2^{-1}F_1C')\\ \tilde{A}_{12}=A_{12}F_2^{-1}\\ \tilde{A}_{21}=F_2(M\tilde{A}_{11}+A_{21}-A_{22}M)\\ \tilde{A}_{22}=F_2(M{A}_{12}+A_{22})F_2^{-1}\\ \tilde{B}_{2}=F_2B_2 \end{array}\right. }

ここで、\tilde{A}_{11}を安定行列とすることができるかが問題となります。\tilde{A}_{11}

\displaystyle{(12)\quad  \boxed{\tilde{A}_{11}=\underbrace{A_{11}}_{A'}-\underbrace{A_{12}}_{B'} \underbrace{F_2^{-1}F_1}_{K} \underbrace{\left[\begin{array}{cc} 0_{p-m\times n-p} & I_{p-m}  \end{array}\right]}_{C'}} }

と書けるので、仮想システム

\displaystyle{(13)\quad \begin{array}{l} \dot{w}(t)=A'w(t)+B'v(t)\\ z(t)=C'w(t)\\ (w(t)\in{\rm\bf R}^{n-m}, v(t)\in{\rm\bf R}^m, z(t)\in{\rm\bf R}^{p-m}) \end{array} }

を出力フィードバック

\displaystyle{(14)\quad v(t)=-Kz(t) }

によって安定化する問題となります。そのためには(13)が可制御かつ可観測で、Kimura-Davisonの条件が成り立つことが必要です。

●(13)の可制御性については

\displaystyle{(15)\quad \begin{array}{l} {\rm rank} \left[\begin{array}{cc} sI-A & B \end{array}\right]& ={\rm rank} \left[\begin{array}{cc} sI-(T_bT_c)A(T_bT_c)^{-1} & (T_bT_c)B \end{array}\right]\\ ={\rm rank} \left[\begin{array}{ccc} sI-A_{11} & -A_{12} & 0\\ -A_{21} & sI-A_{22} & B_2 \end{array}\right]\\ ={\rm rank} \left[\begin{array}{cc} sI-A_{11} & -A_{12} \end{array}\right]+m\\ ={\rm rank} \left[\begin{array}{cc} sI-A' & B' \end{array}\right]+m \end{array} }

より、(1.1)が可制御であれば(13)も可制御となります。

●(13)の可観測性については、次式に基づいて検討します。

\displaystyle{(16)\quad \begin{array}{l} {\rm rank} \left[\begin{array}{c} sI-A' \\  C' \end{array}\right]\\ ={\rm rank} \left[\begin{array}{cc} sI-A_{1111} & -A_{1112} \\ -A_{1121} & sI-A_{1122} \\ 0 & I_{p-m} \end{array}\right]\ (A'=A_{11}= \left[\begin{array}{cc} A_{1111} & A_{1112} \\ A_{1121} & A_{1122}  \end{array}\right])\\ ={\rm rank} \left[\begin{array}{c} sI-A_{1111} \\ A_{1121}  \end{array}\right]+p-m\\ ={\rm rank} \left[\begin{array}{c} sI-T_{obs}A_{1111}T_{obs}^{-1} \\ A_{1121} T_{obs}^{-1}  \end{array}\right]+p-m\\  (T_{obs}A_{1111}T_{obs}^{-1}= \left[\begin{array}{cc} A_{11}^o & A_{12}^o \\ 0_{n-p-r\times r} & A_{22}^o \end{array}\right],  A_{1121} T_{obs}^{-1}= \left[\begin{array}{cc} 0_{p-m\times r} & A_{21}^o \end{array}\right] )\\ ={\rm rank} \left[\begin{array}{cc} sI-A_{11}^o & -A_{12}^o \\ 0_{n-p-r\times r} & sI-A_{22}^o\\ 0_{p-m\times r} & A_{21}^o  \end{array}\right]+p-m\\ ={\rm rank}(sI-A_{11}^o)+ \underbrace{{\rm rank}\left[\begin{array}{cc} sI-A_{22}^o\\ A_{21}^o  \end{array}\right]}_{n-p-r}+p-m \end{array} }

ここで、T_{obs}\in{\rm\bf R}^{n-p\times n-p}は、可観測標準形への変換行列です。このとき適当なr>0に対して最終式の第2項が成り立ちます。したがって、一般には(13)の可観測性は成り立つとは言えないのですが、要は\tilde{A}_{11}=A'-B'KC'を安定行列とできればよいので、この観点から調べていきます。

[3] 上のT_{obs}を用いて、(8.1)に対して、座標変換

\displaystyle{(17)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] }_{x'''(t)} = \underbrace{ \left[\begin{array}{cc|c} T_{obs} & 0 & 0\\ 0 & I_{p-m} & 0 \\\hline 0 & 0 & I_m  \end{array}\right] }_{T_a} \underbrace{ \left[\begin{array}{c} {x}''_1(t)\\ {x}''_2(t) \end{array}\right] }_{x''(t)}\\ \Leftrightarrow \underbrace{ \left[\begin{array}{c} {x}''_1(t)\\ {x}''_2(t) \end{array}\right] }_{x''(t)}= \underbrace{ \left[\begin{array}{cc|c} T_{obs}^{-1} & 0 & 0\\ 0 & I_{p-m} & 0 \\\hline 0 & 0 & I_m  \end{array}\right] }_{T_a^{-1}} \underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] }_{x'''(t)}\\ (x'''_1(t)\in{\rm\bf R}^{n-m},x'''_2(t)\in{\rm\bf R}^{m}) \end{array} }

を行うと、次式を得ます。

\displaystyle{(18.1)\quad \boxed{\begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot x'''_1(t)\\ \dot x'''_2(t) \end{array}\right] }_{\dot{x}'''(t)} = \underbrace{ \left[\begin{array}{ccc|c} A_{11}^o & A_{12}^o & A_{121}^m & A_{121}\\ 0_{n-p-r\times r} & A_{22}^o & A_{122}^m & A_{1221}\\ 0_{p-m\times r} & A_{21}^o & A_{22}^m & A_{1222}\\\hline A_{2120} & A_{2121} & A_{2122} & A_{22} \end{array}\right] }_{(T_aT_bT_c)A(T_aT_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] }_{x'''(t)}\\ + \underbrace{ \left[\begin{array}{c} 0_{r\times m} \\ 0_{n-p-r\times m} \\ 0_{p-m\times m} \\\hline B_2 \end{array}\right] }_ {(T_aT_bT_c)B} u(t)\\ (A_{11}^o\in{\rm\bf R}^{r\times r},A_{22}^o\in{\rm\bf R}^{n-p-r\times n-p-r},A_{22}^m\in{\rm\bf R}^{p-m\times p-m}) \end{array}} }

\displaystyle{(18.2)\quad \boxed{\begin{array}{l} y(t) = \underbrace{ \left[\begin{array}{cc} 0_{p\times n-p} & T \\ \end{array}\right] }_{C(T_bT_c)^{-1}} \underbrace{ \left[\begin{array}{cc|c} T_{obs}^{-1} & 0 & 0\\ 0 & I_{p-m} & 0 \\\hline 0 & 0 & I_m  \end{array}\right] }_{T_a^{-1}} \underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] }_{x'''(t)}\\ = \underbrace{ \left[\begin{array}{cc} 0_{p\times n-p} & T \\ \end{array}\right] }_{C(T_aT_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} x'''_1(t)\\ x'''_2(t) \end{array}\right] }_{x'''(t)} \end{array}} }

また、(12)より

\displaystyle{(12')\quad  \begin{array}{l} T_{a'}\tilde{A}_{11}T_{a'}^{-1}=T_{a'}(A'-B'KC')T_{a'}^{-1} \quad (T_{a'}= \left[\begin{array}{cc} T_{obs} & 0 \\ 0 & I_{p-m}  \end{array}\right])\\ =T_{a'}A_{11}T_{a'}^{-1}-T_{a'}A_{12} K \left[\begin{array}{ccc} 0_{p-m\times r} & 0_{p-m\times n-p-r} & I_{p-m}  \end{array}\right]T_{a'}^{-1}\\ = \underbrace{ \left[\begin{array}{c|cc} A_{11}^o & A_{12}^o & A_{121}^m \\\hline 0_{n-p-r\times r} & A_{22}^o & A_{122}^m \\ 0_{p-m\times r} & A_{21}^o & A_{22}^m  \end{array}\right]}_{T_{a'}A_{11}T_{a'}^{-1}} -\underbrace{\left[\begin{array}{ccc} A_{121}\\\hline A_{1221}\\ A_{1222} \end{array}\right]}_{T_{a'}A_{12}} \left[\begin{array}{ccc} 0_{p-m\times r} & 0_{p-m\times n-p-r} & K \end{array}\right]\\ = \left[\begin{array}{c|c} A_{11}^o &  \left[\begin{array}{cc} A_{12}^o & A_{121}^m-A_{121}K \end{array}\right]\\\hline 0_{n-m-r\times r} &  \left[\begin{array}{cc} A_{22}^o & A_{122}^m \\ A_{21}^o & A_{22}^m  \end{array}\right] -\left[\begin{array}{c} A_{1221}\\ A_{1222} \end{array}\right] K\left[\begin{array}{cc} 0_{p-m\times n-p-r} & I_{p-m}  \end{array}\right] \end{array}\right] \end{array} }

を得るので、\tilde{A}_{11}の固有値は、A_{11}^oの固有値と

\displaystyle{(19)\quad  \begin{array}{l} \underbrace{\left[\begin{array}{cc} A_{22}^o & A_{122}^m \\ A_{21}^o & A_{22}^m  \end{array}\right]}_{A''} - \underbrace{\left[\begin{array}{c} A_{1221}\\ A_{1222} \end{array}\right]}_{B''} K \underbrace{\left[\begin{array}{cc} 0_{p-m\times n-p-r} & I_{p-m}  \end{array}\right]}_{C''}\\ (A''\in{\rm\bf R}^{n-m-r\times n-m-r}, B''\in{\rm\bf R}^{n-m-r\times m}, C''\in{\rm\bf R}^{p-m\times n-m-r})\\ =\underbrace{\left[\begin{array}{cc} A_{22}^o & A_{122}^m \\ A_{21}^o & A_{22}^m  \end{array}\right]}_{A''} - \underbrace{\left[\begin{array}{cc} B''_1 & 0_{n-m-r\times m-m'} \end{array}\right]}_{B''T_m} \underbrace{\left[\begin{array}{cc} K_1\\ K_2 \end{array}\right]}_{T_m^{-1}K} \underbrace{\left[\begin{array}{cc} 0_{p-m\times n-p-r} & I_{p-m}  \end{array}\right]}_{C''}\\ (T_m\in{\rm\bf R}^{m\times m}, B''_1\in{\rm\bf R}^{n-m-r\times m'}, K_1\in{\rm\bf R}^{m'\times p-m}, K_2\in{\rm\bf R}^{m-m'\times p-m})\\ =A''-B''_1K_1C'' \end{array} }

の固有値の和となります。ここで、{\rm rank}B''={\rm rank}B''_1=m'を仮定しています。したがって、まず、A_{11}^oの固有値は左半平面にあることが前提となります。

●そこで、A''-B''_1K_1C''を安定行列とすることができるかを考えます。これは、(低次の)仮想システム

\displaystyle{(20)\quad \begin{array}{l} \dot{w}'(t)=A''w'(t)+B''_1v(t)\\ z(t)=C''w'(t)\\ (w'(t)\in{\rm\bf R}^{n-m-r}, v(t)\in{\rm\bf R}^{m'}, z(t)\in{\rm\bf R}^{p-m}) \end{array} }

を出力フィードバック

\displaystyle{(21)\quad v(t)=-K_1z(t)\ }

によって安定化するブレイクダウンした問題となります。そのためにはKimura-Davisonの条件

\displaystyle{(22)\quad m'+p+r \ge n+1 }

が成り立ち、(20)が可制御かつ可観測であることが必要です。後者については、補遺に示すように成り立ちます。ただし、これらは求解条件であって、具体的にK_1を求めるアルゴリズムについては、状態フィードバックのように確立されたものがあるわけではありません。

ここまでの手順を、関数ca_form1としてプログラムすることにします。

[4] 以上の準備の下で、p>mの場合のSM制御則をどう決めるかを考えます。(8.3)で定義した、

\displaystyle{(23)\quad FT=\left[\begin{array}{cc} F_1 & F_2 \end{array}\right] }

から次式を得ます。

\displaystyle{(24)\quad F=F_2\left[\begin{array}{cc} K & I_m \end{array}\right]T^T\quad(K=F_2^{-1}F_1) }

ここで、Kは(12)の\tilde{A}_{11}が安定行列となるように決めますが、上で調べたように、\tilde{A}_{11}の固有値は、A_{11}^oの固有値とA''-B''_1K_1C''の固有値の和です。そこで、A_{11}^oは安定行列であることが前提となります。一方K_1A''-B''_1K_1C''が安定行列となるように決め、

\displaystyle{(25)\quad K=T_m \left[\begin{array}{cc} K_1\\ K_2 \end{array}\right] }

のように構成します。ここで、K_2は任意でよく、またT_m\in{\rm\bf R}^{m\times m}は(19)で定めた行列です。ちなみにp=mの場合は、F_1は存在せずF=F_2となり、\tilde{A}_{11}の固有値はA_{11}^oの固有値だけとなります。

●以上では(8.1)に対して、座標変換(10)によって、(11)を得ていました。ここでは、(25)のK=F_2^{-1}F_1を用いた次の座標変換を行います(\bar{x}''_1(t)={x}''_1(t)\bar{s}(t)=F_2^{-1}s(t)と置き換え、記法\tilde{(\cdot)}\bar{(\cdot)}に置き換わっています)。

\displaystyle{(26)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \bar{x}''_1(t)\\ \bar{s}(t) \end{array}\right] }_{\bar{x}''(t)} = \underbrace{ \left[\begin{array}{cc} I_{n-m} & 0 \\ KC' & I_m \\ \end{array}\right] }_{\bar{T}_s} \underbrace{ \left[\begin{array}{c} {x}''_1(t)\\ {x}''_2(t) \end{array}\right] }_{x''(t)}\\ \Leftrightarrow \underbrace{ \left[\begin{array}{c} {x}''_1(t)\\ {x}''_2(t) \end{array}\right] }_{x''(t)} = \underbrace{ \left[\begin{array}{cc} I_{n-m}& 0 \\ -KC' & I_m  \end{array}\right] }_{\bar{T}_s^{-1}} \underbrace{ \left[\begin{array}{c} \bar{x}''_1(t)\\ \bar{s}(t) \end{array}\right] }_{\bar{x}''(t)}\\ (C'=\left[\begin{array}{cc} 0_{p-m\times n-p} & I_{p-m}  \end{array}\right]) \end{array} }

を行うために、まず(26)を(8.1)に代入して

\displaystyle{(27)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{cc} I_{n-m}& 0 \\ -KC' & I_m  \end{array}\right] }_{\bar{T}_s^{-1}} \underbrace{ \left[\begin{array}{c} \dot{\bar{x}}''_1(t)\\ \dot{\bar{s}}(t) \end{array}\right] }_{\dot{\bar{x}}''(t)}\\ = \underbrace{ \left[\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22} \\ \end{array}\right] }_{(T_bT_c)A(T_bT_c)^{-1}} \underbrace{ \left[\begin{array}{cc} I_{n-m}& 0 \\ -KC' & I_m  \end{array}\right] }_{\bar{T}_s^{-1}} \underbrace{ \left[\begin{array}{c} \bar{x}''_1(t)\\ \bar{s}(t) \end{array}\right] }_{\bar{x}''(t)} + \underbrace{ \left[\begin{array}{c} 0\\ B_2 \end{array}\right] }_{(T_bT_c)B} u'(t) \end{array} }

左から\bar{T}_sをかけて

\displaystyle{(28)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot{\bar{x}}''_1(t)\\ \dot{\bar{s}}(t) \end{array}\right] }_{\dot{\bar{x}}''(t)} = \underbrace{ \left[\begin{array}{cc} I_{n-m} & 0 \\ KC' & I_m  \end{array}\right] }_{\bar{T}_s} \underbrace{ \left[\begin{array}{cc} A_{11}-A_{12}KC' & A_{12} \\ A_{21}-A_{22}KC' & A_{22} \end{array}\right] }_{(T_bT_c)A(\bar{T}_sT_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} \bar{x}''_1(t)\\ \bar{s}(t) \end{array}\right] }_{\bar{x}''(t)}\\ + \underbrace{ \left[\begin{array}{cc} I_{n-m} & 0 \\ KC' & I_m  \end{array}\right] }_{\bar{T}_s} \underbrace{ \left[\begin{array}{c} 0\\ B_2 \end{array}\right] }_{B} u'(t) \end{array} }

すなわち、次式を得ます。

\displaystyle{(29.1)\quad \underbrace{ \left[\begin{array}{c} \dot{\bar{x}}''_1(t)\\ \dot{\bar{s}}(t) \end{array}\right] }_{\dot{\bar{x}}''(t)} = \underbrace{ \left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12} \\ \bar{A}_{21} & \bar{A}_{22} \end{array}\right] }_{\bar{A}=(\bar{T}_sT_bT_c)A(\bar{T}_sT_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} \bar{x}''_1(t)\\ \bar{s}(t) \end{array}\right] }_{\bar{x}''(t)} + \underbrace{ \left[\begin{array}{c} 0\\ \bar{B}_2 \end{array}\right] }_{\bar{B}=\bar{T}_sT_bT_cB} u'(t) }

\displaystyle{(29.1')\quad  \left\{\begin{array}{l} \bar{A}_{11}=A_{11}-A_{12}KC'\\ \bar{A}_{12}=A_{12}\\ \bar{A}_{21}=KC'\bar{A}_{11}+A_{21}-A_{22}KC'\\ \bar{A}_{22}=KC'{A}_{12}+A_{22}\\ \bar{B}_{2}=B_2 \end{array}\right. }

\displaystyle{(29.2)\quad \begin{array}{l} y(t) = \underbrace{ \left[\begin{array}{cc} 0_{p\times n-p} & T \\ \end{array}\right] }_{C(T_bT_c)^{-1}} \underbrace{ \left[\begin{array}{cc} I_{n-m}& 0 \\ -KC' & I_m  \end{array}\right] }_{\bar{T}_s^{-1}} \underbrace{ \left[\begin{array}{c} \bar{x}''_1(t)\\ \bar{s}(t) \end{array}\right] }_{\bar{x}''(t)}\\ = \underbrace{ \left[\begin{array}{cc} -TKC' & T  \end{array}\right] }_{C(\bar{T}_sT_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} \bar{x}''_1(t)\\ \bar{s}(t) \end{array}\right] }_{\bar{x}''(t)} \end{array} }

\displaystyle{(29.3)\quad \begin{array}{l} s(t)= \underbrace{ \left[\begin{array}{cc} 0_{m\times n-p} & FT \\ \end{array}\right] }_{FC(T_bT_c)^{-1}} \underbrace{ \left[\begin{array}{cc} I_{n-m}& 0 \\ -KC' & I_m  \end{array}\right] }_{\bar{T}_s^{-1}} \underbrace{ \left[\begin{array}{c} \bar{x}''_1(t)\\ \bar{s}(t) \end{array}\right] }_{\bar{x}''(t)}\\ = \underbrace{ \left[\begin{array}{cc|c} 0_{m\times n-p} & F_1 & F_2 \\ \end{array}\right] }_{FC(T_bT_c)^{-1}} \underbrace{ \left[\begin{array}{cc|c} I_{n-p}& 0 & 0\\ 0 & I_{p-m} & 0 \\\hline 0 & -K & I_m  \end{array}\right] }_{\bar{T}_s^{-1}} \underbrace{ \left[\begin{array}{c} \bar{x}''_1(t)\\ \bar{s}(t) \end{array}\right] }_{\bar{x}''(t)}\\ = \underbrace{ \left[\begin{array}{cc|c} 0_{m\times n-p} & 0_{m\times p-m} & F_2 \\ \end{array}\right] }_{FC(\bar{T}_sT_bT_c)^{-1}} \underbrace{ \left[\begin{array}{c} \bar{x}''_1(t)\\ \bar{s}(t) \end{array}\right] }_{\bar{x}''(t)}\\ (FT=\left[\begin{array}{cc} F_1 & F_2 \end{array}\right], F_1\in{\rm\bf R}^{m\times p-m}, F_2\in{\rm\bf R}^{m\times m}) \end{array} }

●ここからは出力FB型SM制御(p=m)の議論と同様にして、SM制御則として次式を考えます。

\displaystyle{(30)\quad u(t)=-\gamma Fy(t)-\rho(t,y)\frac{Fy(t)}{||Fy(t)||}\quad(\gamma>\gamma_0) }

ただし、

\displaystyle{(31)\quad  \underbrace{ \left[\begin{array}{cc} 0 & \bar{B}_2^T \end{array}\right] }_{\bar{B}^T} \underbrace{ \left[\begin{array}{cc} P_1 & 0 \\ 0  & P_2  \end{array}\right] }_{P} =F \underbrace{ \left[\begin{array}{cc} -TKC' & T  \end{array}\right] }_{\bar{C}}\\ \Rightarrow \bar{B}_2^TP_2=F_2 }

\displaystyle{(32)\quad  \rho(t,y)=\frac{k_1\gamma||Fy(t)||+\alpha(t,y)+\gamma_2}{1-k_1} }

\displaystyle{(33)\quad \begin{array}{l} \gamma_0=\frac{1}{2}\bar{\sigma}(F_2^{-T}(P_2\bar{A}_{22}+\bar{A}_{22}^TP_2\\ -(P_1\bar{A}_{12}+\bar{A}_{21}^TP_2)^T(P_1\bar{A}_{11}+\bar{A}_{11}^TP_1)^{-1}(P_1\bar{A}_{12}+\bar{A}_{21}^TP_2))F_2^{-1}) \end{array} }

●以上に基づく設計手順を、数値例で示します。

MATLAB
%ex1_of_sm.m
%-----
 clear all, close all
%(A,B,C)
 A=[ 0 1 0;
     0 0 1;
    -1 1/3 -1];
 B=[0; 1; 1];
 C=[1 8/3  1;
    4 2/3 -2];
 [nn,mm]=size(B);
 [pp,nn]=size(C); 
%-----
 [Af,Bf,Cf,r,Ta,Aa,Ba,Ca,Tb,T,Ac,Bc,Cc,Tc]=ca_form1(A,B,C)
%-----
 A11ti=Af(1:2,1:2);
 B1ti=Af(1:2,3);
 C1ti=[0,1];
 [Kopt,pl]=opt(A11ti,B1ti,C1ti,1,1)
 K=Kopt/C1ti %-1.0556
 A11bar=A11ti-B1ti*K*C1ti;
 lambda=eig(A11bar)
 Q1=eye(2,2); 
 P1=lyap(A11bar',Q1);
% 
 P2=1;
 B2=Ba(3,1);
 F2=B2'*P2; %-3.9016
 F=F2*[K 1]*T'
%
 Tbar=[eye(nn-mm) zeros(nn-mm,mm);
       K*C1ti eye(mm)];
 Abar=Tbar*Aa*inv(Tbar);  
 A12bar=Abar(1:2,3);
 A21bar=Abar(3,1:2);
 A22bar=Abar(3,3); 
 Q2=P1* A12bar+A21bar'*P2;
 Q3=P2* A22bar+A22bar'*P2; 
 W=inv(F2)'*(Q3+Q2'*inv(Q1)*Q2)*inv(F2);
 gamma0=0.5*norm(W) %0.2452
%-----
%eof


図1 出力FB型SM制御のシミュレーション例

出力FB型SM制御(p=m)

出力数=入力数の場合…Homework

これまでは、SM制御則の線形制御部を状態フィードバックの形で求めていましたが、以下では出力フィードバックに置き換えることを検討していきます。

[1] 制御対象の状態空間表現として次式を考えます。

\displaystyle{ \begin{array}{ll} (1.1) & \dot{x}(t)=Ax(t)+Bu(t)+f(t,x,u)\\ (1.2) & y(t)=Cx(t)\\ & (x(t)\in{\rm\bf R}^n, u(t)\in{\rm\bf R}^m, y(t)\in{\rm\bf R}^p, 1\le \boxed{m=p} < n) \end{array} }

ただし、f(t,x,u)\in{\rm\bf R}^nはモデル誤差、非線形要素、外乱などの影響を表し、次のマッチング条件を満たすとします。

\displaystyle{ \begin{array}{ll} (2.1) & f(t,x,u)=B\xi(t,x,u)\\ (2.2) & ||\xi(t,x,u)||<k_1||u||+\alpha(t,y)\quad(k_1<1)\\ & (f(t,x,y)\in{\rm\bf R}^n, \xi(t,x,u)\in{\rm\bf R}^m) \end{array} }

これに対し、次のスイッチング関数を定義します。

\displaystyle{(3)\quad \boxed{s(t)=Fy(t)}\quad(s(t)\in{\rm\bf R}^m, F\in{\rm\bf R}^{m\times m}) }

●状態方程式(1.1)は次のSM標準形をとるように座標変換されているとします(Note C22-1参照)。

\displaystyle{(4.1)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot x_2(t) \end{array}\right] }_{\dot{x}(t)} = \underbrace{ \left[\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22} \\ \end{array}\right] }_{A} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x(t)} + \underbrace{ \left[\begin{array}{c} 0\\ B_2 \end{array}\right] }_{B} \underbrace{(u(t)+\xi(t,x,u))}_{u'(t)}\\ (x_1(t)\in{\rm\bf R}^{n-m}, x_2(t)\in{\rm\bf R}^m, B_2\in{\rm\bf R}^{m\times m}) \end{array} }

これに対応して、観測方程式(1.2)も次のように表しておきます。

\displaystyle{(4.2)\quad y(t)= \underbrace{ \left[\begin{array}{cc} C_{1} & C_{2} \\ \end{array}\right] }_{C} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x(t)}\quad (y(t)\in{\rm\bf R}^m, C_2\in{\rm\bf R}^{m\times m}) }

すなわち、以下では行列A,B,Cは(4.1)と(4.2)のような分割をもつとします。

●スイッチング関数(3)を

\displaystyle{(5)\quad s(t)=Fy(t)=F \underbrace{ \left[\begin{array}{cc} C_{1} & C_{2} \\ \end{array}\right] }_{C} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x(t)} =\underbrace{ \left[\begin{array}{cc} FC_{1} & FC_{2} \\ \end{array}\right] }_{S=FC} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x(t)} }

と表すと、等価制御が存在する前提条件{\rm rank}\,SB=m

\displaystyle{(6)\quad {\rm rank}\,\underbrace{FCB}_{SB}={\rm rank}\,FC_2B_2=m }

となります。以下では{\rm rank}\,CB=mを仮定します。このとき、正方行列F,C_2,B_2はすべて正則となります。

[2] (4.1)に対して、座標変換

\displaystyle{(7)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{\bar{x}(t)} = \underbrace{ \left[\begin{array}{cc} I_{n-m}& 0 \\ C_1 & C_2 \\ \end{array}\right] }_{T_y} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x(t)}\\ \Leftrightarrow \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x(t)} = \underbrace{ \left[\begin{array}{cc} I_{n-m}& 0 \\ -C_2^{-1}C_1 & C_2^{-1}  \end{array}\right] }_{T_y^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{\bar{x}(t)} \end{array} }

を行うために、まず(7)を(4.1)に代入して(M=C_2^{-1}C_1

\displaystyle{(8)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{cc} I_{n-m} & 0 \\ -M & C_2^{-1} \\ \end{array}\right] }_{T_y^{-1}} \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot y(t) \end{array}\right] }_{\dot{\bar{x}}(t)}\\ = \underbrace{ \left[\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22} \\ \end{array}\right] }_{A} \underbrace{ \left[\begin{array}{cc} I_{n-m} & 0 \\ -M & C_2^{-1} \\ \end{array}\right] }_{T_y^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{\bar{x}(t)} + \underbrace{ \left[\begin{array}{c} 0\\ B_2 \end{array}\right] }_{B} u'(t) \end{array} }

を得て、左からT_yをかけて

\displaystyle{(9)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot y(t) \end{array}\right] }_{\dot{\bar{x}}(t)} = \underbrace{ \left[\begin{array}{cc} I_{n-m} & 0 \\ C_1 & C_2 \\ \end{array}\right] }_{T_y} \underbrace{ \left[\begin{array}{cc} A_{11}-A_{12}M & A_{12}C_2^{-1}  \\ A_{21}-A_{22}M & A_{22}C_2^{-1}  \\ \end{array}\right] }_{AT_y^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{\bar{x}(t)}\\ + \underbrace{ \left[\begin{array}{cc} I_{n-m} & 0 \\ C_1 & C_2 \\ \end{array}\right] }_{T_y} \underbrace{ \left[\begin{array}{c} 0\\ B_2 \end{array}\right] }_{B} u'(t) \end{array} }

すなわち、次式を得ます。

\displaystyle{(10)\quad \boxed{ %\begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot y(t) \end{array}\right] }_{\dot{\bar{x}}(t)} = \underbrace{ \left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12} \\ \bar{A}_{21} & \bar{A}_{22}\\ \end{array}\right] }_{\bar{A}=T_y A T_y^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{\bar{x}(t)} + \underbrace{ \left[\begin{array}{c} 0\\ \bar{B}_2 \end{array}\right] }_{\bar{B}=T_yB} u'(t) %\end{array} }}

ただし

\displaystyle{(10')\quad  \left\{\begin{array}{l} \bar{A}_{11}=A_{11}-A_{12}M\quad(M=C_2^{-1}C_1)\\ \bar{A}_{12}=A_{12}C_2^{-1}\\ \bar{A}_{21}=C_2(M\bar{A}_{11}+A_{21}-A_{22}M)\\ \bar{A}_{22}=C_2(M{A}_{12}+A_{22})C_2^{-1}\\ \bar{B}_{2}=C_2B_2 \end{array}\right. }

また、(4.2)と(3)は、次式のように表せます。

\displaystyle{(11)\quad  \boxed{y(t)= \underbrace{ \left[\begin{array}{cc} 0 & I_{m} \\ \end{array}\right] }_{\bar{C}=CT_y^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{\bar{x}(t)}} }

\displaystyle{(12)\quad  \boxed{s(t)=Fy(t)= \underbrace{ \left[\begin{array}{cc} 0 & F \\ \end{array}\right] }_{F\bar{C}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ y(t) \end{array}\right] }_{\bar{x}(t)}} }

ここで、\bar{A}_{11}=A_{11}-A_{12}Mの固有値が (A,B,C)の不変零点に等しく、スライディングモードの振舞いを決めます。しかし、M=C_2^{-1}C_1ですから、Mには選択の自由度がないことに注意します。

[3] 以下では、(10),(11),(12)を考えますが、煩雑さを避けるために\bar{A}\bar{B}\bar{C}\bar{x}のバーをとって記述します。

●さて、出力FB型のSM制御則として次式を考えます。

\displaystyle{(13)\quad \boxed{  u(t)=-\gamma Fy(t)\underbrace{-\rho(t,y)\frac{Fy(t)}{||Fy(t)||}}_{\nu_c(t)}\quad(\gamma>\gamma_0) }}

ここで、\gamma\rho(t,y)は設計パラメータ、\gamma_0は後で示す定数です。

これによる閉ループ系は、(13)を(4.1)に代入して、次式となります。

\displaystyle{(14)\quad  \dot{x}(t)=(A-\gamma BFC)x(t)+B(-\rho(t,y)\frac{Fy(t)}{||Fy(t)||}+\xi(t,x,y)) }

●このとき、SM制御則(13)を、2次安定性

\displaystyle{(15)\quad  \boxed{ V(x)=x(t)^TPx(t) \Rightarrow \dot{V}(x)\le -x(t)^TL(\gamma)x(t)} }

が成り立つように決定します(P>0, L(\gamma)>0)。ただし、次式を仮定します。

\displaystyle{(16)\quad  B^TP=FC }
\displaystyle{(17)\quad  \rho(t,y)=\frac{k_1\gamma||Fy(t)||+\alpha(t,y)+\gamma_2}{1-k_1} }

また、(17)と(13)から次式が得られることに注意します。

\displaystyle{  \begin{array}{cl} (18.1) &\rho(t,y)=k_1(\gamma||Fy(t)||+\rho(t,y))+\alpha(t,y)+\gamma_2\\ \Downarrow & using\ ||u(t)||\le \gamma||Fy(t)||+\rho(t,y)\\ (18.2) & \ge k_1||u(t)||+\alpha(t,y)+\gamma_2\\ \end{array} }

●これらの準備の下で、(15)が次のように示されます。

\displaystyle{ \begin{array}{cl} (19.1) & \dot{V}(x)=2x(t)^TP\dot{x}(t)\\ (19.2) & =2x^T(t)P((A-\gamma BFC)x(t)+B(-\rho(t,y)\frac{Fy(t)}{||Fy(t)||}+B\xi(t,x,u))\\ (19.3) & =x^T(t)\underbrace{(P(A-\gamma BFC)+(A-\gamma BFC)^TP)}_{L(\gamma)}x(t)\\  & -2x^T(t)\underbrace{PB}_{C^TF^T}\rho(t,y)\frac{Fy(t)}{||Fy(t)||}+2x^T(t)\underbrace{PB}_{C^TF^T}\xi(t,x,u))\\ (19.4) & =-x^T(t)L(\gamma)x(t)-2\rho(t,y)||Fy(t)||+2(Fy(t))^T\xi(t,x,u)\\ \Downarrow & by\ (Fy(t))^T\xi(t,x,u)\le||Fy(t)||\cdot||\xi(t,x,u)||\\ (19.5) & \le -x^T(t)L(\gamma)x(t)-2\rho(t,y)||Fy(t)||+2||Fy(t)||\cdot||\xi(t,x,u)||\\ (19.6) & = -x^T(t)L(\gamma)x(t)-2||Fy(t)||(\rho(t,y)-||\xi(t,x,u)||)\\ \Downarrow & by\ (2.2):||\xi(t,x,u)||<k_1||u||+\alpha(t,y)\quad(k_1<1)\\ (19.7) & \le -x^T(t)L(\gamma)x(t)-2||Fy(t)||(\rho(t,y)-k_1||u||-\alpha(t,y))\\ \Downarrow & by\ (18):\rho(t,y)\ge k_1||u(t)||+\alpha(t,y)+\gamma_2\\ (19.8) & \le -x^T(t)L(\gamma)x(t)-2\gamma_2||Fy(t)||\\ (19.9) & \le -x^T(t)L(\gamma)x(t) \end{array} }

●ここで、次式を示すことができします。

\displaystyle{(20)\quad  \boxed{L(\gamma)=\underbrace{P(A-\gamma BFC)+(A-\gamma BFC)^TP}_{PA+A^TP-2\gamma (FC)^TFC}<0 \Leftrightarrow \gamma>\gamma_0} }

実際、左辺は

\displaystyle{ \begin{array}{cl} (21.1) & L(\gamma)=PA+A^TP-2\gamma (FC)^TFC\\ (21.2) &  =\underbrace{\left[ \begin{array}{cc} P_1 & 0 \\ 0   & P_2 \\ \end{array}\right]}_{P} \underbrace{\left[\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22} \\ \end{array}\right]}_{A} + \underbrace{\left[\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22} \\ \end{array}\right]^T}_{A^T} \underbrace{\left[\begin{array}{cc} P_1 & 0 \\ 0   & P_2 \\ \end{array}\right]}_{P}\\ &-2\gamma \underbrace{\left[\begin{array}{cc} 0 & F \\ \end{array}\right]^T}_{(FC)^T} \underbrace{\left[\begin{array}{cc} 0 & F \\ \end{array}\right]}_{FC}\\ (21.3) &  =\left[ \begin{array}{cc} P_1A_{11}+A_{11}^TP_1 & P_1A_{12}+A_{21}^TP_2 \\ (P_1A_{12}+A_{21}^TP_2)^T   & P_2A_{22}+A_{22}^TP_2 \\ \end{array}\right] -2\gamma \left[\begin{array}{cc} 0 & 0 \\ 0 & F^TF \\ \end{array}\right]\\ (21.4) &  =\left[\begin{array}{cc} P_1A_{11}+A_{11}^TP_1 & P_1A_{12}+A_{21}^TP_2 \\ (P_1A_{12}+A_{21}^TP_2)^T   & P_2A_{22}+A_{22}^TP_2-2\gamma F^TF \\ \end{array}\right]<0 \end{array} }

となり、これは公式

\displaystyle{(22)\quad \begin{array}{l} \left[\begin{array}{cc} X & Z \\ Z^T & Y \end{array}\right]<0\\ \ \Leftrightarrow\  X-ZY^{-1}Z^T<0,\ Y<0 \\ \ \Leftrightarrow\  X<0,\ Y-Z^TX^{-1}Z<0  \end{array} }

を用いて、以下と等価になります。

\displaystyle{ \begin{array}{cl} (23.1) &  \left\{\begin{array}{l} P_1A_{11}+A_{11}^TP_1<0\\ P_2A_{22}+A_{22}^TP_2 -2\gamma F^TF-(P_1A_{12}+A_{21}^TP_2)^T\\ \times(P_1A_{11}+A_{11}^TP_1)^{-1}(P_1A_{12}+A_{21}^TP_2)<0 \end{array}\right.\\ (23.2) &  \Leftrightarrow\  \left\{\begin{array}{l} P_1A_{11}+A_{11}^TP_1<0\\ P_2A_{22}+A_{22}^TP_2 -(P_1A_{12}+A_{21}^TP_2)^T\\ \times(P_1A_{11}+A_{11}^TP_1)^{-1}(P_1A_{12}+A_{21}^TP_2)<2\gamma F^TF \end{array}\right.\\ (23.3) &  \Leftrightarrow\  \left\{\begin{array}{l} P_1A_{11}+A_{11}^TP_1<0\\ F^{-T}(P_2A_{22}+A_{22}^TP_2 -(P_1A_{12}+A_{21}^TP_2)^T\\ \times(P_1A_{11}+A_{11}^TP_1)^{-1}(P_1A_{12}+A_{21}^TP_2))F^{-1}<2\gamma I \end{array}\right.\\ (23.4) &  \Leftrightarrow\  \left\{\begin{array}{l} P_1A_{11}+A_{11}^TP_1<0\quad(*)\\ \underbrace{\begin{array}{l} \frac{1}{2}\bar{\sigma}(F^{-T}(P_2A_{22}+A_{22}^TP_2 -(P_1A_{12}+A_{21}^TP_2)^T\\ \times(P_1A_{11}+A_{11}^TP_1)^{-1}(P_1A_{12}+A_{21}^TP_2))F^{-1}) \end{array} }_{\gamma_0}<\gamma  \end{array}\right. \end{array} }

ここで、(*)は仮定より満足されるので、\gamma>\gamma_0L(\gamma)>0となるための条件となることが分かります。