Vous êtes sur la page 1sur 50

Cinemática del

Robot Industrial

M.C. Miguel de J. Ramírez C., CMfgT


Automatización de Sistemas de Manufactura

Adaptación: Gilberto Reynoso


Estructura Mecánica del Robot Industrial
Mecánicamente, un robot es una cadena cinemática formada de
eslabones unidos mediante articulaciones que permiten un
movimiento relativo entre cada dos eslabones consecutivos.

La forma física de la mayoría de los robots industriales es


similar a la de la anatomía del brazo humano.
Tipos de Articulaciones en un Robot
Existen varios tipos de articulaciones, pero en la práctica se
emplean mayoritariamente articulaciones prismáticas y de
rotación.

Articulación Lineal o Prismática Articulación Rotacional o Revoluta


(variable d) (1 Grado de libertad) (variable θ) (1 Grado de libertad)
La Matriz de Transformación Homogénea
Es una matriz T de 4 x 4 que representa la transformación de un
vector de un sistema de coordenadas a otro.

Esta matriz esta compuesta por 4 submatrices:

R3 x 3 SubMatriz de Rotación
P3x1 SubMatriz de Traslación  R3 x3 P3 x1 
T 
 F1 x 3 E1x1 
F1x 3 SubMatriz de Perspectiva

E1x1 SubMatriz de Escalado Global


En robótica, generalmente se considera la submatriz de perspectiva
como nula y la submatriz de escalado global como uno.

Un vector Homogéneo siempre tendrá 4 dimensiones.


La Matriz de Transformación Homogénea
La matriz de transformación Homogénea sirve para :

a) Conocer las coordenadas rx , ry , rz del vector r en el sistema O´XYZ a


partir de sus coordenadas r en el sistema O´UVW.
u , rv , rw

rx   ru 
r  r 
 y  T  v
 rz  rw 
   
1  1

b) Expresar las rotaciones y traslaciones de un vector con respecto a un


sistema fijo O´XYZ.
rx   rx 
r   r 
 y  T  y 
 rz   rz 
   
1
  1 
Matriz de Transformación Homogénea de la Traslación

Forma general 1 0 0 Px 
0 1 0 Py 
T ( P)  
0 0 1 Pz 
 
0 0 0 1
a) rx  1 0 0 Px   ru   ru  Px 
r  0 1 0 Py   r  r  P 
 y     v v y

 rz  0 0 1 Pz  rw  rw  Pz 
       
 1  0 0 0 1 1
   1 

b) rx  1 0 0 Px   rx   rx  Px 
r   0 1 0 Py  r  r  P 
 y    y   y y

 rz  0 0 1 Pz   rz   rz  Pz 
       
 1  0 0 0 1 1
   1 
Matriz de Transformación Homogénea de la Rotación
1 0 0 0
 0 cos sin 0
T (x ,  )   
Rotación en X
 0 sin  cos  0
 
0 0 0 1
 cos 0 sin  0
 0 1 0 0
T ( y, )    Rotación en Y
sin  0 cos  0
 
 0 0 0 1
cosθ  sinθ 0 0
 sinθ cosθ 0 0
T ( z , )    Rotación en Z
 0 0 1 0
 
 0 0 0 1
EJERCICIOS [ 1 ]
EJERCICIOS
EJERCICIOS [ 1 ]
Composición de Matrices Homogéneas
De manera general:

3. Si el sistema O´UVW se obtiene mediante rotaciones y traslaciones


definidas con respecto al sistema fijo O´XYZ, la matriz homogénea
que representa cada transformación se deberá PREMULTIPLICAR
sobre las matrices de las transformaciones previas.

5. Si el sistema O´UVW se obtiene mediante rotaciones y traslaciones


definidas con respecto al sistema móvil, la matriz homogénea que
representa cada transformación se deberá POSMULTIPLICAR
sobre las matrices de las transformaciones previas.

Por ejemplo, la transformación:

T  T ( x,  ) T ( z ,  ) T ( y ,  ) Se Premultiplica
Es igual a decir:

T  T (u ,  ) T ( w,  ) T (v,  ) Se Posmultiplica
TAREA

