1次系の追値制御

1次系の追値制御…Homework

[1] 定値外乱wをもつ1次系

\displaystyle{(1)\quad \boxed{\dot{x}(t)=ax(t)+bu(t)+w}}

を考えます。これに状態フィードバック

\displaystyle{(2)\quad u(t)=-fx(t)}

を行うと、閉ループ系は

\displaystyle{(3)\quad \dot{x}(t)=(a-bf)x(t)+w}

となります。この時間応答は

(4)\quad \begin{array}{l} \displaystyle{x(t)=e^{(a-bf)t}x(0)+\int_0^t e^{(a-bf)(t-\tau)}w\,d\tau}\\ \displaystyle{=e^{(a-bf)t}x(0)+\left[\frac{1}{-(a-bf)}e^{(a-bf)(t-\tau)}w\right]_0^t}\\ \displaystyle{=e^{(a-bf)t}x(0)+\frac{w}{-(a-bf)}(1-e^{(a-bf)t})}\\ \displaystyle{\rightarrow \frac{w}{-(a-bf)}\ne 0 \quad (t\rightarrow\infty)} \end{array}

となり、平衡状態への復帰はできないことがわかります。そこで、フィードフォワード項をもつ状態フィードバック

\displaystyle{(5)\quad u(t)=-fx(t)+v(t)}

を行うと、閉ループ系は

\displaystyle{(6)\quad \dot{x}(t)=(a-bf)x(t)+bv(t)+w,\ a-bf<0}

となり、この時間応答は

\displaystyle{(7)\quad x(t)=e^{(a-bf)t}x(0)+\int_0^t e^{(a-bf)\tau} \underbrace{(bv(t)+w)}_{to\ be\ 0}\,dt}

で表されます。ここで、フィードフォワード項を

\displaystyle{(8)\quad v(t)=-\frac{1}{b}w}

と定めれば、定値外乱の影響を除去できます。しかしながら、ここでは外乱は一定であることはわかっているが、その値までは分からないと仮定して話を進めていきます。したがって、外乱の値wを推定する仕組みを工夫する必要があります。

いま、その仕組みとして、積分動作

\displaystyle{(9)\quad \dot{x}_I(t)=x(t)\quad (x_I(0)=0)}

を加えた状態フィードバック

\displaystyle{(10)\quad {u(t)=-fx(t)\underbrace{-f_Ix_I(t)}_{+v(t)}=-fx(t)-f_I\int_0^tx(\tau)d\tau}}

を考えます。これによる閉ループ系は

\displaystyle{(11)\quad {\underbrace{ \left[\begin{array}{cc} \dot{x}(t) \\ \dot{x}_I(t) \end{array}\right] }_{\dot{x}_E} = \underbrace{ \left[\begin{array}{cc} a-bf & -bf_I \\ 1 & 0 \end{array}\right] }_{A_{EF}} \underbrace{ \left[\begin{array}{cc} x(t) \\ x_I(t) \end{array}\right] }_{x_E} + \underbrace{ \left[\begin{array}{cc} w \\ 0 \end{array}\right] }_{w_E}} }

となります。ここで、A_{EF}の特性方程式は

\displaystyle{(12)\quad {\rm det}(\lambda I_2-A_{EF})=\lambda^2-\underbrace{(a-bf)}_{<0}\lambda+bf_I}=0

ですが、その解が複素左半平面に含まれるように、ff_Iを適切に選んでおきます。

<このパートは最初は読み飛ばして結構です>
このとき閉ループ系の時間応答は、A_{EF}が正則行列なので

\displaystyle{(13)\quad \int\exp(A_{EF}t)\,dt=A_{EF}^{-1}\exp(A_{EF}t)=\exp(A_{EF}t)A_{EF}^{-1}}}

に注意して、次のように計算できます。

(14)\quad \begin{array}{l} \displaystyle{x_E(t)=\exp(A_{EF}t)x_E(0)+\int_0^t\exp(A_{EF}(t-\tau))w_E\,d\tau}\\ \displaystyle{=\exp(A_{EF}t)x_E(0)+\left[-\exp(A_{EF}(t-\tau))A_{EF}^{-1}w_E\right]_0^t}\\ \displaystyle{=\exp(A_{EF}t)x_E(0)-(I_2-\exp(A_{EF}t))A_{EF}^{-1}w_E}\\ \displaystyle{=\exp(A_{EF}t)(x_E(0)+A_{EF}^{-1}w_E)-A_{EF}^{-1}w_E}\\ \displaystyle{\rightarrow -A_{EF}^{-1}w_E \quad (t\rightarrow\infty)} \end{array}

