К данным о доступе, регистрируемым к персистентному устройству хранения данных (MAT-файл) для анализа в MATLAB®, используйте ссылки на данные в MAT-файле. Можно работать непосредственно с данными, вошел в систему формат кроме формата Dataset
, потому что те данные хранятся в рабочем пространстве MATLAB.
Когда вы регистрируете к MAT-файлу, хранилищам Simulink® в заданном MAT-файле объект Simulink.SimulationData.Simulink.Dataset
, элементы которого являются объектами Dataset
. Существует один объект Dataset
для каждого набора регистрируемых данных моделирования (например, объекты Dataset
для logsout
и xout
, для журналирования сигнала и журналирования состояния).
К симуляции доступа данные о формате Dataset
для набора регистрируемых данных моделирования создайте объекты Simulink.SimulationData.DatasetRef
. Можно получить доступ к отдельным элементам набора данных с помощью объекта DatasetRef
. Для получения дополнительной информации смотрите Сигналы Человека Загрузки от Объекта DatasetRef.
К листовым сигналам доступа в регистрируемом Dataset
создайте объект matlab.io.datastore.SimulationDatastore
для сигнала, на основе объекта DatasetRef
для Dataset
, который содержит сигнал. Для получения дополнительной информации смотрите
Потоковые сигналы человека Используя объекты SimulationDatastore.
Можно работать с данными, на которые ссылается объект SimulationDatastore
. Например, можно заставить данные во фрагменте быть считанными в память из MAT-файла. Для примера смотрите
.matlab.io.datastore.SimulationDatastore
Когда вы читаете объект SimulationDatastore
, с помощью read
или метода readall
, вывод находится в MATLAB формат timetable
. Для получения дополнительной информации о формате расписания, смотрите формат сигнала Набора данных.
Можно использовать объект SimulationDatastore
создать timetable
для значений сигналов и считать объект timetable
с данными в оперативной памяти. Например, для объекта SimulationDatastore
dst1
:
tt = dst1.Values.read; ttt = tall(dst1.Values);
Можно создать высокий timetable
:
mapreducer(0); ttt = tall(dst1.Values);
Если вы используете персистентное устройство хранения данных для нескольких симуляций, у вас может быть несколько MAT-файлов. Когда вы запускаете несколько симуляций с помощью пакетной обработки данных, вы получаете несколько MAT-файлов, если вы задаете различный персистентный MAT-файл устройства хранения данных для каждой симуляции. Для параллельных симуляций Simulink производит отдельный MAT-файл для каждой запущенной симуляции. Чтобы помочь вам идентифицировать и понять контекст данных моделирования, включенных в MAT-файл, Simulink хранит метаданные о журналировании к персистентному устройству хранения данных.
Объект Simulink.SimulationMetadata
включает в его структуру ModelInfo
структуру LoggingInfo
с двумя полями:
LoggingToFile
— Указывает, включено ли журналирование к персистентному устройству хранения данных ('on'
или 'off'
)
LoggingFileName
— Задает разрешенное имя файла для персистентного MAT-файла устройства хранения данных (если LoggingToFile
является 'on'
).
MAT-файл, используемый для персистентного устройства хранения данных, содержит переменную SimulationMetadata
, которая хранит те же метаданные симуляции как объект Simulink.SimulationMetadata
. SimulationMetadata
является сгенерированным системой именем, не именем переменной, которое вы задаете.
Чтобы получить доступ к персистентным метаданным устройства хранения данных журналирования, используйте одну из этих альтернатив:
Просмотрите метаданные симуляции при помощи свойства SimulationMetadata
объекта SimulationOutput
.
Используйте заполнение клавишей Tab, чтобы получить доступ к свойствам объектов SimulationMetadata
, таким как ModelInfo
и получить доступ к именам полей.
Отобразите метаданные симуляции в Редакторе переменных. Кликните по объекту SimulationOutput
и используйте один из этих подходов:
Установите флажок Explore Simulation Metadata (который отображает данные в древовидной структуре).
Дважды кликните строку SimulationMetadata.
Можно просмотреть сообщение об ошибке и информацию о стеке и причинах для данных моделирования при помощи свойства ErrorMessage
объекта SimulationOutput
. Для параллельных симуляций, если вы регистрируете к файлу, Simulink включает аргумент CaptureErrors
для симуляции.
Simulink.SimulationData.Dataset
| Simulink.SimulationData.DatasetRef
| createInputDataset
| matlab.io.datastore.SimulationDatastore
| timeseries
| timetable