Vous êtes sur la page 1sur 9

Universidad Mayor de San Simón

Facultad de Ciencias y Tecnología


Ingeniería Electromecánica

Estudiantes:
Álvarez Henrry
Barrios Noel
Gallo Orellana Carlos
Senzano Mauricio
Victoria Wilber
Materia:
Robótica
Docente:
Ing. Marco Arancibia
FECHA:
28/09/2017
Cochabamba - Bolivia
Matrices de transformación homogénea
Introducción.-
A fin de simplificar y reducir un espacio en un sistema de control automático de computador se
pueden representar las rotaciones y traslaciones de sistemas coordenados o vectores en una sola
matriz que contenga la información de los movimientos que se requieran, esta matriz se llama
Matriz de transformación homogénea.
La matriz de transformación homogénea consta de una matriz de rotación 3x3, una matriz de
traslación de 3x1, una matriz de perspectiva 1x3, y una matriz escalar unitario 1x1. Siendo T la
matriz homogénea, tenemos:
𝑟𝑜𝑡𝑎𝑐𝑖ó𝑛 3𝑥3 𝑡𝑟𝑎𝑠𝑙𝑎𝑐𝑖ó𝑛 1𝑥3
T=[ ]
𝑝𝑒𝑟𝑠𝑝𝑒𝑐𝑡𝑖𝑣𝑎 1𝑥3 𝑒𝑠𝑐𝑎𝑙𝑎 𝑢𝑛𝑖𝑡𝑎𝑟𝑖𝑎 1𝑥1
Donde se considera a la perspectiva una matriz nula [0 0 0] y la escala [1]
Las matrices de transformación homogénea se utilizan para:

 Representar la posición y orientación de un sistema girado y trasladado con respecto a un


sistema fijo.
 Transformar un vector expresado en coordenadas movibles y su representación en un
sistema fijo.
Rx Ru
Ry Rv
[ ] = 𝑇[ ]
Rz Rw
1 1
 Rotar y trasladar un vector con respecto a un sistema fijo.
R′x Rx
R′y Ry
[ ] = 𝑇[ ]
R′z Rz
1 1

 Traslación.-
Si se desea trasladar el sistema OXYZ hasta el sistema OUVW que se encuentra a una posición p =
px 𝑖̂ + py 𝑗̂ + pz 𝑘̂ la matriz homogénea se denominará de la siguiente manera:

1 0 0 𝑃𝑥
0 1 0 𝑃𝑦
T(p) = [ ]
0 0 1 𝑃𝑧
0 0 0 1
Un vector cualquiera r, representado en OUVW por ruvw , tendrá como coordenadas en el sistema
OXYZ:
Rx 1 0 0 𝑃𝑥 Ru Ru + Px
Ry 0 1 0 𝑃𝑦 Rv Rv + Py
[ ]= [ ][ ] = [ ]
Rz 0 0 1 𝑃𝑧 Rw Rw + Pz
1 0 0 0 1 1 1

Ejercicio nº 1: Tenemos un sistema O´UVW que está trasladado un vector p (7,-3,11) con respecto
del sistema OXYZ. Calcular las coordenadas (rx, ry ,rz) del vector r cuyas coordenadas con respecto al
sistema O´UVW son ruvw (-1,8,-3).

Rx 1 0 0 𝑃𝑥 Ru
Ry 0 1 0 𝑃𝑦 Rv
[ ]= [ ][ ]
Rz 0 0 1 𝑃𝑧 Rw
1 0 0 0 1 1
Rx 1 0 0 7 −1 6
Ry 0 1 0 −3 8 5
[ ]= [ ][ ] = [ ]
Rz 0 0 1 11 −3 8
1 0 0 0 1 1 1
Ejercicio nº2: Calcular el vector r’xyz resultante de trasladar al vector rxyz(4,5,12) según la
transformación T(p) con p(7,-4,12).

R′x 1 0 0 𝑃𝑥 Rx
R′y 0 1 0 𝑃𝑦 Ry
[ ]=[ ][ ]
R′z 0 0 1 𝑃𝑧 Rz
1 0 0 0 1 1

