附录
相位超前校正
相位超前校正前后
相位滞后校正
相位滞后校正
相位滞后-超前校正
相位滞后-超前校正
相位超前校正
程序
kc=10; %满足恒速响应稳态误差要求
w=logspace(-1,2,100); %频率范围
bode(tf(kc*ng,dg),w),grid
[mu,pu]=bode(tf(kc*ng,dg),w);%满足稳态误差要求系统的Bode响应
fz=20*log10(mu);%将幅值用分贝表示
wc=interp1(fz,w,0,'spline') %求出幅值交界频率
gama=180+spline(w,pu,wc)
wcg=interp1(fz,w,-6.02,'spline')
(2)作图程序
num1=[0 0 40];
den1=[1 2 0];
sys1=tf(num1,den1);
w=logspace(-1,2,100);%频率范围
bode(sys1,w),grid
hold on;
num2=[0.227 1];
den2=[0.057 1];
sys2=tf(num2,den2);
bode(sys2,w),grid
hold on;
num3=[9.08 40];
den3=[0.057 1.114 2 0];
sys3=tf(num3,den3);
bode(sys3,w),grid
gtext('校正前幅频')
gtext('校正环节幅频')
gtext('校正后幅频')
gtext('校正前相频')
gtext('校正环节相频')
gtext('校正后相频')
gtext('幅频/dB')
gtext('相频/度')
gtext('频率')
相位滞后校正
程序
kc=5; %满足恒速响应稳态误差要求
w=logspace(-3,4,100); %频率范围
bode(tf(kc*ng,dg),w),grid
[mu,pu]=bode(tf(kc*ng,dg),w);%满足稳态误差要求系统的Bode响应
fz=20*log10(mu);%将幅值用分贝表示
wc=interp1(fz,w,0,'spline') %求出幅值交界频率
gama=180+spline(w,pu,wc)%求出相位裕量
w0=spline(pu,w,-140)%求出与40度相位裕量对应频率
wc1=spline(pu,w,-128)%求出与52度相位裕量对应频率,即新的幅值交界频率
db=spline(w,fz,wc1)%原来系统在wc1下的幅值
b=10^(db/20)
作图程序
num1=[5];
Z1=[];P1=[0 -1 -2];K1=5;
sys1=zpk(Z1,P1,K1);
w=logspace(-3,2,100);%频率范围
bode(sys1,w),grid
hold on;
num2=[10 1];
den2=[95 1];
sys2=tf(num2,den2);
bode(sys2,w),grid
hold on;
Z3=[-0.1];P3=[0 -1 -2 -1/95];K3=5;
sys3=zpk(Z3,P3,K3);
bode(sys3,w),grid
gtext('校正前幅频')
gtext('校正环节幅频')
gtext('校正后幅频')
gtext('校正前相频')
gtext('校正环节相频')
gtext('校正后相频')
gtext('幅频/dB')
gtext('相频/度')
gtext('频率')
相位滞后-超前校正
校正程序
sys=zpk(Z,P,K);%传递函数的零极点增益模型
w=logspace(-1,2,100);%频率范围
bode(sys,w),grid %满足稳态误差要求系统的Bode图
[mu,pu]=bode(sys,w);
fz=20*log10(mu);%将幅值用分贝表示
wc=interp1(fz,w,0,'spline') %求出幅值交界频率
gama=180+spline(w,pu,wc)%求出相位裕量
wc1=spline(pu,w,-180)
db=spline(w,fz,wc1)
作图程序
sys1=zpk(Z1,P1,K1);%传递函数的零极点增益模型
w=logspace(-2,1,100);%频率范围
bode(sys1,w),grid %Bode图
hold on;
Z2=[-1/2.12 -1/7.07];P2=[-1/0.212 -1/70.7];K2=1;
sys2=zpk(Z2,P2,K2);
bode(sys2,w),grid
hold on;
Z3=[-1/2.12 -1/7.07];P3=[0 -1 -2 -1/0.21