CN112068497A - 在过程控制系统中轻松切换节点 - Google Patents

在过程控制系统中轻松切换节点 Download PDF

Info

Publication number
CN112068497A
CN112068497A CN202010525419.4A CN202010525419A CN112068497A CN 112068497 A CN112068497 A CN 112068497A CN 202010525419 A CN202010525419 A CN 202010525419A CN 112068497 A CN112068497 A CN 112068497A
Authority
CN
China
Prior art keywords
simulation
node
physical
virtual
runtime
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.)
Granted
Application number
CN202010525419.4A
Other languages
English (en)
Other versions
CN112068497B (zh
Inventor
M·J·尼克松
A·小阿马罗
N·H·贝尔
J·M·卡尔德维尔
G·K·劳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fisher Rosemount Systems Inc
Original Assignee
Fisher Rosemount Systems Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fisher Rosemount Systems Inc filed Critical Fisher Rosemount Systems Inc
Publication of CN112068497A publication Critical patent/CN112068497A/zh
Application granted granted Critical
Publication of CN112068497B publication Critical patent/CN112068497B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/41885Total 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/4183Total 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 data acquisition, e.g. workpiece identification
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/41835Total 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 programme execution
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/41845Total 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/4185Total 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 the network communication
    • G05B19/4186Total 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 the network communication by protocol, e.g. MAP, TOP
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/41865Total 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 job scheduling, process planning, material flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/3017Runtime instruction translation, e.g. macros
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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/4185Total 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 the network communication
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13125Use of virtual, logical connections
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13185Software function module for simulation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/22Pc multi processor system
    • G05B2219/2214Multicontrollers, multimicrocomputers, multiprocessing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31231Lan and stations and fieldbus, each station controls own I-O
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32301Simulate production, process stages, determine optimum scheduling rules
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32343Derive control behaviour, decisions from simulation, behaviour modelling
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32355Simulate control process using virtual bus
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32359Modeling, simulating assembly operations
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32407Real time processing of data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33139Design of industrial communication system with expert system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33149Publisher subscriber, publisher, master broadcasts data to slaves, subscriber
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40311Real time simulation
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/80Management or planning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Programmable Controllers (AREA)

Abstract

多用途动态模拟和运行时控制平台包括与物理过程环境耦合的虚拟过程环境,虚拟和物理过程环境的部件/节点协作以动态执行工业过程工厂的运行时过程控制和/或其模拟。虚拟部件可以包括虚拟运行时节点和/或模拟节点。MPDSC包括I/O交换机,其例如通过使用发布/订阅机制在虚拟节点和/或物理节点之间传递I/O数据,从而虚拟化物理I/O过程数据传递。由I/O交换机服务的节点可以包括相应的部件行为模块,这些部件行为模块不知道它们是否在虚拟或物理节点上被利用。模拟可以实时甚至结合工厂的运行时操作进行,和/或模拟可以根据需要进行操作(速度、数值、管理等)。该平台同时支持模拟和运行时操作以及它们之间的交互/交集。

Description

在过程控制系统中轻松切换节点
相关申请的交叉引用
本申请要求于2019年6月10日提交的、名称为“Industrial Control SystemArchitecture for Real-Time Simulation and Control”的美国临时专利申请号62/859,508的优先权和申请日的权益,该美国临时申请的全部公开内容在此通过引用明确地并入本文。
技术领域
本专利申请总体上涉及工业和过程控制系统,更具体地,涉及使用虚拟化的部件来提供过程控制和/或运行时实际过程控制的模拟的工业控制系统。
背景技术
过程或工业控制系统(像在化学、石油或其他工业过程工厂中用于从材料生产物理产品的过程或工业控制系统)通常包括一个或多个过程控制器,该过程控制器经由模拟、数字或组合的模拟/数字总线、或者经由无线通信链路或网络通信地耦合到一个或多个现场设备。可以是例如阀、阀定位器、开关、以及变送器(例如,温度、压力、液位和流率传感器)的现场设备位于过程环境内,并且通常执行物理或过程控制功能(例如,打开或关闭阀、测量过程参数等),以控制在过程工厂或系统内执行的一个或多个过程。智能现场设备(诸如,符合熟知的
Figure BDA0002533594000000011
现场总线协议的现场设备)还可以执行控制计算、报警功能、以及通常在控制器内实现的其他控制功能。可以集中地定位但也可以以分布式方式位于工厂环境中的过程控制器接收指示由现场设备进行的过程测量的信号和/或与现场设备有关的其他信息,并且执行控制器应用,该控制器应用例如运行不同的控制模块,不同的控制模块进行过程控制决策、基于接收到的信息生成控制信号、以及与在现场设备(诸如,
Figure BDA0002533594000000012
Figure BDA0002533594000000013
现场总线现场设备)中执行的控制模块或块进行协调。控制器中的控制模块通过通信线路或链路向现场设备发送控制信号,从而控制过程工厂或系统的至少一部分的操作。
来自现场设备和控制器的信息通常可通过数据高速通道从控制器提供给一个或多个其他硬件设备,例如,操作员工作站、个人计算机或计算设备、数据历史库、报告生成器、集中式数据库、或其他集中式管理计算设备,其通常放置在控制室中或者其他远离较恶劣的工厂环境的位置。这些硬件设备中的每个通常跨过程工厂或者跨过程工厂的一部分集中。这些硬件设备执行应用,该应用可以例如使工程师能够配置过程的部分,或者使操作员能够执行关于控制过程和/或操作过程工厂的功能,诸如,更改过程控制例程的设置、修改控制器或现场设备内控制模块的操作、查看过程的当前状态、查看由现场设备和控制器生成的警报、出于培训人员或测试过程控制软件的目的模拟过程的操作、保持和更新配置数据库等。由硬件设备、控制器、以及现场设备使用的数据高速通道可以包括有线通信路径、无线通信路径、或有线和无线通信路径的组合。
作为示例,由艾默生过程管理公司出售的DeltaVTM控制系统包括存储在位于过程工厂内的不同位置的不同设备内并由这些不同设备执行的多个应用。驻留在一个或多个工作站或计算设备中的配置应用使用户能够创建或更改过程控制模块,并且经由数据高速通道将这些过程控制模块下载到专用分布式控制器。通常,这些控制模块由通信互连的功能块构成,功能块是面向对象编程协议的对象,这些对象基于对其的输入来执行控制方案内的功能并向控制方案内的其他功能块提供输出。配置应用还可以允许配置设计者创建或更改由查看应用用于向操作员显示数据的操作员界面来向操作员显示数据,并且使操作员能够更改过程控制例程内的设置,诸如设定点。每个专用控制器以及在某些情况下一个或多个现场设备存储并执行相应的控制器应用,该控制器应用运行分配和下载到其的控制模块以实现实际的过程控制功能。可以在一个或多个操作员工作站(或在与操作员工作站和数据高速通道通信连接的一个或多个远程计算设备上)执行的查看应用经由数据高速通道从控制器应用接收数据,并且使用用户界面向过程控制系统设计者、操作员、或用户显示该数据,并且可以提供诸如操作员视图、工程师视图、技术人员视图等之类的多个不同视图中的任何视图。数据历史库应用通常存储在数据历史库设备中并由其执行,数据历史库设备收集并存储跨数据高速通道提供的数据中的一些或全部数据,而配置数据库应用可以在附接到数据高速通道的另一计算机中运行,以存储与其相关联的当前过程控制例程配置和数据。替代地,配置数据库可以与配置应用位于相同的工作站中。
当前已知的过程控制工厂和过程控制系统的架构受到受限的控制器和设备存储器、通信带宽、以及控制器和设备处理器能力的强烈影响。例如,在当前已知的过程控制系统架构中,通常最小化或至少小心地管理控制器中动态和静态非易失性存储器的使用。结果,在系统配置(例如,先验)期间,用户或配置工程师通常必须选择控制器中哪些数据要被存档或保存、将被保存的频率、以及是否使用压缩,并且利用该受限的数据规则集来相应地配置控制器。因此,在故障排除和过程分析中可能有用的数据通常没有被存档,并且如果其被收集,则有用的信息可能会由于数据压缩而丢失。
另外,为了最小化当前已知的过程控制系统中的控制器存储器使用,将要存档或保存的所选数据(如控制器的配置所指示的)被报告给工作站或计算设备,以存储在适当的数据历史库或数据竖井处。用于报告数据的当前技术较差地利用通信资源,并导致过多的控制器负载。另外,由于在历史库或竖井的采样和通信中的时间延迟,因此数据收集和时间加戳通常与实际过程不同步。
类似地,在批次过程控制系统中,为了最小化控制器存储器的使用,批次配方和控制器配置的快照(snapshot)通常保持存储在集中式管理计算设备或位置处(例如,在数据竖井或历史库处),并且仅在需要时被传送到控制器。这种策略在控制器中以及在工作站或集中式管理计算设备与控制器之间的通信中引入了显著的突发负载。
此外,诸如过程控制系统之类的工业控制系统的当前架构很大程度上是由硬件驱动的,因为诸如控制功能、输入/输出(I/O)功能、用户界面功能等各种功能是在特定硬件(例如,用户工作站或接口设备、过程控制器、安全系统控制器、专用I/O设备、编组的I/O设备、现场设备、安全逻辑解算器等)中执行并绑定到特定硬件并且始终保持存储在特定硬件中。例如,在当前的过程控制系统中,控制器与I/O设备(例如,单个I/O设备或编组的I/O设备库)之间的互连是基于特定的硬件来配置的,并且因此,物理的I/O关系是紧密绑定的,最常见的是一对一方式,例如,I/O设备与控制器、另一个I/O设备与另一个控制器等。该架构设计限制了控制系统的恢复性、可靠性、可用性、响应性和灵活性,因为这些系统难以快速更改或重新配置,与用于实现专有控制软件的专有硬件紧密相关,需要在逐个设备基础上的硬件冗余(这可能实现起来很昂贵),并且在不添加需要以特定方式配置的附加硬件的情况下不容易扩展或升级,例如,由于单个设备(例如物理过程控制器)的尺寸限制、I/O设备的特定特性和能力等。
解决这些问题的一些尝试包括对物理控制器进行虚拟化;然而,控制器虚拟化已被限于离线开发和测试系统,并且没有被广泛地使用(如果有的话)于物理工厂和/或生产环境中的运行时过程控制。此外,虚拟化的控制器和物理控制器仍然受到物理I/O设备的限制,诸如性能、带宽、吞吐量等。
发明内容
用于动态模拟和/或运行时生产过程控制的新颖的多用途硬件/软件架构或平台,其使得工业过程工厂的工业或过程控制系统与已知的工业或过程控制系统相比具有更大的恢复性、响应性和灵活性。更具体地,这种新颖的架构或平台在很大程度上将控制系统中使用的硬件与支配硬件行为的软件分离,使系统更易于扩展、重新配置和更改,以及改善了总体系统的可靠性、可用性和性能。为了便于讨论,新颖的多用途动态模拟和运行时控制平台或架构在本文中通过“MPDSC”、“MPDSC平台”、“MPDSC系统或“MPDSC架构”来互换使用。
一般而言,MPDSC包括耦合到物理过程环境的虚拟过程环境,其中虚拟和物理环境的部件协作以执行工业过程工厂的动态模拟和/或运行时(例如,实际或操作的)生产过程控制。对于运行时过程控制,MPDSC平台支持过程控制系统(PCS),该过程控制系统可以包括虚拟部件、物理部件和/或虚拟和物理部件两者,它们可以协作以在工厂的运行时期间监视和控制批次和/或连续工业过程。在某些布置中,MPDSC平台还支持安全仪表系统(SIS),该安全仪表系统可以具有虚拟部件和物理部件两者,虚拟部件和物理部件协作以维护安全操作并在运行时期间提供工厂的故障安全操作。执行运行时、操作的过程控制和/或相关的运行时功能(例如,与设置在过程工厂的物理环境中的一个或多个物理设备或部件结合)的虚拟节点在本文中称为“虚拟运行时节点”。
MPDSC平台可以附加地或替代地支持模拟环境或空间,该模拟环境或空间可以用于控制和/或安全系统和/或部件的测试、检验、验证和/或检查、操作员培训、案例研究、持续的过程改进等。出于模拟目的,MPDSC平台提供了虚拟节点,该虚拟节点模拟可部署在物理过程环境中的一个或多个物理设备、模块或部件。模拟可部署在过程工厂的物理环境中的各种设备、模块和/或部件的虚拟节点在本文中称为“模拟节点”。
MPDSC平台所提供的模拟是“动态的”,因为过程工厂或其部分的模拟可以实时执行,从而镜像了在运行时期间(可能)发生的时序和其他行为,和/或模拟可以被操控为以比实时执行更快或更慢的速度执行,使用不同的值、初始条件、中间条件等。模拟空间提供各种特征,例如,各种模拟场景的保存/恢复能力、针对各种场景的可编辑的初始和/或中间条件、通过各种协议与第三方模拟器的协调、操作员显示视图的测试和检查、对PCS的一个或多个部分的实时模拟、PCS的一个或多个部分的模拟的加快和放慢、包括与实际(例如,非模拟的)虚拟和/或物理部件结合进行操作的模拟部件的模拟、更改管理、以及与工厂配置的同步等。MPDSC平台能够同时支持模拟和运行时操作两者、模拟与运行时操作之间的各种交互和交集(例如,测试升级、补丁、“假设”场景、配置更改、用户输入更改等)。此外,利用MPDSC平台,能够无缝且轻松地实现系统冗余、容错、切换、计划的维护等。
MPDSC架构的关键部件之一在本文中被称为“I/O交换机”或“I/O服务器”,其一般性地从I/O与特定硬件专门且直接相关联抽象出过程工厂的I/O,以及执行与I/O相关的其他功能,以用于模拟和/或运行时过程控制。I/O交换机或I/O服务器是在运行时期间在过程工厂的虚拟节点和/或物理节点之间传递I/O数据的节点。每个节点(无论是虚拟的还是物理的)通常都是在MPDSC系统中通过独特的名称、标签或标识符来标识的过程工厂的部件。例如,节点可以是物理或虚拟控制器、现场设备、安全信息控制器、安全逻辑解算器、I/O卡或设备(例如,无线I/O设备、以太网I/O设备、编组的I/O机柜或其部件等)、操作员工作站、另一种类型的用户接口设备、工具(例如,诊断工具、模拟工具等)、网关、数据存储设备、或其他类型的部件。一般而言,I/O交换机作为虚拟节点和/或物理节点之间的数据代理进行操作,其中I/O交换机在源节点(无论是虚拟的还是物理的)与目标节点(无论是虚拟的还是物理的)之间传递或交换I/O数据(在本文中也可互换地称为“过程I/O数据”或“PIO数据”)。在某种意义上,I/O交换机不是将物理I/O卡紧密地和/或专门耦合到不同的源节点和目标节点以传递过程I/O,而是对MPDSC系统的节点之间过程I/O数据的物理传递机制进行虚拟化,并松开了在用于传递I/O数据目的的硬件部件之间的绑定。此外,I/O交换机被配置为能够足够快地(例如,以足够小的延迟)传递I/O数据,以支持运行时、实际生产过程控制和/或生产过程控制的实时模拟。
一般而言,由I/O交换机或I/O服务器提供服务的虚拟和物理节点/部件包括相应的模块,这些模块支配虚拟和物理节点或部件的行为。此类模块在本文中称为“部件行为模块”或“CBM”,其示例包括控制器中的控制模块、安全逻辑解算器中的安全逻辑、以及其他类型的模块,该其他类型的模块支配在其中存储和执行、并至少部分地对I/O数据进行操作的模块的部件的行为和操作。在MPDSC系统中,对I/O数据的过程相关有效载荷进行操作的CBM不可知或不知道I/O交换机及其在向部件行为模块/从部件行为模块传递I/O数据中的作用。也就是说,CBM不知道它们去往/来自其主机节点的相应的I/O传递机制是物理I/O卡还是I/O交换机。
这样,可以将I/O交换机视为对于MPDSC系统的部件行为模块透明的I/O数据的交换结构、路由器和/或传递机制。为此,I/O交换机经由节点的相应发布/订阅层(在本文中也可互换地称为“Pub/Sub层”)和经由其I/O有效载荷或数据在节点之间传输的虚拟通信网络来在虚拟/物理节点之间传递I/O数据。例如,发送或发布节点可以包括相应的Pub/Sub层,其将由发送节点的部件行为模块生成的数据发布到虚拟通信网络。I/O交换机可以将发布的数据传递或交换到作为数据的接收者或订阅者的节点,并且每个订阅者节点可以经由其相应的Pub/Sub层恢复数据,以供其相应的部件行为模块消费。这样,I/O交换机根据MPDSC系统内节点的定义的关系,按需在发布者节点与订阅者节点之间代理(broker)数据。
如本文所使用的,MPDSC平台或系统的“物理环境”是指其中物理的、有形的部件(例如,现场设备、罐、阀、致动器、加热器、蒸发器、传感器等)用于通过运行时受控过程将物理材料转换为物理产品的生产工厂或环境。因此,“物理环境”在本文中可互换地称为工业过程工厂的“工厂环境”。如上所述,物理或工厂环境包括前端部分,其中设置了MPDSC系统的物理或硬件部件(例如现场设备、传感器、变送器、开关、定位器、罐、加热器等)并对物理材料进行操作以生产物理产品。这样,物理环境的“前端”部分在本文中可互换地称为过程工厂的物理环境的“现场”或“站点”部分。
MPDSC系统的物理或工厂环境还包括后端部分,其中诸如操作员工作站、个人计算机或计算设备、数据历史库、报告生成器、集中式数据库和/或其他集中式(或至少部分集中式)管理计算设备的物理或硬件部件执行应用,以例如配置过程工厂和/或其部件,查看和监视工厂的运行时操作,在工厂的运行时操作期间响应警报或报警,在工厂的运行时操作期间调整参数,生成报告,存储和分析数据等。MPDSC系统的物理环境的后端部分可位于免受恶劣现场环境影响的区域,例如现场、封闭的房间和/或非现场或远离现场环境的位置。
MPDSC系统的虚拟环境使用特别配置和互连的物理或硬件计算设备来实现,以提供支持各种物理过程工厂部件的虚拟化的平台,如将在本公开内容的后续部分中更详细地描述的。一般而言,提供和支持虚拟化平台的物理计算设备可以物理上位于工厂现场(例如,在现场环境的受保护的封闭区域中),可以物理上位于非现场,或者可以物理地且分布式地位于各种现场和非现场位置之间。提供并支持虚拟化平台的物理计算设备可以通过任何数量的物理数据链路和/或通信/数据网络互连。一般而言,物理计算设备、数据链路和通信/数据网络形成计算平台,MPDSC系统的各种逻辑或虚拟部件驻留在该计算平台上,其中各种逻辑或虚拟部件可与物理过程环境的部件结合用于运行时过程控制,和/或用于过程模拟目的。
驻留在MPDSC系统的虚拟环境中的逻辑或虚拟部件可以进行操作以提供对MPDSC系统的一个或多个实际或计划的物理部分的模拟(例如,实时、以更快的速度和/或如果需要,以更慢的速度)。在一些实现方式中,驻留在MPDSC系统的虚拟环境中的逻辑或虚拟部件和驻留在MPDSC系统的物理环境中的物理部件可以协同操作以提供模拟和/或运行时实际生产过程控制。这样,在一些实施例中,MPDSC平台的物理和虚拟环境经由一个或多个通信链路和/或网络通信地连接,其中,通信链路和/或网络可以包括任何数量的有线链路和/或网络、无线链路和/或网络、私有链路和/或网络、公共链路和/或网络。在本公开内容的后续部分中更详细地描述独立的虚拟实时模拟的实施例以及工业控制系统的逻辑/虚拟和物理部件之间的协作及其之间的通信连接的实施例。
此外,MPDSC平台的虚拟和物理环境使用或共享公共(例如,相同的)系统配置数据库,该系统配置数据库在本文中称为“MPDSC系统配置数据库”。这样,通过MPDSC系统配置数据库,可以跨虚拟和物理环境在MPDSC平台内独特地标识各种虚拟和物理部件,并且能够无缝且轻松地完成模拟和运行时操作(例如,测试、切换等)之间的交集。
在实施例中,一种系统(诸如多用途动态模拟和运行时工业或过程控制(MPDSC)系统)包括过程控制系统,该过程控制系统包括现场设备,其中,现场设备设置在工业过程工厂的物理环境中并执行物理功能。另外,过程控制系统包括通信地设置在现场设备与虚拟节点之间的I/O交换机,其中,该虚拟节点设置在工业过程工厂的虚拟环境中。I/O交换机是由现场设备生成并已被发布的第一数据的订阅者,并且I/O交换机是第二数据的发布者,该第二数据指示由现场设备生成的第一数据。过程控制系统还包括该虚拟节点,其中,该虚拟节点是与现场设备相对应并由I/O交换机发布的第二数据的订阅者。虚拟节点包括部件行为模块,该部件行为模块对与现场设备相对应的第二数据进行操作,从而生成控制信号以修改过程控制系统的另一个节点的行为。例如,现场设备、虚拟节点和另一个节点在工业过程工厂的运行时操作期间结合地操作以控制工业过程。
在实施例中,一种控制工业过程工厂的过程控制系统的节点的方法包括:经由设置在现场设备与虚拟节点之间的I/O交换机将现场设备和虚拟节点通信地连接,使得现场设备、I/O交换机和虚拟节点在工业过程工厂的运行时操作期间结合地操作以控制工业过程。现场设备设置在工业过程工厂的物理环境中并执行物理功能。I/O交换机是由现场设备生成并已被发布的第一数据的订阅者,并且I/O交换机是第二数据的发布者,该第二数据指示由现场设备生成的第一数据。虚拟节点设置在工业过程工厂的虚拟环境中,并且虚拟节点是与现场设备相对应并由I/O交换机发布的第二数据的订阅者。在工业过程工厂的运行时操作期间,该方法包括:由虚拟节点接收与现场设备相对应并由I/O交换机发布的第二数据;通过使用虚拟节点的部件行为模块对第二数据进行操作,从而基于第二数据生成控制信号;以及使控制信号的指示被发送到过程控制系统的另一个节点,从而修改该另一个节点的行为。
附图说明
图1是示例性多用途动态模拟和运行时工业或过程控制(MPDSC)系统的框图,该系统提供过程工厂的动态模拟和/或运行时工业或过程控制。
图2是例示了可以包括在图1的MPDSC系统中的示例性虚拟节点架构的实施例的框图。
图3是图1的MPDSC系统可以支持的物理工厂环境的示例性布置。
图4描绘了多个I/O交换机的示例性布置,其可以至少部分地在图1的MPDSC系统中实现。
图5是例示了示例性虚拟化管理系统的框图,通过该示例性虚拟化管理系统可以配置和管理图1的MPDSC系统的至少部分。
图6是在运行时操作期间切换工业过程工厂的过程控制系统的节点的示例性方法的流程图。
具体实施方式
图1是示例性多用途动态模拟和运行时工业或过程控制(MPDSC)系统或平台10的框图,该系统或平台10提供了工业或过程工厂的动态模拟和/或运行时过程控制。示例性MPDSC平台10使用虚拟化的设备来支持工业过程工厂的过程控制的动态模拟和/或实时过程控制。例如,MPDSC平台10可以在过程工厂的运行时期间将虚拟化的设备用于物理生产目的。如图1所示,MPDSC平台10包括虚拟工厂环境部分12和物理工厂环境部分15;然而,在仅将MPDSC平台10用于实时模拟目的的实施例中,可以省略物理工厂环境部分15。一般而言,虚拟工厂环境部分12和物理工厂环境部分15共同形成工业过程工厂的一个或多个操作技术(OT)层18,其可以将生成的数据提供给与工业过程工厂相关联的一个或多个信息技术(IT)层20和/或IT层外部的网络,例如,供一个或多个应用21a-21n、22a-22m进行企业和/或外部使用。例如,应用21a-21m可以由拥有/操作MPDSC平台10的企业提供并且可以在与企业相关联的IT层中执行,以及应用22a-22m可以是由相应的第三方提供的物联网(IoT)和/或工业物联网(IIoT)应用,其在通过互联网或其他公共网络访问的远程网络中执行。
企业的IT层20可以在任何数量的本地和/或远程设置的计算设备(诸如一个或多个本地和/或远程服务器库、一个或多个计算云等)中实现,并且可以包括由企业的OT层18生成的数据的任何数量的应用或消费者21a-21n。通常(但不是必须),如图1所示,OT层18经由一个或多个公共和/或私有通信网络24和一个或多个边缘网关系统28通信地耦合到IT层20,其中边缘网关系统28提供OT层18/MPDSC平台10与IT层20之间的数据传递的安全性和效率。此外,一个或多个边缘网关系统28可提供MPDSC平台10与外部网络和/或外部应用22之间的数据传递的安全性和效率。
在图1中,MPDSC平台10的虚拟工厂环境12包括一个或多个虚拟节点(VN)30a、30b、30c、...、30p,这些虚拟节点与I/O交换机(本文中可互换地称为“I/O服务器”)25。一般而言,每个虚拟节点30x是模拟或虚拟化可在物理工厂环境15中操作的相应物理部件的行为的虚拟机。换而言之,虚拟工厂环境12内的每个虚拟节点30x处理数据并以与其在物理工厂环境15中的物理对应物将处理数据并表现的那样相同的方式来表现。
具体而言,每个虚拟节点30x包括框架和一个或多个子系统32,该一个或多个子系统32允许VN 30x与虚拟工厂环境12中的其他虚拟节点30x和/或与物理工厂环境15中的一个或多个物理节点(PN)(诸如物理节点40a、40b、40c和边缘网关系统28(其中边缘网关28可以看作是特定类型的PN))通信,每个物理节点都包括相应的框架和相应的一个或多个子系统42x,该一个或多个子系统42x允许与虚拟节点30x通信。另外,MPDSC平台10可以包括任何数量的其他物理节点或部件(例如,PNa-PNk)。
虚拟节点可以虚拟化不同类型的物理节点。一般而言,如本文所使用的,“物理节点”是MPDSC平台10的物理设备或部件,其包括硬件并且向其他设备或部件(无论是虚拟的还是物理的)发送数据和/或该从其他设备或部件接收数据。可以由相应虚拟节点表示的物理节点的类型的示例包括但不限于:各种类型的过程控制控制器;各种类型的本地和/或远程I/O设备或卡(诸如无线I/O卡(WIOC)、以太网I/O卡(EIOC)等)、以及I/O电子编组系统的各种部件(诸如特征化模块(CHARM)、端接块、CHARM I/O卡(CIOC)等);各种类型的安全仪表系统(SIS)节点,诸如安全控制器、安全逻辑解算器、SIS中继器、安全网络桥接器、安全网络网关等;用户接口设备,包括本地和/或远程物理操作员工作站、移动设备和/或其他计算设备,其提供用于运行时操作和/或与MPDSC平台10相关的其他目的的用户接口;提供与MPDSC平台10相关的工具的本地和/或远程物理计算设备,诸如控制配置工具、数据整合和查看工具、数据分析和分析配置工具、显示视图配置工具、诊断工具、资产管理工具、应用站等;在MPDSC平台10内和/或由MPDSC平台10使用的各种类型的网关,诸如无线网关、安全网关、防火墙、边缘网关、现场网关、系统间网关等;以及可以在物理工厂环境15中使用的其他类型的物理节点。
在一些实施例中,单个VN 30x可以表示或虚拟化整个物理节点。在一些实施例中,单个VN 30x可以表示或虚拟化特定物理节点的一个或多个部分。例如,单个VN 30x可以表示或虚拟化在特定PN处执行或驻留在特定PN处的特定模块或模块组,其中这种模块可以包括软件模块或部件、固件模块部件、和/或硬件模块或部件。例如,第一VN可以表示或虚拟化在特定PN上执行的整个应用(例如,可在物理过程控制器上执行的控制模块的全部),第二VN可以表示或虚拟化在特定PN上执行的整个应用的子集(例如,由控制模块使用的特定控制模型、功能或例程),第三VN可以表示或虚拟化与特定PN相关联的协议专用I/O卡或设备的行为,和/或第四VN可以细粒度地将PN子部件表示或虚拟化为特定PN的硬件子部件(例如,端口或其他接口、总线、收发器、芯片、基板等)、或特定PN的固件或软件子部件(例如,模块、例程、功能或行为、特定PN的网络地址,例如MAC(媒体访问控制)地址或其他类型的地址等)。
可以在物理工厂环境15中使用并且可以由MPDSC 10的虚拟节点30x表示和/或虚拟化的物理I/O卡的类型的示例包括但不限于:
离散输出卡,包括高密度、本质安全和冗余的离散输出卡;
离散输入卡,包括高密度、本质安全和冗余的离散输入卡;
模拟输入卡,包括支持
Figure BDA0002533594000000071
(高速通道可寻址远程转换器)通信协议的模拟输入卡、支持HART的冗余模拟输入卡、支持HART的高密度冗余模拟输入卡、以及快速模拟输入卡;
模拟输出卡,包括支持HART的模拟输出卡、支持HART的冗余模拟输出卡、支持HART的高密度冗余模拟输出卡、以及快速模拟输出卡;
串行卡,包括冗余、可编程、和冗余可编程串行卡;
用于离散致动器和/或传感器的接口卡、RTD(电阻式温度检测器)卡、热电偶卡、毫伏卡、隔离式温度卡、多功能卡、支持现场总线通信协议的事件序列卡、冗余的支持现场总线的卡、支持Profibus通信协议的卡、冗余的支持Profibus的卡、以及其他类型的物理卡。
如图1所示,VN 30a、30b、30c、…、30p经由相应的发布/订阅层32a、32b、32c、…、32p和35彼此通信并且与I/O交换机25通信,发布/订阅层在本文中可互换地称为“Pub/Sub层”并且在图1中由每个VN 30x和I/O交换机25的相应标记线部分32x、35表示。在其中包括物理节点的MPDSC平台10的实施例中,例如如图1所示,设置在物理工厂环境15中的PN 28、40a、40b、40c中的至少一些可以包括相应的Pub/Sub层38、42a、42b、42c。在某种意义上,Pub/Sub层32x、35(以及在某些布置中,Pub/Sub层38、42x)充当虚拟通信网络45,各种虚拟节点30x和I/O交换机25(以及在某些布置中,物理节点40x)可以经由虚拟通信网络45传送抽象化的I/O数据。在示例性实现方式中,每个Pub/Sub层32x、35、38、42x是到虚拟通信网络45的相应接口。
虚拟通信网络45可以通过一个或多个物理通信和/或数据链路和/或网络来实现,该物理通信和/或数据链路和/或网络可以包括有线和/或无线网络,并且可以使用诸如以太网、光纤、IP、其他类型的其他分组网络等的任何合适技术来实现。数据通过发布和订阅在经由虚拟通信网络45的节点之间进行传送,并且可以在虚拟通信网络45中使用支持发布和订阅的任何或多个合适的通信协议来传递数据。例如,私有分组协议和/或公共或标准化分组协议(例如IPv6、IoT和/或IIoT协议)可以用于发布和订阅I/O数据,该I/O数据在虚拟通信网络45的各个节点30x、28、40x之间传递以及可选地传递到其他应用21x、22x(例如,通过边缘网关系统28)。
例如,虚拟通信网络45的每个节点(例如,虚拟节点30x、I/O交换机25、物理节点28、40x等)可以经由其相应的Pub/Sub层(例如,经由Pub/Sub层32x、35、38、42x等)向虚拟通信网络45发布I/O数据,以及虚拟通信网络45的每个节点(例如,虚拟节点30x、I/O交换机25、物理节点28、40x等)可以经由其相应的Pub/Sub层(例如,经由Pub/Sub层32x、35、38、42x等)订阅并获得被发布到虚拟通信网络45的I/O数据。通常,对各种发布的数据的订阅在I/O交换机25与其他节点30x、28、40x中的每个节点之间具有一一对应的关系。在优选实施例中,虚拟通信网络45的每个节点30x、28、40x仅接受来自I/O交换机25的订阅,而不接受来自其他节点的订阅,并且每个节点30x、28、40x仅订阅由I/O交换机25发布的I/O数据(其中由I/O交换机25发布的I/O数据可以是被转发的由其他节点生成并且I/O交换机25已订阅的数据),而不订阅由其他节点发布的I/O数据。这样,在该优选的一对一实施例中,与允许节点具有与多个其他节点的多个订阅的实施例相比,发布/订阅关系的无向图受到限制,从而降低网络复杂性、简化网络诊断和管理、并降低网络负载/利用率。为了进一步降低网络复杂性、简化网络诊断和管理、并降低网络负载/利用率,附加地或替代地,虚拟通信网络45的每个节点30x、28、40x可以经由发布将仅要由I/O交换机25转发到MPDSC平台10的其他节点的数据发送到I/O交换机25。当然,在某些实施例中,无向图的至少一部分可以以一对多、多对一、和/或多对多关系实现(如果需要)。
一般而言,在MPDSC平台10内,与过程相关的有效载荷数据(例如,如由CBM和/或过程工厂的物理部件生成的)被抽象并发布为I/O数据,并可以根据需要将其传递给虚拟通信网络45的订阅者节点。也就是说,当发布节点确定与过程有关的数据有效载荷需要新的发布事件时,可以传递(例如,经由发布)I/O数据。例如,当传感器生成的数据值更改时,发布节点可以将特定类型的传感器生成的数据作为I/O数据自动发布到虚拟通信网络。可选地,即使当传感器生成的数据值没有更改时,发布节点也可以周期性地(例如,每五秒、十秒、一分钟等)发布传感器生成的数据值作为I/O数据,例如,从而缓解可能出现的丢失消息和其他保真度问题。这样,在某些实施例中,订阅者节点不需要和/或不使用明确的订阅速率。因此,在每个订阅者节点处的处理逻辑(例如,部件行为模块)的执行由通过虚拟通信网络45订阅和接收的传入数据驱动,并因此每个节点和虚拟通信网络25所使用的资源可以被更有效地利用。
在示例性说明性场景中,VN 30a可以在运行时期间生成与过程相关的有效载荷数据(例如“Data1”)的特定集合并将其作为I/O数据发布到VN 30a的Pub/Sub层32a。I/O交换机或服务器25可以具有对包括Data1的I/O数据的订阅,并且可以经由虚拟通信网络45、其相应的Pub/Sub层35以及其相应的订阅来获得与过程有关的有效载荷Data1。转而,I/O交换机或服务器25可以经由其Pub/Sub层35将所获得的与过程相关的有效载荷Data1作为I/O数据发布到虚拟通信网络45,以便由具有对包括Data1的I/O数据的订阅的那些节点接收。例如,VN 30b可以具有对包括Data1的I/O数据的订阅,并且在经由I/O交换机25的Pub/Sub层35将Data1作为I/O数据发布后,VN 30b可以经由虚拟通信网络45、其相应的Pub/Sub层32b及其订阅获得与过程相关的有效载荷Data1。随后,VN 30b可以对所获得的与过程有关的有效载荷Data1值进行操作。
因此,MPDSC平台10对在各种物理部件中使用和固有的多个不同类型的I/O(例如,离散输出、离散输入、模拟输出、模拟输入、串行I/O、Railbus、HART、WirelessHART、现场总线、Profibus、以太网、高级物理层、和/或任何其他类型的I/O)进行抽象化,以便经由I/O交换机25和虚拟通信网络45通过发布和订阅在虚拟节点与物理节点之间进行传递。虚拟通信网络45的每个节点可以对经由其相应的Pub/Sub层以及可选地其他子系统发送和接收的I/O数据执行相应的抽象和去抽象(例如,恢复)。
虚拟节点
为了例示I/O抽象和去抽象,图2例示了虚拟节点30x的两个示例性架构实施例52a、52b。一般而言,虚拟节点30x模拟和/或虚拟化可以在物理工厂环境15内使用和操作的物理节点或物理部件。每个VN 52a、52b包括相应的Pub/Sub层55a、55b,VN55a、55b通过该Pub/Sub层55a、55b与I/O交换机25通信。此外,每个VN 52a、52b包括相应的部件行为模块58a、58b,其在本文中可互换地称为“部件业务逻辑模块”58a、58b或“CBM”58a、58b。一般而言,CBM 58x是其执行例如在应用级别上支配其相应虚拟节点30x的操作行为的模块。例如,虚拟控制器节点的CBM 58x可以是控制模块的特定实例,其中控制模块的其他实例可以下载到设置在物理工厂环境15中的物理控制器中,以便在物理工厂15的运行时期间执行。在另一个示例中,虚拟CIOC节点的CBM 58x可以是远程I/O模块的特定实例,其中远程I/O模块的其他实例可以在物理工厂环境15的运行时期间在其中设置的物理CIOC处执行。
由于CBM 58x可以在物理部件内执行,因此CBM通常固有地熟悉一种或多种对应的固有(native)I/O类型(例如模拟输入/输出、现场总线、Raibus等)。此外,CBM 58x通常不知道它们是否在虚拟工厂环境12的虚拟节点30x上执行,在设置在物理工厂环境15内的物理节点40x上执行,还是在设置在物理工厂环境15内的另一个物理部件(例如节点PNa-PNk)上执行。这样,CBM 58x以相同的方式并使用相同的处理逻辑和I/O类型发送和接收数据,而不管CBM 58x是在虚拟工厂环境12中还是在物理工厂环境15中执行。
在虚拟节点52a的实施例中,抽象了由CBM 58a发送和接收的与过程有关的有效载荷数据,以经由虚拟过程I/O(PIO)子系统60传递到VN 52a或从VN 52a传递。一般而言,虚拟PIO子系统60模拟虚拟节点52a的固有物理PIO传递。也就是说,在虚拟节点52a的运行时期间,虚拟PIO子系统60使用其固有I/O向/从CBM 58a传送I/O过程值和事件,例如,就像I/O过程值和事件源自/正被传递到物理硬件。这样,可以为特定类型的虚拟节点52a定制虚拟PIO子系统60,其中虚拟节点类型由其CBM 58a支配。例如,如果VN 52a表示使用Railbus I/O与其他设备通信的物理控制器,则虚拟PIO子系统60以Railbus I/O卡所使用的形式向/从控制例程CBM 58a提供I/O数据。如果VN 52a表示CIOC,则虚拟PIO子系统60以CHARM所使用的形式向/从远程I/O CBM58a提供I/O数据。
此外,虚拟PIO子系统60可以代表虚拟节点52a处理数据发布和订阅。也就是说,虚拟PIO子系统60可以将由CBM 58a生成的数据发布到Pub/Sub层55a,并且虚拟PIO子系统60可以通过Pub/Sub层55a订阅由其他节点生成(以及由I/O交换机25转发)的数据。在实施例中,数据的订阅和发布可以基于在MPDSC平台10内独特的标签或其他标识符。标签或其他标识符可以独特地标识例如MPDSC平台10的数据、节点、设备或部件。在实施例中,可以在配置和/或调试期间分配标签和/或标识符。
这样,在虚拟环境12内的每个虚拟节点52a处,虚拟PIO子系统60保持CBM 58a与对应的物理I/O之间的逻辑分离(例如,经由Pub/Sub层55a、虚拟通信网络45、以及其他Pub/Sub层32、35、38、42),类似于在具有机载CBM 58a及其对应的物理I/O的每个物理节点处保持在物理环境15内的逻辑分离(例如,经由物理I/O卡或编组的I/O布置)。一般而言,任何虚拟节点30的虚拟PIO子系统60保持虚拟节点30中包括的任何I/O订阅者(CBM 58a、另一模块、另一类型的I/O消费者等)与其对应的物理I/O之间的逻辑分离。
在图2所示的虚拟节点52b的实施例中,省略或不使用虚拟PIO子系统60。通常,使用VN架构52b的虚拟节点的类型是那些其CBM 58b固有地能够与经由其实现虚拟通信网络45的物理部件和技术进行通信的节点。例如,如果通过以太网上的IP协议来实现虚拟通信网络45,则模拟EIOC的虚拟节点52b包括CBM 58b,该CBM 58b被固有地配置为使用以太网上的IP协议进行通信。因此,EIOC虚拟节点52b可以排除虚拟PIO子系统60(或者可以关闭或忽略虚拟PIO子系统60的操作),并且EIOC虚拟节点52b可以通过仅使用CBM 58b和Pub/Sub层55b来处理去往/来自52b的虚拟节点的数据传递。
物理节点
图3是结合图1的MPDSC平台10可以运转的示例性物理工厂环境100的框图。例如,图1所示的MPDSC平台10的物理环境部分15可以包括物理工厂环境100的至少一部分。
物理工厂100控制工业过程(或者在一些实施例中,与虚拟工厂环境(例如虚拟工厂环境12)结合地操作以控制工业过程),其中工业过程可以说是具有一个或多个表征过程状态的“过程输出”(例如,罐液位、流率、材料温度等)以及一个或多个“过程输入”(例如,各种环境条件和执行器的状态,可能会导致过程输出更改的操控)。图3的物理过程工厂100包括现场环境102和后端环境105,它们中的每一个通过过程控制主干网或数据高速通道108彼此通信连接,该过程控制主干网或数据高速通道可以包括一个或多个有线和/或无线通信链路和/或网络,并且可以使用任何期望的或合适的通信协议(例如以太网协议、IP协议或其他分组协议)来实现。
在高层(并且如图3所示),现场环境102包括物理部件(例如,过程控制设备、网络、网络元件等),其被安装并互连以在运行时期间进行操作来控制工业过程。总的来说,这些物理部件位于、设置在或包括在物理过程工厂100的现场环境102中,其中,使用设置在其中的物理部件接收和处理原材料,从而生成一种或多种物理产品(例如,纸张、精炼油、药品等)。相比之下,物理过程工厂100的后端环境105包括各种物理部件,例如计算设备、操作员工作站、资料库或数据库等,这些部件被屏蔽和/或保护免受现场环境102的恶劣条件和材料的影响。在一些配置中,物理过程工厂100的后端环境105中包括的各种计算设备、数据库以及其他部件和装备可以物理地位于不同的物理位置,其中一些对于物理工厂100而言可以是本地的,其中一些可以是远程的。
如图3所示,现场环境102包括通信连接到数据高速通道108的一个或多个过程控制器110。每个过程控制器110可以连接到一个或多个中间节点112、115(例如,I/O卡、I/O设备、I/O系统等),这些中间节点促进控制器110与现场设备之间的通信。一般而言,在过程控制行业中,有时会在许多相关但不同的上下文中使用术语“I/O”。该术语通常是指将现场设备通信地耦合到I/O卡或控制器的逻辑链路或通信通道(例如,“I/O通道”),但当指许多其他概念(例如用于经由I/O通道向现场设备发送信号或从现场设备接收信号的物理设备(例如,“I/O设备”或“I/O卡”)以及与I/O设备相关联的连接器或终端(例如,“I/O连接器”))时也可以使用。I/O设备和I/O卡112、115可以是独立的单个物理设备,其中每一个连接到相应的控制器和一个或多个相应的现场设备,如图3所示。在一些布置(图3中未示出)中,I/O电子编组系统中包括I/O设备、卡、连接器、以及其他与I/O相关的部件(例如端接块、模块、处理器等),该I/O电子编组系统实现在各种类型的多个控制器和多个现场设备之间的灵活I/O传递,例如美国专利号7,684,875、8,332,567、8,762,618、8,977,851、9,083,548、9,411,769、9,495,313和9,946,240中描述的),这些专利的全部内容通过引用明确地并入本文。这样,为了使讨论清楚并且如本文所使用的,术语“I/O设备”通常是指物理I/O设备、卡、电子编组系统及其部件,通过其实现I/O通道5,从而通信地耦合现场设备和控制器。
另外,在过程控制行业中,术语“I/O”通常可以用于指代在I/O通道上发送的信号(例如,“I/O信号”)、由该信号表示的变量或命令(例如,“I/O参数”)、或信号所携带的变量或命令的值(例如,“I/O参数值”或“I/O数据有效载荷”)。因此,为了使讨论清楚并且如本文所使用的,I/O信号、I/O参数和I/O参数值在本文中被共同地和一般性地称为“I/O数据”或“过程I/O数据”。
在本文中在没有限定词的情况下引用术语“I/O”的程度,句子的上下文应明确正在讨论这些概念中的哪一个。此外,应当理解,“I/O通道”表示特定类型的“通信通道”或“通道”。也就是说,除非句子的上下文另有暗示,否则在不带限定符“I/O”的情况下在本说明书中对术语“通道”或术语“通信通道”的引用在某些实现方式中可以指代可能是I/O通道的通信链路,但在某些实现方式中也可以指代除了I/O通道以外的通信链路。
无论如何,返回图3,物理过程工厂100的每个过程控制器110实现由一个或多个控制例程(例如,一个或多个部件行为模块)定义的控制策略,该控制例程可以存储在控制器110的存储器中。当控制器的处理器执行一个或多个控制例程时,控制器通过有线或无线过程控制通信链路或网络向现场设备发送控制信号(即“控制输出”)到其他现场设备,以控制工厂100中的过程的操作。控制器可以基于以下各项生成控制信号:(i)一个或多个接收到的信号,其可以称为“控制输入”(例如,一个或多个接收到的表示现场设备获得的测量结果的信号),和(ii)一个或多个控制例程的逻辑,其可由一个或多个软件元件(例如,功能块)定义。通常,控制器基于反馈(即受控变量的测量结果)和过程输出的期望值(即设定点)操控过程输入(其可以称为“受操控变量”)以更改特定过程输出(其可以称为“受控变量”或简单地称为“过程变量”)。
通常,至少一个现场设备执行物理功能(例如,打开或关闭阀、增加或降低温度、进行测量、感测条件等),以控制在物理过程工厂100中实现的过程的操作。某些类型的现场设备通过使用I/O设备与控制器进行通信。过程控制器、现场设备和I/O设备可以是有线或无线的,并且过程工厂环境或平台100中可以包括任何数量的有线和无线过程控制器、现场设备和/或I/O设备、及其组合。
工厂100的前端环境102
例如,图3例示了过程控制器110,其经由输入/输出(I/O)设备112和115通信连接到有线现场设备125-132,并经由无线网关168和数据高速通道108通信连接到无线现场设备140-146。在一些配置(未示出)中,控制器110可以使用除主干网108以外的一个或多个通信网络通信地连接到无线网关168,例如通过使用任何数量的其他有线或无线通信链路,其支持一个或多个通信协议(例如Wi-Fi或其他符合IEEE 802.11的无线局域网协议、移动通信协议(例如WiMAX、LTE或其他ITU-R兼容协议)、
Figure BDA0002533594000000128
Figure BDA0002533594000000123
Profibus、
Figure BDA0002533594000000124
现场总线等)。
例如,控制器110可以是由艾默生过程管理公司出售的DeltaVTM控制器,该控制器110可以使用现场设备125-132和140-146中的至少一些现场设备来实现批次工业过程或连续工业过程。在实施例中,除了通信地连接到过程控制数据高速通道108之外,控制器110还使用与例如标准的4-20mA设备、I/O设备112、115和/或任何智能通信协议(例如
Figure BDA0002533594000000125
现场总线协议、
Figure BDA0002533594000000126
协议、
Figure BDA0002533594000000127
协议等)相关联的任何期望的硬件和软件通信地连接到现场设备125-132和140-146中的至少一些现场设备。在图3中,控制器110、现场设备125-132和I/O设备112、115是有线设备,并且现场设备140-146是无线现场设备。当然,有线现场设备125-132和无线现场设备140-146可以符合任何其他期望的标准或协议,例如任何有线或无线协议,包括将来开发的任何标准或协议。
图3的过程控制器110包括处理器120,该处理器120实现或监督一个或多个过程控制例程118(例如,存储在控制器110的存储器122中)。处理器120被配置为与现场设备125-132和140-146通信以及与通信地连接到控制器110的其他节点通信。应当注意,如果需要,本文所述的任何控制例程或模块可以使其部分由不同的控制器或其他设备实现或执行。同样地,将在过程控制工厂100内实现的本文所述的控制例程或模块118可以采用任何形式,包括软件、固件、硬件等。控制例程可以以任何期望的软件格式(例如使用面向对象编程、梯形逻辑、顺序功能图、功能框图、或使用任何其他软件编程语言或设计范例)来实现。控制例程118可以存储在任何期望类型的存储器122(例如随机存取存储器(RAM)或只读存储器(ROM))中。同样地,控制例程118可以被硬编码到例如一个或多个EPROM、EEPROM、专用集成电路(ASIC)或任何其他硬件或固件元件中。因此,控制器110可以被配置为以任何期望的方式实现控制策略或控制例程。
控制器110使用通常被称为的功能块来实现控制策略,其中每个功能块是整体控制例程的对象或其他部分(例如,子例程),并结合其他功能块(通过称为链路的通信)进行操作以在MPDSC平台10内实现过程控制回路。基于控制的功能块通常执行以下中的一个:(i)输入功能,例如与变送器、传感器或其他过程参数测量设备相关联的输入功能(有时称为“输入块”);(ii)控制功能,例如与执行PID、模糊逻辑等的控制例程相关联的控制功能(有时称为“控制块”);或(iii)输出功能,其控制某些设备(例如阀)的操作以在过程控制工厂100内执行某些物理功能(有时称为“输出块”)。当然,存在混合功能块和其他类型的功能块。
功能块可以存储在控制器110中并由控制器110执行,这通常是这些功能块用于标准4-20mA设备或某些类型的智能现场设备(例如
Figure BDA0002533594000000121
设备)或与之相关联的情况,或者功能块可以存储在现场设备本身中并由现场设备本身实现,这可以是
Figure BDA0002533594000000122
现场总线设备的情况。一个或多个控制例程118可以实现一个或多个控制回路,一个或多个控制回路通过执行一个或多个功能块来执行。在某种意义上,控制例程118可以被视为控制器110的部件行为模块。
有线现场设备125-132可以是任何类型的设备,例如传感器、阀、变送器、定位器等,而I/O设备112和115可以是符合任何期望的通信或控制器协议的任何类型的过程控制I/O设备。例如,I/O设备112、115可以包括在I/O电子编组系统中。在图3中,现场设备125-128是通过模拟线路或组合的模拟和数字线路与I/O设备112通信的标准4-20mA设备或
Figure BDA0002533594000000134
设备,而现场设备129-132是智能设备,诸如
Figure BDA0002533594000000132
现场总线现场设备,其使用
Figure BDA0002533594000000133
现场总线通信协议通过数字总线与I/O设备115通信。然而,在一些实施例中,有线现场设备125、126和128-131中的至少一些有线现场设备和/或I/O设备112、115中的至少一些I/O设备附加地或替代地使用过程控制数据高速通道108和/或通过使用其他合适的控制系统协议(例如Profibus、DeviceNet、FOUNDATION现场总线、ControlNet、Modbus、HART等)与控制器110通信。在一些布置(图3中未示出)中,现场设备125-132中的至少一些现场设备可以经由电子I/O编组系统而不是经由单独的I/O设备112、115与控制器110通信。
在图3中,无线现场设备140-146使用诸如
Figure BDA0002533594000000131
协议之类的无线协议经由无线过程控制通信网络165进行通信。此类无线现场设备140-146可以直接与无线网络165的一个或多个其他设备或节点通信,该一个或多个其他设备或节点也被配置为进行无线通信(例如,使用该无线协议或另一无线协议)。为了与未被配置为进行无线通信的一个或多个其他节点通信,无线现场设备140-146可以利用连接到过程控制数据高速通道108或另一过程控制通信网络的无线网关168。无线网关168提供对无线通信网络165的各种无线设备140-158的访问。特别地,无线网关168提供无线设备140-158、有线设备125-132、和/或物理过程工厂100的其他节点或设备之间的通信耦合。例如,无线网关168可以通过使用过程控制数据高速通道108和/或通过使用物理过程工厂100的一个或多个其他通信网络来提供通信耦合。
与有线现场设备125-132相似,无线网络165的无线现场设备140-146执行物理过程工厂100内的物理控制功能,例如打开或关闭阀、或进行过程参数的测量。然而,无线现场设备140-146被配置为使用网络165的无线协议进行通信。这样,无线现场设备140-146、无线网关168和无线网络165的其他无线节点152-158是无线通信分组的生产者和消费者。
在物理过程工厂100的一些配置中,无线网络165包括非无线设备。例如,在图3中,图3的现场设备148是传统的4-20mA设备,并且现场设备150是有线
Figure BDA0002533594000000135
设备。为了在网络165内通信,现场设备148和150经由无线适配器152a、152b连接到无线通信网络165。无线适配器152a、152b支持无线协议(例如WirelessHART),并且还可以支持一个或多个其他通信协议(例如
Figure BDA0002533594000000136
现场总线、PROFIBUS、DeviceNet等)。此外,在一些配置中,无线网络165包括一个或多个网络接入点155a、155b,其可以是与无线网关168进行有线通信的单独的物理设备,或者可以与无线网关168作为整体设备来提供。无线网络165还可包括一个或多个路由器58,用以将分组从无线通信网络165内的一个无线设备转发到另一无线设备。在图3中,无线设备140-146和152-158通过无线通信网络165的无线链路160、和/或经由过程控制数据高速通道108彼此通信并且与无线网关168通信。
工厂100的后端环境105
如所指出的,后端环境105可以包括各种部件(例如计算设备、操作员工作站、资料库或数据库等),这些部件通常被屏蔽和/或保护免受现场环境102的恶劣条件和材料的影响。例如,后端环境105可以包括以下中的任何一项或多项,其中每一项可以通信地连接到数据高速通道108:(i)一个或多个操作员工作站170a和其他本地或远程用户接口设备170b;(ii)一个或多个配置应用172a和配置数据库172b;(iii)一个或多个其他类型的应用175a和/或数据库175b,其可以包括例如工具、诊断(diagnostics)、资产管理系统、模拟器和/或其他类型的应用;(iv)一个或多个其他无线接入点178,其使用各种无线协议与和工厂100相关联的其他设备(例如,用户接口设备170b或其他设备)进行通信;(v)通往其他工厂的一个或多个工厂网关系统180;(vi)通往在物理过程控制平台100(例如,企业的IT网络/系统和/或外部数据网络/系统,其可以在云计算和/或其他合适的平台上实现)的即时的(immediate)OT层外部的系统185的一个或多个边缘网关系统182;和/或(vii)通过硬件和软件特别配置以支持过程工厂100的其他物理部件。
操作员工作站和用户接口设备170a、170b
操作员工作站170a和其他用户接口设备172b可被操作员用于查看和监视物理过程工厂100的运行时操作,以及采取可能需要的任何诊断、纠正、维护和/或其他动作。至少一些操作员工作站172a可以位于工厂100中或附近的各种受保护区域处,并且在某些情况下,至少一些操作员工作站172b可以位于远程,但是仍然与工厂10通信连接。操作员工作站172a、172b可以是有线或无线计算设备。
配置应用172a和配置数据库172b
配置应用172a和配置数据库172b可用于配置工厂100的某些方面,例如控制模块/例程、用户界面、数据监视/分析等。例如,配置应用的各种实例172a可以在一个或多个计算设备(未示出)上执行,以使用户能够创建或更改过程控制模块并经由数据高速通道108将这些模块下载到控制器110,创建或更改经由其操作员能够查看数据和更改过程控制例程内的数据设置的操作员界面,创建或更改可以被下载到现场环境102中的各种物理部件中的数据监视/分析例程和功能等等。配置数据库172b存储已创建的(例如,已配置的)模块、操作员界面、数据监视/分析等。通常,配置应用172a和配置数据数据库172b是集中式的并且具有对于物理过程控制平台100统一的逻辑外观,但是配置应用172a的多个实例可以在物理过程控制平台100内同时执行,并且配置数据库172b可以跨多个物理数据存储设备实现。因此,配置应用172a、配置数据库172b及对其的用户界面(未示出)包括用于各种类型的模块(例如,控制模块、显示或操作员界面模块和/或分析模块)的配置或开发系统172。通常(但不是必须),配置系统172的用户界面与操作员工作站/用户接口设备170不同,因为配置系统172的用户界面由配置和开发工程师使用,而不管工厂100是否在生产模式下运转,而操作员工作站/用户接口设备170由操作员在物理过程工厂100的运行时操作期间使用。
关于MPDSC平台100的物理部件的调试,配置数据库172b可以存储数据和其他信息,这些数据和其他信息专门标识和/或寻址计划或期望在过程工厂底层(floor)或现场环境102上实现的各种物理设备或部件及它们的互连。可以将该调试数据中的一些调试数据提供给现场环境102中的部件,以用于其中的设备和回路的调试,并且该数据中的一些可以在后端环境105中使用,例如,用于设计、开发和准备控制模块、操作员界面模块和/或数据分析模块,这些模块将在物理过程工厂100的实时操作期间结合现场环境102来操作。在示例中,批准的控制模块从配置数据库172b下载到过程控制器110中,使得在实时操作期间执行时,过程控制器110根据其驻留的控制模块进行操作,以向/从其回路中的其他部件(以及在某些情况下,向/从其他过程控制器)发送和接收各种信号,从而控制物理过程工厂100中的过程的至少一部分。
配置数据库172b可以存储现场环境102中的部件的多个逻辑标识符,从而使得控制器110和其他设备能够通过逻辑标识符来引用部件和与部件相关联的信号。例如,对于给定的现场设备,配置数据库172b可以存储或将逻辑标识符映射或绑定到特定的硬件地址或I/O通道的信息。硬件地址可以标识特定的控制器、连接到特定控制器的特定I/O设备、和/或将特定I/O设备连接到现场设备的I/O通道的特定地址。在某些情况下,该映射或绑定可以存储在控制器110、用户接口设备170b、操作员工作站170a或任何其他期望的设备(例如,需要解析逻辑标识符的任何设备)处。在逻辑标识符已被绑定到硬件地址或I/O通道后,该标识符被视为“已分配”。在某些情况下,工厂100包括“未分配”的逻辑标识符,其是软件元件(例如,控制例程和/或功能块)所引用但不具有绑定的标识符。也就是说,当工厂100和配置数据库172b不具有已经绑定到标签的硬件地址或I/O通道时,逻辑标识符被视为“未分配”。因此,当控制例程引用未分配的逻辑标识符时,将不读取工厂100中的信号携带的值,也不通过信号将命令发送到工厂100中的现场设备。
此类逻辑标识符的示例包括设备标签(DT)和设备信号标签(DST),每个设备标签(DT)分别表示特定的仪器、控制器、阀或其他物理现场设备,每个设备信号标签(DST)表示由特定设备接收或生成并且通常对应于现场设备所使用的特定参数的特定信号。对于某些设备,设备信号标签包括设备的设备标签和由该设备接收或生成的特定信号的标识符(例如控制模块引用的特定参数的标识符)的组合。对于某些设备(通常是传统设备或笨(dumb)设备),设备标签表示物理设备和该设备生成的信号两者。一般而言,物理过程工厂100在现场环境102和后端环境105中都使用设备的逻辑标识符来独特地标识该设备。DT和DST可以称为“系统标签”或“系统标识符”。
在某些情况下,智能现场设备129-132还可以存储对于智能现场设备129-132独特的逻辑标识符。这些逻辑标识符可以与工厂100用来标识现场设备129-132的系统标签不同,并且可以称为“源标识符”或“源标签”。源标签可以或可以不存储在配置数据库172b中,这取决于实现方式。
配置数据库172b可以存储数据和其他信息,这些数据和其他信息专门标识和/或寻址计划或期望在虚拟工厂环境12中实现的各种虚拟设备或部件(例如,各种虚拟节点30)。与物理设备和部件类似,配置数据库172可以存储虚拟环境12的部件的相应逻辑标识符,从而使其他设备和/或部件(无论是物理的还是虚拟的)能够引用虚拟部件。例如,类似于物理节点40x,各种虚拟节点30x可以经由它们相应的设备标签(DT)、设备信号标签(DST)、源标签、和/或其他类型的独特标识符在MPDSC平台10内(例如,跨虚拟环境12和物理环境15两者)被独特地标识。本公开内容的其他部分更详细地讨论虚拟设备和部件的配置和标识。
其他应用175a和数据库175b
其他应用175a和数据库175b可以包括特定于过程工厂100的应用的实例,例如诊断应用/数据库、数据历史库应用/数据库、系统级健康监视应用/数据库、本地和/或远程用户接口等。一般而言,其他应用175a和数据库175b可以包括在过程工厂100的OT层处执行的一个或多个应用及其关联的数据库。附加地或替代地,其他应用175a和数据库175b可以包括在与过程工厂100相关联的IT层20处执行的一个或多个应用,例如库存管理应用、人员管理应用、供应链管理应用、其他类型的企业相关的应用、天气/环境应用等,以及其关联的数据库。例如,其他应用175a和数据库175b可以包括应用21a-21n及其相关联的数据库。进一步附加地或替代地,其他应用175a和数据库175b可以包括在过程工厂100和/或其企业外部和/或远离过程工厂100和/或其企业执行的一个或多个应用,例如模拟应用、分析应用、IoT应用、IIoT应用等,以及其关联的数据库。例如,其他应用175a和数据库175b可以包括应用22a-22m及其关联的数据库。其他应用175a和数据库175b可以包括第三方应用和/或可以包括由与过程工厂100相关联的企业提供的应用。可以通过边缘网关系统28和/或某些其他类型的安全和/或防火墙系统访问其他应用175a和数据库175b中的至少一些。
无线接入点178
一个或多个其他无线接入点178使后端环境105中(以及有时候现场环境102中)的设备能够使用无线协议(例如Wi-Fi或其他符合IEEE 802.11的无线局域网协议、移动通信协议(例如WiMAX(全球微波访问互操作性)、LTE(长期演进)或其他ITU-R(国际电信联盟无线电通信部门)兼容协议、短波无线电通信(例如近场通信(NFC)和蓝牙)、或其他无线通信协议)来与其他设备通信。通常,此类无线接入点178允许手持式或其他便携式计算设备(例如,用户接口设备170b)通过相应的无线过程控制通信网络进行通信,该无线过程控制通信网络不同于无线网络165并且支持与无线网络165不同的无线协议。例如,无线或便携式用户接口设备170b可以是由物理过程工厂100内的操作员使用的移动工作站或诊断测试装备(例如,操作员工作站170a之一的实例)。在某些情况下,除了便携式计算设备之外,一个或多个过程控制设备(例如,控制器110、现场设备125-132、或无线设备168、140-158)还使用接入点174所支持的无线协议进行通信。
网关系统180、182
网关节点或系统180和182可以与即时的物理过程控制工厂100外部的系统对接。通常,此类系统是物理过程工厂100生成或操作的信息的客户或供应者。例如,过程控制工厂100可以包括工厂网关节点180,以将即时的物理过程工厂100与另一过程工厂通信地连接。附加地或替代地,过程控制工厂100可以包括边缘网关节点或系统182,以将即时的物理过程工厂100与外部公共或私有系统(例如实验室系统(例如,实验室信息管理系统或LIMS)、操作员巡回数据库、数据整合和查看系统、数据分析系统、材料处理系统、资产管理系统、维护管理系统、产品库存控制系统、生产调度系统、天气数据系统、运输和处理系统、包装系统、互联网、IOT应用、IIOT应用、或其他外部系统)通信地连接。
一般而言,边缘网关系统182允许在过程工厂100与其他网络185之间安全地传递通信。在示例性架构中,边缘网关系统182包括面向内部或面向工厂的引擎(其可以被称为“现场网关”)和面向外部或面向外面的引擎(其可以被称为“边缘网关”),其中面向工厂的引擎和面向外部的引擎协作以安全地将过程工厂数据(例如,由OT层生成的数据)传递到作为工厂数据的消费者的外部网络和/或应用(例如,IT层和/或外部网络和/或系统)。在许多实施例中的一个实施例中,面向工厂的引擎收集由过程工厂100的各个部件生成的数据,并且例如经由第一发布集合将所收集的数据跨一个或多个安全通信链路安全地传送到面向外部的引擎。面向外部的引擎已订阅了面向工厂的引擎生成的各种发布,并从中获得所收集的工厂数据。转而,面向外部的引擎例如经由第二发布集合将所获得的工厂数据安全地传送到网络185内的一个或多个外部客户端应用(例如,应用21a-21n、22a-22m)。可以根据需要分别配置面向工厂的引擎和/或面向外部的引擎处的发布和订阅。通常,尽管如此,在面向工厂的引擎与面向外部的引擎之间使用的发布/订阅、加密和/或其他安全数据传递机制不同于在面向外部的引擎与外部应用之间使用的发布/订阅、加密和/或其他安全数据传递机制。在一些实施例中,为了附加的安全性,边缘网关系统182包括单向数据二极管,该单向数据二极管设置在面向工厂的引擎与面向外部的引擎之间,以防止数据从外部网络185流到过程工厂100中。边缘网关系统的示例可以在美国专利公开号20180115516、20180115528、20180115517以及20180113442中找到,其全部公开内容通过引用并入本文中。当然,过程工厂100可以附加地或替代地使用其他边缘网关系统。
注意,尽管图3仅例示了包括在示例性物理过程工厂100中的单个控制器110、以及有限数量的现场设备125-132和140-146、无线网关168、无线适配器152、接入点155、路由器158和无线过程控制通信网络165,这仅是说明性而非限制性的实施例。可以在过程控制工厂或平台100中包括任何数量的控制器110,并且控制器110中的任何控制器可以与任何数量的有线或无线设备和网络125-132、140-146、168、152、155、158和165通信,以控制工厂100中的过程。
现在关于物理节点共同参考图1至图3,图1中所示的每个物理节点40a-40c和PNa-PNk可以是关于图3的过程控制工厂100所讨论的物理部件或设备中的相应一个。例如,PN40b可以是具有相应的Pub/Sub层42b并且经由I/O卡PNg通信地连接到现场设备PNh的过程控制器。在另一个示例中,PN 40c可以是六个不同的现场设备PNa-PNf通信连接到的CIOC(具有相应的Pub/Sub层42c),或者PN 40c可以是无线接入点178或不具有Pub/Sub层的各种其他物理部件PNa-PNf通信连接到的EIOC(具有相应的Pub/Sub层40c)。在又一示例中,PN40a可以是I/O编组设备或I/O中枢(hub)设备,其经由其Pub/Sub层42a来代表不具有Pub/Sub层的多个其他PN(例如PNi-PNk)传递I/O数据。I/O编组或中枢设备40a可以是独立设备,或者可以包括在设置在物理工厂环境15内的另一个物理部件中,例如在控制器110、I/O设备112、115(例如,CIOC、ECOC、WIOC等)、接入点178、网关180、182中等。此外,在某些实现方式中,边缘网关系统28及其Pub/Sub层38可以是物理节点,其例如以诸如关于图3所讨论的方式通信地连接(未在图1中示出)到物理工厂环境15的各种物理部件(例如,PN 40a-40c和PNa-PNk)。
I/O交换机
如上所述,图1所示的I/O交换机25用作针对虚拟通信网络45的节点之间的过程I/O数据的数据代理、交换结构或路由器。也就是说,交换机25代表发布节点将由发布节点生成的I/O数据转发给已订阅该数据的节点。一般而言,I/O交换机25可以维护(和更新)哪个节点发布了哪些I/O数据、以及哪些节点已经订阅了哪些发布的I/O数据的记录。在实施例中,可以通过跨MPDSC平台10独特的独特标识符、名称或标签、或者通过对其的相应指示,在记录内识别I/O数据。例如,独特标识符可以标识包括在I/O数据中的与过程有关的有效载荷数据和/或其发布节点。在实施例中,在配置和/或调试期间分配独特标识符、名称或标签。I/O交换机25利用所存储的记录来将传入的发布的数据路由到所发布的数据的订阅者。例如,I/O交换机25可以订阅由各种节点28、30x,40x发布的I/O数据,并且在经由其订阅接收到发布的I/O数据之后,I/O交换机25本身可以根据所存储的记录将接收到的I/O数据发布到选定的订阅者节点28、30x,40x。通常(但不是必须的),I/O交换机25不维护、记录或存储由虚拟通信网络45的其他节点发布的任何I/O数据和/或与过程相关的有效载荷数据。
重要的是,I/O交换机25被配置为以最小的延迟切换或转发接收到的过程I/O数据。实际上,在原型(prototype)中,I/O交换机25能够以数百微秒(例如,在500微秒以下,在200微秒以下,以及在100微秒以下,这取决于负载)度量的时间间隔通过I/O交换机25转发接收到的过程I/O数据。
一般而言,I/O交换机25可以经由硬件、固件和/或软件来实现。在示例中,使用一个或多个物理硬件设备来实现I/O交换机25,在该物理硬件设备上安装了专用软件以提供本文描述的I/O交换机25的至少一些功能;也就是说,可以将I/O交换机25实现为器具(appliance)。在另一个示例中,I/O交换机25被实现为可以被安装在计算设备的组或服务器上或由计算设备的组或服务器执行的软件(例如,程序、例程、应用等)以提供本文描述的I/O交换机25的至少一些功能。在又一示例中,I/O交换机25经由虚拟化(例如,作为虚拟机、容器(诸如Docker、LXD等)或另一类型的虚拟化实现方式)来实现。
I/O交换机25的Pub/Sub层35通常在配置和功能上类似于本公开内容中其他地方描述的Pub/Sub层32x、38、42x、55x。然而,I/O交换机25的Pub/Sub层35还被配置为接受和维护针对各种所标识的过程I/O数据的订阅请求。如上所述,订阅在I/O交换机25处记录并由I/O交换机25维护,例如在一个或多个有形的非暂时性存储器中。此外,I/O交换机25的Pub/Sub层35被配置为将发布的过程I/O数据转发到可以包括其他I/O交换机的订阅节点。
为了说明,图4描绘了可以被包括在图1的MPDSC平台10中的多个I/O交换机202、205、208、210的示例性布置200。在示例中,每个I/O交换机202、205、208、210具有与I/O交换机25类似的相应架构,包括相应的Pub/Sub层(如相应的标记线部分所指示的)。还类似于I/O交换机25,每个I/O交换机202、205、208、210经由虚拟通信网络225与相应的VN和/或PN212a-212n、215a-215m、218a-218p和220a-220q的集合相关联并且互连,其中相应的I/O交换机202、205、208、210通过发布和订阅(例如,以上述方式)在该相应的VN和/或PN的集合之间转发过程I/O数据。尽管布置200包括四个I/O交换机202、205、208、210,但是本文关于布置200所讨论的概念可以容易地应用于以网状拓扑结构互连的更多或更少数量的I/O交换机。
在图4中,每个I/O交换机202、205、208、210还能够经由虚拟通信网络225转发过程I/O数据到其他I/O交换机202、205、208、210中的每个I/O交换机。通过互连多个I/O交换机202、205、208、210,能够扩展服务的虚拟节点和/或物理节点的数量,以支持更大的系统10并提供附加的传递带宽。在布置200中,每个I/O交换机202、205、208、210可以代表其相应的VN/PN集合向其他I/O交换机202、205、208、210发布数据。类似地,每个I/O交换机202、205、208、210可以订阅由其他I/O交换机202、205、208、210代表其相应的VN/PN 212a-212n、215a-215m、218a-218p、220a-220q集合的转发的数据。
布置200将I/O交换机202、205、208、210中的每个I/O交换机例示为直接链接到其他I/O交换机202、205、208、210中的每个其他I/O交换机。也就是说,虚拟通信网络225具有完全互连的或网状的拓扑结构。因此,在该布置200的一实现方式中,从发布者节点到订阅者节点的最大传输延迟被约束,因为特定的过程I/O数据有效载荷可以经历的最大跳数为三。在布置200的其他实现方式中,最大跳数可以不同。例如,当使用诸如时间定序(time-sequencing)联网之类的时间定序能力或其他合适的时间定序能力时,可以增加最大跳数,例如用于监视流量。如果需要,可以配置和修改布置200内的最大跳数。
当然,除了或替代用于虚拟通信网络225的网状拓扑结构,其他互连拓扑结构(例如,中枢辐射、星型、环型、树型、混合型等)也是可能的。一般而言,对由特定发布节点(例如节点215a)发布的过程I/O数据的订阅是由其对应的I/O交换机(例如I/O交换机205)进行和管理的。然而,如果I/O交换机205没有请求订阅的特定数据的记录,则I/O交换机205可以将订阅请求转发到其他I/O交换机202、208、210。与发布所请求的数据的节点相对应的特定I/O交换机(例如,与发布节点220q相对应的I/O交换机210)将具有与所请求的数据及其发布节点220q相对应的记录,并将响应与进行请求的节点215a相对应的I/O交换机205,I/O交换机105可以在进行请求的节点215a上创建和存储针对所请求的数据的对应记录。以这种方式,针对所请求的数据的、经由I/O交换机210、205从发布节点220q到订阅节点215a的穿越路线可以被建立。
在实施例中,可以跨多个MPDSC系统10实现布置200。例如,I/O交换机202可以包括在第一MPDSC系统中,并且I/O交换机205可以包括在不同的MPDSC系统中。这样,不同的MPDSC系统可以经由虚拟通信网络225的一个或多个链路发布和/或订阅彼此的过程I/O数据。
实时虚拟控制和关联操作
如上所述,虚拟节点30x可以虚拟化可在物理工厂环境15中操作的各种物理部件的行为。此外,由于MPDSC平台10的特征,虚拟工厂环境12的虚拟化的部件30x可以结合物理工厂环境15的物理部件进行操作,以在运行时期间对工业过程工厂执行实时控制,从而从原材料生成物理产品。同时参考图1、图2和图3以进行说明,过程控制器110可以被虚拟化为具有架构52a的虚拟节点30a。这样,代替物理过程控制器110在运行时期间执行其对应的控制模块或例程118,虚拟节点110/30a包括控制模块或例程118作为其CBM 58a,并在运行时期间执行对应的控制模块或例程118,其可以包括经由I/O交换机25向设置在物理环境15内的各种现场设备发送信号和从设置在物理环境15内的各种现场设备接收信号。
例如,在工业过程工厂100的运行时期间,虚拟控制器110/30a可以通过物理I/O设备115接收由现场设备129生成的数据。在该示例中,物理I/O设备115在图1中由物理节点PNg表示,现场设备129在图1中由物理节点PNh表示,并且物理节点40b是I/O中枢设备。由现场设备PNh生成的数据有效载荷经由I/O设备PNg被传递到作为虚拟通信网络45的节点的I/O中枢设备40b。I/O中枢设备40b可以向I/O交换机25发布数据有效载荷,该数据有效载荷由现场设备PNh生成并由I/O中枢设备40b发布,I/O交换机25具有对该数据有效载荷的订阅。转而,I/O交换机25可以将由现场设备PNh生成的有效载荷数据发布到虚拟控制器110/30a,于是虚拟控制器110/30a的CBM 58a(例如,控制模块/例程118)可以对现场设备PNh生成的有效载荷数据进行操作。CBM58a可以生成要通过虚拟通信网络45传递到另一个虚拟或物理节点的输出有效载荷数据。
在另一个示例中,在工业过程工厂100的运行时期间,虚拟控制器110/30a可以接收由无线现场设备142a生成的数据。在该示例中,物理无线现场设备142a在图1中由物理节点PNa表示,并且物理无线网关168由PN 40c表示。无线网关PN 40c接收由无线现场设备PNa生成的有效载荷数据。由于PN 40c是虚拟通信网络45的节点,因此PN 40c向I/O交换机25发布I/O交换机25具有订阅的、无线现场设备PNa所生成的有效载荷数据。转而,I/O交换机25可以将由现场设备PNa生成的有效载荷数据发布到虚拟节点30b,其中,虚拟节点30b被配置为诸如I/O设备115之类的I/O设备的表示。虚拟I/O设备30b已订阅由现场设备PNa生成并由I/O交换机25转发的有效载荷数据。这样,虚拟I/O设备30b通过其订阅获得由无线现场设备PNa生成的有效载荷数据,并且将所获得的由现场设备PNa生成的有效载荷数据重新发布到I/O交换机25,以便转发给适当的订阅者。I/O交换机25可以转而将所获得的由虚拟I/O设备30b发布的现场设备PNa的有效载荷数据发布给其相应的订阅者,该订阅者(在该示例中)包括虚拟控制器30a。在虚拟控制器30a处经由对有效载荷数据的订阅而接收到该有效载荷数据之后,虚拟控制器30a的CBM 58a(例如,控制模块/例程118)可以对由无线现场设备PNa生成的有效载荷数据进行操作。CBM 58a可以生成要通过虚拟通信网络45传递到另一个虚拟或物理节点的输出有效载荷数据。
工业过程工厂的物理部件的虚拟化提供了优于完全使用物理部件来实现的工业过程工厂的许多益处。虚拟化的部件允许工业过程工厂灵活地按比例放大和/或缩小部件的大小和数量,其中对硬件占用空间的更改最小,并且降低了安装成本。由于虚拟节点可以表示物理设备的全部或仅其一部分,因此可以轻松地缩放控制,例如,根据需要跨多个虚拟节点。另外,例如,MPDSC平台10通过I/O的抽象提供I/O灵活性,使得控制器对实际配置和下载的I/O模块分配的依赖性较小。也就是说,至少由于I/O交换机25,可以消除物理I/O设备和控制器以及现场设备之间的I/O绑定决定。此外,通过使用虚拟物理部件,可以轻松实现对虚拟化的物理部件的软件升级。更进一步地,通过使用MPDSC平台10,物理部件的行为的模拟和在线测试也容易实现并且相对于当前已知的技术得以改进。
虚拟化管理节点
图5是例示了支持图1的MPDSC系统10的配置、调试、管理和治理的示例性架构的框图。为了清楚起见而非出于限制的目的,本文中同时参考图1-图4来讨论图5。如图5所示,虚拟化管理节点300(在本文中可互换地称为“VMN 300”或“虚拟节点300”)创建、配置和管理MPDSC系统10的虚拟化的部件,例如I/O交换机25、各种虚拟节点30x、虚拟PIO子系统60、发布/订阅层32x、35、38、42x等。VMN300自动执行虚拟部件的创建、配置和管理中的至少一些。附加地或替代地,VMN 300基于手动指令(例如经由VMN 300的用户接口302接收的手动指令)来执行虚拟部件的创建、配置和管理中的至少一些,该用户接口302可以是本地的或远程用户接口。此外,虚拟化管理节点300驱动和/或协调虚拟过程环境12的模拟活动,这可以在模拟期间在有和/或没有在线用户输入的情况下执行,如下面更详细地描述的。
虚拟部件的配置、治理和管理
在实施例中,在虚拟环境12及其部件的配置和/或调试期间,VMN 300访问工厂的系统配置数据库(例如,VMN 300经由数据高速通道108访问工厂100的配置数据库172b),并且基于所获得的配置,VMN 300确定最佳地支持(或期望支持)工厂配置的虚拟节点、虚拟模板和/或子系统、I/O交换机和/或其他虚拟部件的类型和数量。VMN300创建各种类型和数量的虚拟节点30x,并且将I/O交换机25和虚拟节点30x配置为经由虚拟通信网络45(例如,经由相应的发布/订阅层32x以及对于某些VN 30x,经由虚拟PIO子系统60)进行通信。对于某些工厂配置,VMN 300可以创建发布/订阅层42x的实例(以及可选地,虚拟PIO子系统60的实例)并将其分派到物理工厂环境15的各种物理部件40x。这样,VMN 300可以创建、配置和管理虚拟通信网络45的任何数量的节点25、28、30x,40x,其可以包括结合物理工厂的物理部件来操作的虚拟部件,以执行实时控制和/或动态模拟。
虚拟通信网络45及其节点25、28、30x,40x的配置可以存储在系统配置数据库172b中,和/或可以本地存储在虚拟环境配置数据库305中。在一些实现方式中,虚拟工厂环境12的配置的主版本存储在系统配置数据库172b中(连同物理工厂环境15的配置),并且虚拟工厂环境12的主配置的副本本地存储在虚拟环境配置数据库305中。在一些实现方式中,虚拟工厂环境12的配置的主版本存储在虚拟环境配置数据库305中,并且虚拟工厂环境12的主配置的副本存储在系统配置数据库172b中(连同物理工厂环境15的配置)。VMN 300协调对存储在虚拟环境配置数据库305中的数据和存储在系统配置数据库172b中的相关数据的更改管理和同步。
当工厂100在过程工厂100的运行时期间执行操作过程控制时,VMN 300可以关于例如由支持虚拟环境12的物理计算平台(例如,支持虚拟环境12的硬件计算设备的平台)提供的硬件和/或软件资源的资源加载情况、资源可用性、资源带宽、故障发生、以及其他性能问题监视I/O交换机25、虚拟节点30x、虚拟通信网络45和任何关联的节点(例如物理节点40x、28)。基于检测到的状况和/或预测的状况,VMN 300可以在运行时操作期间自动执行缓解动作(例如调整资源分配、激活备用虚拟节点、创建和/或删除虚拟节点等),例如,以用于负载平衡、故障恢复和其他性能目的。作为示例,VMN 300可以分析性能瓶颈并执行自动均衡操作以缓解任何检测到的瓶颈。例如,VMN300可以响应于虚拟通信网络45上的虚拟网络业务量而在过程数据级别上执行自动均衡,和/或VMN 300可以在物理计算设备级别上执行自动均衡,使得CPU和/或物理网络利用率跨在其上实现虚拟环境12的物理计算设备、物理数据链路和/或物理网络而被平衡。
在管理上,VMN 300可以执行各种虚拟节点、虚拟模板和子系统以及相关联的过程数据的保存、快照、备份、迁移、恢复等,并且VMN 300可以执行整个虚拟环境12本身的保存、快照、备份、迁移、恢复等。在实施例中,由VMN 300执行的每个管理动作可以应用于由对象(subject)虚拟节点模拟的逻辑的全部(例如,由对象虚拟节点的CBM 58的集体集合执行的逻辑的全部)。例如,当创建并保存虚拟控制器的快照时,VMN 300不仅可以保存由虚拟控制器接收、操作、生成、以及指示虚拟控制器的数据及其互连和操作状态,而且VMN 300还可以将与虚拟控制器相结合执行的模块的关联数据作为快照的一部分进行保存,即使此类模块被托管在其他节点上和/或模拟其他物理部件。在另一示例中,当创建并保存虚拟CIOC的快照时,VMN 300可以保存与虚拟CIOC的虚拟机级别相对应的数据,和/或VMN 300可以保存由虚拟CIOC观察到的过程模拟值。
动态模拟
如上所述,MPDSC系统10支持整个过程工厂100和/或其部分的动态模拟。例如,MPDSC系统10提供实时模拟,其中该实时模拟镜像了对应的物理部件和/或物理操作过程的至少部分的运行时时序、值和/或其他行为。如本文所使用的,术语“模拟”和“模拟运行”可互换地使用,并且模拟或模拟运行是有界的。也就是说,每个模拟或模拟运行具有相应的开始和相应的结束,其可以需要来定义,例如基于时间、参数值、状态、用户命令、和/或其他标准。
另外,MPDSC系统10提供对模拟的操控,例如加快或放慢模拟执行的速度、暂停模拟、插入和/或修改各种值、更改初始条件等。可以完全在MPDSC系统10的虚拟环境12中执行模拟,和/或可以使用一个或多个虚拟或模拟部件结合一个或多个物理部件来执行模拟(例如,由虚拟环境12中的虚拟节点模拟的控制器的配置可以与设置在物理环境15中的物理现场设备通信,以测试模拟的控制器行为)。一般而言,MPDSC系统10提供了一种平台,工程师和用户可以通过该平台测试和检查草案控制策略和草案操作员显示、研究过程改进、执行操作员培训、执行案例研究等。VMN300管理、协调和驱动MPDSC系统10所支持的模拟活动。
特别地,VMN 300创建、配置和管理模拟物理工厂100的至少一部分的虚拟节点25、30x和其他虚拟部件28、32、35、38、42x、60。仅用于模拟目的(而不是用于运行时控制目的)的虚拟节点25、30x在本文中可互换地称为“模拟节点”。例如,VMN 300可以生成工厂配置数据库172b所描述的整个运行时控制系统的镜像模拟系统,例如通过使用模拟节点,该模拟节点模拟集成的物理硬件部件,诸如控制器110、工作站170a,和/或其他物理设备,以及其对应的网络互连(在某些实现方式中,向下模拟到MAC地址级别)。在另一示例中,VMS 300可以生成一个或多个单独的物理部件的相应模拟,每个物理部件可以以独立模式执行或结合一个或多个其他模拟的、虚拟的和/或物理的部件执行。例如,VMS 300可以在虚拟环境12内生成当前在物理环境15内操作的物理部件的虚拟孪生,例如以测试要被应用于物理部件的新控制配置、升级、补丁等。在另一个示例中,VMS 300可以生成特定物理部件的MAC地址级别行为的模拟。在又一个示例中,VMS 300可以生成单一的(例如,单个)模拟节点,其模拟一组物理设备、部件或节点(诸如控制回路或操作员显示视图)的实时操作行为。
关于配置在过程控制系统100的虚拟环境12和物理环境15内使用的数据值的类型,在实施例中,系统过程数据定义(其可以经由系统配置应用172a和/或经由VMS 300进行配置)定义要模拟在过程工厂100内使用的哪些数据值(和/或其类型),并且VMS 300将相应的数据标签(例如,标识符)分配给要模拟的数据值(和/或其类型)。例如,VMS 300可以自动将数据标签分配给要模拟的至少一些数据值和/或数据类型,和/或VMS 300可以例如经由用户接口302接收要模拟的至少一些数据值和/或数据类型的手动生成的数据标签。模拟的数据值和/或数据类型的已分配的数据标签可以存储在虚拟环境配置数据库305和/或系统配置数据库172b中。
另外,VMN 300驱动和/或协调整个物理工厂100和/或其部分的模拟。为此,虚拟环境12提供模拟器API(应用编程接口)310或其他合适的访问机制,经由模拟器API310或其他合适的访问机制,诸如用户接口302、IT层应用21x和/或第三方或外部应用22x之类的应用可以与虚拟环境12对接以用于模拟目的。在实施例中,虚拟环境12内的VMN 300或其他计算设备托管模拟器API 310和/或将模拟器API 310暴露给其他应用。
如图5所示,模拟器API 310经由I/O交换机25向/从虚拟环境12和包括在其中的模拟部件传送模拟数据值(在本文中也可互换地称为“模拟数据值”、“模拟的值”和/或“模拟值”)。一般而言,模拟运行时过程数据经由节点的相应的Pub/Sub层在28、30x与模拟器API310之间传递。例如,模拟节点28、30x、310可以经由I/O交换机25将运行时过程数据发布到一个或多个其他模拟节点28、30x、310,并且模拟节点28、30x、310可以订阅由一个或多个其他模拟节点28、30x、310生成并经由I/O交换机25接收的运行时数据。另一方面,在实施例中,不是运行时过程数据的模拟数据值(例如,可配置的以及通常在物理环境15的下载时间期间分配的数据值)可以在变化的基础上在模拟节点28、30x、310之间传递,例如仅在数据的相应值改变时。
模拟器API 310被配置有虚拟环境12内的模拟部件的名称、数据标签、标识符、数据定义、通道数据等(例如,基于存储在虚拟配置数据库305中的数据),并且模拟器API 310还被配置为使用一个或多个工业和/或通用通信/数据协议进行通信,该协议可以是标准化协议,例如OPC、以太网、IPv6等。这样,模拟器API 310用作虚拟环境12内的模拟部件与其他应用302、21x,22x之间的数据传递和传输机制,这些其他应用302、21x,22x是模拟数据的消费者和/或提供者并且使用一个或多个工业和/或通用通信/数据协议。例如,第三方模拟应用可以使用模拟器API 310来注入测试值以供模拟部件使用,更改模拟运行的初始条件等。
附加地或替代地,模拟器API 310处理经由用户接口302和/或由其他应用21x、22x提供的模拟命令。例如,模拟器API 310可以接收模拟命令以加快和/或放慢模块执行的速度(其中至少一些在虚拟环境12中进行模拟)和/或加快和/或放慢I/O处理的速度,并且可以相应地驱动关联的模拟节点30x、28和/或虚拟通信网络45的时序和动作。在另一个示例中,模拟器API 310可以接收模拟命令以在模拟期间注入和/或更改各种数据值。此外,模拟器API 310可以接收管理模拟命令以例如保存快照、获取保存的快照、从保存的数据恢复等,并且可以作为响应执行对应的动作。例如,模拟器API 310可以接收并响应模拟命令以保存、获取、恢复整个过程工厂100的模拟(例如,到/来自虚拟环境配置数据库305和/或到/来自系统配置数据库172b)等以及保存、获取、恢复过程工厂100的一个或多个节点或部件的模拟等。
一般而言,模拟API 310是有状态的。也就是说,当模拟执行时,模拟API 310知道模拟和与其关联的部件(例如,虚拟、物理和/或模拟设备;虚拟、物理和/或模拟模块;其他类型的虚拟、物理和/或模拟部件;通过该模拟来至少部分地模拟的过程;整体模拟的状态;等等)的各种状态,并基于各种状态来响应接收到的命令。例如,响应于保存命令,模拟API310可以将过程数据与指示关联部件的状态的数据一起保存。在另一个示例中,当为了测试目的而模拟在控制器内执行的修改后的控制模块时,模拟API310可以允许用户更改关联模块的状态以确定修改后的控制模块将如何响应关联模块的不同状态。
图6是在运行时操作期间切换工业过程工厂的过程控制系统的节点的示例性方法的流程图。方法400的至少一部分可以由图1的多用途动态模拟和运行时工业或过程控制(MPDSC)系统或平台10的一个或多个部分和/或其任何一个或多个部件来执行。例如,方法400的至少一部分可以由图1的虚拟节点30a-30p中的任何一个虚拟节点来执行。在实施例中,方法400可以至少部分地由以下各项或或结合以下各项来执行:图2的虚拟节点52a、52b的实施例的一个或多个部分;图3的物理工厂环境100的实施例的一个或多个部分和/或其任何一个或多个部件;图4的I/O交换机的布置200的实施例的一个或多个部分;和/或图5的虚拟化管理节点300的实施例的一个或多个部分。例如,方法400的至少一部分可以由图5的VMN 300执行。为了便于说明且不出于限制的目的,本文同时参考图1-5的各部分描述了方法400。此外,在实施例中,除了本文描述的步骤之外,方法400可以包括更多、更少和/或替代步骤。
如图6所示,方法400包括经由设置在工业过程工厂的虚拟环境中的虚拟节点并通过利用I/O交换机来模拟设置在工业过程工厂中或可部署到工业过程工厂中的过程控制系统的物理部件的至少一部分的虚拟环境(框402)。通过其模拟物理部件的至少一部分的运行时行为的虚拟节点是模拟节点(因此不是操作以控制工业过程的相应部分的虚拟运行时节点),模拟节点与I/O交换机通信连接,并且I/O交换机将工业过程工厂的虚拟环境与工业过程工厂的物理环境通信连接。例如,I/O交换机可以类似于I/O交换机25或I/O交换机的布置200。I/O交换机例如作为过程控制系统的一部分而操作或执行,以至少通过经由订阅和发布在各种运行时节点之间路由I/O数据来控制工业过程,例如以类似于本文其他地方所述的方式相同的方式。
经由模拟节点模拟的物理节点的至少一部分可以设置在工业过程工厂的物理环境中或可部署到工业过程工厂的物理环境中。例如,物理节点的至少一部分可以是:过程控制器;安全控制器;安全逻辑求解器;I/O节点、卡或设备;无线设备;以太网设备;操作员工作站;用户接口设备;工具;网关;电子编组机柜;网络连接;可部署在工业过程工厂的物理环境中和/或设置在工业过程工厂的物理环境中的另一种类型的物理设备或部件;可部署在工业过程工厂的物理环境中和/或设置在工业过程工厂的物理环境中的特定物理设备或部件的模块、例程、功能或行为;特定物理设备或部件的MAC地址;特定物理设备或部件的硬件子部件;或特定物理设备或部件的另一部分。
如图6所示,模拟物理部件的至少一部分的运行时行为(框402)包括:通过模拟节点和对应的订阅来获取I/O交换机发布的第一数据(框405)。例如,模拟节点可以经由模拟节点的发布/订阅层获取其已订阅的发布的第一数据。模拟物理部件的至少一部分的运行时行为(框402)还包括:由模拟节点对所获取的第一数据进行操作,从而生成第二数据(框408);以及由模拟节点基于该操作发布I/O交换机已订阅的第二数据(框410)。例如,模拟节点可以包括部件行为模块(CBM),该部件行为模块对所获取的第一数据执行以生成对应的输出,并且模拟节点可以通过模拟节点的发布/订阅层来发布CBM的输出作为I/O交换机已订阅的第二数据的内容。
在一些实施例中,经由模拟节点结合另一个虚拟运行时节点和/或另一个物理运行时节点,对物理部件的至少一部分的运行时行为进行模拟(框402)。例如,该另一个虚拟运行时节点和/或该另一个物理运行时节点可以在参与模拟时操作以控制工业过程的相应部分。这样,可以例如在要操作的模拟节点处实时接收由该另一个虚拟运行时节点和/或该另一个物理运行时节点生成的实时过程数据。
在一些实施例中,对物理部件的至少一部分的运行时行为进行模拟(框402)可以包括操纵模拟。例如,可以改变模拟的速度以减慢、加快和/或实时执行,可以在模拟期间在某个点处插入值,可以在模拟期间在某个点处修改值,可以更改模拟的初始条件,可以更改模拟的中间条件,等等。
在一些布置中,经由模拟节点和模拟器访问机制,例如模拟器访问机制310,来模拟物理部件的至少一部分的运行时行为(框402)。模拟器访问机制310可以是暴露给一个或多个应用(例如,用户接口应用、第三方应用、其他模拟应用等)的API或其他合适的访问机制。在这些布置中,模拟可以响应于由一个或多个应用通过模拟访问机制提供的一个或多个指令。指令可以包括例如操纵模拟的指令,例如,改变模拟的速度,插入值,修改值,修改初始条件,修改中间条件等。另外或替代地,指令可以包括与管理模拟有关的指令,例如,保存与模拟相关联的信息,获取与一个或多个先前模拟相关联的先前保存的信息以供在模拟中使用,基于与一个或多个先前模拟相关联的先前保存的信息恢复模拟的至少一部分,等等。
随着模拟的进行,模拟器访问机制可以维持(和更新)与模拟相对应的各种状态。例如,对应于与模拟相关联的运行时节点的各种数据、部件、部件的部分、系统、子系统等的状态的指示可以被传递或以其他方式提供给模拟器访问机制以用于维护和/或更新,例如,通过I/O交换机。这样,例如,可以经由模拟器访问机制来保存和/或修改模拟期间的各种状态。
现在回到图6,方法400可以包括将模拟节点激活为过程控制系统的虚拟运行时节点,其中,虚拟运行时节点与I/O交换机结合进行操作以在过程控制系统的运行时操作期间控制工业过程的至少一部分(框412)。例如,将模拟节点激活为虚拟运行时间节点可以在涉及该模拟节点的一个或多个模拟的批准或登出(check-out)时发生。以这种方式,可以测试和登出模拟节点以验证其运行时行为,并且在批准后,可以仅激活或切换该模拟节点以在过程控制系统内作为虚拟运行时节点进行或执行,无需在运行时过程控制操作中造成大量(如果有)停机。一般而言,激活的虚拟运行时节点是物理部件的至少一部分的虚拟化,并且相应地进行操作(例如,与I/O交换机结合)以执行和/或支持实时过程控制。
有利地,在某些情况下,模拟节点可以是物理部件或其一部分的特定实例的虚拟孪生。特定实例可以是设置在工业过程工厂的物理环境中的物理实例,或者可以是设置在工业过程工厂的虚拟环境中的虚拟实例。无论如何,特定实例正在执行以执行和/或支持运行时过程控制,并且操作为特定实例的虚拟孪生的模拟节点镜像了运行时行为(例如,内容、数据、消息传递、定时、状态等),因为特定实例正在实时执行。这样,在框412处,将虚拟孪生激活为特定实例的虚拟化实质上激活了特定实例的热备用,这允许从先前执行的特定实例无缝或或“无扰动”切换到虚拟孪生以进行实时操作。
在一些实施例中(图6中未示出),方法400可以包括经由设置在工业过程工厂的虚拟环境中的第二模拟节点来模拟第二物理部件的至少一部分。经由第二模拟节点对第二物理部件的至少一部分进行模拟可以包括:经由第二模拟节点和对应的订阅,获取由I/O交换机发布的第五数据,以及由第二模拟节点基于第五数据生成I/O交换机已订阅的第六数据,并可选地发布该第六数据。第六数据可以例如由对第五数据进行操作的第二模拟节点的部件行为模块生成。在这些实施例中,在对应于第二模拟节点的批准后,方法400可以包括使第二模拟节点的CBM被下载到或以其他方式提供给设置在工业过程工厂的物理环境中的第二物理部件的实例。这样,CBM在运行时操作期间被下载到第二物理部件的实例并由第二物理部件的实例执行时,可以使第二物理部件的实例根据CBM进行操作,从而控制(或支持控制)工业过程的相应部分。
因此,鉴于上述内容,用于动态模拟的新颖的多用途平台和运行时控制平台10提供了超过已知过程控制系统的众多益处和优点。例如,由于MPDSC平台10通过虚拟部件支持模拟和运行时控制两者,因此可以在虚拟环境12中通过模拟部件执行对变化的测试(例如,升级、补丁等),并在令人满意的检查后,可以容易地将模拟部件激活为过程工厂100的虚拟部件(例如“加载,评估,运行”,无扰动或热切换等)。这样,可以更轻松地完成模拟部件到运行时部件的切换,并减少了由于升级、补丁和计划的维护而导致的停机时间。此外,还大大减少了用于提供各种部件的虚拟化热备件并在故障或错误情况下使虚拟化热备件在线的资源量。
此外,由MPDS平台10提供运行时虚拟部件允许工厂100内的硬件与软件之间的独立性。例如,在过程控制系统100的运行时期间使用的控制器软件可以在运行时虚拟控制器中进行升级,而无需升级或更改任何物理控制器硬件。类似地,由于硬件/软件的独立性,MPDS平台10允许过程工厂100的硬件独立于软件升级而被升级。
另外,提供运行时虚拟部件及其治理和/或管理(例如,通过MPDSC平台10的VMS300)还允许简单且成本更低的系统可伸缩性,因为可以在虚拟环境12中轻松实现附加的虚拟部件,而无需付费、安装、测试、调试和检查不同的物理硬件部件以及所需的机柜、布线等。实际上,当需要附加的虚拟部件来支持系统100时,可以根据需要创建虚拟部件,直到在其上实现虚拟环境12的物理计算设备和/或硬件的处理和/或存储器限制,之后可以简单地向其添加附加物理计算设备和/或硬件。
由MPDS平台10提供的虚拟环境12使得能够创建各个部件的数字孪生和/或对整个过程工厂100进行虚拟模拟,例如,用于测试、热备件、升级、补丁、计划的维护以及/或其他目的。数字孪生(例如,特定部件和整个过程工厂100的数字孪生)可以利用对它们各自的特定物理部件的更新来以锁步(lock-step)的方式进行更新。也就是说,状态信息可以经由MPDSC平台10从物理节点传递到虚拟节点。实际上,MPDSC平台10提供了对变化和/或不同场景(例如,“假设”场景)的增强的在线测试,并且在某些情况下,结合了过程工厂100的运行时虚拟和/或物理部件。由于通用MPDS平台10(尤其是MPDS平台10的虚拟环境12)被构建并用于模拟和运行时控制目的两者,因此无需任何配置更改即可轻松完成非模拟(off-simulation)。
此外,由于MPDS平台10从I/O与特定硬件的特定直接关联抽象出过程工厂的I/O,所以工厂100中的I/O配置更加灵活,不仅在运行时期间还在升级、维护、故障等期间易于更改和适应。重要的是,I/O设备与其他部件(例如CIOC和控制器)之间的通信连接不再受物理I/O设备上可用的物理端口的限制。当I/O在MPDS平台10内被抽象时,虚拟I/O设备与其他部件之间的任何数量的通信连接在逻辑上都是可能的,直到在其上实现虚拟环境12的物理计算设备和/或硬件的处理和/或存储限制,之后,可以简单地向其添加附加的物理计算设备和/或硬件。类似地,由于MPDS平台10内的I/O的抽象,控制模块和/或其他CBM 58可以被分配给任何虚拟主机设备或部件,而不用担心主机设备或部件的I/O位置和/或加载,这在使用物理主机设备或部件时是必需的。也就是说,如前所述,虚拟部件(无论是用于模拟还是用于运行时控制目的)都可以利用来自物理部件或其他虚拟部件的I/O进行操作。这样,MPDS平台10能够抽象(例如,通过利用I/O交换机25)冗余、重试和当前与当前已知技术内的特定实现相关联的其他机制,从而可以跨多种不同类型的应用、场景和实现利用抽象,例如,针对特定实现和/或应用对各种抽象进行选定的定制和特殊化。因此,MPDS平台10能够以一致且易于扩展的方式支持更多数量和类型的I/O系统(与当前已知的技术相比)。
当以软件实现时,本文描述的任何应用、服务、虚拟设备、垂直机器、虚拟实体等可以存储在任何有形的、非暂时性的计算机可读存储器中,例如在磁盘、激光盘、固态存储器设备、分子存储器存储设备或,其中存储介质上,在计算机或处理器的RAM或ROM中,等等。尽管本文公开的示例性系统被公开为包括除其他部件之外的在硬件上执行的软件和/或固件,应当注意,这样的系统仅是说明性的,不应视为限制性的。例如,可以预期的是,这些硬件、软件和固件部件中的任何一个或全部可以仅以硬件,仅以软件或以硬件和软件的任何组合来体现。因此,尽管本文描述的示例性系统被描述为以在一个或多个计算机设备的处理器上执行的软件来实现,但是本领域普通技术人员将容易理解,所提供的示例不是实现这种系统的唯一方式。
因此,尽管已经参照具体示例描述了本发明,这些具体示例仅用于说明而不是限制本发明,但是对于本领域普通技术人员而言显而易见的是,可以在不脱离本发明的精神和范围的情况下,对所公开的实施例进行更改、添加或删除。

Claims (31)

1.一种在运行时操作期间切换工业过程工厂的过程控制系统的节点的方法,所述方法包括:
经由设置在所述工业过程工厂的虚拟环境中的虚拟节点来模拟所述工业过程工厂的过程控制系统的物理部件的至少一部分的运行时行为,所述物理部件能够部署在所述工业过程工厂的物理环境中,所述虚拟节点是模拟节点,并且所述模拟包括:
由所述模拟节点经由订阅获得由I/O交换机发布的第一数据,所述I/O交换机将所述工业过程工厂的所述虚拟环境和所述物理环境通信地连接;
由所述模拟节点对所获得的第一数据进行操作;以及
基于所述操作,由所述模拟节点发布所述I/O交换机已订阅的第二数据,
在所述I/O交换机在所述过程控制系统的所述运行时操作期间进行操作以通过经由订阅和发布在运行时节点之间路由I/O数据来控制工业过程时,发生由所述模拟节点进行的所述获取、所述操作和所述发布;以及
将所述模拟节点激活为所述过程控制系统的虚拟运行时节点,所述虚拟运行时节点结合所述I/O交换机进行操作,以在所述过程控制系统的所述运行时操作期间控制所述工业过程的至少一部分。
2.根据前述权利要求所述的方法,其中:
模拟所述物理部件的所述至少一部分的所述运行时行为包括模拟以下各项的运行时行为:过程控制器;安全控制器;安全逻辑解算器;I/O节点、卡或设备;无线设备;以太网设备;操作员工作站;用户接口设备;工具;网关;电子编组机柜;网络连接;能够部署在和/或设置在所述工业过程工厂的所述物理环境内的另一种类型的物理设备或部件;能够部署在和/或设置在所述工业过程工厂的所述物理环境内的特定物理设备或部件的模块、例程、功能或行为;所述特定物理设备或部件的MAC地址;所述特定物理设备或部件的硬件子部件;或所述特定物理设备或部件的另一部分;并且
将所述模拟节点激活为所述虚拟运行时节点包括将所述模拟节点激活为所述物理部件的所述至少一部分的虚拟化。
3.根据前述权利要求中的任一项所述的方法,其中,将所述模拟节点激活为所述虚拟运行时节点包括:在接收到所述模拟的批准之后,将所述模拟节点激活为所述虚拟运行时节点。
4.根据前述权利要求中的任一项所述的方法,其中,模拟所述物理部件的所述至少一部分的所述运行时行为包括:操控所述物理部件的所述至少一部分的所述运行时行为的模拟,所述模拟的所述操控包括以下各项中的至少一项:改变所述模拟的速度,将第一值插入到所述模拟中,修改所述模拟中使用的第二值,更改所述模拟的初始条件,或更改所述模拟的中间条件。
5.根据前述权利要求中的任一项所述的方法,其中,经由所述模拟节点来模拟所述物理部件的所述至少一部分的所述运行时行为包括:经由所述模拟节点结合所述过程控制系统的另一个虚拟运行时节点或另一个物理节点中的至少一个来模拟所述相应的物理部件的所述运行时行为。
6.根据前述权利要求所述的方法,其中,所述另一个虚拟运行时节点或所述另一个物理节点中的至少一个在所述过程控制系统的所述运行时操作期间进行操作以控制所述工业过程的相应部分。
7.根据前述权利要求中的任一项所述的方法,其中,经由所述模拟节点来模拟所述物理部件的所述至少一部分的所述运行时行为包括:通过使用所述模拟节点和暴露于一个或多个其他应用的模拟访问机制来模拟所述物理部件的所述至少一部分的所述运行时操作行为。
8.根据前述权利要求所述的方法,其中,所述模拟访问机制维护与所述模拟相关联的一个或多个状态,并且其中,将所述模拟节点激活为所述虚拟运行时节点包括:基于所维护的一个或多个状态,将所述模拟节点激活为所述虚拟运行时节点。
9.根据权利要求7-8中的任一项所述的方法,其中,通过使用暴露于所述一个或多个应用的所述模拟访问机制来模拟所述运行时行为包括:响应于经由所述模拟访问机制控制从所述一个或多个应用接收的一个或多个指令来控制所述模拟。
10.根据前述权利要求所述的方法,其中,响应于一个或多个指令来控制所述模拟包括响应于用于执行以下各项中的至少一项的一个或多个指令来控制所述模拟:改变所述模拟的速度,将第一值插入到所述模拟中,修改所述模拟中使用的第二值,更改所述模拟的初始条件,或更改所述模拟的中间条件。
11.根据权利要求7-10中的任一项所述的方法,还包括:经由所述模拟访问机制来管理使用所述模拟节点的模拟,所述模拟的所述管理包括以下各项中的至少一项:保存与所述模拟相关联的信息,获取与先前模拟相关联的先前保存的信息以用于所述模拟中,或基于与所述先前模拟相关联的所述先前保存的信息来恢复所述模拟的至少一部分。
12.根据前述权利要求中任一项所述的方法,还包括:在将所述模拟节点激活为所述虚拟运行时节点之后,去激活与所述物理部件的所述至少一部分相对应的另一个虚拟运行时节点。
13.根据前述权利要求中的任一项所述的方法,其中,所述模拟节点是第一模拟节点并且所述物理部件的所述至少一部分是第一物理部件的至少一部分,并且所述方法还包括:
经由设置在所述工业过程工厂的所述虚拟环境中的第二模拟节点来模拟能够部署在所述工业过程工厂的所述物理环境中的第二物理部件的至少一部分的运行时行为,其包括:
由所述第二模拟节点经由相应的订阅获得由所述I/O交换机发布的第三数据;
由所述第二模拟节点对所获得的第三数据进行操作;以及
由所述第二模拟节点基于所述操作发布所述I/O交换机已订阅的第四数据;以及
在所述第二物理部件的所述至少一部分的所述运行时行为的所述模拟的批准之后,将所述第二模拟节点的部件行为模块(CBM)下载到设置在所述过程工厂的所述物理环境中的所述第二物理部件的实例中,以使得所述第二物理部件在所述过程控制系统的所述运行时操作期间根据所下载的CBM来执行,以控制所述工业过程的相应部分。
14.根据前述权利要求中的任一项所述的方法,其中:
所述模拟节点是所述物理部件的特定实例的虚拟孪生,所述特定实例在所述过程控制系统的运行时操作期间在所述过程控制工厂中执行,以控制所述工业过程的相应部分;并且
经由所述模拟节点模拟所述物理部件的所述至少一部分的所述运行时行为包括:当所述物理部件的所述特定实例在所述过程控制系统的所述运行时操作期间执行以控制所述工业过程的所述相应部分时,镜像所述物理部件的所述特定实例的所述运行时行为。
15.根据前述权利要求所述的方法,其中,镜像所述物理部件的所述特定实例的所述运行时行为包括:将与所述物理部件的所述特定实例的所述运行时行为相关联的状态信息传递给所述模拟节点。
16.根据前述权利要求中的任一项所述的方法,其中:
所述过程控制系统还包括虚拟化管理节点;
所述方法还包括由所述虚拟化管理节点创建所述模拟节点和所述过程控制系统的任何其他虚拟运行时节点,所述任何其他虚拟运行时节点设置在所述虚拟环境中并结合I/O交换机进行操作,以在所述过程控制系统的所述运行时操作期间控制所述工业过程;以及
将所述模拟节点激活为所述虚拟运行时节点包括:由所述虚拟化管理节点将所述模拟节点激活为所述虚拟运行时节点。
17.一种用于在运行时操作期间切换工业过程工厂的过程控制系统的节点的系统,所述系统包括:
I/O交换机,所述I/O交换机包括在过程控制系统中,所述I/O交换机将所述工业过程工厂的虚拟环境与所述工业过程工厂的物理环境通信地连接,并且所述I/O交换机进行操作以在所述过程控制系统的所述运行时操作期间通过经由订阅和发布在运行时节点之间路由I/O数据来控制工业过程;
虚拟节点,所述虚拟节点设置在所述工业过程工厂的所述虚拟环境中并且模拟能够部署在所述工业过程工厂的所述物理环境中的物理部件的至少一部分的运行时行为,所述虚拟节点是模拟节点,并且所述模拟包括:经由对应的订阅获得由所述I/O交换机发布的第三数据,并且基于所述第三数据,生成所述I/O交换机已订阅的第四数据;以及
虚拟化管理节点,所述虚拟化管理节点在与所述模拟节点相对应的批准之后,将所述模拟节点激活为所述过程控制系统的虚拟运行时节点,所述虚拟运行时节点结合所述I/O交换机进行操作,以在所述过程控制系统的所述运行时操作期间控制所述工业过程的至少一部分。
18.根据前述权利要求所述的系统,其中,所述运行时行为由所述模拟节点进一步通过所述模拟节点发布所述第四数据来模拟。
19.根据权利要求17-18中的任一项所述的系统,其中:
对应于所述模拟节点的所述物理部件包括以下各项中的至少一项:过程控制器;安全控制器;安全逻辑解算器;I/O节点、卡或设备;无线设备;以太网设备;操作员工作站;用户接口设备;工具;网关;电子编组机柜;网络连接;能够部署在和/或设置在所述工业过程工厂的所述物理环境内的另一种类型的物理设备或部件;能够部署在和/或设置在所述工业过程工厂的所述物理环境内的特定物理设备或部件的模块、例程、功能或行为;所述特定物理设备或部件的MAC地址;所述特定物理设备或部件的硬件子部件;或所述特定物理设备或部件的另一个部分;并且
从所述模拟节点激活的所述虚拟运行时节点是所述物理部件的虚拟化。
20.根据权利要求17-19中的任一项所述的系统,其中:
在所述过程控制系统的特定虚拟运行时节点或特定物理节点中的至少一个在所述过程控制系统的所述运行时操作期间进行操作以控制所述工业过程时,所述模拟节点结合所述特定虚拟运行时节点或所述特定物理节点中的所述至少一个进行操作以模拟所述物理部件的所述至少一部分的所述运行时行为;并且
由所述I/O交换机发布的所述第三数据指示在所述特定虚拟运行时节点或所述特定物理节点中的所述至少一个在所述过程控制工厂的所述运行时操作期间进行操作以控制所述工业过程时由所述特定虚拟运行时节点或所述特定物理节点中的所述至少一个生成的数据。
21.根据权利要求17-20中的任一项所述的系统,还包括暴露于一个或多个应用的模拟访问机制,并且其中,所述物理部件的所述运行时行为的至少一部分的所述运行时行为的模拟的至少一部分是基于经由所述模拟访问机制从所述一个或多个应用接收的一个或多个指令的。
22.根据权利要求21所述的系统,其中,所述一个或多个应用包括用户接口应用或第三方应用中的至少一个。
23.根据权利要求21-22中的任一项所述的系统,其中,所述一个或多个指令包括相应的模拟修改指令以执行以下各项中的至少一项:改变所述模拟的速度,将第一值插入到所述模拟中,修改所述模拟中使用的第二值,更改所述模拟的初始条件,或更改所述模拟的中间条件。
24.根据权利要求23所述的系统,其中,满足以下各项中的至少一项:所述模拟的所述初始条件是与所述模拟相对应的初始状态,或者所述模拟的所述中间条件是与所述模拟相对应的中间状态。
25.根据权利要求21-24中任一项所述的系统,其中,所述一个或多个指令包括相应的模拟管理指令以执行以下各项中的至少一项:保存与所述模拟相关联的信息,获取与一个或多个先前模拟相关联的先前保存的信息以用于所述模拟中,或基于与所述一个或多个先前模拟相关联的所述先前保存的信息来恢复所述模拟的至少一部分。
26.根据权利要求21-25中的任一项所述的系统,其中,所述模拟访问机制维护与所述物理部件的所述至少一部分的所述运行时行为的所述模拟相关联的一个或多个状态,并且其中,将所述模拟节点激活为所述虚拟运行时节点是基于所维护的一个或多个状态中的至少一些的。
27.根据权利要求26所述的系统,其中,指示所述一个或多个状态的信息经由所述I/O交换机从所述工业过程工厂的所述物理环境传递到所述模拟访问机制。
28.根据权利要求21-27中的任一项所述的系统,其中:
所述模拟访问机制由所述虚拟化管理节点提供;
设置在所述虚拟环境中的虚拟节点集合由所述虚拟化管理节点创建;并且
所述虚拟节点集合包括所述模拟节点和所述过程控制系统的任何虚拟运行时节点,所述任何虚拟运行时节点结合所述I/O交换机进行操作,以在所述过程控制系统的所述运行时操作期间控制所述工业过程。
29.根据权利要求17-28中的任一项所述的系统,其中:
所述模拟节点是所述物理部件的特定实例的虚拟孪生,所述特定实例在所述过程控制系统的所述运行时操作期间在所述工业过程工厂中执行以控制所述工业过程的相应部分;并且
当所述相应的物理部件的所述特定实例在所述过程控制系统的所述运行时操作期间执行以控制所述工业过程的所述相应部分时,所述物理部件的所述特定实例的所述运行时行为的模拟对所述物理部件的所述特定实例的所述运行时行为进行镜像。
30.根据权利要求17-29中的任一项所述的系统,其中:
所述模拟节点是第一模拟节点,所述物理部件是第一物理部件,并且所述批准是第一批准;
所述系统还包括设置在所述工业过程工厂的所述虚拟环境中的第二模拟节点,所述第二模拟节点模拟能够部署在所述工业过程工厂的所述物理环境内的第二物理部件的至少一部分的运行时行为,并且模拟所述第二物理部件的所述至少一部分包括:经由对应的订阅获得由所述I/O交换机发布的第五数据,并且基于所述第五数据,生成所述I/O交换机已订阅的第六数据;并且
在与所述第二模拟节点相对应的第二批准之后,所述虚拟化管理节点使所述第二模拟节点的部件行为模块(CBM)被下载到设置在所述过程工厂的所述物理环境中的所述第二物理部件的实例中,以使得所述第二物理部件的所述实例根据所下载的CBM来作为所述过程控制系统的一部分执行,以控制所述工业过程的相应部分。
31.前述权利要求中的任一项与前述权利要求中的任何其它项的组合。
CN202010525419.4A 2019-06-10 2020-06-10 切换过程控制系统节点的方法和系统 Active CN112068497B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962859508P 2019-06-10 2019-06-10
US62/859,508 2019-06-10
US16/874,297 US11599100B2 (en) 2019-06-10 2020-05-14 Ease of node switchovers in process control systems
US16/874,297 2020-05-14

Publications (2)

Publication Number Publication Date
CN112068497A true CN112068497A (zh) 2020-12-11
CN112068497B CN112068497B (zh) 2024-06-18

Family

ID=73650065

Family Applications (6)

Application Number Title Priority Date Filing Date
CN202010525949.9A Pending CN112068499A (zh) 2019-06-10 2020-06-10 在过程控制系统中运行实时控制的虚拟节点的自动平衡和性能均衡
CN202010525409.0A Pending CN112068494A (zh) 2019-06-10 2020-06-10 过程控制系统中的虚拟化实时i/o
CN202010525419.4A Active CN112068497B (zh) 2019-06-10 2020-06-10 切换过程控制系统节点的方法和系统
CN202010525410.3A Active CN112068495B (zh) 2019-06-10 2020-06-10 控制工业过程工厂的工业过程的方法和过程控制系统
CN202010525946.5A Active CN112068498B (zh) 2019-06-10 2020-06-10 用于实时模拟和过程控制的工业控制系统和方法
CN202010525418.XA Pending CN112068496A (zh) 2019-06-10 2020-06-10 过程控制系统中的集中式虚拟化管理节点

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN202010525949.9A Pending CN112068499A (zh) 2019-06-10 2020-06-10 在过程控制系统中运行实时控制的虚拟节点的自动平衡和性能均衡
CN202010525409.0A Pending CN112068494A (zh) 2019-06-10 2020-06-10 过程控制系统中的虚拟化实时i/o

Family Applications After (3)

Application Number Title Priority Date Filing Date
CN202010525410.3A Active CN112068495B (zh) 2019-06-10 2020-06-10 控制工业过程工厂的工业过程的方法和过程控制系统
CN202010525946.5A Active CN112068498B (zh) 2019-06-10 2020-06-10 用于实时模拟和过程控制的工业控制系统和方法
CN202010525418.XA Pending CN112068496A (zh) 2019-06-10 2020-06-10 过程控制系统中的集中式虚拟化管理节点

Country Status (5)

Country Link
US (5) US11550311B2 (zh)
JP (6) JP7483510B2 (zh)
CN (6) CN112068499A (zh)
DE (1) DE102020115456A1 (zh)
GB (1) GB2623201A (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11768877B2 (en) * 2019-09-20 2023-09-26 Fisher-Rosemount Systems, Inc. Smart search capabilities in a process control system
US11768878B2 (en) * 2019-09-20 2023-09-26 Fisher-Rosemount Systems, Inc. Search results display in a process control system
CN112904827B (zh) * 2021-01-18 2022-02-01 同济大学 一种面向多icu的无人驾驶虚拟仿真测试系统
US12001183B2 (en) * 2021-02-26 2024-06-04 Hewlett Packard Enterprise Development Lp Scalable microservices-driven industrial IoT controller architecture
US20220309753A1 (en) * 2021-03-25 2022-09-29 B/E Aerospace, Inc. Virtual reality to assign operation sequencing on an assembly line
CN113296423B (zh) * 2021-05-22 2023-09-08 北京德风新征程科技有限公司 一种基于工业互联网的实时仿真分析系统
US12007747B2 (en) * 2021-06-16 2024-06-11 Fisher-Rosemount Systems, Inc. Software defined process control system and methods for industrial process plants
CN113722883B (zh) * 2021-07-26 2024-05-14 国网河北省电力有限公司石家庄供电分公司 一种智能变电站二次回路故障定位方法
CN113917897B (zh) * 2021-09-26 2024-04-02 西门子能源自动化(南京)有限公司 用于对电厂进行操作和监视的装置及其实施方法
CN114003006A (zh) * 2021-10-19 2022-02-01 宝鸡钛业股份有限公司 一种采用虚拟化智能算法解决进口控制系统限制权限国产化方法
US11971710B2 (en) * 2021-11-12 2024-04-30 Pani Energy Inc Digital model based plant operation and optimization
CN114726807A (zh) * 2021-11-23 2022-07-08 苏州汇云鼎技术服务有限公司 一种工业用网络数据交换机
CN114422873B (zh) * 2021-12-15 2023-12-08 浙江中控技术股份有限公司 动态接入工业互联网标识解析平台的方法、装置及设备
CN114449014B (zh) * 2021-12-29 2024-01-19 中国航空工业集团公司西安航空计算技术研究所 一种用于机载信息管理系统的虚拟化信息处理平台
CN115270213B (zh) * 2022-06-30 2024-03-01 北京亚控科技发展有限公司 一种实体物当前状态的孪生方法、订阅方法及系统
CN115083535B (zh) * 2022-08-23 2022-11-08 佰墨思(成都)数字技术有限公司 生物制药车间组态数字孪生构建方法及系统
CN115473802B (zh) * 2022-09-13 2024-02-23 重庆紫光华山智安科技有限公司 节点管理方法、系统、设备及存储介质
US20240118679A1 (en) * 2022-10-10 2024-04-11 Schneider Electric Systems Usa, Inc. Virtual controller deployed on intrinsically safe field device
WO2024086019A1 (en) * 2022-10-20 2024-04-25 Fisher-Rosemount Systems, Inc. Enterprise engineering and configuration framework for advanced process control and monitoring systems
CN115442154B (zh) * 2022-10-26 2022-12-30 北京安帝科技有限公司 模块化工控协议包深度解析验证方法与系统
CN116405393B (zh) * 2023-06-09 2023-09-22 广东致盛技术有限公司 一种用于数据孪生的边缘智能网关优化方法及装置
CN117220935B (zh) * 2023-09-04 2024-02-20 河北润博星原科技发展有限公司 一种基于移动计算机的网络安全监测系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103238143A (zh) * 2010-09-27 2013-08-07 费希尔-罗斯蒙特系统公司 用于虚拟化过程控制系统的方法和设备
CN104142630A (zh) * 2013-05-09 2014-11-12 洛克威尔自动控制技术股份有限公司 用信息叠加把基于云的数据用于工业自动化环境的虚拟化
US20160179993A1 (en) * 2014-12-22 2016-06-23 Rockwell Automation Technologies, Inc. Predictive analysis having data source integration for industrial automation
CN108513655A (zh) * 2015-10-13 2018-09-07 施耐德电器工业公司 软件定义自动化系统及其架构
US20180321662A1 (en) * 2017-05-01 2018-11-08 Fisher-Rosemount Systems, Inc. Open architecture industrial control system
CN109213702A (zh) * 2017-06-30 2019-01-15 伊姆西Ip控股有限责任公司 虚拟机环境中的虚拟双控制模块之间的通信
CN109597374A (zh) * 2017-10-02 2019-04-09 费希尔-罗斯蒙特系统公司 用于调试的i/o虚拟化

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7392165B2 (en) 2002-10-21 2008-06-24 Fisher-Rosemount Systems, Inc. Simulation system for multi-node process control systems
JP3940665B2 (ja) 2002-11-27 2007-07-04 株式会社東芝 ハイブリッドシミュレーション装置およびプログラム
JP2007536634A (ja) 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
US8799431B2 (en) * 2005-08-15 2014-08-05 Toutvirtual Inc. Virtual systems management
US7797382B2 (en) * 2005-12-02 2010-09-14 Alcatel Lucent Virtual private network publish-subscribe multicast service
US8509926B2 (en) 2005-12-05 2013-08-13 Fisher-Rosemount Systems, Inc. Self-diagnostic process control loop for a process plant
WO2008017001A2 (en) 2006-08-02 2008-02-07 Moka5, Inc. Sharing live appliances
US20090089359A1 (en) 2007-09-27 2009-04-02 Rockwell Automation Technologies, Inc. Subscription and notification in industrial systems
US8200738B2 (en) * 2007-09-30 2012-06-12 Oracle America, Inc. Virtual cluster based upon operating system virtualization
US8340790B2 (en) 2009-08-31 2012-12-25 Fisher-Rosemount Systems, Inc. Methods and apparatus to adjust control loop timing in a process control system
US10037443B2 (en) 2011-03-07 2018-07-31 Rockwell Automation Technologies, Inc. Industrial simulation using redirected I/O module configurations
US8756041B2 (en) 2011-03-07 2014-06-17 Rockwell Automation Technologies, Inc. Industrial simulation using redirected I/O module configurations
EP2599995B1 (en) 2011-11-30 2015-10-28 Siemens Aktiengesellschaft Wind turbine control system
US9256222B2 (en) 2012-07-18 2016-02-09 International Business Machines Corporation Sensor virtualization through cloud storage and retrieval mechanisms
US10756543B2 (en) 2012-09-13 2020-08-25 Stem, Inc. Method and apparatus for stabalizing power on an electrical grid using networked distributed energy storage systems
US10678225B2 (en) * 2013-03-04 2020-06-09 Fisher-Rosemount Systems, Inc. Data analytic services for distributed industrial performance monitoring
US9989958B2 (en) * 2013-05-09 2018-06-05 Rockwell Automation Technologies, Inc. Using cloud-based data for virtualization of an industrial automation environment
WO2015020573A1 (en) 2013-08-08 2015-02-12 Telefonaktiebolaget L M Ericsson (Publ) Methods and devices for media processing in distributed cloud
KR101488193B1 (ko) 2013-09-04 2015-01-30 에스케이 텔레콤주식회사 상황 인지 기반의 명령 수행 방법 및 장치
JP6020476B2 (ja) 2014-01-20 2016-11-02 横河電機株式会社 プロセス制御装置及びその更新方法
WO2016025321A1 (en) * 2014-08-13 2016-02-18 OneCloud Labs, Inc. Replication of virtualized infrastructure within distributed computing environments
US9912737B2 (en) 2014-08-27 2018-03-06 Exxonmobil Research And Engineering Company Method and system for modular interoperable distributed control
CN107431647B (zh) * 2014-08-27 2021-03-12 适应性频谱和信号校正股份有限公司 用于实现接入节点功能的虚拟化的系统、方法和装置
US9652212B2 (en) 2014-09-24 2017-05-16 Oracle International Corporation Managing change events for devices in an enterprise system
EP3026608A1 (en) * 2014-11-28 2016-06-01 Siemens Aktiengesellschaft A common plant model for modelling of physical plant items of a production plant
WO2016089342A1 (en) 2014-12-01 2016-06-09 General Electric Company Method and system for efficient dynamic alarm construction
JP6509537B2 (ja) 2014-12-04 2019-05-08 三菱日立パワーシステムズ株式会社 プラントシミュレータ及びプラントシミュレータの演算割り当て方法
US10623244B2 (en) 2014-12-19 2020-04-14 Emerson Process Management Lllp Data transfer on an industrial process network
US10142199B2 (en) 2014-12-19 2018-11-27 Emerson Process Management Lllp Automatic process data transmission and monitoring for an industrial process network
US10320958B2 (en) 2014-12-19 2019-06-11 Emerson Process Management Lllp Fast data transfer communication protocol for an industrial process network
SG10201505489QA (en) 2015-07-14 2016-07-28 Yokogawa Engineering Asia Pte Ltd Systems and methods for optimizing control systems for a process environment
US11222551B2 (en) * 2015-07-23 2022-01-11 Rockwell Automation Technologies, Inc. Snapshot management architecture for process control operator training system lifecycle
US10007513B2 (en) * 2015-08-27 2018-06-26 FogHorn Systems, Inc. Edge intelligence platform, and internet of things sensor streams system
US10185311B2 (en) 2015-10-08 2019-01-22 King Fahd University Of Petroleum And Minerals Methods and apparatus to design collaborative automation systems based on data distribution service middleware
US10868754B2 (en) 2016-01-27 2020-12-15 Nebbiolo Technologies Inc. High availability input/output management nodes
US10810053B2 (en) 2016-06-24 2020-10-20 Schneider Electric Systems Usa, Inc. Methods, systems and apparatus to dynamically facilitate boundaryless, high availability M..N working configuration management with supplemental resource
EP3267649B1 (en) 2016-07-08 2019-02-13 Omron Corporation Method and industrial computing apparatus for performing a secure communication
EP3273315B1 (de) * 2016-07-19 2023-10-18 ABB Schweiz AG Plattform zur weiternutzung bestehender software für die ansteuerung industrieller feldgeräte
US10382395B2 (en) 2016-07-25 2019-08-13 Honeywell International Inc. Industrial process control using IP communications with publisher subscriber pattern
AU2017307345B2 (en) * 2016-08-03 2022-02-24 Schneider Electric Industries Sas Industrial software defined networking architecture for deployment in a software defined automation system
US10742760B2 (en) 2016-11-15 2020-08-11 Intel Corporation Neworking internet of things (IoT) devices
WO2018092300A1 (ja) 2016-11-21 2018-05-24 三菱電機株式会社 シミュレーション装置、シミュレーションシステム、シミュレーション方法およびシミュレーションプログラム
CN108123994B (zh) * 2016-11-28 2021-01-29 中国科学院沈阳自动化研究所 一种面向工业领域的云平台架构
US20180314240A1 (en) 2017-04-28 2018-11-01 Honeywell International Inc. Flexible hierarchical model for monitoring distributed industrial control systems
US10904340B2 (en) 2017-05-02 2021-01-26 Siemens Aktiengesellschaft Method for operating an automation network
US10620613B2 (en) 2017-08-21 2020-04-14 Fisher-Rosemount Systems, Inc. High performance control server system
WO2019099111A1 (en) 2017-11-16 2019-05-23 Intel Corporation Distributed software-defined industrial systems
US11423254B2 (en) * 2019-03-28 2022-08-23 Intel Corporation Technologies for distributing iterative computations in heterogeneous computing environments

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103238143A (zh) * 2010-09-27 2013-08-07 费希尔-罗斯蒙特系统公司 用于虚拟化过程控制系统的方法和设备
CN104142630A (zh) * 2013-05-09 2014-11-12 洛克威尔自动控制技术股份有限公司 用信息叠加把基于云的数据用于工业自动化环境的虚拟化
CN107256007A (zh) * 2013-05-09 2017-10-17 洛克威尔自动控制技术股份有限公司 用于工业自动化环境的虚拟化的系统和方法
US20160179993A1 (en) * 2014-12-22 2016-06-23 Rockwell Automation Technologies, Inc. Predictive analysis having data source integration for industrial automation
CN108513655A (zh) * 2015-10-13 2018-09-07 施耐德电器工业公司 软件定义自动化系统及其架构
US20180321662A1 (en) * 2017-05-01 2018-11-08 Fisher-Rosemount Systems, Inc. Open architecture industrial control system
CN109213702A (zh) * 2017-06-30 2019-01-15 伊姆西Ip控股有限责任公司 虚拟机环境中的虚拟双控制模块之间的通信
CN109597374A (zh) * 2017-10-02 2019-04-09 费希尔-罗斯蒙特系统公司 用于调试的i/o虚拟化

Also Published As

Publication number Publication date
CN112068496A (zh) 2020-12-11
DE102020115456A1 (de) 2021-01-21
JP7483511B2 (ja) 2024-05-15
CN112068494A (zh) 2020-12-11
US11599100B2 (en) 2023-03-07
JP2020201950A (ja) 2020-12-17
JP2020201949A (ja) 2020-12-17
JP2020201953A (ja) 2020-12-17
US20200387146A1 (en) 2020-12-10
CN112068498B (zh) 2024-04-05
JP2020201952A (ja) 2020-12-17
JP2020201954A (ja) 2020-12-17
JP7483510B2 (ja) 2024-05-15
US11537112B2 (en) 2022-12-27
CN112068497B (zh) 2024-06-18
CN112068498A (zh) 2020-12-11
GB2623201A (en) 2024-04-10
US11422543B2 (en) 2022-08-23
CN112068499A (zh) 2020-12-11
CN112068495A (zh) 2020-12-11
US20200387143A1 (en) 2020-12-10
CN112068495B (zh) 2024-06-18
US20230113527A1 (en) 2023-04-13
JP7429610B2 (ja) 2024-02-08
GB202316290D0 (en) 2023-12-06
JP2020201951A (ja) 2020-12-17
US20200387144A1 (en) 2020-12-10
JP7453064B2 (ja) 2024-03-19
US20200387149A1 (en) 2020-12-10
US11550311B2 (en) 2023-01-10

Similar Documents

Publication Publication Date Title
CN112068497B (zh) 切换过程控制系统节点的方法和系统
US11726463B2 (en) Industrial control system architecture for real-time simulation and process control
US11747797B2 (en) Publish/subscribe protocol for real-time process control
US11747798B2 (en) Virtualized real-time I/O in process control systems
US12019431B2 (en) Ease of node switchovers in process control systems

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