9 Dinamica Manipuladores II

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 23

Fundamentos de Robótica: 2020-I

- Tema 9 -

Dinámica de Robots
Manipuladores (II)

Prof. Oscar E. Ramos, Ph.D.

22 de junio del 2020


Repaso …

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

• Ecuaciones de Movimiento (Lagrange):

d   
   i
dt  qi  qi
• Dinámica de un robot manipulador:

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

2
Temas

1. Formulación de Euler-Lagrange: Usando DH

2. Formulación de Newton-Euler

3
Euler-Lagrange usando DH
Introducción

• Llamado: método de Uicker para Euler-Lagrange


• Utiliza las matrices de transformación homogénea 0Ti obtenidas usando
los parámetros de DH (Denavit-Hartenberg)

• Características
- Es sistemático (es una secuencia de multiplicaciones)
- Conduce a ecuaciones bien estructuradas
- Es computacionalmente “ineficiente”: información redundante

• Expresa el modelo dinámico como:


M (q)q  c(q, q)  g(q)  τ tot

vector de fuerzas
centrífugas y Coriolis

4
Euler-Lagrange usando DH
Algoritmo

1. Matriz de inercia (M)


 m11 m12 m1n 
m m2 n  Tr U kj J kU kiT 
n

M   21

m22

donde cada
elemento es:
mij  
k  max{i , j }
 
 mn1 mn 2 mnn 
n: número de grados de libertad

a) Matrices Uij:
 0Ti  T j 1Q j
j 1
0
Ti , ji
U ij  
q j  0, j i

0 1 0 0 0 0 0 0
1 0 0 0  0 0 0 0 
Qj   Qj  
0 0 0 0 0 0 0 1
   
0 0 0 0 0 0 0 0

Si la articulación j Si la articulación j
es de rotación es prismática
Nota: Tr es la traza 5
Euler-Lagrange usando DH
Algoritmo

1. Matriz de inercia (M)


 m11 m12 m1n 
m m2 n  Tr U kj J kU kiT 
n

M   21

m22

donde cada
elemento es:
mij  
k  max{i , j }
 
 mn1 mn 2 mnn 
n: número de grados de libertad

b) Matrices de pseudoinercia Ji (del eslabón i):


1 
 2 ( I xx  I yy  I zz ) I xy I xz mi xi 
   xi 
 mi yi  ri   yi 
1
I xy ( I xx  I yy  I zz ) I yz i
Ji   2 
 1   zi 
 I xz I yz ( I xx  I yy  I zz ) mi zi 
 2  CdM del eslabón i
 mi  respecto al sistema del
 mi xi mi yi mi zi eslabón i

- Componentes del tensor de inercia del eslabón i: Ixx, Iyy, …

6
Euler-Lagrange usando DH
Algoritmo

2. Vector de Coriolis y fuerzas centrífugas (c):


 c1  n n

c   
donde cada
ci   cikm qk qm
elemento es:
k 1 m 1
 cn 

- Símbolos de Christoffel:

Tr U jkm J jU Tji  , i, k , m  1,
n
cikm  
j  max{i , k , m}
,n

- Matrices Uijk:
 0T j 1Q j j 1Tk 1Qk k 1Ti , i  k  j
U ij 0
U ijk    k 1 k
T Q k 1
T Q j 1
Ti , i  j  k
qk j 1 j
 0, k i oj i

Nota: Tr es la traza 7
Euler-Lagrange usando DH
Algoritmo

3. Vector de gravedad g:

 g1  n
gi   m j g 0U ji j p j
donde cada
g    elemento es:
j 1
 g n 
g0: vector gravedad en el sistema de
la base (en coord. Homogéneas)
jp : coordenadas homogéneas del CdM
j
de j en el sistema j

4. Modelo dinámico:
M (q)q  c(q, q)  g(q)  τtot

Nota: CdM = centro de masa 8


Temas

1. Formulación de Euler-Lagrange: Usando DH

2. Formulación de Newton-Euler

9
Formulación de Newton-Euler
Idea: Analizar las fuerzas y Torques

μ f
μ f

f μ

μ3 eslabón 3
f3
3
f3
2 μ2 μ3
f2
eslabón 2
1 f1
μ1 f2
μ2
μ: momento (torque)
μ1 eslabón 1
f1 f: fuerza
10
Formulación de Newton-Euler
Idea del Algoritmo

Eslabón
N

Eslabón
0
Algoritmo - Velocidades y aceleraciones: de 0 a N
recursivo - Fuerzas: de N a 0

11
Formulación de Newton-Euler
Leyes del Movimiento de 1 partícula

• Ley de Newton (2da): traslación


La razón de cambio del momento lineal es igual a la fuerza total (ftot) aplicada
a un cuerpo
d
 f  ftot  dt
 mp 

• Ley de Euler (2da): rotación


La razón de cambio del momento angular es igual al momento total (μtot)
aplicado a un cuerpo
d
 μ  μtot  dt
 p  mp 

donde
h  p  mp momento angular de una partícula

12
Formulación de Newton-Euler
Momento Angular de 1 Cuerpo Rígido

• Velocidad: un punto del cuerpo rígido


v  p  ωp
mi
• Momento angular:
- Para un punto ω p
hi  p  mi p  p  mi (ω  p)
- Para cuerpo rígido mi  dm
{0} dm   dV
h   hi   p  mi (ω  p)
i i

  p  (ω  p)  dV    p  (p  ω)  dV
V V

 
   pˆ (pω
ˆ )  dV   pˆ T pˆ  dV  ω
V 

V 
h ω

Tensor de inercia
(en el sistema de la base 0)
13
Formulación de Newton-Euler
Derivada del Momento Angular

• Momento angular
- Para cuerpo rígido
h ω mi

