00实验三 基于MATLAB的根轨迹绘制与性能分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四基于MATLAB的根轨迹绘制与性能分析
[实验目的]
1.掌握MATLAB下的根轨迹绘制方法;
2.学会利用根轨迹进行系统分析。
[实验指导]
1.根轨迹作图函数(命令):rlocus( )
调用格式:
①rlocus(sys) 或rlocus(num,den)
②rlocus(sys,k)
①②画根轨迹图,①变化参量(一般是根轨迹增益)范围系统自动给出;
②变化参量(一般是根轨迹增益)范围在程序中给出;
③r=rlocus(sys)
④ [r,k]=rlocus(sys)
③④不画根轨迹图,③返回闭环根向量;④返回闭环根向量(r)和变化参量(k)。
2.根与根轨迹增益的求取
⑴在根轨迹上点击,可得到该点的根值和对应的根轨迹增益值。
⑵使用计算给定根的根轨迹增益的函数(命令):rlocfind( )
调用格式:
①[k,poles]=rlocfind(sys)
②[k,poles]= rlocfind(sys,p)
使用方法:
①首先,当前根轨迹已绘出。运行该命令时,在根轨迹图中显示出十字光标,当用户选择其中一点时,其相应的增益由k 记录,与增益相关的所有极点记录poles 中;同时,在命令行窗口显示出来。
②事先事先给出极点p ,运行该命令时,除了显示出该根对应的增益以外,还显示出该增益对应的其它根。
3.开环零点极点位置绘图函数(命令): pzmap( ) 调用格式:
① pzmap(sys) ② [p,z]=pzmap(sys) 函数功能:
给定系统数学模型,作出开环零点极点位置图。
① 零点极点绘图命令。零点标记为“+”,极点标记为“o”。 ② 返回零点极点值,不作图。 4.根轨迹渐进线的绘制
当根轨迹渐进线与实轴的交点σa 已求出后,可得到方程11()n m
a K s σ-=--,
这是根轨迹渐进线的轨迹方程。
将1()()
n m
a K G s s σ-=
-作为一个开环传递函数,录入到MATLAB 中,再使用根
轨迹作图函数(命令)rlocus( ),生成的轨迹就是原根轨迹的渐进线。 5.举例
例1:开环传递函数1
()(1)(2)
K G s s s s =++绘制其闭环根轨迹。
程序:
>> z=[];p=[0,-1,-2];k=1;sys=zpk(z,p,k);rlocus(sys)
运行结果:
Root Locus
Real Axis
I m a g A x i s
-6
-5
-4
-3
-2
-1
1
-4
-3-2-101
234
加渐进线程序与结果:
>> z1=[];p1=[-1,-1,-1];k1=1;sys1=zpk(z1,p1,k1);hold on;rlocus(sys1)
Root Locus
Real Axis
I m a g A x i s
-4
-3-2-101234
例2;增加零点z=-3后根轨迹的变化 程序与结果:
>>z=[-3];p=[0,-1,-2];k=1;sys=zpk(z,p,k);rlocus(sys)
Root Locus
Real Axis
I m a g A x i s
-3
-2.5
-2
-1.5-1
-0.5
-8
-6-4-202
46
8
例3;在区间z=-4~z=-2零点变化后根轨迹的变化 程序与结果:
p=[0,-1,-2];k=1;for x=-4:0.2:-2;z=[x];sys=zpk(z,p,k);hold on;figure(7);rlocus(sys);end
Root Locus
Real Axis
I m a g A x i s
-4-3.5-3-2.5-2-1.5-1-0.50
-15
-10
-5
5
10
15
例4:对例1根轨迹使用rlocfind( )命令的情况 程序:
>> z=[];p=[0,-1,-2];k=1;sys=zpk(z,p,k);rlocus(sys);[k,poles]=rlocfind(sys)
运行结果:
Select a point in the graphics window selected_point = -0.0433 + 1.3259i k =
5.1264 poles =
-2.9169 -0.0416 + 1.3251i -0.0416 - 1.3251i
Root Locus
Real Axis
I m a g A x i s
-6
-5
-4
-3
-2
-1
1
-4
-3-2-101
23
4
例5:开环传递函数3215432(234)
()35791
K s s s G s s s s s s +++=+++++绘制其闭环根轨迹。
程序:
>> n=[1 2 3 4];d=[1 3 5 7 9 1];sys=tf(n,d);rlocus(sys)
运行结果: