exponenta event banner

MinMax

Минимальное или максимальное входное значение на выходе

  • Библиотека:
  • Операции с симуляцией/математикой

    Кодер HDL/Математические операции

  • MinMax block

Описание

Блок MinMax выводит либо минимальный, либо максимальный элемент, либо элементы входных данных. Можно выбрать, будет ли блок выводить минимальное или максимальное значение, задав параметр Function.

Блок MinMax игнорирует любое входное значение NaN, за исключением случаев, когда каждое входное значение равно NaN. Когда все входные значения NaN, выходной сигнал: NaN, либо как скаляр, либо как значение каждого элемента выходного вектора.

Порты

Вход

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

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

  • Когда блок имеет один входной порт, вход должен быть скаляром или вектором. Блок выводит скаляр, равный минимальному или максимальному элементу входного вектора.

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

Зависимости

Для поддержки матричного ввода необходимо задать для параметра Number of input ports целое число больше единицы. Все нескалярные входные данные должны иметь одинаковые размеры.

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

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

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

Зависимости

Чтобы обеспечить более одного входного сигнала, установите для параметра Number of input ports целое число больше 1.

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

Продукция

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

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

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

Параметры

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

Главный

Укажите, следует ли применять функцию min или max на вход.

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

Параметр блока: Function
Текст: символьный вектор
Значения: 'min' | 'max'
По умолчанию: 'min'

Укажите количество входов в блок.

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

Параметр блока: Inputs
Текст: символьный вектор
Значения: positive integer
По умолчанию: '1'

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

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

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

Укажите время выборки в качестве значения, отличного от -1. Дополнительные сведения см. в разделе Указание времени образца.

Зависимости

Этот параметр не отображается, если для него явно не задано значение, отличное от -1. Дополнительные сведения см. в разделе Блоки, для которых образец времени не рекомендуется.

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

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

Атрибуты сигнала

Установите этот флажок, чтобы все входные данные имели одинаковый тип данных.

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

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

Меньшее значение диапазона вывода, которое проверяет Simulink ®.

Simulink использует минимум для выполнения:

Примечание

Минимальный выходной сигнал не насыщает и не отсекает фактический выходной сигнал. Вместо этого используйте блок «Насыщенность».

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

Параметр блока: OutMin
Текст: символьный вектор
Значения: '[ ]'| скаляр
По умолчанию: '[ ]'

Верхнее значение диапазона вывода, которое проверяет Simulink.

Simulink использует максимальное значение для выполнения:

Примечание

Выходной максимум не насыщает и не отсекает фактический выходной сигнал. Вместо этого используйте блок «Насыщенность».

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

Параметр блока: OutMax
Текст: символьный вектор
Значения: '[ ]'| скаляр
По умолчанию: '[ ]'

Выберите тип данных для вывода. Тип может быть унаследован, указан непосредственно или выражен как объект типа данных, например Simulink.NumericType.

Нажмите кнопку Показать помощник по типам данных, чтобы отобразить помощник по типам данных, который помогает задать атрибуты типов данных. Дополнительные сведения см. в разделе Определение типов данных с помощью помощника по типам данных.

Зависимости

Если входные данные имеют тип данных с плавающей запятой, меньший, чем единичная точность, Inherit: Inherit via internal rule тип выходных данных зависит от настройки выходного типа Inherit с плавающей запятой, меньшего, чем параметр конфигурации с одинарной точностью. Типы данных меньше, чем единичная точность, когда количество битов, необходимое для кодирования типа данных, меньше, чем 32 бита, необходимых для кодирования типа данных с одинарной точностью. Например, half и int16 меньше, чем единичная точность.

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

Параметр блока: OutDataTypeStr
Текст: символьный вектор
Значения: 'Inherit: Inherit via internal rule' | 'Inherit: Inherit via back propagation' | 'Inherit: Same as first input' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | '<data type expression>'
По умолчанию: 'Inherit: Inherit via internal rule'

Выберите этот параметр, чтобы инструменты с фиксированной точкой не переопределяли тип данных «Вывод», указанный в блоке. Дополнительные сведения см. в разделе Использование параметров типа выходных данных блокировки (конструктор фиксированных точек).

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

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

Укажите режим округления для операций с фиксированной точкой. Дополнительные сведения см. в разделе Округление (конструктор фиксированных точек).

Параметры блока всегда округляются до ближайшего представимого значения. Для управления округлением параметра блока введите выражение с помощью функции округления MATLAB ® в поле маски.

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

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

Укажите, будут ли переполнения насыщаться или переноситься.

ДействиеОбъяснениеВлияние на переполнениеПример

Установите этот флажок (on).

Возможно переполнение модели, и требуется явная защита от насыщения в сгенерированном коде.

Переполнения насыщаются минимальным или максимальным значением, которое может представлять тип данных.

Максимальное значение, int8 (со знаком, 8-разрядное целое число) может представлять тип данных 127. Любой результат операции блока, превышающий это максимальное значение, вызывает переполнение 8-разрядного целого числа. Если флажок установлен, выходной сигнал блока насыщается на уровне 127. Аналогично, блочный выход насыщается при минимальном выходном значении -128.

Не устанавливайте этот флажок (off).

Требуется оптимизировать эффективность созданного кода.

Необходимо избегать чрезмерного указания того, как блок обрабатывает сигналы вне диапазона. Дополнительные сведения см. в разделе Устранение ошибок диапазона сигналов.

Переполнение до соответствующего значения, представляемого типом данных.

Максимальное значение, int8 (со знаком, 8-разрядное целое число) может представлять тип данных 127. Любой результат операции блока, превышающий это максимальное значение, вызывает переполнение 8-разрядного целого числа. Если флажок снят, программное обеспечение интерпретирует значение, вызывающее переполнение, как int8, что может привести к непреднамеренному результату. Например, результат блока 130 (двоичный 1000 0010), выраженный как int8, составляет -126.

Если этот флажок установлен, насыщение применяется ко всем внутренним операциям блока, а не только к выводу или результату. Обычно процесс генерации кода может обнаруживать, когда переполнение невозможно. В этом случае генератор кода не создает код насыщения.

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

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

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

Типы данных

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

Прямой проход

yes

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

yes

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

yes

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

yes

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

Создание кода C/C + +
Создайте код C и C++ с помощью Simulink ® Coder™

.

Создание кода ПЛК
Создание структурированного текстового кода с помощью Coder™ Simulink ® PLC

.

Преобразование с фиксированной точкой
Проектирование и моделирование систем с фиксированной точкой с помощью Designer™ с фиксированной точкой.

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