1.实验目的
1) 掌握MATLAB软件绘制根轨迹的方法。
2) 分析参数变化对根轨迹的影响。
3) 利用根轨迹法对控制系统性能进行分析。
2.实验仪器
1) PC机一台
2) MATLAB软件
3.实验原理
(1) 根轨迹的概念
经典控制理论中,为了避开直接求解高阶特征方程式根时遇到的困难,提出了一种图解求根的方法,即根轨迹法。根轨迹是指当系统的某个参数从零变化到无穷时,闭环特征方程的根在复平面上的变化曲线。
常规根轨迹一般取开环增益K作为可变参数,根轨迹上的点应满足根轨迹方程:
其中---开环零点, ---开环极点, ---根轨迹增益,是一个变化的参数(),,为一常数。系统结构图如下:
图2-1 闭环系统结构图
闭环特征根(即根轨迹上的点)应满足
(1)幅值条件:;
(2)相角条件:。
(2)用MATLAB软件绘制根轨迹
MATLAB7.0提供的工具箱给出了一系列关于根轨迹的函数,如表2-1所示。使用这些函数能够很方便地绘制出系统的常规根轨迹和参数根轨迹,还能基于根轨迹对系统性能进行分析。
表2-1 根轨迹函数
函数名 | 函功能描述 |
pzmap | 绘制零极点 |
rlocfind | 计算给定根轨迹增益 |
rlocus | 计算并绘制根轨迹 |
rltool | 根轨迹设计GUI工具 |
sgrid | 绘制连续时间系统根轨迹和零极点图中的阻尼系数和自然频率网格 |
zgrid | 绘制离散时间系统根轨迹和零极点图中的阻尼系数和自然频率网格 |
调用格式:pzmap(sys); [p,z]=pzmap(sys)
② rlocfind
调用格式:[k,poles]=rlocfind(sys); [k,poles]=rlocfind(sys,p)
③ rlocus
调用格式:rlocus(sys); rlocus(sys,k); [r,k]=rlocus(sys); r=rlocus(sys,k)
④ rltool
调用格式:rltool(plant); rltool(plant,comp)
⑤ sgrid
调用格式:sgrid; sgrid(z,wn)
⑥ zgrid
调用格式:zgrid; zgrid(z,wn)
4.实验内容与步骤
系统的开环传递函数:
绘制系统的根轨迹图。
程序: num=[1];
den=[1 3 2 0];
rlocus(num,den)
执行后得到如下图形:
(1)采用上述方法绘制开环传递函数
当a=1, 0.5, 8, 10时系统的根轨迹,记录根轨迹图并分析。
(2)绘制开环传递函数
的闭环根轨迹,并确定根轨迹上任意点处的值及对应的闭环特征根。
num=[1 5];
den=[1 1 6 0];
rlocus(num,den)
[k,p]=rlocfind(num,den)
gtext(‘k=0.5’)
执行时先画出了根轨迹,并提示用户在图形窗口中选择根轨迹上的一点,以计算出增益及相应的极点。这时将十字光标放在根轨迹与虚轴的交点处,可得
k=0.5072
p= -3.2271
-0.21
-0.8808
输入如下语句:
K=10;s1=tf([10 10*5],[1 5 6 0]);
sys=feedback(s1,1);
step(sys);
impulse(sys);
可以求出时的单位阶跃响应和冲激响应。
按照上述方法记录时的单位阶跃响应和冲激响应曲线。
★ 按照上述方法绘制开环传递函数的闭环根轨迹,确定与虚轴交点处的值。
a.
b. 。
利用语句: s1=conv([1 0],[1 4]);
s2=conv(s1,[1 4 0]); den=s2;
(3)一种具有高性能微型机器人的传递函数为:
(a)画出系统的根轨迹图;
(b)求使闭环系统稳定的增益范围。
MATLAB程序:z=[-1,-2,-3]; p=[0,0,0,1]; k=10; G=zpk(z,p,k); rlocus(G);
sys=feedback(G,1); step(sys);
由根轨迹图和运行数据知,当时,闭环系统稳定?与之对应的振荡频率为多少?
5.实验报告
1画出各系统根轨迹图并讨论;
2确定根轨迹上的分离点、与虚轴的交点;
3从根轨迹上能分析系统的性能(稳定性、动态响应)。
思考题
1. 在实验(1)中,不同值构成的根轨迹若画在一张图上会是什么样子?若值固定,以为参数的系统参数根轨迹应该如何在MATLAB中画出?
2. 在实验(2)中,根轨迹上具有相同开环增益值的点应有几个?
3.在实验(3)中,请思考开环极点对使系统稳定的值范围和系统闭环极点位置的影响。