h-inf设计的matlab函数+2

上传人:xh****66 文档编号:61934907 上传时间:2018-12-15 格式:PPT 页数:36 大小:624KB
返回 下载 相关 举报
h-inf设计的matlab函数+2_第1页
第1页 / 共36页
h-inf设计的matlab函数+2_第2页
第2页 / 共36页
h-inf设计的matlab函数+2_第3页
第3页 / 共36页
h-inf设计的matlab函数+2_第4页
第4页 / 共36页
h-inf设计的matlab函数+2_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《h-inf设计的matlab函数+2》由会员分享,可在线阅读,更多相关《h-inf设计的matlab函数+2(36页珍藏版)》请在金锄头文库上搜索。

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

2、后,调用下面的三个m函数,就可以得到广义对象G的状态空间实现,A,B,C,D=ssdata(sys),sys=minreal(ss(G),图2 加权灵敏度问题,G通过下面的函数送进去,G=tf(0 100,1 1),tf(-100 2000,1 22 41 20);1,tf(-1 20,1 21 20),G=ltisys(A,B,C,D),这个G就是我们求解问题时所用的G,它是这样送进去的。,用上面的函数调用法来求取G的状态实现,是非常简单的。但是从上面的结果可以看出,用这种方法得到的状态变量纯粹是数值上的运算,脱离了物理概念。,本例中得到的广义对象G,图2 加权灵敏度问题,根据结果只能知道这

3、个广义对象的输入输出之间的关系,这几个状态变量之间的关系与实际的物理系统之间的状态没有直接联系,没有物理意义。,下面我们仍用上面的例子,用直接建立状态变量的方法来求取广义对象G的状态空间实现(A,B,C,D)。首先来求对象P的状态空间实现。设被控对象P的状态变量为x1和x2,根据P的传递函数,可以得到如下的状态方程:,2. 直接求取法,设权函数W的状态变量为x3,根据W的传递函数,可以得到权函数W的状态空间实现,根据图2中各信号的关系,进一步可以得到广义对象G的状态空间实现为,图2 加权灵敏度问题,前面讲的这部分内容是关于广义对象G如何送进去,这里我们讲了两种方法:1. m函数调用法;2. 直

4、接求取法。接下来要讲的是第二部分的内容:连续系统H设计的m函数。,1. 函数 hinfsyn,该函数用来计算系统的 H控制器k,函数的调用形式为: k,g,gfin = hinfsyn(G,nmeas,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 Contro

5、l, vol. 34, no. 8, pp. 831-847, August 1989. (2) Glover, K., and J.C. Doyle, “State-space formulae for all 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,gfi

6、n= hinfsyn(G,nmeas,ncon,gmin,gmax,tol) 其中输入变量中的G为如下定义的两入两出的广义对象,也是我们第一部分内容里所讲的用G=ltisys(A,B,C,D)送进去的G。,1. 函数 hinfsyn,G: 系统的广义对象; nmeas: 连接到控制器的测量输出的个数; ncon: 控制输入的个数; gmin: 的下界; gmax: 的上界; tol: 的迭代精度; k: H最优控制器; g: 闭环控制系统; gfin: 最终的 值;,k,g,gfin=hinfsyn(G,nmeas,ncon,gmin,gmax,tol),算例: PS/T混合灵敏度问题,本例的

7、H问题是要求解如下的有约束的优化设计问题,K,图3 PS/T问题,图3中参数如下:,图中除去K以外的部分就是广义对象G,按照我们第一部分内容所讲的方法把参数送进去以后,得到系统广义对象G的状态空间实现矩阵如下:,由于调用函数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),函数调用中 的迭代过程如下: g

8、amma hamx_eig xinf_eig hamy_eig yinf_eig nrho_xy p/f 2.000 6.8e+000 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,设计中权函数W1中的 是可变的, 要取尽可能的最大值,这里给出的是当 取1000时的 迭代过程。,0.338 6.2e+000 1.2e-016 1.0e-003 -1.9e-017

9、 0.0000 p 0.219 5.3e+000 -3.3e-003# 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

10、1.0e-003 -1.9e-017 0.0000 p 0.310 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.

11、1e+000 1.3e-016 1.0e-003 -1.9e-017 0.0000 p Gamma value achieved: 0.3107 1,逐渐增大,当 增大到100000时, ,这就是最终的设计结果。,函数调用中 的迭代过程如下: 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-0

12、04# 1.0e-003 0.0e+000 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

13、1.9e+001 4.7e-013 1.0e-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.000

14、0 f 1.007 1.9e+001 4.7e-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 f Gamma value achieved: 1.0067,设计所得的H控制器:,设计所得的闭环系统的奇异值Bode图如图4所示,,图4 闭环系统奇异值Bode图,2. 函数 hinf,函数的调用形式为: sscp,sscl = hinf(G, ssu) 该函数用的是下面文献中的算法,对于D11不为0的情形,可以用该函数求解。 M. G. Safonov, D. J. N. Lime

15、beer and R. Y. Chiang, “Simplifying the H Theory via Loop Shifting, Matrix Pencil and Descriptor Concepts“, Int. J. Contr., vol. 50, no. 6, pp. 2467-2488, 1989. 函数的输入变量G为如下定义的广义对象:,图5,函数的输入变量中的ssu对应的就是图5中的U(s),是个可调参数。一般都取默认值0,此时所求得的H控制器是中心控制器。,sscp,sscl = hinf(G, ssu),输出变量中的sscp表示控制器F(s),sscl表示闭环传递函数 。,算例:S/KS/T问题,图中参数如下:,图6,本例的H问题是要求解如下的有约束的优化问题,调用函数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的状态空间实现,sscp,sscl = hinf(G, ssu),图6,本例中函数hinf的调用形式为:,图7 闭环系统的奇异值Bode图,sscp,sscl =

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号