R′x 1 0 0 7 4 11
R′y 0 1 0 −4 5 1
[ ]= [ ][ ] = [ ]
R′z 0 0 1 12 12 24
1 0 0 0 1 1 1

 Rotación.-
Si se desea rotar el sistema OXYZ en torno a uno de sus ejes, resultando en un nuevo sistema
OUVW la matriz T se definirá de tres formas diferentes, cada una representando la rotación en
torno a uno de sus ejes, siendo estas formas:

1 0 0 0
0 cos 𝛼 − sin 𝛼 0
Rotación con respecto al eje x T (x, α) = [ ]
0 sin 𝛼 cos 𝛼 0
0 0 0 1

cos ∅ 0 sin ∅ 0
0 1 0 0
Rotación con respecto al eje y T (y, ∅) = [ ]
− sin ∅ 0 cos ∅ 0
0 0 0 1

cos θ − sin θ 0 0
sin θ cos θ 0 0
Rotación con respecto al eje z T (z, θ) = [ ]
0 0 1 0
0 0 0 1
Ejercicio nº3: Tenemos un sistema OUVW que se encuentra girado -90º alrededor del eje OZ con
respecto al sistema OXYZ. Calcular las coordenadas del vector rxyz si ruvw=[-2,7,3].

Rx cos θ − sin θ 0 0 Ru
Ry sin θ cos θ 0 0 Rv
[ ]= [ ][ ]
Rz 0 0 1 0 Rw
1 0 0 0 1 1
Rx cos −90 − sin −90 0 0 −2
Ry sin −90 cos −90 0 0 7
[ ]= [ ][ ]
Rz 0 0 1 0 3
1 0 0 0 1 1
Rx 0 1 0 0 −2 7
Ry −1 0 0 0 7 2
[ ]= [ ][ ] = [ ]
Rz 0 0 1 0 3 3
1 0 0 0 1 1 1
Ejercicio nº4: Tenemos un sistema OUVW que se encuentra girado 180º alrededor del eje OY con
respecto al sistema OXYZ. Calcular las coordenadas del vector rxyz si ruvw=[21,17,-13].
Rx cos ∅ 0 sin ∅ 0 Ru
Ry 0 1 0 0 Rv
[ ]= [ ][ ]
Rz − sin ∅ 0 cos ∅ 0 Rw
1 0 0 0 1 1
Rx cos 180 0 sin 180 0 21
Ry 0 1 0 0 17
[ ]= [ ][ ]
Rz − sin 180 0 cos 180 0 −13
1 0 0 0 1 1
Rx −1 0 0 0 21 −21
Ry 0 1 0 0 17 17
[ ]= [ ][ ]= [ ]
Rz 0 0 −1 0 −13 13
1 0 0 0 1 1 1
Ejercicio nº5: Tenemos un sistema OUVW que se encuentra girado 45º alrededor del eje OX con
respecto al sistema OXYZ. Calcular las coordenadas del vector rxyz si ruvw=[5,8,-8].
Rx 1 0 0 0 Ru
Ry 0 cos 𝛼 − sin 𝛼 0 Rv
[ ]= [ ][ ]
Rz 0 sin 𝛼 cos 𝛼 0 Rw
1 0 0 0 1 1
Rx 1 0 0 0 5
Ry 0 cos 45 − sin 45 0 8
[ ]= [ ][ ]
Rz 0 sin 45 cos 45 0 −8
1 0 0 0 1 1
Rx 1 0 0 0 5 5
Ry 0 0.71 −0.71 0 8 11.31
[ ]= [ ][ ] = [ ]
Rz 0 0.71 0.71 0 −8 0
1 0 0 0 1 1 1
 Combinación de rotaciones y traslaciones.-
Las matrices homogéneas permiten representar simultáneamente rotación y traslación, ya sea, de
un vector o un sistema en general usando la matriz de rotación 3x3 y la matriz de posición 1x3.
Cabe destacar que no es lo mismo rotar y trasladar que trasladar y rotar, y eso se demuestra
matemáticamente ya que la multiplicación de matrices no es conmutativa, de igual manera estos
actos.

