Селектор

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

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

    HDL Coder / Маршрутизация Сигнала

Описание

Селекторный блок генерирует, как выведено выбрано или переупорядочено элементы входного вектора, матрицы или многомерного сигнала.

На основе значения вы вводите для параметра Number of input dimensions, таблица индексации настроек отображена. Каждая строка таблицы соответствует одной из входных размерностей в Number of input dimensions. Для каждой размерности вы задаете элементы сигнала работать с. Задайте векторный сигнал как 1D сигнал и матричный сигнал как 2D сигнал. Когда вы конфигурируете Селекторный блок для многомерных операций сигнала, изменений значка блока.

Например, примите сигнал 6-D с режимом индексации на основе одним. Таблица Селекторного диалогового окна блока изменяется, чтобы включать одну строку для каждой размерности. Если вы задаете размерности как показано в следующей таблице, выводом является Y = U(1:end,2:6,[1 3 5],Idx4:Idx4+7,Idx5,Idx6(1):Idx6(2)), где Idx4, Idx5 и Idx6 являются индексными портами для размерностей 4, 5, и 6.

СтрокаИндексируйте опциюИндекс'OutputSize'
1Select all  
2Starting index (dialog)25
3Index vector (dialog)[1 3 5] 
4Starting index (port) 8
5Index vector (port)  
6Starting and ending indices (port)  

Можно использовать массив шин как входной сигнал к Селекторному блоку. Для получения дополнительной информации об определении и использовании массива шин, смотрите Шины Объединения в Массив Шин.

Порты

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

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

Входной сигнал и источник элементов к выходному сигналу.

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

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

Зависимости

Чтобы включить внешний индексный порт, в соответствующей строке таблицы Index Option, устанавливают Index Option на Index vector (port), Starting index (port) или Starting and ending indices (port).

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

Вывод

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

Выходной сигнал сгенерирован от выбранных или переупорядоченных элементов входного сигнала.

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

Параметры

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

Задает количество размерностей входного сигнала.

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

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

Задает режим индексации. Если One-based выбран, индекс 1 указывает первый элемент входного вектора. Если Zero-based выбран, индекс 0 указывает первый элемент входного вектора.

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

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

Задает, размерностью, как элементы сигнала должны быть индексированы. Из списка выберите:

  • Select all

    Никакая дальнейшая настройка не требуется. Все элементы выбраны.

  • Index vector (dialog)

    Включает столбец Index. Введите вектор индексов элементов.

  • Index vector (port)

    Никакая дальнейшая настройка не требуется.

  • Starting index (dialog)

    Включает столбцы Output Size и Index. Введите начальное значение индекса области значений элементов, чтобы выбрать в столбце Index и числе элементов, чтобы выбрать в столбце Output Size.

  • Starting index (port)

    Включает столбец Output Size. Введите число элементов, которое будет выбрано в столбце Output Size.

  • Starting and ending indices (port)

    Никакая дальнейшая настройка не требуется.

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

    При регистрации данных о выходном сигнале сигналы, не выбранные, дополнены значениями NaN.

Index и столбцы Output Size появляются по мере необходимости.

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

Параметры блоков: IndexOptionArray
Ввод: символьный вектор
Значения: 'Select all' | 'Index vector (dialog)' | 'Index option (port)' | 'Starting index (dialog)' | 'Starting index (port)' | Starting and ending indices (port)
Значение по умолчанию: 'Index vector (dialog)'

Если Index Option является Index vector (dialog), введите индекс каждого элемента, которым вы интересуетесь.

Если Index Option является Starting index (dialog), введите начальное значение индекса области значений элементов, которые будут выбраны.

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

Параметры блоков: IndexParamArray
Ввод: символьный вектор
Значения: cellArray
Значение по умолчанию: '{ }'

Задает ширину выходного сигнала блока.

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

Параметры блоков: OutputSizeArray
Ввод: символьный вектор
Значения: cellArray
Значение по умолчанию: '{ }'

Задайте ширину входного сигнала блока для 1D сигналов. Введите -1, чтобы наследоваться ведущему блоку.

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

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

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

Зависимости

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

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

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

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

Типы данных

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

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

no

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

yes

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

yes

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

no

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

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

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

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

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