Кватернионы к углам поворота

Определите вектор вращения от кватерниона

Библиотека

Преобразования утилит/Осей

Описание

Блок Quaternions to Rotation Angles преобразовывает четырехэлементный вектор кватерниона (q 0, q 1, q 2, q 3) во вращение, описанное этими тремя углами поворота (R1, R2, R3). Блок генерирует преобразование путем сравнения элементов в матрице направляющего косинуса (DCM) как функция углов поворота. Элементы в DCM являются функциями модульного вектора кватерниона. Например, для вращения заказывают z-y-x, DCM задан как:

DCM=[потому чтоθпотому чтоψпотому чтоθsinψsinθ(sinϕsinθпотому чтоψпотому чтоϕsinψ)(sinϕsinθsinψ+потому чтоϕпотому чтоψ)sinϕпотому чтоθ(потому чтоϕsinθпотому чтоψ+sinϕsinψ)(потому чтоϕsinθsinψsinϕпотому чтоψ)потому чтоϕпотому чтоθ]

DCM, заданный модульным вектором кватерниона:

DCM=[(q02+q12q22q32)2(q1q2+q0q3)2(q1q3q0q2)2(q1q2q0q3)(q02q12+q22q32)2(q2q3+q0q1)2(q1q3+q0q2)2(q2q3q0q1)(q02q12q22+q32)]

От предыдущего уравнения можно вывести следующие отношения между элементами DCM и отдельными углами поворота для порядка вращения ZYX:

ϕ=atan(DCM(2,3),DCM(3,3))=atan(2(q2q3+q0q1),(q02q12q22+q32))θ=asin(DCM(1,3))=asin(2(q1q3q0q2))ψ=atan(DCM(1,2),DCM(1,1))=atan(2(q1q2+q0q3),(q02+q12q22q32))

где Ψ является R1, Θ является R2, и Φ является R3.

Параметры

Rotation Order

Задает выходной порядок вращения для трех углов поворота. Из списка выберите ZYX, ZYZ, ZXY, ZXZ, YXZ, YXY, YZX, YZY, XYZ, XYX, XZY или XZX. Значением по умолчанию является ZYX.

Вводы и выводы

Входной параметрТип размерностиОписание

Сначала

4 1 вектор кватернионаСодержит вектор кватерниона.
Вывод Тип размерностиОписание

Сначала

Вектор 3 на 1Содержит углы поворота, в радианах.

Предположения и ограничения

Для 'ZYX', 'ZXY', 'YXZ', 'YZX', 'XYZ' и вращений 'XZY', блок генерирует угол R2, который находится между ±pi/2 радианами, и R1 и углами R3, которые находятся между ±pi радианами.

Для 'ZYZ', 'ZXZ', 'YXY', 'YZY', 'XYX' и вращений 'XZX', блок генерирует угол R2, который находится между 0 и радианы пи, и R1 и углы R3, которые находятся между ±pi радианами. Однако в последнем случае, когда R2 0, R3 установлен в 0 радианов.

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