- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验5线性系统的稳定性和稳态误差分析.
实验五 自动控制系统的稳定性和稳态误差分析
一、实验目的
1、研究高阶系统的稳定性,验证稳定判据的正确性;
2、了解系统增益变化对系统稳定性的影响;
3、观察系统结构和稳态误差之间的关系。
二、实验任务
1、稳定性分析
欲判断系统的稳定性,只要求出系统的闭环极点即可,而系统的闭环极点就是闭环传递函数的分母多项式的根,可以利用MATLAB中的tf2zp函数求出系统的零极点,或者利用root函数求分母多项式的根来确定系统的闭环极点,从而判断系统的稳定性。
(1)已知单位负反馈控制系统的开环传递函数为,用MATLAB编写程序来判断闭环系统的稳定性,并绘制闭环系统的零极点图。
在MATLAB命令窗口写入程序代码如下:
z=-2.5
p=[0,-0.5,-0.7,-3]
k=0.2
Go=zpk(z,p,k)
Gc=feedback(Go,1)
Gctf=tf(Gc)
dc=Gctf.den
dens=poly2str(dc{1},s)
运行结果如下:
dens=
s^4 + 4.2 s^3 + 3.95 s^2 + 1.25 s + 0.5
dens是系统的特征多项式,接着输入如下MATLAB程序代码:
den=[1,4.2,3.95,1.25,0.5]
p=roots(den)
运行结果如下:
p =
-3.0058
-1.0000
-0.0971 + 0.3961i
-0.0971 - 0.3961i
p为特征多项式dens的根,即为系统的闭环极点,所有闭环极点都是负的实部,因此闭环系统是稳定的。
下面绘制系统的零极点图,MATLAB程序代码如下:
z=-2.5
p=[0,-0.5,-0.7,-3]
k=0.2
Go=zpk(z,p,k)
Gc=feedback(Go,1)
Gctf=tf(Gc)
[z,p,k]=zpkdata(Gctf,v)
pzmap(Gctf)
grid
运行结果如下:
z =
-2.5000
p =
-3.0058
-1.0000
-0.0971 + 0.3961i
-0.0971 - 0.3961i
k =
0.2000
输出零极点分布图如图3-1所示。
图3-1 零极点分布图
(2)已知单位负反馈控制系统的开环传递函数为,当取=1,10,100用MATLAB编写程序来判断闭环系统的稳定性。
只要将(1)代码中的k值变为1,10,100,即可得到系统的闭环极点,从而判断系统的稳定性,并讨论系统增益k变化对系统稳定性的影响。
MATLAB实验程序:
K=1时
z=-2.5;
p=[0,-0.5,-0.7,-3];
k=1;
Go=zpk(z,p,k);
Gc=feedback(Go,1);
Gctf=tf(Gc);
dc=Gctf.den;
dens=poly2str(dc{1},s)
dens =
s^4 + 4.2 s^3 + 3.95 s^2 + 2.05 s + 2.5
den=[1,4.2,3.95,1.25,2.5];
p=roots(den)
p =
-2.8694
-1.5916
0.1305 + 0.7283i
0.1305 - 0.7283i
K=10时
z=-2.5;
p=[0,-0.5,-0.7,-3];
k=10;
Go=zpk(z,p,k);
Gc=feedback(Go,1);
Gctf=tf(Gc);
dc=Gctf.den;
dens=poly2str(dc{1},s)
dens =
s^4 + 4.2 s^3 + 3.95 s^2 + 11.05 s + 25
den=[1,4.2,3.95,11.05,25];
p=roots(den)
p =
0.6086 + 1.7971i
0.6086 - 1.7971i
-3.3352
-2.0821
K=100时
z=-2.5;
p=[0,-0.5,-0.7,-3];
k=100;
Go=zpk(z,p,k);
Gc=feedback(Go,1);
Gctf=tf(Gc);
dc=Gctf.den;
dens=poly2str(dc{1},s)
dens =
s^4 + 4.2 s^3 + 3.95 s^2 + 101.05 s + 250
den=[1,4.2,3.95,101.05,250];
p=roots(den)
p =
1.8058 + 3.9691i
1.
文档评论(0)