To Workspace

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

  • Библиотека:
  • Simulink/Раковины

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

  • To Workspace block

Описание

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

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

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

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

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

Если вы задаете интервалы логгирования данных с помощью параметра Configuration Parameters Data Import/Export > Logging intervals > To Workspace блок не регистрирует данные за пределами интервалов. Например, блок не регистрирует данные, если интервалы пусты ([]). Блок хранит записанные данные в переменной, которую вы задаете для параметра Single simulation output.

Для решателей с переменным шагом, чтобы контролировать объем данных, доступных блоку To Workspace, используйте параметр Configuration Parameters Data Import/Export > Additional parameters > Output options >. Для примера, чтобы записать данные в одинаковое время точек в нескольких симуляциях, выберите Produce specified output only опция.

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

Журнал в MAT-файл

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

Порты

Вход

расширить все

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

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

  1. Save format к любому из Array или Structure

  2. Save 2-D signals as с 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 объекты.

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

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

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

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

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

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

  • blockName - Имя блока To Workspace.

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

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

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

Следующая таблица показывает, как поддержка режима симуляции зависит от значения Save format.

Режим симуляцииTimeseriesArray, Structure, или Structure With Time
НормальныйПоддержанныйПоддержанный
АкселераторПоддержанныйПоддерживаются только в верхней модели, а не в ссылочных моделях
Быстрый AcceleratorНе поддерживаетсяПоддерживаются только в верхней модели, а не в ссылочных моделях
Программа в цикле (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.

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

Входными РазмерностямиСохраните 2-D сигналы как...Signal to Workspace Выходная размерность

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

2-D array (concatenate along first dimension)

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

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

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

3-D array (concatenate along third dimension)

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

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

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

Любая настройка

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

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

Любая настройка

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

Зависимости

Чтобы включить параметр Save 2-D signals as, установите 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)'

По умолчанию блок To Workspace регистрирует данные с фиксированной точкой в рабочем пространстве MATLAB как Fixed-Point 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

.

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

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