getSignalByIndex

Получите сигнал в 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 функция.

Входные параметры

свернуть все

Запуск, который содержит сигнал, к которому вы хотите получить доступ, заданный как Simulink.sdi.Run объект.

Индекс сигнала в запуск, заданный как целое число.

Выходные аргументы

свернуть все

Сигнал при заданном индексе в Run объект, возвращенный как Simulink.sdi.Signal объект.

Введенный в R2012b