Данные логов к персистентному устройству хранения данных

Когда регистрировать к персистентному устройству хранения данных

В некоторых случаях логгирование данных моделирования может создать большие объемы данных, которые являются слишком большими для вашего компьютера, чтобы содержать в оперативной памяти, также запускаясь эффективно. Такие ситуации могут включать симуляции, которые регистрируют много сигналов, симуляции, которые запускаются в течение долгого времени со многими временными шагами, и параллельны симуляциям. Когда ваша настройка симуляции создает большой объем данных, можно регистрировать те данные к персистентному устройству хранения данных, вместо того, чтобы регистрировать ее к оперативной памяти.

Можно сохранить регистрируемые данные моделирования к персистентному устройству хранения данных в MAT-файле. Вы управляете логгированием к персистентному устройству хранения данных на уровне модели. Можно включить и отключить опцию путем изменения одного параметра конфигурации модели (Log Dataset data to file), не изменяя макет модели.

Если вы используете Dataset формат для логгирования, можно регистрировать каждый из этих видов данных к персистентному устройству хранения данных:

  • Логгирование сигнала — Использование Dataset формат только.

  • Состояния — значения по умолчанию к Dataset формат. Можно использовать другие форматы.

  • Конечные состояния — Требуют, чтобы вы очистили параметр Save final operating point

  • Вывод Значения по умолчанию к Dataset формат.

  • Хранилища данных — Использование Dataset формат только.

По умолчанию логгирование к персистентному устройству хранения данных отключено, так, чтобы записанные данные хранились в рабочей области MATLAB®. Для большинства моделей, регистрируя к рабочей области более просто, потому что она старается не загрузить и сохранить файлы логгирования. По сравнению с доступом к данным, регистрируемым к памяти, получая доступ к данным, регистрируемым к персистентному устройству хранения данных, требует некоторых дополнительных шагов. Для коротких симуляций, регистрируя к рабочему пространству MATLAB может быть быстрее и возможно использовать меньше памяти, чем логгирование к персистентному устройству хранения данных.

Ограничения для логгирования к персистентному устройству хранения данных

  • Только данные вошли в систему Dataset формат хранится в MAT-файле. Данные вошли в систему, другие форматы хранятся в рабочем пространстве MATLAB.

  • Чтобы использовать персистентное устройство хранения данных для регистрации данных о конечных состояниях, вы не можете включить Configuration Parameters> Data Import/Export + Save final operating point.

  • Степпер Симуляции и быстрый перезапуск не поддерживают логгирование к персистентному устройству хранения данных.

  • В процессе моделирования вы не можете загрузить данные из персистентного файла устройства хранения данных непосредственно в модель. Создайте объекты, которые ссылаются на данные в файле и затем загружают объект привязки.

Альтернативные подходы для сокращения использования памяти логгирования

Когда необходимо симулировать модель, которая создает большой объем данных, и вы не хотите регистрировать данные моделирования к персистентному устройству хранения данных, рассматривать использование одной из этих альтернатив.

  • Ограничьте сумму данных моделирования, сохраненных в рабочей области.

    Можно ограничить сумму данных моделирования, сохраненных в рабочей области при помощи одного или нескольких из этих методов. Для получения дополнительной информации смотрите, Задают Значения сигналов, чтобы Регистрировать.

    МетодОписание
    Задайте фактор децимацииПропустите выборки при экспортировании данных.
    Ограничьте точки данныхОграничьте количество выборок, сохраненных, чтобы быть только новыми выборками.
    Задайте интервалы для логгированияУкажите диапазоны временных шагов для логгирования.

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

  • Используйте блок To File для каждого сигнала, что вы хотите регистрировать.

    Соединение блока To File к сигналам, что вы хотите регистрировать, хранит записанные данные в MAT-файле, а не в рабочем пространстве MATLAB. Однако этот подход:

    • Подход на сигнал, который может создать помехи модели несколькими блоками To File, присоединенными к отдельным сигналам.

    • Создает отдельный MAT-файл для каждого блока To File, вместо одного файла, созданного, когда вы регистрируете к персистентному устройству хранения данных.

