C34 偏差系のSM安定化制御


偏差系のSM安定化制御…Homework

レギュレータ問題は平衡状態の安定化、追値問題は他の平衡状態への安定化を意味します。LQI制御のところでみたように、偏差系を導入すれば、追値問題は偏差系の安定化問題となります。この観点から積分動作導入による追従制御を見直してみます。


[1] 定値外乱を受ける制御対象

\displaystyle{(1)\quad \begin{array}{l} \dot{x}(t)=Ax(t)+Bu(t)+w\\ 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, w\in{\rm\bf R}^n, m=p) \end{array} }

の出力を、次のコマンド(定値目標)

\displaystyle{(2)\quad r\in{\rm\bf R}^m %\begin{array}{l} %\dot{r}(t)=\Gamma(r(t)-r_c)\\ %(r(t),r_c\in{\rm\bf R}^m) %\end{array} %\Gammaは安定行列 }

に追従させることを考えます。そのために、積分動作

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

を考え、次の拡大系を構成します。

\displaystyle{(4)\quad %\underbrace{ \left[\begin{array}{c} \dot{x}(t) \\ \dot{x}_I(t) \end{array}\right] %}_{\dot{x}_E(t)} = %\underbrace{ \left[\begin{array}{cc} A & 0 \\ C & 0 \end{array}\right] %}_{A_E} %\underbrace{ \left[\begin{array}{c} x(t) \\ x_I(t) \end{array}\right] %}_{x_E(t)} + %\underbrace{ \left[\begin{array}{c} B \\ 0 \end{array}\right] %}_{B_E} u(t) + %\underbrace{ \left[\begin{array}{c} w \\ -r \end{array}\right] %}_{w_E} }

定常状態では

\displaystyle{(5)\quad \left[\begin{array}{c} 0 \\ 0 \end{array}\right] = \left[\begin{array}{cc} A & 0 \\ C & 0 \end{array}\right] \left[\begin{array}{c} x_\infty \\ x_{I\infty} \end{array}\right] + \left[\begin{array}{c} B \\ 0 \end{array}\right] u_\infty + \left[\begin{array}{c} w \\ -r \end{array}\right] }

を得ます(x_{\infty},x_{I\infty},u_{\infty}は定数ベクトル)。まず、(4)から(5)を引いて、つぎの偏差系を得ます。

偏差系E1:
\displaystyle{(6)\quad \underbrace{ \frac{d}{dt} \left[\begin{array}{c} x(t)-x_\infty \\ x_I(t)-x_{I\infty} \end{array}\right] }_{\dot{x}_{E1}(t)} = \underbrace{ \left[\begin{array}{cc} A & 0 \\ C & 0 \end{array}\right] }_{A_{E1}} \underbrace{ \left[\begin{array}{c} x(t)-x_\infty \\ x_I(t)-x_{I\infty} \end{array}\right] }_{x_{E1}(t)} + \underbrace{ \left[\begin{array}{c} B \\ 0 \end{array}\right] }_{B_{E1}} (u(t)-u_\infty) }

この両辺を微分すれば、状態変数の中の定数ベクトルを除くことができて

偏差系E2:
\displaystyle{(7)\quad \underbrace{ \frac{d}{dt} \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right] }_{\dot{x}_{E2}(t)} = \underbrace{ \left[\begin{array}{cc} A & 0 \\ C & 0 \end{array}\right] }_{A_{E2}} \underbrace{ \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right] }_{x_{E2}(t)} + \underbrace{ \left[\begin{array}{c} B \\ 0 \end{array}\right] }_{B_{E2}} {\dot u}(t) }

を得ます。さらに、(1)の状態方程式と観測方程式をまとめた

\displaystyle{(8)\quad \left[\begin{array}{c} {\dot x}(t)-w \\ y(t) \end{array}\right] = \underbrace{ \left[\begin{array}{cc} A & B \\ C & 0 \end{array}\right] }_{S_E} \left[\begin{array}{c} x(t) \\ u(t) \end{array}\right] }

