ROBOTICA
Cinemática diferencial
Jacobianos
Ing. Iván A. Calle Flores
1
Contenido
1. Jacobiano para cualquier punto
2. Jacobianos de los centro de masa de los eslabones
3. Jacobianos de los centro de masa de los motores
4. Jacobiano analítico
1. JACOBIANO PARA CUALQUIER
PUNTO
• Es posible hallar la velocidad de
cualquier punto del robot
mediante el calculo de una
matriz Jacobiana.
• El Jacobiano se usa en la
derivación del modelo dinámico
del robot
JACOBIANO PARA CUALQUIER
PUNTO
• La contribución de cada
junta en las matrices
Jacobianas Jv, Jw tienen
la siguiente forma
• Se asume que ya se tiene
la cinemática según DH.
JACOBIANO PARA CUALQUIER
PUNTO
• En especial, es
importante hallar la
velocidad
“Jacobiano” del
centro de masa de
un eslabón.
• Se sobreentiende
que el cuerpo es
rígido.
JACOBIANO PARA CUALQUIER
PUNTO
• La matriz Jacobiana para joint "i"
un punto ubicado en el
zi-1 zi
eslabón “i” tiene la forma
link "i"
• De donde se tiene la
siguiente formula de
velocidades
JACOBIANO PARA CUALQUIER
PUNTO
• Por ejemplo el Jacobiano para el punto mostrado tiene la siguiente forma:
z00 (oc − o0 ) z10 (oc − o1 ) 0
J (q ) = 0 0
z0 z1 0
JACOBIANO PARA CUALQUIER
PUNTO
• La relación entre la joint "i-1" zm i joint "i"
velocidad del eje de
salida del motor y su zi-1 motor "i" zi ,qi
junta es
θm i Link "i-1"
qi =
k ri
• El eje de rotación del
motor no es
necesariamente igual al
eje z de la junta.
JACOBIANO PARA CUALQUIER
PUNTO
• Analizar el Kr y el Zm
JACOBIANO PARA CUALQUIER
PUNTO
• Analizar el Kr y el Zm
• En el caso de la joint "i-1" zm i joint "i"
velocidad lineal el
Jacobiano tiene la zi-1 motor "i" zi ,qi
siguiente forma
Jvm = Jv1 Jvi-1 0 0 Link "i-1"
i
joint "i-1" zm i joint "i"
• La velocidad angular del
motor “i” esta dado por zi-1 motor "i" zi ,qi
w 00,mi = w 0,i-1
0
+k riqizm i
Link "i-1"
• De donde el Jacobiano
Jw esta dado por
Jwm = Jw1 Jwi-1krizmi 0
i
2. JACOBIANO PARA EL CENTRO
DE MASA DE LOS ESLABONES
• La velocidad del centro de masa
define la energía cinética la cual
se usa para el modelamiento
dinámico.
Ejemplo 1. Jacobianos de los C.M de un
manipulador planar de 2 GDL
a. Asignación de sistemas coordenados
b. Tabla de parámetros DH
link qi di ai ai
1 q1 0 a1 0
2 q2 0 a2 0
Ejemplo 1. Jacobianos de los C.M de un
manipulador planar de 2 GDL
Paso 1. Definimos las coordenadas de cada centro de masa
respecto al sistema soldado del eslabon
-LCM1x
p1CM1 = 0
0
• Lo llevamos a tierra
p0CM1 = T10p1CM1
(a1 -L cm1x )c1
pCM1
0
= (a1 -L cm1x )s1
0 robot_01.m
Ejemplo 1. Jacobianos de los C.M de un
manipulador planar de 2 GDL
-LCM2x
pCM2
2
= 0
0
• Lo llevamos a tierra
p0CM2 = T20pCM2
2
a1c1 +(a2 -L cm2x )c12
p0CM2 = a1s1 +(a2 -L cm2x )s12
0
Ejemplo 1. Velocidades de los C.M de un
manipulador planar de 2 GDL
Paso 2. Definimos el Jv del centro de
masa de cada eslabón
JvCM1 ( q) = z0 ×(pCM1 - o0 ) 0
0
-(a1 -L cm1x )s1 0
JvCM1 ( q) = (a1 -L cm1x )c1 0
0 0
-(a1 -L cm1x )s1q1
v CM1 = JvCM1 q v CM1 = (a1 -L cm1x )c1q1
0
Ejemplo 1. Velocidades de los C.M de un
manipulador planar de 2 GDL
* Para el centro de masa del eslabón 2
JVCM2 ( q) = z00 ×(pCM2 - o0 ) z10 × (pCM2 - o1 )
-a1s1 -(a2 -L cm2x )s12 -(a2 -L cm2x )s12
JvCM2 ( q) = a1c1 +(a2 -L cm2x )c12 (a2 -L cm2x )c12
0 0
(-a1s1 -(a2 -L cm2x )s12 )q1 + (-(a2 -L cm2x )s12 )q2
v CM2 = (a1c1 +(a2 -L cm2x )c12 )q1 + ((a2 -L cm2x )c12 )q2
0
Ejemplo 1. Jacobianos de los C.M de un
manipulador planar de 2 GDL
Paso 3. Definimos el Jw para cada C. M
0 0
Jw1 = z 0
0 0 Jw1 ( q) = 0 0
1 0
0 0
Jw2 = z 0
z
0 Jw2 ( q) = 0 0
0 1
1 1
Ejemplo 1. Jacobianos de los C.M de un
manipulador planar de 2 GDL
Para el caso de los motores
Asumiendo que el centro de
masa del motor de cada junta
esta en el origen del sistema de
coordenadas del link anterior se
tiene:
0
pCM_m1
0
= 0
0
Ejemplo 1. Jacobianos de los C.M de un
manipulador planar de 2 GDL
Para el motor 2
0
p1CM_m2 = 0
0
• Lo llevamos a tierra
p0CM_m2 = T10p1CM_m2
a1c1
p0CM_m2 = a1s1
0
Ejemplo 1. Jacobianos de los C.M de un
manipulador planar de 2 GDL
Paso 2. Definimos los
jacobianos para cada motor
JvCM_m1 = 0 0
Jwm1 = Kr1zm1 0
• De donde tenemos
0 0 0 0
JvCM_m1 ( q) = 0 0 Jwm1 ( q) = 0 0
0 0 Kr1 0
Ejemplo 1. Jacobianos de los C.M de un
manipulador planar de 2 GDL
Para el motor 2
JVCM_m2 = z00 × (pCM_m2 - o0 ) 0
Jwm2 = z 0
0 Kr2zm2
• De donde tenemos
-a1s1 0 0 0
JvCM_m2 = a1c1 0 Jw2 = 0 0
0 0 1 Kr2
Ejemplo 2. Jacobianos de los CM de un
manipulador de 2 GDL en el espacio
link qi di ai ai
1 q1 d1 0 pi/2
2 q2 0 a2 0
Msc. Iván A. Calle Flores
Ejemplo 2. Jacobianos de los CM de un
manipulador de 2 GDL en el espacio
Paso 1. Definimos las coordenadas de cada centro de masa
0
pCM1 = -Lcm1y
1
0
• Lo llevamos a tierra
p0CM1 = T10p1CM1
0
pCM1 =
0
0
d1 -L cm1y
robot_02.m
Ejemplo 2. Jacobianos de los CM de un
manipulador de 2 GDL en el espacio
-Lcm2x
p2CM2 = 0
0
• Lo llevamos a tierra
(a2 -Lcm2x )c1c2
p0CM2 = (a2 -L cm2x )s1c2
d1 +(a2 -L cm2x )s2
Ejemplo 2. Jacobiano de los CM de un
manipulador de 2 GDL en el espacio
Paso 2. Definimos matrices Jv
* Para el centro de masas del eslabón 1
Jv CM1 ( q) = z ×(pCM1 - o0 ) 0
0
0
0 0 0
JvCM1 ( q) = 0 0
v CM1 = 0
0 0 0
Ejemplo 2. Jacobiano de los CM de un
manipulador de 2 GDL en el espacio
* Para el centro de masas del eslabón 2
JCM2 ( q) = z00 × (pCM2 - o0 ) z10 × (pCM2 - o1 )
-(a2 -L CM2x )s1c2 -(a2 -L CM2x )c1s2
JvCM2 = (a2 -L CM2x )c1c2 -(a2 -L CM2x )s1s2
0 (a2 -L CM2x )c2
-(a2 -LCM2x )s1c2q1 -(a2 -L CM2x )c1s2q2
v CM2 = (a2 -L CM2x )c1c2q1 -(a2 -L CM2x )s1s2q2
(a2 -L CM2x )c2q2
Ejemplo 2. Jacobiano de los CM de un
manipulador de 2 GDL en el espacio
Paso 3. Definimos el Jw para cada C. M
0 0
Jw1 = z00 0 Jw1 ( q) = 0 0
1 0
0 s1
Jw2 = z0
0
z
0
1 Jw2 ( q) = 0 -c1
1 0
Para el caso de los motores
Asumiendo que el centro de
masa del motor de cada junta
esta en el origen del sistema de
coordenadas del link anterior se
tiene:
0
pCM_m1
0
= 0
0
19/02/14
Para el motor 2
0
p1CM_m2 = 0
0
• Lo llevamos a tierra
p0CM_m2 = T10p1CM_m2
0
p0CM_m2 = 0
d1
19/02/14
Paso 2. Definimos los
jacobianos para cada motor
JvCM_m1 = 0 0
Jwm1 = Kr1zm1 0
• De donde tenemos
0 0 0 0
JvCM_m1 ( q) = 0 0 Jwm1 ( q) = 0 0
0 0 k r1 0
Para el motor 2
JVCM_m2 = z00 × (pCM_m2 - o0 ) 0
Jwm2 = z 0
0 Kr2zm2
• De donde tenemos
0 0 0 k r2s1
JvCM_m2 = 0 0 Jw2 = 0 -k r2c1
0 0 1 0
Ejemplo 3. Jacobianos de los CM de un
manipulador de 2 GDL con hombro
Ejemplo 3. Jacobianos de los CM de un
manipulador de 2 GDL con hombro
link qi di ai ai
1 q1 d1 0 pi/2
2 q2 d2 a2 0
Ejemplo 3. Jacobianos de los CM de un
manipulador de 2 GDL con hombro
Paso 1. Definimos las coordenadas de cada centro de masa
0
pCM1 = -Lcm1y
1
L
cm1z
• Lo llevamos a tierra
Lcm1zs1
pCM1 = -Lcm1zc1
0
d1 -Lcm1y
Ejemplo 3. Jacobianos de los CM de un
manipulador de 2 GDL con hombro
La ubicacion
del centro de
masa de un
eslabon lo
obtenemos
con ayuda del
software de
Ingenieria
Ejemplo 3. Jacobianos de los CM de un
manipulador de 2 GDL con hombro
-Lcm2x
p2CM2 = 0
0
• Lo llevamos a tierra
d2s1 +(a2 -L cm2x )c1c2
p0CM2 = -d2c1 +(a2 -L cm2x )s1c2
d1 +(a2 -L cm2x )s2
Ejemplo 3. Jacobianos de los CM de un
manipulador de 2 GDL con hombro
Paso 2. Definimos el Jv para cada C. M
Jv CM1 ( q) = z00 ×(pCM1 - o0 ) 0
LCM1zc1 0
JvCM1 ( q) = LCM1zs1 0
0 0
Ejemplo 3. Jacobianos de los CM de un
manipulador de 2 GDL con hombro
* Para el centro de masas del eslabón 2
JVCM2 ( q) = z00 ×(pCM2 - o0 ) z10 × (pCM2 - o1 )
d2c1 -(a2 -L CM2x )s1c2 -(a2 -L CM2x )c1s2
JvCM2 ( q) = d2s1 +(a2 -L CM2x )c1c2 -(a2 -L CM2x )s1s2
0 (a2 -L CM2x )c2
Ejemplo 3. Jacobianos de los CM de un
manipulador de 2 GDL con hombro
Paso 3. Definimos el Jw para cada C. M
0 0
Jw1 = z0
0
0 Jw1 ( q) = 0 0
1 0
0 s1
Jw2 = z00 z10 Jw2 ( q) = 0 -c1
1 0
Ejemplo 3. Jacobianos de los CM de un
manipulador de 2 GDL con hombro
Ahora hallamos los Jacobianos de
los motores
0
pCM_m1
0
= 0
pm1z
0
p1CM_m2 = 0
0
p0CM_m2 = T10p1CM_m2
0
p0CM_m2 = 0
d1
JvCM_m1 ( q) = 0 0
Jwm1 ( q) = Kr1zm1 0
0 0
JvCM_m1 ( q) = 0 0
0 0
0 0
Jwm1 ( q) = 0 0
Kr1 0
JVCM_m2 = z00 × (pCM_m2 - o0 ) 0
Jwm2 = z00 Kr2zm2
0 0
JvCM_m2 = 0 0
0 0
0 Kr2s1
Jw2 = 0 -Kr2c1
1 0
Ejemplo 4. Jacobianos de los CM de un
manipulador de 3 GDL
a. Asignación de sistemas coordenados Y3
O3
a3 X3
Y1 Y2
O2 Z3
O1 a2 X2
Z1 X1 Z2
d1
b. Tabla de parámetros DH
Z0
Link qi di ai ai
O0 Y0
X0 1 q1 d1 0 /2
2 q 2 0 a2 0
3 q 3 0 a3 0
Msc. Iván A. Calle Flores
Ejemplo 3. Jacobianos de los CM de un
manipulador de 3GDL
Paso 1. Definimos las coordenadas de cada C. M
0
pCM1 = -Lcm1y
1
0
• Lo llevamos a tierra
0
pCM1 =
0
0
d1 -Lcm1y
robot_03.m
Ejemplo 3. Jacobianos de los CM de un
manipulador de 3GDL
-Lcm2x
2
p CM2 = 0
0
• Lo llevamos a tierra
(a2 -Lcm2x )c1c2
p0CM2 = (a2 -L cm2x )s1c2
d1 +(a2 -L cm2x )s2
Ejemplo 3. Jacobianos de los CM de un
manipulador de 3GDL
-Lcm3x
p3CM3 = 0
0
• Lo llevamos a tierra
a2c1c2 +(a3 -L cm3x )c1c23
p0CM3 = a2s1c2 + (a3 -L cm3x )s1c23
d1 +a2s2 +(a3 -L cm3x )s23
Ejemplo 3. Jacobiano de los CM de un
manipulador de 3GDL
Paso 2. Definimos el Jv para cada C. M
Jv CM1 ( q) = z × (pCM1 - o0 ) 0 0
0
0
0 0 0 0
JvCM1 = 0 0 0 v CM1 = 0
0 0 0 0
Ejemplo 3. Jacobiano de los CM de un
manipulador de 3GDL
* Para CM2
JCM2 ( q) = z00 ×(pCM2 - o0 ) z10 × (pCM2 - o1 ) 0
-(a2 -L cm2x )s1c2 -(a2 -L cm2x )c1s2 0
JvCM2 = (a2 -L cm2x )c1c2 -(a2 -L cm2x )s1s2 0
0 (a2 -L cm2x )c2 0
Ejemplo 3. Jacobiano de los CM de un
manipulador de 3GDL
* Para CM3
JVCM3 = z00 ×(pCM3 - o0 ) z10 × (pCM3 - o1 ) z20 × (pCM3 - o2 )
-a2s1c2 -(a3 -L cm3x )s1c23 -a2c1s2 -(a3 -L cm3x )c1s23 −(a3 -L cm3x )c1s23
Jv = a2c1c2 +(a3 -L cm3x )c1c23 -a2s1s2 -(a3 -L cm3x )s1s23 −(a3 -L cm3x )s1s23
0 a2c2 + (a3 -L cm3x )c23 (a3 -L cm3x )c23
Ejemplo 3. Jacobiano de los CM de un
manipulador de 3GDL
Paso 3. Definimos el Jw para cada C. M 0 0 0
* Para CM1
Jw1 = 0 0 0
Jw CM2 = z 0
0 0 1 0 0
0
0 s1 0
Jw2 = 0 -c1 0
* Para CM2
Jw CM2 = z 0
0 z
0
1 0 1 0 0
* Para CM3 0 s1 s1
Jw3 = 0 -c1 -c1
Jw CM3 = z 0
0 z
0
1 z
0
2
1 0 0
2. JACOBIANO ANALITICO
• Otra manera de hallar las
velocidades del robot es a través
del Jacobiano Analítico