CN110312974B - 用于过程工业的模拟中的编程 - Google Patents
用于过程工业的模拟中的编程 Download PDFInfo
- Publication number
- CN110312974B CN110312974B CN201780086864.1A CN201780086864A CN110312974B CN 110312974 B CN110312974 B CN 110312974B CN 201780086864 A CN201780086864 A CN 201780086864A CN 110312974 B CN110312974 B CN 110312974B
- Authority
- CN
- China
- Prior art keywords
- simulation
- dimensional
- programmable
- fluid
- physical
- 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.)
- Active
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 200
- 238000000034 method Methods 0.000 title claims abstract description 179
- 230000008569 process Effects 0.000 title claims abstract description 154
- 239000012530 fluid Substances 0.000 claims abstract description 127
- 238000004891 communication Methods 0.000 claims description 26
- 239000000463 material Substances 0.000 claims description 17
- 230000033001 locomotion Effects 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 10
- 230000008878 coupling Effects 0.000 claims description 6
- 238000010168 coupling process Methods 0.000 claims description 6
- 238000005859 coupling reaction Methods 0.000 claims description 6
- 238000004886 process control Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 abstract description 24
- 239000007788 liquid Substances 0.000 description 62
- 230000006870 function Effects 0.000 description 38
- 238000002156 mixing Methods 0.000 description 36
- 230000008859 change Effects 0.000 description 33
- 230000006399 behavior Effects 0.000 description 18
- 239000007789 gas Substances 0.000 description 17
- 238000003756 stirring Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 230000009471 action Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 9
- 239000000126 substance Substances 0.000 description 9
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 8
- 230000000694 effects Effects 0.000 description 7
- 239000000047 product Substances 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001276 controlling effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000002245 particle Substances 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000013019 agitation Methods 0.000 description 2
- 239000011324 bead Substances 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 239000000109 continuous material Substances 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000001965 increasing effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- LFQSCWFLJHTTHZ-UHFFFAOYSA-N Ethanol Chemical compound CCO LFQSCWFLJHTTHZ-UHFFFAOYSA-N 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 239000006227 byproduct Substances 0.000 description 1
- 239000003153 chemical reaction reagent Substances 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 239000010779 crude oil Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011033 desalting Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007865 diluting Methods 0.000 description 1
- 238000010790 dilution Methods 0.000 description 1
- 239000012895 dilution Substances 0.000 description 1
- 238000005553 drilling Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000013067 intermediate product Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000009022 nonlinear effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000003208 petroleum Substances 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 230000010399 physical interaction Effects 0.000 description 1
- 239000002244 precipitate Substances 0.000 description 1
- 239000000376 reactant Substances 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000007789 sealing Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000002792 vascular Effects 0.000 description 1
- 238000013022 venting Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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
- 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
- G05B17/00—Systems involving the use of models or simulators of said systems
- G05B17/02—Systems involving the use of models or simulators of said systems electric
-
- 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/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
-
- 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/32—Operator till task planning
- G05B2219/32337—Simulation, statechart SC
-
- 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/36—Nc in input of data, input key till input tape
- G05B2219/36071—Simulate on screen, if operation value out of limits, edit program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
可编程过程设备包括与处理过程设备中的至少一种流体有关的多个物理部件。三维(3D)模拟系统包括多个可编程3D模拟对象,每个模拟对象对应于过程设备的物理部件。可编程3D模拟对象包括与模拟对象的状态有关的状态变量,以及可以在3D模拟系统上执行模拟应用期间由用户改变的编程代码。基于观察到的模拟结果,可以将与模拟对象中的一个或多个相关联的编程代码传递到对应的物理部件。物理部件被配置为执行所传送的编程代码以控制或更改过程设备的物理部件的状态。
Description
技术领域
本申请涉及过程工业。更具体地,本申请涉及过程工业中的过程的模拟和自动化。
背景技术
过程工业专注于对产生、变换或以其他方式操纵连续物质、诸如液体或气体的自动化。过程工业可以与离散自动化区分开来,在离散自动化中操纵大量单独的(虽然是分离的)对象。加工的示例是混合液体以产生化学反应。另一方面,离散自动化的示例是在汽车零件上钻孔。加工可以分批执行,其中将物质储存在容器诸如罐或反应器容器中。物质可以从一个容纳器通过管道输送到另一个容纳器,以便允许执行加工步骤。此外,加工也可以是连续的,其中自动化装置对持续流动的物质进行操作。举例来说,液体可以通过管道输送到冷却器中并冷却,与另一种流体混合,并然后通过管道输送到另一个设施进行进一步加工,而不必储存在本地容纳器中。
用于控制工艺的装置的类型可以包括容器,诸如罐和/或反应器。可以包括引导物料在容器之间流动的附加装置,并且其可以包括例如管道、阀和泵。可以以物理方式操纵物料的其他装置,诸如搅拌桨或离心机。此外,感测装置可以检测物料属性,诸如温度、pH、颜色、粘度、压力等。
常规地,对过程相关的应用进行编程涉及使用配方样式的程序。这些程序通常以顺序功能图(SFC)编程语言编写。SFC代码是类似于流程图或梯形图逻辑图的低级编程语言,并且不包括以代码表述编程的任务的指示。该代码基本上只是可以表述为提供给过程器材的电信号的命令列表。信号是否执行实际期望的行为,可能无法从编程工具本身内确定。
用于对过程应用进行编程的配方抽象化包括多个抽象层。这些抽象层由特定标准(例如,ISA-88)定义。常规编程方法允许的常见抽象层是在电信号级的编程器材阶段。然而,更高级的抽象,诸如在操作或程序级的编程,由于其更深的复杂性而无法实现。
过程应用经常涉及对流体的操纵。流体模拟可用于模拟过程应用中的液体和气体在不同条件下的行为。存在许多模拟工具示例,其范围从具有计算模拟步骤的应用编程接口(API)的编程语言,到图形化地描绘特定过程内的装置和功能的独立工具。典型的流体模拟是“一维的”,这意味着模拟被指定为一组关联功能,它们组合起来以计算模拟过程的细节。一维模拟具有局限性,例如,不使用模拟对象的图形描绘的相对定位以及这些相对位置如何影响模拟参数的状态或初始值。在一些应用中,一维模拟在具有两个维度的图形屏幕内组成,因此有时1D模拟被称为2D,但实现方法是相同的。
流体的三维(3D)模拟在本说明书中使用对象的位置以指定模拟的某些隐式参数。例如,管道的长度、容器的大小、传感器的位置以及其他特征可以从模拟中所描绘的对象的3D位置、大小和连接中导出。例如,相对于模拟描绘的重力方向是已知的,使得一个容器中的液体可以流到第一高度下方的另一个容器。
流体模拟可基于质量流量方程,以及基于粒子的技术。基于粒子的技术,诸如平滑粒子流体动力学(SPH)也可用于精细模拟流体。这些技术用于诸如电影或动画特效等应用。然而,这些技术对于实时交互式模拟或过程的实时控制来说可能太慢。可以实时求解允许更快计算的质量流量方程。然而,还希望考虑非线性效应,诸如当液体分离或混合在一起时发生的事件或状态,以便对过程模拟最有用。如在教科书中发现的问题中所描述的静态流体分析通常不用于在任意过程中模拟流体,但通常被约束为解决特定情况的封底(例如,在飞行中)计算。
改进的模拟编程技术是所期望的。
发明内容
根据本公开的实施方式的方面包括在模拟过程环境的情境内的编程自动化。特定类型的自动化可能与专门操纵连续物料诸如流体的过程工业相关。典型的过程工业产品将通过各种化学、物理和热力学技术操纵液体及其副产物,以使产品成为有用的形式。非限制性示例包括裂化原油以制备石油、使水脱盐、蒸馏醇和分离沉淀物以制备药物。
根据本公开的实施方式的其他方面涉及在模拟技术中的编程。使用包括流体模拟方面的过程的三维模拟,自动化工程师可以生成控制过程机械的程序。通常,加工机器使用机器组成部分的低电平电信号经由类似于状态图的程序进行编程,诸如状态流程图(SFC)或梯形图逻辑(RLL)。在根据本公开的实施方式的方面的系统中,物理机器通过指定机器的模拟复制品意图如何与对过程物料的期望效果一致地反应来编程。通过模拟以实际方式明确地对机器活动进行建模,从而使错误不太可能发生并且更容易实现预期的机器行为。
根据本公开的实施方式的方面,提供用于对过程应用进行编程的工程系统。表示物理装置的模拟部件在应用中使用。模拟部件表示过程中的实际机器和装置。该表示包括阀和泵等有源装置,以及管道和过滤器等无源装置。部件还包括该过程的工作产品的表示,诸如流体(例如液体)和表示程序功能的逻辑元件以及流体之间相互作用(例如,化学或生物反应)的模拟。过程和控制行为的模拟始终是可用的,并且可以随时激活以模拟装置的功能。一旦实现了应用的整个功能,就可以将模拟的结果下载到物理装置的实际实时控制器,这使得物理装置被编程为执行那些预期的功能。
本公开的实施方式的方面包括一种用于对过程设备的部件进行编程的方法,其包括识别过程设备的多个部件、将过程设备耦合到三维(3D)模拟系统,对3D模拟系统的多个3D可编程模拟对象进行模拟,其中3D可编程模拟对象中的每个包括与3D可编程模拟对象的操作有关的编程代码,并将3D可编程模拟对象中的至少一个的编程代码传送到过程设备的对应物理部件。
本公开的实施方式的方面还包括过程设备的多个部件,其包括控制部件。控制部件可包括可远程操作的阀、可远程操作的泵、可远程操作的加热器、可远程操作的和/或可远程操作的电机。
按照根据本公开中描述的实施方式的方法的方面,将过程设备耦合到3D模拟系统包括,将多个过程设备部件的中的每个耦合到过程控制应用,并且建立过程控制应用和3D模拟系统的计算机处理器之间的通信路径,其中3D模拟系统的计算机处理器被配置为经由通信链路和过程控制应用将包含在至少一个3D模拟对象中的编程代码传递到过程设备的对应物理部件。在一些实施方式中,对多个3D可编程模拟对象执行模拟包括定义对应于过程设备的每个部件的可编程3D模拟对象。多个可编程3D模拟对象可包括至少一个流体物理对象、至少一个控制对象、至少一个流体传输对象和/或至少一个流体储存对象。
根据本公开的实施方式的方面的某些方法可以包括在3D模拟的工作空间中布置对应于过程设备的每个部件的可编程3D模拟对象,使每个3D模拟对象在3D模拟工作空间被定位成与过程设备中对应部件的物理位置成比例。
根据本公开的实施方式的方面的某些方法可以包括在3D模拟工作空间中对可编程3D模拟对象运行模拟应用,以及当模拟应用运行时,改变可编程3D模拟对象中的至少一个的属性或编程代码中的至少一个。
根据本公开的实施方式的方面的某些方法可包括将模拟应用的结果与期望结果进行比较,基于模拟结果与期望结果之间的差异来改变3D模拟对象中的至少一个的编程代码。
根据本文描述的实施方式的其他方面,可编程过程包括过程设备,该过程设备包括多个过程物理部件、与多个过程物理部件中的至少一个通信的控制应用,以及三维(3D)模拟系统,其包括包含多个可编程3D模拟对象的3D工作空间,多个可编程3D模拟对象中的每个对应于过程设备的过程物理部件,其中3D模拟系统与控制应用通信。
过程设备可包括至少一个流体容器和耦合到至少一个流体容器的至少一个管道,以及耦合到至少一个管道的至少一个控制装置,该控制装置被配置为控制流体经由至少一个管道流入或流出至少一个流体容器。至少一个控制装置包括可远程操作的致动器,其被配置为接收控制信号并响应于控制信,改变控制装置的状态。
根据本公开的实施方式的方面的可编程过程设备还包括:对应于过程设备的控制装置的可编程3D模拟对象、包括编程代码的对应于过程设备的控制装置的可编程3D模拟对象,该编程代码可操作以在可编程3D模拟系统的模拟操作期间模拟对应控制装置的操作,并且其中编程代码被配置为传递到过程设备的对应控制装置,并且编程代码可由控制装置的可远程操作的致动器执行以改变控制装置的状态。3D模拟系统还包括对应于流体容器的第二可编程3D模拟对象,该第二可编程3D模拟对象包括编程代码,该编程代码包含与流体物理有关的逻辑并响应于第二可编程3D模拟对象的模拟移动,包含在与第二可编程3D模拟对象相关联的模拟流体容器内的模拟流体与第二可编程3D模拟对象的模拟移动一致地移动。控制应用被配置为从3D模拟系统的至少一个3D模拟对象接收可编程代码,并将接收的可编程代码传递到过程物理部件中的至少一个。所接收的可编程代码可操作在3D模拟系统中模拟过程物理部件中的至少一个,并提供用于操作至少一个过程物理部件的指令。
附图说明
当结合附图阅读时,从以下详细描述中可以最好地理解本发明的前述和其他方面。出于说明本发明的目的,在附图中示出了目前优选的实施方式,但是应该理解,本发明不限于所公开的特定手段。附图中包括以下图:
图1是根据本公开的实施方式的方面的3D模拟对象的图示。
图2是根据本公开的实施方式的方面的将3D流体对象添加到图1中示出的3D模拟对象的图示。
图3是根据本公开的实施方式的方面的与3D流体对象相关联的流体属性的图示。
图4是根据本公开的实施方式的方面的图1中所示的3D模拟对象的管道或传送对象的添加的图示。
图5是根据本公开的实施方式的方面的图1的3D模拟对象的附加罐和控制对象的图示。
图6是根据本公开的实施方式的方面的3D模拟对象之间的关系的框图。
图7是示出根据本公开的实施方式的方面的3D模拟对象的功能关系的框图。
图8是表示根据本公开的实施方式的方面的过程系统的3D模拟对象的概念框图。
图9是根据本公开的实施方式的方面的具有逻辑控制的3D模拟对象的图示。
图10是根据本公开的实施方式的方面的具有控制编程的模拟过程系统的图示。
图11是根据本公开的实施方式的方面的将流体属性分配给3D模拟流体对象的图示。
图12是根据本公开的实施方式的将自定义的流体功能应用于3D模拟流体对象的图示。
图13是根据本公开的实施方式的方面的过程设备的模拟系统中的编程的图示,
图14是用于实现本发明的实施方式的示例性计算环境的示意图。
具体实施方式
本公开的实施方式的方面包括使用正在实现的过程的三维模拟对过程工业应用进行编程的方法。在编程期间运行模拟通过允许开发人员发现错误并更好地理解过程装置的运行方式来协助编程过程。过程物料的模拟也可以用作控制实现的一部分,因为物料的模拟值可以被认为是程序状态的一部分并且用于影响受控装置的电气状态。由于模拟为开发过程提供了这样的中心任务,因此该方法称为模拟中的编程。编程在被编程的装置的3D虚拟复制品中进行。开发人员访问代表装置的部件的库。可以从库中选择部件并将其放入3D空间中。该部件预编程了装置的3D几何形状(按比例)、表示装置与其环境的物理交互的对象,以及装置能够执行的控制行为。
制作装满水的罐
为了演示用户界面的方面如何起作用,将呈现部分示例。对于第一步,将形成反应器容器并用水填充。应用中的模拟部件对象反映了该过程使用的主要物理装置。例如,反应器容器由在虚拟复制品或配对物中看起来像并相似于反应器容器运作的对象来代表。
图1示出了如何将反应器容器放入工作空间中。从反应器需要的空间101开始,用户将反应器103拖出并将其放置在该空间中。在该特定示例中,空间可以在开始时是空的,因此任何位置大体上都可行,但是在更详细的示例中,可能存在许多罐和其他容器,并且对象的位置将反映它们的真实物理世界位置。
部件不需要是关于最终设计的完整对象。在图1所示的示例中,反应器103在顶部105处打开,其中,在最后的过程,反应器具有密封盖,该盖具有用于插入管道的孔。在本发明中,反应器103、盖(图4和图5中所示)和入口(图4和图5中所示)可以是组装在一起以形成最终过程配置的单独部件。
参考图2,在(A)、(B)、(C)和(D),反应器103填充有诸如水的液体。用于水的部件被表示为逻辑块201,其像任何其他部件一样被拖入虚拟空间101中。图块(tile)201表示为在图2中(A)处标有“液体图块”的具有波浪线的正方形。程序员通过将液体块201的连接器202拖到反应器103,将液体201配属给反应器103,如图2中(A)和(B)处所示。液体203在容器103中示出为3D体积。当选择容器103时,用户可以通过拖动手柄205来操纵容器103中的液体203的量。图2中(C)和(D)处的顺序示出了用户将液体手柄205向上拖动到位置207以将液体203的液位从第一深度205a升高到第二深度207a。当使用者释放手柄207时,液体203的3D体积显示在容器内,具有由209所示的增加的表面高度水平。
在用户激活模拟应用的“运行”模式的任何时间,也都模拟反应器103中的液体201的运动。该系统将自动将包括容器103如何移动以及流体如何可以进出的信息合并,以计算液体201关于输入的行为结果。液体201的模拟几何形状被相应地更新,并且与用户的输入和控制行为交互地被实时地动画化。
图3示出了容器103相对于工作表面303倾斜的3D描绘。在图3中,用户在模拟运行时拖动可移动容器103。在模拟中处理与液体203相关的流体属性以及容器103的运动,使得模拟中的液体203的3D渲染看起来晃动,如在流动模式下由流体203的倾斜表面301所指示的。
部件之间的管道流体
系统支持创建运行过程所需的任何部件。多个容器可以用在不同容器、阀和过程装置之间输送液体和气体的管道连接。参考图4,通过向反应器盖402添加入口管401来穿入反应器容器103。当放置入口管401时,盖402在入口管401处的穿孔403自动创建。入口管401的长度也可以通过用户拖动手柄(409、411)来改变。加长的入口管413在图4中(C)处示出。反应器盖402本身是可选的部件,并且反应器容器103的一部分被卡入到位。用户还可以添加许多其他部件,诸如搅拌机构、用于排放的出口管,以及各种传感器,诸如压力或温度(未示出)。
现在参考图5,通过添加第二罐501和阀503部件来进一步扩展模拟应用,以控制从上罐501到下反应器103的液体流。罐501和入口507组合类似于如前面关于图4所述的反应器盖402和入口管401那样来创建。类似地,罐501在其中具有使用液体图块509的液体505。阀503与罐501和入口管507的组合通过将零件拖到一起使它们的端部靠近在一起来连接。然后,当用户放开输入装置时,3D模拟系统将零件合在一起。部件之间的连接包括部件内部对象的所有物理连接,而不仅仅是3D模型的几何位置。在图5的示例中,反应器103和罐501具有保持流体505的物理对象(例如、罐),并且管道507、401和阀503包含流体传输物理对象(例如、管道)。阀503还包含控制节点物理对象,以表示改变网络的流体拓扑的能力。基本上,它可以通过改变它对管网络的影响来打开和关闭阀503。物理对象通过参考诸如入口管401连接到反应器罐103、入口管401经由阀503连接到阀管507等等而链接在一起。这些内部连接在模拟环境内基于哪些部件被“卡入”在一起以附加到相邻部件而自动建立。
编程对象(例如、数据结构)的使用将可编程功能添加到表示过程设备的部件的3D模拟对象。3D模拟对象被配置为执行过程的模拟,同时允许动态调整各种模拟部件的位置、大小、内容和其他属性。这允许程序员运行模拟,并同时经由与3D模拟对象关联的数据对象进行调整。通过这种方式,程序员可以观察模拟操作的结果。当模拟产生期望的结果时,控制数据对象内存储的数据(例如状态信息,编程代码)可以直接加载到物理过程设备中,从模拟向过程设备中的物理控制装置提供控制指令。
在编辑期间产生并连接的内部对象可以包括物理对象和用于描述物理装置的属性或实现物理模拟的各方面的其他语义对象。装置的语义可以用图表示,例如、如图6所示。用户不需要手工绘制图中的元素,系统也不需要生成图;该图表示由3D部件的装配隐式表示的数据。该图是管道和仪表图(P&ID),其示出了由电磁阀605连接的两个罐601、603。这基本上与3D构造相同,除了3D包含与实际3D几何形状相关的信息,诸如罐大小、管道长度和转弯、以及罐的相对位置。
物理对象的结构
系统可以使用许多内部数据结构来表示3D部件及其包含的物料。这些物料由用于模拟装置将处理的流体过程的物理对象组成。例如,系统可以使用对象来表示容器和管道的状态、流体物料的状态,以及用于确定流体移动和其他特性的求解器的状态。
与进行中的示例一致,图7示出了可用于表示流体容器的状态和控制功能的物理对象。在此数据中,对象可以类似于P&ID图;但是,在这种情况下,管道对象701、703被明确地表示出来。该阀由类似于管道701、703之间的接合部作用的控制节点705来表示,除了其状态由外部功能控制,使得其根据阀设置的开启程度来调节通过该区域的流量。通过在控制节点或其他容器对象处应用功能,可以潜在地改变诸如密度、粘度、温度等其他流体性质。(例如罐707和/或罐709)
系统可以使用物理对象来表示容器内的流体状态。在图8中,用于表示一对罐(图5,103、501)的流体状态的一组对象可以被用作图5中的示例。最顶部的罐501部分地填充有空气803和水805,紧接在下方的管道507大部分填充有空气807,但是连接到罐501中的水505以在端部形成小液滴809。另一个管道401和罐103填充有空气811、813。假设罐是通风的并且可以与环境交换气体,则容器801周围还存在空气。流体之间的接合部同样重要,并在图中用圆圈820a-g标记。这些接合部确定流体流动的位置以及如何从包含一种流体转变为包含另一种流体。
当流体围绕网络非线性地移动时,可以动态地创建和破坏物料物理对象。例如,多个液珠和气泡可以保持在单个管道中并沿其长度一起移动。可以通过在容器物理对象的端部创建新的物料对象来分割在容器几何形状诸如T形管中找到分裂的流体。通常,物料对象实际上不需要从一个容器转移到另一个容器。相反,它们可以在容器的端部被创建和破坏,其中中间对象被调整大小以表示内容物的改变。
物料物理对象可用于生成表示流体行为的方程。例如,可以在求解器中收集彼此相邻的液体流体对象组,并且可以应用质量守恒和惯性方程以确定在给定时间步长期间液体质量将如何移动。类似地,可以收集连接的气体元素并应用方程以根据容器几何形状和体积确定气体的压力,以及基于前进液体改变体积率。求解这些方程可以确定下一时间步中物理对象的状态。
一旦确定了物理对象的新状态,系统就可以重新配置物理对象的几何形状。例如,系统可以沿着管道的长度进一步移动液体和气体;增加罐中的液体量;将气压排放到大气;以及许多其他可能性。此外,物理对象的拓扑结构可以变化。例如,可以将新的管道液珠添加到管道的端部,或者管道之间的接合部可以从液体节点变为气体节点。容器对象的拓扑结构也可以变化。例如,罐可以从一个管道断开并添加到另一个管道;可以打开或关闭罐的通风口,或者阀可以改变其孔径。
对自动化行为进行编程
用户可以通过将逻辑和控制元件连接到可控部件来向应用添加自动化行为。物理部件诸如阀和传感器可以具有数字激活的输入和输出。例如,在图5中的一组部件中示出的电磁阀503可以具有数字地开启和关断的能力。当关断时,逻辑0,阀可以关闭,并且当开启时,逻辑1,阀可以打开。
在图9中,已经向阀503添加了逻辑,其控制阀何时打开或关闭。在这种情况下,逻辑901可以基于输入信号903使阀打开两秒,并然后自动关闭。
自动化编程可以根据需要复杂化以反映装置的数量和行为。逻辑将能够处理步骤序列;互锁条件;计算各种数据类型;数值算术;与外部装置通信;以及程序可以提供的所有常用功能。
外部协调功能
在过程中,通常由外部实体诸如专用协调控制器部分地控制特定装置或装置套件的控制。为了处理这种情况,系统可以包括外部控制功能,其动作可以由协调器在运行时启动。
在图10中,用户已设置控制功能以激活和停用装置的搅拌行为。为了接收外部命令,用户已经将外部命令接收器功能添加到控制搅拌装置1003的电机1001的逻辑。用于控制搅拌状态的代码在图10中(a)处示出,具有其电机1001的搅拌装置1003在图10中(c)处示出。出于模拟目的,系统可以使用用户定义的命令队列生成模拟外部命令。可以将命令设置为像顺序功能图程序(SFC)一样来运行,其中一些命令是顺序发出的,而其他命令是并行发出的。在图10中(a)和(b)处示出了一组命令的示例。在模拟测试中,将使用用户定义的命令,但是当程序部署在物理控制器上时,将使用来自实际协调器的命令。
再次参考图10的(c)处,示出了根据本发明实施方式的用于对处理应用进行编程的示例性表示。该系统包括混合容器1030、用于容纳第一流体A的第一源容器1010,以及容纳第二流体B的第二源容器1020。第一源容器1010经由入口管1011和控制阀1012与混合容器1030流体连通。第二源容器1020经由入口管1021和控制阀1022与混合容器1030流体连通。混合容器1030包括旋转地耦合到搅拌电机1001的搅拌装置1003。
贮藏容器1050经由出口管1035与混合容器1030流体连通,该出口管1035从混合容器1030和入口管1045经由控制阀1037到贮藏容器1050。可提供泵1040用于从混合容器1030移动流体到贮藏容器1050。其他部件(例如,过滤器、反应器室、流化床等)也可以连接在混合容器1030和贮藏容器1050之间。
控制节点物理对象可以与部件、部件之间的接合部或图10中的包含在处理应用内的流体相关联。控制节点物理对象数字地表示部件的物理性质和部件之间的相互作用。这些控制节点物理对象是可编程的,并且可以接收改变控制节点物理对象的状态的控制信号。控制信号可以由本地传感器提供,或者可以由控制节点物理对象从与控制节点物理对象通信的远程处理单元接收。控制信号可以改变控制节点物理对象的一个或多个状态。一个控制节点对象的状态变化可以影响系统中其他控制节点物理对象的状态,并提供处理应用的模拟操作。
图10的(b)处提供了可用于控制一个或多个控制节点物理对象的逻辑的示例,这些节点物理对象表示处理应用的一个或多个部件。提供控制信号1060,其与从第一源容器1010向具有30升流体A的混合容器1030供料的物理行为相关联。控制信号1060可有效地改变第一源容器1010和混合容器1030之间的控制阀1012的状态。例如,控制信号可操作以指示控制阀1012从关闭状态变为打开状态。阀1012的状态从关闭到打开的变化引起在处理应用的其他部件中发生状态变化。例如,控制阀1012的打开将使第一源容器1020中的流体A的液位降低,而混合容器1030内的液位将提高。同样,在源容器1010和混合容器1030之间的管道1011内流体体积流速将增加。该系统可包括监测通过管道1011的体积流速的控制处理。当确定预定体积的流体A时(例如,控制信号1060中的30升)已经从源容器1010传递到混合容器1030时,可以提供控制信号以将控制阀1012的状态从打开变为关闭,以便停止引入更多的流体A到混合容器1030。
当控制信号1060完成时,控制逻辑可以实现经由附加控制信号执行的附加处理步骤。如图10中(b)处可见,一旦控制信号1060完成,控制或协调处理器可能要求并行地实现附加控制信号。可以创建一个控制信号1062,其将搅拌电机1001的状态从关断改变为开启。耦合到搅拌电机1001的搅拌装置1003也经历状态变化,因为其以物理方式(通过模拟中的逻辑)与搅拌电机1001相关联。控制信号可以提供搅拌过程应该进行多长时间的指示。例如,控制信号1062实现搅拌过程10秒。在10秒结束时,控制信号1062可以将混合器电机1001的状态从开启改变为关断,这可能对包括搅拌装置1003在内的其他部件的状态具有额外的影响。
与控制信号1062同时,生成控制信号1064,其模拟混合容器1030中的流体A与来自第二源容器1020的30升流体B的稀释。控制信号1064可操作以将控制阀1022的状态从关闭改变为打开。当控制阀1022具有打开状态时,附加部件诸如管道1021的状态与第二源容器1020和混合容器1030的容积水平也将相应地改变。进一步地,与混合容器1030的流体含量相关联的逻辑节点将随着流体B添加到已经存在于混合容器1030中的流体A的体积而改变。附加的状态改变,例如,包括流体A和流体B的混合流体的状态可以基于混合电机1001的混合状态或其他性质(诸如流体A和流体B之间的化学反应(例如化合物化学物质、放热反应等))而改变。这些改变可能影响混合容器1030内的其他性质,诸如温度或压力。
控制信号1062和1064同时执行以模拟在混合容器1030中添加30升流体B至30升流体A,同时在流体B添加时提供10秒的搅拌作用。一旦执行了控制信号1062和1064,逻辑流程就前进到标记为“传送”的控制信号1066。控制信号1066可以有效地改变系统的部件的状态,该状态将混合容器1030中的搅拌或混合流体传送到贮藏容器1050。例如,控制信号1066可操作以将控制阀1037的状态从关闭改变为打开。同时将泵1040的状态从关断改变为开启。泵1040的状态从关断到开启,以及控制阀1037的打开导致混合容器1030、管道1045和贮藏容器1050的状态改变,指示混合流体通过管道1045、控制阀1037和泵1040的流动,以及将混合流体添加到贮藏容器1050,同时减少混合容器1030中的混合流体的体积。
增强流体行为
系统将进一步基于流体的性质以及容器和控制节点的配置提供流体的默认模拟行为。用户还可能想要扩展流体的行为,以便将该行为结合到控制模型中或者更详细和准确地模拟对装置的流体响应。
流体和容器性质
表示流体的物理对象具有表示性质的状态变量。这些性质中的一些在模拟期间是固定的,而其他性质则根据模拟的计算进行改变和更新。液体可具有默认性质(例如密度和粘度)。这些性质足以确定当受外力驱动时液体如何通过管网络移动。例如,液体如水密度为1000 𝑘𝑔/𝑚3,并且粘度为0.01 𝑘𝑔/𝑚·𝑠𝑒𝑐。气体可具有默认性质,诸如摩尔质量、温度和特定气体常数。利用这些气体性质,可以确定容器内气体配置的压力和其他力。
该系统允许用户向液体或气体物理对象添加新性质以扩展模拟的功能。在图11所示的示例中,用户已向程序中的液体物理对象添加温度和盐度性质。系统可以使用逻辑元素如编程元素和液体标记来创建和分配新性质。在此示例中,温度性质的默认值为295,盐度性质的默认值为0.0。性质的值可以是数字或任何其他可编程类型,诸如布尔值、字符串、结构或数组。数值可以是标准整数或浮点类型或其他类型,诸如矩阵、向量、复数、四元数或其他种类的数学值。作为示例,该值可以具有单位类型,诸如具有开尔文单位的温度。与一个单元相关联的值也可以转换为其他等效单位,诸如将温度转换为摄氏或华氏温度。
当分配新性质时,将使对应类型的物理对象拥有该性质。在该示例中,用户创建了液体性质,因此将使所有液体具有温度和盐度性质。性质的初始值是默认值,但用户可以将物理对象的任何实例更改为自定义性质值。在该示例中,用户将液体A的盐度设置为5.0。该系统还允许气体物理对象具有新的性质以及包括罐和管道的容器对象。物理对象的性质随每个对象移动,并成为新的全局特征。用户不需要编写自定义代码来跟踪每个不同容器中的流体状态。性质只是普通对象的一部分。
当模拟运行时,流体对象可以根据容器的拓扑来流入彼此中。在图11中,两个管道1103、1105在T形接合部1101中流入第三个管道中。当流体相遇时,系统可以执行性质的混合以产生具有新的并且与原始对象不同的性质的流体。用户可以为物理对象中的性质中的每个设置混合规则。对于液体,默认混合规则可以是“按体积”,这意味着混合流体的值将基于流入和流出该元件的物料的体积。在该示例中,来自液体A和液体B的流速相等,因此混合液体的盐度量是原始液体值之间的中间值。原始值设置为0.0(液体B)和5.0(液体A),因此中间值为2.5。其他混合规则也是可能的,诸如按质量、温度或使用用户提供的配方进行混合。
用于气体物理对象的用户定义的自定义性质也可以具有混合规则。气体的默认混合规则可以基于质量。与液体一样,规则可以改变为不同的系统提供选项或由用户配方提供。容器也可以提供用户定义的性质。通常,这些性质用于补充对气体或液体物理对象执行的功能。
流体功能
该系统还允许用户创建直接与模拟中的流体对象相关的自定义功能和配方。对于许多情况,流体可以改变状态并且在自动化过程中具有不同的性质值。用户可以添加计算性质在不同种类条件下如何变化的功能。该功能可以全局应用于所有流体物理对象,使得液体和气体都执行新功能,并且无论容纳它们的容器如何都可以进行状态改变。
用户定义的流体功能可用于定义化学和生物反应;液态和气态之间的变化;改变到默认性质如密度和粘度;改变到用户定义的性质;温度变化;相邻流体之间的性质传播;以及许多其他可能性。在图12中,对液体物理对象1201添加了功能以模拟两种试剂之间的化学反应。每种化学品的量被设置为两种输入液体1203、1205的性质,并且应用了计算基于液体条件创建的产物量的功能。在此功能中,测量反应物的量以及当前温度。无论液体在何处流动,反应都根据局部条件进行。反应不需要在反应器容器1230中发生,并且可以在管道1215、1225中或在存在正确条件的任何地方进行。该配方全局应用于所有液体物理对象,包括通过跨分支分割或混合其他液体对象而生成的对象。
流体配方可以用于执行模拟行为,但是它也可以用于执行用户界面行为。在该示例中,可以添加功能以在创建一定量的废品时将模拟的液体颜色改变为红色。颜色不必用于特定的模拟效果。在这种情况下,颜色用于向用户指示需要过滤流体以去除不需要的物质。当流体通过该物质的过滤器时,颜色会自动变回其正常状态。因为所有区域中的液体都定义了变色流体的功能,所以局部条件决定了液体的颜色,并且红色标记的液体变成未标记,因为它的局部性质引起功能以不同的方式进行评价。
本发明的实施方式的方面包括用于工程自动化应用的编程系统,其例如适用于过程工业。本发明的实施方式的其他方面涉及在将在实际物理工厂中找到的装置的模拟内开发程序的逻辑。本发明的实施方式的其他方面定义了表示工厂装置的部件并且将它们体现在3D模拟环境中。该部件包括装置的3D模型以及表示装置在物理上和逻辑上如何运行的内部对象。
本发明的实施方式的方面提供了用户界面方法,使得部件的组装更简单。例如,在管道、阀等实际连接的位置用它们在视觉上将3D对象搭扣连接在一起。部件的对准和位置可以至少部分地由系统确定。通过创建表示流体的逻辑块并将该块分配给建模的容器(诸如管道或罐),可以将流体分配给与工厂相关联的容器。
通过工厂容器的连接自动确定植物的工厂功能结构,使得生成用于容器和流体的物理对象。物理对象处理流体运动和相互作用的模拟。流体的模拟与多体运动兼容,并且可以计算引起对象在模拟中移动的力,并且同样受到对象移动的影响。
用户可以通过直接在3D模拟环境中应用逻辑来对装置进行编程。可以将逻辑块分配给致动器和传感器,以将它们的值与实际应用行为相关联。可以定义这些逻辑块中的一些以接收来自外部协调器的输入,从而可以自动处理整个系统过程。
用户可以向定义新类型行为的流体和血管对象添加新性质。例如,由流生成的流体之间的混合行为可以由系统自动处理,甚至对于用户定义的性质也是如此。可以使用用户定义的功能进一步增强流体,该功能模拟行为诸如化学和生物反应以及其他状态改变动作。流体功能甚至可以改变流体的性质,如用户界面外观所描绘的,例如流体的颜色或透明度。
根据本公开的实施方式的方面,程序被下载到物理控制器。在物理控制器,程序作为普通控制程序运行。因此,控制程序使用的模拟的元素被编码,使得模拟仍然在控制器中运行,并且其结果将确定那些依赖性的成果。
图13是示出根据本公开的方面的用于过程设备的模拟系统中的编程的图示。过程设施1300包括耦合以形成过程设备1303的装置或部件。过程设备1303可包括储存容器、混合容器、过滤器、泵、阀、电机或伺服机构、传感器和一起工作以执行过程设备1303的功能的其他物理部件。除了物理部件之外,过程设备1303可以被配置为接收一种或多种流体并对一种或多种流体执行处理以合成期望的输出产品。处理可以包括加热、混合、稀释、冷却、传送、储存以及其他动作,并且可以包括同时执行的多个动作的任何组合。
过程设备1303内的装置包括控制装置,其可以是智能装置,允许控制部件的远程操作,诸如阀、电机、泵等。可以提供与过程设备1303的装置或部件中的至少一些通信的计算机化控制协调应用1301,以监控过程设备1303的状态(例如,经由传感器)并处理与一个或多个部件的状态有关的信息。控制协调应用1301可以被配置为生成自动或监督的控制信号,其被传送到过程设备1303内的控制对象。监督的控制信号可以由用户的输入生成,诸如经由输入装置输入到计算机中的命令,该输入装置诸如键盘或指点装置。自动控制信号可以包括由控制协调应用1301自身响应于由过程设备1303的一个或多个部件接收的信息而生成的控制信号。该信息可以是本地部件的当前状态的状态信息,或者可以是与整个过程相关的信息,诸如是过程设备1303的对象的中间产品或最终产品的状态。
3D模拟系统1320通过通信路径1309耦合到加工设施1300。通信路径1309可以实施为允许数据1311从3D模拟系统1320到加工设施1300的通信的计算机网络。通信路径1309可以通过有线网络连接进行硬连线。在其他实施方式中,通信路径1309可以是无线的,允许数据在3D模拟系统1320中的工作站和加工设施1300中的工作站(例如,托管控制应用1301的工作站)之间传输。
3D模拟系统1320可以包括计算机1307,其具有计算机处理器,用于接收由过程设备1303的物理部件生成的输入和与过程设备1303的状态有关的其他输入,诸如由过程设备1303的3D模拟生成的数据1311。计算机1307耦合到显示器1309,其允许程序员/操作员/工程师呈现包含描绘过程设备1303的物理部件的3D可编程对象的3D模拟。3D模拟的可编程对象可由用户经由计算机输入装置操纵,以添加、删除、修改、移动和连接一个或多个3D模拟对象(例如可编程对象)。3D模拟系统允许用户选择各种3D模拟对象并将它们放置在虚拟工作空间内。可以布置所选择的3D模拟对象,使得显示在显示器1309上的3D模拟对象提供过程设备1303的虚拟或数字双胞胎1305。
通过创建数字双胞胎1305的计算机1307和3D模拟对象,操作员可以修改包括过程设备1303的数字双胞胎的3D模拟对象。3D模拟对象是可编程的,意味着与每个3D模拟对象相关联的值和计算机代码可用于提供物理过程设备1303的完整模拟。可在模拟运行时修改3D模拟对象,允许用户观察模拟过程设备部件的各种状态,以及由模拟确定的物理过程设备1303创建的物料或产品的状态。
因为每个3D模拟对象包括表示由3D模拟对象表示的模拟部件的功能能力的状态的值和计算机代码,所以这些值或编程代码可以由模拟计算机1307作为数据1311经由通信路径1309传送到物理过程设备控制协调应用1301。来自3D模拟对象的数据被配置为使得控制协调应用1301可以将存储的代码从模拟对象传送到与提供代码的3D模拟对象相关联的过程设备1303的物理部件。然后,传送的代码可用于控制物理部件的动作,并提供与作为模拟的输出所观察到的结果一致的实际物理过程设备1303的结果。
图13的系统允许程序员创建3D模拟环境,其模仿物理过程设备1303的每个部件的大小、配置和相对定位,并在虚拟环境中创建过程设备的虚拟复制。在模拟应用运行时,可以对虚拟过程设备进行修改和对编程的改变,这些将反映在模拟结果中。因此,在模拟期间,程序员或工程师可以调整3D模拟对象以实现如模拟所示的期望结果。当在模拟中实现最佳结果时,存储在3D模拟对象中的编程代码可以被传递到它们的物理部件对应物。结果,物理过程设备1303拥有将基于编程的3D模拟对象产生期望成果的部件状态。
对过程设备的至少一个控制部件进行编程的方法包括用户通过组合多个可编程3D模拟对象来定义过程设备的虚拟数字双胞胎。每个可编程3D模拟对象被配置为存储数据,包括对象状态数据以及可由与过程设备中的物理控制部件相关联的处理器执行的编程指令。编程指令可用于执行对多个3D模拟对象的模拟。另外,可以将编程指令传递到过程设备的对应物理部件,以对对应物理部件的操作或状态进行编程或重新编程。在模拟操作中评估模拟对象时,可对可编程3D模拟对象进行编程或更改。
图14示出了可以在其中实现本发明的实施方式的示例性计算环境1400。计算机和计算环境诸如计算机系统1410和计算环境1400是本领域技术人员已知的,并因此在这里进行简要描述。
如图14所示,计算机系统1410可以包括通信机构,诸如系统总线1421或用于在计算机系统1410内传送信息的其他通信机构。计算机系统1410还包括与系统总线1421耦合以用于处理信息的一个或多个处理器1420。
处理器1420可以包括一个或多个中央处理单元(CPU)、图形处理单元(GPU)或本领域中已知的任何其他处理器。更一般地,如本文使用的处理器是用于执行存储在计算机可读介质上的机器可读指令的装置,用于执行任务并且可以包括硬件和固件中的任何一个或组合。处理器还可以包括存储器,其存储可执行以用于执行任务的机器可读指令。处理器通过操纵、分析、修改、转换或传输信息以供可执行程序或信息装置使用,和/或通过将信息路由到输出装置来对信息起作用。处理器可以使用或包括例如计算机、控制器或微处理器的能力,并且可以使用可执行指令来调节以执行不由通用计算机执行的专用功能。处理器可以与任何其他处理器耦合(电耦合和/或包括可执行部件),其中任何其他处理器能够在其间进行交互和/或通信。用户接口处理器或发生器是包括用于生成显示图像或其部分的电子电路系统或软件或两者的组合的已知元件。用户界面包括使得用户能够与处理器或其他装置交互的一个或多个显示图像。
继续参考图14,计算机系统1410还包括耦合到系统总线1421的系统存储器1430,用于存储将由处理器1420执行的信息和指令。系统存储器1430可以包括计算机可读存储介质,其是易失性和/或非易失性存储器的形式的,诸如只读存储器(ROM)1431和/或随机存取存储器(RAM)1432。RAM 1432可以包括一个或多个其他动态存储装置(例如,动态RAM、静态RAM和同步DRAM)。ROM 1431可以包括一个或多个其他静态存储装置(例如,可编程ROM、可擦除PROM和电可擦除PROM)。另外,系统存储器1430可以用于在处理器1420执行指令期间存储临时变量或其他中间信息。基本输入/输出系统1433(BIOS)包含有助于在计算机系统1410内的元素之间,诸如在启动期间传递信息的基本例程,BIOS 1433可以存储在ROM 1431中。RAM 1432可以包含处理器1420可立即访问和/或当前正在操作的数据和/或程序模块。系统存储器1430可以另外包括例如操作系统1434、应用1435、其他程序模块1436和程序数据1437。
计算机系统1410还包括耦合到系统总线1421的磁盘控制器1440,以控制用于存储信息和指令的一个或多个存储装置,诸如磁硬盘1441和可移动介质驱动器1442(例如,软盘驱动器、紧凑光盘驱动器、磁带驱动器和/或固态驱动器)。可以使用适当的装置接口(例如,小型计算机系统接口(SCSI)、集成装置电子器件(IDE)、通用串行总线(USB)或火线)将存储装置添加到计算机系统1410。
计算机系统1410还可以包括耦合到系统总线1421的显示控制器1465,以控制用于向计算机用户显示信息的显示器或监视器1466,诸如阴极射线管(CRT)或液晶显示器(LCD)。计算机系统包括用于与计算机用户交互并向处理器1420提供信息的输入接口1460和一个或多个输入装置,诸如键盘1462和指点装置1461。例如,指点装置1461可以是用于将方向信息和命令选择传送到处理器1420并用于控制显示器1466上的光标移动的鼠标、光笔、轨迹球或指点杆。显示器1466可以提供触摸屏界面,其允许输入以补充或替换指点装置1461的方向信息和命令选择的通信。
响应于处理器1420执行包含在存储器(诸如系统存储器1430)中的一个或多个指令的一个或多个序列,计算机系统1410可以执行本发明的实施方式的处理步骤的一部分或全部。此些指令可以从另一计算机可读介质(诸如磁硬盘1441或可移除介质驱动器1442)读入系统存储器1430中。磁硬盘1441可以包含由本发明的实施方式使用的一个或多个数据存储和数据文件。可以加密数据存储内容和数据文件以提高安全性。处理器1420还可以用于多处理布置中以执行包含在系统存储器1430中的一个或多个指令序列。在另选实施方式中,可以使用硬连线电路系统代替软件指令或与软件指令组合。因此,实施方式不限于硬件电路系统和软件的任何特定组合。
如上所述,计算机系统1410可以包括至少一个计算机可读介质或存储器,其用于保存根据本发明的实施方式编程的指令,并用于包含本文所述的数据结构、表格、记录或其他数据。如本文使用的术语“计算机可读介质”是指参与向处理器1420提供指令以供执行的任何介质。计算机可读介质可以采取许多形式,包括但不限于非暂时性、非易失性介质、易失性介质和传输介质。非易失性介质的非限制性示例包括光盘、固态驱动器、磁盘和磁光盘,诸如磁硬盘1441或可移除介质驱动器1442。易失性介质的非限制性示例包括动态存储器,诸如系统存储器1430。传输介质的非限制性示例包括同轴电缆、铜线和光纤,包括构成系统总线1421的导线。传输介质也可以采取声波或光波的形式,诸如在无线电波和红外数据通信期间生成的那些。
计算环境1400可以还包括使用到一个或多个远程计算机(诸如远程计算装置1480)的逻辑连接在联网环境中操作的计算机系统1410。远程计算装置1480可以是个人计算机(膝上型或台式计算机)、移动装置、服务器、路由器、网络PC、对等装置或其他公共网络节点,并且通常包括上面关于计算机系统1410描述的许多或所有元件。当在联网环境中使用时,计算机系统1410可以包括用于通过网络1471(诸如互联网)建立通信的调制解调器1472。调制解调器1472可以经由用户网络接口1470或经由另一适当的机构连接到系统总线1421。
网络1471可以是本领域公知的任何网络或系统,包括互联网、内联网、局域网(LAN)、广域网(WAN)、城域网(MAN)、直接连接或一系列连接、蜂窝电话网络或能够促进计算机系统1410与其他计算机(例如,远程计算装置1480)之间的通信的任何其他网络或介质。根据实施方式,过程设备1490可以经由网络1471与计算机系统1410通信。过程设备1490内的传感器可以测量过程设备1490的状态,并将测量的状态和值传送到计算机系统1410。网络1471可以是有线、无线或其组合。可以使用以太网、通用串行总线(USB)、RJ-6或本领域公知的任何其他有线连接来实现有线连接。可以使用Wi-Fi、WiMAX和蓝牙、红外、蜂窝网络、卫星或本领域公知的任何其他无线连接方法来实现无线连接。另外,若干网络可以单独工作或彼此通信以促进网络1471中的通信。
如本文所使用的,可执行应用包括用于调节处理器以实现预定功能的代码或机器可读指令,诸如操作系统、情境数据采集系统或其他信息处理系统的预定功能,例如,作为用户命令或输入的响应。可执行程序是用于执行一个或多个特定过程的代码段或机器可读指令、子例程或代码的其他不同部分或可执行应用的一部分。这些过程可包括接收输入数据和/或参数、对接收的输入数据执行操作和/或响应于接收的输入参数执行功能,以及提供所得的输出数据和/或参数。
如本文所使用的,图形用户界面(GUI)包括一个或多个显示图像,由显示处理器生成并使用户能够与处理器或其他装置以及相关联的数据获取和处理功能进行交互。GUI还包括可执行程序或可执行应用。可执行程序或可执行应用调节显示处理器以生成表示GUI显示图像的信号。这些信号被提供给显示装置,该显示装置显示图像供用户观看。处理器在可执行程序或可执行应用的控制下,响应于从输入装置接收的信号操纵GUI显示图像。以这种方式,用户可以使用输入装置与显示图像交互,使得用户能够与处理器或其他装置进行交互。
本文中的功能和过程步骤可以响应于用户命令自动地或完全地或部分地执行。响应于一个或多个可执行指令或装置操作而无需用户直接启动活动,执行自动执行的活动(包括步骤)。
附图的系统和过程不是排他性的。可以根据本发明的原理导出其他系统、过程和菜单以实现相同的目的。尽管已经参考特定实施方式描述了本发明,但是应该理解,本文示出和描述的实施方式和变化仅用于说明目的。在不脱离本发明的范围的情况下,本领域技术人员可以实现对当前设计的修改。如本文所述,可以使用硬件部件、软件部件和/或其组合来实现各种系统、子系统、代理、管理器和过程。本文中的任何权利要求要素都不应根据35 U.S.C 112第六段的规定来解释,除非使用短语“用于...的手段(means for)”明确叙述该要素。
Claims (10)
1.一种用于利用三维模拟系统对过程设备的物理部件进行编程的方法,其中,所述三维模拟系统具有三维工作空间,所述三维工作空间包括多个三维可编程模拟对象,多个所述三维可编程模拟对象中的每一个对应于所述过程设备的一个物理部件,所述方法包括:
识别所述过程设备的多个物理部件;
将所述过程设备耦合到所述三维模拟系统;
定义至少一个描述所述物理部件的属性的三维可编程模拟对象,其中,所述三维可编程模拟对象包括与所述物理部件的操作有关的编程代码,并且至少一个物理对象表示在所述过程设备中的流体物料的状态;
将多个三维可编程模拟对象放置到所述三维模拟系统的所述三维工作空间中;
基于在所述三维工作空间中的多个所述三维可编程模拟对象的相对位置来识别模拟的隐式参数;
利用识别的所述隐式参数来自动生成对应于至少一个所述三维可编程模拟对象的物理对象;
对所述三维模拟系统的多个三维可编程模拟对象进行模拟;以及
将至少一个所述三维可编程模拟对象的所述编程代码传送到所述过程设备的对应物理部件。
2.根据权利要求1所述的方法,其中,所述过程设备的多个物理部件包括控制部件。
3.根据权利要求1所述的方法,其中,将所述过程设备耦合到所述三维模拟系统包括:
将多个过程设备部件中的每个耦合到过程控制应用;
在所述过程控制应用和所述三维模拟系统的计算机处理器之间建立通信路径,其中,所述三维模拟系统的所述计算机处理器被配置为将包含在至少一个三维模拟对象中的编程代码经由通信链路和所述过程控制应用而传递到所述过程设备的对应物理部件。
4.根据权利要求1所述的方法,还包括:
定义对应于所述过程设备的每个物理部件的三维可编程模拟对象;以及
在模拟三维工作空间中,布置对应于所述过程设备的每个物理部件的所述三维可编程模拟对象,使得每个三维可编程模拟对象定位在与所述过程设备中的对应物理部件的物理位置成比例的所述模拟三维工作空间中。
5.根据权利要求4所述的方法,还包括:
在所述模拟三维工作空间中对所述三维可编程模拟对象运行模拟应用;以及
在所述模拟应用运行时,更改至少一个所述三维可编程模拟对象的性质或编程代码中的至少一个。
6.一种可编程过程设备系统,包括:
过程设备,包括多个过程物理部件;
控制应用,与所述多个过程物理部件中的至少一个通信;
三维模拟系统,包括包含多个三维可编程模拟对象的三维工作空间,所述多个三维可编程模拟对象中的每个对应于所述过程设备的过程物理部件,其中,所述三维模拟系统与所述控制应用通信,所述可编程过程设备系统用于执行根据权利要求1至5中任一项所述的方法。
7.根据权利要求6所述的可编程过程设备系统,其中,所述过程设备还包括:
至少一个流体容器;
耦合到所述至少一个流体容器的至少一个管道;以及
耦合到所述至少一个管道的至少一个控制装置,所述至少一个控制装置被配置为控制流体经由所述至少一个管道流入所述至少一个流体容器或从所述至少一个流体容器流出。
8.根据权利要求6所述的可编程过程设备系统,其中,所述三维模拟系统还包括:
对应于所述过程设备的控制装置的三维可编程模拟对象,对应于所述过程设备的所述控制装置的所述三维可编程模拟对象包括编程代码,所述编程代码能被操作以在三维模拟系统的模拟操作期间模拟对应的所述控制装置的操作,并且其中,所述编程代码被配置为被传送到所述过程设备的对应控制装置,并且所述编程代码能由所述控制装置的能远程操作的致动器执行以更改所述控制装置的状态。
9.根据权利要求8所述的可编程过程设备系统,所述三维模拟系统还包括:
对应于流体容器的第二三维可编程模拟对象,所述第二三维可编程模拟对象包括包含与流体物理有关的逻辑的编程代码。
10.根据权利要求9所述的可编程过程设备系统,其中,响应于所述第二三维可编程模拟对象的模拟的移动,模拟的流体与所述第二三维可编程模拟对象的所述模拟的移动一致地移动,所述模拟的流体包含在与所述第二三维可编程模拟对象相关联的模拟流体容器内。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2017/018559 WO2018151734A1 (en) | 2017-02-20 | 2017-02-20 | Programming in simulation for process industry |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110312974A CN110312974A (zh) | 2019-10-08 |
CN110312974B true CN110312974B (zh) | 2023-08-22 |
Family
ID=58231717
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780086864.1A Active CN110312974B (zh) | 2017-02-20 | 2017-02-20 | 用于过程工业的模拟中的编程 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20200050181A1 (zh) |
CN (1) | CN110312974B (zh) |
WO (1) | WO2018151734A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10528700B2 (en) | 2017-04-17 | 2020-01-07 | Rockwell Automation Technologies, Inc. | Industrial automation information contextualization method and system |
US10620612B2 (en) | 2017-06-08 | 2020-04-14 | Rockwell Automation Technologies, Inc. | Predictive maintenance and process supervision using a scalable industrial analytics platform |
US11176507B2 (en) * | 2018-05-04 | 2021-11-16 | Accenture Global Solutions Limited | Reconfigurable predictive and simulative digital platform for multi-stage processing facilities |
EP3579127A1 (en) * | 2018-06-07 | 2019-12-11 | Hexagon Technology Center GmbH | Method of generation of an enhanced plant model |
US11403541B2 (en) | 2019-02-14 | 2022-08-02 | Rockwell Automation Technologies, Inc. | AI extensions and intelligent model validation for an industrial digital twin |
US11086298B2 (en) | 2019-04-15 | 2021-08-10 | Rockwell Automation Technologies, Inc. | Smart gateway platform for industrial internet of things |
US11841699B2 (en) | 2019-09-30 | 2023-12-12 | Rockwell Automation Technologies, Inc. | Artificial intelligence channel for industrial automation |
US11435726B2 (en) | 2019-09-30 | 2022-09-06 | Rockwell Automation Technologies, Inc. | Contextualization of industrial data at the device level |
US11249462B2 (en) | 2020-01-06 | 2022-02-15 | Rockwell Automation Technologies, Inc. | Industrial data services platform |
US11726459B2 (en) * | 2020-06-18 | 2023-08-15 | Rockwell Automation Technologies, Inc. | Industrial automation control program generation from computer-aided design |
WO2022071933A1 (en) * | 2020-09-30 | 2022-04-07 | Siemens Aktiengesellschaft | Automation system engineering using virtual objects with embedded information |
CN112904805B (zh) * | 2021-01-15 | 2022-07-01 | 天津商业大学 | 一种用于多轴数控机床的数字孪生体建模与虚实同步方法 |
US20230168665A1 (en) * | 2021-11-26 | 2023-06-01 | Bentley Systems, Incorporated | Generating pfs diagrams from engineering data |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1542575A (zh) * | 2002-10-22 | 2004-11-03 | ����-��˹â��ϵͳ�ɷ�����˾ | 处理设备中图像显示元件、过程模块和控制模块的集成 |
CN1879110A (zh) * | 2003-11-10 | 2006-12-13 | 罗伯特.博世有限公司 | 模拟系统以及用于模拟和验证控制系统的计算机实施的方法 |
CN104903798A (zh) * | 2013-01-16 | 2015-09-09 | 西门子公司 | 用于所模拟的可编程逻辑控制器的自动化输入模拟 |
CN104956368A (zh) * | 2012-09-27 | 2015-09-30 | 西门子制品生命周期管理软件股份有限公司 | 用于虚拟模型的模拟的系统和方法 |
WO2016053337A1 (en) * | 2014-10-02 | 2016-04-07 | Siemens Aktiengesellschaft | Programming automation in a 3d graphical editor with tightly coupled logic and physical simulation |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007536634A (ja) * | 2004-05-04 | 2007-12-13 | フィッシャー−ローズマウント・システムズ・インコーポレーテッド | プロセス制御システムのためのサービス指向型アーキテクチャ |
US7787678B2 (en) * | 2005-10-07 | 2010-08-31 | Siemens Corporation | Devices, systems, and methods for processing images |
CN101620548B (zh) * | 2008-07-04 | 2013-03-27 | 菲尼克斯电气公司 | 用于计算机模拟设备或者机器的方法和计算机系统 |
US8850574B1 (en) * | 2011-02-28 | 2014-09-30 | Google Inc. | Safe self-modifying code |
US20120246148A1 (en) * | 2011-03-22 | 2012-09-27 | Intergraph Technologies Company | Contextual Display and Scrolling of Search Results in Graphical Environment |
US9785542B2 (en) * | 2013-04-16 | 2017-10-10 | Advantest Corporation | Implementing edit and update functionality within a development environment used to compile test plans for automated semiconductor device testing |
CN103676764B (zh) * | 2013-12-19 | 2016-04-20 | 北京工业大学 | 一种无土栽培海绵基质播种机的plc控制系统 |
US9828264B2 (en) * | 2014-07-23 | 2017-11-28 | Ecolab Usa Inc. | Hydrogen sulfide abatement in geothermal facilities |
US20160182309A1 (en) * | 2014-12-22 | 2016-06-23 | Rockwell Automation Technologies, Inc. | Cloud-based emulation and modeling for automation systems |
US9850433B2 (en) * | 2015-12-31 | 2017-12-26 | Chz Technologies, Llc | Multistage thermolysis method for safe and efficient conversion of E-waste materials |
-
2017
- 2017-02-20 WO PCT/US2017/018559 patent/WO2018151734A1/en unknown
- 2017-02-20 US US16/482,345 patent/US20200050181A1/en active Pending
- 2017-02-20 CN CN201780086864.1A patent/CN110312974B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1542575A (zh) * | 2002-10-22 | 2004-11-03 | ����-��˹â��ϵͳ�ɷ�����˾ | 处理设备中图像显示元件、过程模块和控制模块的集成 |
CN1879110A (zh) * | 2003-11-10 | 2006-12-13 | 罗伯特.博世有限公司 | 模拟系统以及用于模拟和验证控制系统的计算机实施的方法 |
CN104956368A (zh) * | 2012-09-27 | 2015-09-30 | 西门子制品生命周期管理软件股份有限公司 | 用于虚拟模型的模拟的系统和方法 |
CN104903798A (zh) * | 2013-01-16 | 2015-09-09 | 西门子公司 | 用于所模拟的可编程逻辑控制器的自动化输入模拟 |
WO2016053337A1 (en) * | 2014-10-02 | 2016-04-07 | Siemens Aktiengesellschaft | Programming automation in a 3d graphical editor with tightly coupled logic and physical simulation |
Also Published As
Publication number | Publication date |
---|---|
US20200050181A1 (en) | 2020-02-13 |
CN110312974A (zh) | 2019-10-08 |
WO2018151734A1 (en) | 2018-08-23 |
EP3571557A1 (en) | 2019-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110312974B (zh) | 用于过程工业的模拟中的编程 | |
CN107077339B (zh) | 利用紧密耦合逻辑和物理仿真的3d图形编辑器中的编程自动化 | |
JP5110733B2 (ja) | プロセスプラント用ユーザインタフェースシステム及びプログラム、並びにプロセスプラント用ユーザインタフェースシステムを構成する方法 | |
JP5623476B2 (ja) | 作動中のプロセス環境における動的プロセスシミュレーションの更新と利用 | |
JP6190491B2 (ja) | プロセス制御を管理する方法及びシステム | |
JP5762716B2 (ja) | グラフィックディスプレイの中の形状を選択する方法 | |
US10878140B2 (en) | Plant builder system with integrated simulation and control system configuration | |
US9372673B2 (en) | Systems and methods for creating user interfaces for guiding the creation of modeling applications for forming and solving problems in a multiphysics modeling system | |
US8543337B2 (en) | Block diagram explorer in a method and apparatus for integrated modeling, simulation and analysis of chemical and biological systems | |
EP3571557B1 (en) | Programming in simulation for process industry | |
Martin-Villalba et al. | Object-oriented modelling of virtual-laboratories for control education |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |