用MATLAB进行控制系统的动态性能的分析

更新时间:2024-05-26 16:38:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

MATLAB分析

1 MATLAB函数编程

1.1 传递函数的整理

已知三阶系统的闭环传递函数为G(s)?2.71(s?1)(s2?0.8s?0.64)a,

整理成一般式得G(s)=

2.7a,其中a为未知32s?(0.8?a)s?(0.64?0.8a)s?0.64a参数。从一般式可以看出系统没有零点,有三个极点。(其中一个实数极点和一对共轭复数极点)

1.2 动态性能指标的定义

上升时间tr:指响应从终值10%上升到终值90%所需的时间;对于有振荡 系统,亦可定义为响应从零第一次上升到终值所需的时间。上升时间是系统 响应速度的一种度量。上升时间越短,响应速度越快。

峰值时间tp:指响应超过其终值到达第一个峰值所需的时间。 调节时间ts:指响应到达并保持在终值?5%内所需的最短时间。

超调量 σ%:指响应的最大偏离量h(tp)与终值h(∞)的差与终值h(∞)比的百分数,即σ%=

h(tp)?h(?)h(?)×100%

若h(tp)

在实际应用中,常用的动态性能指标多为上升时间、调节时间和超调量。通常,用tr或tp评价系统的响应速度;用σ%评价系统的阻尼程度;而ts是同时反映响应速度和阻尼程度的综合性能指标。应当指出,除简单的一、二阶系统外,要精确确定这些动态性能指标的解析表达式是很困难的。

1.3 MATLAB函数编程求系统的动态性能

1

根据三阶系统闭环传递函数的一般表达式,在MATLAB的Editor中输入程序: num=[2.7a]

den=[1,0.8+a,0.64+a,0.64a] t=0:0.01:20

step(num,den,t)

[y,x,t]=step(num,den,t) %求单位阶跃响应 maxy=max(y) %响应的最大偏移量 yss=y(length(t)) %响应的终值 pos=100*(maxy-yss)/yss %求超调量 for i=1:2001

if y(i)==maxy n=i;end end

tp=(n-1)*0.01 %求峰值时间 y1=1.05*yss y2=0.95*yss i=2001 while i>0 i=i-1

if y(i)>=y1|y(i)<=y2;m=i;break end end

ts=(m-1)*0.01 %求调节时间 title('单位阶跃响应') grid

2 三阶系统闭环主导极点及其动态性能分析

2.1 三阶系统的近似分析

根据主导极点的概念,可知该三阶系统具有一对共轭复数主导极点s1= -0.4?0.693j,因此该三阶系统可近似成如下的二阶系统:

2.7 G(s)≈2

s?0.8s?0.64再利用MATLAB的零极点绘图命令pzmap,可得该二阶系统的零、极点分布,在 Editor里面编写如下程序:

H=tf([2.7],[1 0.8 0.64]);grid pzmap(H);

得到零极点分布图如下:

2

2.2 编程求解动态性能指标

根据以上求解动态性能的MATLAB函数程序,在编辑器里面编写以下程序,得到近似二阶系统的单位阶跃响应和动态性能指标。 num=[2.7]

den=[1,0.8,0.64] t=0:0.01:20

step(num,den,t)

[y,x,t]=step(num,den,t) %求单位阶跃响应 maxy=max(y) %响应的最大偏移量 yss=y(length(t)) %响应的终值 pos=100*(maxy-yss)/yss %求超调量 for i=1:2001

if y(i)==maxy n=i;end end

tp=(n-1)*0.01 %求峰值时间 y1=1.05*yss y2=0.95*yss i=2001

3

while i>0 i=i-1

if y(i)>=y1|y(i)<=y2;m=i;break end end

ts=(m-1)*0.01 %求调节时间 title('单位阶跃响应') grid

在Editor里面保存好程序,点击运行程序的命令图标MATLAB命令框输出: i=662 ts=6.6100 MATLAB输出的阶跃响应曲线为:

