主要内容

经济政策委员会对环氧乙烷生产的控制

这个例子展示了如何最大化的生产环氧乙烷装置使用一个经济利润MPC控制器。这个控制器是使用非线性MPC控制器实现一个定制的基于绩效的成本函数。

非线性氧化乙烯装置

乙烯(C2H4)转换成环氧乙烷(灭菌)发生在冷却,气相催化反应器。三个反应同时发生在反应器内的气相混合:

C2H4 + 0.5 * O2 - >灭菌
C2H4 + 3 * O2 - > 2 * CO2 + 2 * H2O
灭菌+ 2.5 * O2 - > 2 * CO2 + 2 * H2O

第一个反应是想要和其他两个是多余的,因为他们减少灭菌生产。的混合空气和乙烯不断送入反应堆。反应堆的第一原则非线性动态模型是实现为一组常微分方程(常微分方程)oxidationPlantCT函数。有关更多信息,请参见oxidationPlantCT.m

植物有四个州:

  • 气体密度在反应堆(x_1美元)

  • 反应堆C2H4浓度(x_2美元)

  • 在反应堆灭菌浓度(x_3美元)

  • 反应堆温度(x_4美元)

工厂有三个输入:

  • 饲料C2H4浓度(u_1美元)

  • 反应堆冷却套管温度(u_2美元)

  • C2H4饲料率(u_3美元)

所有变量在模型中是按比例缩小的无量纲和团结的秩序。基本的植物方程和参数从[1]获得一些输入/输出的变化定义和排序。

植物是渐近开环稳定。

控制目标和约束

主要控制目标是最大化环氧乙烷(灭菌)产量(进而最大化利润)在任何稳态操作点,C2H4在原料流的可用性。

灭菌生产率被定义为产品的灭菌浓度反应器(x_3美元)和总容积流量退出反应堆($ {u_3} / {u_1} * {x_4} $)。

操作点实际上是由三个输入框。u_1美元是C2H4提要中的浓度,MPC控制器可以操纵。u_2美元是冷却套管温度,使温度稳定。u_3美元是C2H4进给速率,表明可用乙烯来自一个上游的过程。灭菌产量更高的进给速率增加了可实现的。在这个例子中,两个u_2美元u_3美元测量干扰。

在最初的操作点最优产量

在初始条件,冷却夹克温度1.1和C2H4可用性0.175

Tc = 1.1;C2H4Avalability = 0.175;

灭菌生产速度席卷计算最优的操作范围C2H4提要中的浓度(u_1美元)使用fsolve

uRange = 0.1:0.1:3;EORate = 0(长度(uRange), 1);optimopt = optimoptions (“fsolve”,“显示”,“没有”);ct = 1:长度(uRange) xRange =实际(fsolve (@ (x) oxidationPlantCT (x, [uRange (ct); Tc; C2H4Avalability]),兰德(1、4),optimopt));EORate (ct) = C2H4Avalability / uRange (ct) * xRange (3) * xRange (4);结束图绘制(uRange EORate)包含(“C2H4浓度提要”)ylabel (“灭菌产量”)

0.0156实现的最佳灭菌产量u_1美元= 1.6。换句话说,如果工厂最初经营C2H4浓度不同饲料,你期望经济MPC控制器将它1.6灭菌产量达到最优。

非线性MPC设计

经济政策委员会可以实现非线性MPC控制器。预测模型有四个状态和三个输入(一个MV和两个MDs)。在这个例子中,因为你不需要一个输出函数,假设y = x。

nlobj = nlmpc (4 4“MV”,1“医学博士”3 [2]);nlobj.States (1)。Name =“窝”;nlobj.States (1)。Name =“C2H4”;nlobj.States (1)。Name =“灭菌”;nlobj.States (1)。Name =“Tc”;nlobj.MV。Name =“CEin”;nlobj.MD (1)。Name =“Tc”;nlobj.MD (2)。Name =“可用性”;
在标准成本函数、零重量默认应用到一个或多个ov因为有MVs比ov少。

非线性植物模型中定义oxidationPlantDT。它是一个离散时间模型,多步显式欧拉方法用于集成。虽然这个示例使用非线性植物模型,你也可以使用线性植物模型实现经济政策委员会。

nlobj.Model。StateFcn =“oxidationPlantDT”;nlobj.Model。IsContinuousTime = false;

一般来说,为了提高计算效率,这是最佳实践提供一个分析雅可比矩阵函数预测模型。在本例中,您没有提供一个因为仿真是不够快。

