Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

Relational Operator

指定した比較演算を入力に適用

  • Relational Operator block

ライブラリ:
Simulink / Commonly Used Blocks
Simulink / Logic and Bit Operations
HDL Coder / Commonly Used Blocks
HDL Coder / HDL Floating Point Operations
HDL Coder / Logic and Bit Operations

説明

Relational Operator ブロックは、入力に対して、指定された関係演算を実行します。ブロックが受け入れる入力信号が 1 つであるか 2 つであるかは、[関係演算子] パラメーターに選択した値によって決まります。

2 入力モード

既定の設定では、Relational Operator ブロックは指定された [関係演算子] パラメーターを使用して 2 つの入力を比較します。最初の入力が一番上の入力端子に対応し、2 番目の入力が一番下の入力端子に対応します (ブロックの向きに関する端子の順番の詳細は、回転または反転後の端子の位置を参照してください)。

2 入力モードでは次のいずれかの操作を指定できます。

演算説明

==

最初の入力が 2 番目の入力と等しければ True

~=

最初の入力が 2 番目の入力と等しくなければ True

<

最初の入力が 2 番目の入力より小さければ True

<=

最初の入力が 2 番目の入力以下であれば True

>=

最初の入力が 2 番目の入力以上であれば True

>

最初の入力が 2 番目の入力より大きければ True

入力は、スカラー、配列、またはスカラーと配列の組み合わせで指定することができます。

対象出力
スカラー入力スカラー
配列入力同じ次元の配列入力の場合、各要素は入力配列の要素単位の比較の結果となります。
スカラーと配列が混在する入力出力は配列です。この場合の各要素は、スカラーと対応する配列要素との間の比較の結果です。

より小さな正の値域にある入力は、最近傍の丸めおよび飽和を使用して、他の入力オフラインのデータ型に変換されます。この変換は、比較を行う前に実行されます。

[出力データ型] パラメーターを使用して出力データ型を指定できます。出力は、true のとき 1、false のとき 0 になります。

ヒント

正確にゼロを表す出力データ型を選択します。この条件を満たすデータ型には、符号付きおよび符号なし整数と任意の浮動小数点データ型が含まれます。

1 入力モード

[関係演算子] に次の操作の 1 つを選択すると、ブロックは 1 入力モードに切り替わります。

演算説明

isInf

入力が Inf の場合は True

isNaN

入力が NaN の場合は True

isFinite

入力が finite の場合は True

浮動小数点ではない入力の場合、ブロックでは次の出力が生成されます。

データ型演算ブロック出力
  • 固定小数点

  • boolean

  • 組み込み整数

isInf

isNaN

isFinite

データ型の伝播の規則

次の規則は、ブロックの 1 つ以上の入力端子でデータ型が指定されていない場合にデータ型の伝播に適用されます。

ブロックのモードそれに伴う処理適用される規則
2 入力モード両方の入力端子ともデータ型が指定されていない場合 両方の入力の既定のデータ型として double を使用します
片方の入力端子のデータ型が指定されていない場合もう一方の既定のデータ型として、指定された入力端子のデータ型を使用します
1 入力モード入力端子のデータ型が指定されていない場合 入力の既定のデータ型として double を使用します

端子

入力

すべて展開する

スカラー、ベクトルまたは行列として指定される最初の入力信号。

データ型: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated
複素数のサポート: あり

スカラー、ベクトルまたは行列として指定される 2 番目の入力信号。

依存関係

この端子を有効にするには、[関係演算子][==][~=][<][<=][>=]、または [>] に設定します。

データ型: half | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated
複素数のサポート: あり

出力

すべて展開する

次元が入力と同じで、0 と 1 で構成される出力信号。[出力データ型] パラメーターを使用して、出力データ型を制御します。

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

パラメーター

すべて展開する

メイン

2 つの入力を比較するか、1 つの入力の信号タイプを判断する操作を指定します。

  • == — 最初の入力が 2 番目の入力と等しければ True

  • ~= — 最初の入力が 2 番目の入力と等しくなければ True

  • < — 最初の入力が 2 番目の入力より小さければ True

  • <= — 最初の入力が 2 番目の入力以下であれば True

  • >= — 最初の入力が 2 番目の入力以上であれば True

  • > — 最初の入力が 2 番目の入力より大きければ True

  • isInf — 入力が Inf の場合は True

  • isInf — 入力が NaN の場合は True

  • isFinite — 入力が finite の場合は True

