CN113325809A - 基于双模式模型的过程控制 - Google Patents
基于双模式模型的过程控制 Download PDFInfo
- Publication number
- CN113325809A CN113325809A CN202110221097.9A CN202110221097A CN113325809A CN 113325809 A CN113325809 A CN 113325809A CN 202110221097 A CN202110221097 A CN 202110221097A CN 113325809 A CN113325809 A CN 113325809A
- Authority
- CN
- China
- Prior art keywords
- solution
- constraint
- movement
- control
- controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000009977 dual effect Effects 0.000 title claims abstract description 30
- 238000004886 process control Methods 0.000 title claims description 34
- 238000000034 method Methods 0.000 claims abstract description 289
- 230000008569 process Effects 0.000 claims description 228
- 230000000977 initiatory effect Effects 0.000 claims description 20
- 238000005259 measurement Methods 0.000 claims description 19
- 238000005457 optimization Methods 0.000 claims description 18
- 238000012544 monitoring process Methods 0.000 claims 1
- 230000006870 function Effects 0.000 description 67
- 238000004891 communication Methods 0.000 description 21
- 239000013598 vector Substances 0.000 description 14
- 230000008901 benefit Effects 0.000 description 12
- 238000011969 continuous reassessment method Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 11
- 239000011159 matrix material Substances 0.000 description 9
- 230000004044 response Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 238000003860 storage Methods 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000011112 process operation Methods 0.000 description 3
- 239000002994 raw material Substances 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012905 input function Methods 0.000 description 2
- 238000012804 iterative process Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000010248 power generation Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000002484 cyclic voltammetry Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001739 density measurement Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000003208 petroleum Substances 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000000284 resting effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000005477 standard model Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012731 temporal analysis Methods 0.000 description 1
- 238000000700 time series analysis Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/041—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a variable is automatically adjusted to optimise the performance
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41845—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by system universality, reconfigurability, modularity
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/048—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/41885—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by modeling, simulation of the manufacturing system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/33—Director till display
- G05B2219/33273—DCS distributed, decentralised controlsystem, multiprocessor
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Manufacturing & Machinery (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Feedback Control In General (AREA)
Abstract
所公开的***和技术使基于模型的控制器能够进行双模式操作,其中,控制器能够以(i)约束解模式和(ii)无约束解模式两者进行操作。双模式操作改进了控制,因为它在可能时使用约束解模式操作(约束解通常能够实现出色的控制),并且在不可能使用约束解模式时(例如,当不可能在可用的时间内形成约束解时)使用无约束解模式。与典型的模型预测控制(MPC)控制器相比,这可以实现出色的控制。
Description
技术领域
本公开内容总体上涉及使用基于模型的预测控制,并且更具体地,涉及使用同时生成针对优化问题的约束和无约束解的双模式操作。
背景技术
分布式过程控制***,例如在发电、化学、石油或其他过程中使用的那些分布式或可扩展过程控制***,通常包括彼此通信地耦合、经由过程控制网络通信地耦合到至少一个主机或操作员工作站、以及经由模拟、数字或组合的模拟/数字总线通信地耦合到一个或多个仪表或现场设备的一个或多个过程控制器。
现场设备执行过程或工厂内的功能,例如打开或关闭阀、开启和关闭设备、以及测量过程参数。示例性现场设备包括阀、阀***、开关和变送器(例如,包括用于测量温度、压力或流量的传感器的设备;以及用于发送感测到的温度、压力和流量的变送器)。
通常位于工厂环境内的过程控制器接收指示由现场设备获取的过程测量结果的信号(或与现场设备有关的其它信息),并执行控制器应用,该控制器应用运行例如做出过程控制决策的不同控制模块,基于接收到的信息生成控制信号,并与智能现场设备(例如,和Fieldbus现场设备)中实现的控制模块或块进行配合。
控制模块的执行使过程控制器通过通信链路或信号路径向现场设备发送控制信号,从而控制过程工厂或***的至少一部分的操作(例如,控制在工厂或***内运行或执行的一个或多个工业过程的至少一部分)。例如,第一组控制器和现场设备可以控制由过程工厂或***控制的过程的第一部分,而第二组控制器和现场设备可以控制过程的第二部分。
由一个或多个控制器、通信地连接到一个或多个控制器的现场设备、以及促进控制器与现场设备之间的通信的中间节点形成的网络可以被称为“I/O网络”或“I/O子***”。
来自(多个)I/O网络的信息可以通过数据高速公路或通信网络(“过程控制网络”)对一个或多个其它硬件设备(例如操作员工作站、个人计算机或计算设备、手持设备、数据历史库、报告生成器、集中式数据库、或其它集中式管理计算设备)可用,这些设备通常放置在控制室或远离工厂的恶劣现场环境的其它位置,例如,在过程工厂的后端环境中。
通过过程控制网络传送的信息使操作员或维护人员能够经由连接到网络的一个或多个硬件设备来执行关于过程的期望功能。这些硬件设备可以运行这样的应用,该应用使操作员能够例如更改(多个)过程控制例程的设置,修改过程控制器或智能现场设备内的控制模块的操作,查看过程的当前状态或过程工厂中特定设备的状态,查看现场设备和过程控制器生成的警报,模拟过程的操作以培训人员或测试过程控制软件,诊断过程工厂中的问题或硬件故障等。硬件设备、控制器和现场设备使用的过程控制网络或数据高速通道可以包括有线通信路径、无线通信路径、或有线和无线通信路径的组合。
作为示例,由艾默生(Emerson)销售的DeltaVTM控制***和OvationTM分布式控制***(DCS)每个都包括多个应用,这些应用存储在位于过程工厂内不同位置的不同设备中并由它们执行。驻留在过程控制***或工厂的后端环境中的一个或多个工作站或计算设备中的配置应用使用户能够创建或更改过程控制模块,并经由数据高速通道将这些过程控制模块下载到专用分布式***。通常,这些控制模块由通信互连的功能块组成,这些功能块是面向对象的编程协议中的对象,这些对象(i)基于其输入执行控制方案中的功能,以及(ii)将输出提供给控制方案中的其它功能块。配置应用还可以允许配置设计者创建或更改操作员界面,查看应用使用该操作员界面将数据显示给操作员,并使操作员能够更改过程控制例程中的设置,例如设定值。
每个专用控制器(在某些情况下,还包括一个或多个现场设备)存储并执行相应的控制器应用,该控制器应用运行分配并下载至其的控制模块以实现实际的过程控制功能。可以在一个或多个操作员工作站上执行(或在与操作员工作站和数据高速通道通信连接的一个或多个远程计算设备上执行)的查看应用经由数据高速通道从控制器应用接收数据,并使用用户界面向过程控制***设计者、操作员或用户显示该数据,并且可以提供许多不同的视图(例如操作员视图、工程师视图、技术人员视图等)中的任何一个。数据历史库应用通常存储在数据历史库设备中并由数据历史库设备执行,该数据历史库设备收集并存储跨数据高速通道提供的部分或全部数据,而配置数据库应用可以在附接到数据高速通道的另一台计算机中运行,以存储当前的过程控制例程配置和与之相关的数据。替代地,配置数据库可以位于与配置应用相同的工作站中。
除了过程控制器、I/O卡和现场设备之外,典型的过程控制***还包括许多其它支持设备,这些支持设备对于过程操作也是必需的或与之相关。这些附加设备包括例如电源装备、发电和配电装备、旋转装备(例如涡轮机等),它们位于典型工厂的许多地方。
关于过程控制器,控制器通常可以分为两类:传统控制器(例如PID控制器)和基于模型的控制器(例如MPC控制器)。这些类型的控制器中的每一种都可以控制过程,该过程的特征可以在于具有一个或多个过程输出(例如,流量、压力、温度、成分、湿度、不透明度、密度测量等)和一个或多个过程输入(例如,阀位置、流率等)。基于模型的控制器具有优于PID控制器等传统控制器的优势,因为在控制复杂过程时,基于模型的控制器可执行比传统控制器更有效的控制。这可以至少部分地归因于基于模型的控制器的预测正被控制过程的未来状态的能力。
传统的控制器通常基于反馈(即,受控变量的测量值)和过程输出的期望值(即,设定值)来操纵过程输入(其可以称为“操纵变量”),以改变过程输出(其可以称为“受控变量”或简称为“过程变量”)。
通过比较,诸如本文所述的基于模型的控制器(例如,模型预测控制器或MPC)相对于诸如PID控制器的传统控制器具有优势,因为基于模型的控制器可以基于表示正在被控制的过程输入与过程输出之间的动态关系的过程模型来预测过程的将来状态。即,基于模型的控制器不仅可以基于过程输出的反馈和期望值,而且还可以基于过程输出的预测的将来值来实现控制,过程控制器基于过程输出的过程模型和测量结果来预测或预计预测的将来值。因此,基于模型的控制器可以以传统控制器无法解决的方式考虑潜在的未来事件,并且对于控制具有显著多变量交互作用的复杂过程(例如,在单个操纵的变量或过程输出的变化影响多个其它过程输出的(多个)值的情况下)。
尽管基于模型的控制器提供了许多期望的性能特征,但是过程控制行业在完全采用基于模型的控制技术方面进展缓慢。这种有限的采用至少可以部分归因于以下事实:基于模型的控制器通常需要准确的过程模型来实现对过程的有效控制。不幸的是,过程特性经常随时间而变化。如果基于模型的控制器继续将旧的过程模型用于已改变的过程,则基于模型的控制器的性能会由于过程模型不匹配而迅速下降(即,过程模型的特征与被建模的过程的特征不匹配)。为了避免这种性能下降,通常需要校正过程模型不匹配。
通常,基于模型的控制器通过在模型识别或生成过程期间生成新的过程模型来校正过程模型不匹配,以使得新的过程模型与过程的当前特性匹配。不幸的是,模型生成可能会有问题,因为模型生成通常涉及中断过程的正常控制。如上所述,基于模型的控制器使用的过程模型通常表示被控制过程的输入与输出之间的动态关系。传统上,这些动态关系是在模型生成过程期间捕获的,该模型生成过程涉及(i)通过更改一个或多个操纵变量将已知的干扰或失调引入过程,以及(ii)观察过程如何对操纵变量的改变做出反应。当过程完成对操作变量的改变的响应并达到稳定状态时,控制器可以基于对操纵变量的改变与观察到的过程响应之间的关系生成过程模型。控制器随后可以使用新的(并且可能更准确的)过程模型来恢复正常控制。
不幸的是,模型生成通常涉及中断过程的正常控制以引入先前描述的已知干扰,这可能是有问题的。特别是,中断正常控制通常会对过程的操作产生负面影响,并可能导致材料或时间的浪费。在某些情况下,模型生成可能会非常耗时,从而放大了这种负面影响。例如,对于某些缓慢的过程,模型生成可能会花费很长时间,其中过程变量可能需要几分钟、几小时甚至几天才能达到设定值或最终静止值。此外,基于模型的控制器可能需要频繁的模型重生,因为过程的特征通常会由于装备故障或性能下降、大气变化、原材料变化等原因而随时间变化。总之,过程控制行业在完全采用基于模型的控制技术方面进展缓慢,因为模型生成过程(传统上包括中断正常操作、引入干扰、观察过程响应,直到过程达到稳定状态,并基于观察值生成模型)可能需要很长时间,并因此可能干扰正常的操作目标。
无论如何,即使撇开过程模型不匹配的问题,基于模型的控制器的采用也受到限制,因为在有限的时间帧内形成精确的预测是很困难的。一般而言,过程控制器被配置为以相当规则的时间间隔(例如,每几秒钟到每几分钟)将控制器输出发送到现场设备。在理想情况下,基于模型的控制器会通过多个时间间隔对未来进行准确的预测。但是,由于在给定的时间间隔内形成这些准确而精确的预测可能会带来挑战(特别是对于包括多个相互作用的输入和输出的复杂过程而言),因此,通过实施基于模型的控制可能以其它方式获取的优势会减少或排除。结果,过程工厂经常依靠传统的控制技术,而不是基于模型的控制技术。
注意,该背景描述提供了促进理解和领会下面的详细描述的上下文。在此背景技术部分中所描述的范围内(以及在申请时可能无法视为现有技术的背景技术说明的各个方面),既没有明确也没有暗示将目前署名的发明人的工作作为本公开内容的现有技术。
发明内容
所公开的***和技术实现了用于基于模型的控制器的双模式操作,其中,该控制器能够以(i)约束解模式,以及(ii)无约束解模式两者进行操作。双模式操作改进了控制,因为在可能时它能够使用约束解模式操作(约束解模式通常实现出色的控制),并且在不可能使用约束解模式时(例如,当不可能在可用的时间内形成约束解时)使用无约束解模式。与典型的模型预测控制(MPC)控制器相比,这实现了出色的控制。
在实施例中,包括以下任何一项或多项:(A)经由耦合到一个或多个现场设备的过程控制器对由过程变量(PV)集合表示的过程执行基于模型的控制,所述过程变量(PV)集合包括(i)可由过程控制器经由一个或多个现场设备调整的操纵变量(MV)集合、以及(ii)受控变量(CV)集合,每个CV都依赖于MV集合中的一个或多个MV;(B)在扫描周期开始时,由过程控制器发起扫描,以获得CV的当前测量值集合;(C)在扫描周期结束之前,执行包括根据过程模型和PV的约束集合选择用于MV集合的、将由过程控制器执行的当前移动计划的双模式操作;以及(D)在扫描周期结束之前,通过以下步骤将MV集合设置为包括在当前移动计划中的值集合来执行对过程的控制:将携带值集合的控制器输出集合发送给现场设备,以使得现场设备将MV集合驱动到值集合。执行双模式操作可以包括:(i)(i)使用CV集合的当前测量值集合作为过程模型的模型输入,发起以下两者的生成:(a)无约束解,其包括未由约束集合界定的一系列未界定的移动计划,以及(b)约束解,其包括避免违反约束集合中的任何一个的一系列经界定的移动计划。执行双模式操作可以进一步包括:(ii)当在扫描周期结束之前生成约束解时:从约束解的一系列经界定的移动计划中选择第一移动计划,作为当前移动计划;以及(iii)当在扫描周期结束之前未生成约束解时:从无约束解的一系列未界定的移动计划中选择第一移动计划,作为当前移动计划。
在实施例中,一种方法包括以下任一项或多项:(A)执行基于双模式模型的过程控制器,其被配置为控制过程控制环境中的一个或多个现场设备;(B)通过基于模型的控制器发起扫描,以获得过程变量(PV)集合的当前值集合,当前值集合表示受控过程的当前状态,过程变量包括多个受控变量(CV)和多个操纵变量(MV);(C)利用过程模型生成优化问题的无约束解,使用过程模型,生成针对多个MV的一系列移动计划以实现预定目标,而不管一系列移动计划中的任何一个是否违反PV的约束集合中的任何一个,以使得一系列移动计划中的每个移动计划中的每个MV的值不由约束集合界定;(D)利用过程模型发起优化问题的约束解的生成。
发起约束解的生成可以包括以下任何一项或多项:(i)将无约束解存储为候选解;(ii)通过分析候选解来从多个MV中对第一MV进行界定,从而:(a)识别约束的首次违反,并确定第一MV导致首次违反;以及(b)基于在首次违反之前排定的移动计划中包括的第一MV的一个或多个值,计算第一MV的允许范围。生成约束解还可以包括:(iii)通过以迭代方式生成包括针对每个剩余MV的修改的一系列移动计划的修改的候选解,来从多个MV中对剩余MV进行界定,以使得每个修改的候选解将先前界定的MV保持在所计算的允许范围内,并且使得每个后续的修改的候选解包括比先前的修改的候选解少一个的未界定MV,其中,剩余MV以这样的顺序来进行界定:该顺序基于剩余MV中的哪个MV首先违反针对每个修改的候选解的约束;和/或(iv)在已经界定了多个MV中的每个MV,以使得最近修改的候选解包括最终的一系列移动计划之后,通过将最近修改的候选解存储为约束解来最终确定约束解,该最终的一系列移动计划不违反约束集合中的任何一个:(E)当扫描周期在约束解被最终确定之前到期时:(i)在无约束解的第一移动计划中,修改违反约束集合中的任何一个的任何值,以实现未违反约束集合中的任何一个的经界定的第一移动计划,并且(ii)将无约束解的经界定的第一移动计划用于控制器输出集合,以根据经界定的第一移动计划来控制一个或多个现场设备;以及(F)当约束解在扫描周期到期之前被最终确定时,将约束解的第一移动计划用于控制器输出集合,以根据经界定第一移动计划来控制一个或多个现场设备。
注意,已经提供了本发明内容以介绍在以下详细描述中进一步描述的一系列概念。如详细描述中所解释的,某些实施例可以包括在本发明内容中未描述的特征和优点,并且某些实施例可以省略在该发明内容中描述的一个或多个特征或优点。
附图说明
根据实施例,以下描述的每个附图描绘了所公开的(多个)***或(多个)方法的一个或多个方面。具体实施方式参考以下附图中包括的附图标记。
图1是过程控制***的框图,该过程控制***包括具有基于双模式模型的控制(DMMC)块的控制器,该控制器可被实现为控制过程。
图2示出了示例性PID控制例程,该示例性PID控制例程无法实现预测控制或与图1所示DMMC块提供的双模式模型控制相关联的任何对应的益处。
图3是描绘可由图1所示的控制器实现的示例性的基于模型的控制操作的图,该操作相对于传统的反馈控制技术(例如与图2所示的控制回路相关的技术)具有许多益处。
图4是也在图1中示出的基于双模式模型的控制回路的示例性示意图。
图5例示了用于实现基于双模式模型的控制的示例性方法。
图6例示了用于实现无约束解的示例性方法。
图7例示了用于实现约束解的示例性方法。
具体实施方式
所公开的***和技术实现了用于基于模型的控制器的双模式操作,其中,该控制器能够以(i)约束解模式和(ii)无约束解模式两者进行操作。双模式操作改进了控制,因为它当可能时能够使用约束解模式操作(约束解模式通常能够实现出色的控制),并且在不可能使用约束解模式时(例如,在无法在可用的时间内形成约束解时)能够使用无约束解模式。与典型的模型预测控制(MPC)控制器相比,这可实现出色的控制。
示例性过程控制环境
诸如图1所示的过程控制***10可以用于实现本文描述的基于双模式模型的控制技术以控制过程。受控过程可以是任何合适的过程,并且可以说具有一个或多个表征过程的状态(例如,储罐液位、流率、材料温度等)的“过程输出”和一个或多个“过程输入”(例如,各种环境条件和致动器的状态、对其进行操纵可能会使得过程输出发生变化)。
在该示例中,过程控制***10包括过程控制器11,该过程控制器11连接到数据历史库12和一个或多个主机工作站或计算机13(其可以是任何类型的个人计算机、工作站等),每个主机工作站或计算机13都具有显示屏幕14。控制器11还经由输入/输出(I/O)卡26和28连接到现场设备15-22。数据历史库12可以是任何期望类型的数据收集单元,其具有任何期望类型的存储器和任何期望或已知的软件、硬件或固件以用于存储数据。在图1中,控制器11使用有线通信网络和通信方案通信地连接到现场设备15-22。
通常,现场设备15-22可以是任何类型的设备(例如传感器、阀、变送器、***等),而I/O卡26和28可以是符合任何期望的通信或控制器协议的任何类型的I/O设备。控制器11包括处理器23,该处理器23实现或监督存储在存储器24中的一个或多个过程控制例程(或其任何模块、块或子例程)。一般而言,控制器11与设备15-22、主计算机13和数据历史库12通信,以按任何期望的方式控制过程。此外,控制器11使用通常被称为的功能块的部分来实现控制策略或方案,其中每个功能块是与其它功能块结合操作(经由称为链接的通信)的总体控制例程的对象或其它部分(例如,子例程),以实现过程控制***10内的过程控制回路。功能块通常执行输入功能(例如与变送器、传感器或其它过程参数测量设备相关联的输入功能)、控制功能(例如与执行PID、MPC、模糊逻辑等控制技术的控制例程相关联的控制功能)、或控制某个设备(例如阀)的操作的输出功能中的一个,以执行过程控制***10内的某个物理功能。当然,存在混合功能块和其它类型的功能块并且可以在本文中使用。如下所述,功能块可以存储在控制器11或其它设备中并由它们执行。
示例性单回路控制回路32和34
如图1的分解框30所示,控制器11可以包括多个单回路控制例程,被例示为控制例程32和34,并且,如果需要,可以实现一个或多个高级控制回路,被例示为控制回路36。每个这样的控制回路通常被称为控制模块。单回路控制例程32和34被例示为使用分别连接到适当的模拟输入(AI)功能块和模拟输出(AO)功能块的单输入/单输出模糊逻辑控制块和单输入/单输出PID控制块来执行单回路控制,该模拟输入(AI)功能块和模拟输出(AO)功能块可以与过程控制设备(例如阀)相关联、与测量设备(例如温度和压力变送器)相关联、或与过程控制***10内的任何其它设备相关联。
示例性高级控制回路36和双模式模型控制
高级控制回路36被例示为包括基于双模式模型的控制(DMMC)块或例程38,其输入通信地连接到一个或多个AI功能块,并且输出通信地连接到一个或多个AO功能块,但是DMMC块38的输入和输出可以连接到任何其它期望的功能块或控制元件,以接收其它类型的输入并提供其它类型的控制输出(例如,DI块、DO块等)。
DMMC块38可以实现本文描述的基于双模式模型的控制技术。更一般而言,DMMC块38可以实现任何类型的多输入、多输出控制方案、和/或可以实现基于过程模型的控制例程,因此可以构成或包括模型预测控制(MPC)块、神经网络建模或控制块、多变量模糊逻辑控制块、实时优化器块等。
将理解的是,图1所例示的功能块(包括DMMC块38)可以由独立控制器11执行,或者可以替代地位于过程控制***10的任何其它处理设备或控制元件(例如工作站13之一或现场设备19-22之一)中并由其执行。作为示例,分别可以是变送器和阀的现场设备21和22可以执行用于实现控制例程的控制元件,并且因此包括用于执行控制例程的各个部分的处理和其它部件,例如一个或多个功能块。更具体地,现场设备21可以具有用于存储与模拟输入块相关联的逻辑和数据的存储器39A,而现场设备22可以包括具有存储器39B的致动器,该存储器39B用于存储关联于与模拟输出(AO)块通信的PID、MPC或其它控制块相关联的逻辑和数据,如图1所例示的。
如上所述,控制器11可以执行DMMC块38以执行基于双模式模型的控制。由双模式控制器11(有时简称为“控制器11”)控制的过程可以由过程变量或PV集合来表征。PV可以包括:(i)由控制器11经由控制器输出操纵的操纵变量或MV(例如,阀位置);(ii)通过调节MV间接控制的受控变量或CV(例如,通过调节冷水入口阀的阀位置来控制水罐温度);(iii)可能因CV或MV(例如,水罐液位)的变化而间接影响的辅助变量或AV;以及(iv)干扰变量或DV(例如,房间的环境温度可能会稍微影响水罐温度)。一般而言,当实现基于模型的控制(在约束解模式或无约束解模式下)时,控制器11使用所有CV测量结果来同时计算所有MV。
在一实施例中,控制器11根据扫描周期k(例如,1分钟)进行操作。在每个片刻k(例如,每分钟),控制器11接收带有所测量的PV(例如,CV和/或AV)的控制器输入。基于当前的测量值,控制器依赖过程模型预测PV的将来值,并为MV形成“移动计划”,以帮助将CV和/或AV驱动到期望的值。在扫描周期结束时,控制器11经由控制信号或控制器输出将移动计划中的MV值发送到现场设备(例如,阀致动器)。然后,控制器11再次接收所测量的PV并重复该过程。
如本文中所描述的,“移动计划”是指由控制器11控制的将在每个扫描周期结束时实现的MV集合的值集合。无论是处于约束解模式还是无约束解模式,控制器11都可以在每个扫描周期期间计算一系列扩展到将来的移动计划。一般而言,“经界定的(bounded)移动计划”包括不会导致任何立即违反约束(即,MV值不违反任何MV约束,并且对应的CV或AV的预测响应将不会立即违反约束)的MV集合。另一方面,已经生成了“未界定的(unbounded)移动计划”而无需考虑约束,并且因此可以包括违反MV约束或导致约束违反(例如,CV或AV的约束违反)的MV值。注意,通常不执行在第一移动计划之后的将来的移动计划,因为控制器11通常在每次扫描时重新计算一系列移动计划,作为最优解的计算的一部分。
通过为“目标函数”形成“解”来进行“优化”。一般而言,“目标函数”是可以被求解以确定任何有用度量(例如,通常收益)的公式。示例性目标函数可以是公式“收益=24x+20y”,其中x是第一类型的小部件,y是第二类型的小部件。可以根据目标函数的性质,通过最小化或最大化目标函数来找到最优解(在前面的示例中,目标将是最大化收益)。识别最优解涉及评估众多候选解。
如本文所述,对优化问题或目标函数的“解”是指由优化器算法或例程形成的解,其可以由控制器11或与控制器11通信的计算设备来实现。“解”可以表征为在控制器11的控制或预测范围结束时在过程的稳态操作点处的PV集合的目标值集合,以及在过程的当前状态和范围结束之间的每个控制器扫描或控制器间隔处的PV(例如,针对MV、CV和AV)的值的集合。“预测范围”表示优化器评估的将来扫描次数,而“控制范围”表示预测将来将输出MV值的扫描次数;换言之,控制范围表示要评估的MV的假定的“移动计划”的数量。
作为示例,如果预测范围是10并且控制范围是5,则解可以包括10个针对PV的目标值集合(包括在接下来的5次扫描中要实现的5个移动计划,其中每个移动计划包括针对MV的值集合)。无论如何,控制器11可以形成“无约束解”和“约束解”之一或有时可以同时形成两者。
在无约束解优化期间,控制器11基于无约束解中包括的第一移动计划生成控制器输出(将MV值传送至现场设备)。控制器11可以通过将以下各项馈送给优化器来形成无约束解:(i)预先生成的过程模型(通常离线生成),该模型在生成时被生成以对过程进行建模;(ii)当前过程变量值;以及(iii)一个或多个控制目标。优化器识别目标函数的解,以达到过程变量的稳态值,以及要由控制器11执行的多个“移动”中每个移动处的过程变量的目标值。控制器11然后从该解识别第一“移动计划”(包括针对操纵变量的期望值集合),并且,如果任何一个值违反约束或将导致约束(例如,CV或AV的约束)的违反,则在第一移动计划中“界定(bounds)”期望值集合。控制器11然后可以将携带第一移动计划的“经界定的”值的控制器输出信号发送到现场设备以实现过程的控制。
通过比较,当条件合适时,约束解优化可以提供更好的控制。在约束解优化期间,控制器11通过(i)当可能时实时形成过程模型;以及(ii)向优化器馈送以下内容来生成控制器输出:(a)具有当前过程变量值的当前过程模型;(b)控制目标;(c)所有过程变量(例如,所有CV、AV、MV和DV)的约束。优化器通过首先计算无约束解来形成约束解(例如,包括每个扫描周期的目标CV、AV和MV)。然后,优化器识别出在一系列移动计划中在时间上受到约束的第一MV(即,找到最早的MV约束违反)。然后针对该问题强加了该MV的移动计划的可允许部分。接下来,控制器11使用剩余的MV重新计算无约束解,并且该过程被重复,直到所有MV都受约束,或者无约束解都不违反任何约束为止。使用此迭代过程,将识别出不会导致约束违反的一组控制器输出。该过程是计算密集型的,特别是与无约束解模式相比,在无约束解模式下,控制器11计算相对简单的解,这需要相对较短的在线执行时间。
约束解优化具有至少两个有利特征。首先,可以在每个控制周期在线生成控制矩阵或模型。所有因变量(例如,CV和AV)都包括在移动计算的动态矩阵中。在每个控制周期,调整每个因变量的错误惩罚(PE)。如果CV远离极限,则可以将其PE设置为零,以有效地将其从动态控制问题中移除。相反,如果CV接近极限,则可以使用PE的全部值。通过这种方式,在每个控制周期上的动态移动计算可以仅包括那些接近其极限的CV,并且可以排除那些远离其极限的CV。
第二个优点是在将来的移动计划上执行MV约束。这防止了控制器11计划无法实现的移动。如前所述,一般方法是首先计算无约束的MV解。第二步是找到在时间上受约束的第一MV(查找最早的MV约束违反)。然后针对该问题强加了该MV的移动计划的允许部分。接下来,计算使用剩余的MV的无约束解,并重复该过程,直到所有MV受约束或者无约束解不违反任何约束为止。
双模式控制器11可以同时以两种模式操作。首先,可以通过一系列完整的移动计划来获取约束解,直到预测或控制范围结束为止,其中,所有相关的PV在整个系列的移动计划中都受约束。约束解中的第一移动计划中的MV值可用于控制器输出。其次,可以获取无约束解,并且控制器11可以根据需要修改第一移动计划中的MV值,以避免违反约束。
一般而言,控制器11的“输出选择器”可以在控制扫描结束时从约束解或无约束解中选择第一MV移动计划。第一优先通常是约束解。但是,如果在控制器扫描结束之前约束解尚未完成或最终确定,则控制器11使用无约束解的第一移动计划,并根据需要调整无约束的第一移动计划,以避免违反任何约束。
注意,尽管在本文中描述的技术被称为“双模式”,但是应当理解,控制器11可以被认为实现了“三模式”控制。换言之,控制器11可以形成出可以从三个不同的第一移动计划确定控制器输出MV值。首先,在控制器扫描结束时,控制器11可以从约束解的第一移动计划中选择MV值(如果可用)。第二,如果约束解还没有准备好,则控制器11可以从无约束解中选择第一移动计划。第三,如果无约束解也不可用,则控制器11可以选择从预生成的控制器矩阵计算出的控制器输出的MV值。
示例性PID控制回路
图2示出了示例性PID控制例程200,该示例性PID控制例程200在由控制器11实施时不启用与由DMMC模块38提供的双模式模型控制相关联的预测控制或任何对应的益处。
如本文中所使用的,“预测控制”是指过程控制的技术,其中由控制器输出的一个或多个MV输出的值(例如,经由发送到现场设备的控制信号)考虑针对一个或多个PV(例如,一个或多个响应MV的CV)的将来的值。如上所述,例程200不启用预测控制。
控制回路200可以类似于图1中所示的控制回路32和34。值得注意的是,控制例程/回路200不依赖于预测控制或基于模型的控制。因为DMMC块38依赖于预测控制,所以它相对于控制例程200可以提供更精确和改进的性能。
在高级别,控制例程200通过尝试将受控变量(CV)(例如,水罐液位)驱动到特定设定值来控制过程201。控制例程200接收CV的设定值(SP)或期望值212,测量CV的实际值214,计算SP与测量的CV值之间的误差或差216,然后计算CV响应(例如,操纵变量(MV)226)(例如,罐的入口阀位置)的命令或控制器输出(例如,基于比例因子218、积分因子220、导数因子222、或它们的某种组合的总和224)。控制器可以经由AO块208将值226(例如,致动器位置)发送到适当的MV(例如,致动器),以将CV 232(例如,温度、液位或流速)驱动到SP值212。如图所示,过程201中的CV 232可能受到回路200直接控制之外的一个或多个参数的影响。这些参数可以称为干扰变量(DV)236。
如图所示,控制例程200包括四个块:模拟输入(AI)块202、AI块204、控制块206、和AO块208。根据实现方式,AI块202和204可以表示由实施例程200的控制器或耦合到该控制器的I/O卡(例如,从现场设备)接收的模拟信号。例如,AI块204可以绑定到标识第一I/O卡处的特定AI I/O通道的第一设备信号标签(DST),并且AI块204提供的值因此可以由特定AII/O通道上的信号(例如,由流量变送器现场设备提供的表示测得的流量的4-20ma信号)的值。类似地,AO块208可以表示将由执行例程200的控制器经由I/O通道发送(例如,到现场设备)或发送到与控制器耦合的I/O卡的模拟信号。为了例示,AO块208可以绑定到第二DST,该第二DST标识第二I/O卡处的特定AO I/O通道。因此,馈送给AO块208的值可以使第二I/O卡基于在AO块208处接收到的值驱动特定的AO I/O通道上的信号(例如,该值可以使得第二I/O卡经由AO I/O通道将4-20ma信号驱动到阀现场设备以控制阀的位置)。
图1中所示的DMMC块38可以类似地从一个或多个输入块(例如,AI或DI块)接收输入,这可以向DMMC块38提供由控制器11经由被绑定到所述块的并且将控制器11耦合到现场设备的I/O通道接收的信号所携带的值。在某些情况下,输入块可以是“手动”块,其使用户能够输入可以提供给DMMC块38和控制器11作为输入的值(例如,特定CV的SP)。
此外,DMMC块38和控制器11可以向一个或多个输出块(例如,AO或DO块)提供输出值,这可以使得控制器11能够经由被绑定到块的I/O通道向现场设备发送携带输出值的输出信号。
示例性模型控制图和控制回路
图3是描绘可由控制器11实施的示例性的基于模型的控制操作的图300,与诸如图2所示的控制回路200相关联的传统反馈控制技术相比,该控制操作具有许多优点。图4是根据实施例的基于双模式模型的控制回路36的示例性示意图400。
图300描述了示例性的基于模型的控制操作
如图3所示,当实现基于模型的控制器时,控制器11在每个时间实例或扫描时间k执行控制器扫描。扫描之间的时间可以被称为“扫描周期”、“扫描时间”或“控制间隔”。扫描时间可以由用户调节,并且可以是任意合适的值,这取决于受控过程的要求。例如,扫描时间可以是0.01秒、0.1秒、1秒、10秒、1分钟、10分钟、1小时、10小时、或此范围内的任何合适的值。
由DMMC块38实现的“预测范围”P表示DMMC块38将来评估的步数或扫描次数。由DMMC块38实现的“控制范围”M表示在每个控制间隔要优化的移动计划(即,受控MV的移动集合)的数量。因此,如果P=10且M=2,则DMMC块38基于与接下来10次扫描的相关CV的响应有关的预测(和评估)来针对2个MV移动计划进行优化。预测范围和控制范围中的每一个可以由用户手动设置或调整。
在所示示例中,在每次扫描k时,控制器11输出MV的值u,并测量受MV影响且存在SP或目标的CV的值y。在某些情况下,可以控制和评估多个MV和CV。
为了例示,设想一个示例,其中存在12个MV,存在10个CV,存在10个预测范围,并且存在4个控制范围。在每次扫描时,DMMC块38依赖于优化器来确定最能满足目标函数403(例如,表示最优操作点)的稳态过程变量集合,包括目标CV集合和MV集合以达到那些目标CV,从而实施一系列移动计划(与预测范围和控制范围一致)以达到所期望的稳态值。
更具体地(并且与相同的示例保持一致),DMMC块38可以形成理论上在接下来的四次扫描中要执行的四个移动计划(如下所述,通常仅执行第一移动计划,因为该系列移动计划每次扫描都会重新计算)。每个移动计划包括MV的12个值(例如,u1-u12)。DMMC块38将每个移动计划馈送给过程模型105,以预测PV(例如,CV和/或AV)将如何响应每个移动计划。可以为接下来的10次扫描评估这四个移动计划的影响(因为预测范围是10)。
DMMC块36的示例性框图400
图4示意性地例示了根据实施例的包括DMMC块38的高级控制回路36的示例。取决于实施例,DMMC块38可以具有附加的或替代的输入或输出。
如图所示,DMMC块38被实现为MPC例程,以基于对这些CV采取的并提供回DMMC块38的测量结果来同时控制过程104的多个CV。在一实施例中,DMMC块38可以用于实现动态矩阵控制(DMC)控制技术。DMMC块38的控制例程116可以与优化器401交互,以识别可变目标和值,并且该优化器401可以继而被配置为形成目标函数403的最优(例如,最大或最小)解。
如图4所示,DMMC块38产生移动计划,该移动计划包括MV集合的值,该值被提供给其它功能块(图4中未示出),这些功能块又连接到该过程104的过程输入。DMMC块38可以包括或实现任何标准的基于模型的预测控制例程或程序,通常具有与输出相同数量的输入,尽管该要求不是必需的。DMMC块38接收N个CV(其可以具有限定的约束极限并且可以具有限定的设定值)和AV(其可以仅具有限定的约束极限)集合作为输入。CV和AV通常构成值的向量,如在过程104中所测量的。具有向量值的线通常在图中用穿过其中的哈希线表示。
DMMC块38还可以接收DV集合作为输入,该DV集合为在将来的某个时间被提供给过程104的已知的或预期的变化或干扰,以及目标控制和辅助变量(CVT)和(AVT)集合,表示为例如从优化器401提供的设定值(SP)。这些目标可以表示解的一部分(例如,一系列移动计划),旨在达到最优稳态工厂操作点(例如,由稳态过程变量目标集合表示),直到控制或预测范围结束。
优化器401可以是通过生成目标函数(OF)403的解来解决优化问题的任何合适的优化器(例如,线性规划(LP)优化器、二次规划优化器等)。
在高级别,优化问题是其中优化器算法(例如401)评估或求解目标函数的问题(例如,收益=24x+20y,其中x=第一类型的小部件,y=第二类型的小部件)以识别目标函数的最优解(例如,解或x和y值,从而得到最大的收益)。取决于场景,优化器401可以形成无约束解(即,不考虑约束的解)或约束解(即,考虑对一个或多个变量的约束(例如对使用总材料的限制;对在生产上花费的总时间的限制;对某些阀范围的限制;等等)的解)。违反一个或多个可变约束的解可以被称为“不可行解”。
一般而言,目标函数403可以指定与许多控制变量、辅助变量和操纵变量中的每一个相关联的成本或收益。为了求解OF 403,优化器401在一系列移动计划上设置控制变量目标值(CVT)、辅助变量目标值(AVT)和操纵变量目标值(MVT),以达到CV和AV的稳态目标值。解中包括的最终稳态目标值可以被称为稳态控制变量(CVSS)和稳态辅助变量(AVSS),并且可以表示最大化或最小化目标函数403的最优操作点。
一系列过程变量目标(例如,MV、CV或AV)可以被称为优化器401计算出的“解”。针对特定扫描周期计算出的每个MVT集合均可被称为“移动计划”。换而言之,解可以包括一系列移动计划(例如,MV的目标值集合)以及对应的CVT和AVT,其中,每个移动计划和对应的CVT/AVT集合都对应于一系列控制扫描中的不同的控制扫描。在每个扫描时间,该过程可以说具有由预测或目标值CVT、AVT和/或MVT表示的操作点。
移动计划是在假设它们将在一系列扫描或控制器间隔中实现的前提下生成或选择的(例如,在时间k的第一移动计划,在时间k+1的第二移动计划等)。在任何给定时间,可以认为移动计划会得到“操作点”,该操作点的特征在于所讨论时间的PV(例如,CV、AV和/或MV)的值。操作点是“稳态”操作点,其中大多数PV在给定时间段内变化很小(如果有的话)。如果一个或多个PV在一时间段内发生剧烈变化,则操作点可能处于“不稳定状态”。
在任何情况下,解(例如,一系列移动计划中的每一个移动计划的MVT、CVT和AVT)可以被馈送给控制算法116,控制算法116随后可以计算要执行的下一个实际移动计划。尽管将由例程116和控制器11实施的下一个实际移动计划的MV值可以与所接收的优化器401计算出的下一个移动计划的MVT相同或相似,但是有时可能存在差异。例如,如果来自优化器401的第一移动计划包括用于导致约束违反(例如,CV、MV或AV的约束违反)的给定MV的MVT,则例程116可以调整给定的MV的值,以使得该约束不再被违反(当DMMC块38计算无约束解时,这可能发生)。另一方面,当优化器401计算约束解时,通常第一移动计划中的MVT(或与此有关的任何后续移动计划)均不会导致约束违反。因此,由例程116和控制器11实现的移动计划中的值通常与由优化器401形成的第一移动计划的MVT相匹配。
目标函数403可以从多个潜在的预存储的目标函数中选择,每个目标函数可以在数学上表示定义过程104的最优操作的不同方式。例如,预存储的目标函数之一可以被配置为最大化工厂的收益,目标函数中的另一个目标函数可以被配置为最小化供不应求的特定原材料的使用,而目标函数中的又一个目标函数可以被配置为最大化在过程104中制造的产品的质量。一般而言,所使用的目标函数使用与控制变量、辅助变量和操纵变量的每次移动相关联的成本或收益来确定在由控制变量CV的设定值或范围以及辅助变量AV和操纵变量MV的极限所定义的可接受点集合内的最优过程操作点。当然,代替本文描述的那些目标函数或者除了本文描述的那些目标函数之外,可以使用任何期望的目标函数,其包括在某种程度上优化诸如原材料的使用、获利能力等许多方面中的每一个方面的目标函数。
为了选择目标函数,用户或操作员可以通过在操作员或用户终端上选择目标函数403来提供要使用的目标功能403的指示。当然,用户或操作员可以更改过程操作期间使用的目标函数。如果需要,在用户不提供或选择目标函数的情况下,可以使用默认目标函数。
返回到优化器401,除了目标函数403之外,优化器401还可以接收控制变量设定值(其通常是过程104的控制变量CV的操作员指定的设定值,并且可以由操作员或其他用户更改)集合以及与每个控制变量CV相关联的范围和权重或优先级作为输入。优化器401可以附加地或替代地接收范围或约束极限集合以及用于辅助变量AV的权重或优先级集合或针对用于控制过程104的操纵变量MV的极限集合。优化器401可以在形成约束解时考虑这些约束,但在形成无约束解时可能会忽略它们。
一般而言,辅助变量和操纵变量的范围定义了辅助变量和操纵变量的极限(通常基于工厂的物理属性),而控制变量的范围提供了控制变量可以在其中进行操作以令人满意地控制过程的范围。控制变量和辅助变量的权重指定了在优化过程期间控制变量和辅助变量相对于彼此的相对重要性,并且在某些情况下,如果在尝试形成约束解时无法避免违反所有约束条件,则可用于使优化器401能够生成半约束解。
使用任何已知的或标准的LP算法或技术,优化器401进行迭代,以确定使选定的目标函数403最大化或最小化的一系列移动计划中的每个移动计划(例如,对于整个控制范围)的目标操纵变量MVT集合(根据稳态增益矩阵确定)。在形成约束解时,优化器401可以最大化或最小化目标函数403,同时保持达到或落在控制变量CV设定值范围极限、辅助变量AV约束极限、和操纵变量MV极限之内的过程操作。当形成无约束解时,优化器401可以忽略这些约束和限制,以形成理论的(并且可能是不可行的)解。
在示例性操作中,优化器401确定操纵变量值的最新变化(即,确定MV的当前值),并且使用预测的稳态控制变量(CV)、辅助变量(AV)、以及操纵变量(MV),以确定过程操作在整个控制范围从其当前操作的变化(即,以确定针对由控制范围值指定的接下来的计划数量的MV移动计划);换而言之,以确定在达到目标或最优过程操作点的过程期间例程116的动态操作。
一般而言,当形成约束解时,优化器401将通过迫使受控变量和辅助变量中的每一个达到其极限来计算目标操纵变量值(MVT)。如上所述,在许多情况下,将存在一个解,其中每个CV都处于它们的设定值(最初可能被视为控制变量的上限),而每个辅助变量仍保持在它们各自的约束极限内。如果是这种情况,则优化器401仅需要输出所确定的操纵变量目标MVT,该操纵变量目标MVT产生目标函数的最优结果。
然而,在某些情况下,由于对一些或所有辅助变量或操纵变量的严格约束,可能无法找到这样的解(例如,由一系列MVT移动计划表示,每个MVT移动计划均具有对应的CVT和AVT),在该解中,对于每次扫描,在每个操作点处所有过程变量都在它们各自的约束极限内,因为这种解不存在。在这些情况下,优化器401可以计算半约束解。例如,如上所述,优化器401可以允许CV在它们指定的设定值范围内放松限制(relax),以试图找到辅助变量在它们各自的极限内操作的操作点。如果在这种情况下不存在任何解,则优化器可以丢弃辅助变量约束极限之一作为解内的极限,相反,确定忽略被丢弃的辅助变量约束极限的最优过程操作点。在此,优化器401基于为控制变量和辅助变量中的每一个提供的相应权重来选择哪个辅助变量或控制变量将被丢弃作为约束极限(例如,首先丢弃最低权重或最高优先级)。优化器401继续基于辅助变量或控制变量的所提供的权重或优先级来继续丢弃辅助变量或控制变量,直到其找到这样的MV解为止:其中满足控制变量的所有设定点范围和其余较高优先级辅助变量的极限。
在任何情况下,优化器401可以将基于求解目标函数403所计算的、在预测或控制范围结束时将达到的最优目标或设定值或SP(例如,CVSS和AVSS)集合馈送给DMMC块38。DMMC块38可以依靠模型105/110来计算达到SP在每一步所需的目标CV和AV(即,CVT和AVT),以及实现CVT和AVT所需的目标MV(MVT)。换而言之,优化器401利用(多个)模型105/110来计算CV、AV和MV的目标轨迹,以达到最优稳态操作点。
DMMC块38使用SP来以控制信号(例如,控制器输出)的形式创建M个操纵变量信号(MV)的集合,并且将MV信号传递到过程104的过程输入(例如,阀致动器)。MV信号是控制信号,其可以是与控制对阀致动器、燃烧器、泵等或影响过程104的物理操作的任何其它设备的操作有关的控制器输出或过程输入。
注意,因为DMMC块38在每次控制器扫描期间如上所述进行操作(即,因为可以在每次扫描时计算完整的解和一系列移动计划),所以即使SP保持相同,操纵变量的目标值也可能会在每次扫描之间变化,结果,DMMC块38可能永远不会真正达到暂时性地为将来扫描而计划的这些目标MV集合中的任何特定目标MV,特别是在存在噪声、意外干扰、过程104的变化等时。
典型地,DMMC块38包括控制变量预测过程模型105(也称为“控制器模型”或“预测过程模型”),其可以是用于各种不同的MPC控制技术中的任何MPC控制技术的任何类型的模型。例如,模型105可以是N乘M+D阶跃响应矩阵(其中,N是CV的数量加上AV的数量;M是MV的数量;并且D是DV的数量)。模型105可以是一阶、二阶、三阶等预测性的或第一原理模型、状态空间模型、卷积过程模型、或任何其它类型的过程模型。控制器模型105可以使用不需要大量基础建模工作的时间序列分析技术,根据过程扰动试验(upset test)来确定,或者可以使用任何其它已知的过程建模技术(包括叠加一个或多个线性模型或非线性模型集合的那些过程建模技术)来确定。
在任何情况下,模型105通过产生输出107来考虑模型不匹配,该输出107针对控制变量CV和辅助变量AV中的每一个定义先前计算的预测。加法器108从在过程104中感测或测量到的、当前时间的控制变量CV和辅助变量AV的实际测量值中减去当前时间的这些预测值,以产生误差或校正向量(也称为残差集合)。残差(通常称为预测误差)集合定义模型105的偏差或偏移误差,并用于校正模型105的预测。
在操作期间,过程模型105使用MV和DV输入以及残差来预测控制范围内的CV和/或AV中的每一个的将来的控制参数,并提供CV的将来预测值,以及潜在的线109上的AV(以向量形式)。当评估每个移动计划的MV的潜在值时,优化器401可以依赖于这些预测。
此外,过程模型105和/或优化器401可以产生以上讨论的预测的稳态值CVSS和AVSS。因此,框105可以在到达预测范围的时间内在每次扫描时(例如,基于每个移动计划)对CV和AV中的每一个的值进行预测。
此外,控制目标块110确定例如由用户或其它优化应用向其提供的N个目标控制变量CVT和辅助变量AVT中的每一个的控制目标向量或设定值向量。控制目标块110可以包括轨迹滤波器,该轨迹滤波器定义控制变量和辅助变量随时间被驱动到它们的目标值的方式。控制目标块110使用该滤波器以及由设定值SP定义的目标变量CVT和AVT来产生针对每个控制变量和辅助变量的动态控制目标向量,其定义目标变量CVT和AVT在由控制范围时间定义的时间段上的变化。
然后,向量求和器114从块110产生的动态控制向量中减去线109上的模拟或预测控制变量CV以及模拟或预测辅助变量AV中的每一个的将来的控制参数向量,以便为控制变量CV和辅助变量AV中的每一个定义将来的误差向量。然后,将控制变量CV和辅助变量AV中的每一个的将来的误差向量提供给控制算法116,控制算法116进行操作(与优化器401协作)以选择在控制范围内最小化或最大化目标函数403(例如,在控制范围内最小化积分平方误差(ISE)或积分绝对误差(IAE))的操纵变量MV步长。
在一些实施例中,如果需要,算法116可以使用从输入到DMMC块38的N个控制变量和辅助变量与由DMMC块38输出的M个操纵变量之间的关系形成的N乘M控制矩阵。更特别地,MPC控制算法116可以具有两个主要目的。首先,控制算法116可以尝试利用最小的MV移动(例如,在形成约束解时在操作约束内)最小化CV控制误差。第二,控制算法401可以尝试获取最优稳态MV值(MVSS)和根据最优稳态MV值计算出的目标CV值。
典型的模型预测控制器的状态方程可表示为:
其中,Q,R,S分别是误差、控制器移动和增量移动的惩罚权重,xk是模型状态矩阵,yk是过程输出,并且uk是控制器输出。DMMC块38和控制器38可以执行该状态方程。由于Q、R和S惩罚向量本质上是分开的,因此MPC控制器通常不会在设定值跟踪和干扰抑制之间具有性能折衷(与诸如PID控制器之类的传统控制器不同)。但是,仍然需要针对特定的多变量过程控制目标调整MPC控制器。虽然过程模型通常与MPC控制器的内部结构(例如,具有状态空间MPC公式的过程状态空间)相匹配,但是附加的调整参数确定了关于设定值变化和干扰抑制的行为。
在任何情况下,图4中的DMMC块38的操作假定新的过程变量测量值在模型105的每次控制器扫描或执行操作期间都可用,模型105的每次控制器扫描或执行操作在时间范围内产生新的受控变量预测集合。当受控过程变量(CV)的新的过程变量测量值在每次新的控制器扫描时不可用时,该控制器的操作将导致控制器使用陈旧的过程变量数据执行控制。
用于实现基于双模式模型的控制的示例性方法500
图5例示了根据实施例的用于执行基于双模式模型的控制的示例性方法500。方法500可以全部或部分地由图1中所示的***10,并且更具体地,由图1和图4中所示的控制器11和DMMC块38来执行。方法500可以作为一个或多个指令或例程被保存到存储器中(例如,在控制器11和/或工作站13处)。
当控制器扫描周期开始时,方法500开始(框505)。在扫描周期的开始,控制器11接收由控制器11控制的CV集合的当前的测量值集合。
控制器11随后发起优化问题或目标函数403的约束解和无约束解的生成(框507)。
在框509处,控制扫描周期结束(或在扫描周期即将结束之前到达决策阈值)。
在框510处,控制器11确定约束解是否已经完成形成。如果约束解已经完成形成,则控制器11执行约束解(框515)。如果约束解尚未完成形成,则控制器11执行无约束解(框520)。如果出于某种原因尚未形成出无约束解,则控制器11可以利用预先生成的移动计划(例如,根据预先生成的控制器矩阵计算得到)。
用于生成无约束解的示例性方法600
图6例示了根据实施例的用于执行无约束解的示例性方法600。方法600可以全部或部分地由图1中所示的***10,并且更具体地,由图1和图4中所示的控制器11和DMMC块38来执行。方法600可以作为一个或多个指令或例程被保存到存储器中(例如,在控制器11和/或工作站13处)。
在框605处,控制器11将过程模型、当前PV值(例如MV值(例如,在控制器扫描开始时接收到的))、预测PV值和控制目标(例如,目标函数403)馈送给优化器401,以便开始生成控制目标的解的过程。在某些实例中,调整参数和/或误差向量(例如,表示预测误差)也可以被馈送给优化器。
在框607处,优化器401可以定义对于控制范围的结束的一个或多个最优MV值,以及针对预测范围的结束的CV目标。
在框610处,优化器401和/或控制器11生成目标函数403的无约束解。例如,取决于目标函数403的确切性质,优化器401生成最小化或最大化目标函数403的解。具体而言,优化器401在控制范围或预测范围结束时生成(例如,由稳态过程变量目标集合表示的)最优稳态工厂操作点以及针对一系列扫描中的每个扫描的PV(例如CV、AV和/或MV)集合,从而导致最终扫描根据预测范围来评估。对于一系列扫描中的每次扫描,MV目标集合构成了该特定扫描的移动计划。一般而言,并且如其它地方所述,当可行时,优化器401生成约束解。当不可行时,可以使用松弛变量。这些可能使某些约束违反对于生成解而言是可以接受的。通常,可以假设优化器401提供了约束解(例如,当可能/可行时)。控制器可以使用在预测范围结束时受约束的稳态解,并且优化器可以形成将动态约束的解(例如,遍及整个预测范围)。
在框615处,控制器11识别PV约束(例如,对于CV、AV或MV的约束)。
在框620处,控制器11随后评估包括在无约束解中的一系列移动计划中的第一移动计划。如果第一移动计划中的任何MV值违反了MV约束,或者如果过程模型响应于MV移动中的一个而预测到将违反CV或AV约束,则调整MV中的一个或多个,直到第一移动计划不再违反约束为止。当第一移动计划不再违反约束时,将其视为“经界定的”(即被所有相关约束界定)。
注意,在该示例中,控制器11和优化器401在很大程度上忽略了预计在第一移动计划之后发生的约束违反。因此,可能的情况是,未考虑约束的“理想”解可能会小于当考虑约束时PV值的理想轨迹(因为预测会假定控制器11在实际情况下将不会做出的移动)。换而言之,通过预测将来PV值的能力所获得的值有些被减弱(blunted),这是因为在这种特定场景下,鉴于当控制器11正在输出MV信号时,控制器11在每个扫描周期都将考虑约束(例如,通过修改第一移动计划中的值)的事实,控制器11可能无法准确地预测将来的PV值。
如果控制器11正在利用无约束解(例如,由于未在扫描周期内形成约束解),则经界定的第一移动计划内的值经由控制器11的一个或多个控制器输出被发送给现场设备以执行对过程的控制。
用于生成约束解的示例性方法700
图7例示了根据实施例的用于执行约束解的示例性方法700。方法700可以全部或部分地由图1中所示的***10,并且更具体地,由图1和图4中所示的控制器11和DMMC块38来执行。方法700可以作为一个或多个指令或例程被保存到存储器(例如,在控制器11和/或工作站13处)。
在框705处,控制器11生成新的过程模型(例如,当过程离线时)。通常,通过捕获正在被控制的过程的输入和输出之间的动态关系,并生成反映这些动态关系的数学模型来进行模型生成。传统上,这些动态关系是在模型生成过程期间捕获的,该过程涉及(i)通过改变一个或多个操纵变量来将已知的干扰或扰动引入过程中,以及(ii)观察过程如何对操纵变量的变化做出反应。当过程完成对操纵变量的变化进行响应并达到稳态时,控制器11可以基于操纵变量的变化与观察到的过程响应之间的关系来生成过程模型。控制器11然后可以利用新的(并且可能更准确的)过程模型来恢复正常控制。在某些实例中,控制器11在执行方法700时不生成新的模型。在生成模型之后,可以将模型馈送给优化器401。
在框707处,控制器11将当前PV值(例如,在控制器扫描开始时接收到的)、预测PV值、控制目标(例如,目标函数403)、以及对于一个或多个PV(例如,CV、MV和/或AV)的约束馈送给优化器401,以开始生成控制目标的解的过程。在某些实例中,调整参数和/或误差向量(例如,表示预测误差)也可以被馈送给优化器401。
在框710处,控制器11生成无约束解,该无约束解包括用于延伸到预测范围的一系列扫描的PV集合(例如,通过执行方法600的步骤)。每个PV集合都可以包括MV集合,该MV集合构成对于该特定扫描将由控制器执行(至少在理论上)的“移动计划”。如下面更详细地解释的,方法700可以将无约束解用作“候选解”,以便评估约束违反,然后对其进行修改以创建连续的候选解,直到最终识别出不违反任何约束的候选解为止。
在框715处,控制器11分析针对每次未来扫描所形成的PV集合(包括针对每次扫描的移动计划)。
在框720处,控制器11将第一移动计划识别为导致约束违反。作为示例,第三排定的移动计划可以包括MV值,该MV值超过MV约束,或者得到另一个超过约束的PV(例如,控制阀CV821的78%的MV值超过CV821的75%打开的上限约束)。如果不存在约束违反,则控制器11前进到框735(这可能发生,特别是在过程相对较早的情况下,如果约束特别少或比较宽松)。一般而言,如果违反了与DMMC块38相关联的约束集合中的任何一个,则存在约束违反。
在框725处,控制器11确定是否所有MV都已被约束或界定。一般而言,这仅在控制器11已经迭代地分析更新的解时才是正确的,因为识别出约束违反被识别,直到一系列MV计划中的任何一个的MV值都没有违反约束为止。如果所有MV都已被约束或界定,则控制器前进到框735(在下面更详细地描述)。如果一个或多个MV在一系列移动计划中保持不受约束,则控制器11前进到框730。
在框730处,在发生约束违反之前,控制器11向优化器401馈送移动的允许部分。与前面的示例相同,前两个移动计划将连同其它先前提及的部分一起被馈送给优化器401。
在框730之后,控制器然后前进到框710,在框710中,优化器401生成修改的解(该修改的解可以被认为是新的候选解),该修改的解假定前两个移动计划以及对于所假定的移动计划之后的后续移动计划,不允许MV违反先前识别的约束。例如,与前面的示例相同,优化器401可以生成这样的解,在该解中,对于一系列移动计划中的任何移动计划,控制阀CV821的值永远不会超过75%的上限约束。
然后,控制器11再次利用修改的解执行框715和720(以及潜在地725和730)。该迭代过程可以继续进行,直到生成其中一系列移动计划中没有移动计划违反任何约束的修改的解或候选解为止。
在框735处,在发现修改的无约束解不包括约束违反之后,或者在已经遍及一整个系列移动计划发现导致所有MV被界定的约束违反之后,控制器11最终确定约束解。如果原始的无约束解未违反任何约束,则其可以被用作为约束解。在某些实例中,在确定约束解之前,原始的无约束解可能只需要稍作修改。
在已经最终确定约束解之后,控制器11可以通过生成控制器输出来利用约束解的第一移动计划(假设在扫描周期内还剩余足够的时间),以携带第一移动计划的值(例如,以根据第一移动计划的MV值控制现场设备)。由于一整个系列的移动计划都不会导致约束违反,因此无需修改第一移动计划的MV值中的任何一个。
方法700可以被认为是用于迭代地界定包括在解的移动计划中的MV值的方法。换言之,每次在步骤720处识别出约束违反时,下一个候选解假定该解的允许移动计划以及在一系列移动计划中先前已经针对约束违反分析的每个MV的允许范围。在实施例中,每个后续的候选解应当少一个针对其可能识别约束违反的未界定的MV。
附加注意事项
当以软件实现时,本文描述的任何应用、服务和引擎可以存储在任何有形的、非暂时性的计算机可读存储器(例如磁盘、激光盘、固态存储器设备、分子储存器存储设备、或计算机或处理器的RAM或ROM中的其它储存介质等)中。尽管本文公开的示例性***被公开为包括在硬件上执行的软件或固件以及其它部件,但应当注意,这种***仅是说明性的,并且不应被视为限制性的。例如,可以预期的是,这些硬件、软件和固件部件中的任何一个或全部可以仅用硬件、仅用软件或用硬件和软件的任意组合来实现。因此,尽管本文描述的示例性***被描述为用在一个或多个计算机设备的处理器上执行的软件来实现,但是本领域普通技术人员将容易理解,所提供的示例不是实现这种***的唯一方式。
具体地,参考方法500-700,所描述的功能可以全部或部分地由图1中所示的***10的设备、电路或例程来实现。所描述的方法中的每一个都可以由一组电路来实现,该一组电路被永久地或半永久地配置为(例如,ASIC或FPGA)执行相应方法的逻辑功能,或者至少被临时地配置为(例如,一个或多个处理器和一组表示保存到存储器的逻辑功能的指令或例程)执行相应方法的逻辑功能。
尽管已经参照特定示例描述了本发明,但是这些特定示例仅是示例性的,而并不限制本发明,对于本领域的普通技术人员而言显而易见的是,在不脱离本发明的精神和范围的情况下,可以对所公开的实施例进行更改、某些添加或删除。此外,尽管前述文本给出了许多不同实施例的详细描述,但是应该理解的,专利的范围由在本专利开头提出的权利要求书的文字及其等同形式来限定。详细描述将仅被解释为示例性的,并且不描述每个可能的实施例,因为描述每个可能的实施例即使不是不可能的,也将是不切实际的。
在整个说明书中,多个示例可以实现被描述为单个示例的部件、操作或结构。尽管一种或多种方法的单个操作被例示并描述为单独的操作,但是在某些实施例中,可以同时执行单个的操作中的一个或多个操作。
如本文所使用的,对“一个实施例”或“一实施例”的任何引用表示结合该实施例描述的特定元件、特征、结构或特性包括在至少一个实施例中。说明书中各个地方出现的短语“在一个实施例中”不一定全都指相同的实施例。
如本文所使用的,术语“包含”、“含有”、“包括”、“具有”、“带有”或它们的任何其他变型旨在覆盖非排他性包含。例如,包括一系列元素的过程、方法、制品或装置不一定仅限于那些元素,而是可以包括未明确列出或这种过程、方法、制品或装置固有的其它元素。此外,除非明确相反地指出,否则“或”是指包含性的“或”而不是排他性的“或”。例如,条件A或B由以下任一条件满足:A为真(或存在)且B为假(或不存在)、A为假(或不存在)且B为真(或存在)、以及A和B都为真(或存在)。
此外,短语“其中***包括X、Y或Z中的至少一个”意味着***包括X、Y、Z或它们的某种组合。类似地,短语“其中部件被配置用于X、Y或Z”意味着部件被配置用于X,被配置用于Y,被配置用于Z或被配置用于X、Y和Z的某种组合。
另外,使用“一个”或“一”来描述本文的实施例的元件和部件。该描述以及所附的权利要求应当被理解为包括一个或至少一个。单数也包括复数,除非明显另有说明。
在各个实施例中,本文所述的硬件***可以通过机械方式或通过电子方式实现。例如,硬件***可以包括被永久地配置的专用电路或逻辑(例如,作为专用处理器,例如现场可编程门阵列(FPGA)或专用集成电路(ASIC),以执行某些操作)。硬件***还可包括通过软件临时地配置以执行某些操作的可编程逻辑或电路(例如,如通用处理器或其它可编程处理器中所包含的)。应当理解的是,从成本和时间方面考虑,可以驱动在专用且永久配置的电路中、或在临时配置的电路中(例如,通过软件配置)、通过机械方式实现硬件***的决策。
此外,该文件开头处的专利权利要求书不旨在根据35U.S.C.§112(f)解释,除非明确记载了传统的“装置加功能”语言,例如在(多个)权利要求中明确记载的“装置”或“步骤”语言。本文描述的***和方法的至少一些方面针对计算机功能的改进,并改进传统计算机的功能。
一般术语和短语
在整个说明书中,使用以下一些术语和短语。
通信链路。除非另有说明,否则“通信链路”或“链路”是连接两个或多个节点的路径或介质。链接可以是物理链路或逻辑链路。物理链路是在其上传输信息的(多个)接口或介质,并且本质上可以是有线或无线的。示例性物理链路包括(i)有线链路,例如带有用于传输电能的导体的电缆,或者用于传输光的光纤链路,以及(ii)无线链路,例如通过对电磁波的一个或多个特性进行更改来带有信息的无线电磁信号。
如上所述,无线链路可以是无线电磁信号,其通过对电磁波的一个或多个特性进行更改来携带信息。无线电磁信号可以是微波或无线电波,并且可以称为射频或“RF”信号。除非另有说明,否则所描述的RF信号可以在大约30kHz至3,000GHz的频谱中发现的任何一个或多个频带内的频率(例如,在2.4GHz频带中的802.11信号)处振荡。示例性RF频段包括30-300kHz的低频(“LF”)频段、300-3000kHz的中频(“MF”)频段、3-30MHz的高频(“HF”)频段、30-300MHz的甚高频(“VHF”)频段、300-3000MHz的超高频(“UHF”)频段、3-30GHz的超高频(“SHF”)频段、30-300GHz的极高频(“SHF”)频段、以及300-3000GHz的极高频(“THF”)频段。
在一些情况下,无线电磁信号可以是以大约300GHz至30PHz的频率,大约100nm至1mm的波长振荡的光信号,其可以是:(i)具有大约在10nm-400nm范围内的波长和大约在750THz-30PHz范围内的频率的紫外线(“UV”)信号;(ii)具有大约在400nm-700nm范围内的波长和大约在430THz-750THz范围内的频率的可见光信号,或(iii)具有大约在700nm-1mm范围内的波长和大约在300GHz-430THz的范围内的频率的红外(“IR”)信号。除非另有说明,否则所描述的光信号可能符合任何合适的光信号协议或标准,例如可见光通信(VLC)标准、光保真度(Li-Fi)标准、红外数据协会(IrDA)标准、IrSimple标准等。
两个或多个节点之间的逻辑链路表示连接两个或多个节点的基础物理链路或中间节点的抽象。例如,两个或更多个节点可以经由逻辑链路逻辑地耦合。可以经由物理链路和中间节点(例如,路由器、交换机或其它联网装备)的任何组合来建立逻辑链路。
链路有时被称为“通信通道”。在无线通信***中,术语“通信通道”(或仅“通道”)通常是指特定的频率或频带。载波信号可以以特定的频率或在通道的特定频带内传送。在某些情况下,可以在单个频带/通道上传送多个信号。例如,有时可以经由不同的子频带或子通道在单个频带/通道上同时发送信号。作为另一个示例,有时可以通过分配相应的发射机和接收机使用所讨论的频带的时隙来经由相同频带来发送信号。
存储器和计算机可读介质。一般而言,如本文中所使用的,短语“存储器”或“存储器设备”是指包括一个或多个计算机可读介质(“CRM”)的***或设备。“CRM”是指相关计算***可访问的用于放置、保存或检索信息(例如,数据、计算机可读指令、程序模块、应用、例程等)的一个或多个介质。注意,“CRM”是指本质上非暂时性的介质,并且不指代非实体的暂时性信号,例如无线电波。
CRM可以以包括在相关计算***中或与相关计算***通信的任何技术、设备或设备组来实现。CRM可以包括易失性或非易失性介质、以及可移动或不可移动介质。CRM可以包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘储存器、盒式磁带、磁带、磁盘储存器或其它磁性储存设备、或可用于存储信息并可由计算***访问的任何其它介质。CRM可以通信地耦合到***总线,从而使CRM与耦合到***总线的其它***或部件之间能够通信。在一些实施方式中,CRM可以经由存储器接口(例如,存储器控制器)耦合到***总线。存储器接口是管理CRM与***总线之间的数据流的电路。
网络。如本文所使用的,除非另有说明,否则当在通信信息或数据的***或设备的上下文中使用时,术语“网络”是指节点(例如,能够发送、接收或转发信息的设备或***)和连接以实现节点之间电信的链路集合。
取决于实施例(并且除非另有说明),每个所描述的网络可以包括负责在节点之间转发定向业务的专用路由器、交换机或集线器,以及可选地,负责配置和管理网络的专用设备。所描述的网络中的一些或所有节点还可以适于充当路由器,以便引导在其它网络设备之间发送的业务。所描述的网络的节点可以以有线或无线方式相互连接,并且可以具有不同的路由和传输能力。
例如,专用路由器能够进行大容量传输,而某些节点能够在同一时间段内发送和接收相对较少的业务。另外,所描述的网络上的节点之间的连接可以具有不同的吞吐能力和不同的衰减特性。例如,由于介质固有的物理局限性的差异,光缆可以提供比无线链路高几个数量级的带宽。如果需要,每个描述的网络可以包括网络或子网,例如个人局域网(PAN)、局域网(LAN)或广域网(WAN)。
处理器。本文描述的示例性方法的各种操作可以至少部分地由一个或多个所描述的或隐式公开的控制器或处理器(例如,控制器11可以包括处理器)来执行。一般而言,术语“处理器”和“微处理器”可互换使用,每一个均指被配置为获取并执行存储到存储器中的指令的计算机处理器。
通过执行这些指令,所公开的处理器可以执行由这些指令定义的各种操作或功能。取决于特定实施例,所公开的处理器可以被临时配置(例如,通过指令或软件)或被永久配置为执行相关的操作或功能(例如,用于专用集成电路的处理器,或ASIC)。每个公开的处理器可以是芯片组的一部分,该芯片组还可以包括例如存储器控制器或I/O控制器。芯片组是集成电路中电子部件集合,该集成电路通常被配置为提供I/O和存储器管理功能以及多个通用或专用寄存器、计时器等。一般而言,所描述的处理器中的一个或多个处理器可以经由***总线通信地耦合到其它部件(例如,存储器设备和I/O设备)。
某些操作的性能可以分布在一个或多个处理器之间,不仅驻留在单个机器内,而且可以跨多个机器部署。例如,当单个处理器描述为执行操作集合时,应理解,在一些实施例中,多个处理器可以根据跨多个处理器的任何期望的分布来执行该操作集合。在一些示例性实施例中,一个或多个处理器可以位于单个位置(例如,在家庭环境、办公室环境内或作为服务器场),而在其它实施例中,处理器可以跨多个位置分布。
诸如“处理”、“计算”、“计算”、“确定”、“呈现”、“显示”等之类的词可以指代操纵或转换表示为一个或多个存储器(例如,易失性存储器、非易失性存储器或它们的组合)寄存器或接收、存储、传输或显示信息的其它机器部件内的物理(例如,电子的、磁性的或光学的)量的机器(例如,计算机)的动作或过程。
例程。除非另有说明,否则本公开内容中描述的“例程”、“模块”或“应用”是指可以存储在CRM上的计算机可读指令集合。通常,CRM存储表示或对应于指令的计算机可读代码(“代码”),并且该代码适于由处理器执行以促进被描述为由例程或应用表示或与例程或应用相关联的功能。每个例程或应用可以经由独立的可执行文件、可执行文件的套件或束、可执行文件或程序使用的一个或多个不可执行文件、或它们的某种组合来实现。在某些情况下,除非另有说明,否则描述的例程中的一个或多个例程可以被硬编码到一个或多个EPROM、EEPROM、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或任何其它硬件或固件元件。
此外,除非另有说明,否则每个例程或应用可以体现为:(i)独立软件程序,(ii)软件程序的模块或子模块,(iii)软件程序的例程或子例程,或(iv)软件程序通过“调用”调用或访问的资源,从而使得***实现与该资源相关联的任务或功能。该调用可以是(i)被调用以引起执行存储在软件程序可访问的库中的资源(例如,指令集合)的“功能调用”;(ii)被调用以引起***资源执行的“***调用”(例如,通常在特权内核空间中运行并且只能由操作***执行);(iii)被调用以使得具有不同地址空间的逻辑或物理实体执行资源的“远程调用”;或(iv)它们的某种组合。作为示例,由设备的处理器执行的例程可以调用“远程调用”以引起在(i)第二设备(例如,服务器主机、最终用户设备、联网设备、与该设备通信的***设备或某些其它物理设备);(ii)在相同或不同设备上的虚拟机;(iii)与原始处理器不同的并且可以在执行例程的设备内部或外部的处理器(例如CPU或GPU);或(iv)它们的某种组合。
每个例程都可以由以任何期望的语言实现的代码表示,例如源代码(例如,可解释为执行或可编译为较低级别的代码)、目标代码、字节码、机器代码、微代码等。可以用任何合适的编程或脚本语言(例如C,C++,Java,Actionscript,Objective-C,Javascript,CSS,Python,XML,Swift,Ruby,Elixir,Rus,Scala或其它语言)。
Claims (18)
1.一种方法,包括:
(A)经由耦合到一个或多个现场设备的过程控制器对由过程变量(PV)集合表示的过程执行基于模型的控制,所述过程变量(PV)集合包括(i)操纵变量(MV)集合,其可由所述过程控制器经由所述一个或多个现场设备调整,以及(ii)受控变量(CV)集合,每个受控变量都取决于所述MV集合中的一个或多个MV;
(B)在扫描周期开始时,由过程控制器发起扫描,以获得所述CV的当前测量值集合;
(C)在所述扫描周期结束之前,执行双模式操作,所述双模式操作包括:根据过程模型和所述PV的约束集合,选择用于所述MV集合的、将由所述过程控制器执行的当前移动计划,包括:
(i)使用所述CV集合的所述当前测量值集合作为所述过程模型的模型输入,发起以下两者的生成:(a)无约束解,其包括未由所述约束集合界定的一系列未界定的移动计划,以及(b)约束解,其包括避免违反所述约束集合中的任何一个的一系列经界定的移动计划;
(ii)当在所述扫描周期结束之前生成所述约束解时:从所述约束解的所述一系列经界定的移动计划中选择第一移动计划,作为所述当前移动计划;以及
(iii)当在所述扫描周期结束之前未生成所述约束解时:从所述无约束解的所述一系列未界定的移动计划中选择第一移动计划,作为所述当前移动计划;以及
(D)在所述扫描周期结束之前,通过经由以下步骤将所述MV集合设置为包括在所述当前移动计划中的值集合,来执行对所述过程的控制:将携带所述值集合的控制器输出集合发送给所述现场设备,以使得所述现场设备将所述MV集合驱动到所述值集合。
2.根据权利要求1所述的方法,其中,从所述无约束解的所述一系列未界定的移动计划中选择所述第一移动计划,作为所述当前移动计划包括:当所述第一移动计划中包括的任何值违反约束时,修改所述第一移动计划,以使得所述第一移动计划不再导致约束违反。
3.根据权利要求1所述的方法,其中,所述扫描周期是第一扫描周期,其中,所述方法还包括:
在所述第一扫描周期结束后,在第二扫描周期开始时发起下一次扫描,以获得所述CV的下一个测量值集合,并再次执行双模式操作,以选择所述下一次扫描的第二当前移动计划,包括:
(i)使用所述CV集合的所述第二当前测量值集合作为所述过程模型的模型输入,发起以下两者的生成:(a)第二无约束解,其包括未由所述约束集合界定的一系列未界定的移动计划,以及(b)第二约束解,其包括避免违反所述约束集合中的任何一个的一系列经界定的移动计划;
(ii)当在所述第二扫描周期结束之前生成所述第二约束解时:从所述第二约束解的所述一系列经界定的移动计划中选择第一移动计划作为所述第二当前移动计划;以及
(iii)当在所述第二扫描周期结束之前未生成所述第二约束解时:从所述第二无约束解的所述一系列未界定的移动计划中选择第一移动计划作为所述第二当前移动计划。
4.根据权利要求1所述的方法,其中,所述扫描周期是常规扫描周期,其在每次扫描时的长度相同。
5.根据权利要求1所述的方法,其中,所述扫描周期被配置为根据所述扫描而变化。
6.根据权利要求1所述的方法,其中,所述一个或多个现场设备包括控制阀致动器,并且其中,所述MV中的至少一个MV是表示阀位置的变量。
7.根据权利要求1所述的方法,其中,发起所述约束解的生成包括:从所述无约束解开始,并且迭代地修改所述无约束解,以排除导致约束违反的值。
8.根据权利要求1所述的方法,其中,发起所述约束解的生成包括:从预生成的一系列移动计划开始,并且迭代地修改所述预生成的移动计划,以排除导致约束违反的值。
9.一种***,包括:
一个或多个现场设备,用于监视或控制过程;以及
过程控制器,其通信地耦合到所述一个或多个现场设备并被配置为控制所述过程,其中,所述过程由过程变量(PV)集合表示,所述过程变量集合包括(i)操纵变量(MV)集合,其可由所述过程控制器经由所述一个或多个现场设备调整,以及(ii)受控变量(CV)集合,每个受控变量都取决于所述MV集合中的一个或多个MV;
其中,所述过程控制器被配置为执行双模式模型控制操作,以根据过程模型和所述PV的约束集合,选择用于所述MV集合的、将由所述过程控制器执行的当前移动计划,其中,所述过程控制器被配置为:
(A)在扫描周期开始时,由过程控制器发起扫描,以获得所述CV的当前测量值集合;
(B)在所述扫描期间结束之前:
(i)使用所述CV集合的所述当前测量值集合作为所述过程模型的模型输入,发起以下两者的生成:(a)无约束解,其包括未由所述约束集合界定的一系列未界定的移动计划,以及(b)约束解,其包括避免违反所述约束集合中的任何一个的一系列经界定的移动计划;
(ii)当在所述扫描周期结束之前生成所述约束解时:从所述约束解的所述一系列经界定的移动计划中选择第一移动计划,作为所述当前移动计划;以及
(iii)当在所述扫描周期结束之前未生成所述约束解时:从所述无约束解的所述一系列未界定的移动计划中选择第一移动计划,作为所述当前移动计划;以及
(C)在所述扫描周期结束之前,通过经由以下步骤将所述MV集合设置为包括在所述当前移动计划中的值集合,来执行对所述过程的控制:将携带所述值集合的控制器输出集合发送给所述现场设备,以使得所述现场设备将所述MV集合驱动到所述值集合。
10.根据权利要求9所述的***,其中,所述过程控制器被配置为:通过以下步骤从所述无约束解的所述一系列未界定的移动计划中选择所述第一移动计划,作为所述当前移动计划:当所述第一移动计划中包括的任何值违反约束时,修改所述第一移动计划,以使得所述第一移动计划不再导致约束违反。
11.根据权利要求9所述的***,其中,所述扫描周期是第一扫描周期,其中,所述过程控制器还被配置为:
在所述第一扫描周期结束后,在第二扫描周期开始时发起下一次扫描,以获得所述CV的下一个测量值集合,并再次执行所述双模式操作,以选择所述下一次扫描的第二当前移动计划,包括:
(i)使用所述CV集合的所述第二当前测量值集合作为所述过程模型的模型输入,发起以下两者的生成:(a)第二无约束解,其包括未由所述约束集合界定的一系列未界定的移动计划,以及(b)第二约束解,其包括避免违反所述约束集合中的任何一个的一系列经界定的移动计划;
(ii)当在所述第二扫描周期结束之前生成所述第二约束解时:从所述第二约束解的所述一系列经界定的移动计划中选择第一移动计划,作为所述第二当前移动计划;以及
(iii)当在所述第二扫描周期结束之前未生成第二约束解时:从所述第二无约束解的所述一系列未界定的移动计划中选择第一移动计划,作为所述第二当前移动计划。
12.根据权利要求9所述的***,其中,所述扫描周期是常规扫描周期,其在每次扫描时的长度相同。
13.根据权利要求9所述的***,其中,所述扫描周期被配置为根据所述扫描而变化。
14.根据权利要求9所述的***,其中,所述一个或多个现场设备包括控制阀致动器,并且其中,所述MV中的至少一个MV是表示阀位置的变量。
15.根据权利要求9所述的***,其中,发起所述约束解的生成包括:从所述无约束解开始,并且迭代地修改所述无约束解,以排除导致约束违反的值。
16.根据权利要求9所述的***,其中,发起所述约束解的生成包括:从预生成的一系列移动计划开始,并且迭代地修改所述预生成的移动计划,以排除导致约束违反的值。
17.一种方法,包括:
(A)执行基于双模式模型的过程控制器,所述过程控制器被配置为控制过程控制环境中的一个或多个现场设备;
(B)通过所述基于模型的控制器发起扫描以获得所述过程变量(PV)集合的当前值集合,所述当前值集合表示所述受控过程的当前状态,所述过程变量包括多个受控变量(CV)和多个操纵变量(MV);
(C)通过以下步骤,利用过程模型生成优化问题的无约束解:使用所述过程模型,生成针对所述多个MV的一系列移动计划以实现预定目标,而不管所述一系列移动计划中的任何一个是否违反针对所述PV的约束集合中的任何一个,以使得所述一系列移动计划中的每个移动计划中的每个MV的值不由所述约束集合界定;
(D)通过以下步骤,利用所述过程模型发起所述优化问题的约束解的生成:
(i)将所述无约束解存储为候选解;
(ii)通过分析所述候选解来从所述多个MV中对第一MV进行界定,从而:(a)识别约束的首次违反,并确定所述第一MV导致所述首次违反;以及(b)基于在所述首次违反之前排定的移动计划中包括的所述第一MV的一个或多个值,计算所述第一MV的允许范围;
(iii)通过以迭代方式生成包括针对每个剩余MV的修改的一系列移动计划的修改的候选解,来从所述多个MV中对所述剩余MV进行界定,以使得每个修改的候选解将先前界定的MV保持在所计算的允许范围内,并且使得每个后续的修改的候选解包括比先前的修改的候选解少一个的未界定MV,其中,所述剩余MV以这样的顺序来进行界定:所述顺序基于所述剩余MV中的哪个MV首先违反针对每个修改的候选解的约束;以及
(iv)在已经界定了所述多个MV中的每个MV,以使得最近修改的候选解包括最终的一系列移动计划之后,通过将所述最近修改的候选解存储为所述约束解来最终确定所述约束解,所述最终的一系列移动计划不违反所述约束集合中的任何一个;
(E)当所述扫描周期在所述约束解被最终确定之前到期时:(i)在无约束解的第一移动计划中,修改违反所述约束集合中的任何一个的任何值,以实现未违反所述约束集合中的任何一个的经界定的第一移动计划,并且(ii)将所述无约束解的所述经界定的第一移动计划用于控制器输出集合,以根据所述经界定的第一移动计划来控制所述一个或多个现场设备;以及
(F)当所述约束解在所述扫描周期到期之前被最终确定时,将所述约束解的第一移动计划用于所述控制器输出集合,以根据所述经界定的第一移动计划来控制所述一个或多个现场设备。
18.根据权利要求17所述的方法,还包括:由所述基于模型的控制器发起第二扫描,以获得所述PV集合的第二当前值集合;使用所述PV集合的所述第二当前值集合,生成所述优化问题的第二无约束解;使用所述PV集合的所述第二当前值集合,发起所述优化问题的第二约束解的生成;当所述约束解在所述第二扫描周期结束之前被最终确定时,利用所述约束解生成所述控制输出集合;以及当所述约束解在所述第二扫描周期结束之前未被最终确定时,利用所述无约束解生成所述控制输出集合。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/804,799 | 2020-02-28 | ||
US16/804,799 US11467545B2 (en) | 2020-02-28 | 2020-02-28 | Dual-mode model-based control of a process |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113325809A true CN113325809A (zh) | 2021-08-31 |
Family
ID=75339289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110221097.9A Pending CN113325809A (zh) | 2020-02-28 | 2021-02-26 | 基于双模式模型的过程控制 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11467545B2 (zh) |
JP (1) | JP2021140771A (zh) |
CN (1) | CN113325809A (zh) |
DE (1) | DE102021104820A1 (zh) |
GB (1) | GB2596381A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114200900A (zh) * | 2021-11-29 | 2022-03-18 | 合肥工业大学 | 用于thf回收装置的分散控制*** |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11702087B2 (en) * | 2019-09-17 | 2023-07-18 | Baidu Usa Llc | Autonomous driving monitoring system |
JP7409345B2 (ja) * | 2021-03-31 | 2024-01-09 | 横河電機株式会社 | 学習処理装置、制御装置、学習処理方法、制御方法、学習プログラムおよび制御プログラム |
CN113848711B (zh) * | 2021-09-18 | 2023-07-14 | 内蒙古工业大学 | 一种基于安全模型强化学习的数据中心制冷控制算法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7050863B2 (en) * | 2002-09-11 | 2006-05-23 | Fisher-Rosemount Systems, Inc. | Integrated model predictive control and optimization within a process control system |
CN101322083A (zh) * | 2005-12-05 | 2008-12-10 | 费舍-柔斯芒特***股份有限公司 | 利用并行过程仿真的多目标预测过程优化 |
AT511520B1 (de) | 2012-05-24 | 2017-06-15 | Avl List Gmbh | Verfahren und eine Vorrichtung zur Prüfung des Antriebsstranges von zumindest teilweise elektrisch betriebenen Fahrzeugen |
US10156197B1 (en) * | 2017-06-16 | 2018-12-18 | GM Global Technology Operations LLC | Model predictive control systems and methods for increasing computational efficiency |
-
2020
- 2020-02-28 US US16/804,799 patent/US11467545B2/en active Active
-
2021
- 2021-02-19 JP JP2021024881A patent/JP2021140771A/ja active Pending
- 2021-02-24 GB GB2102587.9A patent/GB2596381A/en active Pending
- 2021-02-26 CN CN202110221097.9A patent/CN113325809A/zh active Pending
- 2021-03-01 DE DE102021104820.6A patent/DE102021104820A1/de active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114200900A (zh) * | 2021-11-29 | 2022-03-18 | 合肥工业大学 | 用于thf回收装置的分散控制*** |
Also Published As
Publication number | Publication date |
---|---|
GB2596381A (en) | 2021-12-29 |
GB202102587D0 (en) | 2021-04-07 |
US11467545B2 (en) | 2022-10-11 |
US20210271212A1 (en) | 2021-09-02 |
DE102021104820A1 (de) | 2021-09-02 |
JP2021140771A (ja) | 2021-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11467545B2 (en) | Dual-mode model-based control of a process | |
CN106575104B (zh) | 使用无线过程信号的模型预测控制 | |
CN103293953B (zh) | 具有用来补偿模型失配的调节的鲁棒的自适应模型预测控制器 | |
US10140253B2 (en) | Inferential process modeling, quality prediction and fault detection using multi-stage data segregation | |
JP6163526B2 (ja) | バッチプロセスのオンラインプロセスランの分析を実行する方法 | |
US7930045B2 (en) | Two-stage model predictive control technique | |
JP5697899B2 (ja) | 連続的にスケジュールされるモデルパラメータに基づく適応制御装置 | |
WO2007140196A2 (en) | Automated tuning method for multivariable model predictive controllers | |
US20210333789A1 (en) | Method and apparatus for real time model predictive control operator support in industrial process control and automation systems | |
JP2011181069A (ja) | プロセスモデルの高速同定および生成 | |
EP1259860B1 (en) | Method for finding optimal set-points for machines and processes | |
US11467543B2 (en) | Process controller design with process approximation and lambda tuning | |
Iglesias et al. | A Fuzzy Proposal to Improve Parametric PMC Performance |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |