Доступ к данным для запуска инспектора расчетных данных
возвращает run = Simulink.sdi.getRun(runID)Simulink.sdi.Run объект, предоставляющий доступ к данным в прогоне, соответствующем runID. Инспектор данных моделирования назначает идентификаторы прогонов при создании прогона. Идентификатор прогона можно получить с помощью Simulink.sdi.getAllRunIDs или Simulink.sdi.getRunIDByIndex.
Многие задачи, выполняемые с помощью программного интерфейса Simulation Data Inspector, начинаются с доступа к Simulink.sdi.Run объект, соответствующий записанным или импортированным данным, которые требуется проанализировать. Например, можно использовать Run объект для доступа к Simulink.sdi.Signal объекты, соответствующие отдельным сигналам в прогоне.
В этом примере показано, как получить доступ Run с помощью Simulink.sdi.Run.getLatest функция, Simulink.sdi.getCurrentSimulationRun функции или Simulink.sdi.getRun функция.
Создание прогона
Модель sldemo_fuelsys уже настроен для ведения журнала. При моделировании модели инспектор данных моделирования автоматически создает прогон и назначает ему идентификатор прогона.
load_system('sldemo_fuelsys') sim('sldemo_fuelsys')
Получить объект запуска с помощью Simulink.sdi.Run.getLatest
В этом примере прогон, созданный при моделировании модели, является последним созданным прогоном в инспекторе данных моделирования. Если требуется получить доступ к последнему созданному прогону, используйте Simulink.sdi.Run.getLatest функция.
fuelsysRun = Simulink.sdi.Run.getLatest;
Получить объект запуска с помощью Simulink.sdi.getCurrentSimulationRun
Возможно, прогон, к которому требуется получить доступ, не является последним созданным прогоном в инспекторе данных моделирования. Если прогон соответствует последнему моделированию модели, можно использовать Simulink.sdi.getCurrentSimulationRun для доступа к Run объект. Вы также можете использовать Simulink.sdi.getCurrentSimulationRun для доступа к данным для текущего моделирования, когда моделирование передает данные в инспектор данных моделирования. Эта функция может быть полезна при работе с несколькими моделями.
В этом примере прогон, созданный при моделировании модели, является текущим прогоном моделирования для sldemo_fuelsys модель.
fuelsysRun = Simulink.sdi.getCurrentSimulationRun('sldemo_fuelsys');Получение объекта выполнения из идентификатора выполнения
Если для выполнения задачи также требуется идентификатор выполнения, можно использовать Simulink.sdi.getRun для получения соответствующей функции Simulink.sdi.Run объект, содержащий данные выполнения и метаданные.
runIDs = Simulink.sdi.getAllRunIDs; runID = runIDs(end); fuelsysRun = Simulink.sdi.getRun(runID);
В этом примере показано, как получить доступ к Simulink.sdi.Run для запуска инспектора данных моделирования, созданного с помощью сигналов регистрации. От Simulink.sdi.Run объект, который вы можете получить Simulink.sdi.Signal объекты, содержащие записанные данные сигнала и метаданные. Вы можете использовать Signal объекты и plotOnSubPlot для печати данных в инспекторе расчетных данных.
Создание прогона моделирования и доступ к Run Объект
ex_vdp модель регистрирует два сигнала. Чтобы создать прогон моделирования, содержащий записанные данные, смоделируйте модель.
sim('ex_vdp');Инспектор данных моделирования отслеживает выполнение, присваивая уникальный числовой идентификатор выполнения каждому выполнению, созданному путем моделирования, импорта данных или открытия сеанса. Для доступа к объекту прогона только что выполненного моделирования используйте Simulink.sdi.getAllRunIDs и возьмите идентификатор последнего прогона в возвращенном векторе.
runIDs = Simulink.sdi.getAllRunIDs; runID = runIDs(end);
После получения идентификатора прогона можно использовать Simulink.sdi.getRun для получения функции Simulink.sdi.Run объект, соответствующий прогону. Вы можете использовать Run объект для проверки метаданных, связанных с выполнением, включая количество сигналов в выполнении.
vdpRun = Simulink.sdi.getRun(runID); vdpRun.SignalCount
ans = int32
2
Печать данных с использованием Signal Объекты
Используйте getSignalByIndex для доступа к сигналам от Run объект, fuelRun.
signal1 = getSignalByIndex(vdpRun,1); signal2 = getSignalByIndex(vdpRun,2);
Используйте Simulink.sdi.setSubPlotLayout для задания компоновки «3 на 1».
Simulink.sdi.setSubPlotLayout(2,1)
Перед выводом данных на печать используйте Simulink.sdi.clearAllSubPlots для очистки всех уже выведенных на печать данных.
Simulink.sdi.clearAllSubPlots
Постройте график по одному сигналу на каждом вложенном графике. Для печати сигналов на первом вложенном графике можно установить checked свойство для сигнала. Для вывода на печать сигналов на подсхемах, отличных от первого, используйте plotOnSubPlot функция.
signal1.Checked = true; plotOnSubPlot(signal2,2,1,true);
Просмотр выводимых на печать данных
Чтобы просмотреть только что созданные графики, откройте инспектор расчетных данных с помощью Simulink.sdi.view функция.

runID - Числовой идентификатор выполненияИдентификатор прогона для прогона, который требуется Simulink.sdi.Run объект для. Инспектор данных моделирования назначает идентификаторы прогонов при их создании. Идентификатор прогона можно получить с помощью Simulink.sdi.getAllRunIDs или Simulink.sdi.getRunIDByIndex.
run — Simulink.sdi.Run объектSimulink.sdi.Run'Simulink.sdi.Run объект для прогона, соответствующий идентификатору прогона.
Simulink.sdi.createRun | Simulink.sdi.getAllRunIDs | Simulink.sdi.getCurrentSimulationRun | Simulink.sdi.getRunIDByIndex | Simulink.sdi.Run | Simulink.sdi.Run.getLatest
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.