自动控制课程设计.docx
《自动控制课程设计.docx》由会员分享,可在线阅读,更多相关《自动控制课程设计.docx(22页珍藏版)》请在冰豆网上搜索。
自动控制课程设计
课程设计(大作业)报告
课程名称:
自动控制理论
设计题目:
院系:
自机学院
班级:
2010级电气
(2)班
设计者:
梁家余
学号:
201004170314
指导教师:
李祥德李云娟
设计时间:
2013-1-9
1、实训目的
1、了解matlab软件的基本特点和功能,熟悉其界面、菜单和工具条;掌握线性系统模型的计算机表示方法、变换以及模型间的相互转换。
了解控制系统工具箱的组成、特点及应用;掌握求线性系统定常连续系统输出相应的方法,运用连续系统时域响应函数(impulse,step,lsim),得到系统的时域响应曲线。
2、掌握使用MATLAB软件做出系统根轨迹;利用根轨迹图对控制系统进行分析;掌握使用MATLAB软件作出开环系统的波特图,奈圭斯特图;观察控制系统的开环频率特性,对控制系统的开环频率特性进行分析。
3、掌握MATLAB软件中simulink工具箱的使用;熟悉simulink中的功能模块,学会使用simulink对系统进行建模;掌握simulink的仿真方法。
二、实训内容
1、用matlab语言编制程序,实现以下系统:
1)、
>>unm=[524018];
>>den=[14622];
>>sys=tf(unm,den)
Transferfunction:
2)、
>>unm=conv(conv([166],[166]),[12]);
den1=conv(conv([11],[11]),conv([1325],[11]));
>>den=conv([10],den1);
sys=tf(4*unm,den)
Transferfunction:
2、两环节G
(1)、G
(2)串联,求等效的整体传递函数G(s)
unm1=[2];
>>den1=[13];
>>unm2=[7];
>>den2=[121];
>>sys1=tf(unm1,den1);
>>sys2=tf(unm2,den2);
>>sys=series(sys1,sys2)
Transferfunction:
14
---------------------
s^3+5s^2+7s+3
3、两环节G1、G2并联,求等效函数的传递函数G(s)
>>unm1=[2];
den1=[13];
unm2=[7];
den2=[121];
sys1=tf(unm1,den1);
sys2=tf(unm2,den2);
sys=parallel(sys1,sys2)
Transferfunction:
2s^2+11s+23
---------------------
s^3+5s^2+7s+3
4、已知系统结构如图,求闭环传递函数。
其中的两环节G1、G2分别为
有系统结构图可知G1与G2是反馈关系,可有正反馈和负反馈
1)、正反馈
unm1=[3100];
den1=[1281];
unm2=[2];
den2=[25];
sys1=tf(unm1,den1);
sys2=tf(unm2,den2);
sys=feedback(sys1,sys2,-1)
Transferfunction:
6s^2+215s+500
---------------------------
2s^3+9s^2+178s+605
2)、负反馈
unm1=[3100];
>>den1=[1281];
>>unm2=[2];
>>den2=[25];
sys1=tf(unm1,den1);
sys2=tf(unm2,den2);
sys=feedback(sys1,sys2,1)
Transferfunction:
6s^2+215s+500
---------------------------
2s^3+9s^2+166s+205
5、已知某系统闭环传递函数为
,求其单位阶跃响应曲线,单位脉冲曲线。
unm=[1025];
den=[0.161.961025];
t=0:
0.1:
10;
sys=tf(unm,den);
y1=step(sys,t);%单位阶跃
y2=impulse(sys,t);%单位脉冲
plot(t,y1,'--',t,y2,'+');
xlabel('时间t/s');
ylabel('响应曲线');
legend('单位阶跃响应曲线','单位脉冲响应曲线');
6、典型二阶系统的传递函数为
,
为自然频率,
为阻尼比,试绘出当
=0.5,
分别取-2、0、2、4、6、8、10时该系统的单位阶跃响应曲线;分析阻尼比分别为-0.5、-1时系统的稳定性。
当
=0.5时
1)、
=-2
>>unm=[(-2)*(-2)];
>>den=[12*0.5*(-2)(-2)*(-2)];
>>sys=tf(unm,den)
Transferfunction:
4
-------------
s^2-2s+4
>>t=0:
0.1:
10;
>>y=step(sys,t);
>>plot(t,y)
2)、
=0时
>>unm=[0];
>>den=[100];
>>sys=tf(unm,den)
Transferfunction:
0
>>t=0:
0.1:
10;
>>y=step(sys,t);
>>plot(t,y)
3)、
=2时
>>unm=[2*2];
>>den=[12*0.5*22*2];
>>sys=tf(unm,den)
Transferfunction:
4
-------------
s^2+2s+4
>>t=0:
0.1:
10;
>>y=step(sys,t);
>>plot(t,y)
4)、
=4
>>unm=[4*4];
>>den=[12*0.5*44*4];
>>sys=tf(unm,den)
Transferfunction:
16
--------------
s^2+4s+16
>>t=0:
0.1:
10;
y=step(sys,t);
plot(t,y)
5)、
=6
>>unm=[6*6];
>>den=[12*0.5*66*6];
>>sys=tf(unm,den)
Transferfunction:
36
--------------
s^2+6s+36
>>t=0:
0.1:
10;
>>y=step(sys,t);
>>plot(t,y)
6)、
=8
>>unm=[8*8];
>>den=[12*0.5*88*8];
>>sys=tf(unm,den)
Transferfunction:
64
--------------
s^2+8s+64
>>t=0:
0.1:
10;
>>y=step(sys,t);
>>plot(t,y)
7)、
=10
>>unm=[10*10];
>>den=[12*0.5*1010*10];
>>sys=tf(unm,den)
Transferfunction:
100
----------------
s^2+10s+100
>>t=0:
0.1:
5;
>>y=step(sys,t);
>>plot(t,y)
稳定性判定:
系统的闭环特征方程为:
,
1)、
=-0.5
>>f=[12*(-0.5)*88*8];
>>den=roots(f)
den=
4.0000+6.9282i
4.0000-6.9282i
系统不稳定
2)、
=-1
>>f=[12*(-1)*88*8];
>>den=roots(f)
den=
8
8
系统稳定
7、设有一高阶系统开环传递函数为
,试绘制该系统的零极点图和闭环根轨迹图。
unm=[0.0160.2181.4369.359];
den=[0.060.2680.6356.271];
sys=tf(unm,den);
pzmap(sys)%开环零极点
rlocus(sys)%根轨迹图
>>rlocus(z,p)
8、单位反馈系统前向通道的传递函数为
试绘制该系统的Bode图和Nyquist曲线,说明软件绘制曲线与手动绘制曲线的异同
unm=[281282];
den=[15101051];
sys=tf(unm,den);
bode(sys)%bodeͼ
nyquist(sys)%nyquistͼ
Transferfunction:
2s^4+8s^3+12s^2+8s+2
-----------------------------------------
s^6+5s^5+10s^4+10s^3+5s^2+s
>>bode(unm,den)
>>nyquist(unm,den)
软件绘制曲线与手动绘制曲线的异同:
软件绘图更加精确。
9、已知某控制系统的开环传递函数
,K=1.5,试绘制系统的开环频率特性曲线,并求出系统的幅值和相位裕量。
unm=[1.5];
den=conv(conv([10],[11]),[12]);
sys=tf(unm,den);
[gm,pm,wcg,wcp]=margin(sys)
margin(sys)
Transferfunction:
1.5
-----------------
s^3+3s^2+2s
>>[gm,pm,wcg,wcp]=margin(unm,den)%
gm=
4.0000
pm=
41.5340
wcg=
1.4142
wcp=
0.6118
>>bode(sys)
>>nyquist(sys)
10、在SIMULINK中建立系统,该系统阶跃输入时的连续示意图如下。
K为224,绘制其单位阶跃响应曲线,分析其峰值时间
、延迟时间
、上升时间
、调节时间
和超调量。
>>unm=[314];
>>den=[19314];
>>sys=tf(unm,den);
>>t=0:
0.01:
5;
>>y=step(sys,t);
>>plot(t,y)
>>i=501;
>>whiley(i)>0.98&y(i)<1.02
i=i-1;
end
>>ts=i
ts=
88
>>i=1;
>>whiley(i)<0.1
i=i+1;
end
>>t1=i;
>>i=1;
>>whiley(i)<0.9
i=i+1;
end
>>t2=i;
>>tr=t2-t1
tr=
8
>>i=1;
>>whiley(i)<0.5
i=i+1;
end
>>td=i
td=
9
>>[y,t]=max(y);
>>tp=t
tp=
23
三、设计总结
每一个课程设计都是一个挑战!
这次的课程设计也不例外。
虽然我们以前学了一点MATLAB,不少课本上也有提到过MATLAB,但是我们还是不怎么熟练,通过这次自动控制原理课程让我更好地学会了如何去使用这个软件。
自动控制原理的知识在课堂上掌握的也不是很好,所以这次课程设计对于我来说真是难度不小啊。
在很多人眼中为期一周的课程设计或许是一种煎熬,这是可以理解的,在这一周当中,我们不仅要完成这个课程设计,而且还要学习其他专业课的复习。
对于MATLAB的学习,我们先从以前教材中翻看相关的内容,因为这些书上讲的比较精简易懂,看完之后便对MATLAB有了更深地了解和懂得了一些简单编程,接下来我再去图书馆借相关的书籍进行借鉴和参考,当要用什么功能时,就在书上翻看相应部分的内容,这样MATLAB就应用起来了。
对于自动控制原理的相关知识,我重新翻看好几遍教材,对校正有了较好的认识之后才开始进行单位负反馈系统设计。
校正设计时候,在试取值时需要对校正原理有较好的理解才能取出合适的参数,期间我也不是一次就成功,选了几次才选出比较合适的参数。
这种不断尝试的经历让我们养成一种不断探索的科学研究精神,我想对于将来想从事技术行业的学生来说这是很重要的。
每一次课程设计都会学到不少东西,这次当然也不例外。
不但对自动控制原理的知识巩固了,也加强了MATLAB这个强大软件使用的学习,这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在自己和同学相互协助下,终于迎刃而解了。
四、参考文献
[1]程鹏.自动控制原理(第二版).高等教育出版社.
[2]朱衡君.MATLAB语言及实践教程(第二版).清华大学出版社.
[3]张静.MATLAB在控制系统中的应用.电子工业出版社.