Main Content

estim

推定器ゲインを設定して、状態推定器を作成

構文

est = estim(sys,L)
est = estim(sys,L,sensors,known)

説明

est = estim(sys,L) はプラントの状態空間モデル sys と推定器ゲイン L を与えられた場合に、状態/出力推定器 est を生成します。sys の入力 w はすべて確率的 (プロセスおよび/または測定ノイズ) であり、すべての出力 y は測定値と見なされます。推定器 est は状態空間形式 (SS オブジェクト) で返されます。

連続時間プラントの sys を次の方程式で使用した場合

x˙=Ax+Bwy=Cx+Dw

estim は次の方程式を使用してプラント出力推定値 y^ と状態推定値 x^ を生成します。これは、それぞれ y(t)=C と x(t) の推定値です。

x^˙=Ax^+L(yCx^)[y^x^]=[CI]x^

次の方程式をもつ離散時間プラントの sys の場合、

x[n+1]=Ax[n]+Bw[n]y[n]=Cx[n]+Dw[n]

estim は連続時間の方程式に似た推定器方程式を使用して、プラント出力推定値 y[n|n1] と状態推定値 x[n|n1] を生成します。これは、それぞれ y[n] と x[n] の推定値です。これらの推定値は、y[n-1] までの過去の測定値に基づいています。

est = estim(sys,L,sensors,known) は、既知 (確定的) な入力 u と確率的な入力 w の両方と、測定された出力 y と非測定出力 z の両方をもつ、より一般化されたプラント sys を扱います。

x˙=Ax+B1w+B2u[zy]=[C1C2]x+[D11D21]w+[D12D22]u

インデックス ベクトルの sensorsknown は、sys のどの出力が観測され、(y)、sys のどの入力を既知 (u) にするかを指定します。次の式で表される推定器 est は、u と y の両方を使用して出力と状態推定値を生成します。

x^˙=Ax^+B2u+L(yC2x^D22u)[y^x^]=[C2I]x^+[D220]u

7 つの出力と 4 つの入力をもつ状態空間モデル sys を考えてみましょう。センサーの測定値にプラント出力 4、7、1 を使用し、既知の (確定的) 入力にプラント入力 1、4、3 を使用して、カルマン ゲイン行列 L を設計したとします。次のようにカルマン推定器を作成します。

sensors = [4,7,1];
known = [1,4,3];
est = estim(sys,L,sensors,known)

直接的なカルマン推定器設計については、関数 kalman を参照してください。

ヒント

関数 place (極配置) または関数 kalman (カルマン フィルター処理) を使用して、適切な推定器ゲイン L を設計できます。正確な推定値を確保するには、推定器の極 (A-LC の固有値) をプラントのダイナミクス (A の固有値) よりも速くする必要があります。

バージョン履歴

R2006a より前に導入

参考

| | | | | | (System Identification Toolbox) | (System Identification Toolbox)