Está en la página 1de 44

Fundamentos de Robótica: 2017-I

Diseño y simulación de un robot


rígido de dos grados de libertad

Ecuaciones Diferenciales
OBJETIVOS

• Conocer y entender la aplicación matemática en el


diseño y modelado de robots.
• Aplicación de la dinámica y cinemática en la robótica.
• Uso de herramientas especializadas para la simulación
y puesta en marcha de un brazo robótico.

2
Temas

1. Introducción
2. Formulación de Euler-Lagrange

3. Energía Cinética y Potencial de un Robot

4. Dinámica del Robot usando Euler-Lagrange

5. Simulación
6. Aplicación
7. Conclusiones

8. Referencias
3
INTRODUCCIÓN

4
Dinámica

• ¿Qué es?
- Respuesta a: ¿por qué se mueve?
- Estudio de las causas del movimiento
- Estudio de las fuerzas y torques y su efecto en el movimiento

• Ejemplo elemental:

f  mx x m: masa
f x: posición
Segunda ley de m
f: fuerza
Newton

  J J: momento de inercia


Segunda ley de Euler J
𝜃(𝑡)
  θ: ángulo
 𝜏 τ: torque (momento)

- La dinámica está representada por expresiones de segundo orden


5
Dinámica en Robótica

• Establece la relación entre:

Fuerzas generalizadas   Movimiento del Robot:


sobre el robot: τ(t) q(t), (t), (t)

τexternos

τarticular
q(t)
Fuerzas generalizadas: Movimiento del robot:
- τarticular: torques en las articulaciones - Trayectoria articular
- τexternos: fuerzas/torques aplicados por - Trayectoria Cartesiana
o sobre el entorno (mediante alguna (del efector final)
parte del robot)

6
Modelo Dinámico de un Robot

• Modelo dinámico (en el espacio articular q): f  mx

  C (q, q )q  g(q)  τ


M (q)q Segundo orden
donde:

  q: Coordenadas articulares generalizadas


M(q): Matriz de masa o inercia
C(q,): Fuerzas centrífugas y de Coriolis
g(q): Fuerzas de gravedad
τ: Fuerzas generalizadas

• Al modelar dinámicamente (un robot) se busca …


- Encontrar M, C, g que definen el modelo dinámico del robot
- Modelo dinámico permite control y simulación

• “Problemas” en dinámica: dinámica directa y dinámica inversa


7
Dinámica Directa

•  Consiste en:
Aplicar torques/fuerzas (τ) y obtener el movimiento del robot ().

 1 (t )   q1 (t ) 
τ (t )      (t )    
q  
 n (t )   qn (t ) 
entrada salida
n grados de libertad

• Uso principal: simulación dinámica


Se usa el modelo dinámico directo y se integra numéricamente las ecuaciones
diferenciales

q
 (t )
Modelo Integración
τ (t ) q(t )
dinámico directo numérica

simulador dinámico
8
Dinámica Inversa

•  Consiste en:
Obtener los torques/fuerzas (τ) necesarios para realizar un movimiento deseado ()

q d (t ), q d (t ), q
 d (t ) τ d (t )

Movimiento Torque/fuerzas
deseado requeridos

• Uso principal: control


Dadas especificaciones de movimiento (a nivel de aceleración), calcular analíticamente
τ con base en una ley de control

9
Métodos para Calcular la Dinámica

Euler-Lagrange Newton-Euler
(basado en energía) (basado en balance fuerzas/torques)

m
f

Energía cinética: T Fuerzas: f


f
Energía potencial: U Momentos: m
m

• Ecuaciones en forma simbólica • Ecuaciones en forma numérica (recursiva)


• Apropiado para: • Apropiado para:
- Estudio de propiedades dinámicas - Dinámica inversa en tiempo real
- Análisis de esquemas de control - Implementación de esquemas de control

Nota: Euler-Lagrange formalmente se puede


obtener del: principio de d’Alembert, de Hamilton,
de trabajo virtual, etc.
10
Temas

1. Introducción

