Войти
ПрограммированиеСтатьиОбщее

Применение нетрадиционных (ненормированных) кватернионов для управления ориентацией твердого тела.

Автор: В.В. Цисарж, Р.И. Марусик

Ненормированные кватернионы
Обобщенная функция
Пример математического моделирования управления ориентацией твердого тела

Ненормированные кватернионы

Эта статья является 17-м параграфом 19-й главы книги «Математические методы компьютерной графики», авторами которой являются В.В. Цисарж и Р.И. Марусик.

В данном параграфе рассматривается вопрос использования нетрадиционных (ненормированных) кватернионов на примере решения задач пространственной ориентации твердого тела, а также устанавливается их связь с традиционными кватернионами (с параметрами Родрига-Гамильтона), которые в настоящее время широко используются в игровой индустрии, а также для решения различных задач пространственной угловой ориентации твердого тела.

Заметим, что в задачах управления пространственной ориентацией твердого тела (ТТ) широкое применение находят классические нормированные кватернионы вращения вида:

L = l0 + l,

(9.1)

где l0 - скалярная часть, l - векторная часть кватерниона L, причём l0=cos(f/2), l=lk - трехмерный вектор вращения с модулем |l|=l=sin(f/2), k - орт Эйлеровой оси конечного вращения (поворота) ТТ на угол f из диапазона 0<=f<=2p. Скалярный параметр l0 и три координаты ln (n=1,3), вектора l определяют конечное вращение или пространственную ориентацию ортов jn некоторого подвижного базиса J, связанного с ТТ, относительно некоторого опорного (неподвижного) ортонормированного координатного базиса I с ортами in и началом, совпадающим с началом базиса J. Параметры lm (m=0,3) называют преимущественно в англоязычной литературе параметрами Эйлера, а в русскоязычной  литературе - параметрами Родрига-Гамильтона. Эти параметры связаны условием нормировки

||L||=l02+l12+l22+l32=1,

(9.2)

где ||L|| - норма кватерниона L.

При этом модуль кватерниона L также равен единице, т.е. |L|=(||L||)1/2=1.

Кинематические дифференциальные уравнения для используемых в задачах ориентации ТТ собственных параметров Родрига-Гамильтона как функций времени  t могут быть представлены в скалярно - векторной записи

Изображение

(9.3)

где w=w(t) - вектор мгновенной угловой скорости вращения ТТ или базиса J, как векторная функция времени t; (lw), lxw - соответственно скалярное и векторное произведения векторов l, w; l' - локальная производная вектора l по времени t в базисе J.

Уравнения (19.3) могут быть переписаны в виде одного линейного кватернионного дифференциального уравнения

L'=1/2 (L · W),

(9.4)

где знак (·) - знак кватернионного умножения, W=W(t)=(0+w) - кватернион угловой скорости.

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

а) f=0; w=0; б) f=2p; w=0;

(9.5)

где w=|w| - модуль вектора w угловой скорости.

Следует отметить, что для решения этой задачи может быть применен прямой (второй) метод Ляпунова, использующий определенно положительные функции Ляпунова.

В ряде работ рассматриваются соответственно определенно положительные функции вида:

2V1=c [ (l02-1)2+l12+l22+l32]+(J*w · J*w), (c>0)

(9.6)

V2=(1-l02)+w · J*w=1/2[ (l02-1)2+l12+l22+l32]+w · J*w,

(9.7)

2V3=4a(1-l0)+(w · J*w), (a>0),

(9.8)

где J* - оператор инерции твердого тела.

При этом параметры lm считаются функциями времени, т.е. lm=lm(t), и в качестве дифференциальных уравнений возмущенного движения при условиях равновесия (9.5) используются кинематические уравнения (9.3) или (9.4) и динамические уравнения Эйле-ра.

Функции (9.6) - (9.8)  в этих работах называются функциями Ляпунова при соответствующем выборе управлений, но не оговаривается в пространствах каких переменных эти функции определены.

Из теории устойчивости движения известно, что любая определенно положительная функция Ляпунова V(x1, ..., xe), заданная в пространстве переменных x1, ..., xe, должна обращаться в нуль для любого момента времени t только в том случае, когда x1=...=xe=0, т.е. должно выполняться необходимое условие

V(0, ..., 0)=0

(9.9)

При этом дифференциальные уравнения возмущенного движения должны записываться в переменных x1, ..., xe.

