% DISEÑO DE CONTROLADORES EN EL DOMINIO DE LA FRECUENCIA - Tema 10 % clear all close all clc k=0.5; a=3.33; b=0.167; G=tf(k,[a b 0]) [Gm,Pm,Wgm,Wpm] = margin(G) figure(1) bode(G) grid on % especificaciones en el tiempo SO=0.1; ts=5; ev=0.01; d = sqrt(log(SO)^2/(pi^2+log(SO)^2)) alpha=acos(d) wn = (pi-alpha)/(ts*sqrt(1-d^2)) raiz_doble=sqrt(sqrt(1+4*d^4)-2*d^2); Mf_rad=atan((2*d)/raiz_doble) % approximado Mf=70-SO Mf=Mf_rad*180/pi wc=wn*raiz_doble % approximado wc=pi/(2*ts) % Kv es limite cuando s->0 de sC(s)G(s) % ev=0.01 ---> 1/Kv=0.01 ---> Kv=Kc*(k/b) y Kv=1/0.01 Kc=1/(ev*(k/b)) Kcdb=real2deb(Kc) G_P=Kc*G [Gm,Pm,Wgm,Wpm] = margin(G_P) figure(1) hold on bode(G_P) % El bode nos muestra que podemos satisfacer el req. en permanente pero el % Mf es muy pequeño % DESDE EL BODE VEO QUE EL Mf deseado se da en wc=0.0313. Calculo Kc % correspondiente. syms s Gw= k/(a*s^2+b*s) wc=0.0313; s=i*wc; Gw_wc=eval(Gw) Kc=1/abs(Gw_wc) G_P=Kc*G [Gm,Pm,Wgm,Wpm] = margin(G_P) figure(1) hold on bode(G_P) % El bode nos muestra que podemos satisfacer el req. en Mf pero la ganancia % es pequeña. No pemodes satisfacer el requisito en permanente. %% funciones que necesito function b=real2deb(a) b=20*log10(a); end function b=deb2real(a) b= 10^(a/20); end