К рабочей области

Запишите данные к рабочей области

  • Библиотека:
  • Simulink / Приемники

    HDL Coder / Приемники

Описание

Блок 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 | uint8 | uint16 | uint32 | Boolean | fixed point | enumerated | bus

Параметры

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

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

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

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

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

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

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

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

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

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

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

Формат Timeseries по умолчанию сохраняет сигналы нешины как объект MATLAB timeseries и сигналы шины как структура MATLAB объекты timeseries.

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

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

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

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

  • Поле time — Empty для этого формата.

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

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

Формат 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
НормальныйПоддерживаемыйПоддерживаемый
АкселераторПоддерживаемыйПоддерживаемый только в топ-модели, не моделях, на которые ссылаются,
Быстрый акселераторНе поддерживаемыйПоддерживаемый только в топ-модели, не моделях, на которые ссылаются,
Программное обеспечение в цикле (SIL) Не поддерживаемыйЕсли журналирование MAT-файла включено, поддерживаемое только в топ-модели, не моделях, на которые ссылаются,
Процессор в цикле (PIL)Не поддерживаемыйЕсли журналирование MAT-файла доступно и активировано, поддержано только в топ-модели, не моделях, на которые ссылаются,
ВнешнийНе поддерживаемыйПоддерживаемый только в топ-модели, не моделях, на которые ссылаются,
Цели Simulink Coder™Не поддерживаемыйЕсли журналирование MAT-файла включено, поддерживаемое только в топ-модели, не моделях, на которые ссылаются,

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

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

Задайте один из этих форматов для сохранения 2D сигналов к рабочей области:

  • 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.

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

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 (например, регистрируемые состояния). Смотрите Преобразовывают Записанные данные в Формат Набора данных. Можно также использовать журналирование сигнала за исключением сигнала переменного размера.

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

Генерация кода PLC
Сгенерируйте код Структурированного текста с помощью Simulink® PLC Coder™.

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

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