状態観測器
状態観測器(英: state observer)とは、制御理論において実システムの内部状態を推定するためのモデルを与えるもので、実システムの入力と出力の測定から得られる。通常、コンピュータ上で数学的モデルとして実装する。
システムの状態を知ることで、制御理論上の様々な問題を解くことができる。例えば、状態フィードバックを使うことでシステムを安定化させることができる。多くの実際のケースでは、単に外部から観測しただけではシステムの状態を決定することはできない。それでも、内部状態の影響はシステムの出力に存在している。例えば、トンネルの中の自動車を考えたとき、トンネルに入ったときと出たときの速度と加速度は直接観測できるが、トンネル内の状態は推測するしかない。システムが「可観測 (observable)」であるとは、状態観測器を使って出力を測定することでシステムの状態を完全に再構築できることを言う。
特に観測器の出力を装置の出力から引いて、それに行列 L {\displaystyle L} をかけた項を加算することがある。このような状態観測器を「ルーエンバーガー (Luenberger) 観測器」と呼び、次に示す式で表される。ここでは、状態観測器の変数を物理的システムの上記の式に現れる変数と区別するため、 x ^ ( k ) {\displaystyle \mathbf {\hat {x}} (k)} および y ^ ( k ) {\displaystyle \mathbf {\hat {y}} (k)} のように表記する。
x ^ ( k + 1 ) = A x ^ ( k ) + L [ y ( k ) − y ^ ( k ) ] + B u ( k ) {\displaystyle \mathbf {\hat {x}} (k+1)=A\mathbf {\hat {x}} (k)+L\left[\mathbf {y} (k)-\mathbf {\hat {y}} (k)\right]+B\mathbf {u} (k)}
y ^ ( k ) = C x ^ ( k ) + D u ( k ) {\displaystyle \mathbf {\hat {y}} (k)=C\mathbf {\hat {x}} (k)+D\mathbf {u} (k)}
k → ∞ {\displaystyle k\rightarrow \infty } としたときに観測誤差 e ( k ) = x ^ ( k ) − x ( k ) {\displaystyle \mathbf {e} (k)=\mathbf {\hat {x}} (k)-\mathbf {x} (k)} がゼロに収束するなら、観測器は漸近安定であるという。ルーエンバーガー観測器では、観測誤差について e ( k + 1 ) = ( A − L C ) e ( k ) {\displaystyle \mathbf {e} (k+1)=(A-LC)\mathbf {e} (k)} が成り立つ。従って行列 A − L C {\displaystyle A-LC} の全ての固有値の実数部が負であれば(連続の場合はフルビッツ行列)、ルーエンバーガー観測器は漸近安定である。
制御目的で、観測器システムの出力は利得行列 K {\displaystyle K} を通して観測器と装置の両方の入力にフィードバックされる。
u ( k ) = − K x ^ ( k ) {\displaystyle \mathbf {u(k)} =-K\mathbf {\hat {x}} (k)}
すると、観測器の式は次のようになる。
x ^ ( k + 1 ) = A x ^ ( k ) + L ( y ( k ) − y ^ ( k ) ) − B K x ^ ( k ) {\displaystyle \mathbf {\hat {x}} (k+1)=A\mathbf {\hat {x}} (k)+L\left(\mathbf {y} (k)-\mathbf {\hat {y}} (k)\right)-BK\mathbf {\hat {x}} (k)}