Main Content

制御システム調整器でのブロック パラメーター化の表示と変更

制御システム調整器では、調整用に指定したすべてのブロックがパラメーター化されます。

  • Simulink® モデルを調整する際に、制御システム調整器では既定のパラメーター化がモデル内の調整可能なブロックに自動的に割り当てられます。既定のパラメーター化はブロックのタイプによって異なります。たとえば、PI 構造用に構成されている PID Controller ブロックは、次のように比例ゲインと積分ゲインによってパラメーター化されます。

    u=Kp+Ki1s.

    Kp および Ki は調整可能なパラメーターであり、その値は指定された調整目標を満たすように最適化されます。

  • 事前定義された制御アーキテクチャまたは MATLAB® (一般化状態空間) モデルを調整する場合、調整可能な各ブロックを MATLAB コマンド ラインで作成するときにそのパラメーター化を定義します。たとえば、tunablePID を使用して調整可能な PID ブロックを作成できます。

制御システム調整器を使用すると、調整されるあらゆるブロックのパラメーター化を表示および変更できます。パラメーター化の変更には、構造体または現在のパラメーター値の変更を含めることができます。また、個々のブロック パラメーターの固定化 (調整不可) を指定したり、調整範囲を制限したりすることもできます。

ブロックのパラメーター化の表示

調整ブロックとして指定したブロックのパラメーター化にアクセスするには、[データ ブラウザー][調整ブロック] 領域で、ブロックの名前をダブルクリックします。[調整されたブロック エディター] ダイアログ ボックスが開き、現在のブロックのパラメーター化が表示されます。

[調整されたブロック エディター] のフィールドに、[PID][状態空間] または [ゲイン] といったパラメーター化のタイプが表示されます。これらのフィールドの具体的な詳細については、 をクリックしてください。

メモ

Simulink モデル内の調整ブロックを見つけるには、[データ ブラウザー] でブロック名を右クリックし、[強調] を選択します。

パラメーター値の固定または調整範囲の制限

現在のパラメーター値の変更、現在のパラメーター値の固定化 (パラメーターを調整不可にする) またはパラメーターの調整範囲の制限を行うことができます。

現在のパラメーター値を変更するには、テキスト ボックスに新しい値を入力します。あるいは、 をクリックし、変数エディターを使用して現在の値を変更します。無効な値を入力しようとすると、パラメーターが前の値に戻ります。

をクリックし、次のような各パラメーターの追加のプロパティにアクセスして編集します。

  • 最小値 — 制御システムが調整されるときにパラメーターが受け取ることができる最小の値。

  • 最大値 — 制御システムが調整されるときにパラメーターが受け取ることができる最大の値。

  • Free — 値が true の場合、Control System Toolbox はパラメーターを調整します。パラメーターの値を固定するには、[Free]false に設定します。

配列値のパラメーターの場合、配列内の各エントリに対してこのプロパティを別々に設定できます。たとえば、長さが 3 のベクトル値ゲインの場合、3 つのゲインの現在値をそれぞれ 1、10、100 に設定するには、「[1 10 100]」と入力します。あるいは、 をクリックし、変数エディターを使用してこのような値を指定します。

ベクトル値または行列値のパラメーターの場合、[Free] パラメーターを使用して、パラメーターの構造を制約することができます。たとえば、行列値のパラメーターを対角行列に制限するには、非対角要素の現在値を 0 に設定し、[Free] の対応するエントリを false に設定します。

カスタム パラメーター化

Simulink モデルまたは事前定義されたフィードバック アーキテクチャで表される制御システムを調整するときに、一般化状態空間 (genss) モデルを使用して任意の調整ブロックのカスタム パラメーター化を指定できます。そのためには、MATLAB ワークスペースで目的のパラメーター化、初期パラメーター値、パラメーター プロパティをもつ genss モデルを作成し、構成します。[パラメーター化の変更] ダイアログ ボックスで [カスタム] を選択します。[パラメーター化] 領域で、genss モデルの変数名を指定します。

たとえば、調整可能なローパス フィルター F = a/(s +a) を指定すると仮定します。ここで、a は調整可能なパラメーターです。最初に、MATLAB コマンド ラインで、ローパス フィルター構造体を表す調整可能な genss モデルを作成します。

