书中是讲完DMC接着讲的GPC,不过我想接着写DMC,将DMC的有关内容写完。
预测控制的部分先不写了,先去学点数学知识
上一篇文章写了在无约束单输入单输出情况下的DMC的原理,及其仿真。我在仿真时取N=P=M=20,所以至少有40个参数可以调节,那么如何去选择这些参数?有没有一些结论去供我们参考呢?这就涉及到我接下来要写的这部分内容DMC的内模控制结构,内模控制结构即IMC(internal model control,我猜的哈,没查过),可以用来有效的分析预测控制系统。那么它究竟是以一种什么样的原理去分析预测控制系统的呢?笼统地可以表达成针对IMC具有一些定理和结论,我们将DMC变换为IMC的结构,将IMC的定理和结论套用在上面,来达到分析DMC的目的。所以为了达成这个目的我们需要做的工作:1.了解IMC的结构,及其相关定理。2.将DMC变换为IMC。3.分析变换为IMC结构的DMC,有点像大象关冰箱里分几步哈。
首先是第一个工作,IMC的结构和定理。
IMC的基本的结构就如上图所示,其中w ( z ) w(z) w ( z ) 为参考输入,u ( z ) u(z) u ( z ) 为控制量,v ( z ) v(z) v ( z ) 为扰动量,y ( z ) y(z) y ( z ) 为输出量。从上面这个结构很容易得出传递函数:y ( z ) = G w ( z ) G c ( z ) G p ( z ) 1 + G c ( z ) G F ( z ) [ G p ( z ) − G M ( z ) ] w ( z ) + 1 − G c ( z ) G F ( z ) G M ( z ) 1 + G c ( z ) G F ( z ) [ G p ( z ) − G M ( z ) ] v ( z ) − − − − − − − − ( 1 ) y(z)=G_w(z)\frac {G_c(z)G_p(z)}{1+G_c(z)G_F(z)[G_p(z)-G_M(z)]}w(z)+\frac {1-G_c(z)G_F(z)G_M(z)}{1+G_c(z)G_F(z)[G_p(z)-G_M(z)]}v(z)--------(1) y ( z ) = G w ( z ) 1 + G c ( z ) G F ( z ) [ G p ( z ) − G M ( z ) ] G c ( z ) G p ( z ) w ( z ) + 1 + G c ( z ) G F ( z ) [ G p ( z ) − G M ( z ) ] 1 − G c ( z ) G F ( z ) G M ( z ) v ( z ) − − − − − − − − ( 1 )
其中的G w ( z ) G_w(z) G w ( z ) 称为参考模型,根据控制方式的不同,有所不同。未分析方便将G w ( z ) G_w(z) G w ( z ) 设为1。在之后的分析中还会涉及到。
G c ( z ) G_c(z) G c ( z ) 为控制器,G p ( z ) G_p(z) G p ( z ) 为对象,G M ( z ) G_M(z) G M ( z ) 为针对对象建立的模型,G F ( z ) G_F(z) G F ( z ) 为滤波器。
这个就是IMC的结构,还是挺简单的,接下来介绍IMC的几个性质或者说结论:
1.对偶稳定准则
在模型精确时,即模型G M ( z ) G_M(z) G M ( z ) 等于对象G p ( z ) G_p(z) G p ( z ) 时,我们将G M ( z ) = G p ( z ) G_M(z)=G_p(z) G M ( z ) = G p ( z ) 代入(1)式中,可以得到y ( z ) = G c ( z ) G p ( z ) w ( z ) y(z)=G_c(z)G_p(z)w(z) y ( z ) = G c ( z ) G p ( z ) w ( z ) 可以得到系统此时的传递函数:F 0 ( z ) = G c ( z ) G p ( z ) F_0(z)=G_c(z)G_p(z) F 0 ( z ) = G c ( z ) G p ( z ) ,系统在对象G p ( z ) G_p(z) G p ( z ) 和控制器G c ( z ) G_c(z) G c ( z ) 稳定时稳定。
2.完全控制器
在对像稳定且模型准确的前提下,若取控制器为G c ( z ) = 1 G − ( z ) − − ( 2 ) G_c(z)=\frac {1}{G_-(z)}--(2) G c ( z ) = G − ( z ) 1 − − ( 2 ) 则控制系统对镇定或跟踪控制都具有最小输出方差。式中的G − ( z ) G_-(z) G − ( z ) 来自于模型下述分解G M ( z ) = G + ( z ) G − ( z ) G_M(z)=G_+(z)G_-(z) G M ( z ) = G + ( z ) G − ( z ) 其中G + ( z ) = z − ( l + 1 ) ∏ i = 1 p ( z − z i z − z ^ i ) ( 1 − z ^ i 1 − z i ) G_+(z)=z^{-(l+1)}\prod_{i=1}^p(\frac{z-z_i}{z-\hat{z}_i})(\frac{1-\hat{z}_i}{1-z_i}) G + ( z ) = z − ( l + 1 ) i = 1 ∏ p ( z − z ^ i z − z i ) ( 1 − z i 1 − z ^ i ) ,式中l l l 是对象的纯滞后数,再+1是为了计入采样保持所附加的一拍滞后;p为对象在单位圆外的零点数;z i z_i z i 为单位圆外的零点,z ^ i = 1 / z i \hat{z}_i=1/z_i z ^ i = 1 / z i 为器在单位圆内的映射。控制器(2)称为完全控制器,我不理解书上为什么要将G + ( z ) G_+(z) G + ( z ) 写成这种形式,按《计算机控制》的最小拍来说的话,也不是这种形式,或许还和最小方差控制相关?有懂的同学方便的话告诉我一下。虽然和计算机控制上的形式不太一样,但目的却是一样的,都是为了对消被控对象中的可控部分,而滞后和不稳定部分保留,但如果被控对象中含有不稳定部分,也就不符合预测控制的要求了,不符合性质1,所以在接下来的讨论中被控对象可以认为都是稳定的。
3.零静差
不论模型与对象是否失配,就是不论模型G M ( z ) G_M(z) G M ( z ) 等不等于对象G p ( z ) G_p(z) G p ( z ) ,只要闭环系统是稳定的,且控制器G c ( 1 ) = 1 / G M ( 1 ) G_c(1)=1/G_M(1) G c ( 1 ) = 1 / G M ( 1 ) ,滤波器满足G F ( 1 ) = 1 G_F(1)=1 G F ( 1 ) = 1 .则系统对于阶跃输w w w 和常值扰动v v v 均不存在输出静差。这个推导的话,大家对式(1)运用终值定理就可以推出来。
第二个工作,将DMC变换为IMC
在变换之前我们先把上一节得到的DMC的结构再列一下,
其中a = [ 0.0867 , 0.2917 , 0.5413 , 0.7851 , 0.9818 , 1.1166 , 1.1882 , 1.2059 , 1.1846 , 1.1407 , 1.0886 , 1.0394 , 1.001 , 0.9738 , 0.9603 , 0.9577 , 0.9627 , 0.9721 , 0.9829 , 0.9929 ; a=
[0.0867,0.2917,0.5413,0.7851,0.9818,1.1166,1.1882,1.2059,1.1846,1.1407,1.0886,1.0394,1.001,0.9738,0.9603,0.9577,0.9627,0.9721,0.9829,0.9929; a = [ 0 . 0 8 6 7 , 0 . 2 9 1 7 , 0 . 5 4 1 3 , 0 . 7 8 5 1 , 0 . 9 8 1 8 , 1 . 1 1 6 6 , 1 . 1 8 8 2 , 1 . 2 0 5 9 , 1 . 1 8 4 6 , 1 . 1 4 0 7 , 1 . 0 8 8 6 , 1 . 0 3 9 4 , 1 . 0 0 1 , 0 . 9 7 3 8 , 0 . 9 6 0 3 , 0 . 9 5 7 7 , 0 . 9 6 2 7 , 0 . 9 7 2 1 , 0 . 9 8 2 9 , 0 . 9 9 2 9 ;
d T = [ 0.00741 , 0.0192 , 0.0254 , 0.0348 , 0.0135 , 0.0141 , 0.0109 , 0.0073 , 0.00420.00170.00067 , 0.000427 , 0.000256 , 0.000142 , 0 , 0 , 0 , 0 , 0 , 0 ] d^T=[0.00741,0.0192, 0.0254, 0.0348, 0.0135, 0.0141, 0.0109, 0.0073, 0.0042 0.0017 0.00067 ,0.000427 ,0.000256, 0.000142, 0,0,0,0,0,0] d T = [ 0 . 0 0 7 4 1 , 0 . 0 1 9 2 , 0 . 0 2 5 4 , 0 . 0 3 4 8 , 0 . 0 1 3 5 , 0 . 0 1 4 1 , 0 . 0 1 0 9 , 0 . 0 0 7 3 , 0 . 0 0 4 2 0 . 0 0 1 7 0 . 0 0 0 6 7 , 0 . 0 0 0 4 2 7 , 0 . 0 0 0 2 5 6 , 0 . 0 0 0 1 4 2 , 0 , 0 , 0 , 0 , 0 , 0 ]
h = [ 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ] T h=[1,1 ,1, 1, 1, 1, 1, 1 ,1 ,1 ,1 ,1, 1 ,1 ,1, 1, 1, 1, 1, 1]^T h = [ 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ] T
还需要上一篇的几个公式:
接下来开始变换,首先需要将DMC变换成如下的形式:
由(1)(2)式
接下来再变换成
(没网费了。。下次再写),