Main Content

lqgreg

線形 2 次ガウシアン (LQG) レギュレーターの作成

構文

rlqg = lqgreg(kest,k)
rlqg = lqgreg(kest,k,controls)

説明

rlqg = lqgreg(kest,k) は、カルマン推定器 を kest、状態フィードバック ゲイン行列を k として、LQG レギュレーター rlqg (状態空間モデル) を返します。同じ関数で、連続時間と離散時間の両方の場合が処理されます。kestk の設計には同じツールを使用してください。

  • 連続プラントの連続レギュレーター: lqr または lqry および kalman を使用

  • 離散プラントの離散レギュレーター: dlqr または lqry および kalman を使用

  • 連続プラントの離散レギュレーター: lqrdkalmd を使用

離散時間の場合、lqgreg

  • レギュレーター u[n]=Kx^[n|n] を生成するのは、kest が "現在の" カルマン推定器の場合

  • レギュレーター u[n]=Kx^[n|n1] を生成するのは、kest が "遅延" カルマン推定器の場合

カルマン推定器の詳細は、kalman のリファレンス ページを参照してください。

rlqg = lqgreg(kest,k,controls) は、追加の既知のプラント入力 ud にアクセスする推定器を扱います。インデックス ベクトル controls は、推定器のどの入力が制御する u かを指定します。また、結果の LQG レギュレーター rlqg は ud および y を入力にもちます (次の図を参照)。

メモ

LQG レギュレーターをプラントに接続する際には、必ず正のフィードバックを使用してください。

LQG レギュレーター: 圧延機のケース スタディの例を参照してください。

アルゴリズム

lqgreg kalman で設計したカルマン推定器と lqrdlqr または lqry で設計した最適状態フィードバック ゲインを接続することで、線形 2 次ガウシアン (LQG) レギュレーターを作成します。LQG レギュレーターは、レギュレーションの性能と制御のトレードオフを行うある 2 次コスト関数を最小化します。このレギュレーターはダイナミックで、安定化指令を生成するノイズの測定値に依存します。

連続時間では、LQG レギュレーターは次の指令値を生成します。

u=Kx^

ここで、x^ はカルマン状態推定です。レギュレーターの状態空間方程式は以下のとおりです。

x^˙=[ALC(BLD)K]x^+Lyu=Kx^

ここで y はプラント出力測定量のベクトルです (背景と表記については、kalman を参照)。以下の図は、プラントに対するダイナミック レギュレーターを示しています。

離散時間の場合は、y[n–1] までの測定値に基づいた x[n] の遅延状態推定 x^[n|n1] か、y[n] を含む使用可能なすべての測定値に基づいた現在の状態推定 x^[n|n] のいずれかを使用して LQG レギュレーターを作成できます。レギュレーター

u[n]=Kx^[n|n1]

は常に適切に定義されていますが、"現在のレギュレーター"

u[n]=Kx^[n|n]

は I-KMD が可逆の場合にのみ因果的になります (表記については kalman を参照)。さらに現在のレギュレーターを実際に実装した場合は、測定値 y[n] が使用可能になった後の u[n] の計算するための時間が必要です (これがフィードバック ループのむだ時間になります)。

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

x[n+1]=Ax[n]+Bu[n]+Gw[n]y[n]=Cx[n]+Du[n]+Hw[n]+v[n]{Measurements}

"現在の" カルマン推定器を LQR ゲインに連結するのが最適であるのは、E(w[n]v[n])=0 であり、かつ y[n] が w[n] に依存しない (H = 0) 場合のみです。これらの条件が満たされない場合、lqg を使用して最適な LQG コントローラーを計算してください。

バージョン履歴

R2006a より前に導入

参考

| | | | | |