このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
TuningGoal.ConicSector クラス
パッケージ: TuningGoal
制御システム調整のためのセクター境界
説明
円錐セクター境界はシステムの出力軌跡の制限です。すべての非ゼロ入力軌跡が u(t) の場合、線形システム H の出力軌跡 z(t) = (Hu)(t) は次を満たします。
すべての T ≥ 0 について上記が成り立ち、H の出力軌跡は、対称不定行列 Q で記述された円錐セクターに収まります。異なる Q 行列を選択すると、システムの応答に異なる条件が課されます。
systune
で制御システムを調整する場合は、TuningGoal.ConicSector
を使用して、指定した入力と出力間の応答の出力軌跡を指定したセクターに制限します。セクター境界の詳細については、セクター境界とセクター インデックスについてを参照してください。
構築
Req = TuningGoal.ConicSector(
は、入力 inputname
,outputname
,Q
)inputname
から出力 outputname
への応答 H(s) を、対称行列 Q
で指定された円錐セクターに制限する調整目標を作成します。調整目標は H を制約し、その軌跡 z(t) = (Hu)(t) は次を満たします。
すべての T ≥ 0 について上記が成り立つとします。(セクター境界とセクター インデックスについてを参照)。行列 Q
は、H の入力と同数の負の固有値をもたなければなりません。
周波数依存のセクター境界を指定するには、Q
を、Q(s)T = Q(–s) を満たす LTI モデルに設定します。
入力引数
|
調整目標の入力信号。文字ベクトル、または多入力調整目標の場合は文字ベクトルの cell 配列として指定します。
制御システム モデル内の解析ポイントの詳細については、制御システムの解析と設計における対象信号のマークを参照してください。 |
|
調整目標の出力信号。文字ベクトル、または多出力調整目標の場合は文字ベクトルの cell 配列として指定します。
制御システム モデル内の解析ポイントの詳細については、制御システムの解析と設計における対象信号のマークを参照してください。 |
|
セクターの形状。次のように指定します。
詳細については、セクター境界とセクター インデックスについてを参照してください。 |
プロパティ
|
セクター形状。行列または LTI モデルとして指定します。 |
|
正則化パラメーター。実数で非負のスカラー値として指定します。 次のセクター行列の不定分解があるとします。 セクター境界 は、以下と同等になります。 ここで、、、および (•)H はエルミート転置を示します。他の調整目標によって H1(jω) と H2(jω) の両方が一部の周波数でゼロになった場合、この条件の適用は数値的に難しくなることがあります。この条件は、0/0 式の符号を制御することと等価であり、丸め誤差が生じた場合に処理が困難です。この条件を回避するには、セクター境界を次に "正則化" します。 または、以下を使用することもできます。 この正則化によって H2(jω) が特異になるのを防ぎ、調整目標の評価を数値的に処理しやすい状態に保つことができます。 Req.Regularization = 1e-3; 既定値: 0 |
|
調整目標が適用される周波数帯域。
Req.Focus = [1,100]; 既定値: 連続時間の場合は |
|
入力信号名。文字ベクトルの cell 配列として指定します。入力信号名では、最初に |
|
出力信号名。文字ベクトルの cell 配列として指定します。出力信号名では、最初に |
|
調整目標を適用するモデル。インデックスのベクトルとして指定します。 制御システム モデルの配列を Req.Models = 2:4;
既定値: |
|
調整目標を評価するときに開くフィードバック ループ。ループ開始点の位置を特定する文字ベクトルの cell 配列として指定します。調整目標は、特定した位置でフィードバック ループを開くことにより作成される開ループの構成に対して評価されます。 調整目標を使用して制御システムの Simulink モデルを調整する場合、 調整目標を使用して制御システムの一般化状態空間 ( たとえば、 既定値: |
|
調整目標の名前。文字ベクトルとして指定します。 たとえば、 Req.Name = 'LoopReq'; 既定値: |
例
ヒント
円錐セクターの調整目標では、 が正方で最小位相でなければなりません。ここで H(s) は指定された入力と出力間の伝達関数で、W2 はセクター行列 Q の負の不変部分空間にまたがります。
(アルゴリズムを参照)。これは、この目標の安定ダイナミクスが H の極ではなく、 の伝達零点であることを意味します。
systuneOptions
のMinDecay
およびMaxRadius
オプションは、これらの暗黙的に制約されたダイナミクスの範囲を制御します。最適化で既定の範囲が満たされない場合や、既定の範囲が他の要件と競合する場合は、systuneOptions
を使用してこれらの既定値を変更します。
アルゴリズム
次のように仮定します。
これは Q の不定分解です。 が正方で最小位相である場合、軌跡 z(t) = Hu(t) の時間領域セクター境界は次のようになります。
これは、次の周波数領域のセクター条件と同等です。
すべての周波数について上記が成り立ちます。TuningGoal.ConicSector
目標でこの同等性を使用して、時間領域の特性を、systune
でゲインの制約を処理するのと同様に処理できる周波数領域条件に変換します。この同等性を確保するために、TuningGoal.ConicSector
はまた、そのすべての零点を安定させて を最小位相にします。
セクター境界で、R インデックスはピーク ゲインがゲインの制約に対して行うのと同じ役割を果たします (セクター境界とセクター インデックスについてを参照)。次の条件は、
R インデックスが 1 未満の場合にのみ、すべての周波数で満たされます。TuningGoal.ConicSector
の viewGoal
プロットには、R インデックスの値が、周波数の関数として示されます (sectorplot
を参照)。
TuningGoal
オブジェクトを使用して制御システムを調整し、調整目標を指定する場合、ソフトウェアは調整目標を正規化されたスカラー値 f(x) に変換します。ここで x は、制御システムの自由 (調整可能) パラメーターのベクトルです。その後、ソフトウェアはパラメーター値を調整して f(x) を最小化するか、調整目標が厳密な制約値の場合、f(x) が 1 より小さくなるようにします。
セクター境界
TuningGoal.ConicSector
は次で与えられる目的関数を使用します。
R はセクター境界の R インデックスです (詳細については getSectorIndex
を参照)。
最小位相条件によって影響を受ける H のダイナミクスは、この調整目標の "安定ダイナミクス" です。systuneOptions
の MinDecay
および MaxRadius
オプションは、これらの暗黙的に制約されたダイナミクスの範囲を制御します。最適化で既定の範囲が満たされない場合や、既定の範囲が他の要件と競合する場合は、systuneOptions
を使用してこれらの既定値を変更します。
バージョン履歴
R2016b で導入
参考
systune
| systune
(for slTuner)
(Simulink Control Design) | getSectorIndex
| viewGoal
| evalGoal
| slTuner
(Simulink Control Design)