exponenta event banner

К рабочему пространству

Запись данных в рабочую область

  • Библиотека:
  • Симулинк/раковины

    Кодер/приемники HDL

  • To Workspace block

Описание

Блок «В рабочую область» записывает данные входного сигнала в рабочую область. Во время моделирования блок записывает данные во внутренний буфер. После приостановки моделирования или завершения моделирования эти данные записываются в рабочую область. Данные недоступны до тех пор, пока моделирование не приостановится или не прекратится.

Блок «В рабочую область» обычно записывает данные в базовую рабочую область MATLAB ®. Для sim в функции MATLAB блок To Workspace отправляет данные в рабочую область вызывающей функции, а не в базовую рабочую область MATLAB. Чтобы отправить записанные данные в базовую рабочую область, используйте assignin в функции.

function myfunc
    a = sim('mTest','SimulationMode','normal');
    b = a.get('simout')
    assignin('base','b',b);
end

Значок блока «В рабочую область» показывает имя переменной, в которую записаны данные.

Управление объемом сохраненных данных

Если задать интервалы регистрации данных с помощью параметра «Параметры конфигурации» > «Импорт/экспорт данных» > «Интервалы регистрации», блок «В рабочую область» не будет регистрировать данные вне интервалов. Например, блок не регистрирует данные, если интервалы пусты ([]). Блок сохраняет записанные данные в переменной, указанной для параметра Single simulation output.

Для решателей с переменными шагами для управления объемом данных, доступных блоку «В рабочую область», используйте параметр «Параметры конфигурации» > «Импорт/экспорт данных» > «Дополнительные параметры» > «Параметры вывода». Например, чтобы записать данные в идентичные моменты времени по нескольким моделированиям, выберите Produce specified output only вариант.

Параметры блока также управляют объемом сохраненных данных. См. разделы Ограничение длительных точек данных, Прореживание и Время выборки.

Вход в MAT-файл

Если параметр ведения журнала MAT-файла включен в разделе Параметры конфигурации (Configuration Parameters), блок В рабочую область (To Workspace) регистрирует свои данные в MAT-файле. Сведения об этом параметре см. в разделе Ведение журнала файлов MAT (Simulink Coder).

Порты

Вход

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

Данные рабочей области, созданные из входного сигнала. Блок «В рабочую область» может сохранять вещественные или сложные входные данные любого типа, поддерживаемого Simulink ®, включая фиксированные и перечисляемые типы данных, а также объекты шины.

По умолчанию блок «В рабочую область» обрабатывает входные сигналы как основанные на образцах. Чтобы блок To Workspace обрабатывал входные сигналы как основанные на кадрах, установите следующие параметры:

  1. Сохранить формат в любой из них Array или Structure

  2. Сохранение 2-D сигналов 2-D array (concatenate along first dimension)

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

Параметры

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

Укажите имя переменной для сохраненных данных.

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

Параметр блока: VariableName
Текст: символьный вектор
Значения: символьный вектор
По умолчанию: 'simout'

Укажите максимальное количество сохраняемых входных выборок. Если при моделировании генерируется больше точек данных, чем указанный максимум, при моделировании сохраняются только последние созданные образцы. По умолчанию блок записывает все данные.

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

Параметр блока: MaxDataPoints
Текст: символьный вектор
Значения: скаляр | вектор
По умолчанию: 'inf'

Укажите коэффициент прореживания n, который записывает данные в каждый n-й раз, когда выполняется блок. Значение по умолчанию заставляет блок записывать данные на каждом шаге времени.

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

Параметр блока: Decimation
Текст: символьный вектор
Значения: скаляр | вектор
По умолчанию: '1'

Укажите формат сохранения выходных данных моделирования в рабочей области.

Дефолт Timeseries формат сохраняет сигналы без шины как MATLAB timeseries объектные и шинные сигналы как структура MATLAB timeseries объекты.

Array формат сохраняет входной сигнал в виде N-мерной матрицы, где N на единицу больше числа измерений входного сигнала. Например, если входной сигнал является вектором, результирующий массив рабочей области является двумерным. Если входной сигнал является матрицей, то матрица является трёхмерной. То, как Simulink хранит выборки в массиве, зависит от того, является ли входной сигнал скаляром, вектором или матрицей.

  • Если входной сигнал является скаляром или вектором, каждая входная выборка выводится как строка массива. Предположим, что имя выходного массива равно simout. Затем, simout(1,:) соответствует первой выборке, simout(2,:) соответствует второй выборке и так далее.

  • Если входной сигнал является матрицей, то время соответствует третьему измерению. Предположим еще раз, что simout - имя результирующего массива рабочей области. Затем, simout(:,:,1) - значение входного сигнала в первой точке выборки, simout(:,:,2) - значение входного сигнала во второй точке выборки и так далее.

Structure формат состоит из структуры с тремя полями:

  • time - Пустое поле для этого формата.

  • signals - Структура с тремя полями: values, dimensions, и label. values содержит массив значений сигнала. dimensions в поле указываются размеры соответствующих сигналов. label содержит метку входной строки.

  • blockName - имя блока «В рабочую область».

Structure With Time формат совпадает с Structure, за исключением того, что поле времени содержит вектор совпадений времени моделирования.

При выборе Array или Structure, появится параметр Save 2-D signals as.

Для чтения выходных данных блока «В рабочую область» непосредственно с блоком «Из рабочей области» используйте Timeseries или Structure with Time формат. Блок «Из рабочей области» может считывать образцы данных из блока «В рабочую область», сохраненного в предыдущем моделировании. Дополнительные сведения см. в разделе Сравнение методов загрузки сигнала.

В следующей таблице показано, как поддержка режима моделирования зависит от значения «Сохранить формат».

Режим моделированияTimeseriesArray, Structure, или Structure With Time
НормальныйПоддержанныйПоддержанный
АкселераторПоддержанныйПоддерживается только в модели верхнего уровня, но не в ссылочных моделях
Быстрый ускорительНе поддерживаетсяПоддерживается только в модели верхнего уровня, но не в ссылочных моделях
Программное обеспечение в цикле (SIL) Не поддерживаетсяЕсли ведение журнала MAT-файла включено, поддерживается только в моделях верхнего уровня, но не в ссылочных моделях
Процессор в контуре (PIL)Не поддерживаетсяЕсли журнал MAT-файла доступен и включен, поддерживается только в моделях верхнего уровня, но не в ссылочных моделях
ВнешнийНе поддерживаетсяПоддерживается только в модели верхнего уровня, но не в ссылочных моделях
Цели Simulink Coder™Не поддерживаетсяЕсли ведение журнала MAT-файла включено, поддерживается только в моделях верхнего уровня, но не в ссылочных моделях

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

Параметр блока: SaveFormat
Текст: символьный вектор
Значения: 'Timeseries' | 'Structure with Time' | 'Structure' | 'Array'
По умолчанию: 'Timeseries'

Укажите один из следующих форматов для сохранения 2-D сигналов в рабочей области:

  • 3-D array (concatenate along third dimension) (По умолчанию)

    Эта настройка хорошо подходит для сигналов на основе выборок. Данные объединяются вдоль третьего измерения. Например, входной сигнал матрицы 2 на 4 для 10 выборок сохраняется как массив 2 на 4 на 10.

  • 2-D array (concatenate along first dimension)

    Эта настройка хорошо подходит для сигналов на основе кадров. Данные объединяются вдоль первого измерения. Например, входной сигнал матрицы 2 на 4 для 10 выборок сохраняется как массив 20 на 4.

Если для параметра «Сохранить формат» установлено значение Array или Structureразмеры выходного сигнала зависят от входных размеров и настройки сигналов Save 2-D в качестве параметра. В следующей таблице представлены выходные измерения при различных условиях. В таблице K представляет значение параметра Limit data points to last.

Размеры входного сигналаСохранить сигналы 2-D как...Выходной размер сигнала в рабочую область

Матрица M-by-N

2-D array (concatenate along first dimension)

Матрица K-by-N.

Если для параметра Limit data points установлено значение last infK представляет общее количество образцов, полученных в каждом столбце к концу моделирования. Эта установка эквивалентна умножению размера входного кадра (М) на общее количество входов M-на-N, полученных блоком.

Матрица M-by-N

3-D array (concatenate along third dimension)

Массив M-by-N-by-K.

Если для параметра Limit data points установлено значение last infK представляет общее число входов M-by-N, полученных к концу моделирования.

Длина - N неориентированный вектор

Любые настройки

Матрица K-by-N

N-мерный массив, где N > 2

Любые настройки

Массив с размерами N + 1, где размер последнего размера равен К. Если для параметра Limit data points to last установлено значение inf, K представляет общее число входов M-by-N, полученных к концу моделирования

Зависимости

Чтобы включить параметр Save 2-D signals в качестве параметра, установите для параметра Save format значение Array или Structure.

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

Параметр блока: Save2DSignal
Текст: символьный вектор
Значения: '2-D array (concatenate along first dimension)' | '3-D array (concatenate along third dimension)'
По умолчанию: '3-D array (concatenate along third dimension)'

По умолчанию блок «В рабочую область» регистрирует данные с фиксированной точкой в рабочей области MATLAB как фиксированную точку Designer™ fi объект. Если этот параметр снят, программа Simulink регистрирует данные с фиксированной точкой в рабочей области как double.

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

Параметр блока: FixptAsFi
Текст: символьный вектор
Значения: 'off' | 'on'
По умолчанию: 'off'

Указывает период выборки и смещение для сбора точек данных. Этот параметр полезен при использовании решателя с переменным шагом, в котором интервал между шагами времени не является постоянным. Значение по умолчанию приводит к наследованию блоком времени выборки из управляющего блока. См. раздел Указание времени образца.

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

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

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

Типы данных

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

Прямой проход

no

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

yes

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

yes

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

no

Совет

Для упрощения постобработки можно преобразовать данные, сохраненные этим блоком, в Dataset формат. Это преобразование полезно при последующей обработке этих данных с другими записанными в журнал данными, которые могут использовать Dataset формат (например, состояния регистрации). См. раздел Преобразование зарегистрированных данных в формат набора данных.

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

Создание кода ПЛК
Создание структурированного текстового кода с помощью Coder™ Simulink ® PLC

.

Преобразование с фиксированной точкой
Проектирование и моделирование систем с фиксированной точкой с помощью Designer™ с фиксированной точкой.

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