2. Formulación de Euler-Lagrange
3. Energía Cinética y Potencial de un Robot
4. Dinámica del Robot usando Euler-Lagrange

5. Simulación

6. Aplicación
7. Conclusiones
8. Referencias
11
Formulación de Euler-Lagrange

•  Método basado en la energía del sistema

• Energía cinética
1 2
- Debida al movimiento de un cuerpo (rígido): T  m x
2
- Notación: , T, K, Ec

• Energía potencial
- Debida a la posición o a la configuración del cuerpo (rígido): U   mgh
- Notación: , U, P, Ep (h: altura)

• Lagrangiano

L (q, q )  T (q, q )  U(q)

Energía Energía
cinética potencial

donde 𝐪∈
  ℝ𝑛 : coordenada generalizada (usualmente: variables articulares)

12
Formulación de Euler-Lagrange

• Ecuaciones del movimiento


- Formulación de Euler-Lagrange término a término:

d  L  L i  1, , n
   i n coordenadas
dt  q i  qi generalizadas

Fuerzas generalizadas
(hacen trabajo sobre qi)

- Formulación de Euler Lagrange de forma vectorial:

T T  q1   1 
d  L   L  q     τ    
     τ
dt  q   q 
 qn   n 

13
Formulación de Euler-Lagrange

Ejemplo 1: Péndulo simple y


x
Encontrar el modelo dinámico de un péndulo simple usando la x
formulación de Euler-Lagrange 
Solución 
• Posición y velocidad de la masa: l
x  l sin  x   l cos 
y  l cos  y   l sin 
• Energía potencial: y
U  mg (l cos  ) m
• Energía Cinética:
1 2
T  m x
2
1 1 1
T 
2 2
 
m  x 2  y 2   m  2l 2 cos 2    2l 2 sin 2   ml 2 2
2
• Lagrangiano: 1 2 2
L T U  ml   mgl cos 
2
14
Formulación de Euler-Lagrange

Ejemplo 1: Péndulo simple y


x
• Lagrangiano x
1 2 2
L ml   mgl cos  
2
• Derivadas del Lagrangiano 
l
L
  mgl sin 

L d  L  y
 ml 2     ml 
2 

 dt    m
• Formulación de Euler-Lagrange:
qi  
d  L  L
  
dt    

ml 2  mgl sin   

15
Formulación de Euler-Lagrange

Ejemplo 1: Péndulo simple


• Nota importante:
- La energía potencial se define como cero en un punto arbitrario
- Se puede tomar otro sistema de referencia
ŷ ŷ

U0 x̂ x̂

 
l l

m m
U0

U  mg (l cos  ) U  mg (l  l cos  )  mgl (1  cos  )

U

16
Formulación de Euler-Lagrange

¿Qué pasa si? Tenemos un péndulo doble


Encontrar el modelo dinámico de un péndulo doble usando la formulación de Euler-
Lagrange

1 x̂

1 l1
2
m1 l2
2
m2

Respuesta:
(m1  m2 )l11  m2l22c1 2  m2l222 s1 2  (m1  m2 ) gs1   1
m2l22  m2l11c1 2  m2l112 s1 2  m2 gs2   2

17
Temas

1. Introducción
2. Formulación de Euler-Lagrange

3. Energía Cinética y Potencial de un Robot


4. Dinámica del Robot usando Euler-Lagrange

5. Simulación

6. Aplicación
7. Conclusiones
8. Referencias
18
Conceptos Preliminares
Centro de Masa

Trayectoria del CdM

Centro de Masa
(CdM)

El centro de masa (CdM) es el punto que se mueve como si:


1. Toda la masa del sistema estuviese concentrada allí
2. Todas las fuerzas externas estuviesen aplicadas allí

19
Conceptos Preliminares
Centro de Masa

• Centro de masa (pc) para un conjunto de partículas:

pc 
 pm
i i i pi : posición de la i-ésima partícula
m i i
mi : masa de la i-ésima partícula

