Lie algebras, modules, dual quaternions and algebraic methods in kinematics

Lie algebras, modules, dual quaternions and algebraic methods in kinematics

Mech. Moch. T I ~ . . Vol. 26, No. 6. pp. 613--627. 1991 0094-114X,91 $3.00+0.00 Copyrii;ht .l~ 1991 l ) e r p m o n ~ pk Pnnted in Great Bnuun. All...

826KB Sizes 0 Downloads 108 Views

Mech. Moch. T I ~ . . Vol. 26, No. 6. pp. 613--627. 1991

0094-114X,91 $3.00+0.00 Copyrii;ht .l~ 1991 l ) e r p m o n ~ pk

Pnnted in Great Bnuun. All rights r~m-ved

LIE ALGEBRAS. MODULES, DUAL QUATERNIONS AND ALGEBRAIC METHODS IN KINEMATICS D. P. C H E V A L L I E R Laboratoir¢ de Math~matiqueset Mod~lisation ENPC. 28 Rue des Saints-Peres. 75007 Paris. France (Receired I I June 1990: received for publication 9 Norember 1990)

AbstracI--A systematiccoordinate-free exposition of the diffe~t algebraic operations in the set of infinitesimaldisplacements(screws) and their relations with finite displacementsis developed. Six basic operations 8enerate several al~braic structures, in particular Lie algebra and module over the dual number ring endowed with a dual valued inner product. An extensionof Veldkamp'stheorem (different from the one proposed by Prakash A&,rawai)and an intrinsicnew definitionof dual quatcrnionsare given. The followingexamplesshow the efficiencyof algebraic methodsin the deductionof basic I~-'sullsby very short proofs. I. I N T R O D U C T I O N Kinematics and dynamics of interconnected rigid bodies systems may lead to very complex computations and it is important to perform these computations in the most compact form and to search for their most rational organization. This target motivates a great deal of research on the fundamental operations and the algebraic structures lying behind kinematic methods. in this research two opposite approaches may be distinguished: the purely geometrical methods (linear complex and so on [I]) and the matrix methods operating on coordinates. Of course, intermediate methods exist. Since the publication of the basic papers [3, 4] many investigations have made use of dual numbers, dual numbers matrix and dual quatcrnions in kinematics of multi-rigid-body chains (see for example Refs [5-7], including basic expositions, of Refs [8-1 l] including applications to spatial mechanisms and industrial manipulators). The pure geometry contains the essential feature of kinematics [2, i] but it requires a great skill and it is not really efficient in dynamics for the determination of accelerations. On the other hand, matrix algebra, though of simple use, is somewhat blind and often leads to inextricable formulae. Coordinate-free methods, based on intrinsical computations in groups or Lie algebras have been introduced in Refs [13, 14, 18, 19], for the purpose of mechanisms theory, and of dynamics of multibody systems [I 5, 17, 20]. They integrate the efficiency of algebra and of synthetic geometry (at least for a great part), and escape the heaviness of coordinate computations. Indeed a more complete conceptual analysis is then unavoidable: all kinematics are not reduced to obvious properties of matrix algebra. Note that computers now easily operate on abstract objects such as vectors operators or members of a group, every formula being always directly translatable into coordinate representation if necessary (but only when it is!). The main objective of this article is to develop a unified algebraic approach to mathematical methods in kinematics, including a complete system of basic operations and computation laws. This system synthesizes the essential contributions of linear algebra, screw theory, dual numbers method and Lie groups to the subject (but, except for one simple formula about the exponential map, the article makes no use of general Lie groups theory). Being quite coordinate-free, this algebraic point of view is easily translatable into geometric language and also provides a great number of the advantages of pure geometry, 2. BASIC ALGEBRAIC S T R U C T U R E S

ON THE SET 9

OF S C R E W S

2. l. Some mathematical preliminaries In the following, ~' denotes the tridimentional affine Euclidean sp_spaceand E the underlying vector space; to every pair (M, N) of points in g is associated a vector M N in E so that Chasles" relation MMT 2(, ¢)--F

613

614

D . P . C~VALLtr~

holds. E is an Euclidean oriented vector space and x .y. x x y. denote scalar product and vector product in E. We now note some basic facts about geometrical transformations. A linear operator f : E - . E is said to be orthogonal if it preserves the scalar product ( f ( x ) . f ( y ) = x .y. for every x, y in E). Orthogonal operators make a group O(E). the orthogonal group of E with composition o f maps as internal law, among which the orientation-preserving operators ( D e t ( f ) = + I) make a subgroup SO(E). the special orthogonal group. A map A : 8 - - . 8 is said to be affine if there exists a linear operator A:E--*E such that A ( M ) A ( N ~ = A(M3[) for all pair o f points in ,d'. A is called the linear part of A (and is denoted in the following by the same letter in boldface). An isometry is a distance-preserving map A :~r-,~[d(A(M). A ( N J ) = d ( M , N). for every M. N in 6']. A fundamental result in Euclidean geometry says that A : d'--.8 is an isometry ~. A is an afline map and A ~ O(E). A displacement is an orientation preserving isometry A, i.e A ~ SO(E). Isometries and displacements are bijections and make a group [ and a normal subgroup D of i (the group operation is the composition of maps denoted b.v o and the identity 8 is the identical map in 81.

2.2. Operations on screws (I) Vector space f/. It is well-known that to every screw is associated a vector field X : ,$'---,E with the property (helicoidal field) X(M) = X(N) + cox x M-"~. All these fields make a real vector space ~ for natural operations, i.e. ¿X + Y)(M) = X(M) + Y(M),

(~tX)(M) = ~xX(M).

and the map X ,,,-.m x is linear. Here we are concerned with four other operations: Lie bracket, inner product, representation of the group D in ~ and operation ft. (11) Lie bracket in ~. For X and Y in ~ , define U : g--.E through U(M) = cox × Y ( M ) - c o y x X(M). Then it is easy to show that U ~ .~ and cotj = cox x cov . The Lie brai'ket of X and Y is this field U and is denoted by [X, Y]. Obviously OJlX.¥1 = COX × COY'

( 1)

(X. Y) ,,'-, IX. Y] is a skewsymmetric bilinear map from c2 x ~ to ~.

(2)

Some algebra leads to the formula (Jacobi identity) [X. IV. ZI] + IV, [Z. Xl] + [Z. IX, V]] -- O,

