MPC控制预测使用线性时不变(LTI)动态模型未来的行为。在实践中,这样的预测是不确切,和一键优化目标是使MPC不受预测误差。在许多应用中,这种方法是足够的鲁棒控制器的性能。
如果电站是强非线性的,或者其特性随时间变化很大,则LTI预测精度可能会降低很多,以至于MPC性能变得不可接受。自适应MPC可以通过调整预测模型来适应不断变化的运行条件来解决这种退化问题。正如在模型预测控制工具箱™软件中实现的那样,自适应MPC使用固定的模型结构,但允许模型参数随时间变化。理想情况下,只要控制器需要预测(在每个控制区间的开始),它就使用适合当前条件的模型。
在为控制系统的平均或最可能的运行条件设计MPC控制器后,可以基于该设计实现自适应MPC控制器。有关设计初始控制器的信息,请参见控制器创建.
在每个控制时间间隔,自适应MPC控制器更新工厂模型和标称条件。一旦更新,模型和条件仍然超过预测水平不变。如果你能预测如何植物和标称条件在将来会发生变化,你可以使用时变MPC指定在预测范围内发生变化的模型。
用于控制非线性或随时间变化的植物的另一种选择是使用增益调度MPC控制。看到Gain-Scheduled MPC.)
作为自适应MPC基础的对象模型必须是一个LTI离散时间状态空间模型。看到基本模型或者线性化基础知识(金宝app仿真软件控制设计)有关创建和修改这样的系统的信息。该工厂模型结构如下:
在这里,矩阵一个,Bu,Bv,Bd,C,Dv, 和Dd是可以随时间而变化的参数。表达式中的其它变量是:
k—时间索引(当前控制间隔)。
x- - - - - -nx工厂模型的状态。
u- - - - - -nu操纵输入(MVS)。这些是由MPC控制器调整一个或多个输入。
v- - - - - -nv测量扰动输入。
d- - - - - -nd无边无际的扰动输入。
y- - - - - -ny植物输出,包括nym测量和n余无边无际的输出。输出的总数,ny=nym+n余.还,nym≥1(至少有一个测量输出)。
用于自适应MPC控制工厂模型附加要求是:
样品时间(Ts
)是一个常数,相同于MPC控制间隔。
时间延迟(如果有的话)被吸收为离散状态(参见,例如,控制系统工具箱™)absorbDelay
功能)。
nx,nu,ny,nd,nym, 和n余都是常数。
自适应MPC禁止直接馈通从任何操纵变量到任何植物输出。因此,Du= 0在上述模型。
输入和输出信号的配置保持不变。
有关为MPC控件创建工厂模型的详细信息,请参见工厂产品规格.
传统的MPC控制器包括一个被控对象模型所适用的标称工作点,例如线性化一个非线性模型以获得LTI近似的条件。的模型。Nominal
属性包含此信息。
在自适应MPC中,随着时间的推移,您应该更新标称工作点,以与更新的工厂模型保持一致。
您可以根据与名义条件的偏差来编写工厂模型:
在这里,矩阵一个,B,C, 和D是要更新的参数矩阵。ut组合的工厂输入变量,包括u,v, 和d变量如上所定义。要更新的标称条件是:
- - - - - -nx标称状态
- - - - - -nx名义状态增量
- - - - - -nut名义上的输入
- - - - - -ny额定输出
默认情况下,MPC使用静态卡尔曼滤波器(KF)更新其控制器状态,其中包括nxp工厂模型,nd(≥0)扰动模型状态nn(≥0)测量噪声模型状态。这KF需要两个增益矩阵,l和米.默认情况下,MPC控制器初始化过程中计算它们。他们依赖于植物,干扰和噪声模型参数和假设,关于随机噪声信号驱动的干扰和噪声模型。有关传统MPC状态估计的详细信息,请参阅控制器状态估计.
自适应MPC采用卡尔曼滤波器来调整增益,l和米,在每个控制时间间隔以保持与更新的工厂模型的一致性。其结果是一个线性时变卡尔曼滤波器(LTVKF):
在这里,问,R, 和N是在MPC状态估计中定义的常数协方差矩阵。一个k和Cm k是状态空间参数矩阵为整个控制器的状态,定义为传统MPC但受植物模型的部分更新,以时间k.的值Pk|k1时刻的状态估计误差协方差矩阵是多少k根据当时可获得的信息k1。最后,lk和米k是更新KF增益矩阵。有关在传统MPC使用的KF制定详细信息,请参阅控制器状态估计.默认情况下,初始条件,P0 | -1,是任何模型更新之前的静态KF解决方案。
该KF增益和状态误差协方差矩阵取决于模型参数和假设导致恒问,R, 和N矩阵。如果植物模型是常数,则lk和米k收敛到传统MPC中的等效静态KF解。
给出了控制器在时刻的状态演化方程k是否与传统MPC的KF配方相同控制器状态估计,但估计量增益和状态空间矩阵更新到时间k.
您必须更新使用外部MPC控制器的程序控制器状态的选项,然后在每个控制时刻提供更新的状态到MPC,k.在这种情况下,MPC控制器跳过所有KF和LTVKF计算。