固定小数点パラメーターを使用したブロックの設定
特定の 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 ブロックを使用するとできます。
MATLAB® プロンプトで次のコマンドを入力し、
Simulink.Parameter
クラスのインスタンスを作成します。my_fixpt_param = Simulink.Parameter
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)'
パラメーター オブジェクトをブロックのパラメーターの値として指定します。たとえば、次のモデルでは、
my_fixpt_param
は Constant ブロックの [定数値] パラメーターを指定します。Constant ブロックは語長 8 ビット、小数部の長さ 3 ビットの符号付き固定小数点値 3.3 を出力します。