Vous êtes sur la page 1sur 7

ngulos de Euler Z-Y-X

En esta representacin, en lugar de realizar tres rotaciones consecutivas alrededor de los


ejes del sistema de referencia {A}, los rotaciones se efectan alrededor de los ejes del
sistema {B} solidario al cuerpo, como se ilustra en la figura 3.19 (Craig,1986).
Se comienza con {B} alrededor de
una rotacin alrededor de

un ngulo (balanceo). A continuacin se efecta

, resultante del primer giro, un ngulo (inclinacin).

Finalmente, se realiza un rotacin alrededor de

, resultante del segundo giro, un

ngulo (orientacin).
La rotacin total puede expresarse como:
A
B

A
B'

R BB' '' R B ' 'B' R

(3.65)
De donde:
A
B

R zyx

( , , ) = Rot (

B
B

, )

Rot (

B'
B'

, )

Rot (

B' '
B' '

, )

(3.66)
Por consiguiente,
A
B

R zyx

C s 0
( , , ) = [ s C 0 ]
0
0 1

C 0 s
[ 0 1 0 ]
s 0 C

1 0
0
0 C s
[
]
0 s C

(3.67)

A
B

R zyx

(,

,
(3.68)

C C C s s s C C s C + s s

[ s C s s s +C C s s C C s
s
C s
C C

Podemos observar que la formula resultante es exactamente la misma que la calculada


anteriormente para los ngulos RPY, por lo que para obtener los ngulos Z-Y-X a partir de
la matriz (problema inverso) es posible aplicar la mismas expresiones que resultaron para
los ngulos RPY.

ngulos de Euler Z-Y-Z


Los ngulos de Euler presentados anteriormente definen la orientacin mediante tres giros
consecutivos en los tres ejes de coordenadas. Realizando de forma diferente los giros, se
obtienen otras representaciones. En el caso de los denominados ngulos de Euler Z-Y-Z, se
comienza tambin con {B} coincidente con la referencia {A} y se efectan sucesivamente
B
B
la rotacin {B} alrededor de
un ngulos , y a continuacin alrededor de
, un
ngulo . Sin embargo, la tercera rotacin es diferente ya que ahora vuelve alrededor de
B
un ngulo .
En este caso llega a obtenerse una matriz de rotacin (Craig, 1986):

A
B

R zyz

69)

C s c s s C c s s C C s

(, , ) = [ s c c +C s s c s +C C s s
s C
s s
C

(3-

En la herramienta MTALAB del apndice, la funcin que devuelve la transformada


homognea que corresponde a los ngulos de Euler Z-Y-Z ( alpha, beta, gamma), que se le
pasan como parmetros, es T= eul2tr ( alpha, beta, gamma).
El problema inverso se resuelve ahora mediante los expresiones:
= arctg2 (

r 32

, -

r 31

);

= arctg2(

2
31

2
+r 32
, r 33 ;

= arctg2(

r 23

r 31

(3.70)
Suponiendo sen 0.
El ngulo se elige de forma que 0 180, que corresponde a la raz positiva.
De igual manera forma que se ha visto anteriormente, si = 0 o = 180 la solucin es
degenerada. En este caso solo puede calcularse la suma a la diferencia de y .
Eligiendo = 0 se obtienen las soluciones:

0,

0,

arctg2(

r 12

r 11

arctg2(

r 12

r 11

(3.71
0,

180,

(3.72)
en la herramienta MATLAB del apndice, los ngulos de Euler Z-Y-Z se obtienen a partir
de una transformada homognea (T) dada, empleando la funcin: [alpha beta gamma] =
tr2eul (T).
Pares de rotacin y cuaternios
Por ltimo, conviene mencionar otras representaciones posibles de la orientacin tales
como los denominadores pares de rotacin a los cuaternios.

Cuando se emplean pares de rotacin, la orientacin de un sistema {B} con respecto a un


sistema {A} se define mediante el par (,), siendo un vector que define el eje de rotacin
y el ngulo de rotacin, como se muestra en la figura 3.20. si se gira el sistema {A} un
angulo sobre , se obtiene el sistema {B}.
Los cuaternos estn constituidos tambin por cuatro componentes: un escalar y un vector de
tres componentes. De forma mas precisa se emplea el par:
[ cos (/2), sen (/2)]

ngulos RPY
Se emplean los ngulos RPY: roll (balanceo), pitch (inclinacin), y yaw (orientacin)
que, en terminologa nutica, corresponden respectivamente a alabeo, cabeceo y guiada.
Supngase que se desea expresar la orientacin de un objeto, que tiene una sistema de ejes
asociados {B}, con respecto a un sistema de referencia {A}. se comienza con {B}
coincidente con la referencia {A} y se efecta una rotacin de {B} alrededor de
angulo (balanceo). A continuacin se efecta una rotacin alrededor de
(inclinacin) y finalmente una rotacin alrededor de
la figura 3.18 (Craig, 1986) se ilustra el procedimiento.

un

un angulo

un angulo (orientacin). En

Empleando el operador de rotacin, se tendra


A
B

R RPY

( , , ) = Rot (

A , ) Rot (

A , ) Rot (

A , ).

(3.54)
Que puede expresarse como producto de matrices de rotacin

A
B

R RPY

C s 0
C 0 s
( , , ) = [ s C 0 ] [ 0 1 0 ]
s 0 C
0
0 1

1 0
0
0 C s
[
]
0 s C

(3.55)
Efectuando la multiplicacin de matrices se obtiene:

A
B

R RPY

C C C s s s C C s C + s s

( , , ) = [ s C s s s +C C s s C C s
s
C s
C C
(3.56)

En la herramienta MATLAB del apndice existe una funcin que permite obtener la
transformacin homognea a partir de los ngulos RPY. Para utilizarla basta escribir:
T = rpy2tr (gamma, beta, alpha)
El problema inverso tambin tiene inters. Se trata ahora de obtener los ngulos de
orientacin conocida la matriz de rotacin}

A
B

r 11 r 12 r 13

= [ r 21 r 22 r 23
r 31 r 32 r 33
(3.57)

Para obtener las tres incgnitas pueden plantearse nueve ecuaciones de las cuales seis son
dependientes. En la prctica, basta plantear tres ecuaciones con tres incgnitas. Por
ejemplo, suponiendo

0, es posible emplear a funcin arco tangente para calcular

r 32

r 33 . De forma mas precisa, si se define la funcin arctg2( r 32

a partir

r 33

) como el arco tangente del ngulo

r 32

r 33

= arctg2(

r 32

r 33

teniendo en cuenta el signo de

para determinar el cuadrante, se tendr:


r 32

r 33

(3.58)
As, por ejemplo,

= arctg2(-2,-2) = -135

(3.59)
Mientras que
arctg2(2,2) = 45

(3.60)

y la funcin es indefinida cuando ambos argumentos son ceros.


As mismo, es posible obtener

= arctg2(- r 31 ,

2 2
11 21

(3.61)
Escogiendo la solucin -90 90, que corresponde a tomar la raz como positiva.
Finalmente, puede aplicarse la misma funcin para obtener

= arctg2(

(3.62)

r 21

r 11

Existe soluciones degeneradas para

= 90 (siendo, por tanto,

casos solo puede calcularse la suma o la diferencia de

= 0, se tienen las soluciones:

= 0,

= 90,

= -90,

= arctg2(

r 12

r 22

= 0). En estos

y . Suponiendo que se elige

(3.63)

= 0,

= arctg2(

r 12

r 22

(3.64)
en la herramienta MATLAB del apndice, para obtener los ngulos RPY a partir de una
transformada homognea dada (T) basta escribir:
[r p y] = tr2rpy (T)

Bibliografia
Craig J.J., 1986. Introduction to Robotic. Mechanics and Control. Addison Wesley.
Anibal Ollero Baturone., 2009. Robotica Manipuladores y robots mviles.Alfaomega
Grupo Editor.

Vous aimerez peut-être aussi