Simulink.SimulationData.BlockPath class

Пакет: Simulink.SimulationData

Полностью заданный путь к блоку Simulink

Описание

Simulink® создает объекты контуров блока при создании объектов набора данных для логгирования сигнала и логгирования хранилища данных. Simulink.SimulationData.Signal и Simulink.SimulationData.DataStoreMemory объекты включают объекты контуров блока.

Можно создать блок path, который можно использовать с getElement метод, чтобы получить доступ к определенному элементу набора данных. Если вы хотите создать набор данных в MATLAB, чтобы использовать в качестве базовой линии, чтобы выдержать сравнение с логгированием сигнала или хранилищем данных, регистрирующим набор данных, то необходимо создать пути к блоку как часть того набора данных.

Simulink.SimulationData.BlockPath класс очень похож на Simulink.BlockPath класс.

Вам нельзя было устанавливать Simulink, чтобы использовать Simulink.SimulationData.BlockPath класс. Однако необходимо было установить Simulink, чтобы использовать Simulink.BlockPath класс. Если вам установили Simulink, рассматриваете использование Simulink.BlockPath вместо Simulink.SimulationData.BlockPath, потому что Simulink.BlockPath класс включает метод для проверки валидности объектов контуров блока без вас имеющий необходимость обновить диаграмму модели.

Сводные данные свойства

Имя

Описание

SubPath

Отдельный компонент в блоке задан блоком path

Сводные данные метода

Имя

Описание

BlockPath

Создайте блок path.

convertToCell

Преобразуйте блок path в массив ячеек из символьных векторов.

getBlock

Получите один блок path в иерархии модели - ссылки.

getLength

Получите длину блока path.

Свойства

SubPath

Описание

Представляет отдельный компонент в блоке, заданном блоком path.

Например, если блок path обращается к графику Stateflow®, можно использовать SubPath указать на сигналы графика. Например:

Block Path:
      'sf_car/shift_logic'
 
    SubPath:
      'gear_state.first'
Тип данных

символьный вектор

Доступ

RW

Методы

BlockPath

Цель

Создайте блок path

Синтаксис
blockpath_object = Simulink.SimulationData.BlockPath()
blockpath_object = Simulink.SimulationData.BlockPath(blockpath)
blockpath_object = Simulink.SimulationData.BlockPath(paths)
blockpath_object = Simulink.SimulationData.BlockPath(paths, subpath)
Входные параметры
blockpath

Объект контуров блока, который вы хотите скопировать.

paths

Вектор символов или массив ячеек из символьных векторов, что использование Simulink, чтобы создать блок path.

Задайте каждый вектор символов в порядке от топ-модели с определенным блоком, для которого вы создаете блок path.

Каждый вектор символов должен быть путем к блоку в модели Simulink. Блок должен быть:

  • Блок в одной модели

  • Блок Model (за исключением вектора последнего знака, который может быть блоком кроме блока Model),

  • Блок, который находится в модели, на которую ссылается блок Model, который задан в предыдущем векторе символов

subpath

Вектор символов, который представляет отдельный компонент в блоке.

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

Блок path, который вы создаете.

Описание

blockpath_object = Simulink.SimulationData.BlockPath() создает пустой блок path.

blockpath_object = Simulink.SimulationData.BlockPath(blockpath) создает копию блока path объекта контуров блока, который вы задаете с source_blockpath аргумент.

blockpath = Simulink.SimulationData.BlockPath(paths) создает блок path из вектора символов или массива ячеек из символьных векторов, который вы задаете с paths аргумент. Каждый вектор символов представляет путь на уровне иерархии модели.

blockpath = Simulink.SimulationData.BlockPath(paths, subpath) создает блок path из вектора символов или массива ячеек из символьных векторов, который вы задаете с paths аргумент и создает путь для отдельного компонента (например, сигнал) блока.

Пример

Создайте объект контуров блока под названием bp1, использование массива ячеек из символьных векторов, представляющего элементы блока path.

bp1 = Simulink.SimulationData.BlockPath(...
{'sldemo_mdlref_depgraph/thermostat', ...
'sldemo_mdlref_heater/Fahrenheit to Celsius', ...
'sldemo_mdlref_F2C/Gain1'})

Получившийся блок path отражает иерархию модели - ссылки для блока path.

bp1 = 

  Simulink.BlockPath
  Package: Simulink

  Block Path:
    'sldemo_mdlref_depgraph/thermostat'
      'sldemo_mdlref_heater/Fahrenheit to Celsius'
        'sldemo_mdlref_F2C/Gain1

convertToCell

Цель

Преобразуйте блок path в массив ячеек из символьных векторов

Синтаксис
cellarray = blockPathObject.convertToCell()
Выходные аргументы
cellarray

Массив ячеек из символьных векторов, представляющий элементы блока path.

Описание

cellarray = blockPathObject.convertToCell() преобразует блок path в массив ячеек из символьных векторов.

Примеры

bp1 = Simulink.SimulationData.BlockPath(...
{'sldemo_mdlref_depgraph/thermostat', ...
'sldemo_mdlref_heater/Fahrenheit to Celsius', ...
'sldemo_mdlref_F2C/Gain1'})
cellarray_for_bp1 = bp1.convertToCell()

Результатом является массив ячеек, представляющий элементы блока path.

cellarray_for_bp1 = 

    'sldemo_mdlref_depgraph/thermostat'
    'sldemo_mdlref_heater/Fahrenheit to Celsius'
    'sldemo_mdlref_F2C/Gain1'

getBlock

Цель

Получите один блок path в иерархии модели - ссылки

Синтаксис
block = blockPathObject.getBlock(index)
Входные параметры
index

Индекс блока, для которого вы хотите получить блок path. Индекс отражает уровень в иерархии модели - ссылки. Индекс 1 представляет блок в модели верхнего уровня, индекс 2 представляет блок в модели, на которую ссылается блок индекса 1 и индекса n представляет блок что блок с индексом n-1 ссылки.

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

Блок, представляющий уровень в иерархии модели - ссылки, задан index аргумент.

Описание

blockpath = Simulink.SimulationData.BlockPath.getBlock(index) возвращает блок path блока, заданного index аргумент.

Пример

Получите блок для второго уровня в иерархии модели - ссылки.

bp1 = Simulink.SimulationData.BlockPath(...
{'sldemo_mdlref_depgraph/thermostat', ...
'sldemo_mdlref_heater/Fahrenheit to Celsius', ...
'sldemo_mdlref_F2C/Gain1'})
blockpath = bp1.getBlock(2)

Результатом является thermostat блокируйтесь, который является на втором уровне в иерархии блока path.

blockpath =

sldemo_mdlref_heater/Fahrenheit to Celsius

getLength

Цель

Получите длину блока path

Синтаксис
length = blockPathObject.getLength()
Выходные аргументы
length

Длина блока path. Длина является количеством уровней в иерархии модели - ссылки.

Описание

length = Simulink.SimulationData.BlockPath.getLength() возвращает числовое значение, которое соответствует количеству уровней в иерархии модели - ссылки для блока path.

Пример

Получите длину блока path bp1.

bp1 = Simulink.SimulationData.BlockPath(...
{'sldemo_mdlref_depgraph/thermostat', ...
'sldemo_mdlref_heater/Fahrenheit to Celsius', ...
 'sldemo_mdlref_F2C/Gain1'})
length_bp1 = bp1.getLength()

Результат отражает, что блок path имеет три элемента.

length_bp1 =

     3
Представленный в R2012b