Está en la página 1de 23

11/Noviembre/2011

Instituto Tecnolgico de Morelia Jos Mara Morelos y Pavn

Alumno:

09120782 Ramos Albarrn Fernando

Asesor: Dr. Osvaldo Gutirrez Snchez

Control I

[REPORTE DE LA PRCTICA #8: RESPUESTA EN EL


TIEMPO DE SISTEMAS DE PRIMER Y SEGUNDO ORDEN.

Divisin de Estudios Profesionales: Ingeniera Elctrica

RESUMEN
Este documento pretende analizar cmo cambia la respuesta temporal de sistemas de primer y segundo orden segn se cambien sus parmetros, para eso se usan distintas herramientas de MATLAB y SIMULINK para simular dichos sistemas. Primero se presentan las diferentes salidas para entradas escaln, impulso y rampa mediante la funcin , despus se muestran diferentes ejemplos variando los parmetros de sus funciones de transferencia, y por ltimo se muestra como obtener una funcin de transferencia a partir de parmetros conocidos.

INTRODUCCIN
Las respuestas transitorias (tales como respuesta al escaln, al impulso y a la rampa) son usadas frecuentemente para investigar las caractersticas en el dominio del tiempo de los sistemas de control. Las caractersticas de respuesta transitoria, tales como rapidez, mximo sobreimpulso, tiempo de establecimiento, error en estado estacionario pueden ser determinadas a partir de la respuesta al escaln unitario. Si se conoce el numerador y el denominador de la Funcin de Transferencia en lazo cerrado, entonces se puede usar el comando O bien

La cual genera los valores de la respuesta al escaln unitario (t se utiliza para especificar el tiempo). Para un sistema de control definido en variables de estado el comando

Genera la grfica de la respuesta al escaln. Este vector es generado automticamente cuando t no es incluido en el comando escaln. Cuando existen argumentos a la izquierda del comando tales como

Con este comando no se grafica en la pantalla, sino que hay que usar el comando para ver las curvas de la respuesta. Las matrices y, x contienen la salida y la respuesta de estado del sistema respectivamente para los puntos del intervalo t, la salida y tiene tantas columnas como salidas y un rengln por cada elemento en t, x tiene tantas columnas como estados tenga el sistema y un rengln por cada elemento en t.

DESARROLLO
Ejemplo.- Obtener la respuesta al escaln unitario del sistema

En MATLAB usamos
% respuesta del sistema a una entrada escaln unitario % funcin G(s) num=25; den=[1 4 25]; % comando para graficar step(num,den);grid title('Respuesta al escaln unitario');

Step Response 1.4

1.2

Amplitude

0.8

0.6

0.4

0.2

0.5

1.5 Time (sec)

2.5

Respuesta al impulso. La respuesta al impulso de es la misma que la respuesta al escaln unitario de Ejemplo, la respuesta al impulso unitario del sistema

dado que

para una entrada impulso, tenemos ( )

% La respuesta al impulso unitario de G(s)=1/(s+1) % usando el comando de respuesta al escaln (step)

% numerador y denominador del sistema sG(s) num=[1 0]; den=[1 1]; % Comando de la respuesta al escaln [y,x,t]=step(num,den); figure(2) plot(y,t,'k'); grid on; title('respuesta al impulso unitario de G(s)=1/(s+1)'); xlabel('t seg');ylabel('Amplitud');
respuesta al impulso unitario de G(s)=1/(s+1) 6

Amplitud

0.1

0.2

0.3

0.4

0.5 t seg

0.6

0.7

0.8

0.9

Respuesta a una entrada rampa.


Para obtener la respuesta de una rampa de la funcin de transferencia del sistema por y usamos el comando de respuesta al escaln. Ejemplo, el sistema de lazo cerrado se divide

Para una entrada rampa,

se tiene

Para obtener la respuesta de una rampa en MATLAB el numerador y denominador del sistema se convierte en num=[0 0 0 1]; den=[1 1 1 0]; Con lo cual se puede utilizar el comando para la respuesta escaln (step)

% Respuesta a la rampa es obtenida como la respuesta al escaln de G(s)/s % numerador y el denominador del sistema G(s)/s num=[0 0 0 1]; den=[1 1 1 0]; % Especifica el tiempo de clculo (t=0:0.1:7) % y el comando de respuesta al escaln t=0:0.1:7; c=step(num,den,t); % Grafica la respuesta y la entrada de referencia % La entrada de referencia es t figure(3) plot(t,c,'ko',t,t,'k-'); grid on; title('Respuesta a una Rampa del sistema G(s)=1/(s^2+s+1)'); xlabel('t seg');ylabel('Salida c');

Respuesta a una Rampa del sistema G(s)=1/(s +s+1) 7

Salida c

0 0

3 t seg

Las Respuestas de los sistemas tambin se pueden obtener a partir de la ecuacin representada en el tiempo como se muestra en los siguientes ejercicios:

Ejercicio: Calcula y representa grficamente la respuesta de un sistema de 1 orden con una entrada en escaln unitario.
%Respuesta de un sistema de 1 orden con entrada en escaln unitario. k=input('Introduce la ganancia del sistema:'); T=input('Introduce la constante de tiempo del sistema:'); t=0:0.1:20; y=k-k*(exp((-t)/T)); %Definicin de la ecuacin de entrada en escaln unitario. figure(4) plot(t,y);

Introduce la ganancia del sistema:20 Introduce la constante de tiempo del sistema:5

20 18 16 14 12 10 8 6 4 2 0

10

12

14

16

18

20

Introduce la ganancia del sistema:20 Introduce la constante de tiempo del sistema:0.5


20 18 16 14 12 10 8 6 4 2 0

10

12

14

16

18

20

Ejercicio: Calcula y representa grficamente la respuesta de un sistema de 1 orden con una entrada impulso.
%Respuesta de un sistema de 1 orden con entrada impulso. k=input('Introduce la ganancia del sistema:'); T=input('Introduce la constante de tiempo del sistema:'); t=0:0.1:20; %Definicin del intervalo de representacin y del incremento. y=(k/T)*exp((-t)/T); %Definicin de la ecuacin de 1 orden impulso. plot(t,y); %Orden de dibujo de la grfica.

Introduce la ganancia del sistema:8 Introduce la constante de tiempo del sistema:2

4 3.5 3 2.5 2 1.5 1 0.5 0

10

12

14

16

18

20

Ejercicio: Calcula y representa grficamente la respuesta de un sistema de 1 orden con una entrada en rampa.
%Respuesta de un sistema de 1 orden con entrada en rampa. k=input('Introduce la ganancia del sistema:'); T=input('Introduce la constante de tiempo del sistema:'); t=0:0.1:20; y=k*(t-T)+k*T*(exp((-t)/T)); plot(t,y);

Introduce la ganancia del sistema:3 Introduce la constante de tiempo del sistema:4


50 45 40 35 30 25 20 15 10 5 0

10

12

14

16

18

20

Otra forma de introducir seales de prueba a un sistema es como se muestra en el siguiente ejercicio: Ejercicio: Simular y representar la respuesta a una entrada senoidal contaminada por ruido, siendo:

En este caso, ser necesario utilizar una funcin universal que pueda ser utilizada para todas las entradas y es lsim (ver ayuda de lsim). A esta funcin, hay que especificarle la seal que le estamos aplicando, mediante la variable u que, por ejemplo, para el caso de la rampa sera u=t y para el caso de una seal contaminada por otra senoidal, ser: u=sin(t)+rand(size(t)), donde se sumarn una seal senoidal sobre el tiempo t y otra seal aleatoria sobre el mismo tiempo, lo que dar lugar a una seal aleatoria que puede ser utilizada como ruido, porque el ruido, en realidad, es eso, una seal aleatoria.

En Matlab el programa quedara: % Parmetros del sistema. t=0:0.1:10; u=sin(t)+randn(size(t)); num=[2 5 1]; den=[1 2 3]; lsim(num,den,u,t);

Linear Simulation Results 10 8 6 4 2

Amplitude

0 -2 -4 -6 -8 -10

5 Time (sec)

10

Ejercicio:
1.1. El objetivo fundamental es el de observar como un sistema de primer orden cambia su respuesta de acuerdo al cambio de parmetros. 1.1. Anlisis de respuesta debida a cambios en parmetros Realizar un programa (archivo .m) que calcule la respuesta al escaln, impulsiva y rampa de un sistema de primer orden, donde (constante de tiempo) vara de 0 a 100 en pasos de 10 y los visualice en una sola figura. Para ello utilice el comando
%Respuesta al escalon unitario k=input('Introduce la ganancia del sistema:'); for T=0.1:10:100.1 %Vara el valor de Tau de 0.1 a 100.1 en pasos de 10 [y,x,t]=step([0 k],[T 1]);%Comando de la respuesta escaln figure(1) %Mantiene la figura en pantalla hold on %Para sostener todas graficas en una misma figura plot(t,y);grid on %Grafica la respuesta al escaln title('Respuesta al escaln unitario'); %Ttulo de la grfica end hold off G1=tf([0 k],[T 1])%Crea una funcin de tranferencia para una %respuesta escaln con el ltimo valor de tau r=[0 200 0 4]; %Define los lmites para grficar %Respuesta al impulso unitario for T=0.1:10:100.1 [y,x,t]=step([k 0],[T 1]); %Comando de la respuesta impulso figure(2); axis(r);%Mantiene la figura en pantalla con sus lmites hold on plot(t,y);grid on %Grafica la respuesta al impulso title('Respuesta al impulso unitario'); end hold off G2=tf([k 0],[T 1])%Crea una funcin de tranferencia para una %respuesta impulso con el ltimo valor de tau %Respuesta a la rampa unitaria s=[0 10 0 5]; for T=0.1:10:100.1 [y,x,t]=step([0 0 1],[T 1 0]); %Comando de la respuesta rampa figure(3) axis(s); hold on plot(t,y);grid on %Grafica la respuesta a la rampa title('Respuesta a la rampa unitaria'); end hold off G3=tf([0 0 1],[T 1 0])%Crea una funcin de tranferencia para una %respuesta rampa con el ltimo valor de tau

En la ventana de comandos de MATLAB nos pide la ganancia del sistema:


Introduce la ganancia del sistema:50 Transfer function: 50 ----------100.1 s + 1

Transfer function: 50 s ----------100.1 s + 1 Transfer function: 1 ------------100.1 s^2 + s

Y luego se grafican las respuestas a cada una de las entradas.


Respuesta al escaln unitario 50 45 40 35 30 25 20 15 10 5 0

100

200

300

400

500

600

Respuesta al impulso unitario 4 3.5 3 2.5 2 1.5 1 0.5 0

20

40

60

80

100

120

140

160

180

200

Respuesta a la rampa unitaria 5 4.5 4 3.5 3 2.5 2 1.5 1 0.5 0

10

Realizar un programa que calcule el tiempo de subida utilizando los datos generados por la funcin .

establecimiento

% Calcule el tiempo de subida (Tr), establecimiento (Ts) y % error de posicin utilizando los datos generados por la funcin step. % Realizar una grfica del Tr vs.T y Ts vs. T. k=input('Introduce la ganancia del sistema:'); for T=10:10:100 [y,x,t]=step([0 k],[T 1]); tr((T/10))=2.19*T; T1((T/10))=T; Ts((T/10))=3.91*T; end disp('Tiempo de Subida "Tr"') tr disp('Tiempo de Establecimiento "Ts"') Ts figure(1) plot(tr,T1);grid on title('Grafica Tr vs T'); figure(2) plot(Ts,T1); grid on title('Grafica Ts vs T');

En la ventana de comandos de MATLAB introducimos la ganancia del sistema.


Introduce la ganancia del sistema:25 Tiempo de Subida "Tr" tr = Columns 1 through 8 21.9000 43.8000 65.7000 87.6000 109.5000 131.4000 153.3000 175.2000 Columns 9 through 10 197.1000 219.0000

Tiempo de Establecimiento "Ts" Ts = Columns 1 through 8 39.1000 78.2000 117.3000 156.4000 195.5000 234.6000 273.7000 312.8000 Columns 9 through 10 351.9000 391.0000

Las grficas de
Grafica Tr vs T 100 90 80 70 60 50 40 30 20 10 20

son las siguientes:


Grafica Ts vs T 100 90 80 70 60 50 40 30 20 10

40

60

80

100

120

140

160

180

200

220

50

100

150

200

250

300

350

400

Utilice el LTIVIEW para comprobar los resultados (use funciona).


>> LTIVIEW

LTIVIEW para ver cmo

Luego de teclear LTIVIEW nos aparece la siguiente ventana, vamos al men archivo y damos click en importar

Seleccionamos cada una de las funciones de transferencia creadas en el programa

Y obtenemos las siguientes respuestas para cada una de las entradas.

1.2. Anlisis en SIMULINK Implemente el siguiente sistema de primer orden en SIMULINK

Utilizando como entrada una seal escaln y colocando un integrador y un derivador a la salida, simule el modelo.

Utilizando como entrada una seal escaln y colocando un integrador y un derivador a la salida por separado

1 s Integrator 2 0.5s+1 Step Transfer Fcn du/dt Derivative Scope

Como se puede ver la derivada del escaln es un impulso (morado) y la integral de este mismo es una rampa (amarilla). Analice las respuestas y comprelas con los resultados del ejercicio anterior. Comparando los resultados del modelo con los del ejercicio anterior se puede observar que las respuestas a las entradas en ambos casos son muy similares ya que tratan de alcanzar el valor de la ganancia 2. Simulacin de sistemas de segundo orden 2.1. Anlisis de respuesta debida a cambios de parmetros Implemente un programa que muestre la respuesta de un sistema de segundo orden con =1 y donde (factor de amortiguamiento) vari desde 0 hasta 1.0 en pasos de 0.2.
%Muestra la respuesta de un sistema de segundo orden con n=1 y %donde (factor de amortiguamiento) vara desde 0 hasta 1.0 %en pasos de 0.2. wn=1; for E=0.2:0.2:1 %Vara E de 0.2 a 1 en pasos de 0.2 [y,x,t]=step([0 0 wn],[1 2*E*wn wn]); %Respuesta de un sistema de %2do. orden hold on plot(t,y);grid on %Grafica la salida end hold off G=tf([0 0 wn],[1 2*E*wn wn]) %Muestra la funcin de transferencia %para =1

Se simula, y en la ventana de comandos de MATLAB se muestra lo siguiente. Transfer function: 1 ------------s^2 + 2 s + 1

1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 0

10

15

20

25

30

Escriba un programa que le permita calcular el funcin de los valores de los parmetros.

, el tiempo de establecimiento en

%Calculo de Mp en porcentaje y del tiempo de establecimiento E=input('Introduzca el factor de amortiguamiento: '); wn=input('Introduzca la frecuencia natural no amortiguada: '); disp('Mximo sobreimpulso "Mp" en porcentaje') Mpseg=100*exp((-E*pi)/(sqrt(1-E^2))) disp('Tiempo de establecimiento "Ts" para el 2%') ts=4/(E*wn)

Introduzca el factor de amortiguamiento: 3/8 Introduzca la frecuencia natural no amortiguada: 12 Mximo sobreimpulso "Mp" en porcentaje Mpseg = 28.0597 Tiempo de establecimiento "Ts" para el 2% ts = 0.8889 Haga un grfico de vs. El , para valores de entre 0 y 1.0

%Grafica Ts vs. Mp para valores de y n entre 0 y 1.0 for E=0:0.2:1 for Wn=0:0.2:1.0 ts=4/(E*wn) %Calcula ts con error del 2 por ciento Mp=100*exp((-E*pi)/(sqrt(1-E^2))) %Cacula Mp en porcentaje hold on plot(ts,Mp,'rO');grid on %Grafica la respuesta title('grafica ts vs Mp'); %Ttulo de la grfica

end end hold off


Grfica ts vs Mp 100 90 80 70 60 50 40 30 20 10 0 0.2

0.4

0.6

0.8

1.2

1.4

1.6

1.8

Utilice LTIVIEW para comprobar sus programas.

Podemos ver que el grfico mostrado corresponde para un valor de ejercicio 2.1

del primer ejemplo del

3. Utilizando los anlisis expuestos en los ejercicios anteriores llegue a conclusiones especficas sobre el comportamiento de los sistemas de segundo y primer orden. Presente un reporte completo que incluya adems los programas y grficos realizados. En un sistema de segundo orden, en el caso subamortiguado se observ que para un valor valor mximo de la respuesta va disminuyendo y el periodo del transitorio aumenta. Para sistemas de primer orden se observ que para un valor grande de la respuesta alcanza ms rpido su valor mximo, por lo tanto el tiempo del transitorio disminuye.

El valor de estado estable de los sistemas de primer orden y de segundo orden es el producto de la ganancia y de la magnitud del escaln. 4. Identificacin de sistemas de segundo orden 4.1. El grfico siguiente muestra la respuesta a escaln unitario de un sistema de segundo orden desconocido:

Se pide determinar la funcin de transferencia el sistema a partir de los valores que se muestran en el grfico. Simular un sistema con esa funcin de transferencia para comprobar que los clculos realizados son correctos. De acuerdo a la grfica dada, se obtienen los siguientes valores:

A partir de la siguiente ecuacin: ( Dnde:


( )

Si se despeja

obtenemos:

Del cual solo se toma el valor positivo ya que no existen frecuencias negativas.

Evaluando el valor de

Luego se usa la siguiente ecuacin:

Para despejar , lo que da como resultado: Conociendo y

se pueden sustituir en la siguiente funcin de transferencia:

Dnde:

Si se aplica en la entrada del sistema un escaln unitario y observando que la respuesta tiende a 5, se deduce que la ganancia del sistema es 5, se evala la funcin con los valores encontrados:

Se introducen los datos a MATLAB para comprobar resultados:


num=(62.23); den=[1 3.2103 12.446]; % Comando de la respuesta al escaln step(num,den,'b-');

Step Response 7

Amplitude

0 0

0.5

1.5 Time (sec)

2.5

3.5

Se puede apreciar que se obtuvo la misma grfica dada.

4.2. En este caso se muestra la respuesta a escaln de valor 0.5 para un sistema de segundo orden desconocido.

Se pide Determinar la funcin de transferencia del sistema a partir de los valores que se muestran en el grfico. Simular un sistema con esa funcin de transferencia para comprobar que los clculos realizados son correctos (el escaln debe tener valor final 0.5).

De acuerdo a la grfica dada, se obtienen los siguientes valores:

Tenemos ahora la siguiente ecuacin: ( Dnde:


( )

Se despeja y se tiene:

Luego con la siguiente ecuacin:

Se despeja

y obtenemos:

Conociendo los valores del sistema se pueden sustituir en la siguiente ecuacin:

Dnde, se observa que:

Por lo que la funcin de transferencia se evala de la siguiente manera:

Se introducen los datos a MATLAB para comprobar resultados:


num=(-6.112); den=[1 0.5 3.055]; figure(2) % Comando de la respuesta al escaln step(num,den,'b-');
Step Response 0

-0.5

-1

Amplitude

-1.5

System: sys Time (sec): 11.5 Amplitude: -1.93

-2

-2.5 System: sys Time (sec): 1.89 Amplitude: -3.25

-3

-3.5 0

10 Time (sec)

15

20

25

Se puede observar que ambas graficas son iguales, la segunda es una aproximacin debido a los valores por redondeo

CONCLUSIONES
En un sistema de segundo orden, en el caso subamortiguado se observ que para un valor valor mximo de la respuesta va disminuyendo y el periodo del transitorio aumenta. Para sistemas de primer orden se observ que para un valor grande de la respuesta alcanza ms rpido su valor mximo, por lo tanto el tiempo del transitorio disminuye. Esto se observ claramente al hacer variar dichos parmetros en los ejercicios a los largo de la prctica, de la misma forma se puede hacer variar otros tipos de parmetros y observar el comportamiento de la respuesta del sistema, esta es slo una de las ventajas que se obtienen a partir de una simulacin.

BIBLIOGRAFA
[1] Dr. Osvaldo Gutirrez Snchez, Control I, Instituto Tecnolgico de Morelia, Departamento de Ingeniera Elctrica. [2] David Bez Lpez, MATLAB con Aplicaciones a la Ingeniera, Fsica y Finanzas, 1ra. Edicin, Editorial Alfaomega, septiembre 2006. [3] Javier Garca de Jaln, Jos Ignacio Rodrguez, Alfonso Brazlez, Aprenda Matlab 5.3 como si estuviera en primero, Perteneciente a la coleccin: Aprenda, como si estuviera en primero, San Sebastin, Agosto 1999.