金陵科技学院0921118009邓楠自动控制原理MATLAB课程设计.docx
《金陵科技学院0921118009邓楠自动控制原理MATLAB课程设计.docx》由会员分享,可在线阅读,更多相关《金陵科技学院0921118009邓楠自动控制原理MATLAB课程设计.docx(19页珍藏版)》请在冰豆网上搜索。
金陵科技学院0921118009邓楠自动控制原理MATLAB课程设计
滞后-超前校正
——课程设计
一、设计目的:
1.了解控制系统设计的一般方法、步骤。
2.掌握对系统进行稳定性的分析、稳态误差分析以及动态特性分析的方法。
3.掌握利用MATLAB对控制理论内容进行分析和研究的技能。
4.提高分析问题解决问题的能力。
二、设计内容与要求:
设计内容:
1.阅读有关资料。
2.对系统进行稳定性分析、稳态误差分析以及动态特性分析。
3.绘制根轨迹图、Bode图、Nyquist图。
4.设计校正系统,满足工作要求。
设计条件:
1、被控制对象的传递函数是
(n
m)
2、参数a0,a1,a2,...an和b0,b1,b2,...bm因小组而异。
设计要求:
1.能用MATLAB解复杂的自动控制理论题目。
2.能用MATLAB设计控制系统以满足具体的性能指标。
3.能灵活应用MATLAB的CONTROLSYSTEM工具箱和SIMULINK仿真软件,分析系统的性能。
三、设计步骤:
1、自学MATLAB软件的基本知识,包括MATLAB的基本操作命令。
控制系统工具箱的用法等,并上机实验。
2、基于MALAB用频率法对系统进行串联校正设计,使其满足给定的领域性能指标。
要求程序执行的结果中有校正装置传递函数和校正后系统开环传递函数,校正装置的参数T,α等的值。
已知开环传递函数为G(S)=
使用频率法设计串联滞后—超前校正装置,使系统的相角裕度大于等于40°,静态速度误差系数等于20。
校正前
根据上式可化简G(S)=
,所以公式G(S)=
所以
=1,则
=6.1310,相角裕度
为9.3528。
校正后
串联校正滞后—超前校正装置
由
,取
,又由
;
;
所以校正后的函数为
3、利用MATLAB函数求出校正前与校正后系统的特征根,并判断其系统是否稳定,为什么?
校正前
>>%MATLABPROGRAMj005.m
>>%
>>num=[20];
den=conv([10],conv([0.51],[0.0251]));
g=tf(num,den);
sys=feedback(g,1);
pzmap(g);
den=conv([10],conv([0.51],[0.0251]));
t=tf(num,den);
pzmap(t);
[p,z]=pzmap(g);
den=sys.den{1};
r=roots(den);
disp(r)
-41.0006
-0.4997+6.2269i
-0.4997-6.2269i
系统没有零极点在右边,所以系统开环稳定。
校正后
>>%MATLABPROGRAMj005.m
%
num=conv([0.8331],[6.620]);
d3=conv([0.51],conv([0.0251],[10]));d2=conv([0.1251],[3.331]);den=conv([0d3],[0d2]);
g=tf(num,den);
sys=feedback(g,1);
pzmap(g);
conv([0.51],conv([0.0251],[10]));d2=conv([0.1251],[41]);den=conv([0d3],[0d2]);
t=tf(num,den);
pzmap(t);
[p,z]=pzmap(g);
den=sys.den{1};
r=roots(den);
disp(r)
-40.7534
-4.8304
-1.6921+3.4339i
-1.6921-3.4339i
-1.3324
极点和特征根都在左半平面,故系统稳定
4、利用MATLAB作出系统校正前与校正后的单位脉冲响应曲线,单位阶跃响应曲线,单位斜坡响应曲线,分析这三种曲线的关系?
求出系统校正前与校正后的动态性能指标Ϭ%,tr,tp,ts,ess,并分析其有何变化?
脉冲响应
校正前
>>%MATLABPROGRAMj005.m
>>%
>>k=20;n1=1;d1=conv([10],conv([0.51],[0.0251]));
>>s1=tf(k*n1,d1);
sys=feedback(s1,1);
impulse(sys)
校正后
>>%MATLABPROGRAMj005.m
>>%
>>k=conv([0.8331],[0.41]);n1=20;
d3=conv([0.51],conv([0.0251],[10]));d2=conv([3.331],[0.1251]);d1=conv([0d3],[0d2]);
s1=tf(k*n1,d1);
sys=feedback(s1,1);
impulse(sys)
阶跃响应
校正前
>>%MATLABPROGRAMj005.m
>>%
>>k=20;n1=1;d1=conv([10],conv([0.51],[0.0251]));
>>s1=tf(k*n1,d1);
figure
(2);sys=feedback(s1,1);step(sys)
由图可知:
Ϭ%=76%,tr=0.272-0.093=0.179,tp=0.506,ts=6.09,ess=1-1=0
校正后
>>%MATLABPROGRAMj005.m
%
k=conv([0.8331],[0.41]);n1=20;
d3=conv([0.0251],conv([0.1251],[10]));d2=conv([0.51],[3.331]);d1=conv([0d3],[0d2]);
s1=tf(k*n1,d1);
>>figure
(2);sys=feedback(s1,1);step(sys)
由图可知:
Ϭ%=36%,tr=0.384-0.109=0.275,tp=0.697,ts=1.27,ess=1-1.01=-0.01
斜坡响应
校正前
>>%MATLABPROGRAMj005.m
>>%
>>k=20;n1=1;d1=conv([100],conv([0.51],[0.0251]));
>>s1=tf(k*n1,d1);
figure
(2);sys=feedback(s1,1);step(sys)
校正后
>>%MATLABPROGRAMj005.m
>>%
>>k=conv([0.8331],[0.41]);n1=20;
d3=conv([0.51],conv([0.0251],[10]));d2=conv([3.331],[0.1251]);d4=conv([0d3],[0d2]);d1=conv([0d4],[10]);
>>s1=tf(k*n1,d1);
figure
(2);sys=feedback(s1,1);step(sys)
三条曲线关系:
斜坡响应曲线的导数是阶跃,阶跃响应曲线的导数是脉冲响应曲线。
5、绘制系统校正前与校正后的根轨迹图,并求其分离点,汇合点及虚轴交点的坐标和相应点的增益K*值,得出系统稳定时增益K*的变化范围。
绘制系统校正前与校正后的Nyquist图,判断系统的稳定性,并说明理由。
校正前
>>%MATLABPROGRAMj005.m
>>%
>>num=20;
>>den=conv([10],conv([0.51],[0.0251]));
>>g0=tf(num,den);
rlocus(g0)
分离点-0.987,无汇合点,虚轴交点的坐标0.129
9.37j和相应点的增益K*=0.0244
校正后
>>%MATLABPROGRAMj005.m
%
d3=conv([0.51],conv([0.0251],[10]));d2=conv([0.1251],[3.331]);den=conv([0d3],[0d2]);
num=20;
g0=tf(num,den);
rlocus(g0)
分离点-6.23,汇合点0虚轴交点的坐标没有,相应点的增益K*=0
校正前
>>%MATLABPROGRAMj005.m
>>%
>>k=20;n1=1;d1=conv([10],conv([0.51],[0.0251]));
>>s1=tf(k*n1,d1);
nyquist(s1)
判断稳定性:
已知,开环不稳定极点个数P=0,又Nyquist曲线包围(-1,j0)点两圈,所以系统不稳定
校正后
>>%MATLABPROGRAMj005.m
>>%
>>k=conv([0.41],[0.8331]);n1=20;
d3=conv([0.51],conv([0.0251],[10]));d2=conv([0.1251],[3.331]);d1=conv([0d3],[0d2]);
s1=tf(k*n1,d1);
nyquist(s1)
判断稳定性:
已知,开环不稳定极点个数P=0,又Nyquist曲线不包围(-1,j0)点,所以系统稳定
6、绘制系统校正前与校正后的Bode图,计算系统的幅值裕量,相位裕量,幅值穿越频率和相位穿越频率。
判断系统的稳定性,并说明理由?
Bode图
校正前
>>%MATLABPROGRAMj005.m
>>%
>>k=20;n1=1;d1=conv([10],conv([0.51],[0.0251]));
>>s1=tf(k*n1,d1);
[GM,PM,WCP,WCG]=margin(s1)
GM=
2.1000
PM=
9.3528
WCP=
8.9443
WCG=
6.1310
幅值裕量:
2.1相位裕量:
9.3528
幅值穿越频率:
8.9443相位穿越频率:
6.1310
>>%MATLABPROGRAMj005.m
>>%
>>k=20;n1=1;d1=conv([10],conv([0.51],[0.0251]));
>>s1=tf(k*n1,d1);
figure
(1);margin(s1);holdon
开环极点P=0,在L(
)>0dB的频率范围内,对应的
(
)对-π线的正穿越都一次,所以系统不稳定。
校正后
>>%MATLABPROGRAMj005.m
%
k=conv([0.8331],[0.41]);n1=20;
d3=conv([0.51],conv([0.0251],[10]));d2=conv([0.1251],[3.331]);d1=conv([0d3],[0d2]);
s1=tf(k*n1,d1);
>>[GM,PM,WCP,WCG]=margin(s1)
GM=
9.4589
PM=
40.1015
WCP=
15.9123
WCG=
3.9352
幅值裕量:
9.4589相位裕量:
40.1015
幅值穿越频率:
15.9123相位穿越频率:
3.9352
>>%MATLABPROGRAMj005.m
%
k=conv([0.8331],[0.41]);n1=20;
d3=conv([0.51],conv([0.0251],[10]));d2=conv([0.1251],[3.331]);d1=conv([0d3],[0d2]);
s1=tf(k*n1,d1);
figure
(2);margin(s1);holdon
由上图可以看出,相角裕度等于40.1,符合设计要求
四、设计主要参考资料
1、《自动控制原理》教材程鹏主编机械工业出版社
2、《机电控制工程》王积伟主编机械工业出版社
3、《自动控制理论与设计》徐薇莉等主编上海交通大学出版社
4、《MATLAB控制系统设计》欧阳黎明主编国防大学出版社
5、《控制系统仿真及MATLAB语言》吴忠强刘志新魏立新丁华峰主编电子工业出版社
6、《自动控制原理》许必熙主编东南大学出版社
五、设计体会
通过这次为期将近一个星期的自动控制课程设计,我更加熟练掌握了一些关于自动控制技术的理路基础知识,尤其是对系统的稳态误差的求取有了很好的了解。
这次的课程设计不同于平时学习理论知识时的枯燥乏味,在结束了自动控制原理这门课时安排了这次课程设计,在掌握了一定基础的前体下,进行此次课程设计,能够让我们更好的理解课本上学习的内容。
并能够向活学活用的方向发展。
总之,此次课程设计还让我们再此熟悉了MATLAB,并且学会了用MATLAB编程画响应图线,这次课程设计的完成令我受益匪浅。