Углы эйлера преобразование к

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

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

1. Поворот вокруг оси

на угол. При этом ортзаймет положение в плоскостиXY, определяемое на рисунке ортом(пунктир). Этот орт определяет линию узлов, а уголназываетсяуглом прецессии .

2. Поворот твердого тела вокруг орта(оси узлов) на угол. При этом ортзаймет положение, указанное на рисунке, а ортвыйдет из плоскостиOXY . Уголназываетсяуглом нутации .

3. Поворот вокруг орта на уголтак, что ортвыйдет из плоскостиOXY . Уголназываетсяуглом собственного вращения .

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

Первое преобразование определяется матрицей поворота вокруг орта на угол(6.12):


Поворот вокруг линии узлов, оставляющий неподвижным орт , определяется матрицей:


Последнее преобразование - поворот вокруг орта на угол- описывается матрицей, устроенной также, как и матрица:


Результирующий поворот определяется матрицей , равной произведению матриц, взятых в той последовательности, в которой выполнялись повороты:


,

или в тензорных обозначениях


.

Выполняя вычисления, получим выражение для матрицы поворота:

Для выполнения обратного преобразования достаточно взять транспонированную матрицу.

12.4. Угловая скорость твердого тела

Если рассматривать малые повороты, матрица которых близка к единичной


, где

,

то матрицу

можно считать антисимметричной:


. (10.12)

Это следует из условия ортогональности преобразования (a), которое приводит к уравнению

из которого с точностью до линейных по членов и вытекает условие (10.12).

В отличие от конечных поворотов, результат последовательных малых поворотов не зависит от порядка их выполнения. Это вытекает из того, что произведение матриц малых поворотов не зависит от порядка сомножителей с точностью до линейных членов, т. е. эти матрицы с указанной точностью коммутируют.

Как следует из (7.12), координаты точки M твердого тела, заданные относительно лабораторной системы, при малых поворотах преобразуются с помощью матрицы

:


.

Очевидно, что закон преобразования справедлив для любого вектора, заданного фиксированными координатами в системе, связанной с твердым телом, а не только для радиус-вектора какой-либо точки твердого тела.

Антисимметричный тензор

имеет лишь три отличные от нуля компоненты, поэтому ему можно сопоставить вектор, точнее псевдовектор

, компоненты которого в лабораторной системе определены соотношениями

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

а остальные компоненты тензора равны нулю.

Из этого определения вытекают следующие соотношения, полезные для приложений:


.

Используя введенный тензор, псевдовектор

можно записать как сверткуи тензора:


. (12.12)

Если твердое тело подвергается двум последовательным малым поворотам, которым сопоставлены векторы

и

соответственно, то результирующий поворот описывается суммой, которая, в соответствием с правилами сложения векторов, не зависит от порядка выполнения поворотов:

Использование тензора упрощает алгебраические операции над векторами. Так, векторное произведение двух векторовис помощью введенного тензора представляется в виде свертки


.

Соответствие между антисимметричным тензором и вектором

взаимно однозначное, так что псевдовектору

соответствует тензор


. (13.12)

Справедливость этого равенства легко доказывается прямой подстановкой, с учетом соотношения (11.12).

Учитывая приведенные выражения, запишем приращения компонент радиус-вектора точки M твердого тела, вызванные его поворотом:

или в векторной форме


.

Приведенные соотношения позволяют ввести вектор угловой скорости,


.

С помощью этого определения вектор скорости точки M твердого тела можно вычислить как векторное произведение:


(14.12)

Угловая скорость является псевдовектором, однако в классической механике принято называть эту величину вектором, так как преобразование инверсии в кинематике твердого тела не рассматривается. Формула, определяющая распределение скоростей точек произвольно движущегося твердого тела, называется формулой Эйлера. Полученная формула (14.12) является частным случаем формулы Эйлера, соответствующим движению тела с одной неподвижной точкой.

Очевидно, что соотношение (14.12) распространяется на любые векторы , проекции которых на ортыостаются постоянными при вращении твердого тела. В частности, это соотношение справедливо и для ортов, связанных с твердым телом:


. (15.12)

С помощью псевдотензора

это соотношение может быть записано в форме:


, (16.12)

где

- компоненты вектора угловой скорости в системе, связанной с твердым телом.

Отсюда легко определить компоненты вектора угловой скорости, по заданной матрице поворотов .

Действительно, если матрица поворотов зависит от времени, то ориентация ортов изменяется по отношению к лабораторной системе с течением времени по закону:


.

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

Сравнивая это выражение с (16.12), придем к соотношению:


.

Умножая его на

и проводя суммирование по повторяющимся индексамi, m с помощью соотношения (14.12), найдем явное выражение для компонент вектора угловой скорости (в системе, связанной с твердым телом)


.

Этот же результат можно получить непосредственно из соотношения ортогональности (7.12), дифференцируя его по времени:


.

Отсюда следует, что тензор

является антисимметричным:


,

что позволяет ввести вектор

, характеризующий скорость изменения ориентации ортов при движении твердого тела, путем свертки этого тензора с псевдотензором

:


,

который совпадает с вектором угловой скорости,введенным ранее.

Учитывая связь между компонентами антисимметричного тензора и псевдовектора (13.12), с помощью соотношений (14.12) можно записать выражение для скорости изменения ортов подвижной системы в виде, совпадающем с полученным ранее (+):


.

Если компоненты матрицы поворотов зависят от некторых параметров- обобщенных координат, то компоненты вектора угловой скорости

определяются выражением:


.

В частности, для углов Эйлера это дает


.

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

угловую скорость можно представить в виде суммы:


,

где слагаемые равны, соответственно,


,

,

,

а орт может быть представлен в виде:


.

Таким образом, вектор угловой скорости представляется суммой

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

Учитывая, что

, где матрица поворотов дается выражением (9.12), а

, получим явный вид компонент вектора угловой скорости:

Аналогичным образом с помощью представления (17.12)) можно вычислить и проекции вектора угловой скорости на орты лабораторной системы. В этом случае они определяются следующим образом:

Полученные выражения называются кинематическими уравнениями Эйлера.

12.5. ПОЛЕВОЙ ПОДХОД К ОПИСАНИЮ ДВИЖЕНИЯ ТВЕРДОГО ТЕЛА

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

, что физические характеристики среды с заданной точностью либо не зависят от формы, размеров и способа выделения этого объема, либо пропорциональны величине этого объема. Такой объем называется элементарным. Во втором случае вводится коэффициент пропорциональности, не зависящий от элементарного объема, называемый плотностью физической величины. Физические величины или их плотности, относящиеся к данному элементарному объему, зависят лишь от положения точки наблюдения и образуют поля физических величин.

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


.

Если движущаяся среда является твердым телом, то для любых двух ее точек, принадлежащих элементарным объемам

и

, для любогоt справедливо равенство (1.12).

Будем считать поле скоростей дифференцируемой функцией своих аргументов. В линейном по

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


.

Выполнение этого условия для любых

возможно в двух случаях.

1. Вектор скорости не зависит от координат:


.

В этом случае все точки твердого тела движутся с одинаковыми скоростями. Такое движение называется поступательным.

2. Движение не является поступательным.

Поскольку тензор

является симметричным, то в этом случае тензор

является антисимметричным для любой точки сплошной среды, то есть:


.

Сопоставим антисимметричному тензору псевдовектор, образующий векторное поле:


или в векторных обозначениях


.

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


.

Но тензор

является антисимметричным в любой точке:


, (20.12)

что удобно представить в явной форме:


.

Выполняя дифференцирование этого тензора с учетом условия (20.12) получим:

Отсюда следует, что вектор скорости может быть только линейной функцией координат:


.

Учитывая, что

, этому соотношению можно придать следующий вид:


.

Векторная форма этого соотношения


известна как формула Эйлера , частный случай которой был получен нами ранее (14.12). Таким образом, введенный нами вектор

является вектором угловой скорости, введенным ранее.

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


,

то вектор

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

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

Если при произвольном движении твердого тела известны скорость

и его угловая скорость

, то для случая

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


.

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

