实验一 控制系统的稳定性分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一控制系统的稳定性分

班级:光伏2班

姓名:王永强

学号:1200309067

实验一控制系统的稳定性分析

一、实验目的

1、研究高阶系统的稳定性,验证稳定判据的正确性;

2、了解系统增益变化对系统稳定性的影响;

3、观察系统结构和稳态误差之间的关系。

二、实验任务

1、稳定性分析

欲判断系统的稳定性,只要求出系统的闭环极点即可,而系统的闭环极点就是闭环传递函数的分母多项式的根,可以利用MATLAB中的tf2zp函数求出系统的零极点,或者利用root函数求分母多项式的根来确定系统的闭环极点,从而判断系统的稳定性。

(1)已知单位负反馈控制系统的开环传递函数为

0.2( 2.5)

()

(0.5)(0.7)(3)

s

G s

s s s s

+

=

+++,

用MATLAB编写程序来判断闭环系统的稳定性,并绘制闭环系统的零极点图。在MATLAB命令窗口写入程序代码如下:

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=ploy2str(dc{1},'s')

运行结果如下:

Gctf =

s + 2.5

---------------------------------------

s^4 + 4.2 s^3 + 3.95 s^2 + 2.05 s + 2.5

Continuous-time transfer function.

dens是系统的特征多项式,接着输入如下MATLAB程序代码:

den=[1,4.2,3.95,1.25,0.5]

p=roots(den)

运行结果如下:

p =

-3.0058 + 0.0000i

-1.0000 + 0.0000i

-0.0971 + 0.3961i

-0.0971 - 0.3961i

p为特征多项式dens的根,即为系统的闭环极点,所有闭环极点都是负的实部,因此闭环系统是稳定的。

下面绘制系统的零极点图,MATLAB程序代码如下:

z=-2.5

p=[0,-0.5,-0.7,-3]

k=1

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.0297 + 0.0000i

-1.3319 + 0.0000i

0.0808 + 0.7829i

0.0808 - 0.7829i k =1

输出零极点分布图

(2)已知单位负反馈控制系统的开环传递函数为

( 2.5)

()

(0.5)(0.7)(3)

k s

G s

s s s s

+

=

+++,

当取k=1,10,100用MATLAB编写程序来判断闭环系统的稳定性。

只要将(1)代码中的k值变为1,10,100,即可得到系统的闭环极点,从而判断系统

的稳定性,并讨论系统增益k变化对系统稳定性的影响。

1.当K=1时

在MATLAB命令窗口写入程序代码如下:

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=ploy2str(dc{1},'s')

运行结果如下:

Gctf =

s + 2.5

---------------------------------------

s^4 + 4.2 s^3 + 3.95 s^2 + 2.05 s + 2.5

Continuous-time transfer function.

接着输入如下MATLAB程序代码:

den=[1,4.2,3.95,1.25,0.5]

p=roots(den)

运行结果如下:

p =

-3.0058 + 0.0000i

-1.0000 + 0.0000i

-0.0971 + 0.3961i

-0.0971 - 0.3961i

下面绘制系统的零极点图,MATLAB程序代码如下:

z=-2.5

p=[0,-0.5,-0.7,-3]

k=1

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.0297 + 0.0000i

-1.3319 + 0.0000i

0.0808 + 0.7829i

0.0808 - 0.7829i

k =1

输出零极点分布图

2.当K=10时

在MATLAB命令窗口写入程序代码如下: 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=ploy2str(dc{1},'s')

运行结果如下:

相关文档
最新文档