C02 可到達条件

可到達条件…Homework

[1] 剛体振り子の状態方程式として次式を考えます。

\displaystyle{(1)\quad \left[\begin{array}{c} \dot{x}_1(t)\\ \dot{x}_2(t) \end{array}\right]= \left[\begin{array}{cc} x_2(t)\\ -a\sin x_1(t)+u(t) \end{array}\right] }

これに対して次のSMCを考えていました。

\displaystyle{(2)\quad u(t)=-\frac{s(t)}{|s(t)|} }

\displaystyle{(3)\quad s(t)=mx_1(t)+x_2(t) }

振り子を離す初期角度が小さければ容易にスライディング曲面に拘束されますが、大きな初期角度をつけて話すと一旦スライディング曲面に到達してもこれを突き抜けてしまう可能性があります(前節の図1と図2に示す状況です)。これは可到達条件

\displaystyle{(4)\quad \begin{array}{l} s(t)\dot{s}(t)< 0 \end{array} }

を満たしていないからと言えます。

そこで減衰力を与えるために状態フィードバックを加えてみます。

\displaystyle{(5)\quad u(t)=- \left[\begin{array}{cc} f_1 & f_2 \end{array}\right] \left[\begin{array}{cc} x_1(t)\\ x_2(t) \end{array}\right] -\rho\frac{s(t)}{|s(t)|} }

ここで、\rhoというパラメータも導入されており、高速スイッチングする操作入力の振幅を表しています。このとき、次式を得ます。

\displaystyle{(6)\quad \begin{array}{l} s(t)\dot{s}(t)=s(t)(m\dot{x}_1(t)+\dot{x}_2(t))\\ =s(t)(mx_2(t)-a\sin x_1(t)+u(t))\\ =s(t)(mx_2(t)-a\sin x_1(t)-f_1x_1(t)-f_2x_2(t)-\rho\frac{s(t)}{|s(t)|}) \end{array} }

ここで、f_1=0, f_2=mと選ぶと、-s(t)a\sin x_1(t)\le|s(t)|aに注意して

\displaystyle{(7)\quad \begin{array}{l} s(t)\dot{s}(t) =s(t)(-a\sin x_1(t)-\rho\frac{s(t)}{|s(t)|})\\ =-s(t)a\sin x_1(t)-\rho|s(t)|\\ <|s(t)|(a-\rho) \end{array} }

したがって、ある定数\eta>0に対して

\displaystyle{(8)\quad \begin{array}{l} a-\rho < -\eta \quad \Leftrightarrow \quad \rho > a+\eta \end{array} }

を満たす\rhoを選べば

\displaystyle{(9)\quad \begin{array}{l} s(t)\dot{s}(t)< -\eta|s(t)| \end{array} }

が成り立ちます。これを\eta-可到達条件と呼びます。

結局、制御則

\displaystyle{(10)\quad u(t)=- \left[\begin{array}{cc} 0 & m \end{array}\right] \left[\begin{array}{cc} x_1(t)\\ x_2(t) \end{array}\right] -\rho\frac{s(t)}{|s(t)|} }

を用いれば、スライディング直線に一旦到達すれば、以後は留まるようにできます。

図1 x_1(0)=3, x_2(0)=0のときの状態軌道

図2 x_1(0)=3, x_2(0)=0のとき、m=1,\rho=1の制御則(5)の下での状態軌道

●その到達時刻を見積もってみます。

\displaystyle{(11)\quad s(t)\dot{s}(t)< -\eta|s(t)| \quad\Leftrightarrow\quad \left\{\begin{array}{ll} \dot{s}(t)< -\eta & (s(t)>0)\\ \dot{s}(t)> -\eta & (s(t)<0) \end{array} \right. }

から

\displaystyle{(12)\quad \frac{1}{2}\frac{d}{dt}s^2(t)< -\eta|s(t)| \Rightarrow \frac{1}{2}\frac{d}{dt}|s(t)|^2=|s(t)|\frac{d}{dt}|s(t)|< -\eta|s(t)| \Rightarrow \frac{d}{dt}|s(t)|< -\eta }

両辺を積分すると

\displaystyle{(13)\quad \underbrace{|s(t_s)|}_0-|s(0)|< -\eta t_s \quad\Leftrightarrow\quad }\displaystyle{\quad { t_s\le \frac{|s(0)|}{\eta}} }

を得て、スライディング直線に到達する時刻t_sを見積もることができます。

[2] 高速スイッチングする操作入力の振幅\rhoは小さい方が望ましいといえます。ただ、(8)より\etaも小さくせざる得ず、このことはスライディング曲面に到達する速さに影響を与えます。そこで、もう一つ別のパラメータ\Phi>0を導入して、制御則を次のように変更してみます。

\displaystyle{(14)\quad { u(t)=- \left[\begin{array}{cc} m\Phi & m+\Phi \end{array}\right] \left[\begin{array}{cc} x_1(t)\\ x_2(t) \end{array}\right] -\rho\frac{s(t)}{|s(t)|}} }

このとき、(3)と(8)に注意して、次式を得ます。

\displaystyle{(15)\quad \begin{array}{l} s(t)\dot{s}(t)=s(t)(m\dot{x}_1(t)+\dot{x}_2(t))\\ =s(t)(mx_2(t)-a\sin x_1(t)+u(t))\\ =s(t)(mx_2(t)-a\sin x_1(t)-m\Phi x_1(t)-(m+\Phi)x_2(t)-\rho\frac{s(t)}{|s(t)|})\\ =-\Phi s(t)(m x_1(t)+x_2(t))-s(t)(a\sin x_1(t)+\rho\frac{s(t)}{|s(t)|})\\ \le -\Phi s^2(t)+|s(t)|(a-\rho)\\ < -\Phi s^2(t)-\eta |s(t)|\\ \end{array} }

これより

\displaystyle{(16)\quad s(t)\dot{s}(t)< -\Phi s^2(t) \quad \Leftrightarrow \quad \left\{\begin{array}{ll} \dot{s}(t)< -\Phi s(t) & (s(t)>0)\\ \dot{s}(t)> -\Phi s(t) & (s(t)<0) \end{array}\right. }

これは\Phi|s(t)|\rightarrow 0となる速さを決めていることを意味しています。

●ちなみに、計算の都合上、(14)の代わりにつぎのスイッチング方式が用いられます。

\displaystyle{(17)\quad u(t)=- \left[\begin{array}{cc} m\Phi & m+\Phi \end{array}\right] \left[\begin{array}{cc} x_1(t)\\ x_2(t) \end{array}\right] -\rho\frac{s(t)}{|s(t)|+\delta} }

ここで\delta>0は適切に選ばれた定数です。

図3 x_1(0)=3, x_2(0)=0のとき、m=1,\Phi=1,\rho=0.3の制御則(14)の下での状態軌道

演習…Flipped Classroom
1^\circ smc15.slxを用いて、図1、図2のシミュレーションを行え。
2^\circ smc16.slxを用いて、図3のシミュレーションを行え。

応用編2(SMC)目次