clc
clear all
close all
num=2;
den=conv([1,0],conv([0.25,1],[0.1,1]));%分母多项式展开
W=tf(num,den);%开环传递函数
kc=5;%稳态误差系数扩大5倍
yPm=45+10;%增加量取10dB
W=tf(W);%超前校正环节
[mag,pha,w]=bode(W*kc);%增大后的的开环频率特性的幅值和相位
Mag=20*log10(mag);
[Gm,Pm,Wcg,Wcp]=margin(W*kc);%幅值稳定裕度Gm、相位稳定裕度Pm、交接频率W
phi=(yPm-getfield(Pm,'Wcg'))*pi/180;
alpha=(1+sin(phi))/(1-sin(phi));%确定α的值
Mn=-10*log10(alpha);%α的对数值
Wcgn=spline(Mag,w,Mn);%确定最大相角位移频率
T=1/Wcgn/sqrt(alpha);%求T值
Tz=alpha*T;
Wc=tf([Tz 1],[T 1])%超前校正函数的传递函数
Wy_c=feedback(W*kc,1);%校正前的开环传递函数
Wx_c=feedback(W*kc*Wc,1);%校正后的系统传递函数
figure(1);
step(Wy_c,'r',5);
hold on;
figure(2);
step(Wx_c,'b',5);
bode(W*kc,'r');
hold on;
bode(W*kc*Wc,'b');
figure(3);
nyquist(W*kc,'r');
hold on;
nyquist(W*kc*Wc,'b');