Получите сигнал в Simulink.sdi.Run
объект по индексу
возвращает sig
= getSignalByIndex(runObj
,idx
)Simulink.sdi.Signal
объект, sig
, в индексе, заданном как idx
в рамках Simulink.sdi.Run
runObj объекта
.
Этот пример демонстрирует, как получить доступ к Simulink.sdi.Run
объект для запуска Данные Моделирования Inspector, созданный с помощью сигналов регистрации. Из Simulink.sdi.Run
объект, который можно получить Simulink.sdi.Signal
объекты, которые содержат записанные в журнал данные о сигнале и метаданные. Можно использовать Signal
объекты и plotOnSubPlot
функция для построения графика данных в Данные моделирования Inspector.
Создайте прогон симуляции и получите доступ к Run
Объект
The 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);
Просмотр нанесенных на график данных
Чтобы просмотреть только что созданные графики, откройте Данные моделирования Inspector с помощью Simulink.sdi.view
функция.
runObj
- Запуск, который содержит требуемый сигналSimulink.sdi.Run
объектЗапуск, который содержит сигнал, к которому вы хотите получить доступ, заданный как Simulink.sdi.Run
объект.
idx
- Индекс сигнала в запускеИндекс сигнала в запуск, заданный как целое число.
sig
- Сигнал при заданном индексеSimulink.sdi.Signal
объектСигнал при заданном индексе в Run
объект, возвращенный как Simulink.sdi.Signal
объект.
getAllSignalIDs
| getAllSignals
| getSignalIDByIndex
| getSignalIDsByName
| getSignalsByName
| Simulink.sdi.Run
| Simulink.sdi.Signal
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.