Создайте менеджера по вектору состояния машины объект
MachineState = mech_stateVectorMgr('pathname')
MachineState = mech_stateVectorMgr('handle')
MachineState = mech_stateVectorMgr(gcb)
MachineState = mech_stateVectorMgr(gcbh)
Это содержимое характерно для программного обеспечения Simscape™ Multibody™ First Generation. Функции первого поколения намечают, чтобы быть удержанными от использования и нужно избежать.
MachineState = mech_stateVectorMgr('pathname') возвращает структуру данных MECH.StateVectorMgr класс, начинающий с пути любого блока Simscape Multibody в машине, состояние которой вы хотите.
MachineState = mech_stateVectorMgr('handle') возвращает структуру данных MECH.StateVectorMgr класс, указатель любого блока Simscape Multibody в машине, состояние которой вы хотите.
MachineState = mech_stateVectorMgr(gcb) возвращает структуру данных MECH.StateVectorMgr класс, начиная с косвенного вызова пути блока выбранного блока Simscape Multibody в вашей машине.
MachineState = mech_stateVectorMgr(gcbh) возвращает структуру данных MECH.StateVectorMgr класс, начиная с косвенного вызова указателя блока выбранного блока Simscape Multibody в вашей машине.
Структура данных возвращена mech_stateVectorMgr отсоединяет структуру механического вектора состояния машины.
mech_stateVectorMgr принимает вход того.
|
Имя полного пути блока Simscape Multibody или указатель или косвенный вызов пути или указателя.
|
Выход mech_stateVectorMgr объект MECH.StateVectorMgr класс сопоставлен с конкретной машиной.
Возвращенный объект имеет четыре свойства, зафиксированные структурой машины и именованием.
|
Строка, задающая путь к корневому блоку Ground: |
|
1 N действительным массивом со значением Можно изменить значения компонентов этого массива, но эти значения не распространяют к модели. |
|
Массив менеджеров по состоянию блока N, содержа Объединенные Ограничительные состояния примитивной и Точечной кривой. Эти менеджеры являются структурами, расположенными в массиве классом: Компоненты каждого менеджера содержат:
|
|
Массив ячеек строк N, содержа имена объединенных примитивов и Ограничений Точечной кривой. Строки этой структуры сгруппированы и упорядочены таким же образом что менеджеры по состоянию блока |
Ввод mech_stateVectorMgr функция или запрос целого объекта возвращают сводные данные объекта свойством. Если вы создаете менеджера по вектору состояния объект, можно запросить эти свойства индивидуально путем ввода полного имени свойства:
MachineState.MachineName MachineState.X
Менеджер по вектору состояния объект является одиночным элементом. Если вы создаете объект в A, затем переприсвоение B = A делает A и B укажите друг другу, весьма зависимым копиям. Изменение B автоматически изменения A и наоборот.
Эта структура данных не содержит значения реального положения. Можно впоследствии присвоить значения состояниям в этом объекте, но эти значения не распространяют к модели. Это требует изменения механической детали вектора состояния Simulink® модели. Консультируйтесь с mech_get_states, mech_runtime_states, mech_set_states, и mech_transfer_states об изменении механических значений вектора состояния модели.
Откройте модель mech_spen в качестве примера, выберите блок Simscape Multibody и войдите:
machinestate = mech_stateVectorMgr(gcb)
в командной строке. Функция возвращается
machinestate =
MECH.StateVectorMgr
MachineName: 'mech_spen/Ground'
X: [0 0]
BlockStates: [1x1 MECH.RPJointStateMgr]
StateNames: {2x1 cell}Первая линия в объекте является классом, и последние четыре являются свойствами. Модель mech_spen содержит один Блок соединений (Вращательное), с двумя состояниями (угол и скорость вращения).
Запросите отдельные свойства. Например, введите machinestate.machinename. Структура возвращается
mech_spen/Ground
обращение к одному блоку Ground в модели.
Введите machinestate.X. Структура возвращает двухкомпонентный вектор состояния (N = 2, положение и скорость):
0 0
Введите machinestate.blockstates. Структура возвращается
MECH.RPJointStateMgr
BlockName: 'Revolute'
Primitive: 'R1'
Position: 0
PositionUnits: 'rad'
Velocity: 0
VelocityUnits: 'rad/s'
FixedAtT_0: 'off'Существует одно Соединение (Вращательное) и никакие Ограничения Точечной кривой, таким образом, существует только один менеджер состояния класса MECH.RPJointStateMgr. Это свойство дает подробную Объединенную информацию: имя блока, примитивное имя, положение и скоростные значения и модули и отсутствие начальных приводов условия.
Введите machinestate.statenames. Структура возвращает имена Блока соединений, объединенного примитива, и состояний:
'Revolute:R1:Position' 'Revolute:R1:Velocity'
Создайте модель без имени с блоками Земли и Тела, соединенными Складывающимся Соединением. Затем выберите один из блоков и введите machinestate = mech_stateVectorMgr(gcb) в командной строке. Simulink возвращается
machinestate =
MECH.StateVectorMgr
MachineName: 'untitled/Ground'
X: [0 0 0 0 0 0 0 0 0 0]
BlockStates: [2x1 MECH.BlockStateMgr]
StateNames: {10x1 cell}Модель без имени сопоставлена с ее блоком Ground и имеет сферическое и призматический примитив, следовательно 10 компонентов в векторе состояния. Чтобы видеть те примитивные имена, введите machinestate.statenames получить
'Telescoping:S:Quaternion:1' 'Telescoping:S:Quaternion:2' 'Telescoping:S:Quaternion:3' 'Telescoping:S:Quaternion:4' 'Telescoping:P1:Position' 'Telescoping:S:Quaternion_dot:1' 'Telescoping:S:Quaternion_dot:2' 'Telescoping:S:Quaternion_dot:3' 'Telescoping:S:Quaternion_dot:4' 'Telescoping:P1:Velocity'
Кватернион и призматическое положение делают первые пять компонентов, в то время как кватернион производная и призматическая скорость делает последние пять.
Point-Curve Constraint | Prismatic | Revolute | Spherical | gcb | gcbh | gcs | mech_get_states | mech_runtime_states | mech_set_states | mech_transfer_states