したがって、t\rightarrow\inftyのとき、次式が成り立ちます。

(15)\quad \begin{array}{l} \displaystyle{\left[\begin{array}{cc} x(t) \\ x_I(t) \end{array}\right] \rightarrow - \left[\begin{array}{cc} a-bf & -bf_I \\ 1 & 0 \end{array}\right]^{-1} \left[\begin{array}{cc} w \\ 0 \end{array}\right]}\\ \displaystyle{ = -\frac{1}{bf_I} \left[\begin{array}{cc} 0 & bf_I \\ -1 & a-bf \end{array}\right] \left[\begin{array}{cc} w \\ 0 \end{array}\right] = \left[\begin{array}{cc} 0 \\ \frac{1}{bf_I}w \end{array}\right]} \end{array}

\displaystyle{(16)\quad u(t)\rightarrow-fx(\infty)-f_Ix_I(\infty)=-\frac{1}{b}w}

すなわち、積分動作をもつ状態フィードバック(10)により、定値外乱の影響を受けずに、平衡状態に復帰できていることが確かめられます。

定値外乱wをもつ1次系(1)に対して、制御目的

\displaystyle{(17)\quad \boxed{x(t)-r_c\rightarrow 0\quad(t\rightarrow\infty)}}

を達成するために(r_c目標値)、上述の積分動作を次のように変えてみます。

\displaystyle{(18)\quad \boxed{\dot{x}_I(t)=x(t)-r_c\quad (x_I(0)=0)}}

これを加えた状態フィードバック

\displaystyle{(19)\quad \boxed{u(t)=-fx(t)\underbrace{-f_Ix_I(t)}_{+v(t)}=-fx(t)-f_I\int_0^t(x(\tau)-r_c)d\tau} }

による閉ループ系は

\displaystyle{(20)\quad \boxed{\underbrace{ \left[\begin{array}{cc} \dot{x}(t) \\ \dot{x}_I(t) \end{array}\right] }_{\dot{x}_E} = \underbrace{ \left[\begin{array}{cc} a-bf & -bf_I \\ 1 & 0 \end{array}\right] }_{A_{EF}} \underbrace{ \left[\begin{array}{cc} x(t) \\ x_I(t) \end{array}\right] }_{x_E} + \underbrace{ \left[\begin{array}{cc} w \\ -r_c \end{array}\right] }_{w_E}} }

となるので、t\rightarrow\inftyのとき、次式が成り立ちます。

\displaystyle{(21)\quad \begin{array}{l} \displaystyle{\left[\begin{array}{cc} x(t) \\ x_I(t) \end{array}\right] \rightarrow - \left[\begin{array}{cc} a-bf & -bf_I \\ 1 & 0 \end{array}\right]^{-1} \left[\begin{array}{cc} w \\ -r_c \end{array}\right]}\\ \displaystyle{= -\frac{1}{bf_I} \left[\begin{array}{cc} 0 & bf_I \\ -1 & a-bf \end{array}\right] \left[\begin{array}{cc} w \\ -r_c \end{array}\right] = \left[\begin{array}{cc} r_c \\ \frac{1}{bf_I}w+\frac{a-bf}{bf_I}r_c \end{array}\right]} \end{array} }

\displaystyle{(22)\quad u(t) \rightarrow -f\underbrace{r_c}_{x(\infty)}-f_I\underbrace{(\frac{1}{bf_I}w+\frac{a-bf}{bf_I}r_c)}_{x_I(\infty)} =-\frac{1}{b}(w+ar_c) }

すなわち、積分動作をもつ状態フィードバック(19)により、定値外乱の影響を受けずに、制御目的(17)を達成できていることが確かめられます。

(21)から次式を得ます。

\displaystyle{(23)\quad  -f_Ix_I(t)\rightarrow -\frac{1}{b}w\underbrace{-\frac{a-bf}{b}}_{f_r}r_c}

これから第2項f_rr_cを、図2のように、フィードフォワードしておくことが考えられます。


図1 積分動作を加えた状態フィードバックによる閉ループ系

a=-1b=1w=0r_c=1f=1f_I=1として、次のシミュレーション結果を得ます。

図2 図1のシミュレーション例

演習A04-1…Flipped Classroom

図2のグラフを描け。

MATLAB
%a04_1.m
 clear all, close all
 a=1; b=1; c=1; w=0; rc=1; 
 f=3; fI=1; fr=-(a-b*f)/b;
 AFE=[a-b*f -b*fI;
      1      0];
 wE=[w;-rc];
 sys=ss(AFE,wE,[eye(2);-f -fI],[]);
 wE2=[w-(a-b*f);-rc];
 sys2=ss(AFE,wE2,[eye(2);-f -fI],[]);
 x0=[0;0]; 
 t=0:0.1:5;
 u=ones(1,length(t));
 lsim(sys,sys2,u,t,x0)
 grid
 legend('without feed forward','with feed forward')
 title('Tracking Control of 1st-order System')
 xlabel('time')
 ylabel('u(t), xI(t) and x(t)')
%eof
SCILAB
coming soon

[2] 定値外乱wをもつ1次系

\displaystyle{(24)\quad \left\{\begin{array}{lll} \dot{x}(t)=ax(t)+bu(t)+w,\ x(0)\ne0\\ y(t)=cx(t) \end{array}\right. }

に対して、制御目的

\displaystyle{(25)\quad y(t)-r_c\rightarrow 0\quad(t\rightarrow\infty)}

を達成するために(r_cは目標値)、積分動作

\displaystyle{(26)\quad \dot{x}_I(t)=y(t)-r_c\quad (x_I(0)=0)}

を加えた状態フィードバック

\displaystyle{(27)\quad u(t)=-fx(t)-f_I\int_0^t(y(\tau)-r_c)d\tau }

を考えます。これは、実際には、状態オブザーバ

\displaystyle{(28)\quad \dot{\hat{x}}(t)=(a-hc)\hat{x}(t)+bu(t)+hy(t),\ \hat{x}(0)=0 }

によって推定された状態\hat{x}を用いて

\displaystyle{(29)\quad u(t)=-f\hat{x}(t)-f_Ix_I(t) }

を実施することになります。この積分動作を加えたオブザーバベースコントローラは、(29)を(28)に代入した

\displaystyle{(30)\quad \dot{\hat{x}}(t)=(a-hc-bf)\hat{x}(t)-bf_Ix_I(t)+hy(t) }

と、(26)を合わせて、つぎのように表されます。

\displaystyle{(31)\quad \boxed{ \begin{array}{l} \left[\begin{array}{c} \dot{\hat{x}}(t) \\ \dot{x}_I(t) \end{array}\right] = \underbrace{ \left[\begin{array}{cc} a-hc-bf & -bf_I \\ 0 & 0 \end{array}\right] }_{A_K} \left[\begin{array}{c} \hat{x}(t) \\ x_I(t) \end{array}\right] + \underbrace{ \left[\begin{array}{cc} h & 0\\ 1 & -1 \end{array}\right] }_{B_K} \left[\begin{array}{c} y(t) \\ r_c \end{array}\right]\\ u(t)= \underbrace{- \left[\begin{array}{cc} f & f_I \end{array}\right] }_{C_K} \left[\begin{array}{c} \hat{x}(t) \\ x_I(t) \end{array}\right] \end{array}} }

これによる閉ループ系は、(27)を(24)に代入した

\displaystyle{(32)\quad \dot{x}(t)=ax(t)-bf\hat{x}(t)-bf_Ix_I(t)+w(t) }

と、(26)、(30)を合わせて

\displaystyle{(33)\quad \left[\begin{array}{c} \dot{x}(t) \\ \dot{x}_I(t) \\ \dot{\hat{x}}(t) \end{array}\right] = \left[\begin{array}{ccc} a & -bf_I & -bf \\ c & 0 & 0 \\ hc & -bf_I & a-hc-bf \end{array}\right] \left[\begin{array}{c} x(t) \\ x_I(t) \\ \hat{x}(t) \end{array}\right] + \left[\begin{array}{c} w \\ -r_c \\ 0 \end{array}\right] }

のように表されます。そのブロック線図を図3に示します。

いま、閉ループ系(33)に、座標変換

\displaystyle{(34)\quad \left[\begin{array}{c} x(t) \\ x_I(t) \\ e(t) \end{array}\right] = \left[\begin{array}{ccc} 1 & 0 & 0 \\ 0 & 1 & 0 \\ -1 & 0 & 1 \end{array}\right] \left[\begin{array}{c} x(t) \\ x_I(t) \\ \hat{x}(t) \end{array}\right] }

を行えば

\displaystyle{(35)\quad \boxed{ \left[\begin{array}{c} \dot{x}(t) \\ \dot{x}_I(t) \\\hline \dot{e}(t) \end{array}\right] = \underbrace{ \left[\begin{array}{cc|c} a-bf & -bf_I & -bf \\ c & 0 & 0 \\\hline 0 & 0 & a-hc \end{array}\right] }_{ A_{EF}'= \left[\begin{array}{c|c} A_{EF} & - \left[\begin{array}{cc} bf \\ 0 \end{array}\right] \\[5mm] \hline 0 & \widehat{a} \end{array}\right] } \left[\begin{array}{c} x(t) \\ x_I(t) \\\hline e(t) \end{array}\right] + \left[\begin{array}{c} w \\ -r_c \\\hline -w \end{array}\right]} }

となります。オブザーバの誤差方程式が分離されており、f,f_Ihを独立に設計してもよいことが分かります。

ここで、A_{EF}の特性方程式の解は左半平面にあるとすると、(35)より、t\rightarrow\inftyのとき、次式が成り立ちます。

\displaystyle{(36)\quad \left[\begin{array}{c} x(t) \\ x_I(t) \\\hline e(t) \end{array}\right] \ \rightarrow\ \underbrace{ \left[\begin{array}{c|c} A_{EF}^{-1} & -A_{EF}^{-1} \left[\begin{array}{cc} bf \\ 0 \end{array}\right] \widehat{a}^{-1} \\[5mm]\hline 0 & \widehat{a}^{-1} \end{array}\right] }_{A_{EF}'\,^{-1}} \left[\begin{array}{c} -w \\ r_c \\\hline w \end{array}\right] \quad (t\rightarrow\infty) }

すなわち

\displaystyle{(37)\quad \begin{array}{l} \displaystyle{\left[\begin{array}{cc} x(t) \\ x_I(t) \end{array}\right] \rightarrow \left[\begin{array}{cc} a-bf & -bf_I \\ c & 0 \end{array}\right]^{-1} \left[\begin{array}{cc} -w-bf\widehat{a}^{-1}w\\ r_c \end{array}\right]}\\ \displaystyle{= \frac{1}{cbf_I} \left[\begin{array}{cc} 0 & bf_I \\ -c & a-bf \end{array}\right] \left[\begin{array}{cc} -w-bf\widehat{a}^{-1}w\\ r_c \end{array}\right]}\\ \displaystyle{= \left[\begin{array}{cc} \frac{1}{c}r_c \\ \frac{1}{bf_I}w+\frac{1}{f_I}f\widehat{a}^{-1}w+\frac{a-bf}{cbf_I}r_c \end{array}\right]} \end{array} }

\displaystyle{(38)\quad e(t) \rightarrow \widehat{a}^{-1}w }

したがって

\displaystyle{(39)\quad y(t)=cx(t) \rightarrow r_c }
\displaystyle{(40)\quad \begin{array}{l} u(t) \rightarrow -f\underbrace{\frac{1}{c}r_c}_{x(\infty)} -f_I\underbrace{(\frac{1}{bf_I}w+\frac{1}{f_I}f\widehat{a}^{-1}w+\frac{a-bf}{cbf_I}r_c)}_{x_I(\infty)}\\ =-\frac{1}{b}(w+\frac{a}{c}r_c)-f\widehat{a}^{-1}w \end{array} }

を得ます。したがって、定値外乱が存在するときは状態オブザーバに関して定常偏差が残るにもかかわらず、制御目的(24)が成り立つことがわかります。

図3 積分動作を加えたオブザーバベースコントローラによる閉ループ系

1次系のLQI制御…Homework

[3] 定値外乱wをもつ1次系(23)に対して、制御目的(24)を達成するための制御則として、積分動作(25)をもつ安定化状態フィードバック(26)を考えます。これによる閉ループ系

\displaystyle{(41)\quad \underbrace{ \left[\begin{array}{cc} \dot{x}(t) \\ \dot{x}_I(t) \end{array}\right] }_{\dot{x}_E(t)} = \underbrace{ \left[\begin{array}{cc} a-bf & -bf_I \\ c & 0 \end{array}\right] }_{A_{EF}} \underbrace{ \left[\begin{array}{cc} x(t) \\ x_I(t) \end{array}\right] }_{x_E(t)} + \underbrace{ \left[\begin{array}{cc} w \\ -r_c \end{array}\right] }_{w_E} }

に対して、評価関数

\displaystyle{(42)\quad J=\int_0^\infty(q^2x^2(t)+r^2u^2(t))\,dt}

を最小化するように ff_I を決めるLQI制御問題を考えます。いま、出力方程式

\displaystyle{(43)\quad \underbrace{ \left[\begin{array}{cc} qx(t)\\ ru(t) \end{array}\right] }_{y_{E}(t)} = \underbrace{ \left[\begin{array}{cc} q & 0 \\ -rf & -rf_I \end{array}\right] }_{C_{E}} \underbrace{ \left[\begin{array}{cc} x(t) \\ x_I(t) \end{array}\right] }_{x_{E}(t)} }

を定義すると、閉ループ系の応答は

<このパートは最初は読み飛ばして結構です>
\displaystyle{(44)\quad x_E(t)=\exp(A_{EF}t)(x_E(0)+A_{EF}^{-1}w_E)-A_{EF}^{-1}w_E }

より

\displaystyle{(45)\quad y_{E}(t)= C_{E}\exp(A_{EF}t) (x_E(0)+A_{EF}^{-1}w_E) - C_{E}A_{EF}^{-1}w_E }

となります。ここで、第2項の定数項があるので、評価関数

\displaystyle{(46)\quad J=\int_0^\infty\underbrace{(q^2y^2(t)+r^2u^2(t))}_{y^T_{E}(t)y_{E}(t)}\,dt }

は発散してしまいます(そもそも外乱は未知としますので計算もできません)。

そこで、定値外乱が抑制されているときは、平衡状態(x=0)はx_\infty=r_cに、平衡入力(u=0)はu_\infty=-\frac{1}{b}(w+ar_c)に変わっていることに注意し、これとの差を表す状態方程式を考えます。まず定値外乱抑制前の状態方程式は(1)と(2)を合わせて

\displaystyle{(47)\quad \underbrace{\frac{d}{dt} \left[\begin{array}{cc} x(t) \\ 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}{cc} x(t) \\ x_I(t) \end{array}\right] }_{x_E(t)} + \underbrace{ \left[\begin{array}{cc} b \\ 0 \end{array}\right] }_{B_E} u(t) + \underbrace{ \left[\begin{array}{cc} w \\ -r_c \end{array}\right] }_{w_E} }

となります。また、定値外乱抑制後には

\displaystyle{(48)\quad \underbrace{\frac{d}{dt} \left[\begin{array}{cc} x_\infty \\ x_{I\infty} \end{array}\right] }_{\dot{x}_{E\infty}=0} = \underbrace{ \left[\begin{array}{cc} a & 0 \\ c & 0 \end{array}\right] }_{A_E} \underbrace{ \left[\begin{array}{cc} x_\infty \\ x_{I\infty} \end{array}\right] }_{x_{E\infty}} + \underbrace{ \left[\begin{array}{cc} b \\ 0 \end{array}\right] }_{B_E} u_\infty + \underbrace{ \left[\begin{array}{cc} w \\ -r_c \end{array}\right] }_{w_E} }

が成り立ちます。両者を辺々引き算して

\displaystyle{(49)\quad \boxed{ \underbrace{\frac{d}{dt} \left[\begin{array}{cc} 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}{cc} x(t)-x_\infty \\ x_I(t)-x_{I\infty} \end{array}\right] }_{x_{E1}(t)} + \underbrace{ \left[\begin{array}{cc} b \\ 0 \end{array}\right] }_{B_{E1}} \underbrace{(u(t)-u_\infty)}_{u_{E1}(t)}} }

となります。これを偏差系E1と呼ぶことにします。これに安定化状態フィードバック

\displaystyle{(50)\quad \underbrace{u(t)-u_\infty}_{u_{E1}(t)} =- \underbrace{ \left[\begin{array}{cc} f & f_I \end{array}\right] }_{F_E} \underbrace{ \left[\begin{array}{cc} x(t)-x_\infty \\ x_I(t)-x_{I\infty} \end{array}\right] }_{x_{E1}(t)} }

を行った閉ループ系は

\displaystyle{(51)\quad \underbrace{\frac{d}{dt} \left[\begin{array}{cc} x(t)-x_\infty \\ x_I(t)-x_{I\infty} \end{array}\right] }_{\dot{x}_{E1}(t)} = \underbrace{ \left[\begin{array}{cc} a-bf & -bf_I \\ c & 0 \end{array}\right] }_{A_{EF}} \underbrace{ \left[\begin{array}{cc} x(t)-x_\infty \\ x_I(t)-x_{I\infty} \end{array}\right] }_{x_{E1}(t)} }

となります。いま出力方程式

\displaystyle{(52)\quad \underbrace{ \left[\begin{array}{cc} q(x(t)-x_\infty) \\ r(u(t)-u_\infty) \end{array}\right] }_{y_{E1}(t)} = \underbrace{ \left[\begin{array}{cc} q & 0 \\ -rf & -rf_I \end{array}\right] }_{C_{E1}} \underbrace{ \left[\begin{array}{cc} x(t)-x_\infty \\ x_I(t)-x_{I\infty} \end{array}\right] }_{x_{E1}(t)} }

を定義して、評価関数

\displaystyle{(53)\quad J=\int_0^\infty\underbrace{(q^2(x(t)-x_\infty)^2+r^2(u(t)-u_\infty)^2)}_{y^T_{E1}(t)y_{E1}(t)}\,dt }

を最小化して、(50)のフィードバックゲインff_Iを決める制御方式を偏差系E1に基づくLQI制御と呼びます。

さて、偏差系E1すなわち(49)の両辺を微分すると2つめの偏差系E2

\displaystyle{(54)\quad \boxed{ \underbrace{\frac{d}{dt} \left[\begin{array}{cc} \dot{x}(t) \\ x(t)-r_c \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}{cc} \dot{x}(t) \\ x(t)-r_c \end{array}\right] }_{x_{E2}(t)} + \underbrace{ \left[\begin{array}{cc} b \\ 0 \end{array}\right] }_{B_{E2}} \underbrace{\dot{u}(t)}_{u_{E2}(t)}} }

を得ます。また(49)は次のように変形できることに注意します。

\displaystyle{(55)\quad \left[\begin{array}{cc} \dot{x}(t) \\ x(t)-r_c \end{array}\right] = \underbrace{ \left[\begin{array}{cc} a & b \\ c & 0 \end{array}\right] }_{S} \left[\begin{array}{cc} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }

これを(15)に代入すると

(56)\quad \begin{array}{l} \underbrace{ \left[\begin{array}{cc} a & b \\ c & 0 \end{array}\right] }_{S} \frac{d}{dt} \left[\begin{array}{cc} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right]=\\ \underbrace{ \left[\begin{array}{cc} a & 0 \\ 1 & 0 \end{array}\right] }_{A_{E2}} \underbrace{ \left[\begin{array}{cc} a & b \\ c & 0 \end{array}\right] }_{S} \left[\begin{array}{cc} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] + \underbrace{ \left[\begin{array}{cc} b \\ 0 \end{array}\right] }_{B_{E2}} \underbrace{\dot{u}(t)}_{u_{E2}(t)} \end{array}

この左からS^{-1}をかけると3つめの偏差系E3

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

を得ます。これに安定化状態フィードバック

\displaystyle{(58)\quad \underbrace{\dot{u}(t)}_{u_{E3}(t)} =- \underbrace{ \left[\begin{array}{cc} k & k_I \end{array}\right] }_{K_E} \underbrace{ \left[\begin{array}{cc} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{x_{E3}(t)} }

を行った閉ループ系は

\displaystyle{(59)\quad \underbrace{\frac{d}{dt} \left[\begin{array}{cc} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{\dot{x}_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} a & b \\ -k & -k_I \end{array}\right] }_{A_{EK}} \underbrace{ \left[\begin{array}{cc} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{x_{E3}(t)} }

となります。いま出力方程式

\displaystyle{(60)\quad \underbrace{ \left[\begin{array}{cc} q(x(t)-x_\infty) \\ r\dot{u}(t) \end{array}\right] }_{y_{E3}(t)} = \underbrace{ \left[\begin{array}{cc} q & 0 \\ 0 & r\frac{d}{dt} \end{array}\right] }_{C_{E3}} \underbrace{ \left[\begin{array}{cc} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }_{x_{E3}(t)} }

を定義して、評価関数

\displaystyle{(61)\quad J=\int_0^\infty\underbrace{(q^2(x(t)-x_\infty)^2+r^2\dot{u}^2(t))}_{y^T_{E3}(t)y_{E3}(t)}\,dt }

を最小化して、(59)のフィードバックゲインkk_Iを決めます。(55)を(59)に代入して

\displaystyle{(62)\quad \dot{u}(t) =- \underbrace{ \left[\begin{array}{cc} k & k_I \end{array}\right] }_{K_E} \underbrace{ \left[\begin{array}{cc} a & b \\ 1 & 0 \end{array}\right]^{-1} }_{S^{-1}} \left[\begin{array}{cc} \dot{x}(t) \\ x(t)-r_c \end{array}\right] =- \underbrace{ \left[\begin{array}{cc} f & f_I \end{array}\right] }_{F_E=K_ES^{-1}} \left[\begin{array}{cc} \dot{x}(t) \\ x(t)-r_c \end{array}\right] }

これを積分して

\displaystyle{(63)\quad u(t) =-fx(t)-f_I\int_0^t(x(\tau)-r_c)\,d\tau }

を得ます。このようにして(3)のフィードバックゲインff_Iを決める制御方式を偏差系E3に基づくLQI制御と呼びます。

[4] 以下に、偏差系E3をLQG制御により安定化して、積分動作を加えたオブザーバベース コントローラを構成する手順を示します。

アルゴリズム <1次系のLQGI制御>

入力パラメータ
a,\,b,\,c,\,q>0,\,r>0,\,\sigma>0,\,\rho>0
出力パラメータ
A_K,\,B_K,\,C_K

ステップ1: 偏差系の安定化

偏差系

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

を、状態フィードバック

\displaystyle{(65)\quad {\dot u}(t)=- \left[\begin{array}{cc} k & k_I \end{array}\right] \left[\begin{array}{c} x(t)-x_\infty \\ u(t)-u_\infty \end{array}\right] }

によるLQ制御で安定化します。その際、評価関数としては

\displaystyle{(66)\quad \int_0^\infty \left( q_1^2(x(t)-x_\infty)^2+ q_2^2(u(t)-u_\infty)^2+ r^2{\dot u}^2(t)\right)\,dt }

を用いる。さらに、ff_Iを、次式から計算します。

\displaystyle{(67)\quad \left[\begin{array}{cc} f & f_I \end{array}\right] = \left[\begin{array}{cc} k & k_I \end{array}\right] \left[\begin{array}{cc} a & b \\ c & 0 \end{array}\right]^{-1} }

ステップ2: オブザーバゲイン h の決定

\displaystyle{(68)\quad {\rm\bf FARE:\ }\displaystyle{-\frac{1}{\rho^2}c^2\Gamma^2+2a\Gamma+\sigma^2=0} \label{eq7.2.28}}

を解いて,\Gamma>0を求め,hをつぎのように定める。

\displaystyle{(69)\quad h=\frac{1}{\rho^2}c\Gamma \label{eq7.2.29}}

ステップ3: 積分動作を加えたオブザーバベース コントローラの構成

ff_Ihから、つぎを構成します。

\displaystyle{(70)\quad \begin{array}{l} \dot{x}_K(t)=A_Kx_K(t)+B_K \left[\begin{array}{c} y(t) \\ r_c \end{array}\right]\\ u(t)=C_Kx_K(t) \end{array} }

ただし

\displaystyle{(71)\quad \begin{array}{l} A_K= \left[\begin{array}{cc} a-hc-bf & -bf_I \\ 0 & 0 \end{array}\right]\\ B_K= \left[\begin{array}{cc} h & 0\\ 1 & -1 \end{array}\right]\\ C_K=- \left[\begin{array}{cc} f & f_I \end{array}\right] \end{array} }

この積分動作を加えたオブザーバベースコントローラによる制御方式をLQGI制御(LQG control with integral action)と呼びます。