Rotation Angles to Quaternions

Вычислите кватернион из углов поворота

  • Библиотека:
  • Аэрокосмический Blockset/Утилиты/Преобразования осей

  • Rotation Angles to Quaternions block

Описание

Rotation Angles to Quaternions блок преобразовывает вращение, описанное этими тремя углами поворота (R1, R2, R3) в вектор кватерниона с четырьмя элементами (q 0, <reservedrangesplaceholder2> 1, <reservedrangesplaceholder1> 2, <reservedrangesplaceholder0> 3), где кватернион определен, используя скалярную первую конвенцию. Аэрокосмическая Blockset™ использует кватернионы, которые заданы с помощью скалярно-первого соглашения. Для получения дополнительной информации о кватернионах см. Алгоритмы.

Ограничения

  • Ограничения для ZYX, ZXY, YXZ, YZX, XYZ, и XZY реализации генерируют угол R2, который находится между ± 90 степенями, и R1 и R3 углами, которые находятся между ± 180 степенями.

  • Ограничения для ZYZ, ZXZ, YXY, YZY, XYX, и XZX реализации генерируют угол R2, который находится между 0 и 180 степенями, и R1 и R3 углы, которые находятся между ± 180 степенями .

Порты

Вход

расширить все

Углы поворота, заданные как вектор 3 на 1, в радианах.

Типы данных: double

Выход

расширить все

Кватернион, заданный как вектор 4 на 1.

Типы данных: double

Параметры

расширить все

Порядок поворота выхода для трех углов поворота ветра.

Программное использование

Параметры блоков: rotationOrder
Тип: Вектор символов
Значения: 'ZYX' | 'ZYZ' | 'ZXY' | 'ZXZ' | 'YXZ' | 'YXY' | 'YZX' | 'YZY' | 'XYZ' | 'XYX' | 'XZY' | 'XZX'
По умолчанию: 'ZYX'

Алгоритмы

Вектор-кватернион представляет поворот вокруг единичного вектора (μx,μy,μz) через угол Сам единичный кватернион имеет единичную величину и может быть записан в следующем векторном формате:

q=[q0q1q2q3]=[cos(θ/2)sin(θ/2)μxsin(θ/2)μysin(θ/2)μz]

Альтернативное представление кватерниона как комплексного числа,

q=q0+iq1+jq2+kq3

где, в целях умножения:

i2=j2=k2=1ij=ji=kjk=kj=iki=ik=j

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

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.
Введенный в R2007b