o Traslación y rotación.-
Esta dada por:
1 0 0 𝑃𝑥 1 0 0 0 1 0 0 𝑃𝑥
0 1 0 𝑃𝑦 0 cos 𝛼 − sin 𝛼 0 0 cos 𝛼 − sin 𝛼 𝑃𝑦
T(p,(x,α))=T(p)T(x,α)= [ ][ ]=[ ]
0 0 1 𝑃𝑧 0 sin 𝛼 cos 𝛼 0 0 sin 𝛼 cos 𝛼 𝑃𝑧
0 0 0 1 0 0 0 1 0 0 0 1
1 0 0 𝑃𝑥 cos ∅ 0 sin ∅ 0 cos ∅ 0 sin ∅ 𝑃𝑥
0 1 0 𝑃𝑦 0 1 0 0 0 1 0 𝑃𝑦
T(p,(y, ∅))=T(p)T(y, ∅)= [ ][ ]=[ ]
0 0 1 𝑃𝑧 − sin ∅ 0 cos ∅ 0 − sin ∅ 0 cos ∅ 𝑃𝑧
0 0 0 1 0 0 0 1 0 0 0 1
1 0 0 𝑃𝑥 cos θ − sin θ 0 0 cos θ − sin θ 0 𝑃𝑥
0 1 0 𝑃𝑦 sin θ cos θ 0 0 sin θ cos θ 0 𝑃𝑦
T(p,(z, 𝜃))=T(p)T(z, 𝜃)= [ ][ ]=[ ]
0 0 1 𝑃𝑧 0 0 1 0 0 0 1 𝑃𝑧
0 0 0 1 0 0 0 1 0 0 0 1

Ejercicio nº6: 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 (rx, ry ,rz) del vector r con coordenadas
ruvw(-3,4,-1)
Rx 1 0 0 𝑃𝑥 Ru
Ry 0 cos 𝛼 − sin 𝛼 𝑃𝑦 Rv
[ ]= [ ][ ]
Rz 0 sin 𝛼 cos 𝛼 𝑃𝑧 Rw
1 0 0 0 1 1
Rx 1 0 0 8 −3
Ry 0 cos 90 − sin 90 −4 4
[ ]= [ ][ ]
Rz 0 sin 90 cos 90 12 −11
1 0 0 0 1 1
Rx 1 0 0 8 −3 5
Ry 0 0 −1 −4 4 7
[ ]= [ ][ ]=[ ]
Rz 0 1 0 12 −11 16
1 0 0 0 1 1 1
Ejercicio nº7: Un sistema OUVW ha sido trasladado un vector p(-3,4,7) con respecto al sistema OXYZ
y girado -90º alrededor del eje OZ. Calcular las coordenadas (rx, ry ,rz) del vector r con coordenadas
ruvw(13,14,17)
Rx cos θ − sin θ 0 𝑃𝑥 Ru
Ry sin θ cos θ 0 𝑃𝑦 Rv
[ ]= [ ][ ]
Rz 0 0 1 𝑃𝑧 Rw
1 0 0 0 1 1
Rx cos −90 − sin −90 0 −3 13
Ry sin −90 cos −90 0 4 14
[ ]= [ ][ ]
Rz 0 0 1 7 17
1 0 0 0 1 1
Rx 0 1 0 −3 13 11
Ry −1 0 0 4 14 −9
[ ]= [ ][ ] = [ ]
Rz 0 0 1 7 17 24
1 0 0 0 1 1 1
o Rotación y traslación.-
Esta dada por:
1 0 0 0 1 0 0 𝑃𝑥
0 cos 𝛼 − sin 𝛼 0 0 1 0 𝑃𝑦
T((x,α),p)= T(x,α) T(p)=[ ][ ]
0 sin 𝛼 cos 𝛼 0 0 0 1 𝑃𝑧
0 0 0 1 0 0 0 1

