Top Banner
´ Indice 1. Introducci´ on. 2 2. Objetivos. 3 2.1. Objetivo general. ................................ 3 2.2. Objetivo particular................................ 3 3. Planteamiento del problema. 3 4. Consideraciones te´ oricas. 4 5. Propuesta de soluci´ on. 5 5.1. Regresor modelo Din´ amico. .......................... 5 5.2. Regresor modelo Din´ amico Filtrado....................... 6 5.3. Regresor modelo de Energ´ ıa........................... 7 5.4. Regresor modelo de Potencia. ......................... 7 5.5. Regresor modelo de Potencia Filtrada ..................... 8 5.6. Regresor modelo de Hamilton.......................... 9 5.7. Regresor modelo de Hamilton Filtrado..................... 10 5.8. Algoritmo recursivo de m´ ınimos cuadrados................... 13 5.8.1. Obtenci´on del algoritmo de m´ ınimos cuadrados escalar........ 14 6. Resultados 21 7. Conclusiones. 34
35
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Regresores

Indice

1. Introduccion. 2

2. Objetivos. 32.1. Objetivo general. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2. Objetivo particular. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

3. Planteamiento del problema. 3

4. Consideraciones teoricas. 4

5. Propuesta de solucion. 55.1. Regresor modelo Dinamico. . . . . . . . . . . . . . . . . . . . . . . . . . . 55.2. Regresor modelo Dinamico Filtrado. . . . . . . . . . . . . . . . . . . . . . . 65.3. Regresor modelo de Energıa. . . . . . . . . . . . . . . . . . . . . . . . . . . 75.4. Regresor modelo de Potencia. . . . . . . . . . . . . . . . . . . . . . . . . . 75.5. Regresor modelo de Potencia Filtrada . . . . . . . . . . . . . . . . . . . . . 85.6. Regresor modelo de Hamilton. . . . . . . . . . . . . . . . . . . . . . . . . . 95.7. Regresor modelo de Hamilton Filtrado. . . . . . . . . . . . . . . . . . . . . 105.8. Algoritmo recursivo de mınimos cuadrados. . . . . . . . . . . . . . . . . . . 13

5.8.1. Obtencion del algoritmo de mınimos cuadrados escalar. . . . . . . . 14

6. Resultados 21

7. Conclusiones. 34

Page 2: Regresores

1. Introduccion.

Los robots manipuladores pertenecen a una clase de sistemas mecanicos no lineales conuna estructura dinamica bien definida. Sin embargo, los parametros dinamicos tales comocentros de masa, masas y momentos de inercia, ası como los coeficientes de friccion usadosen la descripcion del modelo dinamico, generalmente son inciertos.

Si bien existen herramientas de la teorıa de control, tales como esquemas adaptablesy controladores robustos, que permiten tolerar incertidumbre en los parametros dinami-cos, el conocimiento es crucial para la mayorıa de los esquemas de control basados en elmodelo dinamico del robot manipulador.

La tematica de identificacion parametrica ha conducido a derivar varios esquemas deidentifiacion que se han convertido en una herramienta atractiva para determinar losparametros dinamicos de los robots manipuladores cuando existe dificultad para medirlosdirectamente. Sin embargo, la naturaleza continua, no lineal, multivariable y fuertementeacoplada del modelo dinamico de robots manipuladores hace que la tarea de identificacionparametrica sea no trivial.

En los esquemas de identificacion y controladores adaptables es de particular relevan-cia expresar el modelo dinamico no lineal del robot manipulador como el producto de unregresor compuesto por funciones no lineales (dependientes de la posicion, velocidad y acel-eracion articular) y un vector de parametros constantes que depende de masas, momentosde inercia, distancias, centros de masa y coeficientes de friccion. Los primeros trabajossobre identificacion parametrica de robots manipuladores explotando esta propiedad, re-querıan medir la aceleracion articular dentro del modelo de regresion. Esto condujo almodelo de regresion dinamico.

Los esquemas de identificacion basados en el modelo dinamico filtrado y de la energıason modelos de regresion que no dependen de la aceleracion articular. Otra caracterısticaen comun entre estos esquemas es que siempre es porsible agrupar de manera convenientelos parametros del modelo dinamico y del modelo de energıa, de tal forma que se obtenganel mismo vector de parametros para ambos esquemas. Sin embargo, la principal ventajaque presenta el modelo de la energıa sobre le modelo dinamico filtrado es que el primerocontiene un error de prediccion escalar, mientras que el segundo conduce a un error deprediccion vectorial.

En este trabajo usaremos la identificacion por mınimos cuadrados, el principio de losMınimos Cuadrados indica que los parametros de un modelo se deben elegir de tal formaque:

