Оператор отношения

Выполните заданную реляционную операцию на входных параметрах

  • Библиотека:
  • Simulink / Обычно Используемые Блоки

    Simulink / Логика и Битовые операции

    HDL Coder / Обычно Используемые Блоки

    HDL Coder / Операции Плавающей точки HDL

    HDL Coder / Логика и Битовые операции

Описание

Блок Relational Operator выполняет заданную реляционную операцию на входе. Значение, которое вы выбираете для параметра Relational operator, определяет, принимает ли блок один или два входных сигнала.

2D режим ввода

По умолчанию блок Relational Operator сравнивает два входных параметров с помощью параметра Relational operator, который вы задаете. Первый вход соответствует главному входному порту и второму входу к нижнему входному порту. (См. Местоположение порта После Вращения или Зеркального отражения для описания порядка порта для различных ориентаций блока.)

Можно задать одну из следующих операций в 2D режиме ввода:

ОперацияОписание

==

Верный, если первый вход равен второму входу

~=

Верный, если первый вход не равен второму входу

<

Верный, если первый вход является меньше, чем второй вход

<=

Верный, если первый вход меньше чем или равен второму входу

>=

Верный, если первый вход больше, чем или равен второму входу

>

Верный, если первый вход больше, чем второй вход

Можно задать входные параметры как скаляры, массивы или комбинацию скаляра и массива.

Для...Вывод...
Скалярные входные параметрыСкаляр
Входные параметры массивовМассив тех же размерностей, где каждый элемент является результатом поэлементно сравнение входных массивов
Смешанный скаляр и входные параметры массивовМассив, где каждый элемент является результатом сравнения между скаляром и соответствующим элементом массива

Вход с меньшей положительной областью значений преобразован в тип данных другого входа оффлайн с помощью раунда-к-самому-близкому и насыщения. Это преобразование происходит перед сравнением.

Можно задать тип выходных данных с помощью параметра Output data type. Вывод равняется 1 для истины и 0 для лжи.

Совет

Выберите тип выходных данных, который представляет нуль точно. Типы данных, которые удовлетворяют это условие, включают целые числа со знаком и беззнаковое целое и любой тип данных с плавающей точкой.

Режим с одним входом

Когда вы выбираете одну из следующих операций для Relational operator, блок переключается на режим с одним входом.

ОперацияОписание

isInf

Верный, если входом является Inf

isNaN

Верный, если входом является NaN

isFinite

Верный, если вход конечен

Для входа, который не является плавающей точкой, блок производит следующий вывод.

Тип данныхОперацияБлок Вывод
  • Фиксированная точка

  • Булевская переменная

  • Встроенное целое число

isInf

Ложь

isNaN

Ложь

isFinite

Ложь

Правила для распространения типа данных

Следующие правила касаются распространения типа данных, когда ваш блок имеет один или несколько входных портов с незаданными типами данных.

Когда блок находится в...И...Использование блока...
2D режим вводаОба входных порта имеют незаданные типы данных double как тип данных по умолчанию для обоих входных параметров
Один входной порт имеет незаданный тип данныхТип данных от заданного входного порта как тип данных по умолчанию другого порта
Режим с одним входомВходной порт имеет незаданный тип данных double как тип данных по умолчанию для входа

Порты

Входной параметр

развернуть все

Первый входной сигнал, заданный как скаляр, вектор или матрица.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated

Второй входной сигнал, заданный как скаляр, вектор или матрица.

Зависимости

Чтобы включить этот порт, установите Relational operator на ==, ~=, <, <=, >= или >.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated

Вывод

развернуть все

Выходной сигнал, состоя из нулей и единиц, с теми же размерностями как вход. Вы управляете типом выходных данных с параметром Output data type.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated

Параметры

развернуть все

Основной

Задайте операцию для сравнения двух входных параметров или определения типа сигнала одного входа.

  • == — Верный, если первый вход равен второму входу

  • ~= — Верный, если первый вход не равен второму входу

  • < — Верный, если первый вход является меньше, чем второй вход

  • <= — Верный, если первый вход меньше чем или равен второму входу

  • >= — Верный, если первый вход больше, чем или равен второму входу

  • > — Верный, если первый вход больше, чем второй вход

  • isinf Верный, если входом является Inf

  • isnan Верный, если входом является NaN

  • isfinite Верный, если вход конечен

Программируемое использование

Параметры блоков: Operator
Ввод: символьный вектор
Значения: '==' | '~=' | '<' | '<=' | '>=' | '>' | 'isInf' | 'isNaN' | 'isFinite'
Значение по умолчанию: '<='