から、(5)すなわち

\displaystyle{(9)\quad \left[\begin{array}{c} -w \\ r \end{array}\right] = \underbrace{ \left[\begin{array}{cc} A & B \\ C & 0 \end{array}\right] }_{S_E} \left[\begin{array}{c} x_\infty \\ u_\infty \end{array}\right] }

を引いて、つぎの関係式が成り立ちます。

\displaystyle{(10)\quad \underbrace{ \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right] }_{x_{E2}(t)} = \underbrace{ \left[\begin{array}{cc} A & B \\ C & 0 \end{array}\right] }_{S_E} \underbrace{ \left[\begin{array}{c} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{x_{E3}(t)} }

これを用いて、偏差系E2に座標変換を行えば

偏差系E3:
\displaystyle{(11)\quad \underbrace{ \frac{d}{dt} \left[\begin{array}{c} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{\dot{x}_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} A & B \\ 0 & 0 \end{array}\right] }_{A_{E3}} \underbrace{ \left[\begin{array}{c} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{x_{E3}(t)} + \underbrace{ \left[\begin{array}{c} 0 \\ I_m \end{array}\right] }_{B_{E3}} {\dot u}(t) }

を得ます。ここで、つぎの関係式を用いました。

\displaystyle{(12)\quad \underbrace{ \left[\begin{array}{cc} A & 0 \\ C & 0 \end{array}\right] }_{A_{E2}} \underbrace{ \left[\begin{array}{cc} A & B \\ C & 0 \end{array}\right] }_{S_E} = \underbrace{ \left[\begin{array}{cc} A & B \\ C & 0 \end{array}\right] }_{S_E} \underbrace{ \left[\begin{array}{cc} A & B \\ 0 & 0 \end{array}\right] }_{A_{E3}} }

\displaystyle{(13)\quad \underbrace{ \left[\begin{array}{c} B \\ 0 \end{array}\right] }_{B_{E2}} = \underbrace{ \left[\begin{array}{cc} A & B \\ C & 0 \end{array}\right] }_{S_E} \underbrace{ \left[\begin{array}{c} 0 \\ I_m \end{array}\right] }_{B_{E3}} }

\displaystyle{(14)\quad \underbrace{ \left[\begin{array}{cc} 0 & I_m \end{array}\right] }_{C_{E2}} \underbrace{ \left[\begin{array}{cc} A & B \\ C & 0 \end{array}\right] }_{S_E} = \underbrace{ \left[\begin{array}{cc} C & 0 \end{array}\right] }_{C_{E3}} }

以下では、この偏差系E3が標準形となっていることに注意して、SMCを設計します。

(11)を、改めて次のように書きます。

\displaystyle{(15)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot x_2(t) \end{array}\right] }_{\dot{x}_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} A & B \\ 0 & 0 \end{array}\right] }_{A_{E3}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)} + \underbrace{ \left[\begin{array}{c} 0\\ I_m \end{array}\right] }_{B_{E3}} {\dot u}(t)\\ (x_1(t)=x(t)-x_\infty, x_2(t)=u(t)-u_\infty) \end{array} }

スイッチング関数として、次式を考えます。

\displaystyle{(16)\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_{E3}(t)} = \underbrace{S_2 \left[\begin{array}{cc} M & I \\ \end{array}\right] }_{S} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)} \ (M=S_2^{-1}S_1) }

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

\displaystyle{(17)\quad \underbrace{ \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] }_{x'_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} I & 0 \\ S_1 & S_2 \\ \end{array}\right] }_{T_s} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)}\\ \Leftrightarrow \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} I & 0 \\ -S_2^{-1}S_1 & S_2^{-1} \\ \end{array}\right] }_{T_s^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] }_{x'_{E3}(t)} }

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

\displaystyle{(18)\quad \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot s(t) \end{array}\right] }_{\dot{x}'_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12} \\ \bar{A}_{21} & \bar{A}_{22} \\ \end{array}\right] }_{T_sA_{E3}T_s^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] }_{x'_{E3}(t)} + \underbrace{ \left[\begin{array}{cc} 0\\ S_2 \end{array}\right] }_{T_sB_{E3}} {\dot u}(t) }

\displaystyle{(19)\quad \begin{array}{l} \bar{A}_{11}=A-BM\\ \bar{A}_{12}=BS_2^{-1}\\ \bar{A}_{21}=S_1(A-BM)\\ \bar{A}_{22}=S_1BS_2^{-1} \end{array} }

以下では、\bar{A}_{11}が安定行列となるようにスイッチング関数が選ばれていると仮定します。

このとき、SMC則

\displaystyle{(20)\quad { {\dot u}(t)=\underbrace{{\dot u}_\ell(t)}_{linear\ control}+\underbrace{{\dot u}_n(t)}_{switching\ component}} }

を、2次安定性

\displaystyle{(21)\quad { \begin{array}{lll} V(s)=s(t)^TP_2s(t)& \Rightarrow \dot{V}(s)\le -s^T(t)s(t)&(t\le t_s)\\ V(x_1)=x_1^T(t)P_1x_1(t)& \Rightarrow \dot{V}(x_1)\le -x_1^T(t)Q_1x_1(t)&(t> t_s) \end{array}} }

が成り立つように決定します(P_1>0, P_2>0, Q_1>0)。

[2] 可到達性の検討 (t\le t_s)

等価制御は

