0% encontró este documento útil (0 votos)
191 vistas49 páginas

Cinemática Diferencial en Robótica

Este documento presenta una introducción a la cinemática diferencial de robots manipuladores. Explica que la cinemática diferencial estudia las relaciones lineales entre las velocidades articulares y las velocidades del efector final mediante los Jacobianos. También cubre conceptos como la velocidad de cuerpos rígidos, incluyendo velocidad angular, derivada de la matriz de rotación, y transformaciones de velocidad. Finalmente, enumera los temas que se abordarán en las siguientes secciones, como el Jacobiano geométrico, el Jacobiano analí
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
191 vistas49 páginas

Cinemática Diferencial en Robótica

Este documento presenta una introducción a la cinemática diferencial de robots manipuladores. Explica que la cinemática diferencial estudia las relaciones lineales entre las velocidades articulares y las velocidades del efector final mediante los Jacobianos. También cubre conceptos como la velocidad de cuerpos rígidos, incluyendo velocidad angular, derivada de la matriz de rotación, y transformaciones de velocidad. Finalmente, enumera los temas que se abordarán en las siguientes secciones, como el Jacobiano geométrico, el Jacobiano analí
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd

Fundamentos de Robótica: 2017-I

Cinemática Diferencial de
Robots Manipuladores
Prof. Oscar E. Ramos, Ph.D.
Temas

1. Introducción
2. Velocidad de Cuerpos Rígidos

3. Jacobiano Geométrico

4. Jacobiano Analítico

5. Singularidades Cinemáticas
6. Cinemática Diferencial Inversa
7. El Jacobiano y la Estática

2
Introducción
¿Por qué es importante la Cinemática Diferencial?

• A nivel de posición/orientación, las relaciones son no lineales


x  f (q)
• A nivel de velocidades las relaciones son lineales

f (q) v
x  q ω   J (q) q
q  

- Estas relaciones lineales de velocidad se dan mediante los Jacobianos


- Es una ventaja con respecto a la cinemática directa/inversa (que es no lineal)

• Se puede usar métodos de álgebra lineal


• Los Jacobianos también relacionan fuerzas espaciales con torques articulares
(útil en estática/dinámica)
3
Introducción

• ¿Por qué “diferencial”?


- Relaciona las velocidades de las articulaciones con las velocidades del efector final
(o de algún punto operacional)

• La velocidad instantánea puede ser obtenida mediante:


1. Diferenciación en el tiempo
→ Obtiene derivada de la posición (velocidad lineal) y derivada de la representación de
posición (NO es la velocidad angular)
→ Usa: Jacobiano analítico

2. Análisis geométrico
→ Obtiene velocidad lineal y velocidad angular del efector final
→ Usa: Jacobiano geométrico

4
Cinemática Diferencial

• Formulaciones: directa e inversa

Cinemática diferencial
Velocidad de algún
Velocidad directa
punto
articular
x  ( x , y , z ,  ,  ,  )
q  (q1 , , q n )
Cinemática v, ω
diferencial inversa

- Cinemática diferencial directa


Dadas las velocidades articulares, halla la velocidad lineal y la velocidad angular (o
la derivada de la orientación) de alguna parte del robot (ejm. efector final)

- Cinemática diferencial inversa


Halla las velocidades articulares necesarias para que alguna parte del robot obtenga
una velocidad instantánea (lineal/angular) determinada

5
Temas

1. Introducción
2. Velocidad de Cuerpos Rígidos

3. Jacobiano Geométrico

4. Jacobiano Analítico

5. Singularidades Cinemáticas
6. Cinemática Diferencial Inversa
7. El Jacobiano y la Estática

6
Velocidad de Cuerpos Rígidos
Velocidad Angular
 k̂
• Velocidad
  angular
:  Ángulo de giro
ω   kˆ : Vector unitario en la dirección del
eje de rotación
• Matrices antisimétricas (skew-symmetric)
- Definición: ω ˆ  ω
ˆT
- Para la velocidad angular:

 x   0  z y 
 
ω   y  ˆ   z
ω 0 x 
 z    y x 0 

- Propiedades:
ˆ  ωp
ωp
• Para todo vector p:
 ω )  ( Rω ) 