1. Demostrar que las operaciones de transformaciones no son


conmutativas, para ello encuentre las matrices de transformación de :

T ( x,  ), p  T  p , ( x,  ) 
T ( y ,  ), p  T  p , ( y,  ) 
T ( z,  ), p  T  p , ( z , ) 

2. Si tenemos que la matriz de transformación homogénea T es igual a:

n x ox ax Px 
n y oy ay Py 
T  
n z oz az Pz 
0 0 0 1
TAREA (Cont…)
Y si sabemos que n o a  es una matriz ortonormal con la propiedad
de:

n o a 1
 n o a 
T

Demostrar que la inversa de la matriz de transformación homogénea T


corresponde a la siguiente expresión:

nx ny nz  nT Pxyz 
o oy oz  oT Pxyz 
T  x
1

a x ay az  a Pxyz 
T

 0 0 0 1 
Con lo anterior podemos tener que si:
rxyz  T ruvw
Entonces:
ruvw  T 1 rxyz
EJERCICIOS

1. Se quiere obtener la matriz de transformación que representa al


sistema O´UVW obtenido a partir del sistema O´XYZ mediante un
giro de ángulo de -90o alrededor del eje OX, de una traslación de
vector Pxyz(5,5,10) y un giro de 90o sobre el eje OZ.

6. Se quiere obtener la matriz de transformación que representa las


siguientes transformaciones al sistema fijo O´XYZ: traslación de
vector Pxyz(-3,10,10), giro de ángulo de -90o alrededor del eje OU
del sistema trasladado y giro de 90o sobre el eje OV del sistema
girado.
Representación Geométrica de la Matriz
Homogénea
En un robot, el sistema coordenado final es referido como el sistema
coordenado de la herramienta etiquetado como On X n Yn Z n . Los vectores
unitarios de ese sistema se denominan como n o a respectivamente .

Donde: n  o  a  1

a  Es el vector en la dirección de aproximación de la herramienta (approach).


o  Es la dirección de abrir y cerrar de la herramienta (open-close).
n  Es la dirección normal al plano formado por las direcciones a y o .
Representación Geométrica de la Matriz
Homogénea

La aplicación de la matriz de transformación total del robot, desde el


sistema coordenado de la base hasta el sistema coordenado de la
herramienta, se representa de la siguiente forma:

n x ox ax Px   rn 
n oy ay Py   ro 
rxyz   y  
n z oz az Pz  ra 
  
0 0 0 1  1 
Representación Geométrica de la Matriz
Homogénea
El vector columna P de la matriz de tranformación representa la posición
del origen del sistema coordenado de la herramienta con respecto al
sistema coordenado de la base del robot. A este orígen también se le llama
Tool Center Point (TCP).

El vector columna n de la matriz de tranformación representa las


coordenadas del eje N del sistema coordenado de la herramienta con
respecto al sistema coordenado de la base.

El vector columna o de la matriz de tranformación representa las


coordenadas del eje O del sistema coordenado de la herramienta con
respecto al sistema coordenado de la base.

El vector columna a de la matriz de tranformación representa las


coordenadas del eje A del sistema coordenado de la herramienta con
respecto al sistema coordenado de la base.
El problema Cinemático

La cinemática del robot estudia el movimiento del mismo con respecto a un


sistema de referencia. La cinemática se interesa por la descripción analítica del
movimiento espacial del robot como una función del tiempo, y en particular
por las relaciones entre la posición y la orientación de la herramienta del robot
con los valores que toman sus coordenadas de sus articulaciones.

Existen dos problemas fundamentales a resolver con respecto a la cinemática


del robot:

A) Cinemática Directa. Consiste en determinar la posición y orientación del


extremo final del robot con respecto al sistema de la base del robot a
partir de conocer los valores de las articulaciones y los parámetros
geométricos.

B) Cinemática Inversa. Resuelve la configuración que debe adoptar el robot


para una posición y orientación conocidas del extremo.
El problema Cinemático

Cinemática Directa (ángulos para encontrar posición):


Se conoce a) La longitud de cada eslabón.
b) El ángulo de cada articulación.

Se busca La posición de cualquier punto


(coordenadas con respecto a la base)

Cinemática Inversa (posición para encontrar ángulos):


Se conoce a) La longitud de cada eslabón.
b) La posición de cualquier punto
(coordenadas con respecto a la base).

Se busca El ángulo de cada articulación necesitados para


obtener la posición.
Cinemática Directa
El problema Cinemático Directo
El problema cinémático directo se reduce a encontrar la matriz de
transformación homogénea (T) que relacione la posición y orientación
del extremo del robot respecto a su sistema de referencia fijo (base del
robot). La matriz T está en función de los parámetros de las
articulaciones del robot. Para un robot de n grados de libertad tenemos:
xf x (q1 ,q 2 ,q 3 , q4 , q5 ,  qn )
yf y ( q1 , q 2 ,q 3 , q 4 , q5 , qn )
z  f z ( q1 ,q 2 ,q 3 , q4 , q5 ,  qn )
  f  (q1 ,q 2 ,q 3 , q4 , q5 ,  qn )
 f  ( q1 , q 2 ,q 3 , q4 , q5 , q n )
 f  ( q , q ,q , q , q , q )
Donde: 1 2 3 4 5 n

q1n = Son las variables de las articulaciones.


Para articulaciones revolutas las variables son ángulos.
Para articulaciones prismáticas las variables son distancias.
x, y , z = Coordenadas de la posición del extremo del robot.
 ,  ,  = Ángulos de la orientación del extremo del robot.
Método Geométrico
Las funciones mencionadas pueden ser encontradas mediante métodos
geométricos para el caso de robots de 2 grados de libertad (cada
relación articulación-eslabón constituye un grado de libertad:

x  l1 cos  1  l 2 cos( 1   2 )
y  l1 sen1  l 2 sen (1   2 )
Método de las matrices de transformación homogéneas
Para robots de más de 2 grados de libertad es difícil aplicar métodos
geométricos para la solución de su cinemática directa.

A cada eslabón se le asocia un sistema coordenado y utilizando


transformaciones homogéneas es posible representar las rotaciones y
traslaciones relativas entre los diferentes eslabones que componen el robot.
Siendo la matriz :
i
A i = número de eslabón
i 1
La matriz de transformación homogénea que representa la posición y
orientación relativa entre los sistemas asociados a dos eslabones
consecutivos del robot.

Se puede representar de forma parcial o total la cadena cinemática que


forma el robot:
n
n
A 
0  Aii1
i 1
Método de las matrices de transformación homogéneas

Para el caso de un robot de 6 ejes, su cadena cinemática queda


representada por la siguiente matriz de transformación homogénea:

6 1 2 3 4 5 6
T  A  A A A A A A
0 0 1 2 3 4 5
Algoritmo de Denavit-Hartenberg
En 1955 Denavit y Hartenberg propusieron un método matricial que permite
establecer de manera sistemática un sistema de coordenadas. La
representación de Denavit-Hartenberg (D-H) establece que seleccionándose
adecuadamente los sistemas de coordenadas asociados a cada eslabón, será
posible pasar de uno al siguiente mediante 4 transformaciones básicas que
dependen exclusivamente de las características geométricas del eslabón.

Reduciéndose al siguiente patrón de transformaciones que permiten


relacionar el sistema de referencia del elemento i con respecto al sistema del
elemento i-1:

• Rotación alrededor del eje un ángulo 


Z
i  1 i

• Traslación a lo largo de Z
una distancia d
i
i  1

• Traslación a lo largo de X
una distancia
a
i i

• Rotación alrededor del eje un ángulo 


X
i i
Algoritmo de Denavit-Hartenberg
i
A  T ( z ,  ) T ( 0, 0, d ) T ( a , 0, 0 ) T ( x ,  )
i 1 i i i i

Desarrollando la expresión:

cos  i  sen  i 0 0 1 0 0 0  1 0 0 ai  1 0 0 0
 sen cos  0 0 0 1 0 0   0 1 0 0  0 cos  i  sen i 0
Ai 1 
i  i i

 0 0 1 0 0 0 1 di   0 0 1 0  0 sen i cos  i 0
    
 0 0 0 1 0 0 0 1  0 0 0 1  0 0 0 1
Obtenemos la expresión general de DH, donde  , d , a ,  son los parámetros
i i i i
DH del eslabón i :
cos  i  cos  i sen i sen i sen i ai cos  i 
 sen cos  i cos  i  sen i cos  i ai sen i 
Aii1  i 
 0 sen i cos  i di 
 
 0 0 0 1 
Algoritmo de Denavit-Hartenberg
i
O y O
Para que la matriz Ai 1
relacione los sistemas coordenados i i  1 es
necesario que los sistemas coordenados se determinen mediante los
siguientes pasos:

3. Numerar y etiquetar el eslabón fijo (base) como 0.


4. Numerar y etiquetar los eslabones móviles desde 1 hasta el n eslabón
móvil.
5. Localizar y numerar el eje de cada articulación y etiquetarla
comenzando desde Z hasta Z . Si la articulación es rotativa, el eje
0 n 1
será su propio eje de giro. Si la articulación es prismática, el eje será a
lo largo del cual se produce el desplazamiento.

Establecimiento del sistema coordenado de la base:

4. Establecer el sistema coordenado de la base estableciendo el origen


como O en cualquier punto del eje Z . Arbitrariamente establecer los
0 0
ejes respetando la regla de la mano derecha.
X yY
0 0
Algoritmo de Denavit-Hartenberg

Establecimiento de los sistemas coordenados de las demás articulaciones:

5. Localizar el origen Oi :

a) En la intersección del eje


Z
i
con la línea normal común a la
intersección
Z y Z de
i i 1
.
b) En la intersección de Z i yZ
i 1
, si es que Z i y Z i  1 se intersectan.
c) En la articulación i, si Z yZ son paralelos.
i i 1
6. Establecer X :
i

a) A lo largo de la línea normal común entre los ejes Z y Z que pasa


i i 1
por O .
i
b) En la dirección normal al plano formado por Z y Z , si es que estos
i i 1
dos ejes se intersectan.

7. Establecer Y de acuerdo a la regla de la mano derecha.


i
Algoritmo de Denavit-Hartenberg
Establecimiento del sistema coordenado de la herramienta:

3. Localizar el sistema coordenado n-ésimo en el extremo del robot. Si es una


articulación rotacional, establecer Z n a lo largo de la dirección Z n  1 y
establecer el origen On de la manera que más convenga a lo largo de Z ,
n
preferente en el centro de la pinza o la punta de cualquier herramienta que
el robot tenga montada.

5. Establecer X n y Yn de acuerdo a la regla de la mano derecha. Si la


herramienta es una pinza, es común establecer el eje Y entre los “dedos”
n
de la pinza y X será ortonormal a Z y Y .
n n n

Obtener las Matrices de Transformación Homogéneas

10. Crear una tabla con los parámetros D-H de los eslabones:

Eslabón i  d a 
i i i i
Algoritmo de Denavit-Hartenberg
Algoritmo de Denavit-Hartenberg
Donde:

 = Es el ángulo formado por los ejes X i  1 y Xmedido en un plano


i i
perpendicular a Z utilizando la regla de la mano derecha. Este es
i 1
un parámetro variable en articulaciones rotatorias.

d
i
= Es la distancia a lo largo del ejeZ i  1 desde el origen Oi  1 hasta la
intersección del eje X i con el eje Z i  1. Este es un parámetro variable
en articulaciones prismáticas.

a = Para articulaciones rotatorias: es la distancia a lo largo delXeje


i i
desde elOorigen hasta la intersecciónXdel eje con
Z el eje
i i i 1
.
Para articulaciones prismáticas: es la distancia más corta entre los ejes
 . Z yZ
i i i 1
= Es el ángulo formado
X por los ejes medido en un plano
i
perpendicular al eje utilizando la regla de la mano derecha.
Algoritmo de Denavit-Hartenberg

i
A
3. Realizar la matriz D-H de transformación homogénea i  1 para cada
eslabón de acuerdo a los datos de la tabla del punto anterior.

