该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
1.num=2000;den=conv([1,0],[1,30,200]);
GO=tf(num,den);figure(1);margin(GO);
hold on
figure(2);sys=feedback(GO,1);step(sys)
w=0.1:0.1:1000;[Gm,Pm,Wcg,Wcp]=margin(GO);
[mag,phase]=bode(GO,w)
magdb=20*log10(mag);
phiml=45;data=17;phim=phiml-Pm+data;
alpha=(1+sin(phim*pi/180))/(1-sin(phim*pi/180));
n=find(magdb+10*log10(alpha)<=0.0001);
wc=w(n(1));
w1=wc/sqrt(alpha);
w2=wc*sqrt(alpha);
numc=[1/w1,1];denc=[1/w2,1];
Gc=tf(numc,denc);
G=Gc*GO;[Gmc,Pmc,wcgc,wcpc]=margin(G);
Gmcdb=20*log10(Gmc);
disp('校正装置传递函数和校正后系统开环传递函数'),Gc,G,
disp('校正后系统的频域性能指标Kg,r,wc'),[Gmc,Pmc,wcpc],
disp('校正装置的参数T和a值:'),T=1/w1;[T,alpha],
bode(GO,G);
hold on,margin(G)
grid
gtext('校正前'),gtext('校正后'),gtext('校正前'),gtext('校正后')
2.
num=100;den=conv([1,0],[1,5]);
GO=tf(num,den);margin(GO);
gamma0=65.52;delta=6;gamma=gamma0+delta;
w=0.01:0.01:1000;
[mag,phase]=bode(GO,w);
n=find(180+phase-gamma<=0.1);wgamma=w(n(1));
[mag,phase]=bode(GO,wgamma);
Lhc=20*log10(mag);beta=10^(Lhc/20);
w2=wgamma/10;
w1=w2/beta;
numc=[1/w2,1];denc=[1/w1,1];Gc=tf(numc,denc)
G=GO*Gc
bode(GO,G),hold on,margin(G),beta
grid
gtext('校正前'),gtext('校正后'),gtext('校正前'),gtext('校正后')
3.
num=100;den=conv([1,0],conv([0.1,1],[0.025,1]));
G0=tf(num,den);
[kg,gamma,wg,wc]=margin(G0);kgdb=20*log10(kg);
w=0.001:0.001:100;
[mag,phase]=bode(G0,w);
disp('未校正系统参数:20lgkg,wc,');[kgdb,wc,gamma],
gammal=47.79;delta=14;phim=gammal-gamma+delta;
alpha=(1+sin(phim*pi/180))/(1-sin(phim*pi/180));
magdb=20*log10(mag);
n=find(magdb+10*log10(alpha)<=0.0001);
wcc=w(n(1));
w3=wcc/sqrt(alpha);w4=sqrt(alpha)*wcc;
numc1=[1/w3,1];denc1=[1/w4,1];
Gc1=tf(numc1,denc1);
G01=G0*Gc1;
[mag1,phase1]=bode(G01,wcc);
Lhc=20*log10(mag1);beta=10^(Lhc/20);
w2=wcc/12;w1=w2/beta;
numc2=[1/w2,1];denc2=[1/w1,1];
Gc2=tf(numc2,denc2);Gc=Gc1*Gc2;
G=Gc*G0;
[Gmc,Pmc,Wcgc,Wcpc]=margin(G);Gmcdb=20*log10(Gmc);
disp('超前校正部分的传递函数'),Gc1,
disp('滞后校正部分的传递函数'),Gc2,
disp('串联超前滞后校正装置的传递函数'),Gc,
disp('校正后整个系统的传递函数'),G,
disp('校正后系统的参数:20lgkg,wc,r及a值'),[Gmcdb,Wcgc,Pmc,alpha],
bode(G0,G)