Импортируйте и экспортируйте сигналы для основанной на кадре обработки

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

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

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

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

Импортируйте сигналы для основанной на кадре обработки

Блок Signal From Workspace создает многоканальный сигнал для основанной на кадре обработки, когда параметр Signal является матрицей, и параметр Samples per frame, M, больше, чем 1. Начинаясь с первых строк M матрицы, освобождения блока строки M матрицы (то есть, один кадр от каждого канала) к выходному порту каждый M *Ts секунды. Поэтому, если параметр Signal задает W-by-N матрица рабочей области, блок Signal From Workspace выводит серию M-by-N матрицы, представляющие каналы N. Матрица рабочей области должна быть ориентирована так, чтобы ее столбцы представляли каналы сигнала.

Фигура ниже является графическим рисунком этого процесса для 6 4 матрицы рабочей области, A и формата кадра 2.

Примечание

Несмотря на то, что независимые каналы обычно представляются как столбцы, одноканальный сигнал может быть представлен в рабочей области или как вектор-столбец или как вектор - строка. Вывод от блока Signal From Workspace является вектор-столбцом в обоих случаях.

В следующем примере вы используете блок Signal From Workspace, чтобы создать сигнал кадра с тремя каналами и импортировать его в модель:

  1. Откройте модель Signal From Workspace Example 5 путем ввода

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

    dsp_examples_A = [1:100;-1:-1:-100]';  % 100-by-2 matrix
    dsp_examples_B = 5*ones(100,1);         % 100-by-1 column vector
    

    Переменная, названная dsp_examples_A, представляет двухканальный сигнал с 100 выборками, и переменная, названная dsp_examples_B, представляет сигнал с одним каналом с 100 выборками.

    Кроме того, следующие переменные заданы в рабочем пространстве MATLAB:

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

    • Параметр Signal к [dsp_examples_A dsp_examples_B]

    • Параметр Sample time к 1

    • Параметр Samples per frame к 4

    • Параметр Form output after final data value к Setting to zero

    На основе этих параметров блок Signal From Workspace выводит сигнал с форматом кадра 4 и демонстрационным периодом 1 секунды. Период кадра сигнала составляет 4 секунды. Параметр Signal использует стандартный синтаксис MATLAB для горизонтально конкатенации матриц, чтобы добавить вектор-столбец dsp_examples_B справа от матричного dsp_examples_A. После того, как блок вывел сигнал, все последующие выходные параметры имеют значение нуля.

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

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

Вы теперь успешно импортировали сигнал кадра с тремя каналами в свою модель с помощью блока Signal From Workspace.

Экспортируйте основанные на кадре сигналы

К Рабочей области и Инициированный К блокам Рабочей области первичные блоки для экспорта сигналов всех размерностей от модели Simulink® до рабочего пространства MATLAB.

Сигнал с каналами N и форматом кадра M представлен последовательностью M-by-N матрицы. Когда этот сигнал вводится к блоку To Workspace, блок создает P-by-N массив в рабочем пространстве MATLAB, содержащем P новые выборки от каждого канала. Количество строк, P, задано параметром Limit data points to last. Новейшие выборки добавляются в нижней части матрицы.

Следующая фигура является графическим рисунком этого процесса для трех последовательных кадров сигнала с форматом кадра 2, который экспортируется, чтобы матрицировать A в рабочем пространстве MATLAB.

В следующем примере вы используете блок To Workspace, чтобы экспортировать сигнал с тремя каналами с четырьмя выборками на кадр к рабочему пространству MATLAB.

  1. Откройте модель Signal From Workspace Example 7 путем ввода ex_exportfbsigs в командной строке MATLAB.

    Кроме того, следующие переменные заданы в рабочем пространстве MATLAB:

    Переменная, названная dsp_examples_A, представляет двухканальный сигнал с 100 выборками, и переменная, названная dsp_examples_B, представляет сигнал с одним каналом с 100 выборками.

    dsp_examples_A = [1:100;-1:-1:-100]';	% 100-by-2 matrix
    dsp_examples_B = 5*ones(100,1);			% 100-by-1 column vector
    
  2. Дважды кликните блок Signal From Workspace. Установите параметры блоков можно следующим образом, и затем нажмите OK:

    • Signal = [dsp_examples_A dsp_examples_B]

    • Sample time = 1

    • Samples per frame = 4

    • Form output after final data value = Setting to zero

    На основе этих параметров блок Signal From Workspace выводит сигнал с форматом кадра 4 и демонстрационным периодом 1 секунды. Период кадра сигнала составляет 4 секунды. Параметр Signal использует стандартный синтаксис MATLAB для горизонтально конкатенации матриц, чтобы добавить вектор-столбец dsp_examples_B справа от матричного dsp_examples_A. После того, как блок вывел сигнал, все последующие выходные параметры имеют значение нуля.

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

    • Variable name = dsp_examples_yout

    • Limit data points to last = inf

    • Decimation = 1

    • Frames = Concatenate frames (2-D array)

    На основе этих параметров блок To Workspace экспортирует свой входной сигнал в переменную под названием dsp_examples_yout в рабочем пространстве MATLAB. Переменная рабочей области может стать неопределенно большой в порядке получить все входные данные. Сигнал не подкошен, прежде чем он будет экспортирован в рабочее пространство MATLAB, и каждый входной кадр вертикально конкатенирован к предыдущему кадру, чтобы произвести 2D массив вывод.

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

    Следующая фигура является графическим представлением поведения модели во время симуляции.

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

    Вывод показывают ниже:

    dsp_examples_yout =
    
         1    -1     5
         2    -2     5
         3    -3     5
         4    -4     5
         5    -5     5
         6    -6     5
         7    -7     5
         8    -8     5
         9    -9     5
        10   -10     5
        11   -11     5
        12   -12     5
    

    Кадры сигнала конкатенированы, чтобы сформировать двумерный массив.

Вы теперь успешно вывели сигнал кадра к рабочему пространству MATLAB с помощью блока To Workspace.

Похожие темы