的相对较大的样品时间25这里使用秒时适当的植物稳定和主要目标是经济优化。预测地平线2,提供一个预测时间是50秒。

Ts = 25;nlobj。Ts = t;%样品时间nlobj。PredictionHorizon = 2;%预测地平线nlobj。ControlHorizon = 1;%控制地平线

中的所有状态预测模型基于第一原则必须是积极的。因此,指定一个最小零的绑定状态。

nlobj.States (1)。最小值= 0;nlobj.States (2)。最小值= 0;nlobj.States (3)。最小值= 0;nlobj.States (4)。最小值= 0;

植物输入u_1美元之间必须保持在饱和范围内吗0.13

nlobj.MV。最小值= 0.1;nlobj.MV。Max = 3;

利率的变化u_1美元也仅限于+ / -0.02/秒。

nlobj.MV。杀鼠灵= -0.02 * Ts;nlobj.MV。RateMax = 0.02 * Ts;

经济政策委员会的定义代价函数

而不是使用标准的二次目标函数,一个自定义代价函数作为替代。你想最大化灭菌生产速度预测地平线的尽头。

f = (u3 / u1 * x3 * x4)

负号的f用于生产最大化,因为控制器最小化f在优化。有关更多信息,请参见oxidationCostFcn.m

nlobj.Optimization。CustomCostFcn =“oxidationCostFcn”;nlobj.Optimization。ReplaceStandardCost = true;

验证自定义函数

假设工厂开始运作u1 = 0.5

情况= 0.5;

发现美国在稳定状态下使用fsolve

x0 =实际(fsolve (@ (x) oxidationPlantCT (x,[情况;Tc; C2H4Avalability]),兰德(1、4),optimopt));

灭菌生产率是0.0138,0.0156的远离最优条件。

EORate0 = C2H4Avalability /情况* * x0 x0 (3) (4);

验证状态函数和成本函数的初始条件。

validateFcns (nlobj x0,情况,[Tc C2H4Avalability]);
模型。StateFcn就可以了。没有指定的输出函数。假设“y = x”预测模型。优化。CustomCostFcn就可以了。用户提供的模型分析、成本和约束函数完成。

你可以计算使用的第一步nlmpcmove函数。它返回一个MV的1.0,表明经济政策委员会将增加从0.5到1 MV,被控变量率限制约束。

mv = nlmpcmove (x0, nlobj情况,0 (1、4),[Tc C2H4Avalability]);

金宝app与经济MPC控制器仿真软件模型

打开仿真软件模型。金宝app

mdl =“mpc_economicEO”;open_system (mdl)

最初冷却套管温度1.1和保持不变的100秒。然后增加到1.15灭菌生产速度,因此,减少最优0.01560.0135

C2H4最初可用性0.175和保持不变的200秒。然后增加到0.25,因此,提高灭菌产量最优0.01350.0195

模型包括常数(零)参考输出的四个工厂。非线性MPC控制器块需要这些参考信号,但是他们忽视了定制的成本函数。

工厂子系统通过集成的常微分方程计算植物状态oxidationPlantCT.m。假设所有的州是可衡量的,这样你不需要实现一个非线性状态估计在这个例子。的灭菌植物输出瞬时灭菌生产速率,用于显示目的。

模拟模型和分析结果

运行仿真。

open_system ([mdl' / MV ']);open_system ([mdl/灭菌的]);sim (mdl)

因为灭菌装置操作在初始条件不是最优的,它可以提高利润。在第一个100秒,经济MPC控制器逐渐移动工厂真正的最适条件下相同的冷却套管温度和C2H4可用性约束。它可以提高灭菌生产速度:

$ $ \离开({0.0156 - 0.0138}\右)/ 0.0138 = 13 \ % $ $

这可能是每年数百万美元的大规模生产。

在接下来的100秒,冷却套管温度增加1.11.15。经济MPC控制器使植物顺利到新的最优条件0.0135像预期的那样。

在接下来的100秒,C2H4可用性增加0.1750.25。经济再次MPC控制器能够将植物新最佳稳定状态0.0195

关闭仿真软件模型。金宝app

bdclose (mdl)

引用

[1]h . m . Ellis勾勒出p·d·Christofides。“经济模型预测控制设计输入变化率约束处理和保证经济表现。”电脑和化学工程。92卷,2016年,页18-36。

相关的话题