(3)

which means that ~ , endowed with its real vector space structure and the Lie bracket, is a Lie algebra over the real number field R. ( l i d Inner product in ~. For X and ¥ in ~ , define the real number:

[X I Y] = oJx" Y ( M ) + toy- X ( M ) .

(4)

It is well-known that the choice of M has no influence on the value of the second member. The map iX. Y) ~ [X I ¥] is a symmetric nondegenerate bilinear form over ~ which will be called inner product here. The relation [X I Y ] - - 0 means that X and Y are reciprocal screws. (IV) Representation of D in ~. Let A e D. Then A may transform every screw field X into another one A . X which is defined by

A , X(M) = A(X(A -'(M))).

(5)

Algebraic methods in kinematics

615

Thus D operates D on the left, that is to say A . is a linear operator in 9 and for every A, B ~ D:. (A • B ) , = A , o B , .

and ~, = 1 (identity operator in 9 ) .

(6)

CO~.x = A(cox).

(7)

Moreover

( V ) Operation fi. For X in ~ , define the constant field fiX such that

fiX(M) = COx, for all

M ¢ 8.

(8)

Then fi is a linear operator in 9 . The range and the kernel o f fi is the subspace o f constant vector fields over 8, therefore fi o fi = fiz __ O.

(9)

The space 9 is (isomorphic to) the Lie algebra of the Lie group D and the existence of the operations (I) (II) (IV) also follows from the general theory o f Lie groups [in particular operation (IV) is the adjoint representation o f D and A , is denoted Ad A in this theory]. On the contrary, the existence of operations (III) and (V) is a specific feature o f Euclidean displacements, and here lies the main reason for all properties o f screws, dual numbers occurrence and so on in kinematics. There exists a great number of relations between these operations. The most important ones are selected here for the use in the next sections. First:

[xI[Y. zII=[YI[Z. Xl]

(lO)

[x, [Y, Zl] ffiIX IZlfiY - [x Iv]fiz + wx coz Y - COx. COy z,

( I I)

which appears as extensions of mixed product and iterated vector product of ordinary vectors. Moreover. Jacobi identity easily follows from the last formula. [fiX I Y] = [X IfiY] = COx"coy,

(12)

[fix, Vl = [x. fiVl = nix, v].

(13)

The representation o f D into 9 satisfies

[A,XI A,YI--[XI Y],

(14)

[A,X. A,Y] = A,[X. ¥1.

(15)

A . f i X = fiA ,X.

(16)

The first relation means that A , is an orthogonal operator in the pseudo-Euclidean space 9 (endowed with [. I -]), the second means that A . is a Lie algebra homomorphism, and the third that it commutes with fi. All the kinematics and the dynamics o f rigid bodies and interconnected multibody systems may be expressed only with the operations (I)-(V), in a coordinate free expression and without an a priori splitting into translations and rotations (see Ref. [15]). 2 3 . Dual numbers and module structure over 9

Dual numbers are "numbers" expressed by : -- x + £ y with x and y in R. and ~ satisfies ~z --0. They make an Abelian ring (see Ref. [4]) with unity and divisors of zero, denoted by A; in an obvious meaning R is a subring o f A. We recall also that a module over an Abelian ring with unity, say A, is a set M endowed with an Abelian group operation ( + ) and an external law (2, x ) ~'- 2x, with 2 ¢ A and x ¢ M. The axioms of a A-module are similar to those o f a vector space, except scalars are selected in a ring A and not in a field (see Ref. [221).

616

D, P. CHE~ALLIER

Theorem 1 The space ~ has a natural A-module structure which is an extension of its real vector space structure and ~ is also a Lie algebra over A, i.e.

[ : x , Y] = IX, :Yl = :IX, Y]. (: s A, x. ¥ s ~ .

(17)

To prove the theorem, take the Abelian group structure (and the Lie bracket) of the previous section, and put :X--xX+yfZX,

for

:=x+~v~A.

(18)

Straightforward computations and equation (9) lead to the properties of the external law of a A-module. The last part of the theorem follows from formula (13). When : is in R, (i.e. y = 0). : X is just the product o f a real number and X as in the vector space ~ , but the two structures are very different. If : is in A:

:X--0o(:--0)

or

(X=0)

or

(Rez=0and~X--0).

A careful distinction has to be made between two different kinds of linear operators in ~: A-linear operators for which the relation f ( z X ) = :f(X) holds with : in A and R-linear operators for which the relation holds only when : is in R. Only the first ones may be described by 3 x 3 dual number matrix. f is A-linear ~ f

is R-linear and fZ f = I , t'l.

In kinematics, all usual operators are A-linear, but in dynamics the "inertia binor'" is not (see Ref. [9]). This is a basic formal difficulty which appears in the computation of momentum where momentum and velocities cannot be expressed by three dual numbers matrix. A A-module is always also a real vector space if the scalar ring is reduced to R but the two structures must not be confused. In the opposite direction, a standard algebraic process (extension of scalar ring), starting from a real vector space E, leads to a A-module I~ such that E is a real vector subspace o f g, and g = E ~ E. (direct sum o f real vector subspaces), in E, the product : x o f a dual number and a vector is well-defined and in particular ( E is the set o f vectors ~x with x in E. If (e,,e,,e~) is a basis in E, as a subset o f g, it is also a basis o f g over A, that is to say: every k in R expresses as k = .~let + .~?:e: + .~e.~ where the .~,, i = I, 2, 3, are uniquely defined dual numbers. Thus a vector in !~ may be thought of as a vector with dual coordinates and called a dual vector. Scalar and vector products of ordinary vectors extend in a natural way from E to E and provide A-bilinear operations in [ . If (el, e,, e~) is a righthand orthonormai basis in E, then (19)

i ".~ = .f,), + .f:): + .f~)3(~A). .f x .~ = (-¢2)3 - -¢3)~:)e, + (-~3), - .¢,)~)e: + (-'h)2 - -¢,.vl )e~.

(20)

Endowed with its A-module structure and this extended vector product, E is a Lie algebra over A. Every linear operators f in E extends to a A-linear operator.]' in I~ which is defined by

f(¢x)--~f(x),

for

x in E.

(21)

The next theorem relates the geometrical aspect o f screws, or of screw-fields, to the dual vectors often used to describe screws and compute with them.

Theorem 2 For fixed P in d' let be J r the map from ~ to l~ which sends X to Jp(X) = cox + ~X(P). Then J r is A-linear and is an isomorphism o f Lie algebras over A. In particular J r is one-one and onto and: J,([X. V]) = JAX) x J,(Y).

(22)

Algebraic methods in kinematics

617

J , tX) • J , tY) = tax" tar + ~[Xl Y].

(23)

Moreover

To prove this we first have to show that Je(X + Y) = Je(X) + Je(Y),

/e(zX) = :Je(X),

for

zeA.

The first relation is obvious and if : = x + ~y with x and y real: :X = xX + yt'lX

and

Jp(:X) = Xtax + ¢(xX(P) +)'tax)-

On the other hand :Je(X) = (x + ey)(flX + *X(P)) = Xtax + ¢(xX(P) + Ytax). Therefore both relations hold. Moreover, for the extended vector product in ~: (ta x + iX(P)) x (tar + t:Y(P)) = tax x tar + c(tax x Y(P) - tar x X(P)), and this is simply an expression of equation (22). Relation (23) is derived the same way. Lastly it is obvious that Jr is one-one and onto. Formula (23) has an interesting meaning. Put {XlV}=tax'tav+t[XIY],

for

Xand Yin~.

(24)

Then, as shown by a straightforward computation, {. I.} is a symmetrical A-bilinear form, with values in A. over ~. In particular {:XI Y} = .-{X [ Y}, for - in A.

Corollary I Jr is an isomorphism of inner-product space from rj with {. ] .} to I~ with the extended scalar product: Jr(X)" Je(Y) = {X [ YI. Hereafter we shall use formulae

{x I [v, Zl} = {v I [z, xl}, [x, iv, Zl] = { x l z } v - { x l v } z ,

(25) (26)

the first follows from equation (10) and implies that the A-trilinear form appearing in both members is skewsymmetric, the second is another expression of equation (I l) and a very compact expression of a somewhat heavy computation. The A-valued inner product {. I.} is often more interesting than [. I.] (which, contrary to the Lie bracket, does not extends into a A-bilinear operation in 9). For example if X and Y are screw-fields with fiX, f l y # 0: {X I Y} = 0,t* (X and Y have secant orthogonal axes). It is easy to find the similar properties when the axis does not exist. {X I X} = 0 ~ . (eX = 0) ~ (tax = 0),

(27)

{X I X} = I ~ (Itaxl = ! and X has zero pitch).

A straight line in 8 is exactly defined by a normalized X or its opposite. In the A-module ~ , there exists an orthonormal (righthand) basis (~, q, ~). As a consequence of the previous properties, we can show that they are all built as follows: (O; i,j, k) is an orthonormal (righthand) frame in 8 and {, 'l. ~ 6 ~ . are defined by ta¢, ta~. tac = i,j, k and ~(O) = tl(O) = C(O) -- 0.

(28)

618

D. P. CHI~ALLIER

Then {¢l¢}:{qlq}={~l¢~'=l, [¢, q] = ;.

[rl, ~] = ¢,

3. O R T H O G O N A L

{¢lr/}--{~J¢}={q[~}=0

[~, ¢] = q,

{¢ I[q,~]} = !

(orthonormality).

(in the righthand case).

O P E R A T O R S IN ~ AND T H E I R R E L A T I O N S WITH FINITE DISPLACEMENTS

3. I. An extension o f Veldkamp's theorem The next important properties are obvious consequences of equations (16), (7) and (14): for every isometry, in particular for every displacement A, every X and Y in A , is A-linear and { A , X [ A . Y } = {XJ Y}. Thus, through their representations in 9 , isometrics provide orthogonal operators, with respect to the inner product {. I.} in 9 . There exists a converse, which may appear as an extension of Veldkamp's theorem established about matrices (see Rcfs [4, 7]) and points out the geometrical aspects and the relations with the new algebraical structures introduced here above. Theorem 3 Let 4~ be a map £~---~. The following properties are equivalent: (a) 4~ is A-linear and preserves {. I.} (i.e.{4~(X) 14~(Y)} = {X[ Y}); (b) there exists an isometry A of 3' such that A , = 4~ (i.c 4~(X) = A . X). Likewise d is uniquely defined and a necessary and sufficient condition for A lies in D is that Det(4~) = I, or, in other words, that 4~ also preserves the trilincar form {X [[Y. Z]}. Lemma I Orthogonal operators in the A-module ~ are operators:

with A in SO(E), u in E and t/- : x ,~- u x x (extended vector product). The Lemma expresses orthogonal operators as extensions of R-linear operators over E. Notice that the two sets of operators defined in the Lemma are actually identical according to A~o (I + ~ d ' ) = (I + ~ i - ) o A~, i f f v = A ( u ) . E x p r c s s f a s f ( : ) : A(:) + ~B(:) with R-linear operators A and B. lffpreservcs the inner product in [ , for x, y in the R-vector subspace E of i~: f ( x ) " f ( y ) = A(x)" A(y) + ¢[A(x) • B(y) + A ( y ) . B(x)] : x "y. Since, for this choice of x and y, the first term, the term in the bracket, and the last member are real numbers, it follows that A ( x ) . A ( y ) = x . y,

A(x)'B(y)+A(y)'B(x)=0,

for all x and y in E. Thus A is in O(E), A - 'B is a skewsymmetrical operator, and by a well-known result, A-IB = d for some vector tt. T h e r e f o r e / a n d ,47, (I + c d ' ) agree on E and, as they are both A-linear operators, they also agree on [. Conversely, an easy computation shows that all the operators f - - / 7 o (! + eti-) preserve the extended inner product in [~. This computation can be simplified if we observe that a A-linear operator in ~ preserves the extended inner product if and only if it preserves the inner product in E (because [ is generated by A-linear combinations of vectors in E). Now. let A be an isometry on 8, for O in E and X in cj.

Algebraic methods in kinematics

619

A , X ( O ) -- A(X(A -'(O))) = A(X(O) + cox × ~ ) ) : A(X(O)) + v × A(cox)

with

v -

OA(O')

and applying the definition o f Jo to A . X . we get

Jo(A , X )

= A(cox) + {[A(X(O)) + ~, × A(e,x)],

Jo(a ,X) = (t + ~ ' ) , :i(Jo(X)), 0' -- OA(O')).

(29)

If 4~ : ~ ,~ ~ has property (a), the composed map f = Jo ° ¢P ° J o ' is A-linear and preserves the inner product in [ [see equation (23)]. Then. following from the lemma, there exists A in O(E) and v in E such f ( : ) : (I + ci ")(=).

(30)

However, there exists one and only one isometry A with linear part A and such O A (-'d)= v and then. by equations (29) and (30), / ( J o x) = (t + ~ - ) o ~(JoX) =

Jo(A , x ) .

This last relation means that 4~ = J o ' ° f ° Jo = A , , and proves that (a) implies (b). The converse is already known. Computation in a righthand orthonormal basis o f E gives Det(I + r , i ' ) = I. Therefore Det0P) = D e t ( f ) = Det((I + ~i "),, ,~) = Det(~) = Det(A). So Det(4~) = + I in all cases and Det(O) = I when ,P = A . with A in D. Moreover, a standard result about skewsymmetric forms says that {4~(X)I[O(Y), O(Z])} = Det(4~){X I [Y, Z]}, thus pre~rvcs the trilinear form or reverses its sign according to A as in D or not. 3.Z Representathm o f spatial displacements

The Olindes-Rodrigues formula, which describes rotations acting on vectors through their angle and the normalized vector of the axis, has a remarkable extension to spatial displacements. However, in this extension, displacements operate screws and not points in 8, in other words, it is a picture of thc group D acting on its Lie algebra ~ . Despite a sophisticated appearance, this picture o f D is exactly what is needed for kinematics and dynamics of rigid body systems because only adjoint representation o f D appears in fact in their dynamic equations (see Ref. [15]). We recall that if 0 and 6 are real numbers and "` : 0 + ~6 a dual angle, the basic definition of circular functions are: sin "` : sin 0 + E,~ cos 0,

cos "` = cos 0 - ~6 sin 0.

Theorem 4

Let A be an oriented axis, defined as the axis o f the unitary screw v in ~ with co. -- i, tit = ! (and {v I v} = !). Let A -- Tr(6i) o RA(O) a displacement expressed as a rotation around A with angle 0 followed by a translation 6 along A (the order being unimportant). Then, for every X in ~: A . X = X + sin ~,[v, X] + (I - cos "`)[v, [v, X]].

(31)

Or, in operator language: d.=

! + s i n ' , a d v + ( i - cos'`)(ad v)",

(32)

where ad v is the operator X ,~, [v, X] ffi ad v • X. Let us complete v in a righthand orthonormal basis (~ ffi v, q, C) of the A-module ~ as in condition (28). Both members of equation (32) being A-linear operators in ~ , if Fdenotes the right one. relations (31) and (32) will be proved if relations A.~=F(~),

A.q--F(¢),

A.C=F(~),

(33)

020

D.P.

CHL~ALLIER

hold (the key to the proof is the tridimensional A-module structure and the A-linearity). Put T = Tr(Si). S = R~(0). then A , = T , S , = S , T , and T,~=~.

T,q=~+¢5~.

T,~=~-E6q.

S,~=¢.

S,q=cosO~+sin0~.

(34)

S,~=-sin0~+cos0~.

(35)

For example T . ~ ( M ) = ~(M - 6 0 = C(M) - 6k x i = ~(M) - (¢6q)(M), ¢

S , ~ ( M ) = S ~ ( S - ' ( M ) ) = S(k × O S - ' ( M ) )

= ( - s i n 0j + cos 0k) x O/14 = ( - s i n 0q + cos O 0 ( M ) . To prove, for example, the second relation (33). we have. on the one hand A , q = T , ( S , q ) = cos 0(q + ¢6£) + sin 0(~ - ¢6q) = cos aq + sin :cO.

and. on the other hand. according to [¢. q] = ~. [¢. ~] = - q : F(q) = q + sin aC - ( i - cos :~)q = cos ¢xq + sin :~. The relation is proved and the others are derived the same way. 3.3. Remarks about the exponential map

A Lie group and its Lie algebra are related through the exponential map exp : ~ - - , D (see Refs [14, 20, 21]). Intuitively exp U is the resulting displacement after one unit o f time of a flow in 8 with velocity field U, i.e. exp U(M) = P ( l ) where P ( t ) is the solution o f the differential equation /~(t) = U(P(t)) with initial condition P(0) = M. A classical result in Lie groups theory asserts that A.X=exp(adU)X,

if

A =expU, U~,

where ad U is the operator X ~ [U, X] = ad U . X and exp(ad U) is its exponential defined as usual. Here we prove that, if U is in 2 , (I + a d U). X, (I + sin • ad v + (! - cos g)(ad v)z) • X.

exp(ad U)X =

if if

Re{U[ U} = 0, Re{UI U} # 0,

(36)

where ~, in A and v in ~ are defined by U = :cv and {v I v} = !. We have v = ~,- ' U and g is one o f the square roots of {U[ U}. Using formula (26) and the A-linearity o f ad U we obtain (adU) 2 . X = { U I X } U - { U I U } X ,

(adU) ~.X---{UIU}adU-X,

and an easy recursive proof shows that

{

(adU) ~' = ( - I ) e - ~ { U l U } e - I ( a d U ) z, p ~ > l , (ad U) :~÷ ' --- ( - ly'{U I U}P(ad U), p t> 0.

Now, applying the definition of exp(ad U) by a series and splitting the sum into odd and even terms leads to the result (if Re{U [ U} = 0, (ad U) z = 0). Remark. According to formula (36). the previous theorem proves that A . -- exp(ad ",~), without making use o f the general Lie groups theory. Remark. Over the real number field, the minimal polynomial of ad U has degree five [and is x ( x Z + oJ~)2], but over the dual number ring it has only degree three (and is, as we have shown, x 3 + {UI U}x).

Algebraicmethods in Idntmmties

621

Remark. Another important formula about exponential map is exp(,~ ad(B.v))=B,

expOt a d w ) B ;

I, ~teA, B s D , v e g .

(37)

which m a y be deduced from exp(B.U) ffi8 o exp U o B -t of the general Lie groups theory or directly proved from the definition and equation (15).

3.4. The inverse problem and its solution Now, let • be a given operator satisfying condition (b) o f Theorem 3. We develop an effective algorithm to construct v and ~t such that

-- I + sin ~t ad v + (! - cos ~t)(ad v)z.J

(38)

According to Theorems 3 and 4, v and • exist and this means that • = A . with A = Tr(ri) o R,1(0); thus we solve the problem o f finding the axis and the dual angle of a given displacement defined through its action on the space ~ (i.e on the screws). First let us recall some useful properties. If F is a A-linear operator in ~ , there exists a uniquely defined A-linear operator F* (adjoint to F) such that {F(X) I Y} = {X I F*(Y)},

for every X, Y e ~ .

If F = F* (F = - F * ) , F is said to be symmetric (skewsymmetric). Every operator has uniquely defined symmetric and skewsymmetric part F÷ and F_ such that F -- F+ + F_,

(F. -- I/2(F + F*), F_ = I/2(F - F*)).

in an orthonormal basis (~, q, ~) of the module ~ : MatrixIF*l = 'Matrix[F], and the operator F is symmetric or skewsymmetric according to its matrix (with respect to an orthonormal basis) is. If v ~ ~ , then, following from formula (26): ad v is skewsymmetric, Trace(ad v) = 0, (ad v)2 is symmetric, Trace(ad v)2 = _ 2 {v I v }, where the trace is defined as usual. With respect to the basis (~, ~, C):

Matrix[ad vl --

c -b

0

-

if v = a~ + b~ + cO, a, b, c E A.

(39)

a

This formula clearly shows that, conversely, if F is a skewsymmetric operator in ~, there exists a uniquely defined v in ~ such that ad v ---F. which is easily built from Matrix[F] (these properties are similar to those of an Euclidean vector space, but properties of a module m a y be very different from those of a vector space). The main formulae for our task are then [conditions (38)]: I Trace(O) -- I + 2 cos • -- I + 2 cos 0 - 2 ~ sin 0, ~i -- sin', ad, = (sin 0 + ~6 cos 0)ad,, -- I + (I - cos ~)(ad v)z, ~< Re(Trace(O)) ---r ~< 3.

(4o)

When 4~ is known, the first two relations generally give ~ and v up to the algebraic sign, but the difficulty lies in the occurrence of singular cases when sin a -- O, i.e. ~ -- - I or 3.

6 ~.._

D

P CHEV*.LLIER

(I) If - 1 < r < 3 : 0 # 0 or ~ ( m o d 2zr). (A is a general displacement c o m p o s e d o f a proper rotation and a translation.) (2) I f r = - l ' 0 = ~ ( m o d 2 r r )

cO=l-~6adv+2(adv)",

q~ = - c 6 a d v ,

q~.=l+2(adv)'.

(2a) If ¢ , = 0. then ¢,: = I (A is a half-turn). (2b) If C, # 0 , t h e n C ' : = l + 2 o S a d r . (A is c o m p o s e d o f a half-turn and a proper translation along the same axis.) (3) If r = 3 : 0 = 0(rood 2tr)

~=l+¢Oadv,



=~6adv,

~.=1.

(A is a proper translation if ¢ , ~= 0 the identity if ¢J = 0.)

Lemma 2 Under conditions (38): (a) i f O # O ( m o d 2rr): t0(v) = v and {v [v} = I ,~.v = +v. (b) i f 0 = 0(mod 2rr).6 ~-0: c ~ ( v ) = v a n d {v[v} = I , ~ t v = +~v. (tv = +tv means that the axis o f the screws v and v are parallel with identical or opposite orientation, so they define the same translation.) The relation q,(v) = v means (41)

sin ~[v. v I + (I - cos ~)[v, Iv, vl] = 0.

We first observe that [v, v] and [e, [v, vii are both zero or non-zero and so for ," [v, v] and ~ [o, [v, vl] (using the minimal polynomial o f a d v, (ad v)". v = 0 implies (ad v) ~- v = - a d r • v = 0). By an easy proof, equation (41) is equivalent to

([v,v]=0)

or

(~[v,v]=0,

and

sin0=0,

cos0=l)

or

(sin~=0, cos:c=l).

Therefore, in case (a) necessarily [v, v] = 0 which means v = + v for normalized v and v. In case (b) necessarily t[v, v] = 0 (or more: Iv, v] = 0) and this means that the constant field coo x co, = 0, i.e. ~v = +~v.

Lemma 3 Under hypothesis 2(a), put v = I / 2 ( ~ ( o ) + 0). In every o r t h o n o r m a l basis o f the A-module ~', a ¢ may be chosen in order to Re{v ]v I > 0 . Then k = {v Iv} ~/-" exists, is invertible in A and k -Jr = + v .

In this case.

¢ , ( o ) = • + 2[v, [v, 0]] and. using equation (26),

l f o is chosen such that Re{v J¢} # 0 , then tv # 0 thus Re{v l v} > 0 . However, as ¢ : : I and ¢~ is A-linear ¢ ( k " ~ v ) = k - ~ ¢ ( v ) = k 'v. The result follows from L c m m a 2.

Lemma 4 Under hypothesis 2(b). ¢ , 2 = I + 2 ~ 6 a d r and, if {0 l a } = 1, ~o =Ev, v = I/2(¢0(o) + o ) , then V ~

"+'V.

The formula for ¢,: is readily proved since (ad v)' = - a d v . A-linearity o f ad r and ~o = tv:

Using the expression o f ~-'. the

¢'(v) = I '2(¢':(0) + ¢ ( 0 ) ) = v + ~ 6 a d v . ¢ = v +c6 a d v .v =v.

Algebraic methods in kinematics

623

Moreover, since • preserves the inner product,

{v I v} = I12({o let} + {O(~r) I o}), {O(tr) I a} = {o l~r} + 2{(ad e)2" tr It,} -- {~r I~} - 2{adt -tr ladl, .tr}. Since ~ a d v . a = 0, the last term vanishes [see relation (27)] and therefore {I, I v} -- {q I ~} = 1. The result follows from the Lemma 2. Here is the principle of the algorithm in order to find v and a given • in system (38) ComputeTrace(O)--r + (t'

and

O_ = I/2(O - O * ) .

• If-l
0 = arccos--~,

~'-!

I

6 = 2 sin-----O" • -- 0 4- (6, find v with ad v

sin • O-"

• If ~ -- - !, O_ -- 0: find (in an orthonormal basis of ~ ) a • such that: v--I/2(O(a)+~),

Re{vlv}>0,

and put:

k = { v l v } I/2,

then: 01 -----/t,

• ifr = -!,

I~ ~ / e - I v .

O_ ~ 0 : find ao such that O_ -- - ( a d o . , {eS,I ero}real(>0),

put:

6 = {t,. I ~,, }'/", ~ = ~ -'t,,,. then: a=n4.(&

v--I/2(O(tt)+o).

• If t = 3, 4,_ ¢:0: find it. such that O_ - - ( a d 6 . , {~.l tt,,}real(>0), then: 6={t~.l~,}'"",

~=(6,

~,=,~-'~0.

• If r = 3, O_ = 0: a = 0, t is undefined. Effective computations may be performed on Matrix[O]. The different cases agree with the previous cases (1). 2(a) and Lemmas 3, 2(b) and 4, (3) and all the solutions to the problem are then (a + 2nn, v) and ( - a + 2nn, - o ) with n integer.

4. DUAL Q U A T E R N I O N S :

A NEW G E O M E T R I C A L D E F I N I T I O N

4. I. Definition As is well-known, the ordinary quaternions may be defined as pairs (s, v) with s in R and 0 in E, the operations over them being defined by q+q'=(s+s',v4.v'), qq'=(ss'-v

2(s,v)--(Rs, itv), 2 e R ,

(42) (43)

. v ' , s W + s'v + v x v').

Endowed with operations (42), the set H o f quaternions is a real vector space with zero = (0, 0). Endowed with the addition and multiplication (43) it is a field with unity o - - i = (!, 0), and endowed with the three operation it is an associative algebra over R. It appears that the associativity of quaternion multiplication holds as a consequence o f three vector product's properties: Jacobi identity x x (y x ~ : ) + y x (z x x ) 4 . ~ x (x x y ) = 0 , skewsymmetry of mixed product x ' ( y x ~), iterated vector product formula x x ( y x z) -- (x • ~)y - (x "y)z. Therefore this definition may be extended to the Lie algebra ~ over A which has also a natural inner product {. I.} and formally similar properties. Put .,'ff -- A x ~ -- set of pairs q -- (z, X) with : ¢ A. X ~ ~ , and

q+q'=(z+z',X+X').

~(z,X)--(~,~X),

,~A,

(44)

024

D . P . CHEVALLIER

qq" = (:'7." -- {X[ X'}, .=X" 4" .7 'X 4" [X, X']).

(45)

A straightforward computation, using formulae (3), (25) and (26). the main point being the associativity, leads to the following results. Theorem 5 Endowed with the previous addition and multiplication, off is a ring with unity (I. 0 ) = e (but not a field). Endowed with the first two operations it is a A-module and, with the three operations, an associative algebra over A. The result would not be true if we had operated on the real Lie algebra ~ and the inner product [. i.]. Thus the module and Lie algebra structure on ~ . over A and with the inner product ~. I.l, are exactly those which support the geometrical concept of dual quaternions algebra. A member (:, 01 e o~ is a scalar dual quaternion and will be denoted by : e or simply :. A member (0, X) e .~' is a pure dual quaternion and will be denoted IX]. If q = (:. X) ~ , # we note Sc(q) = : and Ve(q ) = X the scalar and vector part o f q, and we note # = (:, - X). For example next formulae hold q) q: = ~l',~h, Sciqj q:) = Sc(q:ql ), s,.t[xl[v])

= - {x I v).

v,,([Xl[V]) = [ x , v].

(46) (47)

Moreover a member of . g which commutes with all other members of .,~ is scalar. 4.2. Norm and im'ertihilitv in .Y( For q in . ~ define N(q) = qq = qq = (:2 + IX I Xl)e. Then, N(q) is a scalar dual quaternion with positive real part. Easy computations leads to the fundamental properties N(qq') = N(q'q) = N(q)N(q'),

N(il) = N(q).

(48)

The dual number N(q) is invertible if and only if it has a non-vanishing real part, therefore q, in .,'g, is invertible if and only if Re(N(q)) > 0 and q. l = N(q)

'~].

4.3. Dual quaternions and representation o f D in The next theorems provide a representation o f spatial displacements as operations on screw fields by mean o f dual quaternions as defined here: Theorem 6 I f q is in ~ and N ( q ) = I there exists A ~ D such: [A.X] =q[X]# for every XeCJ. Note A , = D(q) the relation defined in this theorem. Theorem 7 For every A in D, there exist two and only two normalized dual quaternions q and - q which are mapped onto A , (i.e A . = D ( q ) = D ( - q ) ) . Theorem 8 If A . -~ D(q). A , -- D(q') then: CA o A ' ) , = D(qq'). Thus. the product of displacements is related to the product of dual quaternions. From formula (46) we deduce Sc(q[x]#) = Se(#q[X]) = S c ( [ X l ) = 0,

Algebraic methods in kinematics

625

therefore q[X]q = [30 is a pure dual quaternion with a well defined Y in ~. It is easy to show that the relation between X and Y is a A-linear map D(q), so q[X]:! = [D(q)X]. Moreover. if D(q) maps X. X', X" into Y, Y', Y". then {v i v'} =

-Sc(q[X]rtq[x']q)

= - Sc(#q[Xl[X'])

= - Sc(tXl[X']} = {x i x'}.

By the same way: {YI [Y', Y"]} = -Sc(q[X]flq[X']~lq[X"lfl) = {Xl [X', X"]}. Thus D(q) preserves the bi- and tri-linear forms {. I.} and {. I l-,-]} and Theorem 6 follows from Theorem 3. The existence part in Theorem 7 is a consequence of two properties. If q e.Y6 and N ( q ) = ! then D(q)(X) = X + 2:[~. X] + 2[¢. [¢. X]] Ifz=0+~teA.

ve~.{vlv}=l,

with

q=(z.~).

(49)

then (notation of Theorem 4)

D(q) = ( T r ( t i ) ~ R,(O)).,

with

q = (cos ~t/2. sin z/2v).

(507

The first property follows from an easy computation, using formula (26) and z z + {¢ I;} = I, the second follows from the first one and Theorem 4. If D(q) = D(q') for two normalized dual quaternions, then #q'[X] = [X]qq' for all X in ~ Thus #q' commute with all quaternion IX] therefore with all members of .:W. and it is a scalar dual quaternion (:, o). Being normalized : = + I. Thus q q ' = +_e and q ' = +q. The proof of Theorem 7 is complete. Theorem 8 is obvious. This theorem, with property (507, leads to a classical formula giving the geometrical elements of a product of displacements (see Ref. [6]).

5. S O M E A P P I . I C A T I O N S

IN K I N E M A T I C S

5. I. Computathm e~f rehwit r and acceh,rathm for a r(gid body mothm Here we relate different expressions of velocity and acceleration according to different representations of displacements and complete the results o f Ref. [7] giving shorter proofs. A rigid body motion may be defined by a map t ,,~ A (t)~ D. The velocity field V[ = V(t) member of VI is dctined by d d~A(MT=ViA(MT),

(M = position o f a particle at time t7.

(51)

It is easy to show that. for fixed X in :_Z', we have then d

A , X = [V, A , X].

(52)

Formula (51) is concerned with displacements acting on points of $' and equation (527 with displacements acting on c: (i.e fields or screws in g). Equation (52) may be proved by a direct derivation of A , X(M) = A(X(A ' ( M ) ) ) with respect to t. it is also a basic formula of the Lie group theory about adjoint representation which is the key to very compact coordinate free formulae for velocities and accelerations in kinematic chains (see Ref. [15] and the next section). Let A be expressed as in Theorem 7: A = D(q), with q = q ( t ) e .~' and normalized. The aim is to relate ~" to q. Taking the derivative of qq = I, we obtain q~ + q~ = 0 and this means that qq has zero scalar part and thus is a pure dual quaternion. We have v = 2Ve(#q),

(or [v] = 244),

= 2 ve(qq).

(53) (54)

For the proof we define V by the first relation and we show that this definition agrees with condition (51) [or condition (52)]. d ~-~q[X]# = q[X]# + q[X]~ = I/2[V]q[X]~ - l/2q[X]#[V] = [[V, D(q)(X)]].

626

D . P . C~lV~,LL~a

Thus the V defined by equation (52) or (53) give the same value to the quantity for all X, and are necessarily equal. From the first relation follows "~"= 2Ve(q# + q~) and the second one since q~ has zero vector part. Now. if Iv I v} = i. ~t ~ A and q = (cos ~t/2. sin ~t/2v) a straightforward computation of 2Ve(q#) and a derivation show that

[V.A.X]=~'.D(q)(X)],

V -- ~v + (sin • I + (i - cos ~t)ad v)" ~,

(55)

¢¢=~iv + ~ ( ( I + cos ~t)l + sin ~t ad v). ~ + ( s i n , , l + (1 - c o s a)ad a,). ~.

(56)

(~" is not exactly the acceleration field, the acceleration of a body V(A(M)) +c:s x V(A(M)) and the computation of ~' after V is the main point.)

particle

is

5.2. Velocities and accelerations in a rigid body chain Here we develop a short analysis of the algebraic aspects of the computation of kinematic quantities in a chain (see Ref. [15] for more details). The links are numbered ! = 0, I . . . . . n and the joints p = I . . . . . n (joint p is between links p - ! and p). Let Di be the displacement of the link / starting from a reference position, we have a relation Dr=D1_, '~AI, I = l . . . . . n.

(57)

where At is the relative displacement between the links ! and i - I. The kinematic nature of the chain is specified in giving, for every I, the subgroup in which the A~ must lie and further in giving joint coordinates which describe a current element of this subgroup. All formulae for chains are particular cases of the general formulae (see Ref. [5], where the case of tree structure is developed): d

d--tO,,=V,,,O,,,

d

~,4.=A.~w,,.

p = l . . . . . n.

Vl = Vo + Y..~t. w..

(58) (59)

p~.l

,,

= ,o + z

p~l \

+ z

(60)

q
where the .ffp are defined by (61) For example

A . - exp(0p ad vp). for a rotary joint. A . = exp(~x, ad vp). for a sliding joint. where vp e ~ with {vp ] vp} -- ! defines the axis of the joint and 0r xp are joint coordinates. Thus. the chain is completely defined by giving the sequence vp. p -- 1. . . . . n. If all the joints are rotary and the zero body is fixed we find:

,,=o',o,. V, = ~ 0..d.(0)v..

(62)

pgl

~¢'= ,,,',Z (O',.~l,(O)v, + ,<,Z O,O,[.~,(O)v,.~l,(O),,]). .o/,,(0) = (.4. (0,) ...... ,4,(00)). = ,4, (0~). . . . . . ,4p(Op)., p = ! . . . . . n.

(63)

(64)

All the kinematics of chains is thus expressed with the operations in ~ . Formula (62) shows that, in a given position, the velocities are linear combinations of screws dp(0)vp and the evolution law of this system of screws is well-defined. The first members of the Newton-Euler equations follow

Algebraic methods in kinematics

627

easily from equations (62) and (63) or more generally from equations (59) or (60). The remaining problem is to expand products of operators (64) or (61) and there lies unavoidable mathematical complexity because, in all formalisms, iterated transformations of exp ad U :-~exp ad V into exp ad W are inconvenient. REFERENCES I. 2. 3. 4. 5. 6. 7. 8. 9. 10. II. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.

K. H. Hunt. Mech. Much. Theory 3, 307-327 (1967). K. H. Hunt. Mech. Much. Theor.v II, 79-89 (1976). A. T. Yan 8 and F. Freudenst¢in. J. ~,ppl. Mech. 86, 300-308 (1964). G. R. Veldkamp, Mech. Much. Theory !!, 141-156 (1976). K. Surgimoto and J. Duffy. Mech. Much. Theory 17, 73-83 (1982). M. Hiller and C. Woernl¢. Mech. Much. Theory 19, 477-486 (1984). O. M. Prakash Agrawal. Mech. Much. Theory 22, 569-575 (1987). K. Surgimoto. J. Dufl'y and K. H. Hunt, Mech. Afach. Theory 17, 119-132 (1982). G. R. Pennok and A. T. Yang. J. Mech. Trans Automn Des. 105, 28-34 (1983). K. Surgimoto. J. Mech. Trans Automn Des. 106, 222-227 (1984). S. Payandeh and A. A. Goldenberg. J. Robot. Syst. 4, 771-797 (1987). K. H. Hunt. Robotica 14, 171-179 (1986)- !15, 17-22 (1987). J. M. Herv~. Mech. Mach. Theory 13, 437-450 (1978). J. M. Herv~, Mech. Much. Theory 17, 179-184 (1982). D. P. Chevallier. Seminaire Modeli,~ation Mathbmatique. pp. 231-270, McGraw-Hill, New York (1984). D. P. Chevallicr et J. M. Helmer. Annls Ponts Chauss. 29, 5-19 (1984). D. P. Chevallier, C.R.A.S. Paris T.292. 503-506 (1981). P. Fanghella. Mech. Mach. Theory 23, 17[-183 (1988). F. Thomas and C. Torras, IEEE JI Robot. Automn 4, 0988). V. Arnold, Mathemati('a/Methm,(v in Cl,,~sieal Mechanics (2nd edn), Appendix 2. Springer, New York (1989). C. Chcvallcy, Theory of Lie Group.~. Princeton Univ. Press, N.J. (1946). G. Birkhoff and S. MacLane. Algebra. Macmillan, New York (1967).

ALGEBRES DE LIE, MODULES, QUATERNIONS DUAUX ET METHODES ALGEBRIQUES EN CINEMATIQUE RC-mm~--Cet article expose systc~matiqucment, ct indc~pendamment des co(~rdonm:'es', le syst~me complct des operations d~linics" dans l'ensemhle des d~placcmcnts infinit~imaux (qui s'idcntifie avcc l'en.~mble des "'vis"), ainsi quc leurs relations avcc les d~placcmcnts finis. Six operations fondamentalcs sont ainsi mises cn ~vidcncc. Ellcs cngendrent divcrses structures al~briques, cn particulier unc algcbrc de Lic cz un module sur ]'anncau des nombres duaux munis d'un pruduit int~rieur naturel ..i valeurs dans les nombres duaux. Les principales relations entre ces ol~rations, permetlant les calculs sans sortir du systcmc, son[ mi.~s cn evidence. Ceue ~tud¢ perrnct une extension, dilr~rcnte dc [7], du th~or~me dc Vcldkamp ([4]), ct la formulation totalement intrinsL-que d'unc nouvell© d~finition des quaternions duaux. Des exemples d'application son[ ensuite donn~s sous la forme de d~mons|rations Ires courtes de z~'su]tats de base, situan! ccux-ci Ics uns par rapport aux autres. Les cxemplcs d'application aux chaincs de solides articul~s montrent claircmcnt la possibililc d'cxprimer ais~mcnt el intrins~qucmcnt route la cin~matiqu¢ ~ raide des structures alg~hriques introduitcs.