Main Content

不十分な設計範囲情報

次の例は、設計範囲の情報が不十分であるために範囲解析で範囲情報を派生できない場合に、設計最小値と最大値の入力情報を追加指定して問題を解決する方法を示しています。

  1. ex_derived_min_max_4 モデルを開きます。MATLAB® コマンド ラインで次のように入力します。

    addpath(fullfile(docroot,'toolbox','fixpoint','examples'))
    ex_derived_min_max_4

    このモデルに、モデル内のブロックに指定された設計の最小値と最大値が表示されます。

    • Inport ブロックの In1 には、設計の最小値は指定されていますが、注釈 [-1..] が示すように最大値は指定されていません。

    • Gain ブロックの設計範囲は [-1.5..1.5] です。

    • Outport ブロックの Out1 には設計範囲は指定されていません。

    ヒント

    モデルに設計範囲を表示するには、[デバッグ] タブで [情報のオーバーレイ]、[信号のデータ範囲] を選択します。

  2. Simulink® [アプリ] タブから [固定小数点ツール] を選択します。

  3. 固定小数点ツールの [新規] ワークフローで、[固定小数点の反復的変換] を選択します。

  4. 固定小数点ツールの [設計対象のシステム (SUD)] で、変換するシステムとして ex_derived_min_max_4 を選択します。

  5. [範囲の収集モード][派生範囲] を選択します。

  6. [範囲の収集] ボタンをクリックします。

    固定小数点ツールによって、モデル内のブロックで派生した最小値と最大値が表示されます。範囲解析は、Inport ブロックの In1 に対する最大値を派生できません。ツールはこの結果を強調表示します。

  7. 問題を修正するには、In1 に対する設計の最大値を指定します。

    1. モデルで Inport ブロックの In1 をダブルクリックします。

    2. [ブロック プロパティ] ダイアログ ボックスで [信号属性] タブを選択します。

    3. このタブで [最大値]1 に設定し、[OK] をクリックします。ブロック線図を更新するには、Ctrl + D キーを押します。

      モデルの In1 のブロック注釈で最大値が更新されて [-1..1] と表示されます。

  8. 前に収集された範囲をクリアし、範囲解析を再実行します。

    1. 固定小数点ツールの [新規] ワークフローで、[範囲の収集] を選択します。

      ワークフローを変更すると、ワークフローがアクティブな間に収集された範囲データがクリアされます。

    2. [固定小数点の反復的変換] ワークフローに戻します。

    3. 範囲の収集モードとして [派生範囲] を選択します。

    4. [範囲の収集] ボタンを再度クリックして、範囲解析を再実行します。

    範囲解析で InportGain ブロックの範囲を派生できるようになります。

    ブロック派生範囲原因

    Inport In1

    [-1..1]

    ブロックで指定された設計範囲の使用

    Gain

    [-1.5..1.5]

    Gain ブロックで指定された設計範囲は [-1.5..1.5] です。ブロック入力時の派生範囲は [-1..1] (出力 In1 での派生範囲)です。したがって、ゲインは 2 であるため、Gain ブロック出力の派生範囲は、伝播範囲 [-2..2] と設計範囲 [-1.5..1.5] の交差部分です。

    Outport Out1

    [-1.5..1.5]

    Outport ブロックにローカルに指定された設計範囲がないため、Gain ブロック出力と同じになります。

関連するトピック