Когда вы анализируете многомерные данные сигнала с помощью Инспектора Данных моделирования, можно выбрать, представлять ли данные как один сигнал с многомерными демонстрационными значениями или в виде набора сигналов, названных каналами, со скалярными демонстрационными значениями. Используйте Инспектора Данных моделирования программируемый интерфейс, чтобы преобразовать представление сигнала, созданного путем логгирования выхода блока Mux в модели vdp
.
Откройте и симулируйте модель
Откройте модель vdp,
отметьте выход блока Mux для логгирования и назовите блок Mux otuput сигналом. Затем simultate модель.
Доступ к запуску и данным сигнала
По умолчанию выход блока Mux представлен как каналы в Инспекторе Данных моделирования, потому что это содержит меньше чем четыре канала, таким образом, запуск содержит два сигнала: один для каждого канала в блоке Mux выводится.
Используйте Simulink.sdi.getCurrentSimulationRun
функционируйте, чтобы получить доступ к Simulink.sdi.Run
объект, который содержит данные моделирования. Затем проверяйте сколько Simulink.sdi.Signal
возражает Run
объект содержит использование SignalCount
свойство на Run
объект.
Сигналы с многомерными данными имеют Signal
верхнего уровня
объект, который не содержит данные. Children
свойство объекта сигнала верхнего уровня содержит один или несколько Signal
объекты сопоставили с составным сигналом верхнего уровня, которые содержат данные. Поскольку сигналы верхнего уровня не содержат данные, они не считаются, чтобы определить значение SignalCount
свойство для Run
объект.
Используйте getSignalsByName
функционируйте, чтобы получить доступ к Signal
верхнего уровня
объект для блока Mux выводится.
Используйте Children
свойство получить доступ к Signal
объект для каждого канала.
Преобразуйте каналы в многомерный сигнал
Используйте collapse
функционируйте, чтобы преобразовать представление блока Mux выход, таким образом, вы получаете доступ к данным как к одному сигналу с многомерными демонстрационными значениями.
Run
объект теперь содержит только один сигнал с многомерными демонстрационными значениями.
Children
свойство Signal
верхнего уровня
объект теперь содержит только один сигнал.
После того, как вы преобразуете сигнал от каналов до многомерного представления, Signal
возразите, что ранее содержал данные для первого канала, содержит данные для многомерного сигнала.
ans = 64×2
2.0000 0
2.0000 -0.0002
2.0000 -0.0012
2.0000 -0.0062
1.9998 -0.0306
1.9943 -0.1398
1.9379 -0.3840
1.8155 -0.5570
1.5990 -0.7204
1.2687 -0.9452
⋮
После преобразования, идентификаторов сигнала для Signal
объекты, которые содержали данные для других каналов, становятся недопустимыми.
Преобразуйте многомерный сигнал в каналы
Используйте expand
функционируйте, чтобы преобразовать Mux выход назад к каналам.
После преобразования многомерного сигнала к каналам, Signal
возразите, что ранее содержал данные для многомерного сигнала, содержит данные для первого канала. Новый Signal
объекты создаются для других каналов.
Run
возразите и Children
свойство Signal
верхнего уровня
возразите, что оба содержат два сигнала.
Доступ к новому Signal
объект, который содержит данные для второго канала.