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) が指定されています。

    ヒント

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

  • <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 が有効になります。

  • 継承 — データ型の継承規則を指定します。継承 を選択すると、[論理 (コンフィギュレーション パラメーターの最適化を参照)] が有効になります。

  • 固定小数点 — 固定小数点データ型を指定します。

  • — データ型を評価する式を指定します。

依存関係

このパラメーターを有効にするには、[データ型アシスタントを表示] ボタンをクリックします。

この信号のデータ型オーバーライド モードを選択します。

  • [継承] を選択すると、Simulink はコンテキストからデータ型オーバーライド設定を継承します。コンテキストとはブロックのことで、信号を使用している Simulink®Simulink.Signal オブジェクトまたは Stateflow® チャートです。

  • [オフ] を選択すると、Simulink はコンテキストのデータ型オーバーライド設定を無視し、信号に対して指定された固定小数点データ型を使用します。

詳細については、Simulink ドキュメンテーションのデータ型アシスタントを利用したデータ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[モード][組み込み] または [固定小数点] に設定します。

ヒント

個々のデータ型に対してデータ型オーバーライドをオフにする機能により、データ型オーバーライドを適用する際に、モデル内のデータ型をさらに効果的に制御できます。たとえば、このオプションを使用すると、データ型オーバーライド設定にかかわらず、データ型が下流ブロックの要件を満たすことを確認できます。

固定小数点データを符号付きにするか、符号なしにするかを指定します。符号付きデータでは正の値と負の値を表現できますが、符号なしデータでは正の値のみを表現できます。詳細については、固定小数点データ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[モード][固定小数点] に設定します。

量子化された整数をもつ語のビット サイズを指定します。詳細については、固定小数点データ型の指定を参照してください。

依存関係

このパラメーターを有効にするには、[モード][固定小数点] に設定します。

オーバーフローを避け、量子化誤差を最小限に抑えるための固定小数点データのスケーリング方法を指定します。[整数] を指定すると、2 進小数点の位置を指定し、小数部の長さを 0 に設定した場合と同じ結果になります。

依存関係

このパラメーターを有効にするには、[データ型アシスタントを表示] ボタンをクリックして、[モード][固定小数点] に設定します。

ブロックの特性

データ型

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

直達

はい

多次元信号

はい

可変サイズの信号

はい

ゼロクロッシング検出

はい

拡張機能

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

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

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

バージョン履歴

R2006a より前に導入