Main Content

制御システム調整器を使用した制御システムの調整

この例では、Simulink® でモデル化された MIMO マルチループ制御システムを制御システム調整器アプリを使用して調整する方法を示します。

制御システム調整器では、任意の制御アーキテクチャをモデル化し、PID コントローラー、ゲイン、その他の要素など、コントローラー コンポーネントの構造を指定できます。モデル内の調整可能にするブロックを指定します。それらのブロックが制御システム調整器でパラメーター化され、設定点の追従、外乱の抑制、安定余裕など、指定した設計要件をシステムが満たすように自由パラメーターが調整されます。

制御システム モデル

この例では、Simulink モデル rct_helico を使用します。モデルを開きます。

open_system('rct_helico')

プラント Helicopter は、定常状態のホバリング条件に平衡化される 8 状態のヘリコプター モデルです。状態ベクトル x = [u,w,q,theta,v,p,phi,r] は以下で構成されています。

  • 縦方向速度 u (m/s)

  • 垂直速度 w (m/s)

  • ピッチ レート q (deg/s)

  • ピッチ角 theta (deg)

  • 横方向速度 v (m/s)

  • ロール レート p (deg/s)

  • ロール角 phi (deg)

  • ヨー レート r (deg/s)

モデルの制御システムには 2 つのフィードバック ループがあります。内側のループは安定増大とデカップリングの静的出力フィードバックで、モデルではゲイン ブロック SOF で表されます。外側のループには 3 つのそれぞれの姿勢角に対する PI コントローラーがあります。コントローラーは、thetaphipqr の測定値を使用して、縦サイクリック、横サイクリック、テール ローターのコレクティブに対するコマンド ds,dc,dT を度単位で生成します。このループは、3 つの角度の目的となる設定点の追従を提供します。

この例では、次の制御目的を使用します。

  • 設定点での thetaphir の変化を、定常偏差ゼロ、立ち上がり時間約 2 秒、最小限のオーバーシュート、最小限の相互干渉で追従。

  • 制御帯域幅を制限することで、考慮されていない高周波のローター ダイナミクスと測定ノイズに対処。(このモデルはこの目的を部分的に適用するローパス フィルターを含みます。)

  • 強力な多変数ゲイン余裕と位相余裕を提供。(多変数余裕は、プラントの入出力におけるゲイン/位相の同時変化に対するロバスト性を測定します。詳細については、diskmargin のリファレンス ページを参照してください。)

調整のためのモデルの設定

制御システム調整器を使用して、すべての設計要件に合うように内側と外側のループを一緒に調整できます。モデルを調整用に設定するには、アプリを開き、調整する Simulink モデルのブロックを指定します。

Simulink モデル ウィンドウで、[アプリ] タブの [制御システム][制御システム調整器] を選択します。

制御システム調整器の [調整] タブで、[ブロックの選択] をクリックします。[調整ブロックの選択] ダイアログ ボックスを使用して調整するブロックを指定します。

[ブロックの追加] をクリックします。制御システム調整器では、モデルを解析して調整可能なブロックを見つけます。この例で、調整するコントローラー ブロックは 3 つの PI コントローラーと Gain ブロックです。対応するブロック PI1PI2PI3、および SOF にチェックを付けます。

[OK] をクリックします。[調整ブロックの選択] ダイアログ ボックスにより、追加したブロックが反映されます。

調整するブロックを選択すると、制御システム調整器はブロックをそのタイプに合わせて自動的にパラメーター化し、Simulink モデルのブロック値でパラメーター化を初期化します。この例では、PI コントローラーは $1+1/s$ に初期化されて、静的出力フィードバックのゲインはすべてのチャネルでゼロに初期化されます。モデルのシミュレーションを実行すると、この制御システムはこれらの初期値に対して不安定であることがわかります。

調整目標の指定

前に説明したように、このシステムの設計要件には、設定点の追従、最小の安定余裕および高速ダイナミクスの制限が含まれます。制御システム調整器で、"調整目標" を使用して設計要件を取得します。

最初に、thetaphi、および r に対する設定点追従要件の調整目標を作成します。[調整] タブの [新規目標] ドロップダウン リストで [Tracking of step commands] を選択します。

[ステップ追従目標] ダイアログで、追従する基準信号を指定します。[ステップ応答入力の指定] で、[信号をリストに追加] をクリックします。次に、[モデルから信号を選択] をクリックします。

Simulink モデル エディターで、基準信号 theta_refphi_ref、および r_ref を選択します。これらの信号が [信号の選択] ダイアログ ボックスに表示されます。[信号の追加] をクリックして、ステップ追従目標にそれらを追加します。

