Можно использовать Осциллограф К Файлу, или К блокам Рабочей области, чтобы экспортировать данные моделирования. Каждый из этих блоков имеет параметр формата данных.
Формат данных для основанного на модели экспорта данных моделирования задает, как Simulink® хранит экспортированные данные.
Simulink использует различные форматы данных, в зависимости от вида данных, которые вы экспортируете. Для получения дополнительной информации см.:
Для данных, что вы входите в систему формат Dataset
(когда Simulink.SimulationData.Dataset
возражает), можно задать, хотите ли вы, чтобы данные для отдельных сигналов в наборе данных использовали
элементы timetable
или MATLAB® timeseries
. Чтобы управлять, как элементы Dataset
сохранены, устанавливает параметр конфигурации Dataset signal format. Значением по умолчанию является timeseries
. Для получения дополнительной информации смотрите формат сигнала Набора данных.
Параметр Dataset signal format применяется к данным о регистрации сигнала, а также выводу и состояниям, регистрирующим данные, когда вы устанавливаете параметр конфигурации Format на Dataset
.
Когда вы, данные логов хранят данные, Simulink, используете объект Simulink.SimulationData.Dataset
.
Для получения дополнительной информации смотрите, что Хранилище данных Доступа Регистрирует Данные.
В течение экспортируемого времени состояния и выходные данные, используют один из следующих форматов:
Набор данных (значение по умолчанию)
Если вы устанавливаете флажок Configuration Parameters> Data Import/Export> Output, Simulink регистрирует данные фиксированной точки как дважды. Чтобы регистрировать данные фиксированной точки, рассмотрите использование одного из этих подходов:
Журналирование сигнала — для получения дополнительной информации, смотрите, что Данные сигнала Экспорта Используют Журналирование Сигнала.
В Редакторе Simulink выберите один или несколько сигналов.
Кликните по стрелке кнопки Simulation Data Inspector и нажмите Log Selected Signals to Workspace.
К блоку File
К блоку Workspace — В диалоговом окне To Workspace Block Parameters, включите параметр Log fixed-point data as a fi object.
Для получения информации о формате для регистрируемых данных о конечном состоянии смотрите информацию состояния.
Формат Dataset
:
Использование MATLAB timeseries
возражает, чтобы сохранить записанные данные. MATLAB объекты timeseries
позволяет вам работать с записанными данными в MATLAB без лицензии Simulink.
Поддержки, регистрирующие несколько значений данных для данного временного шага, который может быть важен для подсистемы Итератора и журналирования сигнала Stateflow®.
Включение поддержек информации о модулях в записанных данных для выходных данных
Не поддерживает регистрирующие невиртуальные данные о шине для генерации кода или в быстром режиме Accelerator.
Если вы выбираете эту опцию Array
, Simulink сохраняет состояния и выходные параметры модели в и выходном массиве состояния, соответственно.
Матрице состояния задали имя в Configuration Parameters> панель Data Import/Export (например, xout
). Каждая строка матрицы состояния соответствует выборке времени состояний модели. Каждый столбец соответствует элементу состояния. Например, предположите, что ваша модель имеет два непрерывных состояния, каждое из которых является двухэлементным вектором. Затем первые два элемента каждой строки матрицы состояния содержат выборку времени первого вектора состояния. Последние два элемента каждой строки содержат выборку времени второго вектора состояния.
Образцовой выходной матрице задали имя в Configuration Parameters> панель Data Import/Export (например, yout
). Каждый столбец соответствует образцовому выходному порту и каждой строке к выходным параметрам в определенное время.
Используйте формат массивов, чтобы сохранить ваши образцовые выходные параметры и состояния, только если записанные данные удовлетворяют всем этим условиям:
Данные являются всеми скалярами или всеми векторами (или всеми матрицами для состояний)
Данные все действительны или весь комплекс
Данные у всего есть совпадающий тип данных
Данные включают сигналы шины
Если ваши образцовые выходные параметры и состояния не удовлетворяют этим условиям, используйте Structure
или выходные форматы Structure with time
(см. Структуру со Временем).
Если вы выбираете этот формат, Simulink сохраняет образцовые состояния и выходные параметры в структурах, которым задали их имена в Configuration Parameters> панель Data Import/Export. По умолчанию структурами является xout
для состояний и yout
для вывода.
Структура, используемая, чтобы сохранить выходные параметры, имеет два поля верхнего уровня:
time
Содержит вектор времен симуляции.
signals
Содержит массив подструктур, каждая из которых соответствует образцовому выходному порту.
Каждая подструктура имеет четыре поля:
values
Содержит выходные параметры для соответствующего выходного порта.
Если выходные параметры являются скалярами или векторами — поле values
является матрицей, каждая из чей строк представляют вывод, в то время, когда задано соответствующим элементом временного вектора.
Если выходные параметры являются матричными (2-D) значениями — поле values
является трехмерным массивом размерностей M N T. M на n является размерностями выходного сигнала, и T является количеством выходных выборок.
Если T = 1 — MATLAB пропускает последнюю размерность. Поэтому поле values
является матрицей M на n.
dimensions
Задает размерности выходного сигнала.
label
Задает метку сигнала, соединенного с выходным портом, Блоком s-function или типом состояния (непрерывный или дискретный). Меткой является DSTATE
или CSTATE
, за исключением меток состояния Блока s-function. Для меток состояния Блока s-function для дискретных состояний метка является именем состояния (вместо DSTATE
).
blockName
Задает имя соответствующего выходного порта или блока с состояниями.
inReferencedModel
Если поле signals
записывает конечное состояние блока, который находится в эталонной модели, содержит значение 1
. В противном случае значение является ложным (0
).
Следующий пример показывает формат структуры-с-разовым для модели, на которую не ссылаются.
xout.signals(1)
ans = values: [296206x1 double] dimensions: 1 label: 'CSTATE' blockName: 'vdp/x1' inReferencedModel: 0
Структура, используемая, чтобы сохранить состояния, имеет подобную организацию. Структура состояний имеет два поля верхнего уровня:
time
Поле time
содержит вектор времен симуляции.
signals
Поле содержит массив подструктур, каждая из которых соответствует одному из состояний модели.
Каждая структура signals
имеет четыре поля: values
, dimensions
, label
и blockName
. Поле values
содержит выборки времени состояния блока, заданного полем blockName
. Поле label
для встроенных блоков указывает на тип состояния: любой CSTATE
(непрерывное состояние) или DSTATE
(дискретное состояние). Для Блоков s-function метка содержит любое имя, присвоен состоянию Блоком s-function.
Выборки времени состояния хранятся в поле values
как матрица значений. Каждая строка соответствует выборке времени. Каждый элемент строки соответствует элементу состояния. Если состояние является матрицей, матрица хранится в массиве values
в порядке развертывания по столбцам. Например, предположите, что модель включает матричное состояние 2 на 2 и что 51 выборка состояния регистрируется во время запущенной симуляции.
Поле values
для этого состояния содержало бы 51 4 матрица. Каждая строка соответствует выборке времени состояния, и первые два элемента каждой строки соответствуют первому столбцу выборки. Последние два элемента соответствуют второму столбцу выборки.
Simulink может считать назад данные моделирования, сохраненные в рабочее пространство MATLAB в выходном формате Structure with time
. Смотрите Примеры Определения Сигнала и Данных Времени для получения дополнительной информации.
Этот формат эквивалентен для выходного формата Structure with time
, за исключением того, что Simulink не хранит времена симуляции в поле time
сохраненной структуры.
Simulink.SimulationData.Dataset
| Simulink.SimulationData.forEachTimeseries