技术领域
[0001] 本
发明属于流程工业优化控制领域,特别涉及一种基于非线性模型离散化的多目标双层预测控制方法。
背景技术
[0002] 连续搅拌反应釜是一种具有强非线性的化学反应器,是化工生产过程中的核心设备。控制性能的好坏直接影响生产效率和产品
质量,因此,很多学者致
力于CSTR控制方法的研究,但是该模型具有复杂的非线性,至今对其仍未有一致的控制方法。
[0003] 单纯考虑控制目标的控制方法虽然保证了产品质量,但是忽略了经济效益,从长远来看对工厂生产不利。采用稳态目标函数为各优化目标函数加权的两级分层控制方法,虽然考虑了控制目标和经济效益,但各优化目标函数的优先级很难保证,权重的选择尚未有一定的准则。采用模型线性化的两级分层控制方法,存在线性化误差,对CSTR这种强非线性、实时控制的系统,误差带来的影响尤其不能忽视。同时,对CSTR这种需要控制出口浓度值,该值又很小的系统扰动不容忽视。因此,本发明基于CSTR模型特点,已存在的CSTR控制方法的不足,提出一种基于连续搅拌反应釜的多目标分层预测控制方法。
发明内容
[0004] 本发明的目的在于针对CSTR强非线性、生产过程中需要兼顾控制性能和经济指标的特点,提出一种CSTR多目标双层预测控制方法,该方法能够处理扰动对控制
算法的影响,避免对模型进行线性化处理,同时能够按照优先级保证控制优化目标。
[0005] 本发明的目的是通过以下技术方案实现的:一种基于连续搅拌反应釜的多目标分层预测控制方法,该方法包括以下步骤:
[0006] (1)采集状态变量x(t)和输入变量u(t)的初始值,所述状态变量x(t)包括出口浓度、反应器体积、反应器
温度,所述输入变量u(t)包括反应器之间的
传热量、反应器出口
阀位;
[0007] (2)将步骤1中的状态变量x(t)和输入变量u(t)的初始代入到CSTR动态模型 y(t)=g(x(t))中。很据动态模型得到CSTR稳态优化模型y(t)=g(x(t)), 为x(t)的导数;y(t)表示输出变量,所述输
出变量包括反应器混合物出口浓度、反应器温度,f、g表示模型方程;
[0008] (3)对CSTR稳态优化模型、CSTR动态模型采用联立法中的有限元
正交配置法进行离散化处理,确定输入变量u(t)的预测值和输出变量y(t)的预测值,并确定使工厂经济效益最大化的输出最优值 输入最优值 为动态控制层提供最优控制目标,所述通过以下方法得到:
[0009] (3.1)可稳性判断,确定系统稳定时输入变量允许
波动的范围u'min,u'max;
[0010]
[0011]
[0012] yij=g(xij)
[0013] xiK=x(i+1)K=xs,i=1...NE
[0014] uiK=u(i+1)K=us,i=1...NE
[0015] umin≤us≤umax
[0016] 其中,J1表示可稳性优化目标,y(kt+l|kt)、y(kt+l-1|kt)分别表示kt时刻对kt+l、kt+l-1时刻的输出预测值,wy表示输出变量的权重矩阵,τij表示第i个有限元第j个插值点,φk(τij)表示状态变量的拉格朗日插值函数,xik表示第i个有限元第k个插值点处状态变量的值,NE表示有限元个数,K表示插值点的个数,hi表示第i个有限元的长度,f(xij,uij)表示模型
状态方程,yij表示通过公式yij=g(xij)计算得到的第i个有限元第j个插值点处对应的输出变量的值,xiK、x(i+1)K、xs分别表示第i个有限元第K个插值点的状态值、第i+1个有限元第K个插值点的状态值、稳态时的状态值,uiK、u(i+1)K、us分别表示第i个有限元第K个插值点的输入值、第i+1个有限元第K个插值点的输入值、稳态时的输入变量值,umin、umax分别表示初始要求允许的输入变量的最小、最大值,若在初始要求允许的范围内,J1≠0,系统的可稳性条件不满足,
控制器停止运行,将umin、umax分别调整为u'min,u'max,使得J1=0。
[0017] (3.2)可行性分析,确定系统稳定时输出变量允许波动的范围y'min,y'max;
[0018]
[0019]
[0020] yij=g(xij)
[0021] xiK=x(i+1)K=xs,i=1...NE
[0022] uiK=u(i+1)K=us,i=1...NE
[0023] y(kt+l|kt)-y(kt+l-1|kt)=0
[0024] u′min≤us≤u′ max
[0025] ymin-δy≤ys≤ymax+δy
[0026] δy≥0
[0027] 其中,J2表示可行性优化目标,δy用来衡量实际输出值是否在控制要求允许波动范围内,us表示输入变量稳态值,wy是输出变量y对应的优先权重矩阵;ymin、ymax分别为初始要求允许的输出变量的最小值和最大值;若在初始要求允许的范围内,J2≠0,不满足可行性条件,将ymin、ymax按照以下方式进行调整,使得J2=0。
[0028] y'min←inf(g(xNEK),ymin)y'max=sup(g(xNEK),ymax)
[0029] 其中xNEK表示第NE个有限元,第K个配置点处的状态变量值。
[0030] (3.3)经济优化,确定全厂经济效益最大化时的输入变量值 和输出变量值[0031]
[0032]
[0033] yij=g(xij)
[0034] xiK=x(i+1)K=xs,i=1...NE
[0035] uiK=u(i+1)K=us,i=1...NE
[0036] y(kt+l|kt)-y(kt+l-1|kt)=0
[0037] u′min≤us≤u′ max
[0038] y′min≤ys≤y′ max
[0039] 其中,J3表示经济优化目标,IRVu、IRVy由全厂优化层给出,a1、a2分别为us,ys的二次权重;在u′min≤us≤u′ max和y′ min≤ys≤y′ max条件下,求出使得J3值最小的并将u′min,u′max,y′min,y′max做如下
修改:
[0040]
[0041]
[0042] (3.4)工作点优化,确定扰动条件下的最优输入变量值
[0043]
[0044]
[0045] yij=g(xij)
[0046] xiK=x(i+1)K=xs,i=1...NE
[0047] uiK=u(i+1)K=us,i=1...NE
[0048]
[0049]
[0050] 其中,J4表示工作点优化目标, 是kt-1时刻操纵变量的最佳稳态值,wu是输入变量u对应的优先权重矩阵。在 和 条件下,求出使得J4值最小的
[0051] (4)根据稳态优化层提供的控制目标 和 确定动态优化命题:
[0052]
[0053] 其中,JA为动态优化命题,jj表示
采样时间点,y(kt+jj|kt)表示根据当前kt时刻的输出值y(kt)和动态离散化模型对未来kt+jj时刻的输出预测值,y(kt)=g(x(kt)),x(kt)通过
扩展卡尔曼观测器得到;u(kt+jj)表示未来kt+jj时刻的操作变量值,Δu(kt+jj)表示输入变量改变量,Δu(kt+jj)=u(kt+jj)-u(kt+jj-1),Qjj、Rjj、Tjj分别表示输出变量权重矩阵、输入变量权重矩阵、输入变量改变量权重矩阵,P、M分别表示预测时域、控制时域。
[0054] (5)对输出预测值y(kt+jj|kt)通过以下方式进行校正:
[0055]
[0056] 其中,JB为校正后的动态优化命题, 表示kt+jj时刻的真实值y(kt+jj)与预测值y(kt+jj|kt)之间的差,采用内点法求解器IPOPT对改进后的动态优化命题进行求解,确定当前kt时刻操作变量 的值。
[0057] (6)不断重复上述步骤,使得y(kt)不断接近于 直到当前kt时刻操作变量 的值与最优稳态输入值 的值相同,JB=0,y(kt)等于 完成多目标分层预测的控制。
[0058] 本发明的有益效果:本发明提出了一种基于连续搅拌反应釜的多目标分层预测控制方法,与传统方法相比,该方法在处理模型方面更加精确,对扰动具有较好的抑制作用,在稳态优化方面能够按照优先级保证优化目标,为连续反应搅拌釜的控制与优化提供了一种较好的方法。
附图说明
[0059] 图1为预测控制两级分层结构图;
[0060] 图2为有限元正交配置图;
[0062] 图4为带观测器的预测控制结构图;
[0063] 图5为对状态进行扩展对结果影响图。
具体实施方式
[0064] 本发明基于连续搅拌反应釜的多目标分层预测控制方法,如图1,结合具体
实施例和附图详细说明,包括以下步骤:
[0065] (1)采集状态变量x(t)和输入变量u(t)的初始值,所述状态变量x(t)包括出口浓度、反应器体积、反应器温度,所述输入变量u(t)包括反应器之间的传热量、反应器出口阀位;如表1和表2所示。
[0066] 表1
[0067]状态变量 初值
A反应釜体积V1 200
A反应釜出料产品浓度q1 0.0357
A反应釜温度T1 446.471
B反应釜体积V2 100
B反应釜出料产品浓度q2 0.0018
B反应釜温度T2 453.2585
[0068] 表2
[0069]输入变量 初值
B反应釜的出口阀位u1 2
传递到A反应釜的热量u2 0
[0070] (2)将步骤1中的状态变量x(t)和输入变量u(t)的初始代入到CSTR动态模型y(t)=g(x(t))中,获取CSTR稳态优化模型y(t)=g(x(t)), 为x(t)的导数;y(t)表示输出变量,所述输出变量包括反应器混合物出口浓度、反应器温度,f、g表示模型方程;
[0071] (3)对CSTR稳态优化模型、CSTR动态模型采用联立法中的有限元正交配置法进行离散化处理,确定输入变量u(t)的预测值和输出变量y(t)的预测值。
[0072] 其中有限元正交配置法通过如下方法实现:
[0073] 定义有限元个数为NE,每个有限元上配置点数为K,在有限元上对状态变量x(t)和控制变量u(t)进行拉格朗日多项式逼近:
[0074] 状态变量:
[0075]
[0076]
[0077] 控制变量:
[0078]
[0079]
[0080] i=1...NE,xi(t),ui(t)分别为状态变量轨迹x(t)及控制变量u(t)在第i个有限元上的拉格朗日插值多项式逼近, 为配置点,i代表第i个有限元, 代表插值系数,Φ、Ψ分别代表状态变量和控制变量对应的拉格朗日插值函数,如图2。
[0081] 上述动态模型离散化后为:
[0082]
[0083] yij=g(xij)
[0084] x10-x0=0
[0085] x(i+1)0=xiK
[0086] 稳态模型离散化后为:
[0087] hif(xij,uij)=0,i=1...NE,j=1...K
[0088] yij=g(xij)
[0089] x10-x0=0
[0090] x(i+1)0=xiK
[0091] hi表示每个有限元的长度,φk表示状态变量对应的拉格朗日插值函数,τij代表配置点,xik表示第i个有限元上第k个配置点的状态变量值,uij表示第i个有限元上第j个配置点的操作变量值,x10为第一个有限元的第0个配置点的值,即状态的初值,该值由工业现场获得,x(i+1)0表示第i+1个有限元的第0个配置点的状态值,xiK表示第i个有限元的第K个配置点的状态值。
[0092] (4)确定使工厂经济效益最大化的输出最优值 输入最优值 为动态控制层提供最优控制目标,所述 通过以下方法得到:
[0093] (4.1)可稳性判断,确定系统稳定时输入变量允许波动的范围u′min,u′max;
[0094]
[0095]
[0096] yij=g(xij)
[0097] xiK=x(i+1)K=xs,i=1...NE
[0098] uiK=u(i+1)K=us,i=1...NE
[0099] umin≤us≤umax
[0100] 其中,J1表示可稳性优化目标,y(kt+l|kt)、y(kt+l-1|kt)分别表示kt时刻对kt+l、kt+l-1时刻的输出预测值,wy表示输出变量的权重矩阵,τij表示第i个有限元第j个插值点,φk(τij)表示状态变量的拉格朗日插值函数,xik表示第i个有限元第k个插值点处状态变量的值,NE表示有限元个数,K表示插值点的个数,hi表示第i个有限元的长度,f(xij,uij)表示模型状态方程,yij表示通过公式yij=g(xij)计算得到的第i个有限元第j个插值点处对应的输出变量的值,xiK、x(i+1)K、xs分别表示第i个有限元第K个插值点的状态值、第i+1个有限元第K个插值点的状态值、稳态时的状态值,uiK、u(i+1)K、us分别表示第i个有限元第K个插值点的输入值、第i+1个有限元第K个插值点的输入值、稳态时的输入变量值,umin、umax分别表示初始要求允许的输入变量的最小、最大值,如表3,若在初始要求允许的范围内,J1≠0,表示系统的可稳性条件不满足,控制器停止运行,将umin、umax分别调整为u′min,u′max,使得J1=0。
[0101] 表3
[0102]输入变量 上下限
B反应釜的出口阀位u1 0-1
传递到A反应釜的热量u2 0-0.6
[0103] (4.2)可行性分析,确定系统稳定时输出变量允许波动的范围y'min,y'max;
[0104]
[0105]
[0106] yij=g(xij)
[0107] xiK=x(i+1)K=xs,i=1...NE
[0108] uiK=u(i+1)K=us,i=1...NE
[0109] y(kt+l|kt)-y(kt+l-1|kt)=0
[0110] u′min≤us≤u′ max
[0111] ymin-δy≤ys≤ymax+δy
[0112] δy≥0
[0113] 其中,J2表示可行性优化目标,δy用来衡量实际输出值是否在控制要求允许波动范围内,us表示输入变量稳态值,wy是输出变量y对应的优先权重矩阵;ymin、ymax分别为初始要求允许的输出变量的最小值和最大值,如表4;若在初始要求允许的范围内,J2≠0,不满足可行性条件,将ymin、ymax按照以下方式进行调整,使得J2=0。
[0114] y'min←inf(g(xNEK),ymin)y'max=sup(g(xNEK),ymax)
[0115] 其中xNEK表示第NE个有限元,第K个配置点处的状态变量值。
[0116] 表4
[0117]输出变量 控制要求
A反应釜的出料产品浓度Ca1 0.004-0.006
B反应釜温度T2 480-495
[0118] (4.3)经济优化,确定全厂经济效益最大化时的输入变量值 和输出变量值[0119]
[0120]
[0121] yij=g(xij)
[0122] xiK=x(i+1)K=xs,i=1...NE
[0123] uiK=u(i+1)K=us,i=1...NE
[0124] y(kt+l|kt)-y(kt+l-1|kt)=0
[0125] u′min≤us≤u′ max
[0126] y′min≤ys≤y′ max
[0127] 其中,J3表示经济优化目标,IRVu、IRVy由全厂优化层给出,a1、a2分别为us,ys的二次权重;在u′min≤us≤u′ max和y′ min≤ys≤y′ max条件下,求出使得J3值最小的并将u′min,u′max,y′min,y′max做如下修改:
[0128]
[0129]
[0130] 本实例中选取B反应釜温度T2作为经济优化指标,IRVy=489。
[0131] (4.4)工作点优化,确定扰动条件下的最优输入变量值
[0132]
[0133]
[0134] yij=g(xij)
[0135] xiK=x(i+1)K=xs,i=1...NE
[0136] uiK=u(i+1)K=us,i=1...NE
[0137]
[0138]
[0139] 其中,J4表示工作点优化目标, 是kt-1时刻操纵变量的最佳稳态值,wu是输入变量u对应的优先权重矩阵。在 和 条件下,求出使得J4值最小的 程序流程图如图3。
[0140] (5)根据稳态优化层提供的控制目标 和 确定动态优化命题:
[0141]
[0142] 其中,JA为动态优化命题,y(kt+jj|kt)表示根据当前kt时刻的输出值y(kt)和动态离散化模型对未来kt+jj时刻的输出预测值,y(kt)=g(x(kt)),x(kt)通过扩展卡尔曼观测器得到,如图4;u(kt+jj)表示未来kt+jj时刻的输入变量值,Δu(kt+jj)表示输入变量改变量,Δu(kt+jj)=u(kt+jj)-u(kt+jj-1),Qjj、Rjj、Tjj分别表示输出变量权重矩阵、输入变量权重矩阵、输入变量改变量权重矩阵,P、M分别表示预测时域、控制时域。
[0143] 其中x(kt)可以通过如下方式得到:
[0144] (5.1)对状态x(kt)扩展,对扰动建模
[0145] 采用扰动建模,状态扩展的方式获取状态xk的精确估计值,消除误差。通常认为不可测扰动d为随机过程,不失一般性,我们假设扰动d通过如下方程获得:
[0146]
[0147]
[0148] 其中ξ是均值为零,协方差为Qξ的高斯白噪声,Aw,Bw,Cw为扰动模型参数对状态进行扩展得到如下联合扰动模型:
[0149]
[0150]w
[0151] Fts表示对模型方程进行一步积分、离散化, 表示扩展后的状态变量,B1为过程噪声矩阵, 为过程噪声, 为测量噪声;两者分别为均值为零、协方差为Rw、Rv的高斯白噪声。
[0152] (5.2)通过扩展卡尔曼观测器实现状态估计
[0154]
[0155] 上述预测模型的测量校正模型如下:
[0156]
[0157] 其中 表示扩展卡尔曼增益矩阵,Lx、Ld表示状态、扰动卡尔曼增益矩阵,该值根据卡尔曼增益矩阵求解公式在线实时求解得到, 表示kt-1时刻的状态值,表示kt-1时刻对kt时刻的状态预测值, 表示kt-1时刻对kt时刻的扰动预测值,表示修正后kt时刻的扰动值, 表示修正后kt时刻的状态估计值,即x(kt)的值。状态有无扩展对控制结果的影响如图5。
[0158] (6)对输出预测值y(kt+jj|kt)通过以下方式进行校正:
[0159]
[0160] 其中,JB为校正后的动态优化命题, 表示kt+jj时刻的真实值y(kt+jj)与预测值y(kt+jj|kt)之间的差,采用内点法求解器IPOPT对改进后的动态优化命题进行求解,确定当前kt时刻操作变量 的值。
[0161] (7)不断重复上述步骤2、3、4、5,使得y(kt)不断接近于 直到当前kt时刻操作变量 的值与最优稳态输入值 的值相同,JB=0为止。此时输出变量、输入变量的结果如表5,表6,完成多目标分层预测的控制。
[0162] 表5
[0163]输出变量 稳态值
A反应釜的出料产品浓度Ca1 0.0042
B反应釜温度T2 489.3997
[0164] 表6
[0165]输入变量 稳态值
B反应釜的出口阀位u1 0.9013
传递到A反应釜的热量u2 0.5602
[0166] 由表5看出输入、输出变量的稳态值均在控制目标要求范围内,同时B反应釜温度T2=489.3997与工厂经济优化目标T2=489相差为0.3997,几乎为零可以忽略,因此认为满足经济优化指标,证明该方法的有效性。
[0167] 以上实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和
权利要求的保护范围内,对本发明作出的任何修改或改变,都落入本发明的保护范围。