双击Figure1图形界面,打开单位阶跃响应的属性编辑器:

4

如图,在Options选项中,将调节时间属性设为?5%,将上升时间属性设为从10%到90%。再在Figure1图形界面单机右键,将Characteristics的四个子选项Peak Responses、Setting Time、Rise Time、Steady State全选中,得到如Figure1中的四个蓝色的点。将光标分别移到蓝点上,图形上就会显示该点的性质参数。 因此,此系统的动态性能指标为: 最大偏离量h(tp)=4.91 终值h(∞)=4.22 上升时间tr=2.05 峰值时间tp=4.53 调节时间ts=6.61 超调量 σ%=16.3

3 三阶系统的单位阶跃响应

3.1 高阶系统单位阶跃响应

高阶系统传递函数一般可以表示为

M(s)bmsm?bm?1sm?1???b1s?b0?(s)???D(s)ansn?an?1sn?1???a1s?a0

5

K?(s?zi)m?(s??j?1i?1nn?m (3-18)

j)式中,K?bman,由于M(s),D(s)均为实系数多项式,故闭环零点zi、极点?j只能是实根或共轭复数。设系统闭环极点均为单极点,系统单位阶跃响应的拉氏变换可表示为

m1 C(s)??(s)??sK?(s?zi)s?(s??j)j?1i?1n?

M(0)1nM(s)???

D(0)sj?1sD?(s)s??j1 s??j(3-19)

对上式进行拉氏反变换可得

M(0)nM(s)?? c(t)?D(0)j?1sD?(s)?e?kt?

s??j

M(0)M(s)??D(0)?i???isD?(s)?e??it?

s??i

?i???jAe????idi?itsin??dit??i?

(3-20)

可见,除常数项M(0)D(0)外,高阶系统的单位阶跃响应是系统模态的组合,组合系数即部分分式系数。模态由闭环极点确定,而部分分式系数与闭环零点、极点分布有关,所以,闭环零点、极点对系统动态性能均有影响。当所有闭环极点均具有负的实部,即所有闭环极点均位于左半s平面时,随时间t的增加所有模态均趋于零(对应瞬态分量),系统的单位阶跃响应最终稳定在M(0)D(0)。很明显,闭环极点负实部的绝对值越大,相应模态趋于零的速度越快。在系统存在重根的情况下,以上结论仍然成立。

3.2 当a已知时三阶系统的阶跃响应曲线

3.2.1 当a=0.84时系统的阶跃响应曲线

此时三阶系统的一般表达式为:

2.268G(s)=3,将分子分母的系数代入1.3所述MATLAB程序

s?1.64s2?1.312s?0.5376中,得到:

6

num=[2.268]

den=[1,1.64,1.312,0.5376] t=0:0.01:20

step(num,den,t)

[y,x,t]=step(num,den,t) %求单位阶跃响应 maxy=max(y) %响应的最大偏移量 yss=y(length(t)) %响应的终值 pos=100*(maxy-yss)/yss %求超调量 for i=1:2001

if y(i)==maxy

n=i;end

end

tp=(n-1)*0.01 %求峰值时间 y1=1.05*yss y2=0.95*yss i=2001 while i>0 i=i-1

if y(i)>=y1|y(i)<=y2;m=i;break end end

ts=(m-1)*0.01 %求调节时间 title('单位阶跃响应') grid

保存并运行程序,得到单位响应曲线:

从阶跃响应曲线图中得到系统的动态性能指标:

7

最大偏离量h(tp)=4.59,终值h(∞)=4.22,上升时间tr=2.81,峰值时间

tp=6.07,调节时间ts=7.48,超调量 σ%=8.74。

3.2.2 当a=2.1时系统的阶跃响应曲线

三阶系统的一般表达式为:

5.67G(s)=3,将3.2.1程序中分子分母的系数替换为此时的系

s?2.9s2?2.32s?1.344数,程序其余部分不变。运行程序得到阶跃响应曲线如下:

将鼠标分别移动的图中四个蓝点处,得到动态性能指标:

