ドキュメンテーション

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

プラントのパラメーターの値が複数の場合の調整

この例では、プラントでパラメーターの変動がある場合の制御システム調整器による制御システムの調整方法を示します。この例の制御システムは、1/4 車両モデルのアクティブ サスペンションです。この例では、制御システム調整器を使用して、プラントのパラメーターがノミナル値と異なる場合に性能目的を果たすようにシステムを調整します。

1/4 車両モデルとアクティブ サスペンション制御

図 1 は、アクティブ サスペンション システムのシンプルな 1/4 車両モデルを示したものです。この 1/4 車両モデルは、車両のシャーシの質量 と車輪アセンブリの質量 の 2 つの質量で構成されます。それらの間にあるバネ とダンパー で受動的なバネとショック アブソーバをモデル化しています。車輪アセンブリと路面の間のタイヤはバネ でモデル化されます。

アクティブ サスペンションにより、シャーシと車輪アセンブリの間で力 が生じます。設計者は、それに対するフィードバック コントローラーを使用して、乗り心地や路面ハンドリングなど、駆動目的間のバランスを取ることができます。

図 1: アクティブ サスペンションの 1/4 車両モデル

制御アーキテクチャ

この 1/4 車両モデルは SimScape Multibody を使用して実装されます。次の Simulink モデルには、アクティブ サスペンションを含む 1/4 車両モデルと、コントローラーおよびアクチュエータのダイナミクスが含まれています。入力は、路面の外乱とアクティブ サスペンションに対する力です。出力は、サスペンションのたわみと車体の加速度です。コントローラーでは、それらの測定値を使用して、アクティブ サスペンションの力を作成するアクチュエータに制御信号を送ります。

mdl = fullfile(matlabroot,'examples','control_featured','rct_suspension.slx');
open_system(mdl)

制御目的

目標は以下の 3 つの制御目的の達成です。

  • 路面の外乱からサスペンションのたわみまでで定義されるハンドリングの良さ。

  • 路面の外乱から車体の加速度までで定義される乗り心地の良さ。

  • 制御帯域幅の妥当さ。

車体と車輪アセンブリの間のバネ定数 およびダンパー のノミナル値は厳密なものではなく、材料の不完全性により、定数ではあってもその値が異なることがあります。パラメーターが変化する状況で、これらの制御目的が満たされるようにします。

ゲイン 7 cm の路面の外乱をモデル化し、一定の重みを使用します。

Wroad = ss(0.07);

路面の外乱からサスペンションのたわみまでのハンドリングの閉ループ ターゲットを次のように定義します。

HandlingTarget = 0.044444 * tf([1/8 1],[1/80 1]);

路面の外乱から車体の加速度までの乗り心地のターゲットを次のように定義します。

ComfortTarget = 0.6667 * tf([1/0.45 1],[1/150 1]);

路面の外乱から制御信号までの重み関数で制御帯域幅を制限します。

Wact = tf(0.1684*[1 500],[1 50]);

閉ループ ターゲットおよび重み関数の選択については、「Robust Control of an Active Suspension」 (Robust Control Toolbox)の例を参照してください。

コントローラーの調整

Simulink モデルのオレンジのブロックをダブルクリックして、アクティブ サスペンション制御の制御システム調整器セッションを開きます。調整ブロックは 2 次コントローラーに設定されており、前述のハンドリング、乗り心地、制御帯域幅を達成するように 3 つの調整目標が定義されています。調整の性能を表示するために、路面の外乱からサスペンションのたわみ、車体の加速度、制御の力までのステップ応答がプロットされます。

ハンドリング、乗り心地、制御帯域幅の目標は、ゲインの範囲 HandlingTarget/WroadComfortTarget/WroadWact/Wroad として定義されます。いずれのゲイン関数も、路面の外乱を組み込むために Wroad で除算されています。

コントローラーがゼロの開ループ システムでは、ハンドリングの目標を満たしておらず、サスペンションのたわみと車体の加速度の両方で大きな振動動作が見られ、整定時間が長くなっています。

図 2: セッション ファイルを開いた状態の制御システム調整器

[調整] タブで [Tune] ボタンをクリックして、制御システム調整器でコントローラーを調整します。図 3 に示すように、この設計は調整目標を満たし、応答の振動も小さく、迅速にゼロに収束されています。

図 3: 調整後の制御システム調整器。

複数のパラメーター値に対するコントローラーの調整

次に、複数のパラメーター値に対応するようにコントローラーを調整してみます。車両のシャーシの質量 の既定値は 300 kg です。この質量を 100、200 および 300 に変えて操作条件を変更します。

制御システム調整器でこれらのパラメーターを変化させるには、[Control System] タブに移動し、[Parameter Variations] で [Select parameters to Vary] を選択します。開いたドキュメントでパラメーターを定義します。

図 4: パラメーター変動値の定義

[Manage Parameters] をクリックします。[Select model variables] ダイアログ ボックスで、Mb を選択します。

図 5: 変化させるパラメーターをモデルから選択

これで、パラメーターの変化テーブルにパラメーター Mb が既定値で追加されます。

図 6: 既定値のパラメーターの変化テーブル

[Generate Values] で、Mb の値を 100、200、300 と定義して [Overwrite] をクリックし、変化を生成します。

図 7: 値の生成ウィンドウ

すべての値がパラメーターの変化テーブルに読み込まれます。[Apply] ボタンをクリックして、パラメーターの変動値を制御システム調整器に設定します。

図 8: 更新後の値のパラメーターの変化テーブル

パラメーターの変動値により、調整目標と応答のプロットに複数の行が表示されます。ノミナル パラメーター値に対して設計されたコントローラーが原因で、閉ループ システムが不安定になっています。

図 9: 複数のパラメーター変動値がある制御システム調整器。

[調整] タブで [Tune] ボタンをクリックして、ハンドリング、乗り心地、制御帯域幅の目的を満たすようにコントローラーを調整します。調整アルゴリズムは、ノミナル パラメーターだけでなく、すべてのパラメーターの変化について、これらの目的を満たそうとします。図 10 に示すように、これはノミナル設計に比べると難しい作業です。

図 10: 複数のパラメーター変動値がある制御システム調整器 (調整後)

制御システム調整器により、線形化された制御システムでコントローラーのパラメーターが調整されます。次に、Simulink モデルの調整後のパラメーターの性能を調べるために、[Control System] タブで [Update Blocks] をクリックして Simulink モデルのコントローラーを更新します。

Simulation Data Inspector を使用して、モデルのパラメーター変動をシミュレートします。この結果を図 11 に示します。コントローラーは、3 つのすべてのパラメーターの変動について、最小限の制御作用力でサスペンションのたわみと車体の加速度が最小にしようとしています。

図 11: Simulink モデルのコントローラーの性能