|
|
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 anterior 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 estado estacionario, 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.
|
|
|