Quaternions Applied to Direct and Inverse Robot Kinematics Problems

Quaternions Applied to Direct and Inverse Robot Kinematics Problems

Cop\Tight © I F.V: Theon' ot Rohots. \·it'IlIl~1. .-\\lslria 1~}Ht) QUATERNIONS APPLIED TO DIRECT AND INVERSE ROBOT KINEMATICS PROBLEMS A. L. Feria* ...

713KB Sizes 0 Downloads 43 Views

Cop\Tight © I F.V: Theon' ot Rohots. \·it'IlIl~1. .-\\lslria 1~}Ht)

QUATERNIONS APPLIED TO DIRECT AND INVERSE ROBOT KINEMATICS PROBLEMS A. L. Feria* and

J.

V. Codina**

81::. T.S. 1::lIgiIlYI'I"I dl' TI'/nullllllli({ui() & Imtitllt de CiiJl'nu'tim (['.I'.C.) **l:.T..'i. /:' lIgiIlYl'rs de TI'/nullllllli((lci() (L'.P.c.) cl jordi (;irollfl S/ II OHO].J BflrCI'/olla, Spaill

Abstract. The trigonometry and vectors coordinate geometry have demostra ted some deficiences like tools to manipulate a robot. The properties of quaternions and how they can be applied are exposed. An example is given to show how to use the quaternions in an arm manipulator. Keywords. Quaternions; Euler parameters; Dual Numbers; Dual Quaternions; Biquaternions; Octonions; Robot.

-..

INTRODUCTION

s + v 1\

( 1)

where We can represent the attitude of the rigid solid in the space with different systems. s ;

One is the matrix of director cosinus,this 3 x3 matrix can be used to represent the attitude of a solid rigid in space.

a

j)COSCl

and

-..

v

(2 )

-.. -.. If a and b are two vectors. and Cl is the an gle between them, the vector V is perpendi: cular to the plane defined by these vectors

Other method, is using Euler's angles, knowing a position we can change to another doing three rotations, where each rotation is represented by an Euler's angle.

~a

We can use another method, the qUcternions which is a part of the object of this paper.

V

Fig. 1

We define the quotient The other part of this paper is devoted to dual quaternions as a tool to do translations.

a j)

Finally, the quaternions and dual quaternions are used to solve the direct and inverse problem.

Q

(3 )

like the quaternion's tensor, where Q is a simple scalar, and we define

-..

p

QUATERNIONS

-..

v v

(4 )

-.. like the quaternion' s versor, p is a unit vector the defines the plane that contains a and ~, and also the turn. Wc can write in consequence, the quaternions as

Hamilton was who discovered the concept of "quaternion" due to that he was searching a system to divide two vectors. The quaternion is a mathematical operator which is composed of a scalar part and a vectorial part.

