Вращательные измерения

Обзор обнаружения вращения

Можно измерить вращение кадра в различных форматах. Они включают угол оси, кватернион, и преобразовывают. Различные форматы доступны через блок Transform Sensor и, ограниченно, в объединенных блоках [1]. Выбор формата измерения зависит от модели. Выберите формат, который является самым удобным для приложения.

Измерение вращения

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

Simscape™ Multibody™ задает форматы вращения согласно стандартным соглашениям. В некоторых случаях больше чем одно соглашение существует. Дело обстоит так, например, кватерниона. Чтобы правильно интерпретировать измерения вращения, рассмотрите определения форматов вращения.

Измерения угла оси

Угол оси является одним из более простых форматов измерения вращения. Этот формат использует два параметра, чтобы полностью описать вращение: вектор оси и угол. Полноценность формата угла оси следует непосредственно от теоремы вращения Эйлера. Согласно теореме, любая 3-D последовательность вращения или вращения может быть описана как чистое вращение вокруг одной фиксированной оси.

Чтобы измерить вращение кадра в формате угла оси, используйте блок Transform Sensor. Диалоговое окно блока содержит отдельный Axis и параметры Angle, которые можно выбрать, чтобы представить соответствующие порты физического сигнала (PS) (маркировал axs и q, соответственно). Поскольку параметры угла оси перечислены отдельно, можно принять решение измерить ось, угол или обоих.

Ось вывод является 3-D единичным вектором в форме [ax, ay, az]. Этот единичный вектор кодирует направление вращения согласно правилу правой руки. Например, кадр, вращающийся в направлении против часовой стрелки о +X оси, имеет ось вращения [1 0 0]. Кадр, вращающийся в направлении по часовой стрелке о той же оси, имеет ось вращения [-1 0 0].

Угол вывод является скалярным номером в области значений 0–π. Этот номер кодирует степень вращения вокруг измеренной оси. По умолчанию угол измеряется в радианах. Можно измениться, угловые модули в блоке PS-Simulink Converter раньше взаимодействовали через интерфейс с блоками Simulink®.

Измерения кватерниона

Кватернион является представлением вращения на основе гиперкомплексных чисел. Это представление использует с 4 векторами, содержащий один скаляр (S) и три векторных компонента (Vx, Vy, Vz). Скалярный компонент кодирует угол поворота. Векторные компоненты кодируют ось вращения.

Главным преимуществом кватернионов является пространство параметров без особенности. Математические особенности, существующие в последовательностях Угла Эйлера, приводят к потере вращательных степеней свободы. Это явление известно как блокировку карданова подвеса. В Simscape Multibody блокировка карданова подвеса вызывает числовые ошибки, которые приводят к отказу симуляции. Отсутствие особенностей означает, что кватернионы более устойчивы в целях симуляции.

Чтобы измерить вращение кадра в формате кватерниона, используйте:

  • Преобразуйте блок Sensor при измерении вращения между двумя общими кадрами. Меню Rotation диалогового окна содержит опцию Quaternion, которую можно выбрать, чтобы представить соответствующий порт физического сигнала (маркировал Q).

  • Объединенный блок, обладающий сферическим примитивом, при измерении 3-D вращения между двумя объединенными кадрами. Меню Sensing диалогового окна содержит опцию Position, которую можно выбрать, чтобы представить соответствующий порт физического сигнала (также маркировал Q). Для получения дополнительной информации смотрите страницу с описанием блока Spherical Joint.

Кватернион вывод является вектором - строкой с 4 элементами Q=(SV), где:

S=потому что(θ2)

и

V=[VxVyVz]sin(θ2)

θ угол поворота. Угол может принять любое значение между 0–π. [Vx, Vy, Vz] являются осью вращения. Компоненты оси могут принять любое значение между 0–1.

Преобразуйте измерения

Вращение преобразовывает, 3×3 матрица, которая кодирует вращение кадра. С точки зрения осей опорной рамы [x, y, z] B, оси кадра последователя [x, y, z] F:

[xyz]B=[rxxrxyrxzryxryyryzrzxrzyrzz][xyz]F

Каждый столбец матрицы содержит координаты оси кадра последователя, разрешенной в опорной раме. Например, первый столбец содержит координаты Оси X кадра последователя, как разрешено в опорной раме. Точно так же вторые и третьи столбцы содержат координаты Y и осей Z, соответственно. Работа на векторе с матрицей вращения преобразовывает векторные координаты от кадра последователя до опорной рамы.

Можно обнаружить вращение кадра с точки зрения матрицы вращения использование блока Transform Sensor. Диалоговое окно для этого блока содержит опцию Transform, которая, когда выбрано представляет порт физического сигнала, маркировал R. Используйте этот порт, чтобы вывести матричный сигнал вращения, например, для обработки и анализа в Подсистеме Simulink — после преобразования выходного физического сигнала к Сигналу Simulink через блок PS-Simulink Converter.

Связанные примеры

Больше о


[1]  Сварной шов является исключением