Está en la página 1de 32

Fundamentos de

Robótica
Dinámica del
Robot
Estas transparencias han sido preparadas por A. Barrientos como
Osar Barambones. UPV/EHU
complemento didáctico al libro Fundamentos de Robótica 2ª edición
(McGraw-Hill 2007)
Modelo dinámico de un
robot
b t
• Objetivo: conocer la relación entre el movimiento del robot
y las fuerzas implicadas en el mismo
• Relación matemática entre:
– La localización del robot definida por sus variables articulares o
por las coordenadas de localización de su extremo
extremo, y sus
derivadas: velocidad y aceleración.
– Las fuerzas y pares aplicados en las articulaciones (o en el
extremo del robot).
– Los parámetros dimensionales del robot, como longitud, masas e
inercias de sus elementos.

Modelado dinámico Oscar Barambones. UPV/EHU 1


¿Qué es un modelo
dinámico? ejemplo
Ecuación del modelo dinámico:

F  Mx  Bx  Kx
K  Mg
M
K Permite relacionar la evolución de
x(t) con los cambios de F(t)

F 1.4
Step Response
x
M 1.2

B Amplitude 08
0.8

F 0.6

x 0.4

02
0.2

0
0 2 4 6 8 10 12
Time (sec)

Modelado dinámico Oscar Barambones. UPV/EHU 2


Complejidad del modelo
dinámico
á de un robot
• Crece con el numero de GDL del robot
• Interrelación entre los movimientos de las articulaciones
(fuerzas de Coriolis)
• Relaciones no lineales
• No siempre es posible su obtención en forma cerrada
(ecuaciones diferenciales de orden 2 acopladas a integrar)
• En ocasiones se debe recurrir a procedimientos numéricos
iterativos
• Frecuentemente
F t t se realizan
li simplificaciones
i lifi i
• Necesidad de incluir los actuadores y su dinámica

Modelado dinámico Oscar Barambones. UPV/EHU 3


Utilidad del modelo
di á i
dinámico d
de un robot
b t
 Simulación del movimiento del robot
 Diseño y evaluación de la estructura mecánica del
robot
 Dimensionamiento de los actuadores
 Diseño y evaluación del control dinámico del robot
 Formar parte del propio algoritmo de control (en (
línea)

Modelado dinámico Oscar Barambones. UPV/EHU 4


Modelos dinámicos directo e
inverso de un robot
• Modelo dinámico directo
Expresa la evolución temporal de las coordenadas articulares
del robot en función de las fuerzas y pares que intervienen
q(t)=f((t))

• Modelo dinámico inverso


Expresa las fuerzas y pares que intervienen en función de la
evolución de las coordenadas articulares y sus derivadas
(t)
(t)=f(q(t))
f(q(t))

El modelo directo se resuelve por integración del inverso

Modelado dinámico Oscar Barambones. UPV/EHU 5


Formulaciones del modelo
dinámico de un robot
d
• Formulación de Newton-Euler
F  dt
(mv )

– Basado en la segunda ley de d


Newton  T  dt (I )  I      I  

L  Ec  Ep
• Formulación de Lagrange
d L L
– Basada en el balance energético
i  
dt  qi  qi

Modelado dinámico Oscar Barambones. UPV/EHU 6


Formulación de Newton.
Ejemplo robot 1 gdl

· Ley de Newton
Newton-Ley
Ley de Euler:
d
 F  dt
d
((mv )

d
 dt (I )  I      I  
T 

· Equilibrio
q fuerzas/pares:
p

d 2
2 
  MgLcos
g   I 2   =ML  +MgLcos
g 
dt
Modelado dinámico Oscar Barambones. UPV/EHU 7
Formulación de Lagrange.
Ejemplo robot 1 gdl
L  Ec  E p L : Función Lagrangiana.
Ec: energíaí cinética.
i éti
d L L Ep: energía potencial.
i   τi: fuerza o pares aplicado sobre qi.
dt  qi  qi
qi: coordenadas generalizadas (articulares).

1 2
Ec  I  con I = ML2
2
E p  Mgh M Lsen
M h  MgL
L
 MgLcos

1 L d L L
L  Ec  Ep  ML2 2  MgLsen 

 ML2 
dt    

2
d L
 ML 2
 ML2
  MgLcos
M L =
dt 

Modelado dinámico Oscar Barambones. UPV/EHU 8


Formulación de Newton.
Ejemplo robot 2 gdl (1)
m2 z
2

Robot Polar en disposición d2


x2
tumbada (con m1=0) L1 m1

z1

x1

Expresiones de Newton-Euler:
d
F  dt (mv) d 
T1  ( I1 )  m2 gd 2C1
dt
d
T  dt (I) F2  m2 d2  m2 gS1  m2 d 212

Modelado dinámico Oscar Barambones. UPV/EHU 9


Formulación de Newton.
Ejemplo robot 2 gdl (2) d2 m2

T1
θ1
Momento de Inercia I de la masa m2 : I  m2 d 2
2 F2 y0
x0
d  d
(I1 )= (m2 d 221 )  2m2 d 21d2  m2 d 221
dt dt
T1 
d 
dt
( I1 )  m2 gd
d2C1 T1  2m2 d 21d2  m2 d 221  m2 gd
d 2C1
F2  m2 d2  m2 gS1  m2 d 212

F  m d  m gS  m d   2
2 2 2 2 1 2 2 1

En forma matricial:

 T1   m2 d 22 0   1   0 2m2 d 21   1   m2 gd 2C1 


F              
 2  0 m2   d 2   m2 d 21 0   d2   m2 gS1 

Modelado dinámico Oscar Barambones. UPV/EHU 10


Formulación de Lagrange.
Ejemplo robot polar 2 gdl (1) d2
m2 z
2

x2
L1 m1

Robot
R b t Polar
P l en disposición
di i ió z1
y0
m2
tumbada (con m1=0) m1 θ1 x 1
x0

d2 m2

T1
Coordenadas y velocidades de la masa m2: θ1

F2 y0

 x2  d 2 S1  x2  ( S1d2  C1d 21 ) x 0

  
 y2  d 2 C1  
 y 2  C1d 2  S1d 21
 v22  x22  y 22  ( S1d2  C1d 21 ) 2  (C1d2  S1d 21 ) 2 
 S 12 d 22  C12 d 2212  2 S1d2C1d 21  C12 d22  S12 d 2212  2C1d2 S1d 21
 d22  d 2212

Modelado dinámico Oscar Barambones. UPV/EHU 11


Formulación de Lagrange.
Ejemplo robot polar 2 gdl (2)
 2 2
v  d2  d 2 1
2 2
2

1 1  2 2
Energía cinética: Ec  m2v2  m2 (d 2  d 2  1 )
2 2

2 2
E
Energía
í potencial:
t i l E p  gm2 h2  gm2 y2  gm2 d 2 S1

1
Lagrangiana: L  Ec  E p  m2 (d22  d 2212 )  gm2 d 2 S1
2

Modelado dinámico Oscar Barambones. UPV/EHU 12


Formulación de Lagrange.
Ejemplo robot polar 2 gdl (3)
1  2 2
L  m2 (d 2  d 2  1 )  ggm2 d 2 S1
2

2
i y sus derivadas respecto del tiempo:
Derivadas respecto de q

L L
2 
 m2 d 1  m2 d2
 1 2
 d2
d L d L
2  
 m2 d 1  2m2 d 21d 2  m2 d2
d  q1
dt 2
dt  q2
Derivadas respecto de qi y sus derivadas respecto del tiempo:

L L
  gm2 d 2C1  m2 d 2 2  gm2 S1
 1  d2 1

Modelado dinámico Oscar Barambones. UPV/EHU 13


Formulación de Lagrange.
Ejemplo robot polar 2 gdl (4)
d L L
i   
dt  qi  qi
T1  m2 d 221  2m2 d 21d2  gm2 d 2C1
  
 F2  m2 d 2  m2 d 2 1  gm2 S1
2

En forma matricial:

 T1   m2 d 22 0   1   0 2m2 d 21   1   m2 gd 2C1 


F                
 2  0 m2   d 2   m2 d 21 0  d2   2 1  m gS
g

Modelado dinámico Oscar Barambones. UPV/EHU 14


Formulación de Lagrange.
Ejemplo robot articular 2 gdl (1)
y2
Coordenadas y velocidades de los centros de masas:
x2
Masa elemento 1: m2
y0

 x1  d1C1  x1  d1S1q1 q2


   v12  x12  y12  d12 q12
 y1  d1S1  y1  d1C1q1
l1

d1
m1
q1 x0

Masa elemento 2:

 x2  l1C1  d 2C12  x1  (l1S1  d 2 S12 )q1  d 2 S12 q2


  
 y2  l1S1  d 2 S12  y1  (l1C1  d 2C12 )q1  d 2C12 q2
v22  x22  y 22  (l12  d 22  2l1d 2C2 ) q12  d 22 q22  2d 2 (l1C2  d 2 ) q1q2

Modelado dinámico Oscar Barambones. UPV/EHU 15


Formulación de Lagrange.
Ejemplo robot articular 2 gdl (2)
v12  x12  y12  d12 q12 v22  (l12  d 22  2l1d 2C2 )q12  d 22 q22  2d 2 (l1C2  d 2 )q1q2
1
Ec  ( m1v12  m2 v22 ) 
2
Energía cinética:
1 1 1
  m1d12  m2 (l12  d 22  2l1d 2C2 )  q12   m2 d 22  q22   m2 2d 2 (l1C2  d 2 )  q1q2
2 2 2

E p  g (m1h1  m2 h2 )  g (m1 y1  m2 y2 ) 
Energía potencial:
 g (m1d1S1  m2l1S1  m2 d 2 S12 )

1 1
L  Ec  E p   m1d12  m2 (l12  d 22  2l1d 2C2 )  q12   m2 d 22  q 22 
2 2
Lagrangiana:
1
  m2 2d 2 (l1C2  d 2 ) q1q2  g (m1d1S1  m2l1S1  m2 d 2 S12 )
2

Modelado dinámico Oscar Barambones. UPV/EHU 16


Formulación de Lagrange.
Ejemplo robot articular 2 gdl (3)
1 1
L  Ec  E p   m 1 d 12  m 2 ( l12  d 22  2 l1 d 2 C 2 )  q12   m 2 d 22  q 22 
2 2
Lagrangiana:
g g
1
  m 2 2 d 2 ( l1C 2  d 2 )  q1 q 2  g ( m1 d 1 S 1  m 2 l1 S 1  m 2 d 2 S 12 )
2

i y sus derivadas respecto del tiempo:


Derivadas respecto de q
L
  m1d12  m2 (l12  d 22  2l1d 2C2 )  q1   m2 d 2 (l1C2  d 2 ) q2
 q1
d L
  m1d12  m2 (l12  d 22  2l1d 2C2 )  q1   m2 (2l1d 2 S 2 q2 )  q1   m2 d 2 (l1C2  d 2 ) q2   m2 d 2 (l1S2 q2 ) q2 
dt  q1
  m1d12  m2 (l12  d 22  2l1d 2C2 )  q1   m2 d 2 (l1C2  d 2 ) q2   2m2l1d 2 S2  q1q2   m2 d 2l1S2  q22

L
  m2 d 22  q2   m2 d 2 (l1C2  d 2 )  q1
 q2
d L
  m2 d 22  q2   m2 d 2 (l1C2  d 2 )  q1   m2 d 2 (l1S2 q2 )  q1 
dt  q2
  m2 d 22  q2   m2 d 2 (l1C2  d 2 )  q1   m2 d 2l1S 2  q1q2
Modelado dinámico Oscar Barambones. UPV/EHU 17
Formulación de Lagrange.
Ejemplo robot articular 2 gdl (4)
1 1
L  Ec  E p   m 1 d 12  m 2 ( l12  d 22  2 l1 d 2 C 2 )  q12   m 2 d 22  q 22 
2 2
Lagrangiana:
1
  m 2 2 d 2 ( l1C 2  d 2 )  q1 q 2  g ( m1 d 1 S 1  m 2 l1 S 1  m 2 d 2 S 12 )
2

Derivadas respecto de qi

L
  g  (m1d1  m2l1 )C1  m2 d 2C12 
 q1
L
   m2l1d 2 S 2  q12   m2 d 2l1S 2  q1q2  gm2 d 2C12
 q2

Modelado dinámico Oscar Barambones. UPV/EHU 18


Formulación de Lagrange.
Ejemplo robot articular 2 gdl (5)
Expresión de Lagrange

d L L
i   
dt  qi  qi

T1   m1d12  m2 (l12  d 22  2l1d 2C2 )  q1   m2 d 2 (l1C2  d 2 )  q2   2m2l1d 2 S 2  q1q2   m2 d 2l1S2  q22 
  
  g  (m1d1  m2l1 )C1  m2 d 2C12 

T2   m2 d 2 (l1C2  d 2 )  q1   m2 d 2  q2   m2 d 2l1S2  q1q2   m2l1d 2 S 2  q1   m2 d 2l1S 2  q1q2  gm2 d 2C12
2 2

En forma matricial:
 T1   m1d12  m2 (l12  d 22  2l1d 2C2 ) m2 d 2 (l1C2  d 2 )   q1 
T        
 2  m d ( l
2 2 1 2 C  d 2 ) m d
2 2
2
  q2 
 2m2l1d 2 S2 q2 m2 d 2l1S 2 q2   q1 
   q  
 m2l1d 2 S2 q1 0  2
 g  (m1d1  m2l1 )C1  m2 d 2C12 
 
 gm d C
2 2 12 
Modelado dinámico Oscar Barambones. UPV/EHU 19
Ecuación dinámica de un
robot
b t multiarticular
lti ti l
Expresión general del modelo dinámico de un robot:

  D(q )q
  H ( q, q )  C( q )
Con:
q : vector de coordenadas articulares.
 : vector de fuerzas o pares que se aplica a cada articulación.
D(q ) : la matriz de inercias, de dimensión (nxn), cuyos elementos son función de q.

H (q, q ) : matriz (nx1) de fuerzas de Coriolis, dependiente de q y q.
C (q ) : matriz (nx1) de fuerzas de gravedad,
gravedad dependiente de q.
q
n : número de grados de libertad del robot.

Nota: El término de fuerzas de Coriolis puede expresarse alternativamente como Vector (nx1)
o como producto de una Matriz (nxn) por el Vector de velocidades (nx1)

Modelado dinámico Oscar Barambones. UPV/EHU 20


Ejemplo: Modelo dinámico de
unn robot de 2 grados de
libertad T  m d  m (l  d  2l d C ) m d (l C  d )  q  2 2 2

T        
1 1 1 2 1 2 1 2 2 2 2 1 2 2 1

m2 d 2 (l1C2  d 2 ) 2
  Dq
  H  C  2  md
2 2   q2 
y2
 2m2l1d 2 S 2 q1q2  m2 d 2l1S2 q 22 
 2 
x2
 m l d S
2 1 2 2 1q 
m2
y0
d2

q2  g  (m1d1  m2l1 )C1  m2 d 2C12 


l1  
d1  gm d C
2 2 12 
m1
q1 x0

 T1   m1d12  m2 (l12  d 22  2l1d 2C2 ) m2 d 2 (l1C2  d 2 )   q1 


T        
 2  m d ( l
2 2 1 2 C  d 2 ) m d
2 2
2
  q2 
O con el término de Corilis  2m2l1d 2 S2 q2  m2 d 2l1S 2 q2   q1 
   q  
expresado matricialmente:  m2l1d 2 S 2 q1 0  2
 g  (m1d1  m2l1 )C1  m2 d 2C12 
 
 gm2 d 2C12 

Modelado dinámico Oscar Barambones. UPV/EHU 21


Algoritmos
g computacionales
p
Para robots con más de 3 gdl la deducción analítica se hace
excesivamente compleja.
Alternativamente se han desarrollado algoritmos que permiten
obtener el valor del par a partir de q(t) en pasos incrementales

• Lagrange
– Basado en la representación
p de D-H
– Poca eficiencia computacional: O(n4) (n=nº GDL)
– Ecuaciones finales bien estructuradas (D,H,C por
separado)
• Newton-Euler
– Basado en operaciones vectoriales
– Mayor eficiencia computacional: O(n)
– Ecuaciones
E i finales
fi l no estructuradas
t t d (D,H,C
(D H C sumados)
d )
Modelado dinámico Oscar Barambones. UPV/EHU 22
Características del método
computacional de Lagrange
• Utiliza
Utili ell ál
álgebra
b matricial,
t i i l iimplicando
li d un elevado
l d
número de operaciones O(n4)
•En la solución parecen explícitamente los términos de
Inercia, Coriolis y Gravedad
• Esto permite que si se desea se puede prescindir del
término H (fuerzas de coriolis y centrifugas) (por
ejemplo
j l sii llas velocidades
l id d son llentas)
t )
• Se han desarrollado otros métodos computacional
más eficientes a partir de la formualción de Lagrange

Modelado dinámico Oscar Barambones. UPV/EHU 23


Algoritmo computacional de
Newton Euler
B
Basado
d en lla 2ª lley d
de N t F=ma
Newton F
Es un procedimiento recursivo en el que para
i=1,..,n se calcula:
wi (Velocidades angular del sistema {Si}: qi´)
wi´ (Aceleraciones angular del sistema {Si}: qi”)
vi´,ai (Aceleraciones lineales del sistema {Si} y del centro de masa de la barra i)
i=n,..1 se calcula:
Fi (Fuerza ejercida en el centro de masa de la barra i)
Ni (Par ejercido en el centro de masa de la barra i)
fi (Fuerza ejercida sobre la articulación i-1, unión barra i-1 con barra i, expresada en {i-1})
ni (Par ejercido sobre la articulación i-1, unión barra i-1 con barra i,expresada en {i-1})

Modelado dinámico Oscar Barambones. UPV/EHU 24


Características del método
computacional
t i ld
de N
N-EE

• Es un método recursivo: obtiene información de la


articulación
ti l ió i a partir
ti dde lla ii-1
1 ((o viceversa)
i )
• Utiliza el álgebra vectorial
• Su orden de complejidad computacional es O(n)
• Proporciona el valor del par total (sin separa las
componentes D, H y C

Modelado dinámico Oscar Barambones. UPV/EHU 25


Comparación
p de métodos

Modelado dinámico Oscar Barambones. UPV/EHU 26


Modelo dinámico en
Variables de Estado
Permite resolver computacionalmente el modelo directo:

Dq  H  C    Dq  N    q  D   N 
   1

d q   q   0 
   1 
  1 
dt q   D N   D 

d q  0 I  q  0 
          u con u  D 1
(  N))
dt q  0 0  q   I 
q y de los valores de  en cada
Partiendo de unas condiciones iniciales de q y dq/dt
instante de tiempo, se evaluarían los valores del vector u y a partir de él la
derivada del vector de estado (q,dq/dt). A partir de ella se evalúa el estado en el
siguiente instante mediante:
q (k  1)  q (k )t  q (k )
Modelado dinámico Oscar Barambones. UPV/EHU 27
Modelo dinámico en el
espacio de la tarea
T
  vx , v y , vz , wx , wy , wz 
  J q    J q  J q   J 1   J 1J q
  q
Potencia = Par  velocidad  T T    T q
TT    T q  TT J q   T q  TT J   T    JT T
S
Sustituyendo en la ecuación del modelo dinámico q y 
  Dq
  H  C 
 HC 
J T T  DJ 1  DJ 1Jq
T   J T  DJ 1   J T  DJ 1Jq
    JT  H   JT  C  T  D j  H j  C j
1 1 1 1

D   J T 1 DJ 1
 j

 j    H  DJ Jq 
T 1
con H  J 1 


C j   J T  C
1

Modelado dinámico Oscar Barambones. UPV/EHU 28


Modelado de los actuadores y
sistemas
i t de
d ttrasmisión
i ió

• Además de la dinámica de la estructura mecánica


del brazo
brazo, es necesario considerar la de los
sistemas actuadores (eléctricos, hidraúlicos o
neumáticos) y elementos de trasmisión (reductores
incluídos).
• En ambos casos deben ser considerables las no
linealidades tipo saturación, zona muerta, etc.

Modelado dinámico Oscar Barambones. UPV/EHU 29


Motor de Corriente Continua

Modelado dinámico Oscar Barambones. UPV/EHU 30


Motor CC. Diagrama de bloques
y funciones
f i d
de ttransferencia
f i

( s ) k p k1k2 km
 
u ( s)  R  ki k2  Js  B   k p  kb  kT k1k2  Tm s  1

T (s) k p k1k2  Js  B  ˆ Tˆm s  1


  km
u ( s )  R  ki k2  Js
J  B   k p  kb  kT k1k2  Tm s  1

Modelado dinámico Oscar Barambones. UPV/EHU 31

También podría gustarte