Main Content

固定小数点パラメーターを使用したブロックの設定

特定の Simulink® ブロックでは、ブロックの出力の計算に指定したパラメーター (Gain ブロックの [ゲイン] パラメーターなど) の値として固定小数点数を指定できます。

メモ

S-Function と Stateflow® チャート ブロックでは固定小数点パラメーターはサポートされません。

固定小数点パラメーター値は、fi オブジェクトに評価される式にパラメーターの値を設定することにより直接指定することも、固定小数点 Simulink.Parameter オブジェクトを参照する式にパラメーターの値を設定することにより間接的に設定することもできます。

メモ

fi オブジェクトをもつモデルでのシミュレーション、またはデータ型オーバーライドの実行には Fixed-Point Designer™ ソフトウェア ライセンスが必要です。詳細は、固定小数点モデルの共有を参照してください。

固定小数点値の直接指定

ブロック パラメーターの固定小数点値は、fi オブジェクトを使用して指定できます。ブロックのダイアログのパラメーター フィールドに、fi オブジェクトの名前、またはコンストラクター関数 fi を含む式を入力するだけです。

たとえば、次の式

fi(3.3,1,8,3)

Constant ブロックの [定数値] パラメーターとして入力すると、語長 8 ビット、小数部の長さ 3 ビットの符号付き固定小数点値 3.3 が指定されます。

パラメーター オブジェクトによる固定小数点値の指定

ブロック パラメーターの固定小数点パラメーター オブジェクトは、Simulink.Parameter クラスのインスタンスを使用して指定できます。固定小数点パラメーター オブジェクトを作成するには、パラメーター オブジェクトの Value プロパティとして fi を指定するか、パラメーター オブジェクトの DataType プロパティに適切な固定小数点データ型を指定します。

たとえば、モデル内に固定小数点定数を作成するとします。これは、次のように固定小数点パラメーター オブジェクトおよび Constant ブロックを使用するとできます。

  1. MATLAB® プロンプトで次のコマンドを入力し、Simulink.Parameter クラスのインスタンスを作成します。

    my_fixpt_param = Simulink.Parameter
  2. fi オブジェクトの名前、またはパラメーター オブジェクトの Value プロパティとしてコンストラクター関数 fi を含む式を指定します。

    my_fixpt_param.Value = fi(3.3,1,8,3)

    代わりに、パラメーター オブジェクトの Value プロパティと DataType プロパティを別々に設定することもできます。この場合、Simulink.AliasType オブジェクト、Simulink.NumericType オブジェクト、または fixdt 式を使用して適切な固定小数点データ型を指定します。たとえば、次のコマンドでは、fixdt 式を DataType として使用することで、パラメーター オブジェクトの値とデータ型が別々に設定されます。

    my_fixpt_param.Value = 3.3;
    my_fixpt_param.DataType = 'fixdt(1,8,2^-3,0)'
  3. パラメーター オブジェクトをブロックのパラメーターの値として指定します。たとえば、次のモデルでは、my_fixpt_paramConstant ブロックの [定数値] パラメーターを指定します。

    Constant ブロックは語長 8 ビット、小数部の長さ 3 ビットの符号付き固定小数点値 3.3 を出力します。

関連するトピック