Вы находитесь на странице: 1из 6

CURSO DE INSTRUMENTACIÓN INDUSTRIAL II

GUÍA #1 “Modelos Matemáticos de Sistemas Lineales”

Objetivo: El objetivo de esta práctica es dar una introducción a algunas funciones de Matlab
encaminadas en el área de control para instrumentación.

Introducción: En el área de Instrumentación Industrial, Control Automático y Control Discreto


es muy utilizado el sistema de representación de la planta en función de transferencia (transfer
function), ceros polos y ganancia (zpk) y el espacio de estado; Matlab® permite realizar estas
operaciones con comandos y funciones específicas del mismo programa, las cuales se tratarán en
el desarrollo de esta práctica.

Desarrollo: Matlab tiene órdenes útiles para representar un modelo matemático de un sistema
lineal así como la resolución de fracciones parciales, las instrucciones de Matlab que se verán en
el transcurso de esta práctica son:

Comandos de Matlab Descripción y sintaxis


Representación de un sistema racional (numerador,
residue & residuez
denominador) en fracciones parciales.
Genera una función de transferencia a partir de los
Tf coeficientes del numerador y denominador
, , , … , , , … , .
Genera una función de transferencia a partir de los polos,
Zpk
ceros y ganancia dc del sistema de control.
Transforma un sistema representado como función de
tf2zp transferencia, [ ( )⁄ ( )] a la forma zpk.
[ , , ]= 2 ( , )
Transforma un sistema representado como zpk, a función de
zp2tf transferencia [ ( )⁄ ( )].
[ , ]= 2 ( , , )
Representación de un sistema de control en el espacio de
Ss estados. Este sistema se define matricialmente. 1=
( , !, ", #).
Transforma un sistema representado como función de
tf2ss transferencia, [ ( )⁄ ( )] al espacio de estados.
[ , !, ", #] = 2 ( , )
Transforma un sistema representado en el espacio de estados a
ss2tf función de transferencia, [ ( )⁄ ( )]
[ , ] = 2 ( , !, ", #)
Es importante que el estudiante tenga conocimientos básicos de sistemas de control,
representación de los sistemas de control, respuesta al paso y al impulso, etc.

Para mayor entendimiento de cada una de las funciones utilizadas en la práctica se recomienda
utilizar la ayuda de Matlab. ≫ ℎ & ′() )′

Ejemplo_01:

Un sistema de control LTI, esta representado por la siguiente función de transferencia:

32
*( ) =
∙( + 12 + 32)

Se pide obtener la representación de fracciones parciales de dicho sistema.

El scrip de Matlab puede quedar de la siguiente manera:

disp('Obtención de las fracciones parciales del sistema')


%Ingresar el vector de coeficientes del numerador
num = [32];
%Ingresar el vector de coeficientes del denominador
den = conv([0 1 0],[1 12 32]);
%Se obtiene la función de transferencia G(s)
Gs = tf(num,den);
%Se obtienen las fracciones parciales
[r,p,k] = residue(num,den);
%r = residuo de la división
%p = polos del sistema
%k = coeficientes directos o fracciones
%G(s)= k(1)/(s+p(1)) + k(2)/(s+p(2))+ ... + r

La respuesta de Matlab una vez se ejecuta el escrip es:

Transfer function:
32
------------------------
s^3 + 12 s^2 + 32 s

r= p= k=

1 -8 []
-2 -4
1 0
Cuya representación en fracciones parciales será:

1 −2 1
*( ) = + +
+8 +4

Ejemplo_02:

Transcriba el siguiente código en el editor de matlab, guárdelo con un nombre apropiado en la


carpeta que personalizó en la guía #5. Corra el programa y analice cada una de las operaciones
realizadas, describa el proceso que se sigue en el código. Cambie los parámetros y modifique
algunas operaciones si es necesario, analice los cambios en las respuestas.

close all;
echo off;
clc;
% Creacion del sistema
disp('Sistema sujeto a analisis')
sysLA=zpk([],[0 -5],4);
sys=tf(feedback(sysLA,1))
[num,den]=tfdata(sys);
num=num{1};den=den{1}
Wn=1/sqrt(den(1)/num(3));
Z=((den(2)/num(3))*Wn)/2;
disp('Amortiguamiento')
Z
disp('Frecuencia de las oscilaciones libres')
Wn
%sys=tf(num,den) % Sistema sujeto a analisis
disp('Valor en estado estable')
SS=dcgain(sys) % Valor en estado estable
pause;
clc;
[y,t]=step(sys);
plot(t,y,'b');
title('Respuesta al paso');
disp('Respuesta al paso');
grid;

% Tiempo de establecimiento;
pause;
clc;
hold on;
l=length(t);
while abs(y(l)-SS)<=0.02*SS
l=l-1;
end
ts=t(l);ys=y(l);
disp('Tiempo de establecimiento');
disp(' Banda del 2%');
ts
plot(ts,ys,'mo')
title('Establecimiento');
legend('Respuesta al Paso','Tiempo de establecimiento',4);

% Tiempo de subida;
pause;
clc;
n=1;m=1;
while y(n)<=0.09*SS,n=n+1; end
while y(m)<=0.9*SS,m=m+1; end
t1=t(m);y1=y(m);
t2=t(n);y2=y(n);
tr=t1-t2;
disp('Tiempo de subida');
tr
plot(t1,y1,'kx',t2,y2,'kx')
%line([t2,t1,t1,t1],[y2,y2,y1,0.5*y2]);
title('Tiempo de Subida');
legend('Respuesta al Paso','Tiempo de establecimiento',...
'Tiempo de Subida 1','Tiempo de Subida 2',4);

% Tiempo de demora;
pause;
clc;
n1=1;
while y(n1)<=0.5*SS,n1=n1+1; end
td=t(n1);y3=y(n1);
disp('Tiempo de Demora');
td
plot(td,y3,'ko')
title('Tiempo de Demora');
legend('Respuesta al Paso','Tiempo de establecimiento',...
'Tiempo de Subida','Tiempo de Demora',4);

Ejemplo_03

Un sistema de control está representado por el diagrama de bloques mostrado en la figura 1. Se


pide:
• Hallar la función de transferencia del sistema en lazo abierto.
• Hallar la función de transferencia del sistema en lazo cerrado, realimentación unitaria.
• Hallar la representación en la forma zpk.
• Simular el sistema a una entrada escalón, impulso y rampa. (step, impulse y lsim)
• Obtener la representación del sistema en el espacio de estado. (matrices A, B, C, D)
• Revisar el comando canon. ¿Para qué sirve? ¿Cómo se utiliza?

Вам также может понравиться