UCSM-EPIMMEM
ROBÓTICA I Herramientas
Matemáticas para la representación de la localización espacial: Matrices de Transformación Homogénea (MTH) JCC
UCSM-EPIMMEM
Representación conjunta de posición y rotación
Localización Orientación
Matrices de rotación
=
Matrices de transformación homogénea
=
Localización
Posición
Coordendas cartesianas (XYZ)
+ Orientación
Cuaternios
Vectores
UCSM-EPIMMEM
Coordenadas homogéneas
Matrices de Transformación Homogénea (MTH) •
UCSM-EPIMMEM
Matriz 4x4 que representa la transformación de un vector en coordenadas homogéneas de un sistema de coordenadas a otro R 3x3 p3x1 Rotacion Traslacion T Perspectiva Escalado f 1x3 w1x1
• • • •
R3x3: matriz de rotación p3x1: vector de traslación f 1x3: transformación de perspectiva ((0,0,0) en el caso de robótica) w1x1: escalado global (1 en el caso de robótica)
UCSM-EPIMMEM
Aplicación de las MTH R 3x3 p3x1 Rotación Traslación T 1 0 1 0 1. Representar la posición y orientación de un sistema girado y trasladado O'UVW con respecto a un sistema fijo de referencia OXYZ, que es lo mismo que representar una rotación y traslación realizada sobre un sistema de referencia. 2. Transformar un vector r expresado en coordenadas con respecto a un sistema O'UVW, a su expresión en coordenadas del sistema de referencia OXYZ. 3. Rotar (R) y trasladar (p) un vector r con respecto a un sistema de referencia fijo OXYZ para transformarlo en el r’.
UCSM-EPIMMEM
Usos alternativos de las MTH Rotación Traslación 1 0
T
V W
r'x r x r' y T r y r'z r z 1 1
r x r u r y T r v r z r w 1 1
U
W
V
r U
r’
T Z
Y
T
Z
r
Y Z X
X
1
p
2
R
Y X
3
UCSM-EPIMMEM
Propiedades de las MTH NO son Ortonormales
n o a 1 no a n o T a 0
x
-1
x
x
r xyz T r uvw
n
y
o
y
a 0
y
-1
n
o
n
z
o
z
a 0
z
a
=
n p o p a p 1 T
T
T
T r xyz ruvw -1
T
n
o
a
UCSM-EPIMMEM
Traslación con MTH Matriz básica de traslación:
1 0 T( p ) 0 0
Cambio de sistema de coordenadas: r x 1 0 r y r z 0 1 0
0 0 p x r u
r u + p x +p 1 0 p y r v r v y 0 1 p z r w r w + p z 0 0 1 1 1
0
0
p x
1 0 p y 0 1 pz 0 0 1
Desplazamiento de un vector: r'x 1 0 r' y r'z 0 1 0
0 0 p x r x
r x + p x +p 1 0 p y r y r y y 0 1 p z r z r z + p z 0 0 1 1 1
UCSM-EPIMMEM
Ejemplo de traslación (I). Trasladar el sistema (cambio de base)
Según la figura el sistema O'UVW está trasladado un vector p(6,-3,8) con respeto del sistema OXYZ. Calcular las coordenadas ( r x , r y ,r z ) del vector r cuyas coordenadas con respecto al sistema O'UVW son r uvw(-2,7,3)
r x r y r z 1
1 0 0 0
0
0
6 2
3 0 1 8 0 0 1 1 0
4 7 4 11 3 1 1
Ejemplo de traslación (II)
UCSM-EPIMMEM
Trasladar el vector •
Calcular el vector r ’xyz resultante de trasladar al vector r xyz(4,4,11) según la transformación T(p) con p(6,-3,8)
r' x r' y r' z 1
6 4 1 0 0 0 1 0 3 4 0 0 1 8 11 0 0 0 1 1
10 1 19 1
UCSM-EPIMMEM
Rotación con MTH •
Matrices de rotación básicas: 0 0 1 0 cos -sen Rotx( ) 0 sen cos 0 0 0
0
0 1
0
cos sen Rotz( ) 0 0
cos 0 Roty ( ) sen 0
sen 0 0 cos 0 0 0 1 0 0 0 1
0 sen 0
0 cos 0 0 0 1
1
0
0
UCSM-EPIMMEM
Rotación con MTH Cambio de sistema de coordenadas: r x r u R 0 r y 3x 3 3x1 r v r z 0 1 r w 1 1
Rotación de un vector:
r'x R r'y 3x3 r'z 0 1
r x 03x1 r y 1 r z 1
UCSM-EPIMMEM
Ejemplo de rotación
Rotar el sistema (cambio de base) •
Según la figura el sistema OUVW se encuentra girado -90º alrededor del eje OZ con respecto al sistema OXYZ. Calcular las coordenadas del vector r xyz si r uvw = [4,8,12]T
r x 0 r - 1 y r z 0 1 0
1
0
0
0
0 4 0
0 1 0 0 0 1
8 8 - 4 12 12 1 1
Combinación de rotaciones y traslaciones •
•
UCSM-EPIMMEM
Es posible combinar rotaciones y traslaciones básicas multiplicando las matrices correspondientes El producto no es conmutativo: rotar y trasladar trasladar y rotar
Trasladar T(p) y Girar Rotz(π)
Girar Rotz(π) y trasladar T(p) Transformaciones expresadas en el sistema fijo
Orden de la combinación de rotaciones y traslaciones
UCSM-EPIMMEM
Rotación seguida de traslación (expresadas en sistema fijo): 0 1 0 cos T p Rotx( ) 0 sen 0 0
0
p x
sen p y cos p z 0 1
cos 0 sen 0 1 0 T p Roty( ) = sen 0 cos 0 0 0
p x
p y p z 1
cos sen T p R otz( ) 0 0
sen 0 p x cos 0 p y 0 1 p z 0 0 1
Traslación seguida de rotación (expresadas en sistema fijo): 0 1 0 cos Rotx( )T p 0 sen 0 0
cos 0 sen p xcos p z sen 0 1 0 p y Roty( )T p sen 0 cos p zcos p x sen 0 0 1 0
sen p ycos p z sen cos p y sen p z cos 0 1 0
p x
cos sin Rotz( )T p 0 0
sin
0 p xcos p y sin
cos
0 p x sin p ycos
0
1
p z
0
0
1
UCSM-EPIMMEM
Ejemplo: combinación de rotación y traslación (1) Rotación Traslación Respecto del Sistema Fijo Un sistema OUVW ha sido girado 90 alrededor del eje OX y posteriormente trasladado un vector p(8,-4,12) con respecto al sistema OXYZ. Calcular las coordenadas (r x ,r y ,r z) del vector r con coordenadas r uvw (-3,4,-11). SOLUCIÓN: 0 1 0 cos T p Rotx( ) 0 sen 0 0
0
p x
sen p y cos p z 0 1
r x 1 0 r y r z 0 1 0
8 3
5 4 7 0 1 4 1 0 12 11 16 0 0 1 1 1 0
0
UCSM-EPIMMEM
Ejemplo composición de rotación y traslación (2) Traslación Rotación Respecto del Sistema Fijo Un sistema OUVW ha sido trasladado un vector p(8,-4,12) con respecto al sistema OXYZ y girado 90 alrededor del eje OX . Calcular las coordenadas (r x ,r y ,r z) del vector r de coordenadas r uvw (-3,4,-11). SOLUCIÓN: 0 1 0 cos Rotx( )Tp 0 sen 0 0
sen p ycos p z sen cos p y sen p z cos 0 1 0
p x
r x 1 0 r y r z 0 1 0
8 3
5 4 1 0 1 12 4 11 0 1 0 0 0 1 1 1 0
0
UCSM-EPIMMEM
Composición general de MTH (I)
Si las Transformaciones son definidas sobre el sistema fijo (OXYZ) PREMULTIPLICACIÓN
EJEMPLO: • Obtener la matriz de transformación que representa al sistema O'UVW obtenido a partir del sistema OXYZ mediante – – –
giro de ángulo -π alrededor del eje OX, traslación de vector pxyz(5,5,10) giro de π sobre el eje OZ
0 1 1 0 T Rotz( ) T(p) Rotx( ) 0 0 0 0
0 0 1 5 1 0 0 5 0 0 0 1 0 5 0 0 1 0 1 0 0 0 1 10 0 1 0 0 0 1 0 10 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 1
0 0
5 1
0
0 0
UCSM-EPIMMEM
Composición general de MTH (II)
Transformación definidas sobre el sistema móvil (OUVW) POSMULTIPLICACIÓN
EJEMPLO: •
Obtener la matriz de transformación que representa las siguientes transformaciones: – – –
Traslación de un vector pxyz(-3,10,10); giro de -90 sobre el eje O'U del sistema trasladado giro de 90 sobre el eje O'V del sistema girado.
1 0 T T(p) Rotx( ) Roty( ) 0 0
0 0 3 1
0 0 1 0 10 0 0 1 0 0 1 0 0 1 0 0 1 10 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 0 1 0 0 0 1 0 0 0
0 0 0
0 1 0
1 3
0 10
0 10 0 1
UCSM-EPIMMEM
Reglas de composición de MTH Si el sistema O´UVW se obtiene mediante transformaciones definidas con respecto al: Sistema fijo OXYZ, las MTH de cada transformación se deben premultiplicar – Sistema móvil O´UVW, las MTH de cada transformación se deben postmultiplicar –
UCSM-EPIMMEM
Interpretación geométrica de las MTH n x n y T n z 0 • • • •
o x o y o z 0
a x p x
a y p y n o a p p a z z 0 0 0 1 0 1
p representa la posición del origen de O'UVW con respecto del sistema OXYZ. n representa las coordenadas del eje O'U del sistema O'UVW con respecto del sistema OXYZ. o representa las coordenadas del eje O’V del sistema O'UVW con respecto del sistema OXYZ. a representa las coordenadas del eje O'W del sistema O'UVW con respecto del sistema OXYZ.
UCSM-EPIMMEM
Interpretación geométrica de las MTH. Aplicación en un robot Z
{R}
Y
{H}
o X
n a
n x o x a x p x o a n y y y p y n o a p T n z o z a z p 0 0 0 1 z 0 0 0 1
La localización del extremo del robot respecto a su base queda definida asociando a la base del robot un sistema de referencia fijo {R}=(OXYZ) y al extremo un sistema de referencia {H} que se mueva con él. Expresado en la base {R}, el origen de {H} está en el punto p y los vectores directores de {H} son n, o, a escogidos de modos que: • a: vector en la dirección de aproximación del extremo del robot a su destino (approach). • o: vector perpendicular a a en el plano definido por la pinza del robot. • n: vector que forme terna ortogonal con los dos anteriores.