12. Obtener la matriz de transformación que relacione el sistema coordenado


de la base con el sistema coordenado del extremo del robot, resultando en
la posición y orientación del sistema coordenado de la herramienta
expresado en coordenadas de la base.

n
n
T  A 
0  Aii1
i 1
Ejemplo
Robot Cilíndrico
Ejemplo
Robot Esférico Completo
Desacoplo Cinemático

La estructura de los robots modernos determina que los tres primeros


ejes definan la posición del extremo del robot (muñeca) y que los tres
ejes secundarios intersecten en un solo orígen que está situado en el
extremo del robot definiendo la orientación de la herramienta. A este
tipo de muñeca se le conoce como muñeca esférica.
Desacoplo Cinemático

Esto permite desacoplar cinemáticamente la cadena para su análisis:


6 3 6
T  A  A A
0 0 3
Donde:
3
A = Matriz que determina la posición de la muñeca
0
6
A = Matriz que determina la orientación de la muñeca
3

Eslabón i  d a 
i i i i
4  0 0 -90
4
5  0 0 90
5
6  d 0 0
6 6
Tabla de parámetros D-H para una muñeca esférica
Desacoplo Cinemático
cos  4 0  sen 4 0
 sen 4 0 cos  4 0
A3  
4
1 0
0 0
 0 0 0 1
 

cos  5 sen  5 cos  6 sen 6 0 0


0 0  sen 6
sen  5 0  cos  5 0  cos  6 0 0
A4  
5
A56   
0 1 0 0  0 0 1 d6 
 0 0 0 1   
  0 0 0 1

cos  4 cos  5 cos  6  sen 4 sen 6  cos  4 cos  5 sen 6  sen  4 cos  6 cos  4 sen  5 cos  4 sen 5 d6 
 sen 4 cos  5 cos  6  cos  4 sen 6  sen 4 cos  5 sen  6  cos  4 cos  6 sen 4 sen 5 sen 4 sen  5d 6 
A36  
 sen 5 sen 6 sen  5 cos  6 cos  5 cos  5 d 6 
 
 0 0 0 1 
Cinemática Inversa
El problema Cinemático Inverso

El objetivo del problema cinemático inverso consiste en encontrar los


valores que deben tomar las variables articulares del robot para que su
extremo se posicione y oriente según una determinada localización
espacial. La ecuación matemática que representa lo anterior es:

qk  f k ( x, y , z,  ,  ,  )
k  1 n

Donde:
q1n = Son las variables de las articulaciones.
Para articulaciones revolutas las variables son ángulos.
Para articulaciones prismáticas las variables son distancias.
x, y , z = Coordenadas de la posición del extremo del robot.
 ,  ,  = Ángulos de la orientación del extremo del robot.
n = Número de grados de libertad
El problema Cinemático Inverso

A diferencia del problema cinemático directo donde de una manera


sistemática sistemática e independiente de la configuración del robot se
llega a una solución, en el problema cinemático inverso el mecanismo de
solución es fuertemente dependiente de la configuración y con frecuencia
la solución no es única.

Normalmente los métodos geométricos nos permiten obtener


normalmente los valores de las primeras variables, que son las que
consiguen posicionar el extremo del robot en un punto determinado.

También es posible recurrir a manipular directamente a la ecuaciones


obtenidas del problema cinemático directo.

En muchos robots de 6 grados de libertad es posible aplicar acoplamiento


cinemático, para que los ejes dedicados al posicionamiento y los ejes
dedicados a la orientación, sean tratados como dos problemas
independientes.
Método Geométrico
Se basa en encontrar un número suficiente de relaciones geométricas en
las que intervendrán las coordenadas del extremo del robot, las variables
de las articulaciones y las dimenciones físicas del robot. El dato de
partida son las coordenadas p , p , p .
x y z

El siguiente robot tiene una estructura planar, quedando este plano


definido por el ángulo  .
1
Método Geométrico
El valor de 1 se obtiene de la siguiente manera:

 px 
1  arctg   …… 1
 p 
 y
