Cinemática del Robot
Manuel Cardona
[email protected]
Manuel Cardona [email protected] Cinemática del Robot
El Problema Cinemático
! Cinemática del robot : Estudio de su movimiento
con respecto a un sistema de referencia sin
considerar las fuerzas que intervienen.
! La cinemática se interesa por:
! La Relación entre la localización (posición y orientación) del
extremo del robot y los valores de sus articulaciones
! La Descripción analítica del movimiento espacial en función del
tiempo
Manuel
Cardona
[email protected]
Cinemática del Robot
1
El Problema Cinemático
El problema cinemático directo:
! Consiste en determinar la posición y orientación del
extremo final del robot, con respecto a un sistema de
coordenadas de referencia, conocidos los ángulos de
las articulaciones y los parámetros geométricos de los
elementos del robot.
! En otras palabras, la cinemática directa me permite
contestar la siguiente interrogante: “Si muevo
determinado ángulo mis actuadores, ¿Dónde estará
localizado el extremo del robot?”
Manuel
Cardona
[email protected]
Cinemática del Robot
El Problema Cinemático
El problema cinemático inverso:
! Consiste en Determinar la configuración que debe
adoptar el robot para una posición y orientación del
extremo conocidas.
! En otras palabras, la cinemática inversa me permite
contestar la siguiente interrogante: “Si quiero que mi
efector final se alcance determinada posición y
orientación, ¿Cuánto deberé de mover mis
actuadores?”
Manuel
Cardona
[email protected]
Cinemática del Robot
2
El Problema Cinemático
Modelo diferencial (matriz Jacobiana):
! Estudia las relaciones entre las velocidades de
movimiento de las articulaciones, y las del extremo
del robot. Esta relación viene dada por el modelo
diferencial expresado por medio de la matriz
Jacobiana.
! Además de relacionar las velocidades, la matriz
Jacobiana permite, como se verá más adelante,
analizar las configuraciones singulares.
Manuel
Cardona
[email protected]
Cinemática del Robot
El Problema Cinemático
Manuel
Cardona
[email protected]
Cinemática del Robot
3
Cinemática de Robots Seriales vs Paralelos
! En el caso de los robots seriales, el cálculo de la
cinemática directa es más fácil comparado con el
cálculo de la cinemática inversa.
! Para un manipulador con estructura paralela
sucede lo contrario, la cinemática inversa se puede
deducir de manera más fácil, mientras que la
cinemática directa es mucho más complicada.
Manuel
Cardona
[email protected]
Cinemática del Robot
Obtención del modelo cinemático
! Procedimientos basados en relaciones geométricas
(trigonometría):
! No sistemático
! Válidos en robots con pocos GDL
! Procedimientos basados en el uso de las Matrices de
transformación homogénea
! Sistemático
! Válidos para robots con muchos grados de libertad
(>3). En particular robots con cadena cinemática
abierta
! Teoría de Screws
! Métodos numéricos
Manuel
Cardona
[email protected]
Cinemática del Robot
4
Cinemática Directa
La resolución consiste en encontrar las relaciones que
permiten conocer la localización espacial del extremo
del robot a partir de los valores de sus coordenadas
articulares. La solución de la cinemática directa vendrá
dada por las relaciones:
Manuel
Cardona
[email protected]
Cinemática del Robot
Cinemática Directa con Métodos Geométricos
! En algunos casos (robots con pocos GDL) la solución se
puede encontrar de manera sencilla con simples
consideraciones geométricas.
! No existe un procedimiento sistemático para resolver la
cinemática por métodos geométricos, por lo tanto para
robots con más de 3 GDL resulta totalmente
inadecuado.
Manuel
Cardona
[email protected]
Cinemática del Robot
5
Modelo cinemático directo de un robot planar de 2GDL
x = l1 cosq1 + l2 cos(q1 + q2 )
y = l1 senq1 + l2 sen(q1 + q2 )
Manuel
Cardona
[email protected]
Cinemática del Robot
Cinemática Directa con Matrices de Transformación
Homogéneas
La resolución consiste en encontrar las relaciones que
permiten conocer la localización espacial del extremo
del robot a partir de los valores de sus coordenadas
articulares.
Objetivo de las MTH:
! Encontrar una matriz de transformación homogénea T
que relacione posición y orientación del extremo del
robot con respecto a un sistema de referencia fijo
situado en su base.
Manuel
Cardona
[email protected]
Cinemática del Robot
6
Matrices de transformación A y T
! Matriz i-1Ai : 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.
! Conexiones de matrices A:
0
A3 = 0 A1 1 A2 2 A3
! Matriz T : matriz 0An cuando se consideran todos los
grados de libertad del robot:
T = 0 A6 = 0 A1 1 A2 2 A3 3 A4 4 A 5 5 A6
Manuel
Cardona
[email protected]
Cinemática del Robot
Ejercicio 1
! Para el robot mostrado, calcule el modelo cinemático directo
utilizando MTH.
Manuel
Cardona
[email protected]
Cinemática del Robot
7
Ejercicio 1
! Para el robot mostrado, calcule el modelo cinemático directo
utilizando MTH.
X2
Y2
S2
Y1
X1
S1
Yo
So Xo
Manuel
Cardona
[email protected]
Cinemática del Robot
Convenio de conexión de eslabones de Denavit y Hartenberg
! En robótica, la forma más habitual de describir la
relación entre dos elementos contiguos es la
representación de Denavit y Hartenberg (D-H).
! Según D-H si se escoge adecuadamente los sistemas
de coordenadas asociados a cada eslabón, es posible
pasar de uno al siguiente por medio de 4
transformaciones básicas.
! Estas transformaciones consisten una sucesión de
rotaciones y traslaciones que permite relacionar el
sistema de referencia del sistema i con el sistema del
elemento i – 1 .
Manuel
Cardona
[email protected]
Cinemática del Robot
8
Convenio de conexión de eslabones de Denavit y Hartenberg
! Las 4 transformaciones básicas son:
❶ Rotación alrededor del eje zi-1 un ángulo θi
❷ Traslación a lo largo de zi-1 una distancia di ; vector di (0,0,di)
❸ Traslación a lo largo de xi una distancia ai ; vector ai (ai, 0, 0)
❹ Rotación alrededor del eje xi un ángulo αi
Hay que tener en cuenta el orden de las multiplicaciones ya que
el producto no es conmutativo. De tal manera que la matriz de
Transformación vendrá dada por:
i 1
Ai = T (z, ✓i )T (0, 0, di )T (a1 , 0, 0)T (x, ↵i )
Manuel
Cardona
[email protected]
Cinemática del Robot
Convenio de conexión de eslabones de Denavit y Hartenberg
2 32 32 32 3
C✓i S✓i 0 0 1 0 0 0 1 0 0 ai 1 0 0 0
6 S✓i C✓i 0 07 60 1 0 07 60 1 0 07 60 C↵i S↵i 07
i 1
Ai = 6
4 0
76 76 76 7
0 1 05 4 0 0 1 di 5 4 0 0 1 0 5 40 S↵i C↵i 05
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
2 3
C✓i C↵i S✓i S↵i S✓i ai C✓i
6 S✓i C↵i C✓i S↵i C✓i ai S✓i 7
i 1
Ai = 6
4 0
7
S↵i C↵i di 5
0 0 0 1
• Donde θi, di, ai,αi son los parámetros D-H del
eslabón.
Manuel
Cardona
[email protected]
Cinemática del Robot
9
Parámetros D - H
• Define el paso de un sistema de referencia asociado a
una articulación al siguiente.
• Sólo depende de las características geométricas de cada
eslabón y de las articulaciones que le unen con el anterior
y siguiente (no dependen de la posición del robot)
• Define las matrices A que permiten el paso de un sistema
de referencia asociado a una articulación al siguiente y por
tanto definen las matrices T
• Utiliza los 4 parámetros: θi, αi , di y ai
Manuel
Cardona
[email protected]
Cinemática del Robot
Parámetros D - H
• θi: Es el ángulo que forman los ejes xi-1 y xi medido
en un plano perpendicular al eje zi-1, utilizando la regla
de la mano derecha. Se trata de un parámetro
variable en articulaciones giratorias.
• di: Es la distancia a lo largo del eje zi-1 desde el origen
del sistema de coordenadas (i-1)-ésimo hasta la
intersección del eje zi-1 con el eje xi. Se trata de un
parámetro variable en articulaciones prismáticas.
Manuel
Cardona
[email protected]
Cinemática del Robot
10
Parámetros D - H
• ai:
Es
la
distancia
a
lo
largo
del
eje
xi
que
va
desde
la
intersección
del
eje
zi-‐1
con
el
eje
xi
hasta
el
origen
del
sistema
i-‐ésimo,
en
el
caso
de
arHculaciones
giratorias.
En
el
caso
de
arHculaciones
prismáHcas,
se
calcula
como
la
distancia
más
corta
entre
los
ejes
zi-‐1
y
zi.
• αi:
Es
el
ángulo
de
separación
del
eje
zi-‐1
y
el
eje
zi,
medido
en
un
plano
perpendicular
al
eje
xi,
uHlizando
la
regla
de
la
mano
derecha
Manuel
Cardona
[email protected]
Cinemática del Robot
Parámetros DH para un eslabón rotatorio
Manuel
Cardona
[email protected]
Cinemática del Robot
11
Modelo Cinemático de un Robot
❶ Establecer para cada elemento del robot un
sistema de coordenadas cartesiano ortonormal (xi,yi,zi)
donde i=1,2,...,n (n=número de GDL). Cada sistema de
coordenadas corresponderá a la articulación i+1 y
estará fijo en el elemento i.
❷ Encontrar los parámetros D-H de cada una de las
articulaciones.
❸ Calcular las matrices Ai
❹ Calcular la matriz Tn = 0A1 1A2 ... n-1An
Manuel
Cardona
[email protected]
Cinemática del Robot
Algoritmo de Denavit - Hartenberg
Paso 1.- Numerar los eslabones comenzando con 1
(primer eslabón móvil de la cadena) y acabando con n
(último eslabón móvil). Se numerará como eslabón 0 a la
base fija del robot.
Paso 2.- Numerar cada articulación comenzando por 1 (la
correspondiente al primer grado de libertad) y acabando
en n.
Paso 3.- Localizar el eje de cada articulación. Si ésta es
rotativa, el eje será su propio eje de giro. Si es prismática,
será el eje a lo largo del cual se produce el
desplazamiento.
Manuel
Cardona
[email protected]
Cinemática del Robot
12
Algoritmo de Denavit - Hartenberg
Paso 4.- Para i de 0 a n – 1, situar el eje zi sobre el eje de
la articulación i+1.
Paso 5.- Situar el origen del sistema de la base {S0} en
cualquier punto del eje z0. Los ejes x0 e y0 se situarán de
modo que formen un sistema dextrógiro con z0.
Paso 6.- Para i de 1 a n – 1, situar el sistema {Si}
(solidario al eslabón i) en la intersección del eje zi con la
línea normal común a zi-1 y zi. Si ambos ejes se cortasen se
situaría {Si} en el punto de corte. Si fuesen paralelos, {Si}
se situaría en la articulación i+1.
Manuel
Cardona
[email protected]
Cinemática del Robot
Algoritmo de Denavit - Hartenberg
Paso 7.- Situar xi en la línea normal común a zi-1 y zi.
Paso 8.- Situar yi de modo que forme un sistema
dextrógiro con xi y zi.
Paso 9.- Situar el sistema {Sn} en el extremo del robot de
modo que zn coincida con la dirección de zn-1 y xn sea
normal a zn-1 y zn .
Paso 10.- Obtener qi como el ángulo que hay que girar en
torno a zi-1 para que xi-1 y xi queden paralelos.
Paso 11.- Obtener di como la distancia, medida a lo largo
de zi-1, que habría que desplazar {Si-1} para que xi y xi-1
quedasen alineados.
Manuel
Cardona
[email protected]
Cinemática del Robot
13
Algoritmo de Denavit - Hartenberg
Paso 12.- Obtener ai como la distancia medida a lo largo
de xi (que ahora coincidiría con xi-1) que habría que
desplazar el nuevo {Si-1} para que su origen coincidiese
con {Si}.
Paso 13.- Obtener ai como el ángulo que habría que girar
entorno a xi (que ahora coincidiría con xi-1), para que el
nuevo {Si-1} coincidiese totalmente con {Si}.
Paso 14.- Obtener la matriz de transformación i-1Ai
Manuel
Cardona
[email protected]
Cinemática del Robot
Algoritmo de Denavit - Hartenberg
DH 15.- Obtener la matriz de transformación entre la
base y el extremo del robot T = 0A1 1A2 ... n-1An.
DH 16.- La matriz T define la orientación (submatriz de
rotación) y posición (submatriz de traslación) del extremo
referido a la base en función de las n coordenadas
articulares.
Manuel
Cardona
[email protected]
Cinemática del Robot
14
Ejemplo 1
Determine la Cinemática Directa Para el robot mostrado en la
figura
Manuel
Cardona
[email protected]
Cinemática del Robot
Ejemplo 1
Joint
θ
d
a
α
1
θ1
0
a1
0
2
θ2
0
a2
0
3
θ3
0
a3
0
Manuel
Cardona
[email protected]
Cinemática del Robot
15
Ejemplo 1
Manuel
Cardona
[email protected]
Cinemática del Robot
Ejemplo 1
Manuel
Cardona
[email protected]
Cinemática del Robot
16
Ejemplo 2
Manuel
Cardona
[email protected]
Cinemática del Robot
Ejemplo 1
Manuel
Cardona
[email protected]
Cinemática del Robot
17
Ejemplo 2
Ar3culación
θ d
a
α
1
θ1 l1
0
0
2
90º
d2
0
90º
3
0
d3
0
0
4
θ4 l4
0
0
Manuel
Cardona
[email protected]
Cinemática del Robot
Ejemplo 2
2 3 2 3
C1 S1 0 0 0 0 1 0
6 S1 C1 0 θ 07 6 1 0 0 07 α
0
A1 = 6
40
7 1
A2 = 6 7
0 1 l1 5 40 1 0 d2 5
0 0 0 1 0 0 0 1
2 3 2 3
1 0 0 0 C4 S4 0 0
6 0 1 0 07 6 S4 C4 0 07
2
A3 = 6
40
7 3
A4 = 6 7
0 1 d3 5 40 0 1 l4 5
0 0 0 1 0 0 0 1
2 3
S1 C 4 S1 S4 C1 C1 (d3 + l4 )
6 C1 C4 C 1 S4 S1 S1 (d3 + l4 ) 7
T = A1 A2 A3 A4 = 6
0 1 2 3
4 S4
7
C4 0 d2 + l1 5
0 0 0 1
Manuel
Cardona
[email protected]
Cinemática del Robot
18
Ejemplo 3
Manuel
Cardona
[email protected]
Cinemática del Robot
Ejemplo 3
Manuel
Cardona
[email protected]
Cinemática del Robot
19
Ejemplo 3
Ar3culación
θ d
a
α
1
q1
l1
0
90º
2
q2
0
0
-‐90º
3
0
q3
0
0
2 3 2 3
C1 0 S1 0 C2 0 S2 0
6 S1 0 C1 07 6 S2 0 C2 07
0
A1 = 6
40
7 1
A2 = 6 7
1 0 l1 5 40 1 0 05
0 0 0 1 0 0 0 1
Manuel
Cardona
[email protected]
Cinemática del Robot
Ejemplo 3
2 3
1 0 0 0
6 0 1 0 07
2
A3 = 6 7
θ 40 0 1 q3 5 α
0 0 0 1
2 3
C1 C2 S1 C 1 S2 q 3 C 1 S2
6 S1 C 2 C1 S1 S2 q 3 S1 S2 7
T = 0 A1 1 A2 2 A3 = 6
4 S2
7
0 C2 q3 C 2 + l1 5
0 0 0 1
Manuel
Cardona
[email protected]
Cinemática del Robot
20
Cinemática Inversa
• Encontrar los valores que deben adoptar las coordenadas
articulares del robot para que su extremo se posicione y
oriente según una determinada localización espacial
• La resolución no es sistemática
• Depende de la configuración del robot (soluciones
múltiples)
• No siempre existe solución en forma cerrada.
• Condiciones suficientes para que exista:
§ T r e s e j e s d e a r t i c u l a c i ó n a d y a c e n t e s
interseccionan en un punto (robot PUMA y robot
Stanford)
§ Tres ejes de articulación adyacentes son paralelos
entre sí (robot Elbow)
Manuel
Cardona
[email protected]
Cinemática del Robot
Cinemática Inversa
1. Procedimiento genérico a partir de los parámetros D-H
• Método iterativo
• Problemas de velocidad y convergencia
2. Búsqueda de solución cerrada: qk = fk (x,y,z,α,β,γ); k =
1,...,n
• Posibilidad de resolución en tiempo real
• Posibilidad de selección de la solución más adecuada
• Posibilidad de simplificaciones
• No siempre es posible
Manuel
Cardona
[email protected]
Cinemática del Robot
21
Cinemática Inversa
❶ Métodos geométricos
– Se suele utilizar para las primeras variables articulares
– Uso de relaciones geométricas y trigonométricas (resolución
de triángulos)
❷ Resolución a partir de las matrices de transformación
homogénea
– Despejar las n variables qi en función de las componentes de
los vectores n, o, a y p.
❸ Desacoplamiento cinemático
– En robots de 6GDL
– Separación de orientación y posicionamiento
❹ Otros: Screws, cuaternios, métodos iterativos...
Manuel
Cardona
[email protected]
Cinemática del Robot
Problemas la buscar la solución
• Difícil resolución
• Puede no tenerla
• Puede tener múltiple solución
Manuel
Cardona
[email protected]
Cinemática del Robot
22
Soluciones múltiples
Manuel
Cardona
[email protected]
Cinemática del Robot
Solución Cerrada vs Abierta
Se prefiere una solución cerrada (explícita) por:
§ En situaciones donde se necesita resolver la cinemática
inversa en tiempo real (p.e. Seguimiento de un cordón de
soldadura), no se puede depender del método numérico.
§ Normalmente, al poder encontrarse con múltiples soluciones
un método numérico no permite escoger cual es la que le
interesa.
Manuel
Cardona
[email protected]
Cinemática del Robot
23
Cinemática Inversa (método geométrico)
l3
Z0
l2
pz
Y0
r
X0
px
py
q1
Manuel
Cardona
[email protected]
Cinemática del Robot
Cinemática Inversa (método geométrico)
l3
Z0
l2
pz
Y0
r
X0
px
py
q1
Manuel
Cardona
[email protected]
Cinemática del Robot
24
Cinemática Inversa (método geométrico)
l3
q3
l3
q3
pz pz
𝛼
l2
l2
q2
q2
r r
Codo
Abajo
Codo
Arriba
Manuel
Cardona
[email protected]
Cinemática del Robot
Cinemática Inversa (método geométrico)
Solución
doble
Manuel
Cardona
[email protected]
Cinemática del Robot
25
Cinemática Inversa (MTH)
Manuel
Cardona
[email protected]
Cinemática del Robot
Cinemática Inversa (MTH)
Joint
θ
d
a
α
1
q1
l1
0
90º
2
q2
0
0
-‐90º
3
0
q3
0
0
2 3 2 3
C1 0 S1 0 C2 0 S2 0
6 S1 0 C1 07 6 S2 0 C2 07
0
A1 = 6 7 1
A2 = 6
40
7
40 1 0 l1 5 1 0 05
0 0 0 1 0 0 0 1
2 3
1 0 0 0 2 3
C1 C2 S1 C 1 S2 q 3 C 1 S2
6 0 1 0 07 6
2
A3 = 6 7 S1 C 2 C1 S1 S2 q 3 S1 S2 7
40 0 1 q3 5 T = 0 A3 = 6
4 S2
7
0 C2 q3 C 2 + l1 5
0 0 0 1 0 0 0 1
Manuel
Cardona
[email protected]
Cinemática del Robot
26
Cinemática Inversa (MTH)
2 32 3
T = 0 A1 1 A2 2 A3 C1 S1 0 0 nx o x ax px
60 0 1 l1 7 6 ny o y ay py 7
( 0 A1 ) 1
T = 1 A2 2 A3 =64 S1
76 7
C1 0 0 5 4 nz o z az pz 5
0 0 0 1 0 0 0 1
2 32 3 2 3
C2 0 S2 0 1 0 0 0 C2 0 S2 S2 q 3
6 S2 0 C2 07 6 07 6 C 2 q3 7
6
=4 7 60 1 0 7 = 6 S2 0 C2 7
0 1 0 05 40 0 1 q3 5 4 0 1 0 0 5
0 0 0 1 0 0 0 1 0 0 0 1
Del elemento (3,4) se tiene:
S1 py
S 1 px C 1 py = 0 ) C1 = px
p
q1 = arctan( pxy )
Manuel
Cardona
[email protected]
Cinemática del Robot
Cinemática Inversa (MTH)
T = 0 A1 1 A2 2 A3
01 1
( 1 A2 ) 1 0T
( A=
1 ) AT
1 A=2 2 A3
2 32 32 3 2 3
C2 S2 0 0 C1 S1 0 0 nx ox a x px 1 0 0 0
6 0 0 1 07 60 0 1 l1 7 6 ny oy a y py 7 60 1 0 07
=6
4 S2 C2 0
76 76 7=6 7
05 4 S1 C1 0 0 5 4 nz oz a z pz 5 4 0 0 1 q3 5
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
2 32 3 2 3
C2 C1 C 2 S1 S2 l 1 S2 nx ox ax px 1 0 0 0
6 S1 C1 0 0 7 6 ny oy ay py 7 6 7
=6 76 7 = 60 1 0 0 7
4 S2 C 1 S2 S1 C2 l 1 C 2 5 4 nz oz az pz 5 4 0 0 1 q3 5
0 0 0 1 0 0 0 1 0 0 0 1
Del elemento (1,4) se tiene que:
C 2 C 1 px + C 2 S1 py + S2 pz l 1 S2 = 0
p
p2x +p2y
q2 = arctan (l1 pz )
Manuel
Cardona
[email protected]
Cinemática del Robot
27
Cinemática Inversa (MTH)
Y del elemento (3,4) se tiene que:
S2 C 1 px S 2 S 1 py + C 2 pz C 2 l1 = q3
q
q3 = C2 (pz l1 ) S2 p2x + p2y
En resumen:
p
q1 = arctan( pxy )
p
p2x +p2y
q2 = arctan (l1 pz )
q
q3 = C2 (pz l1 ) S2 p2x + p2y
Manuel
Cardona
[email protected]
Cinemática del Robot
Desacoplo Cinemático
El método de desacoplo cinemático facilita el cálculo de la
cinemática inversa, ya que separa los problemas de posición y
orientación.
Este método es aplicable a aquellos robots cuyos tres últimos
grados de libertad se cortan en un punto. Dada una posición y
orientación final deseada, se establece las coordenadas del
punto de corte de los tres últimos ejes (muñeca del robot) con
lo cual será posible calcular las tres primeras variables
articulares que posicionan al robot en dicho punto. Luego se
calculan las variables restantes conociendo la orientación
deseada y los valores de las tres primeras variables articulares.
Manuel
Cardona
[email protected]
Cinemática del Robot
28