控制系统的根轨迹实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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));
绘制根轨迹如下图: