自动控制原理课程设计
2013/2014 学年第 一 学期
学生姓名: 司马果果 学 号: 10050542 学 院: 计算机与控制工程学院 专 业: 自动化
指导教师: 林都
2013 年 9 月 05 日
一、设计相关知识······························ 2 二、设计内容和要求···························· 3 三、设计工作任务及工作量的要求················ 3 四、设计正文·································· 3 1、校正前的系统性能分析······················ 3
(1)、伯德图······························ 4 (2)、根轨迹图··························· 4 2、校 正··································· 6
(1)、串联超前校正························ 6
(2)、串联滞后校正 ······················· 7 (3)、串联超前滞后校正···················· 9 3、三种校正方式比较分析 ···················· 11
4、校正后系统性能分析·······················
11
5、结果分析······························· 14
五、思考和分析······························ 14 1、奈氏判据······························ 14 2、校正器对系统性能的影响················ 14 3、心得体会······························ 14 六、参考文献······························· 14
一.设计相关知识
当控制系统的稳定性、响应速度和稳态误差等指标不符合设计要求时,就需要进行校正。通常可采用根轨迹校正或频率法校正,
校正中常用的性能指标有频域指标和时域指标,当性能指标以超调量、调节时间、静态位置误差系数等时域特征量给出时,一般采用根轨迹校正,如果性能指标以谐振峰值、谐振频率等频域特征量给出时,一般采用频率校正法。
二、设计内容和要求
一个大功率随动系统如图所示(new5.m)
R(s) C(s) G1(s) G2(s) G3(s) G4(s) G5(s) 大功率随动系统
6.25,可控硅功率放大
0.007s14023.98,执行电机G3(s),拖动系统G2(s)0.00167s10.0063s20.9s110.1,减速器G5(s)。 G4(s)0.9s1s1、画出未校正系统的Bode图,分析系统是否稳定; 2、对系统进行串联校正,要求校正后的系统满足指标: (1)超调量<10%,(2)调整时间<3s,(3)相角稳定裕度>60deg,(4)幅值稳定裕度>15dB 3、计算校正后系统的剪切频率cp和穿频率cs; 4、给出校正装置的传递函数;
5、分别画出系统校正前、后的开环系统的奈奎斯特图,并进行分析; 6、分别画出系统校正前、后的的根轨迹图;
其中,自整角机、相敏放大G1(s)7、应用所学的知识分析校正器对系统性能的影响。
三.设计工作任务及工作量的要求
1、系统校正原理 2、matlab的使用
四.设计正文
1、校正前的系统性能分析
(1)伯德图
首先分析系统的伯德图使用 matlab进行绘制,程序 如下: num=[0 599.5];
den=conv(conv(conv(conv([1 0],[0.007 1]),[0.00167 1]),[0.9 1]),[0.0063 0.9 1]); GS=tf(num,den) Transfer function:
599.5
-------------------------------------------------------------------------
6.628e-008 s^6 + 5.87e-005 s^5 + 0.01277 s^4 + 0.8319 s^3 + 1.809 s^2 + s >> GH=zpk(GS) Zero/pole/gain:
9044646911.7698 --------------------------------------------------
s (s+598.8) (s+142.9) (s+141.7) (s+1.12) (s+1.111)
>> bode(GS)
(2)根轨迹图
den=conv(conv(conv(conv([1 0],[0.007 1]),[0.00167 1]),[0.9 1]),[0.0063 0.9 1]); Transfer function:
599.5
-------------------------------------------------------------------------
6.628e-008 s^6 + 5.87e-005 s^5 + 0.01277 s^4 + 0.8319 s^3 + 1.809 s^2 + s rlocus(G1);
G=tf(num,den);
>> [Gm,Pm,Wcg,Wcp]=margin(G) Gm =
0.0036
Pm =
-83.9954
Wcg =
1.0964
Wcp =
9.0111
2、校正
(1)串联超前校正
要求相角稳定裕度>60deg,幅值稳定裕度>15dB,试利用matlab确定串联超前校正装置。
num=[0 599.5]; %定义校正前系统
den=conv(conv(conv(conv([1 0],[0.007 1]),[0.00167 1]),[0.9 1]),[0.0063 0.9 1]); [Gm1,Pm1,Wcg1,Wcp1]=margin(num,den);%校正前系统幅值域度相角域度 r0=40;r=-83.9954; %期望的 相角域度和之前的相角域度 w=logspace(-1,4); %频率变化范围 [mag1,phase1]=bode(num,den,w); %求校正前的幅值相位 for epsilon=5:15 %定义附加相角变化范围 phic=(r0-r+epsilon)*pi/180; %求需增加的超前相角 alpha=(1-sin(phic))/(1+sin(phic)); %求alpha
[i1,ii]=min(abs(mag1-sqrt(alpha))); %将校正前系统幅值等于-20lg(a)^ wc=w(ii); %(1/2)的频率作为校正后的wc T=1/(wc*sqrt(alpha)); %求校正装置参数T numc=[T,1];denc=[alpha*T,1]; %定义校正装置的传函 [num1,den1]=series(num,den,numc,denc);%求校正后的传函
[Gm,Pm,Wcg,Wcp]=margin(num1,den1); %求校正后的幅值域度相角域度 if(Pm>=r0);break;end %判断是否满足要求 end
printsys(numc,denc) %显示校正装置传函 [mag2,phase2]=bode(numc,denc,w);%求校正装置的幅值相角 [mag,phase]=bode(num1,den1,w); %求校正后的 幅值相角 subplot(2,1,1);
semilogx(w,20*log10(mag),w,20*log10(mag1),'--',w,20*log10(mag2),'-.'); grid;
ylabel('幅值(db)');
title('绿-校正前 红-校正 蓝-校正后'); subplot(2,1,2);
semilogx(w,phase,w,phase1,'--',w,phase2,'-.',w,(w-180-w),':'); grid;
ylabel('相角(度)') ;xlabel('频率(rad/sec)');
disp(['校正后:幅值穿越频率=',num2str(Wcp),'rad/sec,','相角穿越 频率
=',num2str(Wcg),'rad/sec']);
disp(['校正后;幅值裕度=',num2str(20*log10(Gm)),'dB,','相角裕量=',num2str(Pm),'du']) num/den =
0.19977 s + 1 ------------- 0.04148 s + 1
校正后:幅值穿越频率=11.9383rad/sec,相角穿越 频率=1.345rad/sec 校正后;幅值裕度=-45.4724dB,相角裕量=-49.1509du
(2)串联滞后校正
>> %滞后.m num=[0 599.5];
den=conv(conv(conv(conv([1 0],[0.007 1]),[0.00167 1]),[0.9 1]),[0.0063 0.9 1]); [Gm,Pm,Wcg,Wcp]=margin(num,den); r0=67;r=-83.9954; w=logspace(-1,4);
[mag1,phase1]=bode(num,den,w); for epsilon=5:15 r=(-180+r0+epsilon);
[i1,ii]=min(abs(phase1-r)); wc=w(ii); beta=mag1(ii); %求校正装置的参数beta和TT=5/wc; T=5/wc;
numc=[T,1];denc=[beta*T,1]; %定义校正 装置传函
[num1,den1]=series(num,den,numc,denc);%求校正后传函
[Gm,Pm,Wcg,Wcp]=margin(num1,den1);%求系统校正后的幅值域度和相角域度 if(Pm>=r0);break;end; end
printsys(numc,denc)
[mag2,phase2]=bode(numc,denc,w); [mag,phase]=bode(num1,den1,w); subplot(2,1,1);
semilogx(w,20*log10(mag),w,20*log10(mag1),'--',w,20*log10(mag2),'-.'); grid;
ylabel('幅值(db)');
title('绿-校正前 红-校正 蓝-校正后'); subplot(2,1,2);
semilogx(w,phase,w,phase1,'--',w,phase2,'-.',w,(w-180-w),':'); grid;
ylabel('相角(度)') ;xlabel('频率(rad/sec)');
disp(['校正后:幅值穿越频率=',num2str(Wcp),'rad/sec,','相角穿越 频率 =',num2str(Wcg),'rad/sec']);
disp(['校正后;幅值裕度=',num2str(20*log10(Gm)),'dB,','相角裕量 =',num2str(Pm),'du']);;
num/den =
50 s + 1 ----------------- 297360.0397 s + 1
校正后:幅值穿越频率=0.10188rad/sec,相角穿越 频率 =1.0766rad/sec 校正后;幅值裕度=26.2881dB,相角裕量 =68.3666du
(3)串联滞后超前校正
%串联滞后.m num=[0 599.5];
den=conv(conv(conv(conv([1 0],[0.007 1]),[0.00167 1]),[0.9 1]),[0.0063 0.9 1]);
[Gm,Pm,Wcg,Wcp]=margin(num,den); w=logspace(-1,4);
[mag1,phase1]=bode(num,den,w);
ii=find(abs(w-Wcg)==min(abs(w-Wcg))); wc=Wcg;
w1=wc/10;beta=10;
numc1=[1,w1];denc1=[1,w1/beta]; w2=w1; mag(ii)=2;
while(mag(ii)>1)
numc2=[1,w2];denc2=[1,(w2*beta)]; w2=w2+0.01;
[numc,denc]=series(numc1,denc1,numc2,denc2); [num,den]=series(num,den,numc,denc); [mag,phase]=bode(num,den,w);
end
printsys(numc1,denc1); printsys(numc2,denc2);
[Gm1,Pm1,Wcg1,Wcp1]=margin(num,den); [mag2,phase2]=bode(numc,denc,w); [mag,phase]=bode(num,den,w); subplot(2,1,1);
semilogx(w,20*log10(mag1),w,20*log10(mag),'--',w,20*log10(mag2),'-.'); grid;
ylabel('幅值(db)');
title('绿-校正前 红-校正 蓝-校正后'); subplot(2,1,2);
semilogx(w,phase,w,phase1,'--',w,phase2,'-.',w,(w-180-w),':'); grid;
ylabel('相角(度)') ;xlabel('频率(rad/sec)');
disp(['校正后:幅值穿越频率=',num2str(Wcp1),'rad/sec,','相角穿越 频率=',num2str (Wcg1),'rad/sec']);
disp(['校正后;幅值裕度=',num2str(20*log10(Gm1)),'dB,','相角裕量=',num2str(Pm1),'du']); num/den =
s + 0.10964 ------------ s + 0.010964
num/den =
s + 0.20964 -----------
s + 2.0964
校正后:幅值穿越频率=8.4317rad/sec,相角穿越 频率=9.7291rad/sec 校正后;幅值裕度=3.2814dB,相角裕量=15.9539du
3、三种校正方式比较分析
从三种校正方式中可以看出采用串联滞后校正的方式可以达到题目要求。所以我们采用串联滞后校正。
4、校正后的系统性能分析
(1)校正装置的传函
num/den =
50 s + 1 ----------------- 297360.0397 s + 1
(2)矫正后的传递函数 num=conv([0 599.5],[50 1]);
den=conv(conv(conv(conv(conv([1
0],[0.007
1]),[0.00167
1]),[0.9
1]),[0.0063
0.9
1]),[297360.0397 1]) GS=tf(num,den)
Transfer function:
29975 s + 599.5
--------------------------------------------------------------------------------------
0.01971 s^7 + 17.46 s^6 + 3797 s^5 + 2.474e005 s^4 + 5.378e005 s^3 + 2.974e005 s^2 + s
GH=zpk(GS) Zero/pole/gain:
1520824.2037 (s+0.02) -----------------------------------------------------------------
s (s+598.8) (s+142.9) (s+141.7) (s+1.12) (s+1.111) (s+3.363e-006) 校正后伯德图:
校正前奈奎斯特图
校正后奈奎斯特图:
5、结果分析
校正后系统各项指标满足要求,系统达到稳定状态。校正成功。 五、思考和分析 1、奈氏判据
方法:绘制w从0到+无穷大时的 开环幅相曲线,然后按其包围(-1,j0)点的圈数R(逆时钟为正,顺时针为负)和开环传函在s右半平面上的极点数P,根据公式Z=P-2R,来确定,Z=0,系统稳定;否则,系统不稳定 。由于右平面无极点,而且R=0;得出Z=0;所以闭环系统稳定。 2、校正器对系统性能影响
由以上设计可以看出,串联超前校正使系统的相角裕度增大,从而降低了系统响应的超调量。与此同时,增加了系统的带宽,使系统的响应速度加快。串联滞后校正装置可用于提高系统的相角稳定裕度,以改善系统的稳定性和某些暂态性能,亦可用于提高稳态精度,减小稳态误差,使用时应根据具体系统具体分析 3、心得体会
这是第一个课程设计,需要matlab,这是一个非常实用的软件,对理论分析有极大的支持。在这次的课程设计中,开环传递函数较复杂,徒手计算很困难,在matlab软件的帮助下,最终完成要求,在今后的学习和未来的工作中,不仅要学好这款软件,还要掌握更多自动化专业有关的软件。 六、参考文献
【1】 王划一,杨西侠,自动控制原理(第2版)。 国防工业出版社,2010.06
【2】胡寿松,自动控制原理 第五版。 科学出版社,2010.06 【3】李维波,毛承雄,MATLAB在电气工程中的应用实例。中国电力出版社,2009.06
【4】吴天明,赵新力,刘建存,MATLAB电力系统设计与分析(第三版)。国防工业出版社,2010.07
【5】张圣勤,MATLAB 7.0实用教程,机械工业出版社,2006 【6】曹弋,MATLAB教程及实例,机械工业出版社,2008
因篇幅问题不能全部显示,请点此查看更多更全内容