clear close all s=tf('s'); % Planta Gp=4/(s*(s+2)); figure; rlocus(Gp) Glcsc=feedback(Gp,1); % sisotool(Gp,1,1,1) zpk(Glcsc) [W,Z]=damp(Glcsc); t=0:0.001:5; figure; step(Glcsc,t); %% Diseño por el método geométrico Kc=4.675; a=2.9; b=5.4; Gc=Kc*(s + a)/(s + b); T=1/a; alfa=1/T/b; Kv=Kc*alfa*(4/2); essv=100*(1/Kv); Gla=series(Gc,Gp); figure; rlocus(Gla) Glcc=feedback(Gla,1); zpk(Glcc) [W1,Z1]=damp(Glcc); figure; step(Glcsc,Glcc,t); legend('sin compensacion','con compensacion','Location','NorthEast') [y]=step(Glcc,t); rstep=ones(length(t),1); error=rstep - y; % Acción de control figure; lsim(Gc,error,t) legend('acción de control') % Respuesta a la rampa r=t'; [y]=lsim(Glcc,r,t); essv=(r-y); figure; plot(t,r,t,y,t,essv) legend('Referencia','Salida','essv'); close all %% Vario alfa para aumentar Kv T1=1/a; alfa1=0.65; Gccp=Kc*alfa1*((T1*s + 1)/(alfa1*T1*s + 1)); Gla=series(Gccp,Gp); figure; rlocus(Gla) Glccp=feedback(Gla,1); figure; step(Glcsc,Glcc,Glccp,t); legend('sin compensacion','con 1er comp','con 2do comp') % Respuesta a la rampa r=t'; [y]=lsim(Glccp,r,t); essv=(r-y); figure; plot(t,r,t,y,t,essv) legend('Referencia','Salida','essv'); close all %% Compensación polo-cero % Kc=4.68; a=2; b=4; Kc=6.9282; % Kc recalculado T2=1/a; alfa2=1/T2/b; Gccp=Kc*alfa2*((T2*s + 1)/(alfa2*T2*s + 1)); Kv2=Kc*alfa2*(4/2); Gla=series(Gccp,Gp); figure; rlocus(Gla) Glccp2=feedback(Gla,1); figure; step(Glcsc,Glcc,Glccp2,t); legend('sin compensacion','con 1er comp','con compensacion canc polo-cero') % Respuesta a la rampa r=t'; [y]=lsim(Glccp2,r,t); essv=(r-y); figure; plot(t,r,t,y,t,essv) legend('Referencia','Salida','essv');