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

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

Когда вы конфигурируете блок, чтобы выполнить основанную на кадре обработку, блок интерпретирует M-by-1 вектор как одноканальный сигнал, содержащий выборки M на кадр. Точно так же блок интерпретирует M-by-N матрица как многоканальный сигнал с N независимые каналы и выборки M на канал. Например, в основанной на кадре обработке, блоки интерпретируют следующую последовательность 3 2 матриц как двухканальный сигнал с форматом кадра 3.

Используя основанную на кадре обработку выгодно для многих приложений обработки сигналов, потому что можно обработать несколько выборок целиком. Путем буферизации данных в кадры и обработки мультидемонстрационных кадров данных, можно часто улучшать вычислительное время алгоритмов обработки сигналов. Чтобы выполнить основанную на кадре обработку, у вас должна быть лицензия DSP System Toolbox™.

Для получения дополнительной информации о недавних изменениях в основанной на кадре обработке, смотрите, что Основанное на кадре обрабатывает раздел изменений DSP System Toolbox Информация о релизах.

Разделите многоканальные сигналы в отдельные сигналы

Многоканальные сигналы, представленные матрицами в среде Simulink®, часто используются в моделях обработки сигналов для эффективности и компактности. Хотя большинство блоков обработки сигналов может обработать многоканальные сигналы, вы, возможно, должны получить доступ всего к одному каналу или конкретной области значений выборок в многоканальном сигнале. Можно получить доступ к отдельным каналам многоканального сигнала при помощи блоков в библиотеке Indexing. Эта библиотека включает Селектор, Субматрицу, Переменный Селектор, Многопортовый Селектор и блоки Субматрицы. Также возможно использовать блок Permute Matrix, в библиотеке Операций над матрицей, переупорядочить каналы основанного на кадре сигнала.

Можно использовать Многопортовый Селекторный блок в библиотеке Indexing, чтобы извлечь отдельные каналы многоканального сигнала. Эти сигналы формируют одноканальные сигналы, которые имеют ту же частоту кадров и формат кадра многоканального сигнала.

Фигура ниже является графическим представлением этого процесса.

В этом примере вы используете Многопортовый Селекторный блок, чтобы извлечь одноканальный сигнал и два сигнала канала от многоканального сигнала. Каждый канал содержит четыре выборки.

  1. Откройте модель Multiport Selector Example 2 путем ввода ex_splitmltichfbsigsind

    в командной строке MATLAB®.

  2. Дважды кликните блок Signal From Workspace и установите параметры блоков можно следующим образом:

    • Signal = [1:10;-1:-1:-10;5*ones(1,10)]'

    • Samples per frame = 4

    На основе этих параметров блок Signal From Workspace выводит сигнал с тремя каналами с форматом кадра четыре.

  3. Сохраните эти параметры и закройте диалоговое окно путем нажатия на OK.

  4. Дважды кликните Многопортовый Селекторный блок. Установите параметры блоков можно следующим образом, и затем нажмите OK:

    • Select = Columns

    • Indices to output = {[1 3],2}

    На основе этих параметров Многопортовый Селекторный блок выводит первые и третьи столбцы в первом выходном порту и второй столбец во втором выходном порту блока. Установка параметра Select на Columns гарантирует, что блок сохраняет частоту кадров и формат кадра входа.

  5. Запустите модель.

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

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

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

Переупорядочьте каналы в многоканальных сигналах

Многоканальные сигналы, представленные матрицами в Simulink, часто используются в моделях обработки сигналов для эффективности и компактности. Хотя большинство блоков обработки сигналов может обработать многоканальные сигналы, вы, возможно, должны получить доступ всего к одному каналу или конкретной области значений выборок в многоканальном сигнале. Можно получить доступ к отдельным каналам многоканального сигнала при помощи блоков в библиотеке Indexing. Эта библиотека включает Селектор, Субматрицу, Переменный Селектор, Многопортовый Селектор и блоки Субматрицы. Также возможно использовать блок Permute Matrix, в библиотеке Операций над матрицей, переупорядочить каналы сигнала кадра.

Некоторые блоки DSP System Toolbox имеют способность обработать взаимодействие каналов. Как правило, блоки DSP System Toolbox сравнивают канал один из сигнала A образовать канал один из сигнала B. Однако вы можете хотеть коррелировать канал один из сигнала A с каналом три из сигнала B. В этом случае, в порядке сравнить правильные сигналы, необходимо использовать блок Permute Matrix, чтобы перестроить каналы сигналов. Этот пример объясняет, как выполнить эту задачу.

  1. Откройте модель Permute Matrix Example путем ввода ex_reordermltichfbsigs в командной строке MATLAB.

  2. Дважды кликните блок Signal From Workspace и установите параметры блоков можно следующим образом:

    • Signal = [1:10;-1:-1:-10;5*ones(1,10)]'

    • Sample time = 1

    • Samples per frame = 4

    На основе этих параметров блок Signal From Workspace выводит сигнал с тремя каналами с демонстрационным периодом 1 секунды и форматом кадра 4. Период кадра этого блока составляет 4 секунды.

  3. Сохраните эти параметры и закройте диалоговое окно путем нажатия на OK.

  4. Дважды кликните блок Constant. Установите параметры блоков можно следующим образом, и затем нажмите OK:

    • Constant value = [1 3 2]

    • Interpret vector parameters as 1–D = Снимает этот флажок

    • Sample time = 4

    Вектор дискретного времени, выведенный блоком Constant, говорит блоку Permute Matrix подкачивать вторые и третьи столбцы входного сигнала. Обратите внимание на то, что период кадра блока Constant должен совпадать с периодом кадра блока Signal From Workspace.

  5. Дважды кликните блок Permute Matrix. Установите параметры блоков можно следующим образом, и затем нажмите OK:

    • Permute = Columns

    • Index mode = One-based

    На основе этих параметров блок Permute Matrix перестраивает столбцы входного сигнала, и индекс первого столбца теперь один.

  6. Запустите модель.

    Фигура ниже является графическим представлением того, что происходит с первым входным кадром во время симуляции.

    Второй и третий канал входного сигнала подкачивается.

  7. В командной строке MATLAB введите yout.

    Можно теперь проверить, что вторые и третьи столбцы входного сигнала перестроены.

Вы теперь успешно переупорядочили каналы сигнала кадра использование блока Permute Matrix.

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте