武汉理工大学《自动控制原理》课程设计说明书
1
武汉理工大学《自动控制原理》课程设计说明书
高阶系统性能分析
1 设计目的
三阶及三阶以上的系统通常称为高阶系统,即用高阶微分方程描述的系统。在控制工
程中,高阶系统非常普遍,而分析起来却十分复杂。通过这次课程设计,我们要熟悉用
MATALB 软件对控制系统进行分析,掌握用 MATLAB 绘制闭环系统根轨迹和系统响应曲线,
并求取动态和稳态性能指标。
2 设计任务
设单位系统的开环传递函数为
( )
G s
p
(
K s
1
2
s
1)
4)(
2
s
1)
2
(
s s
(1)当 1
2
时,绘制根轨迹并用 Matlab 求取单位阶跃响应、单位斜坡响应,并
0
求取动态和稳态性能指标
(2)当 1
0.2,
2
0
和
1
5,
2
0
时,分别绘制闭环系统根轨迹并用 Matlab 求取单位
阶跃响应、单位斜坡响应,并求取动态和稳态性能指标
(3)当 1
0,
2
0.2
和
1
0,
2
5
时,分别绘制闭环系统根轨迹并用 Matlab 求取单位
阶跃响应、单位斜坡响应,并求取动态和稳态性能指标
(4)比较上述三种情况的仿真结果,分析原因,说明增加零极点对系统性能的影响。
1
武汉理工大学《自动控制原理》课程设计说明书
3 设计步骤
3.1 三阶系统性能分析
当 1 = 2 =0 时,
( )
G s
p
K
2
2
(
s s
s
4)
= 3
s
K
22
s
4
s
,很明显是一个三阶系统。
3.1.1 根轨迹图
根轨迹反映了闭环特征根随参量 K 变化的规律,而闭环特征根与系统性能密切相关,
通过根轨迹来分析系统性能,具有直观、方便的特点。
求零极点的 MATLAB 文本:
num=[1];
den=[1,2,4,0];
pzmap(num,den);
title('pole-zero Map')
求根轨迹的 MATLAB 文本:
num=[1];
den=[1,2,4,0];
rlocus(num,den);
sgrid
title('Root Locus')
%描述传递函数的多项式
%求零极点
%打印标题
%描述传递函数的多项式
%绘制根轨迹
%绘制栅格
%打印标题
图 1 零极点图
图 2 根轨迹图
由图 2 中可以看出,当开环增益 K 从零到无穷大变化时,图中的根轨迹就会越过虚轴
进入右半 s 平面,从而使系统变得不稳定。根轨迹越过虚轴进入右半 s 平面,则其交点的
K 值就是临界稳定开环增益。在上面根轨迹的 MATLAB 文本后面加上一句命令:
2
武汉理工大学《自动控制原理》课程设计说明书
[k,poles]=rlocfind(num,den)
运行后将十字光标定位到根轨迹与虚轴交点处,即可得到临界稳定的开环增益 K=8。所以,
当 08 时系统发散;K=8 时,系统处于临界稳定状态。
3.1.2 单位阶跃响应
由三阶系统的的开环传递函数可以求出闭环传递函数为:
( )
s
K
2
3
s
2
s
4
s K
%给出 K 的不同取值
%K=5 时的单位阶跃响应
%K=8 时的单位阶跃响应
%K=10 时的单位阶跃响应
K=5,8,10 时的单位阶跃响应 MATLAB 文本:
K=[5 8 10];
t=[0:0.01:20];
num1=K(1);
den1=[1,2,4,K(1)];
y1=step(num1,den1,t);
num2=K(2);
den2=[1,2,4,K(2)];
y2=step(num2,den2,t);
num3=K(3);
den3=[1,2,4,K(3)];
y3=step(num3,den3,t);
subplot(311),plot(t,y1);
subplot(312),plot(t,y2);
subplot(313),plot(t,y3);
gtext('K=5');
gtext('K=8');
gtext('K=10');
运行结果见图 3。
图 3 单位阶跃响应
3
武汉理工大学《自动控制原理》课程设计说明书
3.1.3 单位斜坡响应
系统稳定(取 K=5)时,单位斜坡响应的 MATLAB 文本:
num=[5];
den=[1,2,4,5];
t=0:0.0005:10;
u=t;
lsim(num,den,u,t);
grid
%描述系统的闭环传递函数
%求系统的单位斜坡响应
运行结果如图 4。
图 4 系统单位斜坡响应
4
武汉理工大学《自动控制原理》课程设计说明书
3.1.4 性能指标
3.1.4.1 动态性能
描述稳定的系统在单位阶跃函数作用下,动态过程随时间 t 的变化状况的指标,称为
动态性能指标。系统稳定(K=5)时,求取动态性能指标的 MATLAB 文本如下:
%求系统单位阶跃响应
%求响应峰值
%求响应终值
%求超调量
%求延迟时间
%求上升时间
%求峰值时间
num=[5];
den=[1,2,4,5];
y=step(num,den,t);
maxy=max(y)
yss=y(length(t))
pos=(maxy-yss)/yss
n=1;
while y(n)<0.5*yss
n=n+1;end
td=t(n)
n=1;
while y(n)<0.1*yss
n=n+1;end
m=1;
while y(m)<0.9*yss
m=m+1;end
tr=t(m)-t(n)
n=1;
while y(n)0.95*yss)&(y(L)<1.05*yss)
%求调节时间
执行程序后,得到运行结果:
0
0
37.4
0
0
,
dt
1.07
s,
rt
0.91
s,
pt
2.30
s,
st
11.31
s。
5
武汉理工大学《自动控制原理》课程设计说明书
3.1.4.2 稳态性能
由上面的程序运行结果可知,单位阶跃函数作用下,系统的响应终值 yss=1,故单位阶
跃响应的稳态误差为 1sse =yss-1=0。另外,利用 Laplace 变换终值定理可方便的求出系统单
位斜坡响应的稳态误差:
e
ss
(
)
lim ( )
sE s
s
0
lim
0
s
( )
sR s
( )
( )
H s G s
1
,式中 R(s)= 1/ 2s 。
求单位斜坡响应稳态误差的 MATLAB 文本:
syms s
ess=limit((1/s)/(1+5/(s*s*s+2*s*s+4*s)),s,0)
%求
s 时的极限
0
运行结果:ess=4/5,即单位斜坡响应的稳态误差 2sse =4/5=0.8。
6
武汉理工大学《自动控制原理》课程设计说明书
3.2 增加一个开环零点
( )
G s
p
(
K s
1
2
s
1)
4)(
2
2
(
s s
s
1)
点后开环传递函数分别为: ( )
pG s =
,当 1
(0.2
K
3
2
s
s
3.2.1 根轨迹图
0.2,
2
0
和
1
s
2
1)
4
s
和 ( )
pG s =
s
0
5,
2
1)
(5
K s
2
3
2
4
s
时,即增加一个开环零
。
s
%描述传递函数的多项式
%绘制根轨迹
%绘制栅格
%打印标题
%求临界稳定时的 K 值
1 =0.2 时求闭环跟轨迹的 MATLAB 文本:
num=[0.2,1];
den=[1,2,4,0];
rlocus(num,den);
sgrid
title('Root Locus')
[k,poles]=rlocfind(num,den)
2 =5 时求闭环根轨迹的 MATLAB 文本:
num=[5,1];
den=[1,2,4,0];
rlocus(num,den);
sgrid
title('Root Locus')
%绘制根轨迹
%绘制栅格
%打印标题
%描述传递函数的多项式
运行程序,结果见图 5 和图 6。
图 5
1 =0.2 时的根轨迹
图 6
1 ==5 时的根轨迹图
在得到 1 =0.2 时的根轨迹后,将十字光标定位到根轨迹与虚轴交点处,可求出系统临
界稳定时 K=13.3。 1 =5 时,由根轨迹图可以看出,K 从 0 到无穷大变化系统都是稳定的。
可见,增加开环零点后可以改善系统的稳定性能。
7