h(tp)=4.85,h(∞)=4.22,tr=2.23,tp=5.09,ts=7.1,σ%=14.9。

3.2.3 当a=4.2时系统的阶跃响应曲线

三阶系统的一般表达式为:

11.34G(s)=3,同上,把3.2.1程序中分子分母的系数替换为此表2s?5s?3.36s?2.688达式相应的系数,程序其余部分不变。同样得到单位阶跃响应曲线为:

8

同样从阶跃响应曲线得到系统动态性能指标:

最大偏离量h(tp)=5.27,终值h(∞)=4.22,上升时间tr=1.91,峰值时间

tp=4.62,调节时间ts=9.91,超调量 σ%=24.9。

3.3 三阶系统动态性能分析比较

表3-1 三阶系统动态性能分析比较 系统闭环传递函数 编号 2.268 1 s3?1.64s2?1.312s?0.53765.67 2 s3?2.9s2?2.32s?1.344 11.34 3 s3?5s2?3.36s?2.688 tr 2.81 tp 6.07 ts σ% 8.74 7.48 2.23 5.09 14.9 7.1 1.91 4.62 24.9 9.91 2.7 4 s2?0.8s?0.642.05 4.53 16.3 6.61 ?比较表3-1中第三行与第四行的动态性能,基本可以看出非主导极点对系

9

统动态性能的影响为:增大峰值时间,使系统响应速度变慢,但可以使超调量σ%减表明闭环非主导极点可以增大系统阻尼,且这种作用将随闭环极点接近虚轴而加剧。

?从以上四幅阶跃响应的动态性能指标可以看出,它们的终值相等。说明主导极点所对应的响应分量,随时间的推移衰减缓慢,在系统的时间响应过程中起主导作用。

3.4 近似条件

3.4.1 闭环主导极点

对稳定的闭环系统,远离虚轴的极点对应的模态只影响阶跃响应的起始

段,而距虚轴近的极点对应的模态衰减缓慢,系统动态性能主要取决于这些极点对应的响应分量。此外,各瞬态分量的具体值还与其系数大小有关。根据部分分式理论,各瞬态分量的系数与零、极点的分布有如下关系:①若某极点远离原点,则相应项的系数很小;②若某极点接近一零点,而又远离其他极点和零点,则相应项的系数也很小;③若某极点远离零点又接近原点或其他极点,则相应项系数就比较大。系数大而且衰减慢的分量在瞬态响应中起主要作用。因此,距离虚轴最近而且附近又没有零点的极点对系统的动态性能起主导作用,称相应极点为主导极点。

3.4.2 估算高阶系统动态性能指标的零点极点法

一般规定,若某极点的实部大于主导极点实部的5~6倍以上时,则可以忽略相应分量的影响;若两相邻零、极点间的距离比它们本身的模值小一个数量级时,则称该零、极点对为“偶极子”,其作用近似抵消,可以忽略相应分量的影响。在绝大多数实际系统的闭环零、极点中,可以选留最靠近虚轴的一个或几个极点作为主导极点,略去比主导极点距虚轴远5倍以上的闭环零、极点,以及不十分接近虚轴的靠得很近的偶极子,忽略其对系统动态性能的影响。

应该注意使简化后的系统与原高阶系统有相同的闭环增益,以保证阶跃响应终值相同。利用MATLAB语言的step指令,可以方便准确地得到高阶系统的单位阶跃响应和动态性能指标。

4 心得体会

在此次用MATLAB进行控制系统动态性能的分析的课程设计中,我对三阶系统动态性能有了更深的认识。在控制工程实践中,通常要求控制系统既具有较快的响应速度,又具有一定的阻尼程度,此外,还要求减少死区、间隙和库仑摩擦等非线性因素对系统性能的影响,因此高阶系统的增益常常调整到使系统具有一对闭环共轭主导极点。这时,可以用二阶系统的动态性能指标来估算高阶系统的动态性能。

10

本文来源:https://www.bwwdw.com/article/f7r7.html

Top