В связи с необходимостью выполнения условия (9.9) приведенные примеры (9.6 ) - (9.8) не могут рассматриваться, строго говоря, как “кватернионные” функции Ляпунова, определенные в пространстве кватернионных параметров lm (как компонент кватерниона L или соответственно параметров lm, wn. В положениях равновесия (9.5) при l1=l2=l3=0 параметр l0 не может быть равен нулю (9.2) и, следовательно, не будет выполнено условие (9.9).

Рассмотрим далее использование новых (нетрадиционных) ненормированных кватернионов вращения, на основе компонент которых можно было бы строить кватернионные функции Ляпунова, удовлетворяющие условию (9.9) в положениях равновесия (9.5).

Для этого введем в рассмотрение обобщенный ненормированный кватернион вращения следующего вида

X=x0+x=Xf L,

(9.10)

где L - нормированный кватернион (9.1), Xf=|X| - модуль кватерниона X(|X|!=1) как произвольная скалярная функция угла  вращения, т.е.

Xf = X(f) = (x02+x12+x22+x32)1/2.

(9.11)

Здесь xn(n=1,3) - координаты произвольного вектора вращения x в базисе J.

Скаляр x0 и вектор x кватерниона (9.11) определяются соотношениями

x0(f)=x0=Xf l0, x=Xf l=xf k,

(9.12)

где xf=|x| - модуль вектора x, причем xf=Xf l.

Из этих соотношений находим модуль Xf:

Изображение

(9.13)

Тогда скалярный параметр x0 и модуль xf вектора x оказываются взаимосвязанными следующими аналитическими соотношениями:

Изображение

(9.14)

Изображение

(9.15)

Норма ||X|| кватерниона X определяется как квадрат модуля Xf:

Изображение

(9.16)

Из (9.10) следует обратное соотношение

Изображение

(9.17)

другими словами, нормированный кватернион (9.1) может быть получен из любого ненормированного кватерниона X (при Xf != 0) в результате его нормировки (деления на модуль ненормированного кватерниона).

Из выражений (9.13) - (9.15) следует, что любая из функций Xf, x0, xf может быть выбрана произвольно, а остальные две функции определяются через выбранную функцию однозначно. Следовательно, однозначно может быть определен из (9.10) конкретный ненормированный кватернион вращения.

Соотношение (9.10) совместно c (9.13) - (9.15) определяют множество новых ненормированных кватернионов вращения, принципиальное отличие которых от классических нормированных кватернионов вида (9.1) в том, что их нормы не постоянны и являются некоторыми функциями угла вращения, который, в свою очередь, может быть функцией времени t, т.е. f=f(t).

Параметр x0 и три координаты xn вектора x в базисе J будут определять множества новых кватернионных параметров xm (m=0,3) ориентации ТТ, существенно отличающихся от параметров lm Эйлера или Родрига - Гамильтона  в зависимости от выбора конкретных функций Xf, x0 или xf.

С точки зрения построения определенно положительных функций Ляпунова для задач управления ориентацией ТТ будут представлять особый интерес ненормированные кватернионы, получаемые из (9.10), с модулями, обращающимися в нуль при f=0 или f=2p (т.е. в положениях равновесия (9.5)).

Примерами таких кватернионов могут служить два ненормированных кватерниона Q и P следующего вида:

Q=q0+q=Qf L,

(9.18)

где

Изображение

Отметим, что модуль Qf кватерниона Q, модуль qf вектора q и параметр q0 обращаются в нуль при f=0, а модуль P[symbol  f] кватерниона P, модуль p[symbol  f] вектора p и параметр p0 обращаются в нуль при f=2p.

Кинематические дифференциальные уравнения для обобщенного собственного кватерниона X могут быть легко получены в скалярно - векторном виде (аналогичном виду уравнений (9.3) на основе обобщенного векторного кинематического уравнения

Изображение

(9.22)

это локальная производная вектора x=x(t) в базисе J,

Изображение

Вводя в уравнении (9.22) замену (9.14), получаем обобщенное дифференциальное уравнение для векторной части собственного кватерниона (9.10)

Изображение

(9.23)

где

Изображение

(9.24)

Обобщенное дифференциальное кинематическое уравнение для скалярного параметра x0 получаем в результате дифференцирования по времени функции (9.14)

Изображение

(9.25)

Совокупность нелинейных уравнений (9.23), (9.25) может быть представлена в виде одного обобщенного нелинейного кватернионного уравнения следующего вида

Изображение

(9.26)

где W*=w0+w, w0=2dx(x · w), W —кватернион угловой скорости в (9.4).

В частном случае, например, когда xf=l=sin(f/2), из (2.15) получаем dx=0 и из уравнений (9.23) - (9.26) следуют классические линейные уравнения (9.3) или (9.4).
Для приведенных примеров (9.18), (9.20) новых ненормированных кватернионов кинематические дифференциальные уравнения получаем, исходя из обобщенных уравнений (9.23), (9.25), соответственно в виде

a) Изображение

(9.27)

Изображение

(9.28)

где

Изображение

б) Изображение

(9.29)

Изображение

(9.30)

где

Изображение

(9.31)

Система уравнений (9.27) - (9.30) допускает, очевидно, первый интеграл с учетом (9.19) и (9.21)

Qf+Pf=½.

(9.32)

Далее, используя обобщенный ненормированный кватернион (9.10), введем в рассмотрение  кватернионную определенно положительную функцию общего вида

V(X, w)=V=Vx+Vw ,

(9.33)

где

Изображение

(9.34)

||X|| — норма (9.16) кватерниона (9.10), а слагаемое Vw определяется, например, как скалярное произведение векторов в функции (9.8).

Изображение

(9.35)

Заметим, что функция V(X,w) должна допускать так же бесконечно малый высший предел. Будем полагать, что удовлетворяется условие (9.9) для функции

Vx=V(x0, x1, x2, x3).

(9.36)

Производную по времени находим в виде:

Изображение

(9.37)

где Изображение

Далее для производной

Изображение

используем выражение

Изображение

и в результате из (9.37), получим

Изображение

(9.38)

Производную находим из (9.35) в результате дифференцирования и последующего использования известных динамических уравнений Эйлера

Изображение

(9.39)

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

Суммируя (9.38), (9.39), получаем

Изображение

(9.40)

где

Изображение

(9.41)

Далее выберем в (9.41) обобщенное представление вектора u в следующей форме:

u=Dw -a Xf X'f k

(9.42)

или, учитывая (9.12), в виде

Изображение

(9.43)

где D - симметрический оператор.

Тогда из (9.40) получаем

Изображение

(9.44)

Страницы: 1 2 3 Следующая »

#кватернионы

17 апреля 2004 (Обновление: 12 июня 2009)

Комментарии [33]