控制系统的根轨迹实验报告

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

控制系统的根轨迹作图

实验报告

班级:******

姓名:*****

学号:******

指导老师:****

学年:2012至2013第二学期

一、实验目的

1.用matlab完成控制系统的建立。

2.了解系统根轨迹作图的一般规律,能熟练完成控制系统的根轨迹绘图。

3.利用根轨迹图进行系统分析。

二、实验内容

1.系统模型建立

sys = tf(num,den)

sys = zpk(z,p,k)

sys = ss(a,b,c,d)

sys = frd(response,frequencies)

该主题相关matlab帮助资料:Matlab help——contents——control system toolbox ——building models

2.根轨迹绘图

rlocus(num,den)

rlocus(num,den,k)

r=rlocus(num,den)

[z,p,k]=zpkdata(sys,’v’)

该主题相关matlab帮助资料:Matlab help——contents——getting started——control system toolbox——building models

3.根轨迹分析

Sisotool()

该主题相关matlab帮助资料:Matlab help——contents——getting started——control system toolbox——root locus design

例1:传递函数为:

1.5

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

s^2 + 14 s + 40.02

sys_tf = tf(1.5,[1 14 40.02]) 或num=1.5,den=[1 14 40.02],sys_tf(num,den); 例2:传递函数

1.5

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

s^2 + 14 s + 40.02

matlab表示:s = tf('s');

sys_tf = 1.5/(s^2+14*s+40.02) 根轨迹如下图:

例3:零极点增益:

1.5

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

(s+9.996) (s+4.004)

matlab表示:sys_zpk = zpk([],[-9.996 -4.004], 1.5) 根轨迹如图:

例4:系统开环传递函数

)2)(1()(++=

s s s k s Go g

根轨迹作图程序为:

k=1;z=[];p=[0,-1,-2];[den,num]=zp2tf(z,p,k); rlocus(num,den) 根轨迹如图:

例5:给定系统开环传递函数Go(s)的多项式模型,作系统的根轨迹图。其计算公式为

1

)()

()(-=⋅=

s den s num k s Go

式中,k 为根轨迹增益,num 为开环传递函数Go(s)的分子多项式系数向量,den

为分母多项式系数向量。

函数格式1:开环增益k 的范围自动设定。

函数格式2:开环增益k 的范围可以由用户设定。

函数格式3:返回变量格式。计算所得的闭环根r (矩阵)返回至matlab 命令窗口,不作图。

函数格式4:返回变量格式。计算所得的闭环根r (矩阵)和对应的开环增益k (向量)返回至matlab 命令窗口,不作图。 函数格式5:从系统中提取零极点模型的参数。

更详细的命令说明,可以键入“help rlocus ”等帮助命令查询。 例如,系统开环传递函数

)2)(1()(++=

s s s k s Go g

根轨迹作图程序为:

k=1;z=[];p=[0,-1,-2];[den,num]=zp2tf(z,p,k); rlocus(num,den)

根轨迹如图1所示:

图1 根轨迹图 pzmap(num,den)

[p,z]=pzmap(num,den)

例6:给定单输入-单输出系统(SISO )的传递函数

)()()(s den s num s G =

分子多项式系数向量num 和分母多项式系数向量den ,在s 平面作零极点图。 函数格式1:计算零极点并作图。

函数格式2:返回变量格式。计算所得的零极点向量p ,z 返回至matlab 命令窗口,不作图。 例7:传递函数

20144)

1(2)(23

+++-=s s s s s G

程序为:num=[2,-2],den=[1,4,14,20],pzmap(num,den) 零极点图如图2所示

图2 零极点图

[k,r]=rlocfind(num,den)

此函数的功能是在作好的根轨迹图上,确定闭环位置的增益k和闭环根r(向量)的值。该函数执行前,先执行命令rlocus(num,den),作出根轨迹图,然后再执行该命令,出现提示语句“select a point in the graphics window”,要求在根轨迹图上选定闭环根的位置。将鼠标移至根轨迹图选定位置,单击左键确定,图上出现“+”标记,在matlab平台上即得到了该点的增益k和闭环根r的返回变量值。

三、思考题

1)下面是一伺服电机的传递函数,如何在matlab中表示该模型?

40000000

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

s (s+250) (s^2 + 40s + 9e004)

2)给定如下技术指标:前2%启动时间不超过0.05秒;最大超调量不超过5%。运用根轨迹法完成该系统的设计。

sys1=tf(4e7,[1 250 0])

sys2=tf(1,[1 40 9e4])

sys=series(sys1,sys2)

答:

1)传递函数在matlab中表示代码:

s=tf('s');sys=40000000/(s*(s+250)*(s^2+40*s+90000));

绘制根轨迹如下图:

相关文档
最新文档