Nombre: Cristian Ponce
TRABAJO PRÁCTICO
3.1. Desarrollar en Matlab un archivo.m que permita resolver las ecuaciones de estado del trabajo preparatorio 2.1 y graficar los estados del sistema en lazo abierto y lazo cerrado.
clc
close all
clear all
num=[0.25]
den=[5 2.5 1]
[A,B,C,D]=tf2ss(num,den)
ti=0.01;
tmax=10;
t=0:ti:tmax;
x=zeros(2,length(t));
x(:,1)=[1;1];
u=ones(1,length(t));
y=zeros(1,length(t));
y(1)=C*x(:,1)+D*u(1);
for i=1:length(t)-1
x(:,i+1)=(eye(2)+ti.*A)*x(:,i)+ ti*B*u(i);
y(i+1)=C*x(:,i+1)+D*u(i);
end
plot(t,x,t ,y ); legend('Estado 1(x1)','Estado 2(x2)','y');title('x vs t');xlabel('Tiempo');
ylabel('Amplitud')
3.2. Implementar en Matlab un archivo.m que ejecute un modelo de SIMULINK y a través del cual se permita variar la señal de referencia, ganancia del amplificador y la constante de tiempo de la bomba. Además, que permita graficar la señal de referencia, el voltaje a la bomba y la posición del émbolo.
close all
clear all
clc
R=input('Referencia:');
k=input('Ganancia:');
kt=input('Constante de tiempo:');
sim('enbol')
plot(t,r, t,p, t,x ); legend('Entrada','P(t)','X(t)');xlabel('Tiempo');
ylabel('Amplitud')
3.3. Desarrollar en MatLab un archivo.m que permita resolver las ecuaciones de estado del trabajo preparatorio 2.2 y graficar los estados del sistema en lazo abierto.
clc
close all
clear all
num=[1]
den=[1 5]
[A,B,C,D]=tf2ss(num,den)
ti=0.01;
tmax=10;
t=0:ti:tmax;
x=zeros(2,length(t));
x(:,1)=[1;1];
u=ones(1,length(t));
y=zeros(1,length(t));
y(1)=C*x(1)+D*u(1);
for i=1:length(t)-1
x(:,i+1)=(eye(2)+ti.*A)*x(:,i)+ ti*B*u(i);
y(i+1)=C*x(i+1)+D*u(i);
end
plot(t,x,t ,y ); legend('','Estado 1(x1)','y');title('x vs t');xlabel('Tiempo');
ylabel('Amplitud')
3.4. Implementar en MatLab un archivo .m que ejecute un modelo de SIMULINK y a través del cual se permita variar la señal de referencia, el tiempo de simulación. Además, que permita graficar la señal de referencia, el voltaje a la bomba y la altura del depósito.
close all
clear all
clc
R=input('Referencia:');
p=input('Tiempo de simulación:');
sim('nivv')
plot(t, r, t,v, t,h ); legend('Entrada','V(t)','H(t)');xlabel('Tiempo')
ylabel('Amplitud')