get

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

Описание

пример

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

Эта объектная функция обеспечивает альтернативный метод пересечения симуляции, регистрирующей дерево данных, при помощи разграниченного наклонной чертой пути имен блока вместо разграниченного точкой пути идентификаторов узла. Особенно удобно, если ваша модель содержит блоки с символами non-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 диалогового окна Configuration Parameters.

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

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

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

свернуть все

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

Введенный в R2020b