Professional Documents
Culture Documents
1.
Introduccin
2.
Objetivos
Utilizar las herramientas especializadas que ofrece Matlab para el anlisis de sistemas dinmicos.
Simular la respuesta temporal de los sistemas dinmicos.
Analizar el comportamiento de los sistemas dinmicos.
3.
3.1.
Fundamento Terico
Anlisis de Respuesta Transitoria
En Matlab el tiempo de subida se define como el tiempo que tarda la curva en pasar del 10 % al 90 %
de su valor final
Funcin
step
step(num,den,t)
step(A,B,C,D, iu, t)
step(sys)
impulse
lsim(sys,u,t)
ginput(n)
damp(sys)
dcgain
Descripcin
Simula la respuesta de un sistema lineal ante una entrada escaln.
Si el comando tiene argumento en lado izquierdo [y, x, t], se obtienen matrices con tantas columnas como salidas o estados y tantas
filas como elementos en t.
num y den son el numerador y denominador de la funcin de transferencia, t es opcional y es el tiempo de simulacin
Obtiene la respuesta para un sistema de control definido en el espacio de estado. iu es un ndice que especifica que entrada se va a
usar para la respuesta, para los sistemas de multiples entradas.
Obtiene la respuesta escaln de un sistema previamente definido
por una funcin de transferencia (tf ) o por una ecuacin de estado
(ss)
Simula la respuesta a una funcin impulso. La sintaxis es como la
descrita para la funcin step.
Simula la respuesta de un sistema dinmico ante una entrada aleatoria
Devuelve los valores de un determinado punto en la grfica colocando el cursor con el ratn. n es opcional y determina el nmero
de puntos que sern identificados. Oprima return para salir del
modo ginput y que se imprima los resultados.
Permite obtener la frecuencia natural y el factor de amortiguamiento del sistema. Si existe un tercer argumento a la izquierda
devuelve adems los polos del sistema.
Evala la ganancia esttica (s = 0) para un sistema LTI, en otras
palabras el valor de estado estable.
4.
Procedimiento experimental
4.1.
n2
s2 + 2n + n2
(1)
La respuesta de este sistema ante una entrada escaln puede obtenerse usando Matlab
efectuando los siguientes pasos:
Cree un nuevo scrip de Matlab y gurdelo con un nombre apropiado. Es una buena
prctica que inicie sus funciones o scrips con un comentario sobre la aplicacin
que va a desarrollar
3
Descripcin
tiempo de retardo
tiempo de subida
tiempo pico
Sobreelongacin
Tiempo de asentamiento
= 0,2
= 0,4
= 1,0
=3
Cuadro 2: Caracterstica de las respuestas para los sistemas de segundo orden, wn = 1,0
Defina las variables que se van a emplear. Observe la ecuacin 1, se necesita dos
variables una para la frecuencia natural y otra para el factor de amortiguamiento.
Use wn y z, respectivamente. En este ejemplo se usar una frecuencia natural
igual a 1, y se evaluar las respuestas para factores de amortiguamiento entre 0 y
5. Escriba:
wn=1;
zeta=[0:0.1:0.9, 1,2,3,5];
Tambin es necesario crear una matriz que guarde la respuesta total del sistema y
el tiempo, para que sea el mismo vector para todos los grficos. yy=[];
t=0:.1:12;
Para evaluar la respuesta para cada valor de z, se utiliza un lazo for:
for z=zeta
G=tf(wn^2,[1,2*z*wn,wn^2]);
y=step(G,t);
yy=[yy, y];
end
Grafique la respuesta:
plot(t,yy); grid
Para observar mejor el comportamiento de la seal de salida versus el cambio en
el valor de se utilizar un grfico de superficie:
figure
surf(zeta,t,yy)
Edite sus grfico, coloque el ttulo, etiquete los ejes y las curvas para el grfico en
2D. Incluya una impresin del scrip y el grfico en su reporte de laboratorio.
Utilice el comando ginput o elija del men datos del cursor
, para completar la
tabla 2, en los espacios que puedan ser llenados. Ampli el tiempo en su script y ejecute
de nuevo, si es necesario.
Si grafica directamente con step, Matlab le ofrece la opcin de encontrar las caractersticas de la respuesta como un men especial del grfico. Grafiquemos la respuesta
4
Descripcin
tiempo de subida
tiempo pico
Sobreelongacin
Tiempo de asentamiento
= 0,1
= 0,3
= 1,0
=5
Cuadro 3: Caracterstica de las respuestas para los sistemas de segundo orden, wn = 1,0
para los factores de amortiguamiento solicitados en la tabla 2, para ello en una nueva
celda de su scrip escriba lo siguiente:
wn=1;
z=[0.2,0.4,1.0,3.0];
G=[];
t=0:.1:20;
for n=1:4
G=[G,tf(wn^2,[1,2*z(n)*wn,wn^2])];
end
step(G(:,1),G(:,2), G(:,3), G(:,4),t);
Haga click derecho sobre la ventana del grfico que aparece, escoja del men las
diferentes caractersticas de respuesta. Coloque el cursor sobre los puntos indicadores
y anote los valores en el cuadro 3. Ejecute para ms tiempo si es necesario.
4.2.
x 1
x 2
0
1
x1
0
=
+
u
1 2
x2
1
x1
1 1
+ [0]u
y =
x2
(2)
(3)
4.3.
Use la funcin lsim para obtener la respuesta a una seal cuadrada, para el sistema
descrito en la seccin anterior. Para ello:
Una vez definidas las matrices del sistema, defina el periodo de la onda:
tau=20;
Use el comando gensig(type,tau) de Matlab para definir la entrada; type es el
tipo de seal: square, sin, pulse. Para nuestro caso se escribe:
[u,t]=gensig(square,tau,100);
Definimos un tiempo de simulacin de 100 y guardamos el vector de tiempo
generado.
Defina el sistema sys=ss(A,B,C,D);.
Obtenga la respuesta usando lsim(sys,u,t).
Qu observa?
5.
Resultados
6.
Conclusiones
Referencias
[1] Rao Dukkipati. Analysis and Design of Control System Using Matlab. New Age
International, Ansari Road, Daryaganj, New Delhi - 110002, 2006.
[2] Rao Dukkipati. Matlab and Introduction with Applications. New Age International,
4825/24, Ansari Road, Daryaganj, New Delhi - 110002, 2010.
[3] Dingy Xue, Yang Quan Chen, and Atherton Derek. Linear Feedback Control
Analysis and Design with MATLAB. SIAM, 2007.