“La suma de los cuadrados de las diferencias entre los valores de la salida observados(reales) y los estimados, multiplicada por factores que midan el grado de precision sea unmınimo.[3]”

Page 3: Regresores

2. Objetivos.

2.1. Objetivo general.

− Obtener el regresor del modelo Dinamico, regresor del modelo Dinamico Filtrado,regresor del modelo de Energıa, regresor del modelo de Potencia, regresor del mod-elo de Potencia Filtrado, regresor del modelo Hamiltoniano y regresor del modeloHamiltoniano Filtrado

2.2. Objetivo particular.

− Graficar parametros estimados.

− Graficar parametros-parametros estimados.

− Realizar la simulacion del sistema con los parametros estimados y graficar posiciony velocidad del sistema.

3. Planteamiento del problema.

A) Considere un pendulo:

τ = Iq + bq + fcsigno(q) +mglcsen(q) (1)

Obtener:

A). Regresor modelo Dinamico.

B). Regresor modelo Dinamico Filtrado.

C). Regresor modelo de Energıa.

D). Regresor modelo de Potencia.

E). Regresor modelo de Potencia Filtrado.

F). Regresor modelo Hamiltoniano.

G). Regresor modelo Hamiltoniano Filtrado.

− Graficar parametros estimados.

− Graficar parametros-parametros estimados.

− Realizar la simulacion del sistema con los parametros estimados y graficarposicion y velocidad del sistema.

Page 4: Regresores

4. Consideraciones teoricas.

Considerese el pendulo mostrado en la figura 1, que consiste en un motor de corrientecontinua acoplado a un brazo pendular moviendose en un plano vertical, bajo la accionde la gravedad.

Figura 1: Pendulo.

Las ecuaciones de movimiento de Euler-Lagrange vienen dadas por:Cinematica directa [

xy

]=

[`sen (q)−`cos (q)

].

Cinematica diferencial [xy

]=

[`cos (q) q−`sen (q) q

].

Modelo de energıa

K(q, q) =1

2Irq

2 +1

2mv2 (2)

v =d

dt

[xy

]=

[lc cos (q) qlc sin (q) q

]v2 = ‖v‖2 =

[l2c cos2 (q) q2 + l2c sin2 (q) q2

]v2 = l2cq

2

u(q) = mgh = −mglc [1− cos(q)] (3)

Page 5: Regresores

τ =d

dt

[∂L

∂q

]− ∂L

∂q+ ff [Fe, q] (4)

L =1

2(Ir +m`2

c)q2 − ν(q)

∂L

∂q= (Ir +m`2

c)q

d

dt

[∂L

∂q

]= (Ir +m`2

c)q

−∂L∂q

= mglcsen(q).

Finalmente el modelo dinamico es el siguiente:

τ = (Ir +m`2c)q +mglcsen(q) +

friccion estatica︷ ︸︸ ︷bq + fcsigno(q) + fc[1− | sgn(q) |] .

Reasignando variables

τ = Iq +mglcsen(q) +

friccion estatica︷ ︸︸ ︷bq + fcsigno(q) + fc[1− | sgn(q) |] (5)

donde

• m masa de la barra.