Регистрируйте к персистентному устройству хранения данных

  1. Задайте виды логгирования, чтобы выполнить (например, логгирование сигнала и вывести логгирование) и имена переменных для данных о регистрации.

  2. В диаграмме модели отметьте выбранные сигналы для логгирования сигнала.

  3. Используйте Dataset формат для регистрации данных. Данные, которые зарегистрированы любой другой формат, хранятся в рабочей области.

    • Логгирование сигнала и хранилище данных, регистрирующее использование Dataset формат только. Форматом по умолчанию для выхода, состояний и логгирования конечных состояний является Dataset.

    • Для логгирования конечных состояний очистите параметр конфигурации Save final operating point.

  4. Позвольте регистрировать к персистентному устройству хранения данных и задайте выходное имя MAT-файла.

    • Выберите параметр конфигурации Log Dataset data to file.

    • Задайте MAT-файл, чтобы использовать. Не используйте имя файла от одной локали в различной локали.

  5. Сохранить регистрируемый Dataset данные с помощью timeseries или timetable элементы, набор параметр конфигурации Dataset signal format. Форматом по умолчанию является timeseries. timetable формат полезен для MATLAB, комбинирующего записанные данные от нескольких симуляций. Для получения дополнительной информации о timetable формат, смотрите формат сигнала Набора данных.

  6. Симулируйте модель.

Позвольте регистрировать к персистентному устройству хранения данных программно

Можно программно регистрировать к персистентному устройству хранения данных. Чтобы позволить регистрировать к персистентному устройству хранения данных, используйте LoggingToFile и LoggingFileName пары "имя-значение" с любым sim команда или set_param команда.

Чтобы включить подходы логгирования, которые вы хотите использовать, установите эти параметры на 'on', как применимый:

  • SignalLogging

  • SaveState

  • SaveFinalState

  • SaveOutput

  • DSMLogging

Чтобы регистрировать выход, состояния и данные о конечных состояниях к персистентному устройству хранения данных, устанавливают SaveFormat параметр к 'Dataset'.

Чтобы регистрировать данные о конечных состояниях к персистентному устройству хранения данных, установите SaveOperatingPoint к 'off'.

Как данные моделирования хранятся

Логгирование к персистентному устройству хранения данных сохраняет регистрируемые данные моделирования в заданном MAT-файле. Данные хранятся как Simulink.SimulationData.Dataset объекты для каждого типа логгирования, которое использует Dataset формат. Dataset элементы хранятся как любой timeseries или timetable объекты, в зависимости от того, как вы устанавливаете параметр Dataset signal format. Для получения дополнительной информации о timetable формат, смотрите формат сигнала Набора данных.

Dataset имя объекта в файле является именем переменной, которую вы использовали для логгирования. Например, если вы используете переменную logsout логгирования сигнала по умолчанию, Dataset объектом в MAT-файле является logsout.

Избавьте записанные данные от последовательных симуляций

Подход, который вы используете для сохранения данных, регистрируемых от последовательных симуляций, зависит от того, выполняете ли вы параллельные симуляции.

Без Использования параллельных симуляций

Каждый раз, когда вы симулируете модель, не используя параллельную симуляцию, Simulink® перезаписывает содержимое MAT-файла, если вы не меняете имя файла между симуляциями. Когда вы используете Simulink.SimulationData.DatasetRef возразите, что данные о ссылках в MAT-файле, чтобы получить данные в файле, это получает новую версию данных. Чтобы сохранить данные из более ранней симуляции, используйте один из этих подходов:

  • Между симуляциями используйте Configuration Parameters> панель Data Import/Export, чтобы задать другое имя для MAT-файла для логгирования.

  • Между симуляциями сохраните копию MAT-файла. Используйте различное имя файла, чем имя, которое вы задаете как MAT-файл для персистентного устройства хранения данных или перемещаете MAT-файл.

  • Программно задайте новое имя файла для каждой запущенной симуляции.

Если при запуске несколько симуляций, которые перекрываются вовремя, используют уникальный MAT-файл для каждой модели, которую вы регистрируете к персистентному устройству хранения данных.

Если вы изменяете имя файла, используемое для логгирования к персистентному устройству хранения данных, то получить доступ к записанным данным, используйте один из этих подходов:

  • Создайте Simulink.SimulationData.DatasetRef объект.

  • Чтобы совпадать с новым именем файла, измените Location свойство DatasetRef объекты.

Для получения дополнительной информации об использовании DatasetRef объекты получить доступ к записанным данным, смотрите Загрузку Большие данные для Симуляций.

С параллельными симуляциями

Для параллельных симуляций, для которых вы задаете массив входных объектов, если вы регистрируете к файлу, Simulink:

  • Создает MAT-файл для каждой симуляции

  • Создает Simulink.SimulationData.DatasetRef объекты получить доступ к выходным данным в MAT-файле и включают те объекты в SimulationOutput данные объектов

  • Включает CaptureErrors аргумент для симуляции

Для получения дополнительной информации о параллельных симуляциях, смотрите Запуск Несколько Симуляций.

Смотрите также

Функции

Похожие темы