%planta
num=4
den=[1 2 0]
planta=tf(num,den)
%requerimientos del diseño
kv=20
mfd=50
mg=50
%se halla k del compensador
kva=polyval(num,0)/polyval(deconv(den,[1,0]),0)
k=kv/kva
%se continua el diseño sobre planta ux=k*planta
numaux=k*num
denaux=den
plantaux=tf(numaux,denaux)
%se halla los vectores de ganancia(gandB) y fase
w=logspace(-1,2,500);
[gan,fase]=bode(numaux,denaux,w);
gandB=20*log10(gan);
% se halla el margen de fase : mf
vectIndices=find(gandB<0); indice=vectIndices(1); mf=180-(-fase(indice));
% se halla la fase a compensar: fadic
fadic=mfd-mf+5;
% alfa
alfa=(1-sin(fadic*pi/180))/(1+sin(fadic*pi/180))
% ganancia del compensador
r=20*log10(sqrt(1/alfa));
% se halla la nueva frecuencia de cruce de ganancia: wm
vectindice2=find(gandB<-r); indice2=vectIndice2(1); wm=w(indice2);
% t
t=(1/sqrt(alfa))/wm;
% pará,etros del compensador
zc=1/T; pc=1/alfa/T; kc=k/alfa;
comp=tf(kc*[1 zc] , [1 pc] )
% planta compensada
plantacompensada=series(planta,comp)
% respuesta en el tiempo
figure(1) , step(feedback(planta,1)) , hold on, grid on
step(feedback(plantacompensada,1))
% respuesta en frecuencia
figure(2) bode(planta) , hold on, grid on
bode(plantacompensada)
RESULTADOS DE LA SIMULACIÓN:
num =
4
den =
1 2 0
Transfer function:
4
---------
s^2 + 2 s
kv =
20
mfd =
50
mg =
50
kva =
2
k =
10
numaux =
40
denaux =
1 2 0
Transfer function:
40
---------
s^2 + 2 s
fadic =
37.0901
alfa =
0.2476
r =
6.0624
T =
0.2266
zc =
4.4134
pc =
17.8244
kc =
40.3868
Transfer function:
40.39 s + 178.2
---------------
s + 17.82
Transfer function:
161.5 s + 713
-------------------------
s^3 + 19.82 s^2 + 35.65 s
No hay comentarios:
Publicar un comentario