\displaystyle{(22)\quad \begin{array}{l} s(t)=0\Rightarrow\dot{s}(t)=0 \Rightarrow 0=\bar{A}_{21}x_1(t)+\bar{A}_{22}s(t)+S_2{\dot u}(t)\\ \Rightarrow {\dot u}_{eq}(t)=-\underbrace{S_2^{-1}}_{(SB_{E3})^{-1}} \underbrace{\left[\begin{array}{cc} \bar{A}_{21} & \bar{A}_{22} \\ \end{array}\right]x'_{E3}(t)}_{SA_{E3}x_{E3}(t)}} \end{array} }

のように得られます。(20)の第1項{\dot u}_\ellは、この等価制御をベースして

\displaystyle{(23)\quad { \begin{array}{l} {\dot u}_\ell(t)=-\underbrace{S_2^{-1}}_{(SB_{E3})^{-1}} \underbrace{(\left[\begin{array}{cc} \bar{A}_{21} & \bar{A}_{22} \\ \end{array}\right]x'_{E3}(t)-\Phi s(t))}_{(SA_{E3}-\Phi S)x_{E3}(t)}} \end{array}} }

のように構成します(\Phiは安定行列)。このとき閉ループ系は次式で与えられます。

\displaystyle{(24)\quad \begin{array}{l} \left[\begin{array}{c} \dot{x}_1(t)\\ \dot{s}(t) \end{array}\right] = \left[\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12} \\ 0 & \Phi \\ \end{array}\right] \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] + \left[\begin{array}{c} 0\\ S_2{\dot u}_n(t) \end{array}\right] \end{array }

すなわち

\displaystyle{(25)\quad \begin{array}{l} \dot{x}_1(t)=\bar{A}_{11}x_1(t)+\bar{A}_{12}s(t)\\ \dot{s}(t)=\Phi s(t)+S_2{\dot u}_n(t) \end{array} }

ここで、\Phiは安定行列なので

\displaystyle{(26)\quad \begin{array}{l} P_2\Phi+\Phi^TP_2=-I \end{array} }

を満たすP_2>0を選ぶことができます。これを用いて

\displaystyle{(27)\quad { {\dot u}_n(t)=-\underbrace{S_2^{-1}}_{(SB_{E3})^{-1}}\rho\frac{P_2s(t)}{||P_2s(t)||}} }

と選びます(\rho>0は定数)。このとき次式が成り立ちます。

\displaystyle{(28)\quad \begin{array}{l} \dot{V}(s)=2s^T(t)P_2\dot{s}(t)\\ =2s^T(t)P_2(\Phi s(t)-\rho\frac{P_2s(t)}{||P_2s(t)||})\\ =s^T(t)(P_2\Phi+\Phi^TP_2)s(t)+2s^T(t)P_2(-\rho\frac{P_2s(t)}{||P_2s(t)||})\\ \le -||s(t)||^2-2\rho||P_2s(t)||\\ \le -||s(t)||^2 \end{array} }

[3] スライディングモードの検討 (t> t_s)

\bar{A}_{11}は安定行列なので

\displaystyle{(29)\quad \begin{array}{l} P_1\bar{A}_{11}+\bar{A}_{11}^TP_1=-Q_1<0 \end{array} }

を満たすP_1>0を選ぶことができます。

\displaystyle{(30)\quad \begin{array}{l} \dot{V}(x_1)=2x_1^T(t)P_1\dot{x}_1(t)\\ =2x_1^T(t)P_1( \bar{A}_{11}x_1(t)+\bar{A}_{12}\underbrace{s(t)}_{0})\\ =x_1^T(t(P_1\bar{A}_{11}+\bar{A}_{11}^TP_1)x_1(t)\\ =-x_1^T(t)Q_1x_1(t) \end{array} }

[4] 積分動作をもつSMC

上で求めた偏差系E3に対するSMCは次式で与えられました。

\displaystyle{(31)\quad  {\dot u}(t)={\dot u}_\ell(t)+{\dot u}_n(t) }

\displaystyle{(32)\quad  {\dot u}_\ell(t)=-(SB_{E3})^{-1}(SA_{E3}-\Phi S)x_{E3}(t) }

\displaystyle{(33)\quad  {\dot u}_n(t)=-(SB_{E3})^{-1}\rho\frac{P_2s(t)}{||P_2s(t)||}}=-(SB_{E3})^{-1}\rho\,{\rm sgn}(P_2Sx_{E3}(t)) }

これらを積分して、制御対象(1)に対する積分動作をもつSMCを導出します。

\displaystyle{(34)\quad  {u}(t)={u}_\ell(t)+{u}_n(t) }

まず(32)は(10)を用いて次式のように書けます。

\displaystyle{(35)\quad  {\dot u}_\ell(t)=- \underbrace{ (SB_{E3})^{-1}(SA_{E3}-\Phi S)S_E^{-1} }_{\left[\begin{array}{cc} F & F_I \end{array}\right]} \underbrace{ \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right] }_{x_{E2}(t)} }

これを積分して

\displaystyle{(36)\quad  u_\ell(t)=-Fx(t)+F_I\int_0^t(r-y(\tau))d\tau }

次に(33)は(10)を用いて次式のように書けます。

\displaystyle{(37)\quad  {\dot u}_n(t) =-S_2^{-1}\rho\, {\rm sgn}( \underbrace{ P_2SS_E^{-1} }_{\left[\begin{array}{cc} G & G_I \end{array}\right]} \underbrace{ \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right] }_{x_{E2}(t)}) }

これを積分すれば

\displaystyle{(38)\quad  u_n(t)=S_2^{-1}\rho\,\int_0^t\underbrace{{\rm sgn}(-G{\dot x}(\tau)+G_I(r-y(\tau)))}_{0,\pm 1}d\tau }

ここで、\dot{x}_1(t)=\frac{d}{dt}(x(t)-x_\infty)=\dot{x}(t)に注意し、(25)の第1式を用いて\dot{x}(t)

\displaystyle{(39)\quad  \begin{array}{l} \underbrace{\dot{x}_1(t)}_{\dot{x}(t)}=\underbrace{(A-BM)}_{\bar{A}_{11}}x_1(t)+\underbrace{BS_2^{-1}}_{\bar{A}_{12}}\underbrace{(S_1x_1(t)+S_2x_2(t))}_{s(t)}\\ =(A-BM)x_1(t)+BS_2^{-1}S_2(Mx_1(t)+x_2(t))\\ =Ax_1(t)+Bx_2(t)\\ =Ax(t)+Bu(t)-\left[\begin{array}{cc} A & B \end{array}\right] \left[\begin{array}{c} x_\infty \\ u_\infty \end{array}\right]\\ =Ax(t)+Bu(t)-\left[\begin{array}{cc} A & B \end{array}\right]S_E^{-1} \left[\begin{array}{c} -w \\ r \end{array}\right]\\ =Ax(t)+Bu(t)-\left[\begin{array}{cc} I & 0 \end{array}\right] \left[\begin{array}{c} -w \\ r \end{array}\right]\\ =Ax(t)+Bu(t)+w \end{array} }

となって元の状態方程式となりますが、wを無視し、uの近似値を使うことも一手段かもしれません。

[5] 数値例(1)

\displaystyle{(101)\quad \begin{array}{l} \dot{x}(t)=\underbrace{0}_{a}x(t)+\underbrace{1}_{b}u(t)+w\\ y(t)=\underbrace{1}_{c}x(t)\\ \end{array} }

\displaystyle{(109)\quad \left[\begin{array}{c} -w \\ r \end{array}\right] = \underbrace{ \left[\begin{array}{cc} 0 & 1 \\ 1 & 0 \end{array}\right] }_{S_E} \left[\begin{array}{c} x_\infty \\ u_\infty \end{array}\right] \Rightarrow \left[\begin{array}{c} x_\infty \\ u_\infty \end{array}\right]= \left[\begin{array}{c} r \\ -w \end{array}\right] }

\displaystyle{(111)\quad \underbrace{ \frac{d}{dt} \left[\begin{array}{c} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{\dot{x}_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} 0 & 1 \\ 0 & 0 \end{array}\right] }_{A_{E3}} \underbrace{ \left[\begin{array}{c} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{x_{E3}(t)} + \underbrace{ \left[\begin{array}{c} 0 \\ 1 \end{array}\right] }_{B_{E3}} {\dot u}(t) }

\displaystyle{(116)\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_{E3}(t)} = \underbrace{s_2 \left[\begin{array}{cc} m & 1 \\ \end{array}\right] }_{S} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)} \ (m=s_2^{-1}s_1) }

\displaystyle{(117)\quad \underbrace{ \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] }_{x'_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} 1 & 0 \\ s_1 & s_2 \\ \end{array}\right] }_{T_s} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)}\\ \Leftrightarrow \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} 1 & 0 \\ -s_2^{-1}s_1 & s_2^{-1} \\ \end{array}\right] }_{T_s^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] }_{x'_{E3}(t)} }

\displaystyle{(118)\quad \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot s(t) \end{array}\right] }_{\dot{x}'_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} -m & s_2^{-1} \\ -s_1m & m \\ \end{array}\right] }_{T_sA_{E3}T_s^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] }_{x'_{E3}(t)} + \underbrace{ \left[\begin{array}{cc} 0\\ s_2 \end{array}\right] }_{T_sB_{E3}} {\dot u}(t) }

\displaystyle{(123)\quad \begin{array}{l} {\dot u}_\ell(t)= -\underbrace{s_2^{-1}}_{(SB_{E3})^{-1}} \underbrace{(\left[\begin{array}{cc} -s_1m & m \\ \end{array}\right]x'_{E3}(t)-\Phi s(t))}_{(SA_{E3}-\Phi S)x_{E3}(t)}}\\ =-s_2^{-1}(\left[\begin{array}{cc} 0 & ms_2 \\ \end{array}\right]- \left[\begin{array}{cc} \Phi s_1 & \Phi s_2 \\ \end{array}\right])x_{E3}(t)\\ =-s_2^{-1}\left[\begin{array}{cc} -\Phi s_1 & ms_2-\Phi s_2 \\ \end{array}\right]x_{E3}(t)\\ =-\left[\begin{array}{cc} -\Phi m & m-\Phi \\ \end{array}\right] \underbrace{ \left[\begin{array}{cc} 0 & 1 \\ 1 & 0 \end{array}\right] }_{S_E^{-1}} \underbrace{ \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right] }_{x_{E2}(t)}\\ =-\underbrace{(m-\Phi)}_{f}{\dot x}(t)+\underbrace{m(-\Phi)}_{f_I}(r-y(t))\\ \Rightarrow u_\ell(t)=-fx(t)+f_I\int_0^t (r-y(\tau))d\tau \end{array} }

\displaystyle{(126)\quad \begin{array}{l} p_2\Phi+\Phi^Tp_2=-1\Rightarrow p_2=-\frac{1}{2}\Phi \end{array} }

\displaystyle{(137)\quad  \begin{array}{l} {\dot u}_n(t) =-s_2^{-1}\rho\, {\rm sgn}(\underbrace{-\frac{1}{2}\Phi}_{p_2} \underbrace{ \left[\begin{array}{cc} s_1 & s_2 \end{array}\right] }_{S} \underbrace{ \left[\begin{array}{cc} 0 & 1 \\ 1 & 0 \end{array}\right] }_{S_E^{-1}} \underbrace{ \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right] }_{x_{E2}(t)})\\ =\rho\, {\rm sgn}(\frac{1}{2}\Phi \left[\begin{array}{cc} 1 & m \end{array}\right] \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right])\\ =\rho\, {\rm sgn}(-\underbrace{\frac{1}{2}(-\Phi)}_{g}{\dot x}(t)+\underbrace{\frac{1}{2}m(-\Phi)}_{g_I} (r-y(t)))\\ \Rightarrow u_n(t)=\rho\,\int_0^t\underbrace{{\rm sgn}(-g{\dot x}(\tau)+g_I(r-y(\tau)))}_{0,\pm 1}d\tau \end{array} }

m=1, \Phi=-0.5の場合のシミュレーション結果を次に示します。

[5] 数値例(2)

\displaystyle{(201)\quad \begin{array}{l} \dot{x}(t)= \underbrace{\left[\begin{array}{cc} 0 & 1 \\ 0 & 0 \end{array}\right]}_{A}x(t) +\underbrace{\left[\begin{array}{cc} 0  \\ 1  \end{array}\right]}_{B}u(t)+w\\ y(t)=\underbrace{\left[\begin{array}{cc} 1 & 0   \end{array}\right]}_{C}x(t)\\ \end{array} }

\displaystyle{(209)\quad \left[\begin{array}{c} 0 \\ -w \\ r \end{array}\right] = \underbrace{ \left[\begin{array}{ccc} 0 & 1 & 0 \\ 0 & 0 & 1 \\ 1 & 0 & 0  \end{array}\right] }_{S_E} \left[\begin{array}{c} x_{1\infty} \\ x_{2\infty} \\ u_\infty \end{array}\right] \Rightarrow \left[\begin{array}{c} x_{1\infty} \\ x_{2\infty} \\ u_\infty \end{array}\right]= \left[\begin{array}{c} r \\ 0 \\ -w \end{array}\right] }

\displaystyle{(211)\quad \underbrace{ \frac{d}{dt} \left[\begin{array}{c} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{\dot{x}_{E3}(t)} = \underbrace{ \left[\begin{array}{ccc} 0 & 1 & 0 \\ 0 & 0 & 1 \\ 0 & 0 & 0  \end{array}\right] }_{A_{E3}} \underbrace{ \left[\begin{array}{c} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{x_{E3}(t)} + \underbrace{ \left[\begin{array}{c} 0 \\ 0 \\ 1 \end{array}\right] }_{B_{E3}} {\dot u}(t) }

\displaystyle{(216)\quad \begin{array}{l} s(t)= \underbrace{ \left[\begin{array}{ccc} s_{11} & s_{12} & s_2 \\ \end{array}\right] }_{S} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)} = \underbrace{s_2 \left[\begin{array}{ccc} m_1 & m_2 & 1 \\ \end{array}\right] }_{S} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)}\\ (m_1=s_2^{-1}s_{11},m_2=s_2^{-1}s_{12}) \end{array} }

\displaystyle{(217)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] }_{x'_{E3}(t)} = \underbrace{ \left[\begin{array}{ccc} 1 & 0 & 0\\ 0 & 1 & 0\\ s_{11} & s_{12} & s_2 \\ \end{array}\right] }_{T_s} \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)}\Leftrightarrow\\ \underbrace{ \left[\begin{array}{c} x_1(t)\\ x_2(t) \end{array}\right] }_{x_{E3}(t)} = \underbrace{ \left[\begin{array}{ccc} 1 & 0 & 0\\ 0 & 1 & 0\\ -s_2^{-1}s_{11} & -s_2^{-1}s_{12} & s_2^{-1} \\ \end{array}\right] }_{T_s^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] }_{x'_{E3}(t)} \end{array} }