1 0 0 𝑃𝑥
0 cos 𝛼 − sin 𝛼 𝑃𝑦 cos 𝛼 − 𝑃𝑧 sin 𝛼
T((x, α), p) = T(x, α) T(p) = [ ]
0 sin 𝛼 cos 𝛼 𝑃𝑦 sin 𝛼 + 𝑃𝑧 cos 𝛼
0 0 0 1

cos ∅ 0 sin ∅ 0 1 0 0 𝑃𝑥
0 1 0 0 0 1 0 𝑃𝑦
T((y, ∅),p)= T(y, ∅)T(p) = [ ][ ]
− sin ∅ 0 cos ∅ 0 0 0 1 𝑃𝑧
0 0 0 1 0 0 0 1
cos ∅ 0 sin ∅ 𝑃𝑥 cos ∅ + 𝑃𝑦 sin ∅
0 1 0 𝑃𝑦
T((y, ∅),p)= T(y, ∅)T(p) = [ ]
− sin ∅ 0 cos ∅ 𝑃𝑧 cos ∅ − 𝑃𝑥 sin ∅
0 0 0 1

cos θ − sin θ 0 0 1 0 0 𝑃𝑥
sin θ cos θ 0 0 0 1 0 𝑃𝑦
T((z, 𝜃),p)= T(z, 𝜃) T(p)= [ ][ ]
0 0 1 0 0 0 1 𝑃𝑧
0 0 0 1 0 0 0 1
cos θ − sin θ 0 𝑃𝑥 cos θ − 𝑃𝑦 sin θ
sin θ cos θ 0 𝑃𝑥 sin θ + 𝑃𝑦 cos θ
T((z, 𝜃), p) = T(z, 𝜃) T(p) = [ ]
0 0 1 𝑃𝑧
0 0 0 1
Ejercicio nº8: Un sistema OUVW ha sido girado 90º alrededor del eje OX y trasladado un vector p(8,-
4,12) con respecto al sistema OXYZ . Calcular las coordenadas (rx, ry ,rz) del vector r con coordenadas
ruvw(-3,4,-1)

Rx 1 0 0 𝑃𝑥 Ru
Ry 0 cos 𝛼 − sin 𝛼 𝑃𝑦 cos 𝛼 − 𝑃𝑧 sin 𝛼 Rv
[ ]= [ ][ ]
Rz 0 sin 𝛼 cos 𝛼 𝑃𝑦 sin 𝛼 + 𝑃𝑧 cos 𝛼 Rw
1 0 0 0 1 1
Rx 1 0 0 8 −3
Ry 0 cos 90 − sin 90 (−4 ∗ cos 90) − (12 ∗ sin 90) 4
[ ]= [ ][ ]
Rz 0 sin 90 cos 90 (−4 ∗ sin 90) + (12 ∗ cos 90) −11
1 0 0 0 1 1
Rx 1 0 0 8 −3
Ry 0 0 −1 (−4 ∗ 0) − (12 ∗ 1) 4
[ ]= [ ][ ]
Rz 0 1 0 (−4 ∗ 1) + (12 ∗ 0) −11
1 0 0 0 1 1
Rx 1 0 0 8 −3 5
Ry 0 0 −1 −12 4 10
[ ]= [ ][ ]=[ ]
Rz 0 1 0 −4 −11 48
1 0 0 0 1 1 1

Ejercicio nº9: Un sistema OUVW ha sido girado -90º alrededor del eje OZ y trasladado un vector p(-
3,4,7) con respecto al sistema OXYZ. Calcular las coordenadas (rx, ry ,rz) del vector r con
coordenadas ruvw(13,14,17)

Rx cos θ − sin θ 0 𝑃𝑥 cos θ − 𝑃𝑦 sin θ Ru


Ry sin θ cos θ 0 𝑃𝑥 sin θ + 𝑃𝑦 cos θ Rv
[ ]= [ ][ ]
Rz 0 0 1 𝑃𝑧 Rw
1 0 0 0 1 1
Rx cos −90 − sin −90 0 (−3 ∗ cos −90) − (4 ∗ sin −90) 13
Ry sin −90 cos −90 0 (−3 ∗ sin −90) + (4 ∗ cos −90) 14
[ ]= [ ][ ]
Rz 0 0 1 7 17
1 0 0 0 1 1
Rx 0 1 0 (−3 ∗ 0) − (4 ∗ −1) 13
Ry −1 0 0 (−3 ∗ −1) + (4 ∗ 0) 14
[ ]= [ ][ ]
Rz 0 0 1 7 17
1 0 0 0 1 1

