Está en la página 1de 1

kp=input('Ingrese el valor de Kp: ');

ki=input('Ingrese el valor de Ki: ');


kd=input('Ingrese el valor de Kd: ');
%% TIEMPO DISCRETO CON RETRASO
pid=tf([(kp+ki+kd) -(kp+2*kd) kd],[1 -1 0],0.1,'Variable','z^-1') % Funcion de t
ransferencia PID
planta=tf([0 0.3679 +0.2642],[1 -1.3679 0.3679],0.1,'Variable','z^-1')%Funcion d
e transferencia planta, el 0 porq arranca desde Z^0 hacia abajo
GLazoA=pid*planta; %Unir las dos funciones en lazo abierto.
GlazoC=feedback(GLazoA,1)%Funcion de transferencia en lazo cerrado con realiment
acion en 1
figure(1)
impulse(GlazoC) %grafica respuesta al impulso
subplot(2,1,1)
figure(2)
step(GlazoC) % grafica respuesta al escalon
subplot(2,1,2)
figure(3)
k = 0:0.1:2;
x = k*0.1;
sistema = lsim(GlazoC,x);
plot(k,x,k,sistema) % grafica respuesta de la rampa
subplot(2,1,3)
figure(4)
Rlocus(GlazoC) %grafica de circulo unitario.
subplot(2,1,4)
%% TIEMPO DISCRETO SIN RETRASO
% pid=tf([(kp+ki+kd) -(kp+2*kd) kd],[1 -1 0],0.1)
% planta=tf([0.3679 0.2642],[1 -1.3679 0.3679],0.1)
% GLazoA=pid*planta;
% GlazoC=feedback(GLazoA,1)
% figure(1)
% impulse(GlazoC)
% figure(2)
% step(GlazoC)
%
% figure(3)
% k = 0:20;
% x = k*0.1;
% sistema = lsim(GlazoC,x);
% plot(k,x,k,sistema)

También podría gustarte