getSource

Перейдите от объекта узла к блоку, который сгенерировал его

Синтаксис

Описание

пример

block_id = getSource(node) возвращает Simulink Identifier (SID) блока, сгенерировавшего данные в заданном simscape.logging.Node объект. Если объект узла соответствует переменной, возвращает родительский блок для этой переменной. Прежде чем вы вызываете эту функцию объекта, вы должны загрузить модель. Вы также должны иметь переменную журнала симуляции в текущей рабочей области. Создайте переменную журнала симуляции путем симуляции модели с включенным логгированием данных или загрузите ранее сохраненную переменную из файла.

Примеры

свернуть все

Откройте пример модели Full-Wave Bridge Rectifier и запустите симуляцию:

ssc_bridge_rectifier
sim('ssc_bridge_rectifier');

Модель имеет логгирование данных, разрешенное для всех блоков, с Workspace variable name набора параметров для simlog_ssc_bridge_rectifier. Поэтому выполнение симуляции создает переменную журнала симуляции в текущей рабочей области.

Распечатайте полное дерево логгирования для модели:

print(simlog_ssc_bridge_rectifier)
     ssc_bridge_rectifier
     +-AC_Voltage_Source
     | +-i
     | +-n
     | | +-v
     | +-p
     | | +-v
     | +-v
     +-C
     | +-i
     | +-n
     | | +-v
     | +-p
     | | +-v
     | +-v
     | +-vc
     +-Diode_1
     | +-SimulationStatistics
     | | +-zc_1
     | |   +-crossings
     | |   +-values
     | +-i
     | +-n
     | | +-v
     | +-p
     | | +-v
     | +-v
     +-Diode_2
     | +-SimulationStatistics
     | | +-zc_1
     | |   +-crossings
     | |   +-values
     | +-i
     | +-n
     | | +-v
     | +-p
     | | +-v
     | +-v
     +-Diode_3
     | +-SimulationStatistics
     | | +-zc_1
     | |   +-crossings
     | |   +-values
     | +-i
     | +-n
     | | +-v
     | +-p
     | | +-v
     | +-v
     +-Diode_4
     | +-SimulationStatistics
     | | +-zc_1
     | |   +-crossings
     | |   +-values
     | +-i
     | +-n
     | | +-v
     | +-p
     | | +-v
     | +-v
     +-ERef_T1
     | +-V
     |   +-v
     +-ERef_T2
     | +-V
     |   +-v
     +-Ideal_Transformer
     | +-i1
     | +-i2
     | +-n1
     | | +-v
     | +-n2
     | | +-v
     | +-p1
     | | +-v
     | +-p2
     | | +-v
     | +-v1
     | +-v2
     +-Load
     | +-i
     | +-n
     | | +-v
     | +-p
     | | +-v
     | +-v
     +-Voltage_Sensor
       +-V
       +-i1
       +-n
       | +-v
       +-p
       | +-v
       +-v1

Найдите идентификатор Simulink для блока, соответствующего Diode_1 узел:

id = getSource(simlog_ssc_bridge_rectifier.Diode_1)
id =

ssc_bridge_rectifier:3

ssc_bridge_rectifier:3 - идентификатор Simulink блока, соответствующего указанному узлу.

На основе идентификатора Simulink получите полное имя пути блока:

blockName = getfullname(id)
blockName =

ssc_bridge_rectifier/Diode 1

ssc_bridge_rectifier/Diode 1 - полный путь и имя блока.

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

свернуть все

Узел в дереве журнала данных моделирования, заданный как simscape.logging.Node объект. Имя переменной журнала симуляции задается с помощью параметра Workspace variable name на панели Simscape диалогового окна Параметры конфигурации. Чтобы задать узел в переменной журнала симуляции, укажите полный путь к этому узлу через дерево данных моделирования, начиная с имени переменной верхнего уровня.

Пример: simlog.DC_Motor.Inertia

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

свернуть все

Simulink Identifier (SID) блока, который генерировал данные в указанном объекте узла. Если объект узла соответствует переменной, возвращает родительский блок для этой переменной.

Введенный в R2015b