Rx 0 1 0 4 13 18
Ry −1 0 0 3 14 −10
[ ]= [ ][ ] = [ ]
Rz 0 0 1 7 17 24
1 0 0 0 1 1 1
 Composición de matrices homogéneas.-

Se ha descrito que las matrices homogéneas representan la rotación y la traslación de un sistema


de referencia, extendiendo el uso de las matrices homogéneas se pueden componer para que
describan diversos giros y traslaciones consecutivas de un sistema determinado.
Una composición de matrices homogéneas se realiza multiplicando matrices básicas de rotación y
traslación, estas multiplicaciones deben llevar un orden determinado, debido a que el producto de
matrices no es conmutativo y el resultado mostrará otra composición.
Para obtener la matriz de configuración de un sistema fijo de referencia, basta con invertir el
orden de las operaciones que se desea aplicar; por ejemplo si se necesita trasladar un sistema,
luego rotar en torno al eje OX y luego rotar en torno al eje OY se debe iniciar la multiplicación de
matrices básicas con la rotación en torno al eje OY, Luego la rotación en torno al eje OX y por
último la traslación.
Ejercicio nº10: Un sistema OUVW necesita trasladarse a un vector p(-3,4,7) con respecto al sistema
OXYZ, luego girar -90º alrededor del eje OZ y luego girar 90º alrededor del eje OY. Calcular las
coordenadas (rx, ry ,rz) del vector r con coordenadas ruvw(13,14,17).

cos ∅ 0 sin ∅ 0 cos θ − sin θ 0 0 1 0 0 𝑃𝑥


0 1 0 0 sin θ cos θ 0 0 0 1 0 𝑃𝑦
Ta= T(y, ∅)* T(z, 𝜃)* T(p)= [ ][ ][ ]
− sin ∅ 0 cos ∅ 0 0 0 1 0 0 0 1 𝑃𝑧
0 0 0 1 0 0 0 1 0 0 0 1

cos 90 0 sin 90 0 cos −90 − sin −90 0 0


0 1 0 0 sin −90 cos −90 0 0
Ta=T(y,90)*T(x,-90)*T(P)=[ ]∗[ ]∗
− sin 90 0 cos 90 0 0 0 1 0
0 0 0 1 0 0 0 1
1 0 0 −3
0 1 0 4
*[ ]
0 0 1 7
0 0 0 1

0 0 1 0 0 1 0 0 1 0 0 −3
0 1 0 0 −1 0 0 0 0 1 0 4
Ta=T(y,90)*T(x,-90)*T(P)=[ ]∗[ ]∗[ ]
−1 0 0 0 0 0 1 0 0 0 1 7
0 0 0 1 0 0 0 1 0 0 0 1

0 0 1 0 1 0 0 −3 0 0 1 7
−1 0 0 0 0 1 0 4 −1 0 0 4
Ta=T(y,90)*T(x,-90)*T(P)=[ ][ ]=[ ]
0 −1 0 0 0 0 1 7 0 −1 0 −4
0 0 0 1 0 0 0 1 0 0 0 1

Rx 0 0 1 7 13 24
Ry −1 0 0 4 14 −9
[ ]= [ ][ ] = [ ]
Rz 0 −1 0 −4 17 −18
1 0 0 0 1 1 1
Conclusiones.-
En conclusión; las matrices de transformación homogénea mejoran la representación de
movimientos ya que permite identificar rápidamente su posición o movimiento y describir el
siguiente punto o movimiento. Pero tiene la dificultad de realizar muchas operaciones matemáticas
secuenciales que en el tema de programación obliga a los sistemas computacionales un trabajo
exigente.

Vous aimerez peut-être aussi