Слияние

Объедините несколько сигналов в единственный сигнал

  • Библиотека:
  • Simulink / Маршрутизация Сигнала

Описание

Блок Merge комбинирует входные параметры в единственный вывод. Выходное значение в любое время равно последний раз вычисленному выводу его ведущих блоков. Задайте количество входных параметров путем определения Номера параметра входного параметра.

Используйте блоки Слияния, чтобы чередовать входные сигналы, которые обновляют в разное время в объединенный сигнал, в котором чередованные значения сохраняют свои отдельные тождества и времена. Чтобы объединить сигналы, которые обновляют в то же время в массив или матричный сигнал, используйте блок Concatenate.

Инструкции для Использования блока слияния

Когда вы используете блок Merge, следуете этим инструкциям:

  • Всегда использование условно выполняло подсистемы, чтобы управлять блоками Слияния.

  • Гарантируйте, что самое большее одно из управления условно выполняемыми подсистемами выполняет в любое время шаг.

  • Гарантируйте, чтобы все входные сигналы имели ту же частоту дискретизации.

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

  • Для всех условно выполняемых блоков Выходного порта подсистемы, которые управляют блоками Слияния, установите Вывод когда отключенный параметр к held.

  • Если вывод Блока модели прибывает из блока MATLAB function или графика Stateflow®, не соединяйте тот выходной порт с входным портом блока Merge.

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

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

Соедините шиной поддержку

Блок Merge является способным к шине блоком. Входные параметры могут быть виртуальными или невиртуальными сигналами шины, подвергающимися этим ограничениям:

  • Количество входных параметров должно быть больше, чем один.

  • Начальный вывод должен быть нулем, ненулевым скаляром или конечной числовой структурой.

  • Позвольте неравные ширины порта, должен быть отключен.

  • Все входные параметры к слиянию должны быть шинами и должны быть эквивалентными (та же иерархия с идентичными именами и атрибутами для всех элементов).

Все сигналы в невиртуальном входном параметре шины к блоку Merge должны иметь ту же частоту дискретизации. Можно использовать блок Rate Transition, чтобы изменить частоту дискретизации отдельного сигнала, или всех сигналов в шине.

Слияние S-функции Выходные параметры

Блок Merge может объединить сигнал от Блока s-function, только если память, используемая, чтобы сохранить вывод от S-функции, является допускающей повторное использование. Программное обеспечение Simulink® отображает сообщение об ошибке, при попытке обновить или моделировать модель, которая соединяет порт одноразового использования Блока s-function к блоку Merge. Смотрите ssSetOutputPortOptimOpts.

Ограничения

  • Все сигналы, которые соединяются с блоком Merge, являются функционально тем же сигналом. Поэтому они подвергаются ограничению, что данный сигнал может иметь самое большее один связанный объект сигнала. Смотрите Simulink.Signal для получения дополнительной информации.

  • Диагностика во время выполнения не запускается, если входные параметры к блоку слияния от единственного инициатора. Например, единственным инициатором могла быть диаграмма Stateflow, выполняющая подсистемы вызова функций, которые соединяются с блоком Merge.

  • Не устанавливайте выходные порты условно выполняемых подсистем, объединяемых, чтобы сбросить, когда отключено. Это действие может заставить несколько подсистем обновлять блок в то же время. В частности отключенная подсистема обновляет блок Merge путем сброса его вывода, в то время как активированная подсистема обновляет блок путем вычисления его вывода.

    Чтобы предотвратить это поведение, установите параметр блока Outport Вывод, когда отключено к held для каждой условно выполняемой объединяемой подсистемы.

    Примечание

    При использовании Упрощенный Режим Инициализации, установите параметр блока Outport Вывод, когда отключено к held.

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

Можно использовать массив шин как входной сигнал к блоку Merge с этими ограничениями:

  • Позвольте неравные ширины порта — Очищают этот параметр.

  • Начальное условие — можно задать это использование параметра:

    • Значение 0. В этом случае, каждый из отдельных сигналов в массиве шин используют начальное значение 0.

    • Массив структур, который задает начальное условие для каждого из отдельных сигналов в массиве шин.

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

Порты

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

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

Первый входной сигнал объединен с другими входными сигналами.

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | булевская переменная | фиксированная точка | перечисленный | шина

n th входной сигнал объединен с другими входными сигналами.

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | булевская переменная | фиксированная точка | перечисленный | шина

Вывод

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

Выходной сигнал объединен от входных сигналов.

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | булевская переменная | фиксированная точка | перечисленный | шина

Параметры

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

Задайте количество входных сигналов, чтобы объединить. Блок создает порт для каждого входного сигнала.

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

Блочный параметр: Inputs
Ввод: символьный вектор
Значения: целое число
Значение по умолчанию: '2'

Задайте начальное значение выходного сигнала. Если вы не задаете начальное выходное значение, то начальная буква вывела, зависит от режима инициализации и ведущих блоков.

В Упрощенном режиме инициализации, для незаданного (пустой матричный []) значение Initial вывод, блок использует начальное значение по умолчанию типа выходных данных. Для получения информации о начальном значении по умолчанию смотрите Значения сигналов Инициализации. В Классическом режиме инициализации, для незаданного (пустой матричный []) значение Initial вывод, начальный вывод блока равняется последний раз оцененному начальному выводу ведущих блоков. Поскольку упорядоченное расположение инициализации для этих источников может отличаться, инициализация может быть противоречивой для моделирования и генерации кода модели.

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

Блочный параметр: InitialOutput
Ввод: символьный вектор
Значения: скаляр | вектор
Значение по умолчанию: '[ ]'

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

max(w1+o1, w2+o2, ... wn+on)

где w1... wn является ширинами входных сигналов и o1... on является смещениями для входных сигналов.

Если вы снимаете этот флажок, блок Merge принимает только входные параметры равных размерностей и выводит сигнал тех же размерностей как входные параметры.

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

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

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

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

Блочный параметр: InputPortOffsets
Ввод: символьный вектор
Значения: скаляр | вектор
Значение по умолчанию: '[ ]'

Блокируйте характеристики

Типы данных

double | single | Boolean | base integer | fixed point | enumerated | bus | string

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

No

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

Yes

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

No

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

No

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

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

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

Была ли эта тема полезной?