• ` largo de la barra.

• g aceleracion de la gravedad.

• τ par aplicado al eje de giro.

• q posicion en grados[1].

5. Propuesta de solucion.

5.1. Regresor modelo Dinamico.

Del modelo dinamico del pendulo tenemos la siguiente ecuacion:

τ = Iq + bq + fcsigno(q) +mglcsen(q). (6)

Que tambien puede ser expresada de la siguiente forma:

τ = ψ(q1, q1, q1)θ (7)

Page 6: Regresores

donde:la matriz de regresion ψ ∈ Rnxp, El vector de parametros desconocidos θ ∈ Rpx1 yτ ∈ Rnx1.

Obtenemos el error de prediccion correspondiente al modelo de regresion dinamico:

e = τ − ψ(q1, q1, q1)θ

e = τ −[I b fc mglc

] qq

signo(q)sen(q)

(8)

5.2. Regresor modelo Dinamico Filtrado.

Primero hay que realizar el filtrado sobre el modelo dinamico del pendulo:se tiene que el pendulo esta definido por la ecuacion 6:

τ = Iq + bq + fcsigno(q) +mglcsen(q).

Aplicando el operador F = λλ+s

a la ecuacion 6:

F (τ) = F (Iq) + F (bq) + F (fcsigno(q)) + F (mglcsen(q)) (9)

λ

λ+ sτ =

λ

λ+ sIq +

λ

λ+ sbq +

λ

λ+ sfcsigno(q) +

λ

λ+ smglcsen(q) (10)

Fτ = IsF q + bsFq + fcFsigno(q) +mglcFsen(q) (11)

Fτ = I ˙F q + bF q + fcFsigno(q) +mglcFsen(q) (12)

donde:Fτ = −λFτ + λτ

˙F q = −λF q + λq

Fsigno(q) = −λFsigno(q) + λsigno(q)

Fsen(q) = −λFsen(q) + λsen(q).

Entonces, Obtenemos el error de prediccion correspondiente al modelo de regresion dinami-co filtrado:

e = Fτ −[I b fc mglc

] ˙F q

F qFsigno(q)Fsen(q)

(13)

Page 7: Regresores

5.3. Regresor modelo de Energıa.

Para el pendulo, sabemos que la energıa cinetica esta dada por:

k =1

2(ml2c + I∗)q2.

Haciendo ml2c + I∗ = I, queda:

k =1

2Iq2. (14)

Y la energıa potencial por:

U = mglc[1− cos(q)]. (15)

Entonces, nuestro modelo esta dado por:∫ T

0

qτdt = U + k +

∫ T

0

bq2dt+

∫ T

0

fc|q|dt. (16)

sustituyendo las ecuaciones 14 y 15 queda:∫ T

0

qτdt = mglc[1− cos(q)] +1

2Iq2 +

∫ T

0

bq2dt+

∫ T

0

fc|q|dt. (17)

Obtenemos el error de prediccion correspondiente al modelo de regresion de energia:

e =

∫ T

0

qτdt−[I mglc b fc

]

12q2

1− cos(q)∫ T0q2dt∫ T

0|q|dt

(18)

5.4. Regresor modelo de Potencia.

Derivando la ecuacion de modelo de energıa del pendulo ecuacion 17:

qτ = Iqq +mglcsen(q)q + bq2 + fc|q|. (19)

Entonces obtenemos el error de prediccion correspondiente al modelo de regresion depotencia:

e = qτ −[I mglc b fc

]

qq

qsen(q)

q2

|q|

(20)

Page 8: Regresores

5.5. Regresor modelo de Potencia Filtrada

Utilizando la ecuacion 19 del modelo de potencia

qτ = Iqq +mglcsen(q)q + bq + fcsigno(q).

Utilizando un filtro de primer grado

F =λ

λ+ sF = −λFy + Fy

aplicando el filtro anterior, obtenemos el modelo de potencia filtrado.

Fqτ = IFqq +mglcFsen(q)q + bFq + fcFsigno(q). (21)

En donded

dt(qq) = qq + qq = 2qq.

Por lo tanto tenemos que:

qq =1

2

d(q2)

dt.

Por lo tanto

I

2Fsq2 .

Reescribiendo la ecuacion obtenemos:

F(qτ) =I

2F(sq2) +mglcFsen(q)q + bF(q2) + fcF(|q|) (22)

F(qτ) =I

2Fq2 +mglcFsen(q)q + bFq2 + fcF(|q|) (23)

Fqτ =I

2Fq2 +mglcFsen(q)q + bFq2 + fcF|q|. (24)

Y los filtros quedan de la siguiente manera:

λ(qτ)

λ+ s⇒ Fqτ = −λFqτ + λqτ

λq2

λ+ s⇒ Fq2 = −λFq2 + λq2

Page 9: Regresores

λ(sin(q)q)

λ+ s⇒ Fsin(q) = −λFsin(q) + λ(sin(q)q)

λ|q|λ+ s

⇒ F|q| = −λF|q| + λ|q|

Apartir de los filtros anteriores y del modelo de potencia obtenemos el error de prediccioncorrespondiente al modelo de regresion de potencia:

e = Fqτ −[I mglc b fc

] 12Fq2

Fsin(q)

Fq2F|q|

(25)

5.6. Regresor modelo de Hamilton.

Las ecuaciones de movimiento de Hamilton son:

q =∂H

∂p(26)

p = −∂H∂q

+ τ. (27)

Ahora:p = Iq.

El Hamiltoniano se define como:

H = K + U.

Donde:

H =1

2Ip2

I2+mglc[1− cos(q)] =

1

2

p2

I+mglc[1− cos(q)].

Entonces:∂H

∂q= mglcsen(q)

∂H

∂q=p

I.

Por lo que el modelo del pendulo queda expresado como

τ = p+b

Ip+mglcsen(q) + fcsign(

p

I). (28)

Entonces obtenemos el error de prediccion correspondiente al modelo de regresion deHamilton.

e = τ −[

1 bI

mglc fc]

pp

sen(q)sign(p

I)

(29)

Page 10: Regresores

5.7. Regresor modelo de Hamilton Filtrado.

Usando la ecuacion 28

τ = p+ (b

I)p+mglcsen(q) + fcsigno(

p

I).

Utilizando el filtro de la forma:

Fy =λ

λ+ s

Fy = −λFy + λy.

Aplicando el filtro:

F{τ} = F{p}+ F{( bI

)p}+ F{mglcsen(q)}+ F{fcsigno(p

I)}

F{τ} = sF{p}+ (b

I)F{p}+mglcF{sen(q)}+ fcF{signo(

p

I)}.

Se obtiene la ecuacion filtrada:

Fτ = Fp + (b

I)Fp +mglcFsen(q) + fcFsigno( p

I). (30)

Donde:Fτ = −λFτ + λτ

Fp = −λFp + λp

Fsen(q) = −λFsen(q) + λsen(q) (31)

Fsigno( pI

) = −λFsigno( pI

) + λsigno(p

I). (32)

Entonces obtenemos el error de prediccion correspondiente al modelo de regresion deHamilton filtrado.

e = Fτ −[

1 ( bI) mglc fc

] FpFp

Fsen(q)

Fsigno( pI

)

(33)

A continuacion se presenta la ecuacion que describe el modelo dinamico del pendulopara realizar las simulaciones:

τ = Iq + bq + fcsigno(q) +mglcsen(q)

Cambiando a variables de estado obtenemos:

x1 = q

x1 = x2

x2 = (τ − bx1 − fcsigno(q)−mglcsen(x1))/I.

A continuacion se muestra el programa implementado en simnon para realizar la simu-lacion de los incisos a) a el inciso e).

Page 11: Regresores

STATE x1 x2 phi2 phi3 eqt ffx2 ffabs ffsen fftau"fx2 fabs fsen ftau fx1DER dx1 dx2 phi2p phi3p eqtp ffpx2 ffpabs ffpsen ffptau"fpx2 fpabs fpsen fptau fpx1TIME t"modelo dinamicodx1=x2dx2=1/I*(tau-(b*x2)-(fc*sign(x2))-(alpha*sin(x1)))b:0.18I:0.17g:9.81alpha:3fc:.1tau=5*sin(t)phi11=dx2phi21=x2phi31=sign(x2)phi41=sin(x1)

"moldeo de energiaphi1=(x2*x2)/2phi2p=x2*x2phi3p=abs(x2)phi4=1-cos(x1)eqtp=x2*tau"modelo de potenciapo1 = x2*dx2po2 = x2*x2po3 = abs (x2)po4 = sin(x1)*x2po5 = x2*tau

"modelo filtrado dinamicoffpx2 =-lamda*ffx2+lamda*x2ffpabs=-lamda*ffabs+lamda*sign(x2)ffpsen=-lamda*ffsen+lamda*sin(x1)ffptau=-lamda*fftau+lamda*tau

s11=ffpx2s21=ffx2s31=ffabss41=ffsens51=fftau

"modelo filtrado de potencia"fpx2 =-lamda*fx2+lamda*((x2*x2)/2)"fpabs=-lamda*fabs+lamda*abs(x2)"fpsen=-lamda*fsen+lamda*(sin(x1)*x2)"fptau=-lamda*ftau+lamda*(tau*x2)"fpx1=-lamda*fx1+lamda*(x2*x2)

"s1=fpx2"s2=fx1

Page 12: Regresores

"s3=fabs"s4=fsen"s5=ftau

lamda:50END

El programa que se muestra a continuacion es el macro implementado.Con el macro solamente tenemos que seleccionar que variables queremos exportar.

syst DINA2"syst HAMI"-----------------------------------------------"store phi11 phi21 phi31 tau "modelo dinamico"simu 0 5 / md"export md < md -NOTIME"-----------------------------------------------"store phi1 phi2 phi3 tau "modelo de energia"simu 0 5 / me"export me < me -NOTIME"-----------------------------------------------"store po1 po2 po3 tau "modelo de potencia"simu 0 5 / mp"export mp < mp -NOTIME"-----------------------------------------------"store s1 s2 s3 tau "modelo filtrado de potencia"simu 0 5 / mfp"export mfp < mfp -NOTIME"-----------------------------------------------store s11 s21 s31 tau "modelo filtrado dinamicosimu 0 5 / mfdexport mfd < mfd -NOTIME"-----------------------------------------------"store ss1 ss2 ss3 tau "modelo hamiltoniano"simu 0 5 / mh"export mh < mh -NOTIME"-----------------------------------------------"store sh1 sh2 sh3 tau "modelo filtrado hamiltoniano"simu 0 5 / mfh"export mfh < mfh -NOTIME"-----------------------------------------------syst DINA2"syst HAMI"-----------------------------------------------"store phi41 t tau "modelo dinamico"simu 0 5 / md2"export md2 < md2"-----------------------------------------------"store phi4 tau eqt "modelo de energia"simu 0 5 / me2"export me2 < me2"-----------------------------------------------"store po4 tau po5 "modelo de potencia"simu 0 5 / mp2

Page 13: Regresores

"export mp2 < mp2"-----------------------------------------------"store s4 tau s5 "modelo filtrado de potencia"simu 0 5 / mfp2"export mfp2 < mfp2"-----------------------------------------------store s41 tau s51 "modelo filtrado dinamicosimu 0 5 / mfd2export mfd2 < mfd2"-----------------------------------------------"store ss4 p tau "modelo hamiltoniano"simu 0 5 / mh2"export mh2 < mh2"-----------------------------------------------"store sh4 tau sh5 "modelo filtrado hamiltoniano"simu 0 5 / mfh2"export mfh2 < mfh2"-----------------------------------------------syst DINA2"syst HAMI"-----------------------------------------------store x1 x2 tau "modelo dinamicosimu 0 5 / md3export md3 < md3END

5.8. Algoritmo recursivo de mınimos cuadrados.

Considerese el siguiente modelo de regresion:

y(k) = ψ(k)T θ (34)

donde y(k) representa un vector de salida de dimension nx1, ψ(k) es la matriz de regre-sion de dimension pxn, compuesta por funciones conocidas, y θ es el vector de px1 deparametros desconocidos. El modelo (34) es indexado por la k, la cual denota el instantede muestreo; se supondra que el conjunto de ındices forma un conjunto discreto.

El vector de parametros desconocidos θ puede ser estimado para minimizar la siguientefuncion de costo.

Jk(θ) =1

2

k∑i=1

[y(i)− ψ(i)T θ

]T+

1

2

[θ − θ(0)

]TP (0)−1

[θ − θ(0)

](35)

donde P (0) = P (0)T > 0 y θ(0) representa el valor inicial estimado.

La ecuacion (35) representa la suma de los cuadrados de los errores, la cual es la difer-encia entre la observacion actual y y(k) y el valor estimado por el modelo con vector deparametros θ. El segundo termino del lado derecho de la ecuacion (35) ha sido incluıdopara tomar en cuenta las condiciones iniciales.

Page 14: Regresores

El valor estimado del vector θ basado en las observaciones del vector y(k) y del regresorψ(k) es denotado por θ(k) y satisface las siguientes ecuaciones recursivas:

θ(k) = θ(k − 1) + P (k − 1)ψ(k)[I + ψ(k)TP (k − 1)ψ(k)

]−1e(k) (36)

P (k) = P (k − 1)− P (k − 1)ψ(k)[I + ψ(k)TP (k − 1)ψ(k)

]−1ψ(k)TP (k − 1) (37)

donde P (k) es la matriz de covarianza de dimension nxn y el error de prediccion e(k) esdefinido como:

e(k) = y(k)− ψ(k)T θ(k − 1) (38)

Una propiedad importante para el algoritmo (36) y (37) es la siguiente:

||θ − θ||2 ≤ λmax{P (0)−1}λmin{P (0)−1}

||θ − θ||2; k ≥ 1 (39)

donde λmax{P (0)−1} y λmin{P (0)−1} son los valores propios maximos y mınimos de lamatriz P (0)−1.

Ademas, si limt→∞λmin{P (0)−1} = ∞, entonces el vector de estimacion θ(k) converg-era hacia el vector de parametros verdaderos θ.

5.8.1. Obtencion del algoritmo de mınimos cuadrados escalar.

sea y = ψT θ donde ψ ∈ Rpx1, θinRpx1, y ∈ R, P−10 ∈ RPxP , θ ∈ Rpx1, donde p es el

numero de parametros a identificar.

Page 15: Regresores

se propone la funcion de costos

V (θ) =1

2

k∑i=1

[yi − yiθ]2 +1

2

[θ − θ0

]TP−1

0

[θ − θ0

]V (θ) =

1

2

k∑i=1

[yi − yiθ]T [yi − yiθ] +1

2

[θ − θ0

]TP−1

)

[θ − θ0

]

V (θ) =1

2

k∑i=1

y2i − yiψT1 θ − θTψiyi︸ ︷︷ ︸

agrupamos

+θψψT θ

+1

2θP−1

0 θ − 1

2P−1

0 θ0 −1

2θT0 P

−10 θ︸ ︷︷ ︸

agrupamos

+1

2θT0 P

−10 θ0

V (θ) =1

2

k∑i=1

[y2i − 2yiψ

Ti θ + θψψT θ

]+

1

2θP−1

0 θ − θTP T0 θ0 +

1

2θ0P

−10 θ0

∂V (θ)

∂θ=

1

2

k∑i=1

[−2yiψi + 2ψψT θ

]+ P−1

0 θ − P−10 θ0

∂V (θ)

∂θ=

1

2

k∑i=1

2ψiψTi θ + P−1

0 θ +1

2

k∑i=1

−2yiψi − P−1) θ0

∂V (θ)

∂θ=

k∑i=1

[ψiψ

Ti + P−1

0

]θ −

k∑i=1

yiψi − P−10 θ0 = 0

despejamos θ

θ =

[P−1

0 +k∑i=1

ψiψTi

]−1 [P−1

0 +k∑i=1

ψiψTi

]

haciendo cambio de variable:

P−1k = P−1

0 +k∑i=1

ψiψTi = P−1

0 ψkψTk = Pk−1 + ψkψ

Tk

P−1k−1 = P−1

0 +k−1∑i=1

ψiψTi

θ = Pk

[P−1

0 θ0 +k∑i=1

ψiyi

]

θ = Pk

[P−1

0 θ0 +k−1∑i=1

ψiyi + ψkyk

]

θk−1 = Pk−1

[P−1

0 θ0 +k−1∑i=1

ψiyi

]θ = Pk

[P−1k θk−1 + ψkyk

](40)

Page 16: Regresores

considerando que P−1k = P−1

k + ψkψTk

θk = Pk

[(P−1k ψkψ

Tk

)θk−1 + ψkyk

]θk = θk−1 − PkψkψTk θk−1 + Pkψkyk

θk = θk−1 + Pkψk

[yk − ψTk θk−1

]

donde yk = ek

Utilizando el teorema de inversion de matrices:

[A+BC]−1A−1 − A−1B[1 + CA−1B]−1CA−1

igualandoA = P−1

k−1, B = ψk, C = ψTk

entonces tenemosP−1k = P−1

k + ψkψTk

por tantoPk = (P−1

k + ψkψTk )−1

invirtiendo nos queda

Pk = Pk−1 −Pk−1ψkψ

Tk Pk−1

1 + ψTk Pk−1ψk

realizando el producto PKψk nos queda:

PKψk = Pk−1ψk −Pk−1ψkψ

Tk Pk−1ψk

1 + ψTk Pk−1ψk

PKψk = Pk−1ψk −Pk−1ψkψ

Tk Pk−1ψk − Pk−1ψkψ

Tk Pk−1ψk

1 + ψTk Pk−1ψk

sustituyendo en θ finalmente tenemos

Pk = Pk−1 −Pk−1ψkψ

Tk Pk−1

1 + ψTk Pk−1ψk

θ = θk−1 +Pk−1ψk

1 + ψTk Pk−1ψk

[yk − yTk θk−1

]

Page 17: Regresores

Algoritmo de mınimos cuadrados recursivo para los incisos a) a el inciso e).

p=[10^12 0 0 0; 0 10^12 0 0; 0 0 10^12 0 ; 0 0 0 10^12 ];teta=zeros(4,1);simnon=load(’mfp.t’);simnon2=load(’mfp2.t’);simnon3=load(’md3.t’);P=simnon3(:,2);V=simnon3(:,3);[m,n]=size(simnon);Psi11=simnon(:,1);Psi21=simnon(:,2);Psi31=simnon(:,3);Tau=simnon2(:,4);Psi41=simnon2(:,2);t=simnon2(:,1);Psi=[0 ; 0 ;0 ; 0];

x1(1)=teta(1);x2(1)=teta(2);x3(1)=teta(3);x4(1)=teta(4);e1(1)=.17-teta(1);e2(1)=.18-teta(2);e3(1)=.1-teta(3);e4(1)=3-teta(4);

for k=2 : mPsi=[Psi11(k);Psi21(k);Psi31(k);Psi41(k)];e1(k-1)=Tau(k) - Psi’*teta;e=Tau(k) - Psi’*teta;teta=teta+((p*Psi*e)/(1+Psi’*p*Psi));p=p-((p*Psi*Psi’*p)/(1+Psi’*p*Psi));x1(k)=teta(1);x2(k)=teta(2);x3(k)=teta(3);x4(k)=teta(4);e1(k)=.17-teta(1);e2(k)=.18-teta(2);e3(k)=.1-teta(3);e4(k)=3-teta(4);

endtetae1(k)=Tau(k)-(Psi’*teta);subplot(2,2,1)plot (t,x1)gridtitle(’Parametro I’)ylabel(’Kg/m^2’)xlabel(’Segundos’)subplot(2,2,2)plot (t,x2)gridtitle(’Parametro b’)ylabel(’Nm/seg.’)xlabel(’Segundos’)

Page 18: Regresores

subplot(2,2,3)plot (t,x3)gridtitle(’Parametro fc’)ylabel(’Nm’)xlabel(’Segundos’)subplot(2,2,4)plot (t,x4)gridtitle(’Parametro mglc’)ylabel(’Kgm^2/seg^2’)xlabel(’Segundos’)figure(2)subplot(2,2,1)plot (t,e1)gridtitle(’I-I*’)ylabel(’Kg/m^2’)xlabel(’Segundos’)subplot(2,2,2)plot (t,e2)gridtitle(’b-b*’)ylabel(’Nm/seg.’)xlabel(’Segundos’)subplot(2,2,3)plot (t,e3)gridtitle(’fc-fc*’)ylabel(’Nm’)xlabel(’Segundos’)subplot(2,2,4)plot (t,e4)gridtitle(’mglc-mglc*’)ylabel(’Kgm^2/seg^2’)xlabel(’Segundos’)figure(3)subplot(2,2,1)plot (t,P)gridtitle(’Posicion’)ylabel(’Rad.’)xlabel(’Segundos’)subplot(2,2,2)plot (t,V)gridtitle(’Velocidad’)ylabel(’Rad./seg.’)xlabel(’Segundos’)

A continuacion se muestra el programa implementado en simnon para realizar la simu-lacion de los incisos f) y g)

STATE q p fhtau fhp fhsen fhsig

Page 19: Regresores

DER qp pp fphtau fphp fphsen fphsigTIME t

"modelo hamiltonianoqp = (1/I)*ppp = tau-(b/I)*p-alpha*ss3-fc*ss4b:0.18I:0.17alpha:3fc:.1lamda:50tau=5*sin(t)ss1=ppss2=pss3=sin(q)ss4=sign(p/I)

"modelo filtrado de hamiltonfphtau=-lamda*fhtau+lamda*taufphp=-lamda*fhp+lamda*pfphsen=-lamda*fhsen+lamda*sin(q)fphsig=-lamda*fhsig+lamda*sign(qp)

sh1=fphpsh2=fhpsh4=fhsigsh3=fhsensh5=fhtau

Algoritmo de mınimos cuadrados recursivo realizar la simulacion de los incisos f) y g).

p=[10^12 0 0 0; 0 10^12 0 0; 0 0 10^12 0 ; 0 0 0 10^12 ];teta=zeros(4,1);simnon=load(’mfh.t’);simnon2=load(’mfh2.t’);[m,n]=size(simnon);Psi11=simnon(:,1);Psi21=simnon(:,2);Psi31=simnon(:,3);Tau=simnon2(:,4);Psi41=simnon2(:,2);t=simnon2(:,1);Psi=[0 ; 0 ;0 ; 0];

x1(1)=teta(1);x2(1)=teta(2);x3(1)=teta(3);x4(1)=teta(4);e1(1)=.17-teta(1);e2(1)=.18-teta(2);e3(1)=.1-teta(3);e4(1)=3-teta(4);

for k=2 : mPsi=[Psi11(k);Psi21(k);Psi31(k);Psi41(k)];e1(k-1)=Tau(k) - Psi’*teta;

Page 20: Regresores

e=Tau(k) - Psi’*teta;teta=teta+((p*Psi*e)/(1+Psi’*p*Psi));p=p-((p*Psi*Psi’*p)/(1+Psi’*p*Psi));x1(k)=teta(1);x2(k)=teta(2);x3(k)=teta(3);x4(k)=teta(4);e1(k)=1-teta(1);e2(k)=1.0588-teta(2);e3(k)=3-teta(3);e4(k)=.1-teta(4);

endtetae1(k)=Tau(k)-(Psi’*teta);subplot(2,2,1)plot (t,x1)gridtitle(’Parametro 1’)xlabel(’Segundos’)subplot(2,2,2)plot (t,x2)gridtitle(’Parametro b/I’)ylabel(’Nm^3/Kgseg.’)xlabel(’Segundos’)subplot(2,2,3)plot (t,x3)gridtitle(’Parametro mglc’)ylabel(’Kgm^2/seg^2’)xlabel(’Segundos’)subplot(2,2,4)plot (t,x4)gridtitle(’Parametro fc’)ylabel(’Nm’)xlabel(’Segundos’)figure(2)subplot(2,2,1)plot (t,e1)gridtitle(’1-1*’)xlabel(’Segundos’)subplot(2,2,2)plot (t,e2)gridtitle(’b/I-b/I*’)ylabel(’Nm^3/Kgseg.’)xlabel(’Segundos’)subplot(2,2,3)plot (t,e3)gridtitle(’mglc-mglc*’)ylabel(’Kgm^2/seg^2’)

Page 21: Regresores

xlabel(’Segundos’)subplot(2,2,4)plot (t,e4)gridtitle(’fc-fc*’)ylabel(’Nm’)xlabel(’Segundos’)

6. Resultados

Figura 2: Grafica de los Parametros estimados del modelo dinamico.

Los parametros estimados obtenidos son:teta =

0.17000.18000.10003.0000

Se observa que casi instantaneamente se obtienen los parametros estimados.

Page 22: Regresores

Figura 3: Grafica de los Parametros-Parametros estimados del modelo dinamico.

Figura 4: Grafica de la posicion y la velocidad.

Page 23: Regresores

Figura 5: Grafica de los Parametros estimados del modelo dinamico filtrado.

Los parametros estimados obtenidos son:teta =

0.17000.18000.10003.0000Se observa que los parametros estimados de b y mglc son los que se tardan en obteneraproximadamente .1 segundos.

Page 24: Regresores

Figura 6: Grafica de los Parametros-Parametros estimados del modelo dinamico filtrado.

Figura 7: Grafica de la posicion y la velocidad.

Page 25: Regresores

Figura 8: Grafica de los Parametros estimados del modelo de energıa.

Los parametros estimados obtenidos son:teta =

0.17000.18000.10003.0000Se observa que se obtienen los parametros estimados en aproximadamente .3 segundos.

Page 26: Regresores

Figura 9: Grafica de los Parametros-Parametros estimados del modelo de energıa.

Figura 10: Grafica de la posicion y la velocidad.

Page 27: Regresores

Figura 11: Grafica de los Parametros estimados del modelo de potencia.

Los parametros estimados obtenidos son:teta =

0.17000.18000.10003.0000Se observa que los parametros estimados de b y mglc son los que se tardan en obteneraproximadamente en.15 segundos.

Page 28: Regresores

Figura 12: Grafica de los Parametros-Parametros estimados del modelo de potencia.

Figura 13: Grafica de la posicion y la velocidad.

Page 29: Regresores

Figura 14: Grafica de los Parametros estimados del modelo de potencia filtrado.

Los parametros estimados obtenidos son:teta =

0.17000.18000.10003.0000Se observa que los parametros estimados de b y mglc son los que se tardan en obteneraproximadamente en .1 segundos.

Page 30: Regresores

Figura 15: Grafica de los Parametros-Parametros estimados del modelo de potencia fil-trado.

Figura 16: Grafica de la posicion y la velocidad.

Page 31: Regresores

Figura 17: Grafica de los Parametros estimados del modelo Hamiltoniano.

Los parametros estimados obtenidos son:teta =

1.00001.05883.00000.1000Se observa que casi instantaneamente se obtienen los parametros estimados.

Page 32: Regresores

Figura 18: Grafica de los Parametros-Parametros estimados del modelo Hamiltoniano.

Page 33: Regresores

Figura 19: Grafica de los Parametros estimados del modelo Hamiltoniano filtrado.

Los parametros estimados obtenidos son:teta =

1.00001.05883.00000.1000Se observa que los parametros estimados de b y mglc son los que se tardan en obteneraproximadamente en .1 segundos.

Page 34: Regresores

Figura 20: Grafica de los Parametros-Parametros estimados del modelo Hamiltonianofiltrado.

7. Conclusiones.

No se pudo graficar la velocidad y la posicion del modelo hamiltoniano debido a que elparametro que se obtiene es b/I y no conocemos los valores de I y b, principalmente el deI ya que en las variables de estado es necesario para calcular la posicion .

De lo visto en el comportamiento de los parmetros obtenidos en las graficas se deduceque entre los modelos de regresion de los que presentaron mejor resultado al estimarlos parametros fueron el modelo de regresion dinamico su desventaja es que es necesariomedir la aceleracion, el modelo de regresion in’.amico filtrado y modelo de regresion delHamiltoniano.

Mientras que el modelo de regresion de de energıa tarda mas tiempo en obtener losparametros estimados.

Se observa tambien que con todos modelos de regresion se obtuvieron los parametrosestimados igual a los parametros.

Page 35: Regresores

Referencias

[1] Rafael Kelly, V. Santibanez; Control de Movimiento de Robots Manipuladores; Pren-tice Hall; 2003.

[2] Karl J. Astrom,Bjorn Wittenmark; COMPUTER-CONTROLLED SYSTEMS (The-ory and Design);Prentice Hall.

[3] Rafael Kelly, Fernando Reyes; EXPERIMENTAL EVALUATION OF IDENTIFICA-TION SCHEMES ON A DIRECT DRIVE ROBOT, Robotica, VOL. 15, PP.563-571