ERRORES EN ESTADO ESTACIONARIO USANDO MATLA1
Short Description
Download ERRORES EN ESTADO ESTACIONARIO USANDO MATLA1...
Description
ERRORES EN ESTADO ESTACIONARIO USANDO MATLAB
Matlab es una de las herramientas de software más importante para el análisis de sistemas de control. Presenta diferentes opciones para simular tales como Simulink
Error de estado estacionario y tipo de sistema. Si recordamos las clases teóricas, y las ecuaciones para calcular errores de estado estacionario para sistemas de realimentación unitaria, hemos definido definido c iertas iertas c onstant onstant es (conocidas (conocidas como las constantes de e rror estáticas). Estas constantes constantes s on: la constante de posición (Kp), la constante de velocidad (Kv), y la constante de aceleración (Ka). Sabiendo el valor de estas constantes así como el tipo del sistema, podemos predecir si nuestro sistema va a tener un error de estado estacionario finito, cero o infinito.
Primero, hablemos sobre el tipo del sistema. El tipo del sistema se define como el número de integradores puros en un sistema. Es decir, el tipo del sistema es igual al valor de n cuando el sistema se representa como en la figura siguiente:
Por consiguiente, un sistema puede ser tipo 0, tipo 1, etc. Ahora, veamos cómo se relaciona el error estacionario con los tipos de sistema:
Dado el sistema siguiente:
donde G(s) es: K*(s + 3)(s + 5) -------------------------s (s + 7)(s + 8) encuentre el valor de K para que se tenga un 10% de error estacionario en sistema de lazo abierto. Puesto que este sistema es de tipo 1, no habrá ningún error de estado estacionario para una entrada escalón y un error infinito para una entrada parabólica. La única entrada a la cual se tendrá un error de estado estacionario finito en este sistema, es la señal rampa. Observemos la respuesta del sistema a la entrada rampa para una ganancia de 1:
num = conv([15],13]); -- multiplicación de los ceros de G(s). den = conv([1 7],[1 8]);-- multiplicación de los polos de G(s) sin el polo en cero. den = conv(den,[1 0]);-- multiplicación del resultado ant erior con el polo en cero. [clnum,clden] = cloop(num,den);-- se realiza la realimentación del sistema. t =0:0.1:50;-- tiempo de trabajo. u = t; -- señal de entrada. [y,x] = lsim(clnum,clden,u,t);-- evalua los datos en el tiempo con la señal de entrada presente. plot(t,y,t,u) -- dibuja los resultados anteriores xlabel (' Tiempo(seg) ') -- coloca label en el eje horizontal. ylabel ('Amplitud ') -- coloca label en el eje vertical. title ('Entrada-verde, Salida-azul') -- coloca titulo final de la gráfica.
El error de estado estacionario para este sistema es muy grande. Como podemos ver en 20 segundos, la entrada es igual a 20 mientras la salida en amplitud es aproximadamente 16.
Sabemos que necesitamos tener un error estacionario de 0.1. Por consiguiente, debemos resolver el problema realizando los siguientes pasos:
De tal manera que se obtiene el valor de K igual a 37.33 para cumplir la especificación señalada:
K =37.33; num =K*conv ([1 5], [1 3]); den =conv([1 7],[1 8]); den = conv(den,[1 0]); [clnum,clden] = cloop(num,den); t = 0:0.1:50; u = t; [ y,x] = lsim(clnum,clden,u,t); plot(t,y,t,u) xlabel (' Tiempo(seg) ') ylabel ('Amplitud ') title('entrada-verde, salida-azul ')
Para conseguir una vista mejor, debemos hacer un zoom en la respuesta. Escogemos un rango entre 40 y 41 para asegurarnos de que el sistema ha alcanzado su estado estacionario y observar con mayor precisión la diferencia entre la entrada y la salida.
axis([40,41,40,41])
La amplitud = 40 a t = 40 para nuestra entrada, y tiempo = 40.1 para nuestra salida. Sin embargo, como son líneas paralelas en est ado estaciona rio, nosotros también podemos decir que cuando estamos en t = 40 nuestra respuesta tiene una amplitud de 39.9, dándonos un error de error estacionario de 10%. Realicemos un acercamiento mayor para confirmar lo anterior:
axis([39.9,40.1,39.9,40.1])
Ahora modifiquemos el problema un poco y digamos que nuestro sistema es el siguiente:
Nuestro G(s) es el mismo, pero ahora nosotros queremos tener un error de estado estacionario igual a cero para una señal rampa unitaria.
Según nuestros conocimientos, sabemos que un sistema de tipo 2 nos da cero error estacionario para una entrada rampa. Por consiguiente, podemos conseguir un error estacionario igual a cero simplemente agregando un integrador (un polo al origen). Veamos la respuesta a la entrada rampa si agregamos un integrador y usando una ganancia de uno:
num =conv ([1 5], [1 3]); den =conv([1 7],[1 8]); den = conv(den,[1 0]); den = conv(den,[1,0]); [clnum,clden] = cloop(num,den); t = 0:0.1:250; u = t; [ y,x] = lsim(clnum,clden,u,t); plot(t,y,t,u) xlabel (' Time(secs) ') ylabel ('Amplitud ') title (' Entrada-verde, Salida-azul ')
Como se puede ver, parece que en estado estable tenemos un error cero. Hagamos un zoom para observar las señales cerca de los 240 segundos:
axis([239.9,240.1,239.9,240.1])
Esto indica que, el error de estado estacionario realmente es cero
NOTA: Sabemos que la función de transferencia para el siguiente sistema:
Si restamos y sumamos G(s) a la expresión del denominador de la función de transferencia:
Y dividimos todo entre la expresión 1 + G(s)H(s) - G(s) tenemos:
Podemos observar que el mismo sistema podría ser representado de la siguiente forma:
Con retroalimentación unitaria. Utilizando la fórmula para hallar la función de transferencia de lazo cerrado se obtiene la misma expresión original.
Adicionalmente, hay que notar que con la función escalón, el comando lsim no tiene sentido porque la función step guarda los datos obtenidos cuando se aplica al sistema. La señal rampa u=t, si necesita lsim para obtener los datos cuando se aplica al sistema. Lo
mismo sucede con la señal parabólica u=0.5*t.*t que también necesita obtener y almacenar los datos cuando se aplica al sistema. Sugerencias y/o comentarios Espero sus comentarios y sugerencias para mejorar esta página.
Ing. Juan Manuel Chaparro Bogotá, Colombia
http://jchafon.galeon.com/
View more...
Comments