15
UNIVERSIDAD POLITÉCNICA DE SINALOA DINÁMICA Y CONTROL DE ROBOTS DR. José Victor Nuñez Nalda TRABAJO: Apuntes Elaborado por: Valdez Valenzuela Flavio César Daniel Inda Mellado Eduaro Mec 9-1

Apuntes-2

Embed Size (px)

DESCRIPTION

d

Citation preview

Page 1: Apuntes-2

UNIVERSIDAD POLITÉCNICA DE SINALOA

DINÁMICA Y CONTROL DE ROBOTS

DR. José Victor Nuñez Nalda

TRABAJO: Apuntes

Elaborado por:

Valdez Valenzuela Flavio César Daniel

Inda Mellado Eduaro

Mec 9-1

04 de Mayo del 2015

Page 2: Apuntes-2

1.1.- Vector de coordenadas generalizadas

Para obtener la ecuación generalizada de un R.M. (Robot Manipulador) es necesario identificar las variables que definen la configuración del robot en todo tiempo, de manera general estas variables se agrupan en un vector que será denotado como “q”, para el caso del R.M. con base fija, este vector está compuesto por los angulos de la articulación del mismo, es decir:

q=( q1

q2

qN)=(θ1

θ2

θN)=θ

Donde “N” es el numero de anrticulaciones, dando a entender la ecuación anterior se extenderá hasta el número “N” de articulaciones (1, 2,…,N), “qi” es el elemento “i” del vecto “q” al cual se le

asigna la variable “θi”

iE{1, 2, 3,…,N}

Page 3: Apuntes-2

1.2.- Velocidad y aceleraciones articulares

La deriva del vector de coordenadas generalizadas se expresa como:

q=( q1

q2

qN)=(

ddt

(q1)

ddt

(q2)

ddt

(qN))

Y consiste en las velocidades articulares del robot. La segunda derivada es:

q=( q1

q2

qN)

Y consiste en las aceleraciones articulares del robot, cuyas unidades son:

q=° ó Rad˙

q= °seg

óRadSeg

¨q= °

Seg2 óRadSeg2

1.3.- Forma de las ecuaciones dinámicas

Para un R.M. la ecuación que describe la dinámica toma la forma siguiente:

M (q ) ( q )+C (q , q ) q+g (q )=τ (Ecu 1)

Donde “M(q)” es una matriz de “NxN” llamada matriz de inercia del robot, la cual depende exclusivamente del vector de coordenadas “q”.

La matriz “C (q , q ) q” también es de “NxN” llamada matriz de fuerzas centrífugas y de coriolis la cual depende de “q” y “q”.

El vector “g (q )” es un vector de “Nx1” el cual es llamado pares gravitacionales, depende de “q”. τ es un vector de de “Nx1” el cual contiene los pares de los motores que accionan cada una de las articulaciones.

Entonces, sustituyendo las matrices respectivas en la ecuación 1, suponiendo un robot de 2 articulaciones, tenemos que:

Page 4: Apuntes-2

(M 11 (q) M 12(q)M 21(q) M 22(q))( q1

q2)+(C11(q , q) C12(q , q)

C21(q , q) C22(q , q))(q1

q2)+(g1(q)

g2(q))=(τ1

τ2)

Lo que queda en:

M 11 (q ) q1+M 12 (q ) q2+C11 (q , q ) q1+C12 (q , q ) q2+g1 (q )=τ1

M 21 (q ) q1+M 22 (q ) q2+C21 (q , q ) q1+C22 (q , q ) q2+g2 (q )=τ2

La obtención del modelo dinámico para un R.M. consiste pues en encontrar las expresiones de los elementos de la matriz de inercias “M i , j (q )” de las matrices de fuerzas centrífugas “C11 (q , q )” y del

vector de pares gravitacionales “gi (q )

1.4.- Formulación de Euler-Lagrange

Utilizando esta formulación es posible obtener las ecuaciones del modelo dinámico utilizando los conpectos de energía cinética y energía potencial. El lagrangiano de un robot es la diferencia entre la energía cenética y la potencial total del sistema, esto es:

L (q , q )=K (q , q )−P(q) (Ecu 2)

Donde “L” es el lagrangiano del robot, “K” la energía cinética y “P” la energía potencial.

Enseguida se presentan las formulas para calcular estas dos expresiones, pero antes veremos la formulación de E-L la cual establece que:

ddt ( ∂ L

∂q i)− ∂L

∂qi

=τ i (Ecu 3)

Sustituyendo la expresión del lagrengiano de la ecuación 2 en la formulación E-L de la ecuación 3 tenemos que:

ddt ( ∂

∂ q i

(K (q , q )−P (q ) ))− ∂∂q i

(K (q , q )−P (q ) )=τ i

Observando que la expresión no depende de la velocidad angular que desarrollamos.

Page 5: Apuntes-2

ddt ( ∂

∂ q i (K (q ,q )− ∂∂ qi

P (q )))− ∂∂q i (K (q , q )− ∂

∂ q i

P (q ))=τ i

Por claridad:

ddt

∂k∂q

−∂k∂q

+ ∂P∂q

=τ i

1.5.-Energía Cinética y Potencial

La energia cinética de cada uno de los eslabones que componen al robot, consiten en una parte traslacional correspondiente aconsiderar toda la masa del onjeto concentrada en su centro de masa, y una parte rotacional que considera el giro del objeto alrededor de su centro de gravedad, y esto es:

K i=12mi vCi ( vCi❑

T )+ 12wi( Iwi❑

T )

Donde “m” es la masa del eslabón, “v”es la velocidad lineal del centro de masa, “w” es la velocidad angular y finalmente “I” es el tensor de inercia del cuerpo rígido referido al marco base –marco inercial-.

Para calcular la matriz de inercia del curpo expresada en el marco inercial, es necesario calcular:

I i= Ri❑B I i ¿

Donde “I” es el tensor de inercia del cuerpo expresada en el propio marco unido al cuerpo desplazando al centro de masa. De forma gráfica, la matriz de inercia en un marco unido al eslabón es constante y toma la forma:

I i=[I xx I xy I xzI yx I yy I yz

I zx I zy I zz]

Donde los elementos de la diagonal principal son llamados momentos principales de inercia, y los elementos fuera de dicha diagonal son llamados “productos cruzados de inercia”.

Para el modelado dinámico de un R.M. el valor numérico de esta matriz, al igual que la amsa de cada eslabón y sus longitudes son parámetros dados, generalmente por el fabricante del robot. Existen también, técnicas para identificar estos parámetros a partir de ciertos movimientos conocidos y realizando mediciones en el robot.

En lo concerniente a la energía potencial de cada eslabón, esta está dada simplemente por el peso del mismo multiplicado por su altura, esto es:

Pi=mig hi

Page 6: Apuntes-2

Donde “g” es la aceleración gravitacional (9.8 m/s^2) en la tierra, “h” la altura del centro de masa del eslabón con respecto al marco inercial. Debido a que, dependiendo de la asignación de los ejes del marco inercial, la altura puede corresponder al eje “y” o “z”. La siguiente fórmula es útil:

Pi=migT ri

Donde ahora “g” es el vector de la aceleración gravitacional:

g=(00g) para el eje z g=(0g0 ) parael eje y

De esta forma, multiplicando por el vector de posición del centro de masa se obtiene:

Pi=mi (0 0g )[rCixrCiyrCiz

]=mig rCiz para elcao del eje Z

Pi=mi (0g 0 )[rCixrCiyrCiz

]=mig rCiy para elcao del ejeY

A partir de las ecuaciones de la energia cinética y energía potencial de cada cuerpo rígido que componen al robot, es posible calcular sus correspondientes totales. Simplemente sumando cada uno de sus elementos, esto es:

K=∑i=1

N

K i→K i=12mi vCi ( vCi❑

T )+ 12w i( Iwi❑

T )

P=∑i=1

N

P i→Pi=migT ri

1.6.- Matriz de inercias

Considera la velocidad lineal del centro de masa de cada eslabón “Vci” así como su velocidad angular “w”, estas cantidades pueden expresarse:

