ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

lqgreg

線形 2 次ガウス型 (LQG) レギュレーターの設計

構文

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

説明

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] の計算するための時間が必要です (これがフィードバック ループのむだ時間になります)。

「LQG レギュレーター」の例を参照してください。

詳細

すべて展開する

ヒント

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

参考

| | | | | |

この情報は役に立ちましたか?