get

Узел доступа к дереву данных регистрации симуляции с использованием пути, разделенного косыми чертами

Описание

пример

node = get(simlog, simlogPath) возвращает simscape.logging.Node объект, сопоставленный с заданным путем, simlogPath, в дереве данных регистрации симуляции, simlog. Прежде чем вы вызываете эту функцию объекта, у вас должна быть переменная журнала симуляции в текущей рабочей области. Создайте переменную журнала симуляции путем симуляции модели с включенным логгированием данных или загрузите ранее сохраненную переменную из файла.

Эта функция объекта предоставляет альтернативный метод обхода дерева данных регистрации симуляции с помощью пути с разделителем косыми чертами имен блоков вместо пути с разделителем через точку идентификаторов узла. Особенно удобно, если ваша модель содержит блоки с не ASCII- символов в именах, потому что эти имена нелегко переводятся в идентификаторы узла. Дополнительным преимуществом является заполнение клавишей Tab, которое позволяет вам задать simlogPath с маленькой печатью или без нее.

Примеры

свернуть все

Откройте модель примера двигателя постоянного тока с постоянными магнитами, в которой уже включена регистрация данных, и запустите симуляцию, чтобы создать переменную журнала симуляции simlog_ssc_dcmotor (как задано параметром конфигурации модели Workspace variable name) в текущей рабочей области:

ssc_dcmotor
sim('ssc_dcmotor');

Получите узел, соответствующий блоку Inertia в подсистеме двигателя постоянного тока:

n = get(simlog_ssc_dcmotor,'DC Motor/Inertia')
n = 

  Node with properties:

            id: 'Inertia'
       savable: 1
    exportable: 0
             t: [1×1 simscape.logging.Node]
             w: [1×1 simscape.logging.Node]
             I: [1×1 simscape.logging.Node]

n является Node объект, соответствующий блоку Inertia в подсистеме двигателя постоянного тока.

Обратите внимание, что путь начинается с имени блока (DC Motor), не с именем модели (ssc_dcmotor).

Вместо ввода пути можно использовать заполнение клавишей Tab.

Начните, введя частичную команду, которая включает имя переменной журнала симуляции:

m = get(simlog_ssc_dcmotor,

и нажмите клавишу Tab.

Функция добавляет двойную кавычку в командную строку и открывает раскрывающийся список всех блоков верхнего уровня в диаграмме модели. Из этого выпадающего списка выберите DC Motor/. Функция добавляет это имя к пути:

m = get(simlog_ssc_dcmotor,"DC Motor/

Еще раз нажмите клавишу Tab и выберите Inertia/ из раскрывающегося списка. Закройте двойные кавычки и круглые скобки, затем нажмите Return:

m = get(simlog_ssc_dcmotor,"DC Motor/Inertia/")
m = 

  Node with properties:

            id: 'Inertia'
       savable: 1
    exportable: 0
             t: [1×1 simscape.logging.Node]
             w: [1×1 simscape.logging.Node]
             I: [1×1 simscape.logging.Node]

m также является Node объект, соответствующий блоку Inertia в подсистеме двигателя постоянного тока, эквивалентный n.

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

свернуть все

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

Путь к узлу в дереве данных регистрации симуляции, заданный как путь с разделителем косых черт с именами блоков, портов и переменных. Путь должен начинаться с имени блока, а не с имени модели.

Типы данных: char | string

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

свернуть все

Узел в дереве журнала данных моделирования, соответствующем указанному пути, возвращается как Node объект. The Node объект, который имеет класс simscape.logging.Node, содержит записанные данные моделирования для указанного блока, порта или переменной. Генерирует ошибку, если узел не найден.

Введенный в R2020b