Está en la página 1de 11

Universidad Nacional de San Agustín

Autor: Lizardo Pari

2.6.- MOVIMIENTOS COMPUESTOS.


REGLA:

Si la transformación se realiza en el sistema fijo, se pre-pultiplica.

Si la transformación se realiza en el sistema resultante o móvil (es decir respecto a la última


localización del sistema transformado), se post-multiplica.

Ejemplo 1

Interpretar:
T  rot ( z, 90) * trasl (0, a, 0)

Y'
Solución a): considerando todo en el sistema fijo:

Y
Z'

X'
Z

X
Z ''

Y ''
X ''

Figura 1

Solución b) considerando movimientos en el sistema resultante:


Y
Z Z'

Y'
a
Z ''

X
X'

Figura 2
Y ''
X ''

Ejemplo 2

Interpretar la siguiente transformación:

T  [rot ( z , 90) * trasl (0, a, 0)]* rot ( y, 90)


Solución a) La parte en paréntesis corresponde al Ejemplo 1 , considerar el siguiente
movimiento en el sistema resultante:

13
Universidad Nacional de San Agustín

Y
Autor: Lizardo Pari

Z '''
Z
Z '' X '''

X
Y '''
Y ''
X ''
Figura 3

Y ''
Z ''
Solución b) todos los movimientos son en el sistema fijo:

Y'
Y
X ''

a
Z'

Z '''
X'
Z

X
X '''

Y '''

Figura 4

Solución c) Lo de paréntesis y la última transformación: sistema fijo, luego lo de dentro del


paréntesis: transformaciones en sistema resultante:
Z '' Y '

Y
Z'

Z '''
X'
X ''
Z

X
X '''

Y ''