V ci=JCi q

Donde sabemos que las dimensiones de cada matriz son “Vci-3x1, Jci-3xN, q-Nx1”. Para la velocidad angular:

w i=Jwi q

Page 7: Apuntes-2

Considerando las mismas dimensiones. Donde “Jci” es el jacobiano lineal del centro de masa y “Jwi” es el jacobiano angular del eslabón “i”.

Sustituyendo las velocidades en términos de los jacobianos en la fórmula de energía cinética, se tiene:

K=∑i=1

N

¿¿

Donde si hizo uso del hecho:

¿

Para el caso de las velocidades se tiene:

vCiT =¿

Donde, despues de factorizar y resolver se obtiene un escalar “K”.

Recordando la formulación de E-L:

ddt

∂k∂q

−∂k∂q

+ ∂P∂q

=τ i

Y la fórmula del modelo dinámico:

M (q ) ( q )+C (q , q ) q+g (q )=τ

Se puede demostrar que:

K=12qT M (q) q

Donde:

M (q )=∑i=1

N

{M i JCiT JCi+J wi

T I i Jwi }

1.7.- Matriz de fierzas centrígugas y de cariolis

Una vez calculada la matrz “M(q)” es posible demostrar que los elementos de la matriz de coriolis se obtiene a partir de:

C kj=∑i=1

N

C ij k (q) q→Cij k=12[∂M kj

∂ qi

+∂M ki

∂q i

−∂M ij

∂q i

]

Son los coeficientes de Christtofel. Cabe mencionar que debido a la simetria de la matriz “M(q)” los coeficientes cumplen con:

C ijk=C jik

Page 8: Apuntes-2

1.8.- Vector de pares gravitacionales

Considerando la formulación de E-L:

ddt

∂k∂q

−∂k∂q

+ ∂P∂q

=τ i

Y la forma de la ecuaión:

M (q ) ( q )+C (q , q ) q+g (q )=τ

Es facil observar que los elementos del vector de pares gravitacionales estan dadas por:

gi=∂ P∂q i

1.9.- Posición de los centros de masa

Recordemos que una matriz homogenea está definida por:

H❑A

B=[ R❑A

B rA , B❑A

0 1 ]Considere los marcos mostrados:

ΣA

ΣB ΣC

Page 9: Apuntes-2

Donde de “ΣA” es el primer marco y contiene una matriz de posición:

rA , B❑A

“ΣB” contiene:

rB,C−−− RC❑B

❑B

Las matrices homogéneas que describen la posición y orientación del marco “ΣB” con respecto a “ΣA” y “ΣC” con respecto a “ΣA” esta dada por:

H❑A

B=[ R❑A

B rA , B❑A

0 1 ] H❑B

C=[ R❑B

C rB, C❑B

0 1 ] La importancia del uso de matrices homogéneas radica en que al multiplicarse, obtenemos:

H❑A

B∙ H❑B

C=[ R❑A

B r A, B❑A

0 1 ] ∙[ R❑B

C rB ,C❑B

0 1 ]=[ R❑A

C rA ,C❑A

0 1 ]Para conocer la posición de cada articulación de un robot manipulador con “N” articulaciones procede como sigue:

a) Se asignan marcos en la base del robot y en cada articulación.

b) Se identifica en que eje gia cada articulación seleccionando la orientación adecuada.

K i=(100)Rx (θi )=[1 0 00 Ci −S i

0 S i C i]Si esenel eje X

K i=(010)Ry (θi )=[ C i 0 Si

0 1 0−S i 0 C i

] Si esenel ejeY

K i=(001)Rz (θ i )=[C i −Si 0S i C i 00 0 1]Si es enel ejeZ

Se forma la matriz homogénea correspondiente, incluyendo los vectores de posición adecuados.

c) Para econtrar la homogénea que va de la base a cada una de las articulaciones se realiza la siguiente multiplicación.

H❑B

1= H❑B

1

Page 10: Apuntes-2

H❑B

2= H❑B

1 ∙ H❑1

2

H❑B

3= H❑B

2 ∙ H❑2

3

.

.

.

