clc; clear; close all; s=tf('s'); % Rectificador Controlador Monofásico L=5e-3; % Inductancia en Henrios rL=2; % Resistencia equivalente serie en Ohms ILpico=10; % Corriente de pico nominal en amperes % FT de corriente para el diseño del lazo de corriente Gic=(1/L)/(s + (rL/L)); % En función de la constante de tiempo Gitau=(1/rL)/(s*(L/rL) + 1); tau=L/rL; figure; step(ILpico*Gic); legend('Respuesta al Escalón SC') spec=stepinfo(Gic); tr=spec.RiseTime; % Nr=tr/T; Nr=40; trc=0.02; T=trc/Nr; fm=1/T; z=tf('z',T); t=0:T:0.12-T; % Aproximación invariante al escalón GidZOH=c2d(Gic,T); figure; step(Gic,GidZOH,t) legend('Respuesta al Escalón SC','Respuesta al Escalón SD ZOH') % Aproximación de Backward GidB=(1/L)/(((z-1)/(z*T)) + (rL/L)); figure; step(Gic,GidB,t) legend('Respuesta al Escalón SC','Respuesta al Escalón SD Backward') % Aproximación de Forward GidF=(1/L)/(((z-1)/T) + (rL/L)); figure; step(Gic,GidF,t) legend('Respuesta al Escalón SC','Respuesta al Escalón SD Forward') close all %% Diseño de un controlador resonante fm=10000; T=1/fm; f1=50; T1=1/f1; Kr=50; w1=2*pi*f1; Kp=1.5; Gmi=(Kr*s)/(s^2 + w1^2); Gtotal=Kp + Gmi; % Tiempo continuo Gla=minreal(series(Gtotal,Gic)); Glc=minreal(feedback(Gla,1)); paso_sim=0.1e-3; tc=0:paso_sim:100*T1-paso_sim; ref=sin(2*pi*f1*tc); % ref=ones(length(t),1); figure; lsim(Glc,ref,tc) iL=lsim(Glc,ref,tc); ei=ref' - iL; figure; lsim(Gtotal,ei,tc) % z=tf('z',T); % Gprd=c2d(Gpr,T,'foh'); % Gicd=c2d(Gic,T,'zoh'); % % Glad=minreal(series(Gprd,Gicd)); % Glcd=minreal(feedback(Glad,1)); % % td=0:T:10000*T1-T; % ref=sin(2*pi*f1*td); % % ref=ones(length(t),1); % figure; lsim(Glcd,ref,td)