状態観測器

提供: testwiki
ナビゲーションに移動 検索に移動

テンプレート:Expand English 状態観測器: state observer)とは、制御理論において実システムの内部状態を推定するためのモデルを与えるもので、実システムの入力出力の測定から得られる。通常、コンピュータ上で数学的モデルとして実装する。

システムの状態を知ることで、制御理論上の様々な問題を解くことができる。例えば、状態フィードバックを使うことでシステムを安定化させることができる。多くの実際のケースでは、単に外部から観測しただけではシステムの状態を決定することはできない。それでも、内部状態の影響はシステムの出力に存在している。例えば、トンネルの中の自動車を考えたとき、トンネルに入ったときと出たときの速度と加速度は直接観測できるが、トンネル内の状態は推測するしかない。システムが「可観測 (observable)」であるとは、状態観測器を使って出力を測定することでシステムの状態を完全に再構築できることを言う。

典型的な観測モデル

物理的システムや装置の状態は、次を満たすと仮定する。

𝐱(k+1)=A𝐱(k)+B𝐮(k)
𝐲(k)=C𝐱(k)+D𝐮(k)

ここで、k は時刻、𝐱(k) は装置の状態、𝐮(k) は入力、𝐲(k) は出力である。これらの式は、装置の現在の出力と将来の状態はどちらも現在の状態と現在の入力からのみ決定されるということを示している。これらは離散的に表現しているが、連続なシステムでも同様の式が成り立つ。このシステムが可観測であれば、その出力 𝐲(k) を使って状態観測器で状態を示すことができる。

物理的システムの観測器モデルは一般に上記の式から導出される。装置の入力と出力の観測値を逐次的に受け取ったときに、モデルの状態を装置の状態に収束させるために、追加の項を付与することもある。特に観測器の出力を装置の出力から引いて、それに行列 L をかけた項を加算することがある。このような状態観測器を「ルーエンバーガー (Luenberger) 観測器」と呼び、次に示す式で表される。ここでは、状態観測器の変数を物理的システムの上記の式に現れる変数と区別するため、𝐱^(k) および 𝐲^(k) のように表記する。

𝐱^(k+1)=A𝐱^(k)+L[𝐲(k)𝐲^(k)]+B𝐮(k)
𝐲^(k)=C𝐱^(k)+D𝐮(k)

k としたときに観測誤差 𝐞(k)=𝐱^(k)𝐱(k) がゼロに収束するなら、観測器は漸近安定であるという。ルーエンバーガー観測器では、観測誤差について 𝐞(k+1)=(ALC)𝐞(k) が成り立つ。従って行列 ALC の全ての固有値の実数部が負であれば(連続の場合はフルビッツ行列)、ルーエンバーガー観測器は漸近安定である。

制御目的で、観測器システムの出力は利得行列 K を通して観測器と装置の両方の入力にフィードバックされる。

𝐮(𝐤)=K𝐱^(k)

すると、観測器の式は次のようになる。

𝐱^(k+1)=A𝐱^(k)+L(𝐲(k)𝐲^(k))BK𝐱^(k)
𝐲^(k)=C𝐱^(k)DK𝐱^(k)

これを整理すると次のようになる。

𝐱^(k+1)=(ABK))𝐱^(k)+L(𝐲(k)𝐲^(k))
𝐲^(k)=(CDK)𝐱^(k)

制御理論の分離原理によれば、システム全体の安定性を損なうことなく、独立に KL を選ぶことができる。一般に、観測器 ALC の極はシステム ABK の極より10倍早く収束するものを選ぶ。

関連項目

参考文献

テンプレート:制御理論