课 程 设 计
题 目 零极点对系统性能的影响分析 学 院 专 业 班 级 姓 名
指导教师
自动化学院 自动化 谭思云
2013 年 12 月 27 日
课程设计任务书
学生姓名: 专业班级:自动化1102班 指导教师: 谭思云 工作单位: 自动化学院
题 目: 零极点对系统性能的影响分析 初始条件:
系统开环传递函数为G 1(s)=
(s/a+1) 1
或,其中G (s)=222
[(s/p)+1](s+s +1) (s+s +1)
G 1(s )是在阻尼系数ξ=0. 5的归一化二阶系统的传递函数上增加了一个零点得到的,G 2(s )是在阻尼系数ξ=0. 5的归一化二阶系统的传递函数上增加了一个极点得到的。
要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体
要求)
(1) 当开环传递函数为G 1(s )时,绘制系统的根轨迹和奈奎斯特曲线; (2) 当开环传递函数为G 1(s )时,a 分别取0.01,0.1,1,10,100时,用Matlab
计算系统阶跃响应的超调量和系统频率响应的谐振峰值,并分析两者的关系;
(3) 画出(2)中各a 值的波特图;
(4) 当开环传递函数为G 2(s )时,绘制系统的根轨迹和奈奎斯特曲线; (5) 当开环传递函数为G 2(s )时,p 分别取0.01,0.1,1,10,100时,绘制
不同p 值时的波特图;
(6) 对比增加极点后系统带宽和原二阶系统的带宽,分析增加极点对系统带宽
的影响;
(7) 用Matlab 画出上述每种情况的在单位反馈时对单位阶跃输入的响应; (8) 对上述任务写出完整的课程设计说明书,说明书中必须写清楚分析计算的
过程,并包含Matlab 源程序或Simulink 仿真模型,说明书的格式按照教务处标准书写。
时间安排:
(1) 课程设计任务书的布置,讲解 (半天) (2) 根据任务书的要求进行设计构思。(半天) (3) 熟悉MATLAB 中的相关工具(一天) (4) 系统设计与仿真分析。(三天) (5) 撰写说明书。 (二天) (6) 课程设计答辩(半天)
指导教师签名:
系主任(或责任教师)签名: 年 月 年 月 日日
目录
摘要 . ..................................................................... 1 1 增加零点对系统的影响 . ................................................... 2 1.1 开环传递函数G 1(s )的根轨迹和奈奎斯特曲线 ........................... 2 1.1.1开环传递函数G 1(s )的根轨迹 ..................................... 2 1.1.2 开环传递函数G 1(s )的奈奎斯特曲线 ............................... 3 1.2 增加不同零点时的阶跃响应分析 ........................................ 3 1.3 系统阶跃响应分析 .................................................... 8 1.4增加不同零点时的伯德图 ............................................. 10 2 增加极点时对系统的影响分析 . ............................................ 13 2.1开环传递函数为G 2(s )时系统的根轨迹和奈奎斯特曲线 .................. 13 2.1.1系统开环传递函数为G 2(s )的根轨迹 .............................. 13 2.1.2开环传递函数G 2(s )的奈奎斯特曲线 .............................. 14 2.2增加不同极点时系统的伯德图 ......................................... 14 2.3增加极点对系统带宽的影响 ........................................... 17 2.4增加极点后系统单位反馈时的单位阶跃响应 ............................. 17 3 结论 . .................................................................. 21 心得体会 . ................................................................ 21
摘要
本次课程设计主要是分析零极点对系统性能的影响。首先从根轨迹、奈奎斯特曲线、伯德图和阶跃响应四方面分析原开环传递函数时的系统性能,然后在原开环传递函数基础上增加一个零点,并且让零点的位置不断变化,分析增加零点之后系统的性能,同时与原系统进行分析比较,发现增加的零点与虚轴的距离决定了对系统影响的大小;再在原开环传递函数基础上增加一个极点,并且令极点位置不断变化,分析增加极点后系统的性能,同时与原系统进行分析比较,同样发现增加的极点与虚轴的距离决定了对系统的影响大小。增加零点时,会增加系统响应的超调量,当零点离虚轴越近,对系统影响越大;当零点远离虚轴时,可以忽略零点对系统的影响。增加极点时,极点离虚轴越近,当系统影响越大,当极点远离虚轴时可以忽略极点对系统的影响。
关键词:零极点 开环传递函数 系统性能 MATLAB 谐振 带宽
1
零极点对系统性能的影响分析
1 增加零点对系统的影响
1.1 开环传递函数G 1(s )的根轨迹和奈奎斯特曲线
1.1.1开环传递函数G 1(s )的根轨迹 已知系统开环传递函数: (s/a+1)
G(s)=2
1
(s+s +1)
系统闭环特征方为
s 2+s +1++1=0
s
恒等变换为 s 2+s +2
+1=0
s
可以看出,如果绘制一个开环传递函数为G (s ) =实际上就是原系统的根轨迹。
在MATLAB 键入程序:n=[1,0] ; d=[1,1,2] ; rlocus(n,d) ;
键入Enter 键,可得图1所示根轨迹图。
s 2+s +2
的系统的根轨迹,
图1 开环传递函数G 1(s )的根轨迹图
2
1.1.2 开环传递函数G 1(s )的奈奎斯特曲线
当a =1 ,用MATLAB 绘奈奎斯特图。 在MATLAB 中键入命令:
G=tf([1,1],[1,1,1]);nyquist(G) 按键Eenter 出现如图2所示奈氏图
图2开环传递函数G 1(s )的奈奎斯特曲线
1.2 增加不同零点时的阶跃响应分析
(1)当a=0.01时
系统闭环传递函数 : φ1(s ) =单位阶跃响应的MATLAB 命令: num=[100,1]; den=[1,101,2]; step(num,den);
grid on;xlabel('t'),ylabel('c(t)'); 系统响应曲线如图3, 由图可得
0. 9-830. 5
σ%=超调量: p 0.5⨯100%=96.6%
s +101s +2
2
系统伯德图的MATLAB 命令: G=tf([100,1],[1,1,1]);bode(G)
3
系统伯德图如图4, 由图4可得
谐振峰值: M
r =39. 6
图3 a=0.01时的单位阶跃曲线
图 4 a=0.01时系统伯德图
(2)当a=0.1时
(系统闭环传递函数为 φ1s ) =
单位阶跃响应的MATLAB 命令: num=[10,1]; den=[1,11,2]; step(num,den);
grid on;xlabel('t');ylabel('c(t)');
系统响应曲线如图5所示,由图可得
4 +s +11s +2
2
超调量
σp %=0. 50⨯. 1500%=78%
图 5 a=0.1时的单位阶跃曲线
系统伯德图的MATLAB 命令:G=tf([10,1],[1,1,1]);bode(G) 系统伯德图如图6所示,
由图可得,谐振峰值: M r =20
图6 a=0.1时系统伯德图
(3)当a=1时
φ(s ) =系统闭环传递函数: 1
num=[1,1] den=[1,2,2]
5
s 2+2s +2
单位阶跃响应的MATLAB 命令:
step(num,den)
grid on;xlabel('t');ylabel('c(t)')
系统响应曲线如7所示,由图可得 超调量:
0. 5
σp %=0.5⨯100%=20.8%
图 7 a=1时的单位阶跃曲线
系统伯德图的MATLAB 命令:G=tf([1,1],[1,1,1]);bode(G);
1系统伯德图如图8所示,由图可得,谐振峰值 M
r =3. 3
4) 当a=10时系统闭环传递函数: φ1(s ) =单位阶跃响应的MATLAB 命令:
num=[0.1,1] den=[1,1.1,2]
6
图 8 a=1时系统伯德图
s +1.1s +2
2
step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图9所示
6-340. 5
由图可得,超调量 σp %=0. ⨯100%=26.8%
图 9 a=10时的单位阶跃曲线 系统伯德图的MATLAB 命令:G=tf([0.1,1],[1,1,1]);bode(G) 系统伯德图如图10所示
由图可得,谐振峰值
M
r =1. 2 6
图10 a=10时系统伯德图
(5)当a=100时
系统闭环传递函: φ1(s ) =单位阶跃响应的MATLAB 命令: num=[0.01,1];
den=[1,1.01,2];
0.01s +1s +1.01s +2
2
step(num,den);
grid on;xlabel('t');ylabel('c(t)'); 系统响应曲线如图11所示 由图可得,超调量:
σp %=0. 50⨯. 1500%=
3 0%
图 11a=1时的单位阶跃曲线
系统伯德图的MATLAB 命令: G=tf([0.01,1],[1,1,1]);bode(G) ; 系统伯德图如图12所示
由图可得谐振峰值 M
r =1. 2
图 12 a=100时系统伯德图
1.3 系统阶跃响应分析
原二阶系统闭环传递函数: φ(s ) =
s +s +2
2
单位阶跃响应的MATLAB 命令: num=[1]
den=[1,1,2] step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图13所示
0. 5
由图可得,超调量: σp %=0.5⨯100%=
30.4%
图13 原二阶系统的单位阶跃曲
系统伯德图的MATLAB 命令:
G=tf(1,[1,1,1]);bode(G)
系统伯德图如图14所示,由图可得,谐振峰值 M
r =1. 2
图14 原二阶系统的伯德图
由表1可知,当M r 增大时,σp %也相应增大。因为增加对零点系统稳态值不产生影响。当a=0.01 时,M r =40,σp %=96.6%, 随着a 的增大,M r 开始减小,σp %也减小,直到a 减小到某值时达到最小,σp %也不再减小;a 继续增大,M r 减小到一个固定的值,σp %也增大,当a 增大到100时,σp %=30%,M r =1.2,接近于原二阶系统的值。由此可知,零点离虚轴越近,对系统暂态性影响越大,零点离虚轴越远,对系统的影响越小。因此,若附加的零点远离虚轴,可忽略它对系统的影响,按原二阶系处理。
1.4增加不同零点时的伯德图
(1)当a=0.01时
系统伯德图的MATLAB 命令:G=tf([100,1],[1,1,1]);bode(G) 系统伯德图如图15所示;
图 15 a=0.01时系统伯德图
(2)当a=0.1时
系统伯德图的MATLAB 命令:G=tf([10,1],[1,1,1]); bode(G) 系统伯德图如图16所示
图16 a=0.1时系统伯德图
(3)当a=1时
系统伯德图的MATLAB 命令:
G=tf([1,1],[1,1,1]); bode(G) 系统伯德图如图17所示
图 17 a=1时系统伯德图
(4)当a=10时
系统伯德图的MATLAB 命令:
G=tf([0.1,1],[1,1,1]);bode(G)
系统伯德图如图18所示
图 18 a=10时系统伯德图
(4)当a=100时
系统伯德图的MATLAB 命令:G=tf([0.01,1],[1,1,1]);bode(G) 系统伯德图如图19所示
图 19 a=100时系统伯德图
由系统伯德图可知,增加零点使系统截止频率增大,
ω=ω
因为
b n
ωc = ωn
所以带宽增大;随着a 增大,截止频率减小,带宽减小,当a ,增大到一定值时,系统截止频率趋近于原二阶系统,截止频率为零。
2 增加极点时对系统的影响分析
2.1开环传递函数为G 2(s )时系统的根轨迹和奈奎斯特曲线
2.1.1系统开环传递函数为G 2(s )的根轨迹
1
2
[(s/p)+1](s+s +1)
已知开环传递函数: G 2(s)=
2[) +1s ](+s +系统闭环特征方程: p
(s 3+s 2+s )
2
+1) =1, 0
恒等变换:
s +s +2
+1=0
=
32
(s +s +s ) 2
可以看出,如果绘制一个开环传递函数G (s ) 际上就是原系统的根轨迹。 在MATLAB 键入程序:
s +s +2
的系统根轨迹,实
n=[1,1,1,0] ;
d=[0,1,1,2] ; rlocus(n,d) ; 键入Enter 键,可得图20所示
图 20 开环传递函数G 1(s )的根轨迹图
2.1.2开环传递函数G 2(s )的奈奎斯特曲线
取p=1制奈奎斯特曲线。在MATLAB 上键入命令:
G=tf([1,1,1,0],[0,1,1,2]);nyquist(G) 按键Eenter 出现如图21所示奈氏图所示
图21开环传递函数G 2(s )奈奎斯特曲线
2.2增加不同极点时系统的伯德图
(1)p=0.01时,在MATLAB 上键入命
G=tf([1],conv([100,1],[1,1,1]));bode(G)
系统伯德图如22所示
图 22 p=0.01时开环传递函数G 2(s )的伯德图
(2)p=0.1时,在MATLAB 上键入命令:
G=tf([1],conv([10,1],[1,1,1])); bode(G);
系统伯德图如23所示
图 23 p=0.1时开环传递函数G 2(s )的伯德图
(3)p=1时,在MATLAB 上键入命令:
G=tf([1],conv([1,1],[1,1,1])); bode(G)
系统伯德图如24所示
图 24 p=1时开环传递函数G 2(s )的伯德图
(4)p=10时,在MATLAB 上键入命令:
G=tf([1],conv([0.1,1],[1,1,1])); bode(G)
系统伯德图如25所示
图 25 p=10时开环传递函数G 2(s )的伯德图
(5)p=100时,在MATLAB 上键入命令:
G=tf([1],conv([0.01,1],[1,1,1])); bode(G)
系统伯德图如26所示
图26 p=100时开环传递函数G 2(s )的伯德图
2.3增加极点对系统带宽的影响
原二阶系统的开环传递函数为G (s ) =在MATLAB 上键入命令:
G=tf([1],[1,1,1]); bode(G)
系统伯德图如图27所示
1
2
s +s +1
图27 原二阶系统的伯德图
由增加极点后的伯德图和原系统的伯德图可知,增加极点后系统截止频率没变化,
因为
ωb =ω
ωc = ω且 ωc =0
所以带宽为零,即增加极点后系统带宽无变化。
2.4增加极点后系统单位反馈时的单位阶跃响应
φ(s ) =(1)当p=0.01时,系统闭环传递函数:2100s +101s
3
2
+101s +2
单位阶跃响应的MATLAB 命令:
num=[1]
den=[100,101,101,2] step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图28所示
图28 p=0.01时系统的单位阶跃曲线
φ(s ) =(2)当p=0.1时,系统闭环传递函数:210s +11s +11s +2
3
2
单位阶跃响应的MATLAB 命令:
num=[1]
den=[10,11,11,2] step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图29所示
图 29 p=0.1时系统的单位阶跃曲线
(3)当p=1时,系统闭环传递函数:φ2(s ) =
s +2s +2s +2
3
2
单位阶跃响应的MATLAB 命令:
num=[1]
den=[1,2,2,2] step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图30所示
图 30 p=1时系统的单位阶跃曲线
φ(s ) =(4)当p=10时,系统闭环传递函数:20.1s +1.1s +1.1s +2
3
2
单位阶跃响应的MATLAB 命令:
num=[1]
den=[0.1,1.1,1.1,2] step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图31所示
图 31 p=10时系统的单位阶跃曲线
(5)当p=100时,系统闭环传递函数 :
φ2(s ) =0.01s +1.01s
3
2
+1.01s +2
单位阶跃响应的MATLAB 命令:
num=[1]
den=[0.01,1.01,1.01,2] step(num,den) grid on;
xlabel('t'); ylabel('c(t)') 系统响应曲线如图32所示
图 32 p=100时系统的单位阶跃曲线
由单位反馈时对单位阶跃输入的响应曲线可得表2
由表2可以看出,当p 增大时, 超调量先增大后减小,最后趋近于原二阶系统的值,调整时间一直减小,最后趋近于原系统的调整时间。所以当p 远大于阻尼系数ξ时,可以忽略增加极点对原二阶系统的影响。
3 结论
增加零点时,会增加系统响应的超调量,带宽增大,,当零点实部远大于原二阶系统阻尼系数ξ时,附加零点对系统的影响减小,所以当零点远离虚轴时,可以忽略零点对系统的影响。增加极点时,系统超调量σp %减小,调整时间t s (s)增大,极点离虚轴越近,当系统影响越大当极点实部远大于原二阶系统阻尼系数ξ时,附加极点对系统的影响减小,所以当极点远离虚轴时可以忽略极点对系统的影响。
心得体会
两周的课程设计就这样匆匆结束了,突然感觉时间变得如此之短,而同时,所需要掌握、学习的东西又那么多。
总的来说,这次课程设计学到了不少东西,概括起来有如下几个方面:
第一,加深了对课本知识的理解和掌握。刚开始拿到此次课程设计的题目时,觉得挺简单的,可真正去做的时候才发现很多都不会,大脑一片空白,根本不知道该如何进行。最后,不得不重新拾起课本,将课本上有关的知识仔细认真地看了一遍,才渐渐有了眉目。而通过此次的学习,不仅加深了对以前学过的知识的理解和掌握,同时,又对此次的课程设计有了底。
第二,增强了学习的兴趣。以前学习自动控制专业知识时,总感觉它与我们实际运用联系的不紧密。可是,通过这次课程设计,我才发现,原来我们实际生活中常用的知识均来自于我们所学的课本基础知识。最常用的MATLAB 的仿真,通过对它的熟练应用,可以让我们对自控知识的处理省下不少的精力。
第三,理论要联系实际。虽然这次课程设计我们没有做实物,但通过老师的讲解和指导,让我明白,光靠理论知识是行不通的,我们在做设计时,需要考虑方方面面的东西。我们需要通过理论联系实际,才能设计出满足设计要求的方案。
最后,感谢学校为我们提供这样一次学习锻炼的机会,也衷心感谢老师的细心指导!
参考文献
[1] 胡寿松. 自动控制原理(第四版). 北京:科学出版社,2001
[2] 何联毅,陈晓东. 自动控制原理同步辅导及习题全解. 北京:中国矿业大学出版
社,2006
[3]王万良, 自动控制原理. 高等教育出版社,2008
[4] 谢克明. 自动控制原理. 北京:电子工业出版社,2004 [5] 冯巧林. 自动控制原理. 北京:北京航空航天大学出版社,2007
[6] 刘叔军. MATLAB7.0控制系统应用与实例. 北京:机械工业出版社,2005
本科生课程设计成绩评定表
指导教师签字:
年 月 日
课 程 设 计
题 目 零极点对系统性能的影响分析 学 院 专 业 班 级 姓 名
指导教师
自动化学院 自动化 谭思云
2013 年 12 月 27 日
课程设计任务书
学生姓名: 专业班级:自动化1102班 指导教师: 谭思云 工作单位: 自动化学院
题 目: 零极点对系统性能的影响分析 初始条件:
系统开环传递函数为G 1(s)=
(s/a+1) 1
或,其中G (s)=222
[(s/p)+1](s+s +1) (s+s +1)
G 1(s )是在阻尼系数ξ=0. 5的归一化二阶系统的传递函数上增加了一个零点得到的,G 2(s )是在阻尼系数ξ=0. 5的归一化二阶系统的传递函数上增加了一个极点得到的。
要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体
要求)
(1) 当开环传递函数为G 1(s )时,绘制系统的根轨迹和奈奎斯特曲线; (2) 当开环传递函数为G 1(s )时,a 分别取0.01,0.1,1,10,100时,用Matlab
计算系统阶跃响应的超调量和系统频率响应的谐振峰值,并分析两者的关系;
(3) 画出(2)中各a 值的波特图;
(4) 当开环传递函数为G 2(s )时,绘制系统的根轨迹和奈奎斯特曲线; (5) 当开环传递函数为G 2(s )时,p 分别取0.01,0.1,1,10,100时,绘制
不同p 值时的波特图;
(6) 对比增加极点后系统带宽和原二阶系统的带宽,分析增加极点对系统带宽
的影响;
(7) 用Matlab 画出上述每种情况的在单位反馈时对单位阶跃输入的响应; (8) 对上述任务写出完整的课程设计说明书,说明书中必须写清楚分析计算的
过程,并包含Matlab 源程序或Simulink 仿真模型,说明书的格式按照教务处标准书写。
时间安排:
(1) 课程设计任务书的布置,讲解 (半天) (2) 根据任务书的要求进行设计构思。(半天) (3) 熟悉MATLAB 中的相关工具(一天) (4) 系统设计与仿真分析。(三天) (5) 撰写说明书。 (二天) (6) 课程设计答辩(半天)
指导教师签名:
系主任(或责任教师)签名: 年 月 年 月 日日
目录
摘要 . ..................................................................... 1 1 增加零点对系统的影响 . ................................................... 2 1.1 开环传递函数G 1(s )的根轨迹和奈奎斯特曲线 ........................... 2 1.1.1开环传递函数G 1(s )的根轨迹 ..................................... 2 1.1.2 开环传递函数G 1(s )的奈奎斯特曲线 ............................... 3 1.2 增加不同零点时的阶跃响应分析 ........................................ 3 1.3 系统阶跃响应分析 .................................................... 8 1.4增加不同零点时的伯德图 ............................................. 10 2 增加极点时对系统的影响分析 . ............................................ 13 2.1开环传递函数为G 2(s )时系统的根轨迹和奈奎斯特曲线 .................. 13 2.1.1系统开环传递函数为G 2(s )的根轨迹 .............................. 13 2.1.2开环传递函数G 2(s )的奈奎斯特曲线 .............................. 14 2.2增加不同极点时系统的伯德图 ......................................... 14 2.3增加极点对系统带宽的影响 ........................................... 17 2.4增加极点后系统单位反馈时的单位阶跃响应 ............................. 17 3 结论 . .................................................................. 21 心得体会 . ................................................................ 21
摘要
本次课程设计主要是分析零极点对系统性能的影响。首先从根轨迹、奈奎斯特曲线、伯德图和阶跃响应四方面分析原开环传递函数时的系统性能,然后在原开环传递函数基础上增加一个零点,并且让零点的位置不断变化,分析增加零点之后系统的性能,同时与原系统进行分析比较,发现增加的零点与虚轴的距离决定了对系统影响的大小;再在原开环传递函数基础上增加一个极点,并且令极点位置不断变化,分析增加极点后系统的性能,同时与原系统进行分析比较,同样发现增加的极点与虚轴的距离决定了对系统的影响大小。增加零点时,会增加系统响应的超调量,当零点离虚轴越近,对系统影响越大;当零点远离虚轴时,可以忽略零点对系统的影响。增加极点时,极点离虚轴越近,当系统影响越大,当极点远离虚轴时可以忽略极点对系统的影响。
关键词:零极点 开环传递函数 系统性能 MATLAB 谐振 带宽
1
零极点对系统性能的影响分析
1 增加零点对系统的影响
1.1 开环传递函数G 1(s )的根轨迹和奈奎斯特曲线
1.1.1开环传递函数G 1(s )的根轨迹 已知系统开环传递函数: (s/a+1)
G(s)=2
1
(s+s +1)
系统闭环特征方为
s 2+s +1++1=0
s
恒等变换为 s 2+s +2
+1=0
s
可以看出,如果绘制一个开环传递函数为G (s ) =实际上就是原系统的根轨迹。
在MATLAB 键入程序:n=[1,0] ; d=[1,1,2] ; rlocus(n,d) ;
键入Enter 键,可得图1所示根轨迹图。
s 2+s +2
的系统的根轨迹,
图1 开环传递函数G 1(s )的根轨迹图
2
1.1.2 开环传递函数G 1(s )的奈奎斯特曲线
当a =1 ,用MATLAB 绘奈奎斯特图。 在MATLAB 中键入命令:
G=tf([1,1],[1,1,1]);nyquist(G) 按键Eenter 出现如图2所示奈氏图
图2开环传递函数G 1(s )的奈奎斯特曲线
1.2 增加不同零点时的阶跃响应分析
(1)当a=0.01时
系统闭环传递函数 : φ1(s ) =单位阶跃响应的MATLAB 命令: num=[100,1]; den=[1,101,2]; step(num,den);
grid on;xlabel('t'),ylabel('c(t)'); 系统响应曲线如图3, 由图可得
0. 9-830. 5
σ%=超调量: p 0.5⨯100%=96.6%
s +101s +2
2
系统伯德图的MATLAB 命令: G=tf([100,1],[1,1,1]);bode(G)
3
系统伯德图如图4, 由图4可得
谐振峰值: M
r =39. 6
图3 a=0.01时的单位阶跃曲线
图 4 a=0.01时系统伯德图
(2)当a=0.1时
(系统闭环传递函数为 φ1s ) =
单位阶跃响应的MATLAB 命令: num=[10,1]; den=[1,11,2]; step(num,den);
grid on;xlabel('t');ylabel('c(t)');
系统响应曲线如图5所示,由图可得
4 +s +11s +2
2
超调量
σp %=0. 50⨯. 1500%=78%
图 5 a=0.1时的单位阶跃曲线
系统伯德图的MATLAB 命令:G=tf([10,1],[1,1,1]);bode(G) 系统伯德图如图6所示,
由图可得,谐振峰值: M r =20
图6 a=0.1时系统伯德图
(3)当a=1时
φ(s ) =系统闭环传递函数: 1
num=[1,1] den=[1,2,2]
5
s 2+2s +2
单位阶跃响应的MATLAB 命令:
step(num,den)
grid on;xlabel('t');ylabel('c(t)')
系统响应曲线如7所示,由图可得 超调量:
0. 5
σp %=0.5⨯100%=20.8%
图 7 a=1时的单位阶跃曲线
系统伯德图的MATLAB 命令:G=tf([1,1],[1,1,1]);bode(G);
1系统伯德图如图8所示,由图可得,谐振峰值 M
r =3. 3
4) 当a=10时系统闭环传递函数: φ1(s ) =单位阶跃响应的MATLAB 命令:
num=[0.1,1] den=[1,1.1,2]
6
图 8 a=1时系统伯德图
s +1.1s +2
2
step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图9所示
6-340. 5
由图可得,超调量 σp %=0. ⨯100%=26.8%
图 9 a=10时的单位阶跃曲线 系统伯德图的MATLAB 命令:G=tf([0.1,1],[1,1,1]);bode(G) 系统伯德图如图10所示
由图可得,谐振峰值
M
r =1. 2 6
图10 a=10时系统伯德图
(5)当a=100时
系统闭环传递函: φ1(s ) =单位阶跃响应的MATLAB 命令: num=[0.01,1];
den=[1,1.01,2];
0.01s +1s +1.01s +2
2
step(num,den);
grid on;xlabel('t');ylabel('c(t)'); 系统响应曲线如图11所示 由图可得,超调量:
σp %=0. 50⨯. 1500%=
3 0%
图 11a=1时的单位阶跃曲线
系统伯德图的MATLAB 命令: G=tf([0.01,1],[1,1,1]);bode(G) ; 系统伯德图如图12所示
由图可得谐振峰值 M
r =1. 2
图 12 a=100时系统伯德图
1.3 系统阶跃响应分析
原二阶系统闭环传递函数: φ(s ) =
s +s +2
2
单位阶跃响应的MATLAB 命令: num=[1]
den=[1,1,2] step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图13所示
0. 5
由图可得,超调量: σp %=0.5⨯100%=
30.4%
图13 原二阶系统的单位阶跃曲
系统伯德图的MATLAB 命令:
G=tf(1,[1,1,1]);bode(G)
系统伯德图如图14所示,由图可得,谐振峰值 M
r =1. 2
图14 原二阶系统的伯德图
由表1可知,当M r 增大时,σp %也相应增大。因为增加对零点系统稳态值不产生影响。当a=0.01 时,M r =40,σp %=96.6%, 随着a 的增大,M r 开始减小,σp %也减小,直到a 减小到某值时达到最小,σp %也不再减小;a 继续增大,M r 减小到一个固定的值,σp %也增大,当a 增大到100时,σp %=30%,M r =1.2,接近于原二阶系统的值。由此可知,零点离虚轴越近,对系统暂态性影响越大,零点离虚轴越远,对系统的影响越小。因此,若附加的零点远离虚轴,可忽略它对系统的影响,按原二阶系处理。
1.4增加不同零点时的伯德图
(1)当a=0.01时
系统伯德图的MATLAB 命令:G=tf([100,1],[1,1,1]);bode(G) 系统伯德图如图15所示;
图 15 a=0.01时系统伯德图
(2)当a=0.1时
系统伯德图的MATLAB 命令:G=tf([10,1],[1,1,1]); bode(G) 系统伯德图如图16所示
图16 a=0.1时系统伯德图
(3)当a=1时
系统伯德图的MATLAB 命令:
G=tf([1,1],[1,1,1]); bode(G) 系统伯德图如图17所示
图 17 a=1时系统伯德图
(4)当a=10时
系统伯德图的MATLAB 命令:
G=tf([0.1,1],[1,1,1]);bode(G)
系统伯德图如图18所示
图 18 a=10时系统伯德图
(4)当a=100时
系统伯德图的MATLAB 命令:G=tf([0.01,1],[1,1,1]);bode(G) 系统伯德图如图19所示
图 19 a=100时系统伯德图
由系统伯德图可知,增加零点使系统截止频率增大,
ω=ω
因为
b n
ωc = ωn
所以带宽增大;随着a 增大,截止频率减小,带宽减小,当a ,增大到一定值时,系统截止频率趋近于原二阶系统,截止频率为零。
2 增加极点时对系统的影响分析
2.1开环传递函数为G 2(s )时系统的根轨迹和奈奎斯特曲线
2.1.1系统开环传递函数为G 2(s )的根轨迹
1
2
[(s/p)+1](s+s +1)
已知开环传递函数: G 2(s)=
2[) +1s ](+s +系统闭环特征方程: p
(s 3+s 2+s )
2
+1) =1, 0
恒等变换:
s +s +2
+1=0
=
32
(s +s +s ) 2
可以看出,如果绘制一个开环传递函数G (s ) 际上就是原系统的根轨迹。 在MATLAB 键入程序:
s +s +2
的系统根轨迹,实
n=[1,1,1,0] ;
d=[0,1,1,2] ; rlocus(n,d) ; 键入Enter 键,可得图20所示
图 20 开环传递函数G 1(s )的根轨迹图
2.1.2开环传递函数G 2(s )的奈奎斯特曲线
取p=1制奈奎斯特曲线。在MATLAB 上键入命令:
G=tf([1,1,1,0],[0,1,1,2]);nyquist(G) 按键Eenter 出现如图21所示奈氏图所示
图21开环传递函数G 2(s )奈奎斯特曲线
2.2增加不同极点时系统的伯德图
(1)p=0.01时,在MATLAB 上键入命
G=tf([1],conv([100,1],[1,1,1]));bode(G)
系统伯德图如22所示
图 22 p=0.01时开环传递函数G 2(s )的伯德图
(2)p=0.1时,在MATLAB 上键入命令:
G=tf([1],conv([10,1],[1,1,1])); bode(G);
系统伯德图如23所示
图 23 p=0.1时开环传递函数G 2(s )的伯德图
(3)p=1时,在MATLAB 上键入命令:
G=tf([1],conv([1,1],[1,1,1])); bode(G)
系统伯德图如24所示
图 24 p=1时开环传递函数G 2(s )的伯德图
(4)p=10时,在MATLAB 上键入命令:
G=tf([1],conv([0.1,1],[1,1,1])); bode(G)
系统伯德图如25所示
图 25 p=10时开环传递函数G 2(s )的伯德图
(5)p=100时,在MATLAB 上键入命令:
G=tf([1],conv([0.01,1],[1,1,1])); bode(G)
系统伯德图如26所示
图26 p=100时开环传递函数G 2(s )的伯德图
2.3增加极点对系统带宽的影响
原二阶系统的开环传递函数为G (s ) =在MATLAB 上键入命令:
G=tf([1],[1,1,1]); bode(G)
系统伯德图如图27所示
1
2
s +s +1
图27 原二阶系统的伯德图
由增加极点后的伯德图和原系统的伯德图可知,增加极点后系统截止频率没变化,
因为
ωb =ω
ωc = ω且 ωc =0
所以带宽为零,即增加极点后系统带宽无变化。
2.4增加极点后系统单位反馈时的单位阶跃响应
φ(s ) =(1)当p=0.01时,系统闭环传递函数:2100s +101s
3
2
+101s +2
单位阶跃响应的MATLAB 命令:
num=[1]
den=[100,101,101,2] step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图28所示
图28 p=0.01时系统的单位阶跃曲线
φ(s ) =(2)当p=0.1时,系统闭环传递函数:210s +11s +11s +2
3
2
单位阶跃响应的MATLAB 命令:
num=[1]
den=[10,11,11,2] step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图29所示
图 29 p=0.1时系统的单位阶跃曲线
(3)当p=1时,系统闭环传递函数:φ2(s ) =
s +2s +2s +2
3
2
单位阶跃响应的MATLAB 命令:
num=[1]
den=[1,2,2,2] step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图30所示
图 30 p=1时系统的单位阶跃曲线
φ(s ) =(4)当p=10时,系统闭环传递函数:20.1s +1.1s +1.1s +2
3
2
单位阶跃响应的MATLAB 命令:
num=[1]
den=[0.1,1.1,1.1,2] step(num,den)
grid on;xlabel('t');ylabel('c(t)') 系统响应曲线如图31所示
图 31 p=10时系统的单位阶跃曲线
(5)当p=100时,系统闭环传递函数 :
φ2(s ) =0.01s +1.01s
3
2
+1.01s +2
单位阶跃响应的MATLAB 命令:
num=[1]
den=[0.01,1.01,1.01,2] step(num,den) grid on;
xlabel('t'); ylabel('c(t)') 系统响应曲线如图32所示
图 32 p=100时系统的单位阶跃曲线
由单位反馈时对单位阶跃输入的响应曲线可得表2
由表2可以看出,当p 增大时, 超调量先增大后减小,最后趋近于原二阶系统的值,调整时间一直减小,最后趋近于原系统的调整时间。所以当p 远大于阻尼系数ξ时,可以忽略增加极点对原二阶系统的影响。
3 结论
增加零点时,会增加系统响应的超调量,带宽增大,,当零点实部远大于原二阶系统阻尼系数ξ时,附加零点对系统的影响减小,所以当零点远离虚轴时,可以忽略零点对系统的影响。增加极点时,系统超调量σp %减小,调整时间t s (s)增大,极点离虚轴越近,当系统影响越大当极点实部远大于原二阶系统阻尼系数ξ时,附加极点对系统的影响减小,所以当极点远离虚轴时可以忽略极点对系统的影响。
心得体会
两周的课程设计就这样匆匆结束了,突然感觉时间变得如此之短,而同时,所需要掌握、学习的东西又那么多。
总的来说,这次课程设计学到了不少东西,概括起来有如下几个方面:
第一,加深了对课本知识的理解和掌握。刚开始拿到此次课程设计的题目时,觉得挺简单的,可真正去做的时候才发现很多都不会,大脑一片空白,根本不知道该如何进行。最后,不得不重新拾起课本,将课本上有关的知识仔细认真地看了一遍,才渐渐有了眉目。而通过此次的学习,不仅加深了对以前学过的知识的理解和掌握,同时,又对此次的课程设计有了底。
第二,增强了学习的兴趣。以前学习自动控制专业知识时,总感觉它与我们实际运用联系的不紧密。可是,通过这次课程设计,我才发现,原来我们实际生活中常用的知识均来自于我们所学的课本基础知识。最常用的MATLAB 的仿真,通过对它的熟练应用,可以让我们对自控知识的处理省下不少的精力。
第三,理论要联系实际。虽然这次课程设计我们没有做实物,但通过老师的讲解和指导,让我明白,光靠理论知识是行不通的,我们在做设计时,需要考虑方方面面的东西。我们需要通过理论联系实际,才能设计出满足设计要求的方案。
最后,感谢学校为我们提供这样一次学习锻炼的机会,也衷心感谢老师的细心指导!
参考文献
[1] 胡寿松. 自动控制原理(第四版). 北京:科学出版社,2001
[2] 何联毅,陈晓东. 自动控制原理同步辅导及习题全解. 北京:中国矿业大学出版
社,2006
[3]王万良, 自动控制原理. 高等教育出版社,2008
[4] 谢克明. 自动控制原理. 北京:电子工业出版社,2004 [5] 冯巧林. 自动控制原理. 北京:北京航空航天大学出版社,2007
[6] 刘叔军. MATLAB7.0控制系统应用与实例. 北京:机械工业出版社,2005
本科生课程设计成绩评定表
指导教师签字:
年 月 日