Углы Эйлера описывают поворот объекта в трёхмерном евклидовом пространстве. При этом рассматриваются две прямоугольные системы координат, имеющие общий центр: неподвижная система и подвижная, связанная с объектом. На рис.1 неподвижная система координат имеет обозначение XYZ (она наклонена), а подвижная система обозначена как xyz. Углы Эйлера представляют собой углы, на которые поворачивается подвижная система координат, связанная с объектом, до совмещения с неподвижной системой. В классическом варианте первый поворот происходит на угол α вокруг оси z, связанной с объектом, до тех пор, пока не произойдет совпадение оси x, связанной с объектом, c плоскостью XY неподвижной системы. Такое совпадение произойдет по линии пересечения плоскостей XY и xy (линия N на рис. 1). Следующий поворот осуществляется на угол β вокруг нового положения оси x, связанной с объектом, до тех пор, пока не совместятся оси аппликат обеих прямоугольных систем. При этом ось y, связанная с объектом, окажется в плоскости xy неподвижной системы координат XYZ. Последний поворот производится на угол γ вокруг нового положения оси аппликат подвижной системы координат (она будет совпадать с такой же осью неподвижной системы), после чего оси координат XY и xy совместятся.

Рис. 1. Углы Эйлера

Такие повороты некоммутативны, и конечное положение подвижной системы координат зависит от порядка, в котором совершаются повороты.

Если известны координаты вектора R(r x , r y , r z) в подвижной системе координат XYZ и известны углы Эйлера (α, β, γ) подвижной системы координат xyz относительно неподвижной, то можно вычислить координаты этого вектора в неподвижной системе координат xyz. Для этого следует построить матрицы трех последовательных поворотов на углы α, β и γ:

Перемножая эти матрицы в обратном порядке, получим итоговую ортогональную матрицу:

T = T 3 × T 2 × T 1 ,

которая преобразует координаты вектора R(r x , r y , r z) подвижной системы координат в координаты вектора N(n x , n y , n z) такой же длины в неподвижной системе координат:

N = R ,

где N и R - матрицы-столбцы соответствующих координат.

Углы Эйлера являются наиболее естественными и понятными при выполнении различных операций вращения объектов, поскольку они соответствуют вращениям объекта, наблюдаемым в видовых окнах трехмерных графических систем. Однако их использование в системах компьютерной анимации сталкивается с рядом трудностей. Прежде всего, это необходимость выбора определенной последовательности поворотов объекта относительно осей системы координат. Если повернуть объект сначала вокруг оси X, затем вокруг оси Y и, наконец, вокруг оси Z, то это будет совсем не тот поворот, если бы повернуть этот объект на те же углы, но в другой последовательности.

Рассмотрим другой пример - создание анимации кубика при повороте его вокруг оси Z мировой системы координат на угол, превышающий 360°, например на угол 450°. Попробуем создать два ключевых кадра, между которыми кубик должен повернуться на этот угол. Для этого в программе MaxScript создайте стандартный параллелепипед:

b = box ()

После этого переместите ползунок временной шкалы анимации к кадру 10, включите режим Auto Key, а затем выполните команду:

b. rotation. z_ rotation = 450

Воспроизведите анимацию. Объект повернется только на 90°, поскольку его оборот на 360° будет игнорирован. Теперь то же самое проделайте в окне программы 3ds Max. Анимация объекта между двумя ключевыми кадрами произойдет на угол 450°. Таким образом, применение эйлеровых вращений в программах компьютерной графики, аналогичных MaxScript, ограничивается одновременным вращением на угол, не превышающий 360°. Однако это не мешает создавать анимацию вручную за экраном дисплея.

Другая проблема углов Эйлера заключается в наличии Gimbal lock, или шарнирного замка. Его появление зависит от выбора порядка поворотов объекта. Например, повернем объект вначале вокруг оси Z на угол 140°, затем вокруг оси X на угол 90°, а потом на угол 130° вокруг оси Y (рис. 2).


Рис. 2. Последовательные повороты объекта

Если теперь заново выполнить ту же последовательность поворотов, например, на углы 10° вокруг оси Z, затем на 90° вокруг оси X, а потом на 0° вокруг оси Y, то получим тот же результат. Проблема заключается в том, что когда вращение вокруг оси X становится равным 90° или -90°, то локальная ось вращения Y становится параллельной оси Z, но с обратным направлением, и поэтому вращение вокруг нее вступает в конфликт с предыдущим вращением вокруг оси Z.

