文档库 最新最全的文档下载
当前位置:文档库 › 毕业设计5“跟踪控制器设计”阅读材料-WSC

毕业设计5“跟踪控制器设计”阅读材料-WSC

毕业设计5“跟踪控制器设计”阅读材料-WSC
毕业设计5“跟踪控制器设计”阅读材料-WSC

阅读材料5: 跟踪控制器设计

实际工作中,许多系统都存在确定性扰动,如阵风对雷达天线的扰动,海浪对船体纵摇或横摇的扰动,飞行体在大气中受到气浪的扰动等,确定扰动的函数形式如冲击函数、阶跃函数、斜坡函数、正弦函数等。此处只讨论确定性扰动。

在诸如数控机床、导弹控制等实际控制中,常常要求闭环系统的输出以给定精度跟踪参考输入信号,实现精确的跟踪控制。

例1(149P 例5.4.1)被控对象为x y u x Bu Ax x )23(104310=????

??+???? ??--=+=,

设计状态反馈控制器使闭环极点为)54(--,讨论闭环系统的稳态性能。 解:被控对象为能控标准形,系统能控,系统开环传递函数的特征多项式为

34431det )det(2

++=???? ??+-=-s s s s A sI )31(21--=,

s (1-1) (1-1)式表明原开环系统极点为)31(21--=,s ,原系统是稳定的。 传递函数分子为01b s b +,而x x b b y )23()(10==

3

43

2)(2012010+++=

+++=

s s s a s a s b s b s G (1-2) 期望的闭环特征多项式为 209)5)(4()(2++=++=s s s s s f (1-3)

(1-3)式表明引入状态反馈控制器后,闭环系统也是稳定的,但性能有所改变。 所要设计的状态反馈增益矩阵为 )517()49320(=--=K (1-4)

所以,相应闭环系统状态矩阵为 ???? ??--=-92010BK A (1-5)

对应的闭环传递函数分母,即期望的闭环特征多项式

209)(2++=s s s f (1-6) 分子仍然为01b s b +,而x x b b y )23()(10

==

? 20

932)(201201c +++=+++=

s s s a s a s b s b s G (1-7)

考察参考输入为单位阶跃函数)(1)(t t u =,s s R /1)(=,系统的稳态输出为

)(lim )

(lim )(0

s sY t y y s t →∞

→==∞经典控制理论结论

定义

)0()()(lim 0

G s R s sG s ==→(∵1)(=s sR )

由(1-3)开环系统输出稳态值为 1)0()(00==∞G y (1-8)

说明开环系统可以精确跟踪单位阶跃输入,跟踪误差为0,该开环系统无静差(参见例5-9图1)。而由(1-8)闭环系统输出稳态值为

15.020

3

)0()(c c ===∞G y (1-9) 说明该系统闭环后

静态绝对误差 85.0)()(c -=-∞t r y ; 相对误差 85%。 系统闭环后不能精确跟踪单位阶跃输入(参见例5-9图2)。

结果表明,极点配置尽管改善了闭环系统的动态特性,却使稳态性能变差了。此外实际系统还不可避免的存在随机扰动(只知道其均值、方差等统计特性)和确定性扰动(具有确定的函数形式)。

渐近跟踪调节器设计方法

以下针对外部阶跃扰动的线性时不变系统,提出一种能实现“无静差”跟踪参考输入信号的渐近跟踪调节器设计方法。

考虑以下状态空间模型描述的m 维输入、p 维输出,)(t d 是n 维扰动输入

Cx y d Bu Ax x

=++=, (5-37) 假定系统的参考输入是阶跃输入)(1)(0t r t r =,“窜入”系统输入的阶跃扰动为)(1)(0t d t d =,控制的目的是在存在阶跃扰动)(t d 的情况下,仍希望闭环系统的输出)(t y 能很好地跟踪参考输入)(t r 。为此,定义误差向量

例5-9图1开环系统单位阶跃响应(无静差)

例5-9图2 闭环系统单位阶跃响应(有静差)

)()()(t r t y t e -= (5-38) 引入误差向量的积分)(t q ττd )()(0?=t

e t q (5-39)

]d )(d )(d )([])()()([)(0

2

121τττ

ττ

τ???==t

p

t

t

p T

e

e e t q t q t q t q

)()()()(t r t Cx t e t q

-== (5-40) 在状态方程中,将积分器的输出选择为状态向量的分量,按此,也可以将“误差向量的积分)(t q ”选为状态向量的分量,于是,综合(5-37)、(5-40)可得“增广系统”方程为

????

??=???? ??-+???? ??+???? ?????? ??=???? ??q x C y r d u B q x C A q x )0(000, (5-41) 新的状态向量是p n +维的。

对系统(5-41),若能设计一个状态反馈控制器 q K x K q x K K u 2121

)(--=???

?

??-= (5-42) 使增广的闭环系统(5-42)代入(5-41)

???

?

??-+???? ?????? ??--=???? ??r d q x C BK BK A q x 021 (5-43) 是渐近稳定的,此时,矩阵???

?

??--021

C

BK BK A 是非奇异的,可逆的。对(5-43)两边取Laplace 变换,整理后得到

???

?

??-??

?

??????? ?

?---=???? ??-)()(0)()(1

21

s r s d C BK BK A sI s q s x (5-44) 由Laplace 终值定理(参考输入

s

r 0和外部扰动s d

0都是阶跃信号)

???

? ??-??

?

??????? ??---=???? ??=???? ??-→→∞→s r s d C BK BK A sI s s q s x s t q t x s s t //0lim )()(lim )()(lim 001

210

44-50)(

???

? ??-???

?

?

?---=-001

21

0r d C

BK BK A (注意0→s ,0=sI ) 这表明)(t x 、)(t q 都趋于常值向量,因此)(t x

、)(t q 都必将趋于0

)(lim )(lim 0))()((lim )(lim t r t y t r t y t q

t t t t ∞

→∞

→∞

→∞

→==-= (5-45)

从而实现精确地跟踪控制。

小结:对增广系统(5-41)设计一个稳定化状态反馈控制器(5-42),就可以保证系统输出跟踪阶跃参考输入,而且没有稳态误差。进一步,若增广系统是能控的,可以通过对增广系统的极点配置,使其具有一定的动态性能。

定理5-5(152P 定理5.4.1)增广系统(5-41)能控的充要条件为原系统(5-37)

是能控的。且p C p m p n C A =≥+=???

?

??rank

,,00rank (证明略) 将增广系统的控制器(5-42)写为

?--=t

e K x K u 021d )(ττ (5-46)

它相当于一个比例积分“PI 控制器”,第一项是原系统的状态反馈,而第二项是为了改善稳态精度而加的积分控制作用。

根据增广的闭环系统(5-43)??

???==-=+--=Cx y t e r Cx q

d q BK x BK A x

)()(21 (5-47) (5-47)可以画出反馈控制的状态结构如图5-3。

由上分析可知,对于一个多变量系统,尽管有一个不能测量(或未知)的阶跃扰动输入,仍可以设计一个控制器,使得闭环系统的输出无静差的跟踪阶跃参考输入。

例2(155P 例5.4.2)倒立摆的状态方程和输出方程为

图5-3 增广系统的状态反馈

u x Bu Ax x

??

????

? ??-+??????? ?

?-=+=1010011

0010000100

0010 ,x Cx y )0001(== 式中:T T y

y

x x x x x )()(43

21θθ == —系统状态向量; y —小车的位移; y

—小车的速度; θ—摆杆的角位移; θ

—摆杆的角速度; u —作用在小车上的力。 控制目标为:将倒立摆保持在垂直位置0=θ,同时要求系统输出能跟踪一个阶跃输入信号,即要求小车移动一个单位距离,停在预定位置。要求调节时间为

s 5~4,最大超调为15%。

解:利用(5-43)得到相应的“增广系统”模型,假设系统没有受到干扰0=d 。 根据控制目标的性能要求,选择闭环极点为

5313154321-===--=+-=s s s j s j s 32

2)5](3)1[()(+++=s s s f 希望125)75514)(2(232+++++=s s s s s 500550335109172345+++++=s s s s s (1) 应用(5-41)式

???????

? ??-+???????? ??-+???? ?????????? ??-=???

? ??-+???? ??+???? ?????? ??=???? ??r u q x r d u B q x C A q x 000001010000

1

00

11000100000100

00010000 (2) ????

??=q x y )00001( (3)

采用极点配置,基于增广系统设计控制器 q K x K q x K K u 2121

)(--=???

? ??-= ???????

? ??-=-????

??

? ??-=q x x x x k k k k k q k x x x x k k k k 432124

131211

12432141312111)()(

???????

? ??-+???????? ???

?

?

???

?

?

??--???????? ?????????? ??-=???????? ??r q x x x x k k k k k q x x x x q x

x x x

0000)(01010000010011000100000100000

10432124

131211

143214321 ???????

? ??-+???????? ??????????

??-----+???????? ?????????? ??-=r q x x x x k k k k k k k k k k q x x x x 000000

00000

00000

0000

1

0011000100000100000

104321214131211

2413121114321 ???????

? ??-+???????? ?????????? ??+------=r q x x x x k k k k k k k k k k 000000

1

1101000100010432121413

12112413

12111 ??

?????

? ??--------++-=??

???

????? ??---s k k s k k k s k k k k s k s

C

BK BK A sI 0

1

11010010001det 0det 214

13

12

112413

12

11

121 “-”下划线表示按该元素第1次展开,“=”下划线表示按该元素第2次展开。

????

??

?

?

?-------++??

?

??

??

??------++=s k k s k k s k k k k s k k s k k s

k k k k s s 0

111010

1de t 0

00110101de t 214

13

112413

11

1214

13

12241312

1 ????

?

?

?-----++=1413

124131212

1110

1de t k s k k

s k k k s s ?

???

?

?

?

?-----++?

?????

?

?-----++1413

11413

11

1214

132413111101det 11011det k s k k s k k k s k k s k s

k k k

???

?

??---+++???? ?

?--+=1312312

121412412

13111det det k k k k s s k s k

k k s s

???

?

??-+-???? ??

----+11det 111det 413

1214132s k k k k s k

s k ???

?

??-+-???? ??

----+11det 111det 413

111141311s k k s k k s k

s s k 10)(10)(]10)11([])([2112221132142123-+-+---+-+=s s k s k k k s s s k k s s

2112212313114142151010)10()11()(k s k s k k s k k s k k s ---+--+-+= (4) 比较(1)(4)两式可得

?????????=-=-=-=-=-50010550

1033510120172

1

1212131114

21k k

k k k

k k k ?????

????-=-=-=-=-=50

55.51755

.3855

2

1413

1211

k k k k k 与Matlab 运行的结果一致 (5) 以下求闭环系统时,小车对单位阶跃输入的响应(输出)

)(det 10000)(det )()00001()()(151K K b K K K A sI b A sI A sI B A sI C s G --=???????

? ??---=-=- 由(1)式 32

2)5](3)1[()()(det +++==-s s s f A sI K 期望

?????

??+-----=????

??? ?

?+------=5055.5164015055.5174de t 5055.51645.380105055.51745.380001

de t 15s s s s s b

????

??----???? ??+-=155.5174det 5055.51641det 50s s s 10)50()55.517416455.550(22-=--++=s s s s 单位阶跃输入函数为 s

s U 1

)(=

,所以输出函数为3

22215)5](3)1[(10)

50(1)(det 1)()()(+++--=--==s s s s A sI b s s U s G s Y K K

5)5()5(23

)1(3)1(6

253422321+++++++++++=

s a s a s a s a s a s a 1)

5](3)1[(10)

50(1lim 322201=+++--?=→s s s s s a s 89.719

150

)5](3)1[(10)50(1)5(lim 232223

54≈=+++--?

+=-→s s s s s a s ???

?????+++++++++++==--5)5()5(89.73)1(3)1(1)()(6253223

21

1

s a s a s s a s a s L s Y L t y t t t t t a t a t t a t a 56555232e e e 95.33sin e 3cos e 1-----+++++= 参见例5-10图,这就是小车的输出响应。

容易验证增广系统(2)是能控的,因此可以运行Matlab 文件对增广系统进行给定极点的配置。执行以下m-文件

)01100100001000010(A ;;;-=;

)1010(B -=;;;; )0001(C =;

)0C ;zeros(4,1)A (AA =; )0B;(BB =;

)555sqrt(3)*j 1sqrt(3)*j 1(J -----+-=;

)J BB AA (acker K ,,=

可得增广系统的状态反馈增益矩阵

2

14

13

12

11

50.0000

55.5000175.000038.500055.0000K k k k k k -----=

因此,要设计的控制器为 x u )5.551755.3855(=?-+t

t y 0

d ))(1)((50ττ

若要观察实施效果,可以针对阶跃参考输入,编写和执行以下m-文件

)01100100001000010(A ;;;-=;

)1010(B -=;;;;)0001(C =;

)55.0000175.000038.500055.0000(K1----=;-50.0000K2=; % 闭环增广系统状态空间模型系数矩阵

)0C K2;*B K1*B A (Ac --=; )10;0;0;0;(Bc -=;

)0

(

Cc=;0

C

Dc=;

t=% 时间t从0→6(秒)间隔0.02秒取值:0

6:

0.02

step(Ac,

[y,=;

x,

t]

Bc,

Dc,1,

t)

Cc,

plot(t,% 绘制t-y图

y)

grid% 绘制格子

xlabel(';% x轴打印time(sec)

)

time(sec)'

O utput'

ylabel('% y轴打印Output

)

从5-10图可以看出,小车的位移很好的跟踪了单位阶跃信号。

例5-10图小车输出响应

相关文档