Figura 5
Y '''

2.7.- COMPOSICIÓN DE ROTACIONES O TRANSFORMACIONES


Propiedad: No es commutativa
0
R 2  0 R1 1 R 2  1 R 2 0 R 1 ( 0)
Ejemplos:

1.- Suponer que R representa una rotación de  alrededor de Y seguido de una rotación de 
alrededor de Z (sistema resultante):

R  rot ( y,  )  rot ( z,  )

14
Universidad Nacional de San Agustín
Autor: Lizardo Pari

2.- Obtener la matriz de transformación que representa un giro de 90° en X, luego un giro de
180° en Y (sistema fijo), y luego un giro de -90° en Y en el sistema resultante

T  [rot ( y,180)  rot ( x,90)]  rot ( y , 90)

Ejemplo 3.-

Se tiene la matriz homogénea:

 1 0 0 0.4 
 0 1 0 0 
0
H3  
0 0 1 0.3
 
0 0 0 1 
0
X 0Y0 Z 0 y X 3Y3 Z 3 según la transformación H 3 .
a.- Graficar los sistemas
0
b.- Hallar las rotaciones básicas que generan
R3 .

Solución a)

 1 0 0   0.4
0
R 3   0 1 0  0
t 3   0 
 0 0 1   0.3
y
Z3

R3
0
Y3
X3

X0
0.4

Y0
Z0
0.3

Figura 6

Solución b)
0
R 3  rot ( z ,90)  rot ( z,90)
0 1 0  0 1 0   1 0 0 
0
R 3  1 0 0  1 0 0    0 1 0 
0 0 1  0 0 1   0 0 1 
0
R 3  rot ( z ,180)
Ejemplo 4.-

15
Universidad Nacional de San Agustín
Autor: Lizardo Pari

Se tiene las siguientes transformaciones consecutivas: T1: traslación (6,2,3), seguido de una
rotación de -90° en Y; T2: rotación de 180° en Z; T3: traslación (-2,-1,4), seguido de una
rotación de 90° en Z.

a.- Graficar las transformaciones


X 1Y1Z1 , X 2Y2 Z 2 , X 3Y3 Z 3 , según la base X 0Y0 Z 0 .

0
b.- Indicar y desarrollar las rotaciones básicas realizadas para llegar a
R3 .
0
c.- Conforme la matriz
H3 .

Solución a)

Y3
Z3
X1
0 X3 2
R3
1 Z1
Y1
4 Z
2

Y2 X 3
2

Z0
Y0
X0 6 2

Figura 7

Solución b)
0
R 3  rot ( y, 90)  rot ( z, 90)
0 0 1  0 1 0   0 0 1
0
R 3  0 1 0   1 0 0    1 0 0 
1 0 0   0 0 1   0 1 0 

Otra opción:
0
R 3  rot ( z, 90)  rot ( x,90)
 0 1 0  1 0 0   0 0 1
0
R 3   1 0 0  0 0 1   1 0 0 
 0 0 1  0 1 0   0 1 0 

Solución c)

16
Universidad Nacional de San Agustín
Autor: Lizardo Pari

2
0
t 3   3 
 5 

0 0 1 2 
 1 0 0 3
0
H3  
0 1 0 5
 
0 0 0 1

2.8.- REPRESENTACIÓN DE MATRICES DE ROTACIÓN


2.8.1.- ANGULOS ROLL, PITCH, YAW (RPY)
La rotación R solo de tres ángulos
( ,  ,  ) :

R  rot ( z,  )  rot ( y,  )  rot ( x, )

c c c s s  s c c s c  s s 
R   s c s s c  c s 
( 0)
s s s  c c
  s c s c c 

Paso de R a RPY:

  a tan 2(r21 , r11 )


( 0)
  a tan 2( r31 , r322  r332 )
  a tan 2(r32 , r33 )

 
  ,
Para 2 2

Nota 1: si    / 2 , se tiene una singularidad


Nota 2: Mediante la representación de RPY, la posición y orientación se puede representar en
forma compacta mediante un vector 6x1:

17
Universidad Nacional de San Agustín
Autor: Lizardo Pari

x
y
  ( 0)
z
X 
 
 
 
 
Nota 3: en Matlab, “tr2rpy()”, su contrario: “rpy2tr()”.

2.8.2.- REPRESENTACIÓN POR TRES ÁNGULOS.


2.8.2.1.- EULERIANOS.-
Movimientos en el mismo eje pero no sucesivos: XYX, XZX, YXY, YZY, ZXZ, ZYZ, el más usado:
ZYZ.

Nota 1: en Matlab existe el comando “tr2eul()” que transforma una rotación a la forma ZYZ, su
contrario: “eul2tr()”.

2.8.2.2.- CARDANIANOS.-
Movimientos en los tres ejes: XYZ, XZY, YZX, YXZ, ZXY, ZYX, el más usado: ZYX ( es decir: roll,
pitch, yaw).

2.8.3.- REPRESENTACIÓN POR DOS VECTORES.


Sólo se necesitan 2 vectores para describir la rotación, el tercer vector se obtiene por las
propiedades de R . Si
n
o

Figura 8

Donde: a: approach, o: orientation, n: normal, si:

 nx ox ax 
R   ny a y 
( 0)
oy
 nz oz az  R   n o a
ó
Entonces:
n  oa ( 0)
2.8.3.1.- CONVENCIONES.
Cámara:

18
XC
ZC
YC

Universidad Nacional de San Agustín


Autor: Lizardo Pari

Figura 9

Robot móvil:

Figura 10
mov.
Avión o barco: X
Z
X
roll

Y
yaw pitch
Z

Figura 11

2.8.4.- ÁNGULO Y EJE (PAR DE ROTACIÓN).


La rotación se realiza sobre un eje arbitrario k un ángulo theta:
Y

Zk

Figura 12

 trace(R )  1  ( 0)
  a cos  
 2 

19
Universidad Nacional de San Agustín
Autor: Lizardo Pari

 r32  r23 
1   ( 0)
k r  r
2sin( )  
13 31

 r21  r12 

k  [k x ky k z ]T k x2  k y2  k z2  1
Donde con . Si   0 o    , no tienen sentido
(rotación nula) y k es arbitrario.

Nota 1: en Matlab existe: “tr2angvec()” y “rotvec()”.

Nota 2: El ángulo y eje de rotación se encuentra en los valores propios y vectores propios de
R:

- Vector k : vector propio correspondiente al valor propio la unidad.


- Ángulo  : ángulo del número complejo de cualquiera de los dos otros valores propios.

Ejemplo 5

0.433 0.4356 0.7891 


R   0.75 0.6597 0.0474
 0.5 0.6124 0.6124 
Si , Hallar el ángulo y eje.

Solución:

 0.433  0.6597  0.6124  1 


  a cos    1.2105
 2 

0.6124  0.0474 0.3525


1  0.7891  0.5    0.6888
k
2sin(1.2105)    
 0.75  0.4356   0.6335

Solución alternativa:

[vp vap]  eig ( R )

 0.6617 0.6617 0.3525


vp   0.1835  0.478i 0.1835  0.478i 0.6888 
 0.168  0.52i 0.168  052i 0.6335 
vap   0.3526  0.935i 0.3526  0.935i 1
Entonces:

20
Universidad Nacional de San Agustín
Autor: Lizardo Pari

0.3525
k  0.6888
0.6335   angle(0.3526  0.935i)  1.2105
y

2.8.4.1.- PASO DE
(k , )
a R
Se usa la fórmula de Rodrígues (Olinde Rodrigues, 1790):

R  I  sin( )  k X   (1  cos( ))  k X 
2 ( 0)

 0 kz ky 
 
 kX    kz 0 k x 
 k y kx 0 
Con 

2.8.5.- REPRESENTACIÓN DE RODRIGUES


La rotación se representa por un vector r de 3 elementos tal que:

r  k ( 0)
con

 r ( 0)
r
k
r

2.8.5.1.- PASO DE r A R

r  r 
2 ( 0)
R  I  sin  r  X  (1  cos( )) X
  r 2
r

Ejemplo 6

Suponer que R es generado por una rotación de 90° en Z, luego 30° en Y, luego 60° en X
(todos en el sistema resultante).

a.- Hallar su ángulo y eje.

b.- Hallar sus ángulos RPY en grados.

c.- En base al ángulo y eje hallado encontrar la rotación original mediante la fórmula de
Rodrígues.

d.- Hallar la representación de la rotación por Rodrígues

21
Universidad Nacional de San Agustín
Autor: Lizardo Pari

Solución a)

 0 0.5 0.866 
R  rot ( z ,90)  rot ( y, 30)  rot ( x, 60)  0.866 0.433 0.25 

 0.5 0.75 0.433

 trace(R )  1 
  a cos    1.6378  93.84
 2 
 0.75  0.25   0.2506
 1    
k    0.866  0.5  0.6846 
 2sin(1.6378)   0.866  0.5 0.6846 
   

Solución b)

  a tan 2(0.866, 0) 180 /   90

 
  a tan 2 (0.5), 0.752  0.4332 180 /   30
  a tan 2(0.75, 0.433) 180 /   60

Solución c)

 0 0.6846 0.6846 

R '  I  sin(1.6378)  0.6846 0 0.2506  
 0.6846 0.2506 0 
2
 0 0.6846 0.6846 

(1  cos(1.6378))  0.6846 0 0.2506 
 0.6846 0.2506 0 

 0 0.5 0.866 
R '  0.866 0.433 0.25 
 0.5 0.75 0.433 

Solución d)

 0.2506 0.4104 
r    k  1.6378   0.6846   1.1212 
 0.6846 1.1212 

22
Universidad Nacional de San Agustín
Autor: Lizardo Pari

23

También podría gustarte