Шарнирный замок отсутствует у матриц и кватернионов. Кватернионы предоставляют удобное математическое обозначение положения и вращения объектов в пространстве. В сравнении с углами Эйлера, кватернионы позволяют проще комбинировать вращения, а также избежать проблемы, связанной с невозможностью поворота вокруг оси, независимо от совершённого вращения по другим осям. В сравнении с матрицами они обладают большей вычислительной устойчивостью и могут быть более эффективными. Кватернионы используют для выполнения вращений в компьютерной графике , робототехнике , игровых движках, навигации, молекулярной динамике и вообще везде, где возникают проблемы с углами Эйлера или матрицами.

Литература

  1. Углы Эйлера и Gimbal lock [Электронный ресурс] / http://habrahabr.ru – Хабрахабр, 2006. – Режим доступа: http://habrahabr.ru/post/183116/. – Дата доступа: 10.10.2013.
  2. Кватернионы и вращение пространства [Электронный ресурс] / http://ru.wikipedia.org/ – Википедия - свободная энциклопедия, 2001. – Режим доступа: http://ru.wikipedia.org/wiki/ Кватернионы_и_вращение_пространства. – Дата доступа: 11.10.2013.

Рассмотрим две системы координат с общим началом в неподвижной точке О, неподвижную в пространстве («латинскую») систему x, у, z и жестко связанную с телом и движущуюся вместе с ним («греческую») систему . Тело с неподвижной точкой, как уже указывалось выше, имеет три степени свободы, и поэтому для того, чтобы определить его положение в пространстве, надо задать три обобщенные координаты.

Проведем через оси плоскость P до пересечения с плоскостью (рис. V.7). Линия, по которой эта плоскость P пересекает плоскость , обозначается N и называется линией узлов. Угол между осью и линией узлов обозначается буквой , и называется углом прецессии.

Задание угла полностью определяет положение линии узлов в пространстве, однако вся плоскость P может поворачиваться относительно линии узлов без изменения угла и, кроме того, система может вращаться относительно оси также без изменения этого угла. Чтобы фиксировать положение в плоскости P осей и греческой системы, введем в плоскости P угол между линией узлов и осью . Этот угол называется углом собственного (или чистого) вращения.

Теперь, когда углы фиксированы, у тела остается лишь одна степень свободы: не меняя этих углов, можно повернуть тело вокруг линии узлов. Чтобы фиксировать и этот поворот, введем в рассмотрение еще один угол 8 между осью z и осью . Этот угол называется углом нутации. Задание трех углов и полностью определяет положение греческой системы относительно латинской, т. е. полностью определяет положение тела. Вместе с тем эти три угла независимы в том смысле, что каждый из них можно менять без изменения двух остальных углов. Поэтому углы могут служить обобщенными координатами тела с неподвижной точкой О. Углы называются эйлеровыми углами.

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

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

Угловые скорости изображаются векторами, направленными перпендикулярно плоскостям, в которых расположены соответствующие углы. Поэтому угловая скорость направлена перпендикулярно плоскости P, т. е. по оси ; угловая скорость - перпендикулярно плоскости , т. е. по оси z; и наконец, угловая скорость 0 направлена перпендикулярно плоскости, проходящей через оси и z, т. е. вдоль линии узлов (рис. V.8). В связи с тем, что эйлеровы углы независимы, угловые скорости представляют собой систему трех независимых угловых скоростей, пересекающихся в одной точке О. на оси, связанные с телом, и эйлеровыми углами, спроектируем поочередно равенства (52) на эти оси. - через эйлеровы углы и их производные.

Если эйлеровы углы известны как функции времени, то равенства (53) позволяют немедленно определить, как меняются во времени p, q и r. Если же, наоборот, известно, как меняются во времени p, q, r, то равенства (53) представляют собой систему дифференциальных уравнений относительно эйлеровых углов . Поэтому если мы получим уравнения, описывающие изменение во времени вспомогательных переменных p, q, r, то такие уравнения совместно с уравнениями (53) полностью Опишут изменение во времени эйлеровых углов. Именно вывод таких уравнений и составляет цель следующего параграфа.



Просмотров