Ejemplo:
El sistema mostrado en la figura consta de tres objetos puntuales con igual masa m cada uno y
localizados en las esquinas de un triángulo equilátero. Calcular el centro de masa pc = (xc, yc)
del sistema

xc  0 (por simetría)
3

ym i i
Hm  0m  0m H
yc  i 1
3  
mmm 3
m
i 1
i

20
Conceptos Preliminares
Centro de Masa
 ,V
• Centro de masa (pc) para un cuerpo rígido:

1 1 pc
p c   p dm   p  dV p
mm mV

p : Posición de algún punto del cuerpo rígido


m: Masa total del cuerpo rígido
: Densidad del cuerpo rígido p c  ( xc , yc , zc )
V: Volumen del cuerpo rígido p  (x, y , z )

• Caso particular:
- Si el sistema de referencia está en el CdM, el CdM es el origen:
p
1
p c   p  dV  0
mV

21
Conceptos Preliminares
Centro de Masa

• Velocidad del CdM (pci) de un eslabón: ωci


vci
Para el eslabón i: velocidad lineal y angular
debidas a cada articulación anterior:
pci
v ci  J vi1 q 1  J vi2 q 2    J vii q i  J vi q
ωi  J i 1 q1  J i 2 q 2    J i i q i  J i q pci: posición CdM
pk-1: posición artic. k-1
donde:
 p  Usualmente
 J vik   z k 1   J vik   z k 1  (pci  p k 1 )   ci  derivando la
 i    i     qk  posición
 J k   0   J k   z k 1  z 
 k 1 
Para articulación prismática Para articulación de revolución

 J vi   J v1 0  0
i Jacobiano de
J vi2  J vii velocidad lineal
• Jacobiano del CdM:  i i 
 J    J 1 J i 2  Ji i 0  0  Jacobiano de
velocidad angular

Jacobiano del centro de masa del eslabón i


22
Conceptos Preliminares
Tensor de Inercia

• Es el “equivalente a la masa” para la rotación


- Depende de la distribución de masa y del eje de rotación escogido
- Da una idea de cómo está distribuida la masa en un cuerpo rígido
• Algunos ejemplos:

2 2 
 5 mr 0 0  1 
12 m(3r  h )
2 2
  0 0 
2 2
I  0 mr 0  
1

 5  I  0 m(3r 2  h 2 ) 0 
   12 
 0 2 2
0 mr  1 2 
 5   0 0 mr
 2 

2 2  m 2 2 
 3 mr 0 0  12 (b  c ) 0 0 
   
2 2  m 2 2 
I  0 mr 0  I  0 (a  c ) 0
   12 
3 

2 2

 m 2 2 
 0 0 mr 0 0 (a  b )
 12 
 3 

23
Energía Cinética de un Robot

• Para un eslabón i (cuerpo rígido) v ci


- Energía cinética (T) en el sistema {0}: ωi
1 1
Ti  mi vTci v ci  ωTi I _i ωi
2 2 mi
mi : masa {0}
v ci : I
i
velocidad del centro de masa
ωi : velocidad angular
Ii: tensor de inercia (en el sistema
de referencia de la base del robot) varía con el movimiento del eslabón

• Usando el tensor de inercia en el sistema del eslabón ( ) Ii es constante


1 1
Ti  mi vTci v ci  ωiT Ri I_i Ri T ωi Ri : rot. sistema del eslabón
2 2 con respecto a la base

- Energía cinética en función de las articulaciones v ci  J vi q


1 1
Ti  mi  q T J viT   J vi q    q T J i T  Ri I_i RiT  J i q 
2 2 ωi  J i q

Nota: todo está en el sistema de la base (excepto )Ii 24


Energía Cinética de un Robot

• Para todo el robot


- La energía cinética total se suma (n eslabones):
n
T   Ti Suma de la energía cinética de cada eslabón
i1

• Reemplazando la energía cinética de cada eslabón:


n
1 1
T   mi q T J viT J vi q  q T Ji T Ri I_i RiT J i q
i 1 2 2
1 T n 
T  q   mi J viT J vi  J i T Ri I_i RiT J i  q
2  i 1 
• Definición de matriz de inercia o masa:
n
M (q)   mi J viT J vi  J i T Ri I_i RiT J i
- Es simétrica
- Es definida positiva
i 1

