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

При настройке блока для выполнения обработки на основе выборки блок интерпретирует скалярный вход как одноканальный сигнал. Аналогично, блок интерпретирует матрицу M-на-N как многоканальный сигнал с M * N независимыми каналами. Например, при обработке на основе выборок блоки интерпретируют следующую последовательность матриц 3 на 2 как шестиканальный сигнал.

Для получения дополнительной информации о последних изменениях обработки на основе кадров см. раздел Изменения обработки на основе кадров в примечаниях к выпуску DSP System Toolbox™.
Блок «Сигнал из рабочей области» генерирует векторный сигнал для обработки на основе выборки, когда переменная или выражение в параметре Signal является матрицей, а параметр Samples per frame имеет значение 1. Каждый столбец входной матрицы представляет собой отдельный канал. Начиная с первой строки матрицы, блок выводит одну строку матрицы в каждый момент времени выборки. Поэтому, если параметр Сигнала определяет матрицу M на Н, продукция Сигнала От блока Рабочего пространства - векторы ряда 1 на Н M, представляющие N каналы.
На рисунке ниже представлено графическое представление этого процесса для матрицы рабочей области 6 на 4. A.

В следующем примере блок «Сигнал из рабочего пространства» используется для импорта векторного сигнала в модель.
Откройте модель Сигнал из рабочей области Пример 3, введя ex_importsbvectorsigs в командной строке MATLAB ®.

В командной строке MATLAB введите A = [1:100;-1:-1:-100]';
Матрица A представляет сигнал двух столбцов, где каждый столбец является разным каналом.
В командной строке MATLAB введите B = 5 * единиц (100,1);
Вектор B представляет одноканальный сигнал.
Дважды щелкните блок «Сигнал из рабочего пространства» и задайте параметры блока следующим образом:
Сигнал = [A B]
Время выборки = 1
Выборки на кадр = 1
Вывод формы после конечного значения данных = Setting to zero
Выражение «Сигнал» [A B] использует стандартный синтаксис MATLAB для горизонтальной конкатенации матриц и добавляет вектор столбца B справа от матрицы A. Блок «Сигнал из рабочей области» выводит сигнал с периодом выборки, равным 1 секунде. После вывода блоком сигнала все последующие выходы имеют нулевое значение.
Сохраните эти параметры и закройте диалоговое окно, нажав кнопку ОК.
Запустите модель.
На следующем рисунке представлено графическое представление поведения модели во время моделирования.

Первая строка входной матрицы [A B] выводится в момент времени t=0, вторая строка входной матрицы выводится в момент времени t=1и так далее.
Теперь векторный сигнал с тремя каналами успешно импортирован в модель обработки сигналов с помощью блока Сигнал из рабочей области (Signal From Workspace).
Блок «Сигнал из рабочего пространства» генерирует матричный сигнал, удобный для обработки на основе выборки. Начиная с первой страницы массива, блок выводит одну страницу массива на выход в каждый момент времени выборки. Следовательно, если параметр Signal определяет матрицу M-на-N-на-P, то выходной сигнал блока Signal From Workspace представляет собой P M-на-N матриц, представляющих M * N каналов. Блок, принимающий этот сигнал, выполняет обработку на основе выборки или обработку на основе кадра сигнала на основе параметров, заданных в диалоговом окне блока.
Следующий рисунок является графической иллюстрацией этого процесса для массива рабочей области 6 на 4 на 5 A.

В следующем примере блок «Сигнал из рабочего пространства» используется для импорта четырехканального матричного сигнала в модель Simulink ®.
Откройте модель Сигнал из рабочей области Пример 4, введя ex_importsbmatrixsigs в командной строке MATLAB.

Кроме того, в рабочую область MATLAB загружаются следующие переменные:
Fs | 1x1 | 8 | double array |
dsp_examples_A | 2x2x100 | 3200 | double array |
dsp_examples_sig1 | 1x1x100
| 800 | double array |
dsp_examples_sig12 | 1x2x100 | 1600 | double array |
dsp_examples_sig2 | 1x1x100 | 800 | double array |
dsp_examples_sig3
| 1x1x100 | 800 | double array |
dsp_examples_sig34 | 1x2x100 | 1600 | double array |
dsp_examples_sig4 | 1x1x100 | 800 | double array |
mtlb
| 4001x1 | 32008 | double array |
Дважды щелкните на блоке «Сигнал из рабочего пространства». Задайте параметры блока следующим образом и нажмите кнопку ОК:
Сигнал = dsp_examples_A
Время выборки = 1
Выборки на кадр = 1
Вывод формы после конечного значения данных = Setting to zero
dsp_examples_A матрица представляет четырехканальный сигнал со 100 выборками в каждом канале. Это сигнал, который требуется импортировать, и он был создан следующим образом:
dsp_examples_sig1 = reshape(1:100,[1 1 100]) dsp_examples_sig2 = reshape(-1:-1:-100,[1 1 100]) dsp_examples_sig3 = zeros(1,1,100) dsp_examples_sig4 = 5*ones(1,1,100) dsp_examples_sig12 = cat(2,sig1,sig2) dsp_examples_sig34 = cat(2,sig3,sig4) dsp_examples_A = cat(1,sig12,sig34) % 2-by-2-by-100 array
Запустите модель.
На рисунке ниже представлено графическое представление поведения модели во время моделирования.

