exponenta event banner

Кватернионы в матрицу направления косинуса

Преобразование кватернионного вектора в косинусную матрицу направления

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

  • Quaternions to Direction Cosine Matrix block

Описание

Блок Quaternions to Direction Cosine Matrix преобразует четырехэлементный единичный кватернионный вектор (q0, q1, q2, q3) в косинусную матрицу 3 на 3 направления (DCM). Выводимый DCM выполняет координатное преобразование вектора в инерциальных осях в вектор в осях тела. В аэрокосмической Blockset™ используются кватернионы, определенные с помощью соглашения scalar-first. Дополнительные сведения см. в разделе Алгоритмы.

Порты

Вход

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

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

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

Продукция

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

Матрица косинуса направления, возвращаемая как матрица 3 на 3.

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

Алгоритмы

Используя алгебру кватернионов, если точка P подвержена вращению, описанному кватернионом q, она изменяется на P ′, задаваемое следующим соотношением:

P′=qPqcq=q0+iq1+jq2+kq3qc=q0−iq1−jq2−kq3P=0+ix+jy+kz

Расширение P ′ и сбор членов в x, y и z дает следующее для P ′ в терминах P в формате векторного кватерниона:

P′=[0x′y′z ] = [0 (q02 + q12 q22 q32) x + 2 (q1q2 q0q3) y + 2 (q1q3 + q0q2) z2 (q0q3 + q1q2) x + (q02 q12 + q22 q32) y + 2 (q2q3 q0q1) z2 (q1q3 − q032)

Поскольку отдельные члены в P ′ являются линейными комбинациями элементов в x, y и z, матричное соотношение для поворота вектора (x, y, z) в (x, y ′, z ′) может быть извлечено из предыдущего. Эта матрица вращает вектор в инерциальных осях и, следовательно, транспонируется для генерации DCM, который выполняет преобразование координат вектора в инерциальных осях в оси тела.

DCM = [(q02 + q12 q22 q32) 2 (q1q2 + q0q3) 2 (q1q3 q0q2) 2 (q1q2 q0q3) (q02 q12 + q22 q32) 2 (q2q3 + q0q1) 2 (q1q3 + q0q2) 2 (q2q2)

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

Создание кода C/C + +
Создайте код C и C++ с помощью Simulink ® Coder™

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