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

線形化時に摂動するブロックの摂動レベルの変更

解析ヤコビアンが事前にプログラムされていないブロックは、数値摂動法を使用して線形化されます。

ブロックの摂動レベルの変更

以下の例では、magball モデルの Magnetic Ball Plant ブロックに対する摂動レベルを変更する方法を説明します。摂動レベルの変更により線形化の結果が変わります。

既定の摂動の大きさは、10-5(1+|x|) です。ここで、x は、摂動状態または入力の操作点の値です。

摂動レベルを変更する前にモデルを開きます。

状態の摂動レベルを 107(1+|x|) に変更するには、以下を入力します。ここで、x は状態値です。

blockname='magball/Magnetic Ball Plant'
set_param(blockname,'StatePerturbationForJacobian','1e-7')

入力の摂動レベルを 107(1+|x|) に変更するには、以下の手順に従います。ここで、x は入力信号値です。

  1. システムを開き、ブロック端子ハンドルを取得します。

    sys = 'magball';
    open_system(sys)
    blockname = 'magball/Magnetic Ball Plant';
    ph = get_param(blockname,'PortHandles')
    
  2. Inport 値のハンドルを取得します。

    p_in = ph.Inport(1)
    
  3. Inport の摂動レベルを設定します。

    set_param(p_in,'PerturbationForJacobian','1e-7')

整数値ブロックの摂動レベル

インデックス作成のために整数入力端子を必要とするカスタム ブロックが次に当てはまる場合、線形化問題が発生することがあります。

  • 入力値の小規模な摂動をサポートしない

  • 倍精度入力を受け入れる

この問題を解決するには、このようなブロックの摂動レベルをゼロに設定します (これにより、ブロックの線形化のゲインが 1 に設定されます)。