状態観測器:システムの状態を推定する技術
状態観測器とは、
制御理論において、システムの内部状態を推定するためのモデルです。システムへの
入力と出力の観測値から、システム内部の状態を推測します。多くの場合、コンピュータ上で数学的なモデルとして実装され、制御システムの設計において重要な役割を果たします。
状態観測器の必要性
現実世界のシステムでは、内部状態を直接観測できないことが多くあります。例えば、トンネル内を走行する自動車を考えると、トンネルの出入り口での速度や加速度は計測できますが、トンネル内部の状態は直接観測できません。しかし、内部状態はシステムの出力に影響を与えています。状態観測器は、このような状況下でも、システムの内部状態を推定することを可能にします。
システムの状態が分かれば、安定化などの
制御理論上の様々な問題を解決することができます。特に、状態
フィードバック制御では、システムの状態を直接利用して制御
入力を決定するため、状態観測器は不可欠な要素となります。
可観測性
システムが「可観測」であるとは、システムの出力のみを用いて、状態観測器によってシステムの状態を完全に再構築できることを意味します。すべてのシステムが可観測であるとは限りません。可観測でないシステムに対しては、特別な手法が必要になります。
典型的な観測モデル
多くの物理システムは、離散時間モデルで次のように表現できます。
状態方程式: x(k+1) = Ax(k) + Bu(k)
出力方程式: y(k) = Cx(k) + Du(k)
ここで、
k は時刻
x(k) は時刻 k におけるシステムの状態ベクトル
u(k) は時刻 k におけるシステムへの
入力ベクトル
y(k) は時刻 k におけるシステムの出力ベクトル
A, B, C, D はシステムの特性を表す行列
これらの式は、システムの現在の状態と
入力から、次の状態と出力を決定できることを示しています。連続時間システムでも同様の表現が可能です。システムが可観測であれば、出力 y(k) を用いて状態観測器で状態 x(k) を推定できます。
Luenberger観測器
Luenberger観測器は、状態観測器の代表的な手法です。システムの状態を推定する際、観測値と推定値の差(観測誤差)を利用して、推定値を修正していきます。
Luenberger観測器の状態方程式は、次のようになります。
観測器の状態方程式: x^(k+1) = Ax^(k) + L(y(k) - y^(k)) + Bu(k)
観測器の出力方程式: y^(k) = Cx^(k) + Du(k)
ここで、
x^(k) は時刻 k における状態の推定値
y^(k) は時刻 k における出力の推定値
L は観測器のゲイン行列
Luenberger観測器は、観測誤差 e(k) = x^(k) - x(k) が時間とともにゼロに収束するように、ゲイン行列 L を設計します。この収束条件は、行列 (A - LC) のすべての固有値の実部が負であることで満たされます。
制御システムでは、観測器の出力を利用してシステムを制御します。例えば、
フィードバックゲイン行列 K を用いて、制御
入力 u(k) = -Kx^(k) を設計できます。この場合、観測器の状態方程式は、次のように修正されます。
修正された観測器の状態方程式: x^(k+1) = (A - BK)x^(k) + L(y(k) - y^(k))
修正された観測器の出力方程式: y^(k) = (C - DK)x^(k)
分離原理
制御理論における分離原理によると、制御ゲイン行列 K と観測器ゲイン行列 L は、独立に設計できます。一般的に、観測器の収束速度は、制御システムの収束速度よりも速く設計されます。
まとめ
状態観測器は、システムの状態を推定し、制御に利用する重要な技術です。Luenberger観測器は、その代表的な手法であり、多くの応用において有効です。可観測性、安定性といった概念を理解することで、より高度な制御システムの設計が可能になります。