Мультиплексор (смеситель) Mux
Назначение:
Объединяет входные сигналы в вектор.
Параметры:
- Number of Inputs - Количество входов.
- Display option - Способ отображения. Выбирается из списка:
- bar - Вертикальный узкий прямоугольник черного цвета.
- signals - Прямоугольник с белым фоном и отображением меток входных сигналов.
- none - Прямоугольник с белым фоном без отображения меток входных сигналов.
Входные сигналы блока могут быть скалярными и (или) векторными.
Если среди входных сигналов есть векторы, то количество входов можно задавать как вектор с указанием числа элементов каждого вектора. Например, выражение [2 3 1] определяет три входных сигнала, первый сигнал - вектор из двух элементов, второй сигнал - вектор из трех элементов, и последний сигнал - скаляр. В том случае, если размерность входного вектора не совпадает с указанной в параметре Number of Inputs, то после начала расчета Simulink выдаст сообщение об ошибке. Размерность входного вектора можно задавать как -1 (минус один). В этом случае размерность входного вектора может быть любой.
Параметр Number of Inputs можно задавать также в виде списка меток сигналов, например: Vector1, Vector2, Scalar. В этом случае метки сигналов будут отображаться рядом с соответствующими соединительными линиями.
Сигналы, подаваемые на входы блока должны быть одного типа (действительного или комплексного).
Примеры использования блока Mux показаны на рис. 9.7.1.
Рис. 9.7.1. Примеры использования блока Mux
[Скачать пример]
9.7.2. Демультиплексор (разделитель) Demux
Назначение:
Разделяет входной векторный сигнал на отдельные составляющие.
Параметры:
- Number of Outputs - Количество выходов.
- Bus Selection Mode (флажок) - Режим разделения векторных сигналов.
Входным сигналами в обычном режиме является вектор, сформированный любым способом. Выходными сигналами являются скаляры или векторы, количество которых и размерность определяется параметром Number of Outputs и размерностью входного вектора.
Если количество выходов P (значение параметра Number of Outputs) равно размерности входного сигнала N, то блок выполняет разделение входного вектора на отдельные элементы.
Если количество выходов P меньше, чем размерность входного сигнала N, то размерность первых P-1 выходных сигналов равна отношению N/P, округленному до ближайшего большего числа, а размерность последнего выходного сигнала равна разности между размерностью входного сигнала и суммой размерностей первых P-1 выходов. Например, если размерность входного сигнала равна 8, а количество выходов равно 3, то первые два выходных вектора будут иметь размерность ceil(8/3) = 3, а последний выходной вектор будет иметь размерность 8 - (3+3) = 2.
Параметр Number of Outputs может быть задан также с помощью вектора, определяющего размерность каждого выходного сигнала. Например, выражение [2 3 1] определяет три выходных сигнала, первый сигнал - вектор из двух элементов, второй сигнал - вектор из трех элементов, и последний сигнал - скаляр. Размерность можно также задавать как -1 (минус один). В этом случае размерность соответствующего выходного сигнала определяется как разность между размерностью входного вектора и суммой размерностей заданных выходных сигналов. Например, если размерность входного вектора равна 6, а параметр Number of Outputs задан выражением [1 -1 3], то второй выходной сигнал будет иметь размерность 6 - (3+1) = 2.
Примеры использования блока Demux показаны на рис. 9.7.2.
Рис. 9.7.2. Примеры использования блока Demux
[Скачать пример]
В режиме Bus Selection Mode блок Demux работает не с отдельными элементами векторов, а с векторными сигналами в целом. Входной сигнал в этом режиме должен быть сформирован блоком Mux или другим блоком Demux. Параметр Number of Outputs в этом случае задается в виде скаляра, определяющего количество выходных сигналов, либо в виде вектора, каждый элемент которого определяет количество векторных сигналов в данном выходном сигнале. Например, при входном сигнале, состоящем из трех векторов параметр Number of Outputs, заданный вектором [2 1], определит два выходных сигнала, первый из которых будет содержать два векторных сигнала, а второй - один.
Примеры использования блока Demux в режиме Bus Selection Mode показаны на рис. 9.7.3.
Рис. 9.7.3. Примеры использования блока Demux в режиме Bus Selection Mode
[Скачать пример]
9.7.3. Блок шинного формирователя Bus Creator
Назначение:
Формирует шину из сигналов различных типов.
Параметры:
- Signal naming options - Способ именования сигнала. Выбирается из списка:
- Inherit bus signal names from input ports - Наследовать имена входных сигналов.
- Require input signal names to match signals below - Требуется ввести имена сигналов.
- Number of inputs ports - Количество входных портов.
- Signals in bus - Список сигналов, объединяемых в шину.
- Rename selected signal - Новое имя выделенного сигнала. Параметр доступен, если выбрана опция Require input signal names to match signals below.
Блок позволяет объединять любые сигналы (векторные, матричные, комплексные, действительные и целые разных типов) в единую шину. Такая шина позволяет сократить количество соединительных линий в модели. Для разделения шины на отдельные составляющие необходимо использовать блок Bus Selector.
Окно параметров блока позволяет отыскать блок, который является источником сигнала. Для такого поиска необходимо выделить название сигнала в списке Signals in bus и нажать с помощью мыши кнопку Find. Блок являющийся источником выбранного сигнала будет выделен цветом.
На рис. 9.7.4 показан пример формирования шины с помощью блока Bus Creator и окно параметров этого блока. Там же показан, выделенный цветом, источник сигнала signal 2 - блок Constant3, найденный с помощью изложенной выше процедуры.
Рис. 9.7.4. Пример использования блока Bus Creator.
[Скачать пример]
9.7.4. Блок шинного селектора Bus Selector
Назначение:
Выделяет из шины требуемые сигналы.
Параметры:
- Signals in the bus - Имеющиеся в шине сигналы (входные сигналы).
- Selected signals - Выделенные сигналы (выходные сигналы).
- Muxed output (флажок) - Объединение выходных сигналов в один.
Шина может быть сформирована блоком Mux или Bus Creator.
Для извлечения сигнала из шины необходимо открыть окно параметров блока, выделить сигнал в окне Signals in the bus и, с помощью кнопки Select, скопировать имя сигнала в окно Selected signals. Для удаления сигнала из списка Selected signals необходимо выделить его имя в правом списке окна параметров блока и, затем, воспользоваться кнопкой Remove.
С помощью кнопок Up и Down можно изменить порядок расположения сигналов в шине, перемещая их в окне Selected signals вверх или вниз, соответственно.
Установка параметра Muxed output позволяет объединить сигналы в шину.
На рис. 9.7.5 показаны примеры использования блока Bus Selector и окно его параметров.
Рис. 9.7.5. Примеры использования блока Bus Selector.
[Скачать пример]
9.7.5. Блок селектора Selector
Назначение:
Выбирает из вектора или матрицы требуемые элементы.
Параметры:
- Input Type –Тип входного сигнала. Выбирается из списка:
- vector –Вектор.
- matrix –Матрица.
Список параметров блока изменяется в зависимости от типа входного сигнала.
- Source of element indices –Источник индексов элементов вектора. Выбирается из списка:
- internal –Внутренний. Индексы выбираемых элементов вектора задаются параметром Elements.
- external –Внешний. Индексы элементов вектора задаются с помощью внешнего входного сигнала.
- Elements –Список индексов элементов входного вектора, передаваемых на выход блока. Задается в виде вектора. Значение параметра –1 (минус один) предписывает выбор всех элементов вектора.
- Input port width –Размерность входного вектора.
- Source of row indices – Источник индексов строк элементов матрицы.
- Rows –Список индексов строк матрицы.
- Source of column indices –Источник индексов столбцов элементов матрицы.
- Columns –Список индексов столбцов матрицы.
Внешний вид блока изменяется в зависимости от установленных параметров блока. При выборе внешних источников индексов элементов на изображении блока появляются дополнительные входы, обозначенные следующими символами:
- E –Вход сигнала, задающего индексы выбираемых элементов вектора.
- R –Вход сигнала, задающего индексы строк матрицы.
- C –Вход сигнала, задающего индексы столбцов матрицы.
Блок выбирает во входном векторе или матрице и передает на выход только те сигналы, которые определены в параметрах блока или заданы внешним входным сигналом.
На рис. 9.7.6 приведены примеры использования блока Selectorдля различных вариантов настройки блока.
Рис. 9.7.6. Примеры использования блокаSelector.
[Скачать пример]