Блок «Сигнал из рабочей области» импортирует четырехканальный сигнал из рабочей области MATLAB в модель Simulink по одной матрице за раз.
4-канальный матричный сигнал успешно импортирован в модель с помощью блока Сигнал из рабочей области (Signal From Workspace).
Блоки В рабочую область (Simulink) и В рабочую область (Triggered To Workspace) являются основными блоками для экспорта сигналов всех размеров из модели Simulink в рабочую область MATLAB.
Сигнал с M * N каналами представлен в Simulink как последовательность матриц M-на-N. Когда вход в блок To Workspace является сигналом, созданным для обработки на основе выборок, блок создает массив M-by-N-by-P в рабочей области MATLAB, содержащий последние выборки P из каждого канала. Количество страниц P определяется параметром Limit data points to last. Новейшие образцы добавляются в конце массива.
На следующем рисунке представлена графическая иллюстрация этого процесса с использованием сигнала 6 на 4, экспортируемого в массив рабочей области A.

Массив рабочей области всегда имеет время выполнения по своему третьему измерению, P. Выборки сохраняются по измерению P независимо от того, является ли ввод матрицей, вектором или скаляром (одноканальный вариант).
В следующем примере блок «В рабочую область» используется для экспорта матричного сигнала в рабочую область MATLAB.
Откройте модель Сигнал из рабочей области Пример 6, введя ex_exportsbsigs в командной строке MATLAB.

Кроме того, в рабочую область MATLAB загружаются следующие переменные:
dsp_examples_A | 2x2x100 | 3200 | double array |
dsp_examples_sig1 | 1x1x100 | 800 | double array |
dsp_examples_sig12 | 1x2x100 | 1600 | double array |
dsp_examples_sig2 | 1x1x100 | 800 | double array |
dsp_examples_sig3 | 1x1x100 | 800 | double array |
dsp_examples_sig34 | 1x2x100 | 1600 | double array |
dsp_examples_sig4 | 1x1x100 | 800 | double array |
В этой модели блок «Сигнал из рабочей области» импортирует четырехканальный матричный сигнал с именем dsp_examples_A. Этот сигнал затем экспортируется в рабочую область MATLAB с помощью блока «В рабочую область».
Дважды щелкните на блоке «Сигнал из рабочего пространства». Задайте параметры блока следующим образом и нажмите кнопку ОК:
Сигнал = dsp_examples_A
Время выборки = 1
Выборки на кадр = 1
Вывод формы после конечного значения данных = Setting to zero
На основе этих параметров блок «Сигнал из рабочей области» выводит сигнал с периодом выборки, равным 1 секунде. После вывода блоком сигнала все последующие выходы имеют нулевое значение.
Дважды щелкните на блоке «В рабочую область». Задайте параметры блока следующим образом и нажмите кнопку ОК:
Имя переменной = dsp_examples_yout
Ограничить точки данных последним параметром до inf
Прореживание = 1
На основе этих параметров блок «В рабочую область» экспортирует свой входной сигнал в переменную с именем dsp_examples_yout в рабочей области MATLAB. Переменная рабочей области может увеличиваться бесконечно, чтобы захватить все входные данные. Сигнал не прореживается перед его экспортом в рабочую область MATLAB.
Запустите модель.
В командной строке MATLAB введите dsp_examples_yout.
Четырехканальный матричный сигнал, dsp_examples_A, выводится в командной строке MATLAB. Ниже приведена отображаемая часть выходных данных.
dsp_examples_yout(:,:,1) =
1 -1
0 5
dsp_examples_yout(:,:,2) =
2 -2
0 5
dsp_examples_yout(:,:,3) =
3 -3
0 5
dsp_examples_yout(:,:,4) =
4 -4
0 5
Каждая страница выходного сигнала представляет различное время выборки, и каждый элемент матриц находится в отдельном канале.
Теперь четырехканальный матричный сигнал успешно экспортирован из модели Simulink в рабочую область MATLAB с помощью блока «В рабочую область».