プログラムでの使用

ブロック パラメーター: Operator
型: 文字ベクトル
値: '==' | '~=' | '<' | '<=' | '>=' | '>' | 'isInf' | 'isNaN' | 'isFinite'
既定の設定: '<='

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

プログラムでの使用

パラメーター: ZeroCross
型: 文字ベクトル、string
値: 'on' | 'off'
既定の設定: 'on'

サンプル時間を -1 以外の値として指定します。詳細については、サンプル時間の指定を参照してください。

依存関係

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

プログラムでの使用

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

データ型

すべてのブロック入力が同じデータ型をもつ必要がある場合は、このチェック ボックスをオンにします。このチェック ボックスをオフにすると、入力が異なるデータ型をもつことができます。

依存関係

[関係演算子][isInf][isNaN]、または [isFinite] に設定した場合、これらのモードではブロックは 1 つの入力端子しかもたないため、このチェック ボックスは利用できません。

プログラムでの使用

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

出力データ型を指定します。選択肢を以下に示します。

  • boolean — ブロック出力のデータ型は boolean です。

  • [継承: 論理] (コンフィギュレーション パラメーターの最適化を参照) — ブロックは [boolean データとして論理信号を処理] コンフィギュレーション パラメーターを使用して、出力データ型を指定します (boolean データ (対 double) として論理信号を処理を参照)。

    メモ

    このオプションで、boolean オプションが使用可能になる前に作成されたモデルがサポートされます。新しいモデルに対しては、他のオプションのいずれか、できれば [boolean] を使用してください。

  • fixdt(1,16) — ブロック出力には固定小数点データ型 fixdt(1,16) が指定されています。

    ヒント

    [データ型アシスタントを表示] ボタン をクリックして、データ型の属性の設定に役立つ [データ型アシスタント] を表示します。詳細については、データ型アシスタントを利用したデータ型の指定を参照してください。

  • <data type expression> — ブロック出力のデータ型は、データ型式として指定したデータ型です (たとえば、Simulink.NumericType)。

    ヒント

    組み込みデータ型 (doublesingleint8uint8int16uint16int32、または uint32) を入力するには、式を一重引用符で囲みます。たとえば、「double」ではなく、「'double'」と入力します。

プログラムでの使用

ブロック パラメーター: OutDataTypeStr
型: 文字ベクトル
値: 'Inherit: Logical (see Configuration Parameters: Optimization)' | 'boolean' | 'fixdt(1,16)' | '<data type expression>'
既定の設定: 'boolean'

固定小数点演算の丸めモードを指定します。以下を選択できます。

正方向

正の無限大方向に正負の値を丸めます。MATLAB® 関数 ceil と等価です。

最も近い偶数方向

最も近い表現可能な値に数値を丸めます。同順位が発生した場合は、最も近い偶数の整数に丸めます。Fixed-Point Designer™ 関数 convergent と等価です。

負方向

負の無限大方向に正負の値を丸めます。MATLAB 関数 floor と等価です。

最も近い正の整数方向

最も近い表現可能な値に数値を丸めます。同順位が発生した場合は、正の無限大方向に丸めます。Fixed-Point Designer 関数 nearest と等価です。

最も近い整数方向

最も近い表現可能な値に数値を丸めます。同順位が発生した場合は、正の数値を正の無限大方向、負の数値を負の無限大方向に丸めます。Fixed-Point Designer 関数 round と等価です。

最も簡潔

負方向の丸めとゼロ方向の丸めのいずれかを選択し、できるだけ効率の高い丸めコードを生成します。

ゼロ方向

ゼロ方向に数値を丸めます。MATLAB 関数 fix と等価です。

詳細については、丸め (Fixed-Point Designer)を参照してください。

プログラムでの使用

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

ブロックの特性

データ型

Boolean | double | enumerated | fixed point | half | integer | single

直達

はい

多次元信号

はい

可変サイズの信号

はい

ゼロクロッシング検出

はい

拡張機能

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

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

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

バージョン履歴

R2006a より前に導入