Documente Academic
Documente Profesional
Documente Cultură
2012
Sabemos que un motor D.C. se modela con las variables fsicas, corriente, tensin, velocidad y posicin, mediante el circuito mostrado en la figura.
Es necesario conocer R y L de la armadura, as como, K constante de fuerza electromotriz. Del rotor son necesarios, el amortiguamiento y la inercia del eje. La entrada al sistema es el voltaje V y las salidas, el torque, la posicin y la velocidad angular. El torque de salida est relacionado con la corriente en la armadura segn la ecuacin: =
Y la velocidad angular del eje se relaciona con el voltaje en la armadura, con la siguiente ecuacin: = A saber, del circuito elctrico: = + +
Los motores se disean de modo que Kt y Ke tengan valores similares, adems tienen las mismas unidades del Sistema Internacional. Basados en la segunda ley de Newton, para el eje obtenemos: El sistema queda entonces: + + = = =
2012
El factor en el numerador de la izquierda representa la derivada de una funcin theta, que en este caso es la posicin angular, por lo tanto tenemos en el numerador a la velocidad angular. = ( + )( + )+
Existe una representacin adicional, llamada espacio de estados, la cual se muestra a continuacin: 0 + 1
En el trabajo anterior obtuvimos una funcin de transferencia mediante la toolbox (ident) de Matlab. Con Matlab podemos tambin calcular las matrices A, B y C del sistema:
Num=[159504.12025498]; Den=[1 115.11663816574 640.16744363052]; [A,B,C,D]=tf2ss(Num,Den)
2012
Estas matrices estn en tiempo continuo, debemos obtener Ad,Bd,Cd, y Dd, nuevamente utilizamos Matlab:
Tm=0.1; [Ad,Bd,Cd,Dd]=c2dm(A,B,C,D,Tm,'zoh');
Tiempo de muestreo de 0.1 segundos. Los resultados son los siguientes: Ad = -0.031521 0.0053828 -3.4459 0.58813
Bd = 0.0053828 0.00064338
Cd = 0 1.595e+005
Dd = 0
2012
Donde r (referencia) e y (velocidad) estn en RPM. Para hallar las ganancias Ko y K utilizamos la reubicacin de polos y el comando place de Matlab que reubica los polos a voluntad. Los polos deseados, -10+7j y su complemento -10-7j. Los polos del observador se colocan alejados del controlador de modo que la respuesta del observador sea ms lenta.
Pc=[-10-7j -10+7j]; Pco=2.5*Pc; P=exp(Pc*Tm); Po=exp(Pco*Tm); K=place(Ad,Bd,P); Kx=place(Ad',Cd',Po); Ko=Kx';
En el programa de Matlab mostrado, se definen los polos que utilizaremos y luego los polos del observador alejados un factor de 2.5. Luego se convierte esta informacin al plano Z y reubicamos los polos. K= -23.433 Ko = 186.53
2012
Finalmente la ganancia Ki se ajusta para obtener un escaln unitario en la salida cuando se tiene un escaln unitario en la entrada. Ki=0.00418 Trabajamos en Simulink con la informacin obtenida:
2012
El control de velocidad del Motor DC utilizando MATLAB, se realiza utilizando un micro controlador PIC18F4550, puente H L293D, y el motor DC de 9 voltios. Num=[159504.12025498]; Den=[1 115.11663816574 640.16744363052]; [A,B,C,D]=tf2ss(Num,Den); Tm=0.1; [Ad,Bd,Cd,Dd]=c2dm(A,B,C,D,Tm,'zoh') Pc=[-10-7j -10+7j]; Pco=2.5*Pc; P=exp(Pc*Tm); Po=exp(Pco*Tm); K=place(Ad,Bd,P) Kx=place(Ad',Cd',Po); Ko=Kx'
2012
En la siguiente figura se puede ver la respuesta del motor de color azul, cuando la referencia de velocidad es 0 RPM.
Tenemos en la siguiente foto la respuesta cuando la referencia de velocidad se cambia de 0 RPM a 1000 RPM.
2012
En la figura se ve cmo responde el motor cuando se cambia la referencia de 1000 RPM a 500 RPM.
2012