Можно регистрировать значения локальной или глобальной переменной данных хранилища данных для всех шагов моделирования. Два распространенных вида использования протоколирования хранилища данных:
Отладка модели - просмотр порядка всех операций записи в хранилище данных
Подтверждение изменения модели - использование зарегистрированных данных для установления базовой линии для сравнения результатов для определения влияния изменения модели
Пример регистрации глобального хранилища данных см. в разделе Использование хранилищ данных для нескольких моделей.
Можно регистрировать хранилища данных, использующие следующие типы данных:
Все встроенные типы данных
Перечислимые типы данных
Типы данных с фиксированной точкой
Можно регистрировать хранилища данных, использующие любой уровень измерения или сложность.
Ограничения для использования регистрации хранилища данных в модели:
Для регистрации данных в памяти хранилища данных:
Моделирование модели верхнего уровня в обычном режиме.
Для локальных хранилищ данных модель, содержащая блок памяти хранилища данных, должна находиться в стандартном режиме привязки модели.
Любой блок в ссылочной модели, записывающий данные в память хранилища данных, должен быть выполнен в стандартном режиме ссылки на модель.
Нельзя регистрировать хранилища данных, использующие пользовательские типы данных, включая шины.
Чтобы зарегистрировать локальное хранилище данных, созданное с помощью блока памяти хранилища данных, выполните следующие действия.
В модели откройте Редактор данных модели (Model Data Editor). На вкладке Моделирование (Modeling) щелкните Редактор данных модели (Model Data Editor).
На вкладке Хранилища данных установите в раскрывающемся списке Изменить представление значение Instrumentation.
В таблице данных для целевого хранилища данных установите флажок в столбце Данные журнала.
Если целевое хранилище данных не отображается в таблице, нажмите кнопку Изменить область, чтобы отобразить хранилища данных, определенные в подсистемах ниже текущей системы.
При необходимости для настройки дополнительных характеристик ведения журнала, таких как максимальное количество точек данных для регистрации, откройте инспектор свойств (на вкладке «Моделирование» в разделе «Проектирование» выберите «Инспектор свойств»). Используйте инспектор свойств для открытия диалогового окна блока и просмотра вкладки «Ведение журнала».
Включите ведение журнала хранилища данных с помощью параметра Параметры конфигурации модели > Импорт/экспорт данных > Хранилища данных.
Моделирование модели.
При включении протоколирования для модели и настройке локального хранилища данных для протоколирования в блоке Память хранилища данных (Data Store Memory) отображается синий значок. Если ведение журнала для модели не включено, значок будет серым.

Simulink.Signal ОбъектМожно создавать локальные и глобальные хранилища данных с помощью Simulink.Signal объект. Дополнительные сведения см. в разделе Хранилища данных с сигнальными объектами.
Регистрация хранилища данных, созданного с помощью Simulink.Signal объект:
Создать Simulink.Signal объект в рабочей области, видимый для каждого компонента, которому необходим доступ к хранилищу данных, как описано в разделе Хранилища данных с сигнальными объектами.
Используйте имя Simulink.Signal в параметрах блока «Имя хранилища данных» блоков «Чтение хранилища данных» и «Запись хранилища данных», в которые требуется выполнить запись и чтение из хранилища данных.
В командной строке MATLAB ®, setDataLogging (которая является собственностью LoggingInfo имущество Simulink.SignalКому 1.
Например, при использовании Simulink.Signal вызываемый объект DataStoreSignalObject для создания хранилища данных используйте следующую команду:
DataStoreSignalObject.LoggingInfo.DataLogging = 1
При необходимости укажите пределы для объема регистрируемых данных, используя следующие свойства, которые являются свойствами LoggingInfo имущества Simulink.Signal объект: Decimation, LimitDataPoints, и MaxPoints.
Включите ведение журнала хранилища данных с помощью параметра Параметры конфигурации модели > Импорт/экспорт данных > Хранилища данных.
Моделирование модели.
Следующие классы Simulink ® представляют данные из журнала хранилища данных и предоставляют методы доступа к этим данным:
| Класс | Описание |
|---|---|
Simulink.SimulationData.BlockPath | Представляет полностью указанный путь блока Simulink; использовать для захвата полной иерархии ссылок на модель |
Simulink.SimulationData.Dataset | Хранит записанные элементы данных и предоставляет возможности поиска; использовать для группировки Simulink.SimulationData.Element объекты в одном объекте |
Simulink.SimulationData.DataStoreMemory | Сохраняет данные регистрации из хранилища данных во время моделирования |
Можно также преобразовать данные, зарегистрированные в форматах, отличных от Dataset. Дополнительные сведения см. в разделе Преобразование набора данных для зарегистрированных данных.
Чтобы просмотреть данные регистрации хранилища данных из командной строки, просмотрите набор выходных данных в базовой рабочей области. Переменная по умолчанию для набора данных журнала хранилища данных 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.Dataset | Simulink.SimulationData.DataStoreMemory