\displaystyle{(218)\quad \underbrace{ \left[\begin{array}{c} \dot x_1(t)\\ \dot s(t) \end{array}\right] }_{\dot{x}'_{E3}(t)} = \underbrace{ \left[\begin{array}{ccc} 0 & 1 & 0\\ -m_1 & -m_2 & s_2^{-1} \\ -s_{12}m_1 & -s_{12}m_2 & m_2 \end{array}\right] }_{T_sA_{E3}T_s^{-1}} \underbrace{ \left[\begin{array}{c} x_1(t)\\ s(t) \end{array}\right] }_{x'_{E3}(t)} + \underbrace{ \left[\begin{array}{cc} 0\\ 0\\ s_2 \end{array}\right] }_{T_sB_{E3}} {\dot u}(t) }

\displaystyle{(223)\quad \begin{array}{l} {\dot u}_\ell(t)= -\underbrace{s_2^{-1}}_{(SB_{E3})^{-1}} \underbrace{(\left[\begin{array}{ccc} -s_{12}m_1 & -s_{12}m_2 & m_2 \\ \end{array}\right]x'_{E3}(t)-\Phi s(t))}_{(SA_{E3}-\Phi S)x_{E3}(t)}}\\ =-s_2^{-1}(\left[\begin{array}{ccc} 0 & 0 & m_2s_2 \\ \end{array}\right]- \left[\begin{array}{ccc} \Phi s_{11} & \Phi s_{12} & \Phi s_2 \\ \end{array}\right])x_{E3}(t)\\ =-s_2^{-1}\left[\begin{array}{ccc} -\Phi s_{11} & -\Phi s_{12} & m_2s_2-\Phi s_2 \\ \end{array}\right]x_{E3}(t)\\ =-\left[\begin{array}{ccc} -\Phi m_1 & -\Phi m_2 & m_2-\Phi \\ \end{array}\right] \underbrace{ \left[\begin{array}{ccc} 0 & 0 & 1 \\ 1 & 0 & 0 \\ 0 & 1 & 0  \end{array}\right] }_{S_E^{-1}} \underbrace{ \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right] }_{x_{E2}(t)}\\ =-\underbrace{ \left[\begin{array}{cc} -\Phi m_2 & m_2-\Phi \\ \end{array}\right] }_{F}{\dot x}(t)+\underbrace{m_1(-\Phi)}_{F_I}(r-y(t))\\ \Rightarrow u_\ell(t)=-Fx(t)+F_I\int_0^t (r-y(\tau))d\tau \end{array} }

\displaystyle{(226)\quad \begin{array}{l} p_2\Phi+\Phi^Tp_2=-1\Rightarrow p_2=-\frac{1}{2}\Phi \end{array} }

\displaystyle{(237)\quad  \begin{array}{l} {\dot u}_n(t) =-s_2^{-1}\rho\, {\rm sgn}(\underbrace{-\frac{1}{2}\Phi}_{p_2} \underbrace{ \left[\begin{array}{ccc} s_{11} & s_{12} & s_2 \end{array}\right] }_{S} \underbrace{ \left[\begin{array}{ccc} 0 & 0 & 1 \\ 1 & 0 & 0 \\ 0 & 1 & 0  \end{array}\right] }_{S_E^{-1}} \underbrace{ \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right] }_{x_{E2}(t)})\\ =s_2^{-1}\rho\, {\rm sgn}(\frac{1}{2}\Phi \left[\begin{array}{ccc} s_{12} & s_2 & s_{11}  \end{array}\right] \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right])\\ =\rho\, {\rm sgn}(\frac{1}{2}\Phi \left[\begin{array}{ccc} m_2 & 1 & m_1  \end{array}\right] \left[\begin{array}{c} {\dot x}(t) \\ y(t)-r \end{array}\right])\\ =\rho\, {\rm sgn}(-\underbrace{\frac{1}{2}(-\Phi) \left[\begin{array}{cc} m_2 & 1  \end{array}\right] }_{G}{\dot x}(t)+\underbrace{\frac{1}{2}m_1(-\Phi)}_{G_I} (r-y(t)))\\ \Rightarrow u_n(t)=\rho\,\int_0^t\underbrace{{\rm sgn}(-G{\dot x}(\tau)+G_I(r-y(\tau)))}_{0,\pm 1}d\tau \end{array} }

m_1=m_2=1, \Phi=-0.5の場合のシミュレーション結果を次に示します。

演習…Flipped Classroom

MATLAB
%cCIP_smci2.m
%-----
 clear all, close all
 global mc m ell g th0
 mc=1; m=0.1; ell=0.2; g=9.8;
 ths=0 %input('ths   = <0,180> ')/180*pi;
 th0=3/180*pi %input('th(0) = <0,180> ')/180*pi;
%-----
 A=[zeros(2,2) eye(2);zeros(2,4)];
 A(3,1)=0; 
 A(3,2)=-3*m*g/(m+4*mc); 
 A(4,1)=0; 
 A(4,2)=3*(m+mc)*g/((m+4*mc)*ell);  
 B=zeros(4,1);
 B(3)=4/(m+4*mc);
 B(4)=-3/((m+4*mc)*ell); 
%-----
 Tcart=1; Mr=0.5;
 Tpend=1/4*2*pi*sqrt(4/3*ell/g); Mth=3/180*pi;
 Tamp=0.01; Mamp=10; 
 CM=eye(2,4); DM=zeros(2,1);
 CS=[1 0]; C=CS*CM; D=CS*DM;
 n=size(A,1); m=size(C,1); r=size(B,2);
%-----
 AE=[A B;zeros(m,n+m)];
 BE=[zeros(n,m);eye(m)];
 SE=[A B;C D];
 CE=eye(n+m);
 QE=diag([1/Mr 1/Mth Tcart/Mr Tpend/Mth 1/Mamp].^2);
 S=swflqr(AE,BE,QE)
%-----
 Phi=-0.5;
 P2=0.5*inv(-Phi);
 Check=P2*Phi+Phi*P2
 P2S=P2*S/SE;
 G=P2S(1:4)
 GI=P2S(5) 
 Leq=inv(S*BE)*S*AE;
 LPhi=-inv(S*BE)*Phi*S;
 L=(Leq+LPhi)/SE;
 F=L(1:4)
 FI=L(5)
 rho=1;
 Ln=inv(S*BE)*rho
%-----
 x0=[0;th0*0;0;0];
 sim('CIP_smci2_2015a.mdl')
%-----
%eof
SCILAB