次に、これらの基準を追従する出力を指定します。[ステップ応答出力の指定] で、出力 thetaphi、および r を追加します。

要件は、出力の応答によって、時定数が 1 秒の 1 次応答で設定値指令を追従することです。ダイアログ ボックスの [目的の応答] セクションにこれらの値を入力します。また、この例では、[不一致を次の % 未満に維持] を 20 に設定します。この値を指定すると、ターゲットの 1 次応答と調整された応答との間の相対的な不一致が 20% に設定されます。

次の図は、[ステップ追従目標] ダイアログ ボックスの構成を示しています。[OK] をクリックして調整目標を保存します。

次に、目的の安定余裕要件に対する調整目標を作成します。この例では、プラントの入力 u とプラントの出力 y における多変数ゲイン余裕と位相余裕は、少なくとも 5 dB と 40 度でなければなりません。入力と出力の余裕制約に対して個別の調整目標を作成します。[新規目標] ドロップダウン リストで、[最小安定余裕] を選択します。[余裕目標] ダイアログ ボックスで、[次の位置の余裕を測定] に入力信号 u を追加します。また、ダイアログ ボックスの [目的の余裕] セクションにゲイン値 5 および位相値 40 を入力します。[OK] をクリックして入力安定余裕目標を保存します。

出力安定余裕の別の余裕目標を作成します。表示されているように出力信号 y とターゲット余裕を指定し、出力安定余裕目標を保存します。

最後の要件は、高速ダイナミクスとぎくしゃくした動きの過渡特性を制限することです。これを実現するには、閉ループの極の振幅を 25 rad/s 未満に制約する調整目標を作成します。[新規目標] ドロップダウン リストで、[閉ループ ダイナミクスの制約] を選択します。[極目標] ダイアログ ボックスで最大固有振動数を 25 に指定し、[OK] をクリックして調整目標を保存します。

各調整目標を作成すると、制御システム調整器によって調整目標のグラフィカル表現を示す新しい図が作成されます。制御システムを調整する場合は、この図を参照して、調整されたシステムが調整目標をどの程度満たしているかをグラフィカルな表現で確認できます。

制御システムの調整

指定した設計要件を満たすよう制御システムを調整します。

[調整] タブで、[調整] をクリックします。制御システム調整器によって、調整可能なパラメーターがそれらの要件に最適な値に調整されます。

制御システム調整器では、調整目標プロットが自動的に更新されて調整されたパラメーター値が反映されます。これらのプロットを調べて、要件が設計でどの程度満たされているか確認します。たとえば、追従要件の調整されたステップ応答を調べます。

青の線は、調整された応答がピンクのターゲットの応答に非常に近いことを示しています。立ち上がり時間は約 2 秒で、オーバーシュートはなく、相互干渉もほとんどありません。

同様に、MarginsGoal1 プロットと MarginsGoal2 プロットは、多変数安定余裕の視覚的な評価を示しています (多変数安定余裕の詳細については、diskmargin のリファレンス ページを参照してください)。これらのプロットは、安定余裕が影付き領域外にあり、すべての周波数で要件を満たしていることを示しています。

また、調整結果の数値レポートも表示できます。制御システム調整器の右下にある [調整レポート] をクリックします。

モデルを調整すると、制御システム調整器によって各調整目標がシステムの調整可能なパラメーターの関数に変換され、それらの関数の値が最小化されるようパラメーターが調整されます。この例では、調整レポートにすべての調整目標の最終的な値が 1 に近いことが示されています。1 はすべての要件がほぼ満たされていることを示します。

調整された設計の検証

一般に、Simulink モデルは非線形のシステムを表します。制御システム調整器は、アプリに指定した操作点でモデルを線形化し、システムの線形近似を使ってパラメーターを調整します。したがって、完全な Simulink モデルでコントローラー設計を検証することが重要です。

そのためには、調整されたパラメーター値を Simulink モデルに書き込み直します。[Control System] タブで、[ブロックの更新] をクリックします。Simulink モデル ウィンドウで、新しいパラメーター値を使ってモデルをシミュレートします。それぞれ 0 秒、3 秒、および 6 秒における設定点コマンド theta-refphi-refr-ref でのステップの変更に対する応答を確認します。

シミュレーションを検査して Simulink モデルで必要な応答が得られることを確認します。ここでは、設計要件で指定したとおり、オーバーシュートなし、定常偏差なし、最小限の相互干渉で、各応答の立ち上がり時間は約 2 秒です。

参考

関連するトピック