a = realp('a',1);
F = tf(a,[1 a]);
F =

  Generalized continuous-time state-space model with 1 outputs, 1 inputs,
  1 states, and the following blocks:
    a: Scalar parameter, 2 occurrences.

Type "ss(F)" to see the current value, "get(F)" to see all properties, and
"F.Blocks" to interact with the blocks.

次に、調整されたブロック エディターで [パラメーター化] 領域に F を入力します。

Simulink ブロックのカスタム パラメーター化を指定する際に、調整ブロックの値を Simulink モデルに書き戻すことができない場合があります。値を Simulink ブロックに書き込むとき、制御システム調整器は、調整された値を簡単かつ可逆的な方法で表すことができないブロックをスキップします。たとえば、PID Controller Simulink ブロックを 3 次状態空間モデルとして再パラメーター化する場合、制御システム調整器は調整された値をブロックに書き戻しません。

ブロック レート変換

制御システム調整器が調整されたパラメーターを Simulink モデルに書き込む際、各調整ブロック値は調整に使用されるサンプル時間から Simulink ブロックのサンプル時間に自動的に変換されます。2 つのサンプル時間が異なる場合、調整されたブロック エディターには、対応するブロックでのリサンプリング処理の実行方法を指定する追加のレート変換オプションが含まれます。

既定では、制御システム調整器が連続時間で線形化と調整を実行します (サンプル時間 = 0)。離散時間の線形化と調整を指定し、サンプル時間を変更できます。これを行うには、[Control System] タブで、[線形化オプション] をクリックします。[調整用のサンプル時間] には [線形化オプション] ダイアログ ボックスで指定されたサンプル時間が反映されています。

残りのレート変換オプションは、パラメーター化されたブロックに応じて異なります。

パラメーター化された PID ブロックのレート変換

連続時間の PID Controller ブロックおよび PID Controller (2-DOF) ブロックのパラメーター化については、レート変換メソッドを積分器および微分フィルターの離散化式として別々に指定できます。各ブロックには次のオプションがあります。

  • 台形則 (既定) — (Ts/2)*(z+1)/(z-1) として離散化される積分器または微分フィルター。ここで、Ts はターゲット サンプル時間です。

  • 前進オイラー法Ts/(z-1)

  • 後退オイラー法Ts*z/(z-1)

PID 離散化式の詳細については、離散時間比例-積分-微分 (PID) コントローラーを参照してください。

離散時間の PID Controller ブロックおよび PID Controller (2-DOF) ブロックの場合、積分器および微分フィルターのメソッドはブロック ダイアログ ボックスで設定します。調整されたブロック エディターでこれらを変更することはできません。

パラメーター化された他のブロックのレート変換

PID Controller ブロック以外のブロックの場合、次のレート変換メソッドを使用できます。

  • ゼロ次ホールド — 入力のゼロ次ホールド。動的なブロックのほとんどでは、これが既定のレート変換メソッドです。

  • 双一次 (Tustin) 変換 — 双一次 (Tustin) 近似。

  • プリワーピング付き双一次 (Tustin) 変換 — プリワープ周波数での元のダイナミクスとレート変換されたダイナミクスの一致がより適切な Tustin 近似。[Prewarping frequency] フィールドに周波数を入力します。

  • 1 次ホールド — 入力の線形内挿。

  • 一致 (SISO のみ) — 極-零点マッチングに相当。

これらのレート変換メソッドの詳細については、連続/離散の変換方法を参照してください。

レート変換メソッドが固定されたブロック

次のブロックに対しては、調整されたブロック エディターでレート変換メソッドを設定できません。

  • 離散時間の PID Controller ブロックおよび PID Controller (2-DOF) ブロック。ブロックのダイアログ ボックスで、積分器と微分フィルターのメソッドを設定します。

  • Gain ブロック (静的であるため)。

  • Transfer Fcn Real Zero ブロック。このブロックは、ブロックで指定されたサンプル時間にのみ調整できます。

  • モデルの離散化を使用して離散化されたブロック。このブロックのサンプル時間は、モデルの離散化自体で指定されています。

関連する例

詳細