コマンド ラインでの調整された MATLAB モデルからの応答の抽出
この例では、getIOTransfer
を使用してシステムの閉ループ モデルのさまざまな入出力間の応答を計算し、調整された制御システムの応答を解析する方法を示します。getLoopTransfer
および getSensitivity
などの同様の関数を使用してその他の応答を取得できます。
次の制御システムについて考えます。
systune
を使用してこの制御システムの genss
モデルを調整したとします。結果は、コントローラー要素 C1
および C2
を表す調整可能なブロックを含む genss
モデル T
になります。この調整モデルには、解析ポイントの位置 X1
および X2
を表す AnalysisPoint
ブロックも含まれます。
T
から抽出したさまざまなシステム応答を検査して、調整後のシステム性能を解析します。たとえば、点 d1 で加えられた外乱に対する、出力 y での応答を検査します。
H1 = getIOTransfer(T,'X1','y');
H1
は、AnalysisPoint
ブロック X1
(d1 の位置) と関連付けられた暗黙的な入力で加えられた外乱に対する、制御システムの閉ループ応答を表します。
H1
は T
の調整可能なブロックを含む genss
モデルです。H1
では調整済みシステムの外乱応答を検証できます。たとえば、bodeplot
や stepplot
などの解析コマンドを使用して H1
を解析できます。また、getValue
を使用して H1
の現在の値を取得できます。この値では、すべての調整可能なブロックがそれぞれの現在の数値に対して評価されています。
同様に、点 d2 で加えられた外乱に対する、出力での応答を検査します。
H2 = getIOTransfer(T,'X2','y');
さらに、d1 と d2 の両方における同時外乱に対する制御システムの応答を表す、2 入力 1 出力のモデルを作成することもできます。これを行うには、getIOTransfer
に複数の入力位置を指定する cell 配列を渡します。
H = getIOTransfer(T,{'X1','X2'},'y');
参考
getIOTransfer
| getLoopTransfer
| getSensitivity
| getCompSensitivity
| AnalysisPoint