Создайте менеджера по вектору состояния машины объект
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