Main Content

設定値追従目標

目的

制御システム調整器を使用しているときに、指定した性能と忠実度で指定した出力が基準入力を追従するようにします。MIMO システムで相互干渉を制限します。

説明

設定値追従目標は指定した信号の位置の間の追従を制約します。この制約は、最大相対追従誤差がすべての周波数で指定した値未満になった場合に達成されます。"相対誤差" は周波数の関数としての基準入力から追従誤差へのゲインです。

最大誤差プロファイルを周波数の関数として直接指定できます。または、追従目標をターゲット DC 偏差、ピーク偏差および応答時間で指定できます。これらのパラメーターは、周波数領域の最大追従誤差を記述する次の伝達関数に変換されます。

MaxError=(PeakError)s+ωc(DCError)s+ωc.

ここで ωc は 2/(応答時間) です。次のプロットは、一連の値の例に対するこれらの関係を示しています。

制御システム調整器で調整目標を作成すると、調整目標プロットが作成されます。点線はユーザーが指定する誤差プロファイルを示します。プロットの影付き領域は、周波数領域内の調整目標が満たされない範囲を表しています。

作成

制御システム調整器[調整] タブで、[新規目標][設定値追従] を選択して設定値追従目標を作成します。

コマンド ラインにおける同等の操作

コマンド ラインで制御システムを調整する場合、TuningGoal.Tracking を使用して追従目標を指定します。

応答選択

ダイアログ ボックスのこのセクションを使用して、調整目標を評価するための入力、出力およびループ開始点の位置を指定します。

  • 基準入力の指定

    基準信号としてモデル内の信号の位置を 1 つ以上選択します。SISO 応答を制約するには、単一の値の基準信号を選択します。たとえば、'u' という名前の位置から 'y' という名前の位置への応答を制約するには、 [信号をリストに追加] をクリックして 'u' を選択します。MIMO 応答を制約するには、複数の信号またはベクトル値の信号を選択します。

  • 設定値追従出力の指定

    基準追従出力としてモデル内の信号の位置を 1 つ以上選択します。SISO 応答を制約するには、単一値の出力信号を選択します。たとえば、'u' という名前の位置から 'y' という名前の位置へのステップ応答を制約するには、 [信号をリストに追加] をクリックして 'y' を選択します。MIMO 応答を制約するには、複数の信号またはベクトル値の信号を選択します。MIMO システムの場合、出力の数は入力の数と等しくなければなりません。

  • 次の開ループの追従性能の評価

    この調整目標を評価するために、フィードバック ループを開くモデル内の信号の位置を 1 つ以上選択します。調整目標は、特定した位置でフィードバック ループを開くことにより作成される開ループの構成に対して評価されます。たとえば、'x' という名前の位置が開始点の調整目標を評価するには、 [信号をリストに追加] をクリックして、'x' を選択します。

ヒント

Simulink® モデル内で選択された任意の信号を強調表示するには、 をクリックします。入力リストまたは出力リストから信号を削除するには、 をクリックします。複数の信号を選択した場合、 および を使用してそれらの信号を並べ替えることができます。調整目標のために信号の位置を指定する方法の詳細については、対話型調整の目標の指定を参照してください。

追従性能

ダイアログ ボックスのこのセクションを使用して、追従誤差の周波数領域の制約を指定します。

応答時間、DC 偏差およびピーク偏差

このオプションを選択して、全周波数での応答時間、定常偏差の割合およびピーク偏差についての追従誤差を指定します。これらのパラメーターは、周波数領域の最大追従誤差を記述する次の伝達関数に変換されます。

MaxError=(PeakError)s+ωc(DCError)s+ωc.

このオプションを選択する場合、テキスト ボックスに次のパラメーターを入力します。

  • 応答時間 — ターゲットの応答時間を入力します。追従帯域幅は ωc = 2/Response Time で求められます。ターゲット応答時間はモデルの時間単位で表します。

  • 定常偏差 (%) — 定常状態の非整数の最大追従誤差をパーセントで表して入力します。MIMO 追従目標の場合、この定常偏差はすべての I/O ペアに適用されます。定常偏差はパーセントで表現された DC 偏差 (DCError/100) です。

  • 周波数のピーク偏差 (%) — 全周波数での非整数の最大追従誤差をパーセントで表して入力します。

周波数の関数としての最大誤差

最大追従誤差プロファイルを周波数の関数として指定するには、このオプションを選択します。

SISO 数値 LTI モデルをテキスト ボックスに入力します。たとえば、滑らかな伝達関数 (tfzpk または ss モデル) を指定できます。あるいは、frd モデルを使用して区分的な誤差プロファイルをスケッチできます。そうした場合、ソフトウェアによってこの誤差プロファイルが、目的の誤差プロファイルを近似する滑らかな伝達関数に自動的にマッピングされます。たとえば、約 1 rad/s 未満での最大誤差を 0.01 に指定し、100 rad/s でのピーク偏差 1 まで徐々に増加するように指定するには、「frd([0.01 0.01 1],[0 1 100])」と入力します。

