Quaternion Rotation

Вращайте вектор кватернионом

  • Библиотека:
  • Aerospace Blockset / Утилиты / Математические операции

  • Quaternion Rotation block

Описание

Блок Quaternion Rotation вращает вектор кватернионом. Aerospace Blockset™ использует кватернионы, которые заданы с помощью скалярного первого соглашения. Этот блок нормирует все входные параметры кватерниона. Для уравнений, используемых для кватерниона, вектор и вращаемый вектор, видят Алгоритмы.

Порты

Входной параметр

развернуть все

Кватернионы в форме [q 0, r 0..., q 1, r 1..., q 2, r 2..., q 3, r 3...] в виде кватерниона или вектора из кватернионов.

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

Вектор или вектор из векторов в форме [v 1, u 1..., v 2, u 2..., v 3, u 3...].

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

Вывод

развернуть все

Вращаемый вектор или вектор из вращаемых векторов.

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

Алгоритмы

Кватернион имеет форму

q=q0+iq1+jq2+kq3.

Вектор имеет форму

v=iv1+jv2+kv3.

Вращаемый вектор имеет форму

v=[v1v2v3]=[(12q222q32)2(q1q2+q0q3)2(q1q3q0q2)2(q1q2q0q3)(12q122q32)2(q2q3+q0q1)2(q1q3+q0q2)2(q2q3q0q1)(12q122q22)][v1v2v3]

Ссылки

[1] Стивенс, Брайан Л., Франк Л. Льюис. Управление самолетом и симуляция, второй выпуск. Хобокен, NJ: Wiley-межнаука.

[2] Diebel, Джеймс. "Представление отношения: углы Эйлера, модульные кватернионы и векторы вращения". Стэнфордский университет, Стэнфорд, Калифорния, 2006.

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

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

Представлено до R2006a