Выберите, чтобы включить обнаружение пересечения нулем. Для получения дополнительной информации смотрите Обнаружение Пересечения нулем.

Программируемое использование

Параметр: ZeroCross
Ввод: вектор символов, строка
Значения: 'on' | 'off'
Значение по умолчанию: 'on'

Задайте шаг расчета как значение кроме-1. Для получения дополнительной информации см. Настройку времени выборки.

Зависимости

Этот параметр не видим, если он явным образом не установлен в значение кроме -1. Чтобы узнать больше, смотрите Блоки, для Которых Не Рекомендуется Шаг расчета.

Программируемое использование

Параметры блоков: SampleTime
Ввод: символьный вектор
Значения: скаляр
Значение по умолчанию: '-1'

Тип данных

Чтобы потребовать, чтобы все входные параметры блока имели совпадающий тип данных, установите этот флажок. Когда вы снимаете этот флажок, входные параметры могут иметь различные типы данных.

Зависимости

Этот флажок не доступен, когда вы устанавливаете Relational operator на isInf, isNaN или isFinite, потому что в тех режимах блок только имеет один входной порт.

Программируемое использование

Параметры блоков: InputSameDT
Ввод: символьный вектор
Значения: 'off' | 'on
Значение по умолчанию: 'off'

Задайте тип выходных данных. Когда вы выбираете:

  • boolean — Блок вывод имеет тип данных boolean.

  • Inherit: Logical (see Configuration Parameters: Optimization) — Блок использует параметр конфигурации Implement logic signals as Boolean data, чтобы задать тип выходных данных (см. сигналы логики Реализации как булевы данные (по сравнению с двойным)).

    Примечание

    Эта опция поддерживает модели, созданные, прежде чем опция boolean была доступна. Используйте одну из других опций, предпочтительно boolean, для новых моделей.

  • fixdt(1,16) — Блок вывод имеет заданный тип данных с фиксированной точкой fixdt(1,16).

    Совет

    Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.

  • <data type expression> — Блок вывод имеет тип данных, который вы задаете как выражение типа данных, например, Simulink.NumericType.

    Совет

    Ввести встроенный тип данных (double, single, int8, uint8, int16, uint16, int32, или uint32), заключают выражение в одинарные кавычки. Например, введите 'double' вместо double.

Программируемое использование

Параметры блоков: OutDataTypeStr
Ввод: символьный вектор
Значения: 'Inherit: Logical (see Configuration Parameters: Optimization)' | 'boolean' | 'fixdt(1,16)' | '<data type expression>'
Значение по умолчанию: 'boolean'

Задайте округляющийся режим для операций фиксированной точки. Можно выбрать:

Ceiling

Округляет положительные и отрицательные числа к положительной бесконечности. Эквивалентный функции MATLAB®ceil.

Convergent

Номер раундов к самому близкому представимому значению. Если связь происходит, раунды к самому близкому даже целое число. Эквивалентный функции convergent Fixed-Point Designer™.

Floor

Округляет положительные и отрицательные числа к отрицательной бесконечности. Эквивалентный функции floor MATLAB.

Nearest

Номер раундов к самому близкому представимому значению. Если связь происходит, раунды к положительной бесконечности. Эквивалентный Fixed-Point Designer функция nearest.

Round

Номер раундов к самому близкому представимому значению. Если связь происходит, округляет положительные числа к положительной бесконечности и округляет отрицательные числа к отрицательной бесконечности. Эквивалентный Fixed-Point Designer функция round.

Simplest

Принимает решение между округлением к полу и округлением к нулю сгенерировать округление кода, который максимально эффективен.

Zero

Номер раундов к нулю. Эквивалентный функции fix MATLAB.

Для получения дополнительной информации смотрите Округление (Fixed-Point Designer).

Программируемое использование

Параметры блоков: RndMeth
Ввод: символьный вектор
Значения: 'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero'
Значение по умолчанию: 'Simplest'

Характеристики блока

Типы данных

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

Прямое сквозное соединение

yes

Многомерные сигналы

yes

Сигналы переменного размера

yes

Обнаружение пересечения нулем

yes

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Генерация кода PLC
Сгенерируйте код Структурированного текста с помощью Simulink® PLC Coder™.

Преобразование фиксированной точки
Преобразуйте алгоритмы с плавающей точкой в фиксированную точку с помощью Fixed-Point Designer™.

Смотрите также

Представлено до R2006a