MIMO 追従目標の場合、この誤差プロファイルはすべての I/O ペアに適用されます。

離散時間で調整を行う場合、調整に使用するのと同じサンプリング時間をもつ離散時間モデルとして最大誤差プロファイルを指定できます。減衰プロファイルを連続時間で指定すると、調整ソフトウェアはこれを離散化します。誤差プロファイルを離散時間で指定すると、ナイキスト周波数付近でプロファイルをより詳細に制御できます。

オプション

ダイアログ ボックスのこのセクションを使用して、追従目標の追加特性を指定します。

  • 周波数範囲の目標を適用

    調整目標の適用を特定の周波数帯域に制限します。周波数帯域をモデルの周波数単位で表した形式 [min,max] の行ベクトルとして指定します。たとえば、1 ~ 100 rad/s のみに適用される調整目標を作成する場合は、[1,100] と入力します。既定では、調整目標は連続時間の場合はすべての周波数、離散時間の場合はナイキスト周波数以下の周波数に適用されます。

  • ステップ振幅の調整

    MIMO 調整目標において、単位の選択によって応答の異なるチャネルの小さい信号と大きい信号が混合される結果になる場合、このオプションを使用してベクトル値ステップ入力のエントリごとの相対振幅を指定できます。この情報は、追従誤差の参照によって伝達関数の非対角項をスケーリングするために使用されます。このスケーリングは、それぞれの基準信号の振幅に比例して相互干渉が測定されるようにします。

    たとえば、出力 'y1' and 'y2' が基準信号 'r1'and 'r2' に追従する調整目標を仮定します。さらに、出力は相互干渉 10% 未満で基準信号に追従する必要があると仮定します。r1r2 が同程度の振幅の場合、r1 から y2r2y1 へのゲインは 0.1 未満に維持すれば十分です。しかし、r1r2 よりも 100 倍大きい場合、r1 による y2 の変動を確実に r2 ターゲットの 10% 未満にするためには、r1 から y2 へのゲインは 0.001 未満でなければなりません。この結果を確実に得るためには、[ステップ振幅の調整][はい] に設定します。そして [ステップ コマンドの振幅] テキスト ボックスに [100,1] を入力します。これを行うことで、1 番目の基準信号は 2 番目の基準信号より 100 倍大きいことを考慮するように制御システム調整器に指示します。

    既定値の [No] は、スケーリングが適用されないことを表します。

  • 目標を適用

    たとえば、Simulink モデルを異なる操作点またはブロックパラメーター値で線形化することによって得られるモデルの配列などの複数のモデルを同時に調整している場合、このオプションを使用します。既定では、アクティブな調整目標がすべてのモデルに適用されます。調整要件を配列内の一部のモデルに適用するには、[モデルのみ] を選択します。次に目標を適用するモデルの配列インデックスを入力します。たとえば、モデル配列の中の 2 番目、3 番目、4 番目のモデルに調整目標を適用する必要があると仮定します。要件の適用を制限するには、[モデルのみ] テキスト ボックスに 2:4 と入力します。

    複数モデルの調整の詳細については、Robust Tuning Approaches (Robust Control Toolbox)を参照してください。

アルゴリズム

調整目標の評価

制御システムを調整するときに、各調整目標は正規化されたスカラー値 f(x) に変換されます。ここで x は、制御システムの自由 (調整可能な) パラメーターのベクトルです。その後、ソフトウェアはパラメーター値を調整して f(x) を最小化するか、調整目標が厳密な制約値の場合、f(x) が 1 より小さくなるようにします。

[Tracking Goal] の場合、f(x) は次のようになります。

f(x)=WF(s)(T(s,x)I),

またはその離散時間の等価物です。ここで、T(s,x) は指定した入力と出力の間の閉ループ伝達関数で、 は H ノルムを表します (getPeakGain を参照)。WF は、調整目標で指定する誤差プロファイルから導出された周波数重み付け関数です。WF のゲインは、–20 dB と 60 dB の間のゲイン値に対して誤差プロファイルの逆にほぼ一致します。数値的な理由から、この範囲の外で勾配が変化する参照モデルを指定しない限り、重み付け関数はこの範囲の外では平坦になります。この調整は、"正則化" と呼ばれます。s = 0 または s = Inf に近い WF の極の場合、systune の最適化問題の数値的な調整が難しくなることがあるため、周波数が極度に低い、あるいは極度に高いダイナミクスで誤差プロファイルを指定することは推奨されません。正則化とその効果の詳細については、調整目標の可視化を参照してください。

暗黙的な制約

また、この調整目標は、指定されたループ開始点でループが開いた状態で評価される、指定された入力から出力への閉ループ伝達関数に暗黙的な安定性の制約を課します。この暗黙的な制約に影響を受けるダイナミクスは、この調整目標の "安定ダイナミクス" です。[最小 decay 率][最大固有振動数] の調整オプションは、これらの暗黙的に制約されるダイナミクスの下限と上限を制御します。最適化が既定の制限を満たしていない場合、または既定の制限が他の要件と競合している場合、[調整] タブで [調整オプション] を使用して既定の設定を変更します。

関連するトピック