H❑B

N= H❑B

N−1 ∙ H❑N−1

N

Estas matrices contienen la matriz de rotación y el vector de posición de la base al marco de cada articulación.

Considerando los elementos:

Ri❑B = H❑

Bi (1 :3 ,1 :3 )

r❑B

B,i= H❑B

i(1:3 ,4 )

A partir de estos elementos es sencillo encontrar la posición del centro de masa del eslabón “i” como sigue:

rB,Ci❑A =r B,i+ ¿❑

A Ri❑B ∙ ri ,Ci❑

i ¿

“ r❑i

i , Ci” es el vector que va de la articulación “i” al centro de masa del eslabón “i” con respecto al

marco “Σi” como se muestra:

1.10.- Jacobiano lineal del centro de masa

Para obtener el jacobiano lineal del centro de masa de cada eslabón es necesario tomar en cuenta que lamposición del propio centro de masa con respecto a la base, tiene tres componentes, esto es:

ri , Ci❑i

Centro de a masa del Eslabón “i”

Page 11: Apuntes-2

rCi≜ rB,Ci❑B =[rci

x

rciy

rciz ]

De forma general podemos decir que estas 3 componentes dependen o son función del vector de coordenadas generalizadas “q”que es:

rCi=[r cix

r ciy

r ciz ]=[ f 1(q )

f 2(q )f 3(q )]=[ f 1(q1 , q2 ,…)

f 2(q1 , q2 ,…)f 3(q1 , q2 ,…)]

Para encontrar la derivada con respecto al tiempo de una función que depende de varias vaiables que asu vez son funciones del tiempo, es necesario recordar la regla de la cadena:

f (q1 ,q 2,…qN )= ddt

f (q1 ,q 2,…qN )

¿ ∂ f∂q1

q1+∂ f∂q2

q2+…∂f∂qN

qN

De forma matricial:

f (q )=[ ∂ f∂q1

∙∂ f∂q2

∙…∂ f∂qN

] q

Aplicando esto a las 3 funciones correspondientes a la posición del centro de masa del eslabón se observa que:

rCi=JCi q

Donde:

JCi=[∂rCi

X

∂q1

∂ rCiX

∂q2

…∂rCi

X

∂qN

∂rCiY

∂q1

∂ rCiY

∂q2

…∂rCi

Y

∂qN

∂rCiZ

∂q1

∂ rCiZ

∂q2

…∂rCi

Z

∂qN

]

Page 12: Apuntes-2

1.11.- Jacobiano Angular

Para calcular el Jacobiano angular es sufiente notar que en la velocidad angular de cada uno de los marcos con respecto al marco presedente esta dada por:

ωB, 1=K1 q❑B

ω1,2=K2 q❑1 Ecuacion (1)

ω2,3=K 3 q❑2

Donde “K i” es el eje donde rota el marco “i” con respecto al marco “i-1”.

Para sumar las velocidades angulares y obtener la velocidad de cada uno con respecto a la base se referencía cada vector conrespecto a la base, como sigue:

ωB, 1=K1 q❑B

ωB, 2= ¿❑B ωB,1❑

B + R1❑B ω1,2❑

1 ¿

ωB, 3= ¿❑B ωB,2❑

B + R2❑B ω2,3❑

2 ¿

ωB, N= ¿❑B ωB, N−1❑

B + RN−1❑B ωN−1 , N❑

N−1 ¿

Sustituyendo la ecuación (2) en (1) se obtiene:

ωB, 1= ¿❑B K1q1…¿

ωB, N= ¿❑B K1 q1+ R1❑

B K2 q2+ R2❑B K3 q3+…+ RN−1❑

B KN qN ¿

De forma matricial:

ωB, N= ¿❑B (K1 0 0…0)( q1

q2…

qN)¿

Jω1=(K10 0 …0)

ωB, N= ¿❑B (K1 R1❑

B K2 R2❑B K3 R3❑

B K4…KN−1 RN❑B )¿

JωN=(K1 R1❑B K2 R2❑

B K 3 R3❑B K4…KN−1 RN❑

B )

Page 13: Apuntes-2