📄 di41.m
字号:
num=1000;den=conv([1,0],conv([0.1,1],[0.001,1]));
G=tf(num,den); %未校正系统的开环传递函数
[Gm,Pm,Wcg,Wcp]=margin(G); %未校正系统的频域响应参数,计算需要相角欲度Pm(γ)
w=0.1:0.1:10000; %确定频率的取值范围和频率采样的间隔值
[mag,phase]=bode(G,w);magdb=20*log10(mag); %对数幅频、相频特性值,计算需要magdb(对数幅频响应值)
phim1=45;deta=8; %(4.1.9)式设置系统设计参数phim1(γ');deta(△)
phim=phim1-Pm+deta; %(4.1.9)式相位超前角φ
bita=(1-sin(phim*pi/180))/(1+sin(phim*pi/180)); %求出β值
w=1:1:100000; %w在这里作为magdb向量的下标,比实际频率值大10倍
n=find(magdb+10*log10(1/bita)<=0.0001); %找出满足magdb+10*log10(1/bita)<=0.0001式的magdb向量所有的下标值(w值)
wc=n(1); %通常magdb(1)+10*log10(1/bita)>0.0001;故取n的第1项为wc(比实际频率值大10倍)
w1=(wc/10)*sqrt(bita);w2=(wc/10)/sqrt(bita); %(4.1.11)和(4.1.12)式
numc=[1/w1,1];denc=[1/w2,1]; %(4.1.13)式,取K=1
Gc=tf(numc,denc); %校正器的传递函数
GmdB=20*log10(Gm);
GcG=Gc*G;[Gmc,Pmc,wcgc,wcpc]=margin(GcG); %GcG是校正后系统的传递函数
GmcdB=20*log10(Gmc); %上面2行程序计算校正后系统的性能参数
disp('未校正系统的开环传递函数和频域响应参数:h,γ,wc')
G,[GmdB,Pm,Wcp],
disp('校正系统的传递函数和校正后系统的传递函数')
Gc,GcG,
disp('校正后系统的频域响应参数:h,γ,wc')
[GmcdB,Pmc,wcpc],
disp('校正装置的参数T和β值:T,β')
T=1/w1;[T,bita],
bode(G,GcG);figure(2);margin(GcG)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -