实验八 线性系统串联校正
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验八 线性系统串联校正
一、实验目的
1.熟练掌握用MATLAB 语句绘制频域曲线。
2.掌握控制系统频域范围内的分析校正方法。
3.掌握用频率特性法进行串联校正设计的思路和步骤。
二、基础知识
控制系统设计的思路之一就是在原系统特性的基础上,对原特性加以校正,使之达到要求的性能指标。
最常用的经典校正方法有根轨迹法和频域法。
而常用的串联校正装置有超前校正、滞后校正和超前滞后校正装置。
本实验主要讨论在MATLAB 环境下进行串联校正设计。
1.基于频率法的串联超前校正
超前校正装置的主要作用是通过其相位超前效应来改变频率响应曲线的形状,产生足够大的相位超前角,以补偿原来系统中元件造成的过大的相位滞后。
因此校正时应使校正装置的最大超前相位角出现在校正后系统的开环截止频率c ω处。
例5-1:单位反馈系统的开环传递函数为)
1()(+=s s K s G ,试确定串联校正装置的特性,使系统满足在斜坡函数作用下系统的稳态误差小于0.1,相角裕度045≥r 。
解:根据系统静态精度的要求,选择开环增益
101.0)1(11
)(2
00>⇒<++⨯==→→K s s k s s Lim s sE Lim e s s ss
取12=K ,求原系统的相角裕度。
>>num0=12; den0=[2,1,0]; w=0.1:1000;
[gm1,pm1,wcg1,wcp1]=margin(num0,den0);
[mag1,phase1]=bode(num0,den0,w);
[gm1,pm1,wcg1,wcp1]
margin(num0,den0) %计算系统的相角裕度和幅值裕度,并绘制出Bode 图 grid;
ans =
Inf 11.6548 Inf 2.4240
由结果可知,原系统相角裕度06.11=r ,s rad c /4.2=ω,不满足指标要求,系
统的Bode 图如图5-1所示。
考虑采用串联超前校正装置,以增加系统的相角裕度。
确定串联装置所需要增加的超前相位角及求得的校正装置参数。
),5,,45(0000c m c Φ=Φ=+-=Φ令取为原系统的相角裕度εγγεγγ
m m ϕϕαsin 1sin 1-+= e=5; r=45; r0=pm1;
phic=(r-r0+e)*pi/180;
alpha=(1+sin(phic))/(1-sin(phi
c));
将校正装置的最大超前角处的频率m ω作为
校正后系统的剪切频率c ω。
则有:
αωωω1
)(0)()(lg 2000=⇒=c c c c j G j G j G
即原系统幅频特性幅值等于αlg 20-时的频率,选为c ω。
根据m ω=c ω,求出校正装置的参数T 。
即αωc T 1=。
[il,ii]=min(abs(mag1-1/sqrt(alpha)));
wc=w( ii); T=1/(wc*sqrt(alpha));
numc=[alpha*T,1]; denc=[T,1];
[num,den]=series(num0,den0,numc,denc);%原系统与校正装置串联
[gm,pm,wcg,wcp]=margin(num,den); %返回系统新的相角裕度和幅值裕图5-1 原系统的Bode 图
度
printsys(numc,denc) %显示校正装置的传递函数
disp(’校正之后的系统开环传递函数为:’);
printsys(num,den) %显示系统新的传递函数
[mag2,phase2]=bode(numc,denc,w); %计算指定频率内校正装置的相角范围和幅值范围
[mag,phase]=bode(num,den,w);%计算指定频率内系统新的相角范围和幅值范围subplot(2,1,1);
semilogx(w,20*log10(mag),w,20*log10(mag1),’--’,w,20*log10(mag2) ,’-.’);
grid;
ylabel(’幅值(db)’);
title(’--Go,-Gc,GoGc’);
subplot(2,1,2);
semilogx(w,phase,w,phase1,’--’,w,phase2,’-’,w,(w-180-w),’:’);
grid; ylabel(’相位(0)’); xlabel(’频率(rad/sec)’);
title([‘校正前:幅值裕量=’,num2str(20*log10(gm1)),’db’,’相位裕量=’,num2str(pm1),’0’;
’校正后:幅值裕量=’,num2str(20*log10(gm)),’db’,’相位裕量=’,num2str(pm),’0’]);
2.基于频率法的串联滞后校正
滞后校正装置将给系统带来滞后相角。
引入滞后装置的真正目的不是为了提供一个滞后相角,而是要使系统增益适当衰减,以便提高系统的稳态精度。
滞后校正的设计主要是利用它的高频衰减作用,降低系统的截止频率,以便能使得系统获得充分的相位裕量。
例5-2:单位反馈系统的开环传递函数为)12.0)(11.0()(++=s s s K s G ,试确定串联校正装置的特性,使校正后系统的静态速度误差系数等于30/s ,相角裕度040=r ,幅值裕量不小于10dB ,截止频率不小于2.3rad/s 。
解:根据系统静态精度的要求,选择开环增益
3030)
12.0)(11.0()(00=⇒=++⨯==→→K s s s K s Lim s sG Lim K s s v 利用MATLAB 绘制原系统的bode 图和相应的稳定裕度。
>>num0=30; den0=conv([1,0],conv([0.1,1],[0.2,1])); w=logspace(-1,1.2);
[gm1,pm1,wcg1,wcp1]=margin(num0,den0);
[mag1,phase1]=bode(num0,den0,w);
[gm1,pm1,wcg1,wcp1]
margin(num0,den0)
grid;
ans =
0.5000 -17.2390 7.0711 9.7714
由结果可知,原系统不稳定,且截止频
率远大于要求值。
系统的Bode 图如图5-3
所示,考虑采用串联超前校正无法满足要求,故选用滞后校正装置。
根据对相位裕量的要求,选择相角为)40,10~5(1800000==++-=γεεγφ图5-3 原系统的Bode 图
处的频率作为校正后系统的截止频率c ω。
确定原系统在新c ω处的幅值衰减到0dB 时所需的衰减量为βlg 20-。
一般取校正装置的转折频率分别为
c T ω)10
1~51(1=和T β1。
e=10; r=40; r0=pm1;
phi=(-180+r+e);
[il,ii]=min(abs(phase1-phi));
wc=w( ii); beit=mag1(ii); T=10/wc;
numc=[ T,1]; denc=[ beit*T,1];
[num,den]=series(num0,den0,numc,denc); %原系统与校正装置串联
[gm,pm,wcg,wcp]=margin(num,den); %返回系统新的相角裕度和幅值裕度
printsys(numc,denc) %显示校正装置的传递函数
disp(’校正之后的系统开环传递函数为:’);
printsys(num,den) %显示系统新的传递函数
[mag2,phase2]=bode(numc,denc,w); %计算指定频率内校正装置的相角范围和幅值范围 [mag,phase]=bode(num,den,w); %计算指定频率内系统新的相角范围和幅值范围 subplot(2,1,1);semilogx(w,20*log10(mag),w,20*log10(mag1),’--’,w,20*log10(mag2),’-.’);
grid;
ylabel(’幅值(db)’);
title(’--Go,-Gc,GoGc ’);
subplot(2,1,2);
semilogx(w,phase,w,phase1,’--’,w,phase2,’-’,w,(w-180-w),’:’);
grid; ylabel(’相位(0)’); xlabel(’频率
(rad/sec)’);
title([‘校正前:幅值裕量=’,num2str(20*log10(gm1)),’db ’,’相位裕量=
’,num2str(pm1),’0’;
’校正后:幅值裕量=’,num2str(20*log10(gm)),’db ’,’相位裕量
=’,num2str(pm),’0’]);
3.基于频率法的串联滞后-超前校正
滞后-超前校正装置综合了超前校正和滞后校正的优点,从而改善了系统的性能。
例5-3:单位反馈系统的开环传递函数为)
1
4.0)(1()(++=s s s K s G ,若要求相角裕度045=r ,幅值裕量大于10dB ,)/1(10s K v =,试确定串联校正装置的特性。
解:根据系统静态精度的要求,选择开环增益
10)(0
===→K s sG Lim K s v 利用MATLAB 绘制原系统的bode 图和相应的稳定裕度,如图5-5所示。
>>num0=10;
den0=conv([1,0],conv([1,1],[0.4,1]));
w=logspace(-1,1.2);
[gm1,pm1,wcg1,wcp1]=margin(num0,den0
);
[mag1,phase1]=bode(num0,den0,w);
[gm1,pm1,wcg1,wcp1]图5-4 系统校正前后的传递函数及Bode 图
margin(num0,den0)
grid;
ans =
0.3500 -24.1918 1.5811 2.5520
由结果可以看出,单级超前装置难以满足要求,故设计一个串联滞后-超前装置。
选择原系统0180-的频率为新的截止频率c ω,则可以确定滞后部分的2T 和β。
其中
c
c T T ωω1.01101122=⇒=,10=β。
由原系统,s ra
d c /58.1=ω,此时的幅值为9.12dB 。
根据校正后系统在新的幅值交接频率处的幅值必须为0dB ,确定超前校正部分的1T 。
在原系统))(lg 20,(0c c j G ωω-,即(1.58,-9.12)处画一条斜率为dec dB /20的直线,此直线与0dB 线及-20dB 线的交点分别为超前校正部分的两个转折频率。
wc=1.58; beit=10; T2=10/wc;
lw=20*log10(w/1.58)-9.12;
[il,ii]=min(abs(lw+20)); w1=w(ii);
numc1=[1/w1,1];denc1=[1/ (beit*w1),1];
numc2=[ T2,1];denc2=[ beit*T2,1];
[numc,denc]=series(numc1,denc1,numc2,denc2);
[num,den]=series(num0,den0,numc,denc);
printsys(numc,denc)
disp(’校正之后的系统开环传递函数为:’);
printsys(num,den)
[mag2,phase2]=bode(numc,denc,w);
[mag,phase]=bode(num,den,w);
[gm,pm,wcg,wcp]=margin(num,den);
subplot(2,1,1);semilogx(w,20*log10(mag),w,20*log10(mag1),
’--’,w,20*log10(mag2),’-.’);
grid; ylabel(’幅值(db)’); title(’--Go,-Gc,GoGc’);
subplot(2,1,2);
semilogx(w,phase,w,phase1,’--’,w,phase2,’-’,w,(w-180-w),’:’);
grid; ylabel(’相位(0)’); xlabel(’频率(rad/sec)’);
title([‘校正后:幅值裕量=’,num2str(20*log10(gm)),’db’,’相位裕量=’,num2str(pm),’0’]);
图5-6 系统校正前后的传递函数及Bode图
三、实验内容
1.某单位负反馈控制系统的开环传递函数为)
1(4)(+=s s s G ,试设计一超前校正装置,使校正后系统的静态速度误差系数120-=s K v ,相位裕量050=γ,增益裕量dB K g 10lg 20=。
Matlab 程序:
num0=4;den0=[1,1,0];w=0.1:1000;
[gm1,pm1,wcg1,wcp1]=margin(num0,den0);
[mag1,phase1]=bode(num0,den0,w);
[gm1,pm1,wcg1,wcp1]
margin(num0,den0)
ans =
Inf 28.0202 Inf 1.8791
由结果可知,原系统相角裕度为28.02°,wc=1.879rad/s ,不满足指标要求,系统的Bode 图如下所示。
考虑采用串联超前校正装置,以增加系统的相角裕度。
M a g n i t u d e (d B )
1010101010P h a s e (d e g )Bode Diagram
Frequency (rad/sec)
校正后的传递函数及Bode 图:
Matlab :e=5.5275; r=50; r0=pm1;
phic=(r-r0+e)*pi/180;
alpha=(1+sin(phic))/(1-sin(phic));
[il,ii]=min(abs(mag1-1/sqrt(alpha)));
wc=w( ii); T=1/(wc*sqrt(alpha));
numc=[alpha*T,1]; denc=[T,1];
[num,den]=series(num0,den0,numc,denc);
[gm,pm,wcg,wcp]=margin(num,den); %返回系统新的相角裕度和幅值裕度
printsys(numc,denc) %显示校正装置的传递函数
disp('校正之后的系统开环传递函数为:');
printsys(num,den) %显示系统新的传递函数
[mag2,phase2]=bode(numc,denc,w); %计算指定频率内校正装置的相角范围和幅值范围
[mag,phase]=bode(num,den,w); %计算指定频率内系统新的相角范围和幅值范围
subplot(2,1,1);semilogx(w,20*log10(mag),w,20*log10(mag1),'--',w,2 0*log10(mag2),'-.');
grid; ylabel('幅值(db)'); title('--Go,-Gc,GoGc');
subplot(2,1,2);semilogx(w,phase,w,phase1,'--',w,phase2,'-',w,(w-1 80-w),':');
grid;
ylabel('相位(0)'); xlabel('频率(rad/sec)');
title(['校正前:幅值裕量=',num2str(20*log10(gm1)),'db','相位裕量=',num2str(pm1),'0';
'校正后:幅值裕量=',num2str(20*log10(gm)),'db','相位裕量=',num2str(pm),'0']);
结果:num/den =
2.7973 s + 1
---------------
0.0060511 s + 1
校正之后的系统开环传递函数为:
num/den =
67.1354 s + 24
------------------------------------------------------
0.0060511 s^4 + 1.0182 s^3 + 3.0182 s^2 + 3.0061 s + 1
校正后的传递函数及Bode图:
10
10101010
-150-100
-50
50
幅值(d b )--Go,-Gc,GoGc
10
1010
1010
-200-100
100
相位(0)频率(rad/sec)校正前:幅值裕量=Infdb 相位裕量=28.02020校正后:幅值裕量=Infdb 相位裕量=50.00010
2.某单位负反馈控制系统的开环传递函数为3)
1()(+=s k s G ,试设计一个合适的滞后校正网络,使系统阶跃响应的稳态误差约为0.04,相角裕量约为045。
由稳态误差可求出,1/(k+1)=0.04得出k=24
Matlab 程序:
num0=24;den0=conv([1,1],conv([1,1],[1,1]));w=logspace(-1,1.2);
[gm1,pm1,wcg1,wcp1]=margin(num0,den0);
[mag1,phase1]=bode(num0,den0,w);
[gm1,pm1,wcg1,wcp1]
margin(num0,den0)
grid;
结果:
ans =
0.3334 -29.1467 1.7322 2.7056
Bode 图
10101010幅值(d b )
--Go,-Gc,GoGc
M a g n i t u d e (d B )
10
10101010P h a s e (d e g )Bode Diagram Gm = -9.54 dB (at 1.73 rad/sec) , P m = -29.1 deg (at 2.71 rad/sec)Frequency (rad/sec)
校正Matlab程序:
e=10; r=45; r0=pm1;
phi=(-180+r+e);
[il,ii]=min(abs(phase1-phi));
wc=w( ii); beit=mag1(ii); T=10/wc;
numc=[ T,1]; denc=[ beit*T,1];
[num,den]=series(num0,den0,numc,denc); %原系统与校正装置串联[gm,pm,wcg,wcp]=margin(num,den); %返回系统新的相角裕度和幅值裕度printsys(numc,denc) %显示校正装置的传递函数
disp('校正之后的系统开环传递函数为:');
printsys(num,den) %显示系统新的传递函数
[mag2,phase2]=bode(numc,denc,w); %计算指定频率内校正装置的相角范围和幅值范围
[mag,phase]=bode(num,den,w);%计算指定频率内系统新的相角范围和幅值范围subplot(2,1,1);semilogx(w,20*log10(mag),w,20*log10(mag1),'--',w,20*lo g10(mag2),'-.');
grid; ylabel('幅值(db)'); title('--Go,-Gc,GoGc');
subplot(2,1,2);
semilogx(w,phase,w,phase1,'--',w,phase2,'-',w,(w-180-w),':');
grid; ylabel('相位(0)'); xlabel('频率(rad/sec)');
title(['校正前:幅值裕量=',num2str(20*log10(gm1)),'db','相位裕量=',num2str(pm1),'0';
'校正后:幅值裕量=',num2str(20*log10(gm)),'db','相位裕量=',num2str(pm),'0']);
结果:num/den =
11.4062 s + 1
-------------
116.386 s + 1
校正之后的系统开环传递函数为:
num/den =
273.75 s + 24
--------------------------------------------------------- 116.386 s^4 + 350.1579 s^3 + 352.1579 s^2 + 119.386 s + 1
图如下:
10
101010幅值(d b )--Go,-Gc,GoGc
10
1010
10相位(0)频率(rad/sec)
3.某单位负反馈控制系统的开环传递函数为)
2)(1()(++=s s s K s G ,试设计一滞后-超前校正装置,使校正后系统的静态速度误差系数110-=s K v ,相位裕量050=γ,增益裕量dB K g 10lg 20≥。
由110-=s K v 可知k=20
Matlab 程序:
num0=20; den0=conv([1,0],conv([1,1],[1,2])); w=logspace(-1,1.2);
[gm1,pm1,wcg1,wcp1]=margin(num0,den0);
[mag1,phase1]=bode(num0,den0,w);
[gm1,pm1,wcg1,wcp1]
margin(num0,den0)
grid;
结果:ans =
0.3000 -28.0814 1.4142 2.4253
Bode 图:
M a g n i t u d e (d B )
10
10101010P h a s e (d e g )Bode Diagram
Gm = -10.5 dB (at 1.41 rad/sec) , P m = -28.1 deg (at 2.43 rad/sec)
Frequency (rad/sec)
选择原系统0180-的频率为新的截止频率c ω,则可以确定滞后部分的2T 和
β。
其中
c
c T T ωω1.01101122=⇒=,10=β。
由原系统,s ra
d c /58.1=ω,此时的幅值为9.12dB 。
根据校正后系统在新的幅值交接频率处的幅值必须为0dB ,确定超前校正部分的1T 。
在原系统))(lg 20,(0c c j G ωω-,即(1.58,-9.12)处画一条斜率为dec dB /20的直线,此直线与0dB 线及-20dB 线的交点分别为超前校正部分的两个转折频率。
num0=20; den0=conv([1,0],conv([1,1],[1,2])); w=logspace(-1,1.2);
[gm1,pm1,wcg1,wcp1]=margin(num0,den0);
[mag1,phase1]=bode(num0,den0,w);
[gm1,pm1,wcg1,wcp1]
margin(num0,den0)
wc=1.58; beit=10; T2=10/wc;
lw=20*log10(w/1.58)-9.12;
[il,ii]=min(abs(lw+20));
w1=w(ii);
numc1=[1/w1,1];denc1=[1/ (beit*w1),1];
numc2=[ T2,1];denc2=[ beit*T2,1];
[numc,denc]=series(numc1,denc1,numc2,denc2);
[num,den]=series(num0,den0,numc,denc);
printsys(numc,denc)
disp('УÕýÖ®ºóµÄϵͳ¿ª»·´«µÝº¯ÊýΪ:');
printsys(num,den)
[mag2,phase2]=bode(numc,denc,w);
[mag,phase]=bode(num,den,w);
[gm,pm,wcg,wcp]=margin(num,den);
subplot(2,1,1);semilogx(w,20*log10(mag),w,20*log10(mag1),'--',w,20*log10(mag2),'-.');
grid; ylabel('·ùÖµ(db)'); title('--Go,-Gc,GoGc');
subplot(2,1,2); semilogx(w,phase,w,phase1,'--',w,phase2,'-',w,(w-180-w),':'); grid; ylabel('Ïàλ(0)'); xlabel('ƵÂÊ(rad/sec)');
title(['УÕýºó£º·ùÖµÔ£Á¿=',num2str(20*log10(gm)),'db','ÏàλԣÁ¿=',num2str(pm),'0']);
10
101010幅值(d b )--Go,-Gc,GoGc
10
1010
10
相位(0)频率(rad/sec)校正后:幅值裕量=12.3215db 相位裕量=48.51890
四、实验心得
通过本节课的实验,从直观上增加了对线性系统串联校正的理解,从而加深了线性系统校正的理论知识,掌握了控制系统频域范围内的分析校正方法,学会了用频率特性法进行串联校正设计的思路和步骤。
(本资料素材和资料部分来自网络,仅供参考。
请预览后才下载,期待您的好评与关注!)。