Si se toma solamente en cuenta el segundo y tercer eslabón y utilizando el
teorema del coseno
(c  a  b  2ab cos  )
2 2 2
cos180      cos 
y : 3 3 3
Método Geométrico
r 2  p 2x  p y2 …………. 2

r 2  p z2  l 22  l32  2l2 l3 cos( 3 ) …………. 3

Sustituyendo 2 en 3:

p 2x  p y2  pz2  l 22  l32 ...……….. 4


cos  3 
2l2 l3
Utilizando arcotangente en lugar de arcocoseno (por razones de
ventajas computacionales):

  1  cos 2  3  Utilizando:
 3  arctg   …… 5
 cos   sen 3   1  cos 2  3
 3

El signo  demuestra que existen 2 posibles soluciones.
Método Geométrico
El cálculo de  2 se realiza a partir de:

2     ……… 6
Donde:
 pz   pz 
  arctg    arctg  
 r   p 2x  p y2 

 l3 sen 3 
  arctg  
 l2  l 3 cos 3 

Entonces:
 
 2  arctg 
pz   arctg  l3 sen 3  ……… 7
 px2  p 2y   l  l cos 
  2 3 3 

Las ecuaciones 1, 5 y 7 resuelven el problema cinemático inverso.


Algoritmo para resolver la Cinemática Inversa

En un sistema cinemático desacoplado de 6 grados de libertad el punto


central de la muñeca del robot corresponde al origen del sistema o5 .
o6
El punto final del robot es el origen . Por lo que se generan 2
pmbase:
vectores con respecto a la y pherr .

doC=Pmuñeca
don=PHerr
Algoritmo para resolver la Cinemática Inversa
La determinación de la cinemática inversa de los manipuladores desacoplados
puede seguir los siguientes pasos:

1. Encontrar las variables articuladas  1, 2, 3 tal que el centro de la


muñeca sea localizado en:
pm  pherr  d 6 a

 pmx   pherrx  d6 a x 
   
 pmy    pherry
 d 6
a y 
p  p 
 mz   herrz  d6 a z 

El vector unitario aindica la dirección de la distancia entre


d 6 los orígenes
o5  o6 .Mediante métodos geométricos es posible obtener los
valores de las tres primeras coordenadas articulares. También es posible
encontrarlos mediante la matrices de transformación homogénea de cada
par de eslabones.
Algoritmo para resolver la Cinemática Inversa

2. Usando las variables obtenidas en el paso 1, determinar:

R03  R01 R12 R23


3. Tomando en cuenta el desacoplo cinemático del robot, es decir:

n o a  R 6
0  R03 R36
Encontrar las variables articuladas  4, 5, 6 a partir de:

R  R
6
3 0

3 1
R  R
6
0 0
 n o a   r 
3 T
ij

 
Donde R03
T
 
y n o a tienen valores completamente conocidos y
por lo tanto podemos despejar las variables articuladas de las ecuaciones
obtenidas de igualar ambos lados de la ecuación.
Algoritmo para resolver la Cinemática Inversa
Por lo tanto:

cos  4 cos  5 cos  6  sen 4 sen 6  cos  4 cos  5 sen 6  sen  4 cos  6 cos  4 sen  5 
 sen 4 cos  5 cos  6  cos  4 sen 6  sen 4 cos  5 sen  6  cos  4 cos  6 sen 4 sen 5 
R36  
 sen 5 cos  6 sen 5 sen 6 cos  5   rij 
 
 
Podemos concluir que:
 r23 
 4  Tan 
 r13 

  1  r332 
 5  Tan 
 r33 
 
 r32 
 6  Tan  
 r31 
Bibliografía Sugerida
[ 1 ] Barrientos, Peñín et. al. “Fundamentos
de Robótica”. Ed. McGrawHill
[ 2 ] Lung-Wen Tsai. “Robot Analysis: the
mechanics of serial and parallel
manipulators”. Ed. Wiley Interscience.
[ 3 ] Murray, Li & Sastry. “A mathematical
introduction to robotic manipulation”. Ed.
CRC.

Vous aimerez peut-être aussi