H-inf_H无穷控制_第1页
H-inf_H无穷控制_第2页
H-inf_H无穷控制_第3页
H-inf_H无穷控制_第4页
H-inf_H无穷控制_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、H设计的设计的m函数函数目目 录录 广义对象的求取广义对象的求取 连续系统连续系统H设计的设计的m函数函数 离散系统离散系统H设计的设计的m函数函数标准的H问题的框图如图所示,图中G为系统的广义对象,K为控制器。G(s)K(s)wzyu图1求解图中对象G的方法有两种:1. m函数调用法2. 直接求取法一广义对象的求取一广义对象的求取图2 加权灵敏度问题下面通过图2所示的加权灵敏度问题的例子来看一下如何通过m函数调用来求取系统的广义对象G。KyuPWwzyp1. m函数调用法函数调用法系统除去控制器K以外的部分就是广义对象G,它是两入两出的,输入信号是w和u,输出信号是z和y。可用传递函数表示为

2、11122122GGW WPGGGIPzwGyz 20( ),(20)(1)sP sss100( )1W ss设图2中的对象P和灵敏度权函数W分别为将参数代入,可以得到广义对象G为2100100(20)(1)(20)(1)(20)1(20)(1)sWWPsssGIPsssG送进去以后,调用下面的三个m函数,就可以得到广义对象G的状态空间实现A,B,C,D=ssdata(sys)sys=minreal(ss(G)yuwzKPWyp图2 加权灵敏度问题G通过下面的函数送进去G=tf(0 100,1 1),tf(-100 2000,1 22 41 20);1,tf(-1 20,1 21 20)G=l

3、tisys(A,B,C,D)这个这个G就是我们求解问题时所用的就是我们求解问题时所用的G,它是这样送进去的。它是这样送进去的。用上面的函数调用法来求取G的状态实现,是非常简单的。但是从上面的结果可以看出,用这种方法得到的状态变量纯粹是数值上的运算,脱离了物理概念。本例中得到的广义对象G0.8813.44356.63164.42590.63683.792418.92965.69782.70292.64452.87472.25872.19055.55940.77545.65364.652711.2247000.50590.32770.243410ABGCD图2 加权灵敏度问题KyuPWwzyp根据

4、结果只能知道这个广义对象的输入输出之间的关系,这几个状态变量之间的关系与实际的物理系统之间的状态没有直接联系,没有物理意义。下面我们仍用上面的例子,用直接建立状态变量的方法来求取广义对象G的状态空间实现(A,B,C,D)。首先来求对象P的状态空间实现。设被控对象P的状态变量为x1和x2,根据P的传递函数可以得到如下的状态方程:1122122040pppxxuxxxuyxppppppppppxA xB uyC xD u2. 直接求取法直接求取法20401( )1(20)(1)(20)(1)sP sssss20040111010ppppABCD设权函数W的状态变量为x3,根据W的传递函数,可以得到

5、权函数W的状态空间实现1 10010WWWWABCD100( )1W ss根据图2中各信号的关系,进一步可以得到广义对象G的状态空间实现为图2 加权灵敏度问题KyuPWwzyp20000400011001001001 10000000010001001010ppWpWWWpABB CABABGCCDC前面讲的这部分内容是关于广义对象G如何送进去,这里我们讲了两种方法:1. m函数调用法;2. 直接求取法。接下来要讲的是第二部分的内容:连续系统H设计的m函数。1. 函数函数 hinfsyn该函数用来计算系统的 H控制器k,函数的调用形式为: k,g,gfin = hinfsyn(G,nmeas,

6、ncon,gmin,gmax,tol) 该函数用的是“DGKF文献”中的算法:(1) Doyle, J.C., K. Glover, P. Khargonekar, and B. Francis, State-space solutions to standard H2 and Hcontrol problems, IEEE Transactions on Automatic Control, vol. 34, no. 8, pp. 831-847, August 1989.(2) Glover, K., and J.C. Doyle, State-space formulae for all

7、 stabilizing controllers that satisfy an H norm bound and relations to risk sensitivity, Systems and Control Letters, vol. 11, pp. 167-172, 1988.二连续系统二连续系统H设计的设计的m函数函数该函数用来计算系统的 H控制器k,函数的调用形式为: k,g,gfin= hinfsyn(G,nmeas,ncon,gmin,gmax,tol) 其中输入变量中的G为如下定义的两入两出的广义对象,也是我们第一部分内容里所讲的用G=ltisys(A,B,C,D)送进去

8、的G。1. 函数函数 hinfsyn12111122212220000401100101001 10000010001010ABBABGCDDCDCDDnconnmeasGwzyu G: 系统的广义对象;nmeas: 连接到控制器的测量输出的个数;ncon: 控制输入的个数;gmin: 的下界;gmax: 的上界;tol: 的迭代精度;k: H最优控制器;g: 闭环控制系统;gfin: 最终的值;k,g,gfin=hinfsyn(G,nmeas,ncon,gmin,gmax,tol)k,g,gfin=hinfsyn(G,nmeas,ncon,gmin,gmax,tol)算例:算例: PS/T混

9、合灵敏度问题混合灵敏度问题本例的H问题是要求解如下的有约束的优化设计问题KPW1wuy+z1z2W2图3PS/T问题220.01(1)(0.0051)( )(0.0021)ssWss21( )(0.001)P ss1( )0.001W ss图3中参数如下:12minstabKWPSWT图中除去K以外的部分就是广义对象G按照我们第一部分内容所讲的方法把参数送进去以后,得到系统广义对象G的状态空间实现矩阵如下:0.00100001000244.140600,010240000000.001000010.001A6610100128001100B1000 0078.027323.8228 0 0 ,

10、0000 1C0.000001 0.00000100012.5D由于调用函数hinfsyn时对象要满足假设中秩的要求,设计中取Dp=10-6,以后第4章讲DGKF法时还要提到。广义对象G由下面的函数送进去:G=ltisys(A,B,C,D)本例中函数的调用形式如下: hinfsyn(G,nmeas,ncon,gmin,gmax,tol)k,g,gfin=hinfsyn(G,1,1,0.1,2,0.0001)函数调用中的迭代过程如下:函数调用中的迭代过程如下:gamma hamx_eig xinf_eig hamy_eig yinf_eig nrho_xy p/f 2.000 6.8e+000

11、1.2e-016 1.0e-003 -1.9e-017 0.0000 p 1.050 6.7e+000 1.2e-016 1.0e-003 -1.9e-017 0.0000 p 0.575 6.6e+000 1.2e-016 1.0e-003 -1.9e-017 0.0000 p 121111222122ABBABGCDDCDCDD设计中权函数W1中的是可变的,要取尽可能的最大值,这里给出的是当取1000时的迭代过程。1( )0.001W ss0.338 6.2e+000 1.2e-016 1.0e-003 -1.9e-017 0.0000 p 0.219 5.3e+000 -3.3e-003

12、# 1.0e-003 -1.9e-017 0.0000 f 0.278 5.9e+000 -2.9e-002# 1.0e-003 -1.9e-017 0.0000 f 0.308 6.1e+000 -4.4e-001# 1.0e-003 -1.9e-017 0.0000 f 0.323 6.1e+000 1.2e-016 1.0e-003 -1.9e-017 0.0000 p 0.315 6.1e+000 1.2e-016 1.0e-003 -1.9e-017 0.0000 p 0.312 6.1e+000 1.2e-016 1.0e-003 -1.9e-017 0.0000 p 0.310

13、6.1e+000 -1.3e+000# 1.0e-003 -1.9e-017 0.0000 f 0.311 6.1e+000 -1.6e+002# 1.0e-003 -1.9e-017 0.0000 f 0.311 6.1e+000 1.2e-016 1.0e-003 -1.9e-017 0.0000 p 0.311 6.1e+000 1.2e-016 1.0e-003 -1.9e-017 0.0000 p 0.311 6.1e+000 1.2e-016 1.0e-003 -1.9e-017 0.0000 p 0.311 6.1e+000 1.3e-016 1.0e-003 -1.9e-017

14、 0.0000 p Gamma value achieved: 0.3107 1逐渐增大,当增大到100000时,这就是最终的设计结果。1.0067函数调用中的迭代过程如下:函数调用中的迭代过程如下:gamma hamx_eig xinf_eig hamy_eig yinf_eig nrho_xy p/f 2.000 2.1e+001 4.6e-013 1.0e-003 0.0e+000 0.0000 p 1.050 1.9e+001 4.7e-013 1.0e-003 0.0e+000 0.0000 p 0.575 1.4e+001 -9.1e-004# 1.0e-003 0.0e+000

15、0.0000 f 0.813 1.8e+001 -3.5e+000# 1.0e-003 0.0e+000 0.0000 f 0.931 1.9e+001 -1.4e+001# 1.0e-003 0.0e+000 0.0000 f 0.991 1.9e+001 -7.9e+001# 1.0e-003 0.0e+000 0.0000 f 1.020 1.9e+001 4.7e-013 1.0e-003 0.0e+000 0.0000 p 1.005 1.9e+001 -1.1e+003# 1.0e-003 0.0e+000 0.0000 f 1.013 1.9e+001 4.7e-013 1.0e

16、-003 0.0e+000 0.0000 p 1.009 1.9e+001 4.7e-013 1.0e-003 0.0e+000 0.0000 p 1.007 1.9e+001 4.7e-013 1.0e-003 0.0e+000 0.0000 p 1.006 1.9e+001 -4.2e+003# 1.0e-003 0.0e+000 0.0000 f 1.007 1.9e+001 4.7e-013 1.0e-003 0.0e+000 0.0000 p 1.007 1.9e+001 -1.6e+004# 1.0e-003 0.0e+000 0.0000 f 1.007 1.9e+001 4.7

17、e-013 1.0e-003 0.0e+000 0.0000 p 1.007 1.9e+001 -5.1e+004# 1.0e-003 0.0e+000 0.0000 fGamma value achieved: 1.0067设计所得的H控制器:2626144143605589.224(500)(500)(47.071049)( )(1.646*10 )(231.2)(0.001)(0.0021*10 )ssssK ssssss设计所得的闭环系统的奇异值Bode图如图4所示,图4闭环系统奇异值Bode图10-2100102104106108-35-30-25-20-15-10-505Singu

18、lar ValuesFrequency (rad/sec)Singular Values (dB)2. 函数函数 hinf函数的调用形式为:sscp,sscl = hinf(G, ssu) 该函数用的是下面文献中的算法,对于D11不为0的情形,可以用该函数求解。M. G. Safonov, D. J. N. Limebeer and R. Y. Chiang, Simplifying the H Theory via Loop Shifting, Matrix Pencil and Descriptor Concepts, Int. J. Contr., vol. 50, no. 6, pp.

19、 2467-2488, 1989.函数的输入变量G为如下定义的广义对象:121111222122ABBGCDDCDD图5G(s)K(s)u1y1y2u2U(s)F(s)函数的输入变量中的ssu对应的就是图5中的U(s),是个可调参数。一般都取默认值0,此时所求得的H控制器是中心控制器。sscp,sscl = hinf(Gsscp,sscl = hinf(G, , ssu)ssu) 输出变量中的sscp表示控制器F(s),sscl表示闭环传递函数 。1 1( )y uTs算例:算例:S/KS/T问题问题图中参数如下:图6 33.16(1/300)( )(1/10)sW ss329000( )30

20、7001000P ssss212(1/30)( )0.01(1)sW ss_uKPW2wyz2z1W1W3z32( )0.0001Ws 本例的H问题是要求解如下的有约束的优化问题123minstabKWSW KSWT调用函数hinf时,其输入变量G有自己的调用形式,要用如下的几个函数调用来送进去:W1= /900 /15 ;0.01 0.02 0.01;W2=0.0001;W3=0.1 1;3.16/300 3.16;P=ss(ap,bp,cp,dp);G=augtf(P,W1,W2,W3);其中ap,bp,cp,dp为对象P的状态空间实现21222(1/30)( )0.01(1)/900/1

21、50.010.020.01sW sssssssscp,sscl = hinf(Gsscp,sscl = hinf(G, , ssu)ssu) 329000( )307001000P ssss3010.93750.4883 26400003200002.19730ap bpcp dp_uKPW2wyz2z1W1W3z3图6 本例中函数hinf的调用形式为:22259551212.8629(300)(10.53)(1.523)(28.48656.6)( )(1237)(702.1)(1) (0.01)(10369.91*10 )sssssF sssssss图7 闭环系统的奇异值Bode图1310-

22、2100102104-10-8-6-4-20Singular ValuesFrequency (rad/sec)Singular Values (dB)sscp,sscl = hinf(G)当时,闭环系统的H范数为0.8916。当时,闭环系统的H范数为0.9998,设计所得的H控制器为: hinf(G,ssU)该函数用的是下列文献中的算法:(1) Doyle, J.C., K. Glover, P. Khargonekar, and B. Francis, State-space solutions to standard H2 and Hcontrol problems, IEEE Tran

23、sactions on Automatic Control, vol. 34, no. 8, pp. 831-847, August 1989.(2) P. Gahinet, A. Nemirovskii, A. J. Laub, M. Chilali. The LMI Control Toolbox. Proc. of the IEEE Conf. on Dec. and Control. 1994: 2038-2041 3. 函数函数 hinfric函数的调用形式为:其中输入变量中的G为如下定义的广义对象:121111222122ABBGCDDCDD输入变量中的r是2维列向量, r(1)

24、表示量测输出的个数, r(2)表示控制输入的个数。输出变量gopt表示最优的H性能,输出变量k表示H中心控制器。gopt,k = hinfric(G,r) 该函数用的是基于该函数用的是基于Riccati方程的算法,是解析法。方程的算法,是解析法。其最优控制器是在任意阶其最优控制器是在任意阶控制器中寻优的,所以优控制器中寻优的,所以优化效果比较好。函数对对化效果比较好。函数对对象的秩的要求比较低。象的秩的要求比较低。 算例:算例:S/KS/T问题问题图中参数如下:图8350( )5000sW ss222100( )0.02100P sss11( )0.001W ss2( )0.01W s +uK

25、PW2wyz2z1W1W3z3本例的H问题是要求解如下的有约束的优化问题123minstabKWSW KSWT函数调用时的广义对象G由下面的函数送进去:22479644.7322(5000)(0.0210000)( )(967.6)(0.01)(1.118*105*10 )sssK sssss hinfric(G,r)G=ltisys(A,B,C,D)gopt,k = hinfric(G,1;1)H优化设计所得的闭环系统的最终值为0.1011,所得的H中心控制器为:本例中函数的调用形式如下:10-2100102104106-90-80-70-60-50-40-30-20-10Singular

26、ValuesFrequency (rad/sec)Singular Values (dB)图9 加权闭环系统的奇异值Bode图该函数用的是下面文献中的算法,是基于LMI的算法,对对象的秩的要求也比较低。(1) P. Gahinet, P. Apkarian. A Linear Matrix Inequality Approach to H Control. Int. J. of Robust and Nonlinear control. 1994, 4: 421-448 函数的调用形式为:其中输入变量中的G为如下定义的广义对象:121111222122ABBGCDDCDD输入变量中的r是2维列

27、向量, r(1) 表示量测输出的个数, r(2)表示控制输入的个数。输出变量gopt表示最优的H性能,输出变量k表示H中心控制器。gopt,k = hinflmi(G,r) 4. 函数函数 hinflmi算例:算例:S/KS/T问题问题图10+uKPW2wyz2z1W1W3z3图中参数如下:350( )5000sW ss2100( )0.02100P sss11( )0.001W ss2( )0.01W s 本例的H问题是要求解如下的有约束的优化问题123minstabKWSW KSWT函数调用时的广义对象G由下面的函数送进去:21122558.7657(5016)(0.02100)( )(1

28、81000)(5014)(108.5)(0.00985)sssK sssss hinflmi(G,r)G=ltisys(A,B,C,D)gopt,k = hinflmi(G,1;1)H优化设计所得的闭环系统的最终值为0.1064,所得的H中心控制器为:本例中函数的调用形式如下:图11 加权闭环系统的奇异值Bode图10-2100102104106-60-55-50-45-40-35-30-25-20-15Singular ValuesFrequency (rad/sec)Singular Values (dB)5. 函数函数 hinfnorm该函数用来计算系统的H范数 ,函数的调用形式为: o

29、ut = hinfnorm(sys,tol,iiloc)sys: 为系统矩阵,当已知系统的传递函数T时,调用如下的函数可得到sys A,B,C,D=ssdata(T) sys=ltisys(A,B,C,D) out = hinfnorm(sys,tol,iiloc)tol: 为H范数的上下界之间的相对精度。iiloc: 为假定的范数值所对应的初始频率点。out是一个 的行向量。分别表示的下界,上界以及下界所对应的频率。1 3算例:算例:200.20.2A首先调用函数ltisys将系统矩阵sys送进去, sys=ltisys(A,B,C,D) 如下调用函数hinfnorm hinfnorm(sys,tol,iiloc) out=hinfnorm(sys,0.000001,0)求得的out=1 1 0。40.2B01C 0D

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论