Сгенерируйте datastore ансамбля симуляции данных, представляющих машину, действующую при условиях отказа путем симуляции модели Simulink® машины при варьировании параметра отказа.
Загрузите модель Simulink. Эта модель является упрощенной версией модели коробки передач, описанной в Использовании Simulink, чтобы Сгенерировать Данные об Отказе. В данном примере только один режим отказа моделируется, отказ зуба механизма.
Отказ зуба механизма моделируется как воздействие в Gear Tooth fault
подсистема. Величиной воздействия управляет переменная ToothFaultGain
модели
, где ToothFaultGain = 0
не соответствует никакому отказу зуба механизма (здоровая операция). Чтобы сгенерировать ансамбль данных об отказе, вы используете generateSimulationEnsemble
симулировать модель в различных значениях ToothFaultGain
, в пределах от-2, чтобы обнулить. Эта функция использует массив Simulink.SimulationInput
объекты сконфигурировать модель Simulink для каждого члена в ансамбле. Каждая симуляция генерирует отдельный член ансамбля в его собственном файле данных. Создайте такой массив и используйте setVariable
чтобы присвоить зубной отказ получают значение для каждого запуска.
В данном примере модель уже сконфигурирована, чтобы регистрировать определенные значения сигналов, Vibration
и Tacho
(см., что данные сигнала экспорта Используют сигнал, регистрирующий (Simulink)). generateSimulationEnsemble
далее конфигурирует модель к:
Сохраните записанные данные в файлы в папке, которую вы задаете.
Используйте timetable
формат для логгирования сигнала.
Сохраните каждый Simulink.SimulationInput
объект в сохраненном файле с соответствующими записанными данными.
Задайте местоположение для сгенерированных данных. В данном примере сохраните данные к папке под названием Data
в вашей текущей папке. Индикатор status
1 (TRUE)
если все симуляции завершаются без ошибки.
[18-Aug-2020 02:51:41] Running simulations...
[18-Aug-2020 02:51:51] Completed 1 of 5 simulation runs
[18-Aug-2020 02:52:00] Completed 2 of 5 simulation runs
[18-Aug-2020 02:52:11] Completed 3 of 5 simulation runs
[18-Aug-2020 02:52:20] Completed 4 of 5 simulation runs
[18-Aug-2020 02:52:28] Completed 5 of 5 simulation runs
В Data
папка, исследуйте один из файлов. Каждым файлом является MAT-файл, содержащий следующие переменные MATLAB®:
SimulationInput
— Simulink.SimulationInput
объект, который использовался, чтобы сконфигурировать модель для генерации данных в файле. Можно использовать это, чтобы извлечь информацию об условиях (такой как дефектный или здоровый), под которым была запущена эта симуляция.
logsout
— Dataset
объект, содержащий все данные, которые модель Simulink сконфигурирована, чтобы регистрировать.
PMSignalLogName
— Имя переменной, которая содержит записанные данные ('logsout'
в этом примере). simulationEnsembleDatastore
команда использует это имя, чтобы проанализировать данные в файле.
SimulationMetadata
— Другая информация о симуляции, которая сгенерировала данные, вошла в систему файл.
Теперь можно создать datastore ансамбля симуляции с помощью сгенерированных данных. Получившийся simulationEnsembleDatastore
возразите указывает на сгенерированные данные. Списки объектов переменные данных в ансамбле, и по умолчанию все переменные выбраны для чтения. Исследуйте DataVariables
и SelectedVariables
свойства ансамбля подтвердить эти обозначения.
ensemble =
simulationEnsembleDatastore with properties:
DataVariables: [4x1 string]
IndependentVariables: [0x0 string]
ConditionVariables: [0x0 string]
SelectedVariables: [4x1 string]
ReadSize: 1
NumMembers: 5
LastMemberRead: [0x0 string]
Files: [5x1 string]
ans = 4x1 string
"SimulationInput"
"SimulationMetadata"
"Tacho"
"Vibration"
ans = 4x1 string
"SimulationInput"
"SimulationMetadata"
"Tacho"
"Vibration"
Можно теперь использовать ensemble
считать и анализировать сгенерированные данные в datastore ансамбля. Смотрите simulationEnsembleDatastore
для получения дополнительной информации.