準備

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の正則性が成り立ちます。