Main Content

コマンド ラインでの調整された 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 の位置) と関連付けられた暗黙的な入力で加えられた外乱に対する、制御システムの閉ループ応答を表します。

H1T の調整可能なブロックを含む genss モデルです。H1 では調整済みシステムの外乱応答を検証できます。たとえば、bodeplotstepplot などの解析コマンドを使用して H1 を解析できます。また、getValue を使用して H1 の現在の値を取得できます。この値では、すべての調整可能なブロックがそれぞれの現在の数値に対して評価されています。

同様に、点 d2 で加えられた外乱に対する、出力での応答を検査します。

H2 = getIOTransfer(T,'X2','y');

さらに、d1 と d2 の両方における同時外乱に対する制御システムの応答を表す、2 入力 1 出力のモデルを作成することもできます。これを行うには、getIOTransfer に複数の入力位置を指定する cell 配列を渡します。

H = getIOTransfer(T,{'X1','X2'},'y');

参考

| | | |

関連するトピック