- Energía cinética del robot:


1
T (q, q )  q T M (q)q
2
25
Energía Potencial de un Robot

• Para un eslabón i (cuerpo rígido)


- Energía potencial (U) en el sistema {0}:
g0
U_i   m g p ci
T
i 0

mi : masa p ci
g0 : Vector de aceleración de la gravedad
p ci : posición del centro de masa
{0}
• Para todo el robot
- La energía potencial se suma (los n eslabones)

n
U(q)   mi gT0 pci
i 1

p ci  p ci (q)
- Notar que la posición del CdM depende de la config. articular:
Nota: todo está en el sistema de referencia de la base
26
Temas

1. Introducción
2. Formulación de Euler-Lagrange

3. Energía Cinética y Potencial de un Robot

4. Dinámica del Robot usando Euler-Lagrange

5. Simulación

6. Aplicación
7. Conclusiones
8. Referencias
27
Dinámica del Robot: Euler-Lagrange

• Lagrangiano:
L (q, q )  T (q, q )  U(q)
Energía Energía
cinética potencial

• Energía Cinética para un robot:


n
1
T  q T M (q)q M (q)   mi J viT J vi  J i T Ri I_i RiT J i
i 1
2
I_i : tensor de inercia del eslabón i en el
M (q) : matriz de inercia o masa sistema de referencia del eslabón i (constante)
J vi : Jacobiano de velocidad lineal del centro de
• Energía Potencial para un robot: i
masa del eslabón i
J  : Jacobiano de velocidad angular del eslabón i
n mi : masa del eslabón i
U   mi gT0 pci Ri : rotación (sistema del eslabón i con respecto
i 1
al sistema de base)

g0 : vector de aceleración de gravedad


p ci : posición del CdM del eslabón i
n: Número de articulaciones
CdM: Centro de Masa
28
Dinámica del Robot: Euler-Lagrange

• Lagrangiano
n
1 T
L (q, q )  q M (q)q   mi gT0 p ci
2 i 1

• Formulación de Euler-Lagrange (ecuaciones de Movimiento):


T T
d  L   L 
      τ tot
dt  q   q 

- Reemplazando el Lagrangiano y resolviendo:


 1  M (q ) 
T
  n

   M (q)  q      v
 i 0   τ tot
T iT
M (q)q   q
 J (q ) m g
 2  q    i 1 

C (q, q ) g (q )

  C (q, q )q  g (q)  τ tot


M (q)q
- Modelo dinámico:
p ci
Nota: J vi (q) 
q 29
Dinámica del Robot: Euler-Lagrange

• Dinámica del robot en forma vectorial:

  C (q, q )q  g(q)  τ tot


M (q)q

donde
  q: Coordenadas articulares generalizadas
M(q): Matriz de masa o inercia
C(q,): Fuerzas centrífugas y de Coriolis
g(q): Fuerzas gravitacionales (debidas al peso de cada eslabón)
τtot: Fuerzas generalizadas totales (no conservativas)

- El modelo dinámico de un robot (y de cualquier sistema de cuerpos rígidos) siempre se


puede escribir de esta forma
- Algunas propiedades:

M (q)  M T (q) M (q)  2C (q, q ) es antisimétrico

M (q)  0
30
Dinámica del Robot: Euler-Lagrange
Fuerzas Generalizadas

• Componentes de la fuerza generalizada (τtot):

 tot     ext   m   fr

- Torque aplicado (por los motores) en las articulaciones: 


- Torque debido a fuerzas/momentos externos:
J: Jacobiano geométrico del
f  punto donde se aplica la fuerza
 ext  J T  ext  fext: fuerza externa
 mext  mext: momento (torque) externo

- Torque debido a la inercia del motor


 m  I mq
 Im: Tensor de inercia del motor

Fs: matriz diagonal de fricción


- Torque debido a la fricción enfr las
 Farticulaciones