~; Q[cosCl+sinClp

Its representation is Their conjugate is

67

( 5)

68

:\, L. Feria and

.

s-v

Q[cosa-sinap

J. \',

Codina

ROTATIONS

(6 )

We can express the addition and the product of two quaternions ( 1= Sl.Vl q2 = S2. V2 ) in the following manner ( 7)

The most important application of quaternions is in the expression of rotations.

If we have a quaternion with the form

~= cosa+sinap

( 12 )

(8 )

and its conjugate is the addition has the commutativity propertie but not the product.

.

,

( 13)

cosa-s~nap

The quaternions has a structure of a field The field of quaternions encloses the scalars, the vectors and the complex numbers.

If Y is a vector, applyinq the guaternions on y in the following n.anner

If Q = 1 we can say that the quaternion is normalised, which expression is

~=

( 14 )

.

,

(9 )

cosats~nap

then CARTESIAN EXPRESSION OF QUATERNIONS

..y'

. . .

We define an orthonormal basis el, e2, e3 of the three-dimensional vector space. If we consider el, t 2 , t 3 , like quaternions with null scalar part, the application of the product's definition gives us the following table (1).

eo

el

e2

e3

eo

eo

el

e2

e3

el

e

1

-eo

e3

-e2

e2

e2

-e 3

-eo

el

e3

e3

e2

-e

-e 0

1

( 15)

and

y'

and ..the vector is invar iant because y' and ~ arc in the same direction. The vector x' is the same as ~ ",ith a turned angle 2a. As shown in the figure,(2) the new vector is

Yl

;c'

+

y

( 16)

I

table (1) Defining e o = 1, the cartesian expression of quaternion is

'1=

~

-+

~

..

qoeo+qlel+q2e2+q3e3

(10 )

and if the quaternion is normalised we can say

q~-j-q~+q~+q~

1

( 11 )

ng.

(2)

We can see that with the application of the quaternion q on a vector, in the above exposed manner, we obtain the same vector turned an angl~ 2a arround t~e axe defined by the vector p, ilnd in the p veccor sense.

69

Direct and llwerse Robot Kinematics Prohlem The mouvement of a rigid solid referring to a reference system A with a fixed point can be represented by the Euler's angles or by the director cosinus, the final rota tion is expressed as the matrix product of three successive rotations. If we work with the director cosinus, the mouvement are expressed as the product of a matrix by a vector. If we apply three successive rotations using quaternions, it can be done in the following manner

DUAL VECTORS A dual vector is defined by the following expression

...r

...r

( 19 )

+ Er

where The dual vectors have all the operations that a vectorial spaces have. We remark only the

( 17 )

Product by a dual number DUAL NUMBERS

...

a.r Dual quaternions, is the last and commun name. Before, biquaternions and octonions were used.

(20 )

Scalar product +

~

Octonions is the name that Clifford (18451879) gave to his work about dual numbers and dual quaternions.

r

1 •

+

r 2 + E( r

-

1 •

-

+

r 2 + r 1 r2)

Vectorial product

Clifford defined the dual numbers as

(22 )

( 18)

a + £a

a

(21 )

GEOMETRIC APPLICATION v/here a 6. R and a E. R. We can write dual vector as Applying the hypothesis that the value of £ can be changed, we have the following ca ses:

...r

...

r + £r

which represents a line. Case hyperbolic where £2 = 1 then it implies that D = ~ (complex)

r

X

Case parabolic where £2 = 0 then it implies that 11> Case elyptic implies Il = IR

where £2

-r

p

1 then it

o Fig. (3)

If we consider that 1 E IR as the unit of real numbers, and £ as the unit of dual numbers, £ t D, we can define the following table (2)

1

£

...

...

r.r

1

1

£

E

...

......

The expression r x A r where r is colineal \~ith the line and x is the position vector, of any point in the line. They have the following conditions. r.r

1

o

(23 )

£ 0

Table (2)

These conditions are necessary to represent a line with a dual vector. The angle between two dual vectors is

Dual numbers have a structure of algebra of dimension two. q> +

...

E
(24 )

.-\. L. Feria ane!

iO and it is done by cos.
.J.

Y. Codina

where is the scalar product. E sin~

(25 )

then


We can apply a dual quaternion to this dual vector ( 39)

and we obtain an other dual vector. Defining that the translations are done by a dual quaternion which expression is (40)

(26)

or

and developing the expression

g

qoG o + -

... q l el+ -

~

... qze z

+

-

-+

-+

+ E(qoe o + qlel

... q 3e3

...v

+

--+

+ qzez + q 3e3

(1 + E Z)(r + Er)(l ~

( 27) -+

another equivalent could be

q+

g = qo +

r + Er

E(go + g)

+

1

......

-+-+

2(( vr

rv)

...

(28 )

r'

...

We define the interior product as

i

=

then the value of r'

{gg' + g'.s. }

(41 )

is

...

r'

(42 ) or

(29 )

A dual quaternion is normalised, when we do the interior product of itself

If we define r as

...

r

...pllr...

then

...

r'

(43)

GEOMETRIC INTERPRETATION (30 )

...

the conditions for a dual quaternion be normalised are given by the interior product of

I /

/ ---

~--



1

(31 )

= 0

(32 )

and

The conjugate of a dual quaternion can be expressed by the following three diferent \~ays

g

...

...

:;;

= q + q = qo - q + E(go -

q)

...

g = q - Eq E :: q = q Eq E

qo + q - E(qo + q) qo

q

(( go

g)

pFig. (4)

As it is the figure 4, !he dual vector r has translated a value v and we have the new dual vector ~'. The vector p is an uni tari vector. APPLICATION TO A ROBOT

(33 )

Direct Problem (34 ) (35 )

We have a robot figure (5) where the point 1 has a freedom degree respect to axe e3 and the point 2 has a freedom degree axe el

TRANSLATIONS If

have a dual vector, as a line,

~le

...

...

r

r + Er

( 36 )

~2 Y f3. 1 - - - - - - 1

which has the normalised conditions

...

r.r

1

(37)

r.r

o

(38 )

Fig.

(5)

71

Direct and !Il\·erse Robot Kinematics Problem The turn referring to the e

3

...

axe is (44 )

0

ql

=

1

(cos-2

0

_

r3

...

r

The turned angle between r and r f ven by

The expression of the quaternion ql is

...

If we konw the initial vectors vf~ ri, r2 and also we konw the final pos1t1on de fined by f"

f

is gi-

1

+ Plsin--) 2

(45)

where 0 1 is the turned angle, and Pl~iS~ the vector k in the ortonormal base 1, ],

k.

...

(50 )

r.

1

To maintain the orientation between the axes and the robot's arms we apply the qu~ tern ion ql to the vector P2

1

...pi

(46)

where the vector the quaternion q2

We need to define some additional condi tions to ... minimize thi ~buvcment of the vector r ..

...pz

CONCLUSIONS

is the new vector to

02

02

2

2

= cos-- + p~ nin--

Thc!") to turn the angle 8 2 respect to the axe e l will be

If the robot had more articulations we'd do the same. TRANSLATIONS

The applications of the quaternions and dual quaternions applied to a robot allows the simplification of the calculation system of the arm's orientation. To use the quaternions to do rotations and translations is easier than use matrix transforma tions. In consequence in a comparative analysis of the operations using quaternions or matricial methods, there is a reduction in the amount of operations and execution ti me in a computer. REFERENCES

If we have a robot with an extensible arms we will have is shown in the

Gini, G & M (1983) Robot . Clup, Milano Hamilton, W.R. (1866). Elements of nions. Longmans Green & Co, London

Fig.

(6)

The expression of the dual quaternion to do a translation is given by (47)

2nd to apply it to the dual vectors -1 rand £2' we do

...

r'

_1

(48 )

Invers problem To solve the inverse kinematics problem,we have different ways. We use a similar methode to that one developed by Paul, but using quaternions and not the transformation mntrix as operator.

r;

r. r. '

rt__ - - -- - (XiY/Zi)

---------

(XoYoZo)

Fig.

(7)

quate~

Ninot, J. (1961) La congruencia de rectas y la cinematica parametrica. Tesi, Barcelona. Clifford, (1898) Octonions. Cambridge at the University Press.