Cinemática del Robot Industrial
M.C. Miguel de J. Ramírez C., CMfgTAutomatizació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 Rotacional o Revoluta (variable θ) (1 Grado de libertad)
Articulación Lineal o Prismática (variable d) (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:
SubMatriz de Rotación
SubMatriz de Traslación
SubMatriz de Perspectiva
SubMatriz de Escalado Global
1131
1333
xx
xx
EFPRT13xP
31xF
11xE
En robótica, generalmente se considera la submatriz de perspectivacomo nula y la submatriz de escalado global como uno.
Un vector Homogéneo siempre tendrá 4 dimensiones.
33xR
La Matriz de Transformación HomogéneaLa matriz de transformación Homogénea sirve para :
a) Conocer las coordenadas del vector r en el sistema O´XYZ a partir de sus coordenadas en el sistema O´UVW.
zyx rrr ,,wvu rrr ,,
11w
v
u
z
y
x
rrr
Trrr
b) Expresar las rotaciones y traslaciones de un vector con respecto a unsistema fijo O´XYZ.
11z
y
x
z
y
x
rrr
Trrr
1000P100P010P001
z
y
x
)(PT
Forma general
a)
11000z
y
x
zw
yv
xu
w
v
u
z
y
x
PrPrPr
rrr
PPP
rrr
1100010001
1
b)
11000z
y
x
zz
yy
xx
z
y
x
z
y
x
PrPrPr
rrr
PPP
rrr
1100010001
1
Matriz de Transformación Homogénea de la Traslación
1000
0100
00
00
),(cosθsinθ
sinθcosθ
zT
0 00 1 0 0
( , )0 0
0 0 0 1
T y
cos sin
sin cos
1 0 0 00 0
( , )0 00 0 0 1
T x
cos sinsin cos Rotación en X
Rotación en Z
Rotación en Y
Matriz de Transformación Homogénea de la Rotación
EJERCICIOS [ 1 ]
EJERCICIOS
EJERCICIOS [ 1 ]
Composición de Matrices HomogéneasDe 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:
Es igual a decir:),(),(),( yTzTxTT
),(),(),( vTwTuTT
Se Premultiplica
Se Posmultiplica
TAREA
1. Demostrar que las operaciones de transformaciones no son conmutativas, para ello encuentre las matrices de transformación de :
pzT
pyT
pxT
),,(),,(
),,(
),(,
),(,
),(,
zpTypT
xpT
2. Si tenemos que la matriz de transformación homogénea T es igual a:
1000PaonPaonPaon
zzzz
yyyy
xxxx
T
TAREA (Cont…)Y si sabemos que es una matriz ortonormal con la propiedad de:
Demostrar que la inversa de la matriz de transformación homogénea T corresponde a la siguiente expresión:
1000PPPx
xyzT
zyx
xyzT
zyx
xyzT
zy
aaaaoooonnnn
T 1
Con lo anterior podemos tener que si:
aon
Taonaon 1
uvwxyz rTr Entonces:
xyzuvw rTr 1
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 . Los vectores unitarios de ese sistema se denominan como respectivamente .
nZnYnXnO
aon
Es el vector en la dirección de aproximación de la herramienta (approach).Es la dirección de abrir y cerrar de la herramienta (open-close).Es la dirección normal al plano formado por las direcciones y .n
oa
a o
Donde: 1 aon
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:
1arrr
r o
n
xyz
1000PaonPaonPaon
zzzz
yyyy
xxxx
Representación Geométrica de la Matriz Homogénea
El vector columna 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 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 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 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.
P
n
o
a
El problema Cinemático
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.
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:
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.
El problema Cinemático
Cinemática Directa
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:
),,,,,(
),,,,,(),,,,,(),,,,,(
),,,,,(),,,,,(
54321
54321
54321
54321
54321
54321
n
n
n
nz
ny
nx
qqqqqqf
qqqqqqfqqqqqqfqqqqqqfz
qqqqqqfyqqqqqqfx
Donde:nq 1 = Son las variables de las articulaciones.
Para articulaciones revolutas las variables son ángulos. Para articulaciones prismáticas las variables son distancias.
zyx ,, = Coordenadas de la posición del extremo del robot. ,, = Ángulos de la orientación del extremo del robot.
El problema Cinemático Directo
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:
Método Geométrico
)()cos(cos
21211
21211
senlsenlyllx
Método de las matrices de transformación homogéneasPara 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
iA
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:
110
nn
i
iA Ai
i = número de eslabón
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
5
5
4
4
3
3
2
2
1
1
0
6
0AAAAAAAT
Algoritmo de Denavit-HartenbergEn 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
• Traslación a lo largo de una distancia
• Traslación a lo largo de una distancia • Rotación alrededor del eje un ángulo
1iZ
i
1iZ
id
iX
ia
iX
i
),()0,0,(),0,0(),(1 iiii
i
ixTaTdTzTA
1000
0cos
0
0
cos0
0001
100
0100
0010
0001
1
00
0100
0010
0001
1000
0100
00
cos
00
cos
1i
i
i
i
i
i
i
i
i
i
ii
sensen
a
d
sensen
A
1
cos
0cos
cos
0
coscoscos
00
cos
1i
ii
ii
i
ii
ii
i
ii
ii
i
i
ii d
senaa
sensensen
sen
sensen
A
Desarrollando la expresión:
Obtenemos la expresión general de DH, donde son los parámetros DH del eslabón i :
Algoritmo de Denavit-Hartenberg
iia
id
i ,,,
Algoritmo de Denavit-Hartenberg
Para que la matriz relacione los sistemas coordenados 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 hasta . Si la articulación es rotativa, el eje 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 en cualquier punto del eje . Arbitrariamente establecer los ejes respetando la regla de la mano derecha.
i
iA
1 1iOy
iO
0Z
1nZ
0O0
Z
00 YyX
Algoritmo de Denavit-Hartenberg
Establecimiento de los sistemas coordenados de las demás articulaciones:
5. Localizar el origen :
a) En la intersección del eje con la línea normal común a la intersección de .b) En la intersección de , si es que se intersectan.c) En la articulación i, si son paralelos.
6. Establecer :
a) A lo largo de la línea normal común entre los ejes que pasa por .b) En la dirección normal al plano formado por , si es que estos dos ejes se intersectan.
7. Establecer de acuerdo a la regla de la mano derecha.
iZ
1iZyiZ
iO
1iZyiZ1iZyiZ
1iZyiZ
iX
iO1iZyiZ
1iZyiZ
iY
Algoritmo de Denavit-HartenbergEstablecimiento 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 a lo largo de la dirección y establecer el origen de la manera que más convenga a lo largo de , preferente en el centro de la pinza o la punta de cualquier herramienta que el robot tenga montada.
5. Establecer de acuerdo a la regla de la mano derecha. Si la herramienta es una pinza, es común establecer el eje entre los “dedos” de la pinza y será ortonormal a .
Obtener las Matrices de Transformación Homogéneas
10. Crear una tabla con los parámetros D-H de los eslabones:
nZ
nO
nYynX
nYynZnY
1nZ
nZ
nX
Eslabóni id ia ii
Algoritmo de Denavit-Hartenberg
Donde:
= Es el ángulo formado por los ejes medido en un plano perpendicular a utilizando la regla de la mano derecha. Este es
un parámetro variable en articulaciones rotatorias.
= Es la distancia a lo largo del eje desde el origen hasta la intersección del eje con el eje . Este es un parámetro variable en articulaciones prismáticas.
= Para articulaciones rotatorias: es la distancia a lo largo del eje desde el origen hasta la intersección del eje con el eje .
Para articulaciones prismáticas: es la distancia más corta entre los ejes .
= Es el ángulo formado por los ejes medido en un plano perpendicular al eje utilizando la regla de la mano derecha.
Algoritmo de Denavit-Hartenberg
iXyiX 11iZ
i
1iOid
ia
i
1iZ
iX 1iZ
iX
iO iX 1iZ
1iZyiZ
iX
Algoritmo de Denavit-Hartenberg
3. Realizar la matriz D-H de transformación homogénea 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.
i
iA
1
110
nn
i
iT A Ai
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:
63
30
60 AAAT
63A
30A
= Matriz que determina la posición de la muñeca
= Matriz que determina la orientación de la muñeca
Donde:
-90900
000
00
456
Eslabóni id ia ii
6d
4
5
6
Tabla de parámetros D-H para una muñeca esférica
Desacoplo Cinemático
1000
00
cos
01
00
00
cos4
4
4
4
43
sen
senA
1000
00
cos
0100
00
cos5
5
5
5
54
sen
senA
1
00
0100
00
cos
00
cos
6
6
6
6
6
65
d
sensen
A
1cos
cos
0cos
cos
0cos
coscoscoscoscoscos
0
coscoscoscoscoscos
65
654
654
5
54
54
65
64654
64654
65
64654
64654
63 d
dsensendsen
sensensen
sensensen
sensen
sensensensensensen
A
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:
nk
zyxfq kk
1
),,,,,(
Donde:nq 1 = Son las variables de las articulaciones.
Para articulaciones revolutas las variables son ángulos. Para articulaciones prismáticas las variables son distancias.
zyx ,, = 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
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.
El problema Cinemático Inverso
Método GeométricoSe 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 .
El siguiente robot tiene una estructura planar, quedando este plano definido por el ángulo .
1
zp
yp
xp ,,
Método GeométricoEl valor de se obtiene de la siguiente manera:1
y
x
pparctg1
Si se toma solamente en cuenta el segundo y tercer eslabón y utilizando el teorema del coseno y :
…… 1
33 cos180cos )cos2( 3222 abbac
Método Geométrico
)cos(2 33223
22
22
222
llllpr
ppr
z
yx
32
23
22
222
3 2cos
llllppp zyx
Sustituyendo 2 en 3:
…………. 2
…………. 3
...……….. 4
Utilizando arcotangente en lugar de arcocoseno (por razones de ventajas computacionales):
3
32
3 coscos1
arctg
Utilizando:
32
3 cos1 sen…… 5
El signo demuestra que existen 2 posibles soluciones.
Método GeométricoEl cálculo de se realiza a partir de:
2
2
Donde:
22yx
zz
ppparctg
rparctg
332
33
cos
llsenlarctg
Entonces:
332
33
222 cos
llsenlarctg
ppparctg
yx
z
……… 6
……… 7
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 . El punto final del robot es el origen . Por lo que se generan 2 vectores con respecto a la base: . herrm pp y
5o6o
doC=Pmuñecadon=PHerr
La determinación de la cinemática inversa de los manipuladores desacoplados puede seguir los siguientes pasos:
1. Encontrar las variables articuladas tal que el centro de la muñeca sea localizado en:
El vector unitario indica la dirección de la distancia entre los orígenes .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.
321 ,,
adpp herrm 6
zherrz
yherry
xherrx
mz
my
mx
adpadpadp
ppp
6
6
6
a 6d65 oo
Algoritmo para resolver la Cinemática Inversa
2. Usando las variables obtenidas en el paso 1, determinar:
3. Tomando en cuenta el desacoplo cinemático del robot, es decir:
32
21
10
30 RRRR
63
30
60 RRRaon
Encontrar las variables articuladas a partir de:
ijT raonRRRR 30
60
130
63
Donde 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.
654 ,,
aonyR T30
Algoritmo para resolver la Cinemática Inversa
Por lo tanto:
ijrsensensen
sensensensen
sensen
sensensensensen
R
5
54
54
65
64654
64654
65
64654
64654
63 cos
coscoscoscoscoscoscos
coscoscoscos
coscoscos
Podemos concluir que:
13
234 r
rTan
33
233
5
1r
rTan
31
326 r
rTan
Algoritmo para resolver la Cinemática Inversa
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.
Top Related