aplica toolbox de identificación con matlab
DESCRIPTION
Modelado y identificacion de parametros de motor DC mediante toolbox ident de MatlabTRANSCRIPT
![Page 1: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/1.jpg)
Modelado y Identificación Modelado y Identificación de Parámetros de un Motor DC con Matlab
M.Sc. Ricardo Rodríguez Bustinza.
2009
M.Sc. Ricardo Rodriguez B. 1
![Page 2: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/2.jpg)
Motivación
Usar un Código de Programa
Obtener la DATA usando la NIDAQ
Aplicar la Teoría de Control Digital
Construir los Circuitos
M.Sc. Ricardo Rodriguez B. 2
![Page 3: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/3.jpg)
Motor DC
M.Sc. Ricardo Rodriguez B. 3
![Page 4: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/4.jpg)
Modelo
MOTOR LOAD)(tv )(MOTOR LOAD
)(tω
)(tv
)(tT
)(tTL
R L
)(VB
)(+
+
)( J
)(tT )(tω
)(tV )(ti )(tTL−−
)(tVb
M.Sc. Ricardo Rodriguez B. 4
![Page 5: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/5.jpg)
Ecuaciones que gobiernan la dinámica delEcuaciones que gobiernan la dinámica del sistema electromecánico.
Tomando la transformada de LaplaceTomando la transformada de Laplace.
M.Sc. Ricardo Rodriguez B. 5
![Page 6: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/6.jpg)
Las transformadas anteriores proporcionanLas transformadas anteriores proporcionan las bases para construir el siguiente diagrama de bloques.
)(sTL
)(I )(T )(Ω
BJs +1
RLs +1
tK)(sI)(sV
)(V
)(sT )(sΩ
+−
+
bK)(sVb
La forma estándar de un sistema de segundo orden es dado por:
M.Sc. Ricardo Rodriguez B. 6
![Page 7: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/7.jpg)
Resolviendo la ganancia en estadoResolviendo la ganancia en estado estacionario Km, la frecuencia natural ωn y el factor de amortiguamiento ζ en términos de los parámetros del motor resulta en:de los parámetros del motor resulta en:
M.Sc. Ricardo Rodriguez B. 7
![Page 8: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/8.jpg)
SIMULINK para el Modelo pMotor DC para el Control d P i ióde Posición
M.Sc. Ricardo Rodriguez B. 8
![Page 9: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/9.jpg)
Modelo M DCMotor DC (Posición)
Modelo Motor DC (Velocidad)
M.Sc. Ricardo Rodriguez B. 9
![Page 10: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/10.jpg)
Controlador Digitalg
zzzD )85.0)(85.0(450)( −−
sTzz
zD
001.0)7.0)(98.0(
))(()(
=−+
=
M.Sc. Ricardo Rodriguez B. 10
![Page 11: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/11.jpg)
Modelo Motor DC con SIMULINK
Respuesta en lazo abierto
M.Sc. Ricardo Rodriguez B. 11
![Page 12: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/12.jpg)
Modelo Motor DC con Toolkits de LabVIEW
M.Sc. Ricardo Rodriguez B. 12
![Page 13: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/13.jpg)
M.Sc. Ricardo Rodriguez B. 13
![Page 14: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/14.jpg)
Discretizando el Modelo Motor DC con T lkit d L bVIEWToolkits de LabVIEW
M.Sc. Ricardo Rodriguez B. 14
![Page 15: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/15.jpg)
M.Sc. Ricardo Rodriguez B. 15
![Page 16: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/16.jpg)
Identificando Parámetros de un Motor DC
M.Sc. Ricardo Rodriguez B. 16
![Page 17: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/17.jpg)
load datamdchowho
tt=muestra_datos(:,1); % tiempoxx=muestra_datos(:,2); % posicionuu=muestra datos(: 3); % entradauu=muestra_datos(:,3); % entradavv=muestra_datos(:,4); % velocidad
M.Sc. Ricardo Rodriguez B. 17
![Page 18: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/18.jpg)
Datos=[N t u x v]
M.Sc. Ricardo Rodriguez B. 18
![Page 19: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/19.jpg)
tam=length(u);datos_ident=[v(1:tam/2) u(1:tam/2)];datos_vald=[v(tam/2+1:tam) u(tam/2+1:tam)];figure
l t( d t id t ‘k')plot( datos_ident, ‘k')xlabel(' # muestras')
M.Sc. Ricardo Rodriguez B. 19
![Page 20: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/20.jpg)
figuremuestra ident=iddata(datos ident);muestra_ident iddata(datos_ident);plot(muestra_ident,'r','LineWidth',2)
M.Sc. Ricardo Rodriguez B. 20
![Page 21: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/21.jpg)
Ecuación en diferencias de Motor DC
)2()1()2()1()( 2121 −+−=−+−+ kubkubkyakyaky
load datamdcload datamdctam=length(u);datos_ident=[v(1:tam/2) u(1:tam/2)];datos_vald=[v(tam/2+1:tam) u(tam/2+1:tam)];% Identificación Paramétrica Modelos ARXth=arx(datos_ident,[2 2 1]);( _ ,[ ]);present(th)% Discrete-time IDPOLY model: A(q)y(t) = B(q)u(t) + e(t)% A(q) = 1 - 1 63 (+-0 005044) q^-1 + 0 6681 (+-0 004624) q^-2% A(q) 1 1.63 (+ 0.005044) q 1 + 0.6681 (+ 0.004624) q 2% B(q) = 0.3746 (+-0.004756) q^-1 + 0.3746 (+-0.004756) q^-2% Estimated using ARX from data set datos_ident% Loss function 0 000113658 and FPE 0 000118297% Loss function 0.000113658 and FPE 0.000118297% Sampling interval: 1% B(q) = 0.3746q^-1 + 0.3746q^-2% A( ) 1 1 63 ^ 1 0 6681 ^ 2
M.Sc. Ricardo Rodriguez B. 21% A(q) = 1 - 1.63q^-1 + 0.6681q^-2
![Page 22: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/22.jpg)
Modelo ARXModelo ARXT=1;G=tf([0.3746 0.3746],[1 -1.63 0.6681],T);[nd,dd]=tfdata(G,'v');tk=0:T:200;tk 0:T:200;yd=dstep(nd,dd,201);stairs(tk,yd)xlabel('# Muestras')xlabel( # Muestras )ylabel('yd')
)2(3746.0)1(3746.0)2(6681.0)1(63.1)( −+−=−+−− kukukykyky
M.Sc. Ricardo Rodriguez B. 22
![Page 23: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/23.jpg)
Elección de laElección de la Estructura Optima
hold( ( 1))plot(datos_ident(:,1))
legend('Ident','Data',4)
M.Sc. Ricardo Rodriguez B. 23
![Page 24: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/24.jpg)
nn=struc([1:4],[1:4],[1:4]);v=arxstruc(datos_ident,datos_valid,nn);nn=selstruc(v)% nn =% 1 2 1
M.Sc. Ricardo Rodriguez B. 24
![Page 25: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/25.jpg)
th=sett(th,0.01);present(th)% Discrete-time IDPOLY model: A(q)y(t) = B(q)u(t) + e(t)% Discrete-time IDPOLY model: A(q)y(t) = B(q)u(t) + e(t)% A(q) = 1 - 1.63 (+-0.005044) q^-1 + 0.6681 (+-0.004624) q^-2% B(q) = 0.3746 (+-0.004756) q^-1 + 0.3746 (+-0.004756) q^-2% Estimated sing ARX from data set datos ident% Estimated using ARX from data set datos_ident% Loss function 0.000113658 and FPE 0.000118297% Sampling interval: 0.01% B(q) = 0.3746q^-1 + 0.3746q^-2% A(q) = 1 - 1.63q^-1 + 0.6681q^-2
211 3746037460)( −−− + zzzB211 6881.063.11
3746.03746.0)()()( −−− +−
+==
zzzz
zAzBzG
M.Sc. Ricardo Rodriguez B. 25
![Page 26: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/26.jpg)
D=tf([0.3746 0.3746 0],[1 -1.63 0.6681],0.01);C=d2c(D);% Transfer function:% 0.3746 s^2 + 87.74 s + 9139% ---------------------------% s^2 + 40 33 s + 464 8% s 2 + 40.33 s + 464.8
thc=thd2thc(th);[numc denc]=th2tf(thc)[numc,denc]=th2tf(thc)printsys(numc,denc,'s')% num/den =% -3.0809 s + 9140.7463% -------------------------% s^2 + 40.335 s + 466.8238
M.Sc. Ricardo Rodriguez B. 26
![Page 27: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/27.jpg)
2Kω22 2
)(nn
n
ssKsH
ωζωω
++==
nn
M.Sc. Ricardo Rodriguez B. 27
![Page 28: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/28.jpg)
Validando el ModeloValidando el Modelo
fifigurecompare(datos_ident,th);
M.Sc. Ricardo Rodriguez B. 28
![Page 29: Aplica Toolbox de Identificación con Matlab](https://reader035.vdocuments.pub/reader035/viewer/2022081516/5571f3a649795947648e6144/html5/thumbnails/29.jpg)
Análisis de los ResiduosAnálisis de los Residuos
figureresid(datos_valid,th);
M.Sc. Ricardo Rodriguez B. 29