Можно регистрировать значения переменной данных хранилища локальных или глобальных данных для всех шагов в симуляции. Два общего использования логгирования хранилища данных для:
Модель, отлаживающая – просматривает порядок всех записей хранилища данных
Подтверждение модификации модели – использует записанные данные, чтобы установить базовую линию для сравнения результатов идентифицировать удар модификации модели
Для примера логгирования хранилища глобальных данных смотрите Используя Хранилища данных Через Многоуровневые модели.
Вы можете хранилища данных логов, которые используют следующие типы данных:
Все встроенные типы данных
Перечислимые типы данных
Типы данных с фиксированной точкой
Вы можете хранилища данных логов, которые используют любой уровень измерения или сложность.
Ограничения для использования хранилища данных, входящего в систему модель:
К данным логов для памяти хранилища данных:
Симулируйте модель верхнего уровня в Режиме normal mode.
Для локальных хранилищ данных модель, содержащая Блок памяти Хранилища данных, должна быть в Режиме normal mode Модели - ссылки.
Любой блок в модели, на которую ссылаются, которая пишет в память хранилища данных, должен быть выполнен в Режиме normal mode модели - ссылки.
Вы не можете хранилища данных логов, которые используют пользовательские типы данных, включая шины.
Чтобы регистрировать локальное хранилище данных, которое вы создаете с Блоком памяти Хранилища данных:
В модели откройте Model Data Editor. Во вкладке Modeling нажмите Model Data Editor.
На вкладке Data Stores, набор Change view выпадающий список к Instrumentation
.
В таблице данных, для целевого хранилища данных, устанавливают флажок в столбце Log Data.
Если целевое хранилище данных не появляется в таблице, нажимает кнопку Change scope, чтобы отобразить хранилища данных, которые заданы в подсистемах ниже вашей существующей системы.
Опционально, чтобы сконфигурировать дополнительные характеристики логгирования, такие как максимальное количество точек данных, чтобы регистрировать, откройте Property Inspector (во вкладке Modeling, под Design, нажмите Property Inspector). Используйте Property Inspector, чтобы открыть диалоговое окно блока и смотреть вкладку Logging.
Включите логгирование хранилища данных с Model Configuration Parameters> Data Import/Export> параметр Data stores.
Симулируйте модель.
Когда вы позволяете регистрировать для модели, и вы конфигурируете локальное хранилище данных для логгирования, Блок памяти Хранилища данных отображает синий значок. Если вы не позволяете регистрировать для модели, то значок является серым.
Simulink.Signal
ОбъектМожно создать хранилища локальных и глобальных данных с помощью Simulink.Signal
объект. Смотрите Хранилища данных с Объектами Сигнала для деталей.
Регистрировать хранилище данных, которое вы создаете с Simulink.Signal
объект:
Создайте Simulink.Signal
объект в рабочей области, которая отображается к каждому компоненту, который должен получить доступ к хранилищу данных, как описано в Хранилищах данных с Объектами Сигнала.
Используйте имя Simulink.Signal
объект в параметрах блоков Data store name блоков Записи Чтения и Хранилища данных Хранилища данных, в которые вы хотите записать и считать из хранилища данных.
Из командной строки MATLAB®, набор DataLogging
(который является свойством LoggingInfo
свойство Simulink.Signal
) к 1
.
Например, если вы используете Simulink.Signal
возразите названному DataStoreSignalObject
чтобы создать хранилище данных, используйте следующую команду:
DataStoreSignalObject.LoggingInfo.DataLogging = 1
Опционально, задайте пределы для регистрируемого объема данных, с помощью следующих свойств, которые являются свойствами LoggingInfo
свойство Simulink.Signal
объект: Decimation
, LimitDataPoints
, и MaxPoints
.
Включите логгирование хранилища данных с Model Configuration Parameters> Data Import/Export> параметр Data stores.
Симулируйте модель.
Следующие классы Simulink® представляют данные из логгирования хранилища данных и предоставляют методы для доступа к тем данным:
Класс | Описание |
---|---|
Simulink.SimulationData.BlockPath | Представляет полностью заданный путь к блоку Simulink; используйте в получении полной иерархии модели - ссылки |
Simulink.SimulationData.Dataset | Элементы записанных данных хранилищ и предусматривают ищущие возможности; используйте, чтобы сгруппировать Simulink.SimulationData.Element объекты в отдельном объекте |
Simulink.SimulationData.DataStoreMemory | Хранит информацию логгирования от хранилища данных в процессе моделирования |
Можно также преобразовать зарегистрированные форматы данных кроме Набора данных. Для получения дополнительной информации смотрите Преобразование Набора данных для Записанных данных.
Чтобы просмотреть данные о регистрации хранилища данных из командной строки, просмотрите набор выходных данных в базовом рабочем пространстве. Переменной по умолчанию для хранилища данных, регистрирующего набор данных, является dsmout
.
sldemo_mdlref_dsm модель иллюстрирует подходы для просмотра данных о регистрации хранилища данных.
Найти элемент в данных о регистрации хранилища данных, на основе Name
или BlockType
свойство, используйте getElement
метод Simulink.SimulationData.Dataset
. Например:
dsmout.getElement('RefSignalVal') ans = Simulink.SimulationData.DataStoreMemory Package: Simulink.SimulationData Properties: Name: 'RefSignalVal' Blockpath: [1x1 Simulink.SimulationData.BlockPath] Scope: 'local' DSMWriterBlockPaths: [1x2 Simulinkl.SimulationData.BlockPath] DSMWriters: [101x1 uint32] Values: [101x1 timeseries]
Чтобы получить доступ к элементу индексом, используйте Simulink.SimulationData.Dataset.getElement
метод.
Simulink.SimulationData.BlockPath
| Simulink.SimulationData.DataStoreMemory
| Simulink.SimulationData.Dataset