s sgn(q )  Fv q
  estática (Coulomb)
Fv: matriz diagonal de fricción
viscosa

31
Dinámica del Robot: Euler-Lagrange
Efecto de la gravedad
p c3

p c2 p cn
m3g 0
p c1 m2 g 0
mn g 0

m1g 0

• Vector de gravedad:
n
g(q)   J viT (q)mi g 0
i 1

   J v1 (q)   m1g 0    J v2 (q)   m2 g0      J vn (q) 


T T T
 mn g0 
- Representa los torques sobre el robot debidos al peso de cada eslabón

32
Temas
1. Introducción

2. Formulación de Euler-Lagrange

3. Energía Cinética y Potencial de un Robot


4. Dinámica del Robot usando Euler-Lagrange

5. Simulación

6. Aplicación

7. Conclusiones

8. Referencias
33
Simulación del modelo dinámico

Modelado
Para realizar las simulaciones se consideraron los parámetros mostrados en la siguiente
tabla :

34
Simulación del modelo dinámico

Modelado
De acuerdo al método de Euler-Lagrange las ecuaciones de movimiento que gobiernan
a un robot rígido de n grados de libertad están determinadas por :

35
Simulación del modelo dinámico

Uso de Herramientas
De esta manera, una vez que se tiene el modelo dinámico del robot con la ayuda del
programa Matlab®-Simulink® se procede a realizar las simulaciones numéricas.

36
Simulación del modelo dinámico

Simulación 1 Simulación 2

Haciendo que los torques de ambos Para esta simulación se imponen los
eslabones tengan valores de τ1 = 0 N-m valores de torque siguientes: τ1 = 1.3 N-
y τ2 = 0.15 N-m. m y τ2 = 0 N-m.

37
Simulación del modelo dinámico

Simulación 3 Simulación 4

Para esta simulación se imponen valores Aquí, se aplican valores de torques


diferentes de cero a ambos torques, es distintos de cero con sentido contrario,
decir, τ1 = 1.6 N-m y τ2 = 0.8 N-m. es decir τ1 = 1.6 N-m y τ2 = -0.3 N-m.

38
Temas
1. Introducción

2. Formulación de Euler-Lagrange

3. Energía Cinética y Potencial de un Robot


4. Dinámica del Robot usando Euler-Lagrange

5. Simulación

6. Aplicación

7. Conclusiones

8. Referencias
39
Implementación de resultados

Desarrollo del IDE


Se desarrollo un IDE de prueba en el programa Matlab® para la puesta en
marcha y demostración del robot.

40
Temas
1. Introducción

2. Formulación de Euler-Lagrange

3. Energía Cinética y Potencial de un Robot


4. Dinámica del Robot usando Euler-Lagrange

5. Simulación

6. Aplicación

7. Conclusiones

8. Referencias
41
Conclusiones

1. Se dedujo el modelo dinámico de un robot rígido de dos


grados de libertad mediante el formalismo de Euler-Lagrange.
2. Se tiene mejor entendimiento de la matemática empleada en la
robótica.
3. Desarrollo un programa en Matlab®-Simulink®, por el
conveniente de poder presentar el modelo dinámico en un
diagrama a bloques simple.
4. Estudio desarrollado para este sistema permitirá en el futuro
cercano la construcción de un prototipo mas estable que
permita realizar mejores pruebas experimentales.

42
Temas
1. Introducción

2. Formulación de Euler-Lagrange

3. Energía Cinética y Potencial de un Robot


4. Dinámica del Robot usando Euler-Lagrange

5. Simulación

6. Aplicación

7. Conclusiones

8. Referencias
43
Referencias

1. Kuo, B., Sistemas de Control Automático, (PrenticeHall, México, 1996).

2. Barrientos, A., Penin, L. F., Balaguer, C. y Aracil, R.,Fundamentos de


Robótica, (McGraw-Hill/Interamericana,México, 2007).

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


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

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


Control. John Wiley & Sons, 2006 (Capítulo 7)

44

También podría gustarte