Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

MIMO 制御システム

この例では、connect を使用して数値 LTI モデルと調整可能な制御設計ブロックを相互接続し、MIMO 制御システムを構築する方法を示します。

次の 2 入力 2 出力の制御システムについて考えてみましょう。

プラント G は 2 入力と 2 出力をもつ蒸留塔です。2 つの入力は還流 L と煮沸 V です。2 つの出力は 2 つの化学薬品の濃度で、ベクトル信号 y = [y1,y2] で表します。このプラント モデルを以下のように表すことができます。

G(s)=175s+1[87.886.4108.2109.6].

ベクトル設定点信号 r = [r1,r2] は、2 つの化学薬品の目標濃度を指定します。ベクトルの誤差信号 e は、静的な 2 行 2 列の分離行列である D への入力を表します。CL と CV は G の 2 つの入力を制御する独立した PI コントローラーを表します。

この閉ループ制御システムを表す 2 入力 2 出力のモデルを作成するには、次の手順に従います。

  1. 2 行 2 列プラント G を表す数値 LTI モデルを作成します。

    s = tf('s','TimeUnit','minutes');
    G = [87.8 -86.4 ; 108.2 -109.6]/(75*s+1);
    G.InputName = {'L','V'};
    G.OutputName = 'y';
    

    閉ループ モデルを構成すると、connect は入力と出力の名前を使用して、ブロック線図コンポーネント間の接続を成形します。そのため、以下の方法のいずれかで、名前を伝達関数 G の入力と出力に割り当てなければなりません。 .

    • G.InputName = {'L','V'} のように、cell 配列内で信号名を指定することにより、入力と出力の名前を個々の信号に割り当てることができます。

    • また、ベクトル信号名も使用できます。これは自動的に展開されます。たとえば、コマンド G.OutputName = 'y' は名前の 'y(1)''y(2)'G の出力に割り当てます。

  2. 分離行列 D および PI コントローラー CL と CV を表す調整可能な制御設計ブロックを作成します。

    D = tunableGain('Decoupler',eye(2));
    D.u = 'e';
    D.y = {'pL','pV'};
    
    C_L = tunablePID('C_L','pi');  C_L.TimeUnit = 'minutes';
    C_L.u = 'pL'; C_L.y = 'L';
    
    C_V = tunablePID('C_V','pi');  C_V.TimeUnit = 'minutes';
    C_V.u = 'pV'; C_V.y = 'V';

    メモ

    uy はそれぞれ InputNameOutputName プロパティの省略形表記です。そのため、たとえば以下のように入力します。

    D.u = 'e';
    D.y = {'pL','pV'};

    これは、以下の入力と等価です。

    D.InputName = 'e';
    D.OutputName = {'pL','pV'};
  3. 加算結合を作成します。

    加算結合は、r と y の差を取ることにより誤差信号 e を生成します。

    Sum = sumblk('e = r - y',2);

    Sum は、式 'e = r - y' が記述する加算結合用の伝達関数を表します。sumblk の 2 番目の引数は、Sum の入力と出力がそれぞれ長さ 2 のベクトル信号であることを指定します。そのため、信号名 {'r(1)','r(2)','y(1)','y(2)'}Sum.InputName に、信号名 {'e(1)','e(2)'}Sum.OutputName に自動的に割り当てられます。

  4. すべてのコンポーネントを連結して、r から y への閉ループ システムを構築します。

    CLry = connect(G,D,C_L,C_V,Sum,'r','y');

    関数 connect の引数は閉ループ システムのすべてのコンポーネントを任意の順に含みます。connect は入力と出力の名前を使用して信号を連結し、自動的にコンポーネントを結合します。

    connect への最後の 2 つの引数はそれぞれ閉ループ モデルの入力と出力の信号を指定します。結果の genss モデル CLry は 2 つの入力と 2 つの出力をもっています。

参考

|

関連する例

詳細