ˆ RT  ( R

• Para R SO(3):
ˆ 0
xT ωx
• Para cualquier vector x :
7
Velocidad de Cuerpos Rígidos
Velocidad Angular

• Derivada de la Matriz de Rotación

R  ω
ˆR ω̂ : representa la velocidad angular

- Ejemplo:
Encontrar la velocidad angular asociada con la matriz de rotación de θ alrededor del
eje y variante en el tiempo

 T   dR d  RT
ˆ  RR
ω  
 d dt 
  sin  0 cos   cos  0  sin   0 0 1   0 0  
 
  0 0 0    0 1 0    0 0 0    0 0 0 
  cos  0  sin    sin  0 cos   1 0 0   0 0 

0
ω   
Velocidad angular a partir
(solo hay componente en y)
de la matriz antisimétrica:
 0 
8
Velocidad de Cuerpos Rígidos
Velocidad Angular

• Notación de velocidad angular


Sistema de referencia k en el que
k Vel. ang. del sistema n con respecto al
se expresa la velocidad ω m,n sistema m (asociada con la matriz de
rotación mRn)
- Derivada de la matriz de rotación
Matriz antisimétrica en el mismo
m
R n  m ω
ˆ m ,n m Rn sistema de referencia de R

• Suma de velocidades angulares


- En un sistema multicuerpo (con varios sistemas de referencias), las velocidades angulares
se suman (pero expresadas en el mismo sistema de referencia)
- Ejemplo: n cuerpos rígidos (de 0 a n):

0
ω 0,n  0 ω 0,1  0 ω1,2    0 ω n1, n Velocidad del cuerpo n al 0

0
ω 0,n  0 ω 0,1  0 R1 1ω1,2    0 Rn1 n 1ω n1, n
9
Velocidad de Cuerpos Rígidos
Velocidad Lineal

• Velocidad lineal cuando hay rotación y traslación simultáneos

P
p - En punto P está fijo en el cuerpo rígido:
ω
vb
- El cuerpo rígido tiene una velocidad lineal vb
y una velocidad angular ω
{0}
- La velocidad lineal del punto P es:
v p  ω  p  vb

10
Velocidad de Cuerpos Rígidos
Twist

• Es un vector 6x1 que contiene las velocidades lineal y angular


v
  
ω 
• Transformaciones de velocidad:
- Para la velocidad angular: A
ω  A RB B ω
v  A RB  B v  B ω  B p   A RB B v  A RB  B p  B ω 
- Para la velocidad lineal: A

 A RB B v  A RB B pˆ B ω
- Transformación general:
 A v   A RB  A RB B pˆ   B v 
A    A  
 ω  0 RB   B ω 
A
 A
XB
B

Transformación adjunta
11
Velocidad de Cuerpos Rígidos
Velocidad Angular y Ángulos de Rotación

• Ángulos roll (ϕr), pitch (ϕp), yaw (ϕy): R  Rz (r ) Ry ( p ) Rx ( y )


• Derivadas de roll, pitch, yaw: r ,  p ,  y
  
- ¿Son la velocidad angular? No, pero cada uno aporta a ω

ω  ωr  ω p  ω y

debido a debido a debido a


roll pitch yaw

• Relación RPY con la velocidad angular


- Componente debido al ángulo de roll:
z
r 0
ω r   0  r
1 
y

12
Velocidad de Cuerpos Rígidos
Velocidad Angular y Ángulos de Rotación

• Relación RPY con la velocidad angular z


- Componente debido al ángulo de pitch:
 p
cos r  sin r 0   sin r  y'
Rz (r )   sin r cos r 0  ω p   cos r   p r
y
 0 0 1   0 
x r

- Componente debido al ángulo de yaw:


z cos r cos  p  sin r cos r sin  p 
 
Rz (r ) Ry ( p )   sin r cos  p cos r sin  p sin r 
p
  sin  p 0 cos  p 

y
 cos r cos  p 
x p  
ω y   sin r cos  p   y
y   sin  p 
x ''  
13
Velocidad de Cuerpos Rígidos
Velocidad Angular y Ángulos de Rotación

• Relación RPY con la velocidad angular


ω  ωr  ω p  ω y

0   sin r  cos r cos  p 


 
ω  0  r   cos r   p   sin r cos  p  y
1   0    sin  p 
 
0  sin r cos r cos  p  r 
  
ω  0 cos r sin r cos  p   p 
1
 0  sin  p  y 

Eo x o

ω  Eo x o

14
Velocidad de Cuerpos Rígidos
Velocidad Angular y Ángulos de Rotación

•  Método 2:
1. Calcular la matriz de rotación equivalente R
2. Encontrar: ˆ  RR T
3. Obtener ωx, ωy, ωz de la matriz resultante

Ejercicio
Usando este método calcular la relación entre las derivadas de los ángulos de roll, pitch,
yaw, con la velocidad angular

15
Temas

1. Introducción
2. Velocidad de Cuerpos Rígidos

3. Jacobiano Geométrico

4. Jacobiano Analítico

5. Singularidades Cinemáticas
6. Cinemática Diferencial Inversa
7. El Jacobiano y la Estática

16
Jacobiano Geométrico
Introducción

• Esquema de velocidades en un robot manipulador:

ω 2  z1q 2 ω n  z n 1q n

ω1  z 0 q1
v 3  z 2 q 3
ωi  z i 1q i

- El Jacobiano geométrico relaciona la velocidad lineal y angular (del efector final) con
la velocidad de las articulaciones

v J  6n
ω   J q q   n Si n grados de libertad
 
17
Jacobiano Geométrico
Estructura

• Jacobiano geométrico:

v  v   Jv  J v  3n Jacobiano lineal o de posición (JL, Jp)


ω   J q ω    J  q J   3n Jacobiano angular o de orientación (JA, Jo)
     

• Estructura detallada:
 q 1 
v
 v   J v1 J v2  J vn   q 2 
ω    J   ω
   1 J 2  J n    
 
 q n 
  Contribución a velocidad
lineal debida a
1

v  J v1 q1  J v2 q 2    J vn q n Relación lineal

ω  J 1 q1  J 2 q 2    J n q n
Superposición
18
Jacobiano Geométrico
Articulación Prismática

• Objetivo: encontrar velocidad lineal y angular originadas por una articulación


prismática
• Suposición: las otras articulaciones no se mueven

Eje de zˆ i1
desplazamiento {N}
v  J vi q i
ω  J i q i

Desplazamiento: qi  di
v  q i zˆ i 1
ω0

ción i
J vi  zˆ i 1
ti cu l a
ar
{0} J i  0
Para una articulación prismática
19
Jacobiano Geométrico
Articulación de Revolución

• Objetivo: encontrar velocidad lineal y angular originadas por una articulación de


revolución
• Suposición: las otras articulaciones no se mueven

Eje de rotación zˆ i1


{N}
v  J vi q i
ω  J i q i
Ángulo de giro: qi  i p i-1,N
v  q i zˆ i 1  pi 1, N
ω  q i zˆ i 1

l a ción i
arti cu
J vi  zˆ i 1  pi 1, N
{0}
J i  zˆ i 1
Para una articulación de revolución
20
Jacobiano Geométrico
Elementos de la Estructura

• Estructura:
 J v1 J v2  J vn 
J  
 J 1 J 2  J n 
• Para la columna i:
Articulación Articulación de
prismática revolución

J vi zˆ i1 zˆ i 1  pi 1, N
J i 0 zˆ i1

0
Obtención de zˆ i1: tercera columna de 0 Ri 1 zˆ i 1  0 Ri 1  0 
1 

Obtención de p i 1, N : p N  p i1


0 0
Nota: todo está en el
sistema de referencia {0}
21
Jacobiano Geométrico

Ejemplo y2 x2
Calcular el Jacobiano geométrico del efector final del
robot manipulador RR
y1 l2
Jacobiano: q2
x1
y0 l1
 J v1 J v2   z 0  p 0,2 z1  p1,2 
J    q1
 J 1 J 2   z 0 z1  x0

donde:p 0,2  p 2  p 0 y p1,2  0 p 2 0p1


0 0
0
z 0  0 
Cinemática directa: 1 
0
z1 0 p1 p2
c1  s1 0 l1c1  c12  s12 0 l1c1  l2 c12  0
s c1 0 l1s1  s c12 0 l1s1  l2 s12 
0
p 0   0
0
T1   1 0
T2   12
0 0 1 0 0 0 1 0   0
   
0 0 0 1  0 0 0 1 
22
Jacobiano Geométrico

Ejemplo y2 x2
Calcular el Jacobiano geométrico del efector final del
robot manipulador RR
y1 l2
 l1s1  l2 s12 l2 s12  q2
x1
 l c l c l2 c12  y0 l1
 1 1 2 12
 z 0  p 0,2 z1  p1,2   0 0  q1
J   
 z0 z1   0 0  x0
 0 0 
 
 1 1 

Rango máximo del Jacobiano: 2 (tiene 2 columnas)

A lo más, 2 componentes de velocidad


lineal/angular son independientes
23
Jacobiano Geométrico
Transformaciones

{N }

{0}

{ A}

• Transformación de velocidades: 0
Jq
A
v  ( A R0 )0 v  A v   A R0 0  0v
A
ω  ( A R0 )0 ω A    A  
 ω  0 R0   0 ω 

 A R0 0  0
 J 
• Transformación de Jacobianos: Cambio del Jacobiano de un
A
J  A sistema 0 a un sistema A
 0 R0 
24
Jacobiano Geométrico
Resumen

• El Jacobiano geométrico:

- Se construye determinando las contribuciones de cada velocidad articular (qi) en


la velocidad lineal/angular del efector final (v, ω).

- Varía según el sistema de referencia utilizado

- NO depende de la representación: es el mismo para un robot,


independientemente de cómo se representa la posición y orientación

• Notar: el Jacobiano geométrico ¡no incluye derivadas en su cálculo!

25
Temas

1. Introducción
2. Velocidad de Cuerpos Rígidos

3. Jacobiano Geométrico

4. Jacobiano Analítico

5. Singularidades Cinemáticas
6. Cinemática Diferencial Inversa
7. El Jacobiano y la Estática

26
Jacobiano Analítico

• Se obtiene mediante diferenciación temporal


- Cinemática directa: x  f (q )
- Jacobiano analítico:
Jacobiano analítico
f (q)
x  q f (q)
q J A (q) 
q
J A (q)

• Componentes de posición y orientación:

x p  posición (Cartesiana, cilíndrica, …)  x p 


x  x   
 xo  orientación (ángulos Euler, RPY, cuaternión, …)  x o 
 x p   J p 
 x    J  q
 o  o
Jacobiano analítico depende de la representación
(ángulos RPY, Euler, cuaterniones, etc.)
27
Jacobiano Analítico

Ejemplo
Calcular el Jacobiano analítico del efector final del 
y
robot manipulador RR l2
q2
x  l1 c1  l2 c12 l1
Cinemática q1
y  l1 s1  l2 s12
directa x
  q1  q2

 x x 
 
 q1 q2 
 l1s1  l2 s12 l2 s12 
 y y  
Jacobiano JA      l1c1  l2c12 l2c12 
analítico:  q1 q2 
 1 1 
    
 
 q1 q2 

28
Jacobiano Analítico

Ejemplo
Calcular el Jacobiano analítico del efector final del z
robot manipulador RRP q3

x  q3 c 2 c1 q2
Cinemática y  q3 c 2 s1 d1
directa y
z  d1  q3 s 2
q1
x

 x x x 
 
 q1 q2 q3 
  q3c2 s1  q3 s2 c1 c2c1 
 y y y  
 q3 s2 s1 c2 s1 
Jacobiano
JA     qcc
analítico:  q1 q2 q3   3 2 1
 0 q3c2 s2 
 z z z  
 
 q1 q2 q3 
29
Jacobiano Analítico
Relación Jacobiano Analítico con Geométrico

• Jacobianos
 x p  v
 x   J Aq ω   Jq
 o  

• Relación: velocidad lineal/angular con derivada de orientación


ω  Eo x o  v  Ep 0   x p 
v  E p x p ω    0 Eo   x o 
  
• Relación entre Jacobianos:

 v  Ep 0
ω    0 J q
Eo  A
  
E

J  EJ A J A  E 1 J

30
Jacobiano Analítico
Relación Jacobiano Analítico con Geométrico

• Nota importante
- Si se usa coordenadas Cartesianas para la posición, la parte correspondiente a la
posición es la misma para el Jacobiano analítico y para el geométrico

I 0 
J  EJ A E 
0 Eo 

31
Temas

1. Introducción
2. Velocidad de Cuerpos Rígidos

3. Jacobiano Geométrico

4. Jacobiano Analítico

5. Singularidades Cinemáticas
6. Cinemática Diferencial Inversa
7. El Jacobiano y la Estática

32
Singularidades Cinemáticas

•  En singularidades cinemáticas:


- Se pierde la habilidad de moverse o de rotar en alguna dirección (dirección singular)

No puede moverse en
esta dirección

• En estas configuraciones el Jacobiano (geométrico) pierde rango


- Caso particular: si J es una matriz cuadrada, el determinante es cero.
• Problemas:
- En una singularidad, no hay que obtenga arbitrario del efector final
- En la cercanía de la singularidad, altas pueden ser requeridas para pequeños
movimientos

33
Singularidades Cinemáticas

Ejemplo
Encontrar las singularidades cinemáticas asociadas al
robot RR

y
l2
Jacobiano (solo parte de posición): q2
l1
 l1s1  l2 s12 l2 s12 
J  q1
 l1c1  l2 c12 l2c12  x

Cálculo del determinante: det( J )  l1l2 sin(q2 )


Singularidad cuando det sea 0:
q2 = 0 (estirado) o q2 = π (encogido)

34
Singularidades Cinemáticas

Ejemplo
Encontrar las singularidades cinemáticas asociadas al z
robot RRP q3

Jacobiano (solo parte de posición): q2


d1
  q3c2 s1  q3 s2c1 c2c1  y
J   q3c2 c1 q3 s2 s1 c2 s1 
 0 q1
q3c2 s2  x

Cálculo del determinante: det( J )  q3 sin(q 2 )


2

Singularidad cuando det sea 0:


- Cuando q2 = 90, -90 (a lo largo del eje z)
- Cuando q3 = 0 (completamente retraído)

35
Temas

1. Introducción
2. Velocidad de Cuerpos Rígidos

3. Jacobiano Geométrico

4. Jacobiano Analítico

5. Singularidades Cinemáticas
6. Cinemática Diferencial Inversa
7. El Jacobiano y la Estática

36
Cinemática Diferencial Inversa

•  Objetivo:
Encontrar la velocidad articular () para obtener una determinada velocidad de algún
punto del robot (como el efector final)

• ¿Cómo?
- Se “invierte” la relación directa del Jacobiano

v v
ω   Jq q  J 1  
  Si J es cuadrado
e invertible
ω 

• Se puede invertir el Jacobiano geométrico o el analítico


- Depende de lo que se quiera hacer
v
- El “procedimiento” es el mismo   ν   
ω 

37
Cinemática Diferencial Inversa
Solución de Norma Mínima

• Problema de minimización:
1
min ‖ q ‖ 2
‖ q ‖ 2  q T q
q 2
sujeto a
ν  Jq  0
• Solución:
1
L(q ,  )  q T q   T ( ν  Jq )
2
L
0 q  J T   0 q  J T 
q
L
0 ν  Jq  0 ν  Jq ν  JJ T 
 T

  ( JJ T ) 1 ν
q  J T   J T ( JJ T ) 1 ν

q  J # ν J #  J T ( JJ T ) 1
38
Cinemática Diferencial Inversa
Pseudo-inversa

• Pseudo-inversa de Moore-Penrose:
Es la única matriz J# que satisface las siguientes 4 propiedades

JJ # J  J ( J # J )T  J # J J  mn
J JJ  J
# # #
( JJ )  JJ
# T # J #   nn

• Casos especiales:
- Si rango(J) = n = m: J #  J 1
- Si rango(J) = m < n: J #  J T ( JJ T ) 1

• La pseudo-inversa siempre está definida


- Se puede calcular con las expresiones anteriores
- Es más eficiente (computacionalmente) calcularla usando la descomposición de valor
singular (SVD: singular value decomposition)

39
Cinemática Diferencial Inversa
Solución de dos objetivos

• Problema de minimización:
1
min ‖ q  q 0‖ 2
q 2
sujeto a
ν  Jq  0
• Solución:
1
L(q ,  )  (q  q 0 )T (q  q 0 )   T ( ν  Jq )
2
L
0 q  q 0  J T   0 q  J T   q 0
q
L
0 ν  Jq  0 ν  Jq ν  JJ T   Jq 0
 T
  ( JJ T )1 ( ν  Jq 0 )
q  J # ν  (I J # J ) q 0

  : puede usarse para “hacer” una segunda tarea


40
Cinemática Diferencial Inversa
Solución de dos objetivos

• Funciones típicas para el segundo objetivo:


- Expresadas como un gradiente (maximizado localmente)

• Ejemplos:
- Medida de Manipulabilidad

- Distancia de límites articulares

- Distancia de un obstáculo

41
Cinemática Diferencial Inversa
Mínimos Cuadrados Amortiguados

• Problema de minimización:
1 1
min k‖ q ‖ 2
 ‖ ν  Jq ‖
q 2 2
• Solución:
q  J T (JJT  k 2 I ) 1 ν

• Ventaja:
- Evita las singularidades (el factor k “actúa” en las singularidades)

• Otros nombres:
- “Damped least-squares”
- Método de Levenberg-Marquadt

42
Temas

1. Introducción
2. Velocidad de Cuerpos Rígidos

3. Jacobiano Geométrico

4. Jacobiano Analítico

5. Singularidades Cinemáticas
6. Cinemática Diferencial Inversa
7. El Jacobiano y la Estática

43
El Jacobiano y la estática
Fuerzas y Torques generalizados

• Fuerzas y torques en un manipulador:


fuerza
f 
F 
m 
torque
(momento)

¿Relación entre τ y F?

τi: torques o fuerzas ejercidos por los motores de las articulaciones


F : fuerzas generalizadas equivalentes en el efector final

Fe: fuerzas generalizadas ejercidos por el entorno sobre el efector final


(en equilibrio estático: Fe = F)

44
El Jacobiano y la estática
Principio de Trabajo Virtual

• Fuerzas y torques en un manipulador:

f 
F 
m 
- Relación mediante el Jacobiano (usando principio de trabajo virtual):
 1 
 
τ  JTF τ   2
 
 
Jacobiano geométrico calculado en el  n 
punto donde se aplica la fuerza F
45
El Jacobiano y la estática
Dualidad entre Velocidad y Fuerza

ν  Jq

  Velocidad en el espacio Velocidad en el espacio


articular () Cartesiano (v, ω)

Fuerzas y torques en las Fuerzas generalizadas en el


articulaciones (τ) espacio Cartesiano (f, m)

τ  JTF
46
El Jacobiano y la estática
Transformaciones de Fuerza

• Transformación entre sistemas A y B:

 A f   A RB 0   Bf 
A   B A A  
 m   pˆ RB RB   B m 

• Ejemplo

47
Conclusiones

• La cinemática diferencial está basada en el uso del Jacobiano

• Existen dos tipos de Jacobianos: geométrico (que relaciona


velocidad lineal y angular) y analítico (que relaciona derivadas
temporales)

• La cinemática diferencial puede utilizarse para controlar la


posición del robot a través de su velocidad articular

• El Jacobiano también relaciona las fuerzas/torques en el efector


final con los torques ejercidos por los motores
Referencias

• B. Siciliano, L. Sciavicco, L. Villani, y G. Oriolo. Robotics: modelling,


planning and control. Springer Science & Business Media, 2010 (Capítulo 3)

• M.W. Spong, S. Hutchinson, y M. Vidyasagar. Robot Modeling and Control.


John Wiley & Sons, 2006 (Capítulo 4)

• R. Murray, Z. Li, Z, S. Sastry. A Mathematical Introduction to Robotic


Manipulation. CRC press, 1994 (Capítulo 2)

49

También podría gustarte