- Transformación del tensor de inercia ω p


R R T

• Derivada
{0}
d
dt
d
dt
d

 h    ω   R RT ω
dt

 R RT ω  R RT ω  R RT ω : tensor de inercia en el sistema
del cuerpo (constante)
 (ω
ˆ R ) RT ω  R ( RT ω
ˆ T )ω  R RT ω R : rotación del cuerpo con respecto
al sistema de referencia
ω
ˆ ω ω
 ω ω  ω ˆ Tω  0
ω

14
Formulación de Newton-Euler
Leyes del Movimiento de 1 Cuerpo Rígido

• Ley de Newton (2da): traslación


La razón de cambio del momento lineal del CdM es igual a la fuerza total (ftot)
aplicada a un cuerpo

f  f
d
 mpc   ftot tot  mp c
dt

• Ley de Euler (2da): rotación


La razón de cambio del momento angular (h) es igual al momento total (μtot)
aplicado a un cuerpo

d
 h   μtot μ  μ tot  ω  ω ω
dt

pc: posición del Centro de Masa


15
Formulación de Newton-Euler
Movimiento de Traslación del Eslabón i

Articulación i Articulación i+1


p ci

fi mi g 0 fi1

• Dinámica del movimiento de traslación (2ª Newton):

f  f  fi i 1  mi g 0  mi p ci
reordenando

fi  fi 1  mi p ci  mi g 0

16
Formulación de Newton-Euler
Movimiento de Rotación del Eslabón i

Articulación i Articulación i+1


ωi
zi
z i1 μi1
μi ri ,ci
ri 1,ci

fi mi g 0 fi1

• Dinámica del movimiento de rotación con respecto al CdM (2ª Euler):

μ  μ  μi i 1  (ri 1,ci )  fi  (ri ,ci )  fi 1  iωi  ωi  iωi


μi  μi 1  fi  ri 1,ci  fi 1  ri ,ci  i ωi  ωi  i ωi
reordenando

μi  μi 1  fi  ri 1,ci  fi 1  ri ,ci  i ωi  ωi  i ωi
17
Formulación de Newton-Euler
Velocidad y Aceleración del Eslabón i

• Velocidades: articulación de revolución


ωi  ωi 1  qi z i 1 Articulación i

pi  pi 1  ωi  ri 1,i z i1 eslabón i zi


ri 1,i
• Aceleración angular:
ωi  ωi 1  qi z i 1  qi (ωi 1  z i 1 ) pi1 pi
• Aceleración lineal:

pi  pi 1  ωi  ri 1,i  ωi  (ωi  ri 1,i ) {0}


Con respecto al sistema de base
• Aceleración del centro de masa:
p ci  pi  ωi  ri ,ci  ωi  (ωi  ri ,ci )

18
Formulación de Newton-Euler
Algoritmo

1. Cálculo de velocidades y aceleraciones


- Condiciones iniciales:
0  0  0  0 
ω 0  0  ω 0  0  p 0  0   g z0  zi   z n  0 
0  0  0  1 

- Recursión hacia adelante (en el sistema i): de 1 a N Asumiendo solo

ωi  i Ri 1  ωi 1  qi z i 1 
articulaciones de
revolución

ωi  i Ri 1  ωi 1  qi z i 1  qi ωi 1  z i 1 
pi  i Ri 1pi 1  ωi  ri 1,i  ωi  (ωi  ri 1,i )
p ci  pi  ωi  ri ,ci  ωi  (ωi  ri ,ci )

Notas: g es la aceleración de la gravedad en el sistema 0


La notación bi es equivalente a ibi (en el mismo sistema de referencia) 19
Formulación de Newton-Euler
Algoritmo

2. Cálculo de fuerzas y torques


- Condiciones iniciales:

0  0  1 0 0 
μ N 1  0  f N 1  0  N
RN 1  0 1 0 
0  0  0 0 1 

- Recursión hacia atrás: de N a 1 Asumiendo solo

fi  i Ri 1fi 1  mi p ci
articulaciones de
revolución

μi  i Ri 1 μi 1  fi  (ri 1,i  ri,ci )  i Ri 1fi 1  ri ,ci  Ii ωi  ωi  Ii ωi

3. Torques generalizados del modelo dinámico

τ i  μTi i Ri 1 z i 1

Nota: la notación bi es equivalente a ibi (en el mismo sistema de referencia) 20


Formulación de Newton-Euler
Comentarios sobre NE

• Las fórmulas recursivas pueden calcularse de forma simbólica o


numérica

• Forma simbólica:
- Sustituir expresiones recursivamente
- El resultado es igual al obtenido usando Lagrange
- No hay ventajas

• Forma numérica:
- Sustituir valores numéricos solamente (números) en cada etapa
- Complejidad computacional de cada etapa es constante
- Recomendado para uso en tiempo real (especialmente cuando n es grande)

21
Formulación de Newton-Euler
Funciones Computacionales

• La mayoría de software para robótica utiliza la formulación de


Newton-Euler (RNEA: Recursive Newton-Euler Algorithm) para calcular la
dinámica

• Ejemplos de software que calculan la dinámica:


- RBDL, KDL, Metapod, Pinocchio, etc.

• Función típica (InvDyn): dq  q


u = InvDyn(q, dq, ddq) ddq  q
Recuperación de términos:
- Gravedad: g = InvDyn(q, 0, 0)
- Vector de fuerza centrífuga y Coriolis: c(q, dq) = InvDyn(q, dq, 0) - g
- Columna i-ésima de la matriz de inercia: mi = InvDyn(q, 0, ei) - g
donde ei es la columna i-ésima de la matriz identidad

22
Referencias

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


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

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


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

23

You might also like