Main Content

Abs

入力の絶対値の出力

  • Abs block

ライブラリ:
Simulink / Math Operations
HDL Coder / HDL Floating Point Operations
HDL Coder / Math Operations

説明

Abs ブロックは入力の絶対値を出力します。

符号付き整数データ型の場合、最小の負の値の絶対値はそのデータ型で表現できません。この場合、[整数オーバーフローで飽和] チェック ボックスがこのブロックの動作を制御します。

ユーザーの操作ブロックの動作それに伴う処理
このチェック ボックスをオンにする整数データ型の最大の正の値に飽和されます。
  • 8 ビット符号付き整数の場合、-128 は 127 にマッピングされます。

  • 16 ビット符号付き整数の場合、-32768 は 32767 にマッピングされます。

  • 32 ビット符号付き整数の場合、-2147483648 は 2147483647 にマッピングされます。

このチェック ボックスをオンにしない整数データ型の最小の負の値にラップされます。
  • 8 ビット符号付き整数の場合、-128 は -128 のままです。

  • 16 ビット符号付き整数の場合、-32768 は -32768 のままです。

  • 32 ビット符号付き整数の場合、-2147483648 は -2147483648 のままです。

Abs ブロックはゼロクロッシング検出をサポートします。ただし、ダイアログ ボックスで [ゼロクロッシング検出を有効にする] が選択されている場合、ブロックは固定小数点ツールによるシミュレーションの最小値または最大値をレポートしません。固定小数点ツールを使用してモデルの解析を行う場合は、まず、モデルのすべての Abs ブロックについてゼロクロッシング検出を無効にしてください。

端子

入力

すべて展開する

Absolute Value ブロックへの入力信号。

データ型: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

出力

すべて展開する

入力信号の絶対値。

データ型: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point

パラメーター

すべて展開する

メイン

ゼロクロッシング検出を有効にする場合は選択します。詳細については、ゼロクロッシング検出を参照してください。

プログラムでの使用

ブロック パラメーター: ZeroCross
: 文字ベクトル | string
: 'off' | 'on'
既定の設定: 'on'

サンプルの時間間隔を指定します。サンプル時間を継承するには、このパラメーターを -1 に設定します。詳細については、サンプル時間の指定を参照してください。

依存関係

このパラメーターは、-1 以外の値に設定した場合にのみ表示されます。詳細は、サンプル時間が推奨されないブロックを参照してください。

プログラムでの使用

ブロック パラメーター: SampleTime
型: string スカラーまたは文字ベクトル
既定の設定: "-1"

信号属性

データ属性の設定には [データ型アシスタント] が役立ちます。[データ型アシスタント] を使用するには、the Show data type assistant button をクリックします。詳細については、データ型アシスタントを利用したデータ型の指定を参照してください。

Simulink® がチェックする出力範囲の下限値。

Simulink は、最小値を使って以下を行います。

メモ

[出力の最小値] により、実際の出力信号が飽和する (またはクリップされる) ことはありません。代わりに、Saturation ブロックを使用してください。

プログラムでの使用

ブロック パラメーター: OutMin
: 文字ベクトル
: '[ ]'| スカラー
既定の設定: '[ ]'

Simulink がチェックする出力範囲の上限値。

Simulink は、最大値を使って以下を行います。

メモ

[出力の最大値] により、実際の出力信号が飽和する (またはクリップされる) ことはありません。代わりに、Saturation ブロックを使用してください。

プログラムでの使用

ブロック パラメーター: OutMax
: 文字ベクトル
: '[ ]'| スカラー
既定の設定: '[ ]'

出力のデータ型を選択します。型は継承されるか、直接指定されるか、Simulink.NumericType などのデータ型オブジェクトとして表現されます。

依存関係

入力が単精度より小さい浮動小数点データ型の場合、[継承: 内部ルールによる継承] 出力データ型は単精度より小さい浮動小数点の出力型を継承するコンフィギュレーション パラメーターの設定によって変わります。データ型の符合化に必要なビット数が単精度データ型の符合化に必要な 32 ビットより少ない場合、データ型は単精度より小さくなります。たとえば、halfint16 は単精度より小さくなります。

プログラムでの使用

ブロック パラメーター: OutDataTypeStr
: 文字ベクトル
: 'Inherit: Same as input' | 'Inherit: Inherit via internal rule'| 'Inherit: Inherit via back propagation' | 'single' | 'half' | 'int8' | 'uint8' | int16 | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | fixdt(1,16,0) | fixdt(1,16,2^0,0) | fixdt(1,16,2^0,0) | '<data type expression>'
既定の設定: 'Inherit: Same as input'

固定小数点ツールが、ブロックに指定した [出力] データ型をオーバーライドしないようにするには、このパラメーターを選択します。詳細については、[出力データ型の設定をロックする] の使用 (Fixed-Point Designer)を参照してください。

プログラムでの使用

ブロック パラメーター: LockScale
型: 文字ベクトル
値: 'off' | 'on'
既定の設定: 'off'

固定小数点演算の丸めモードを指定します。詳細については、丸め (Fixed-Point Designer)を参照してください。

ブロック パラメーターは常に最近傍の表現可能な値に丸められます。ブロックパラメーターの丸めを直接制御するには、MATLAB® の丸め関数を使用する式をマスク フィールドに入力します。

プログラムでの使用

ブロック パラメーター: RndMeth
型: 文字ベクトル
値: 'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero'
既定の設定: 'Floor'

このチェック ボックスをオンにすると、飽和は出力や結果だけでなく、このブロックの内部演算すべてに適用されます。通常、オーバーフローが可能ではない場合は、コード生成プロセスで検出されます。この場合、コード ジェネレーターでは飽和コードは生成されません。

動作このアクションを行う理由オーバーフロー発生時に起きること
このチェック ボックスをオンにする。モデルでオーバーフローが発生する可能性があるので、生成コードに飽和保護を明示的に組み込むことをお勧めします。オーバーフローは、データ型が表現できる最大値に飽和します。数値 130 は符号付き 8 ビット整数 1 つに収まりきらないので、127 に飽和します。
このチェック ボックスをオンにしない。生成コードの効率を最適化することをお勧めします。オーバーフローは、データ型によって表現される適切な値にラップされます。数値 130 は符号付き 8 ビット整数 1 つに収まりきらないので、-126 にラップされます。

プログラムでの使用

ブロック パラメーター: SaturateOnIntegerOverflow
: 文字ベクトル
: 'off' | 'on'
既定の設定: 'off'

ブロックの特性

データ型

double | fixed point | half | integer | single

直達

はい

多次元信号

はい

可変サイズの信号

はい

ゼロクロッシング検出

はい

拡張機能

C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。

PLC コード生成
Simulink® PLC Coder™ を使用して構造化テキスト コードを生成します。

固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。

バージョン履歴

R2006a より前に導入

参考

|