Edge Gateway System for Secure, Publicly Published Process Plant Data Distribution
The edge gateway system addresses the challenge of securely delivering process plant data by using field orientation components to filter and send data through a unidirectional data diode to edge orientation components, ensuring secure and efficient data transfer to external systems.
Patent Information
- Application Number
- JP2020152667
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2019-09-20
- Filing Date
- 2020-09-11
- Publication Date
- 2025-03-18
- Estimated Expiration
- 2040-09-11
AI Technical Summary
Existing process control systems face challenges in securely delivering process plant-related data to external systems, particularly due to the risk of cyber intrusions and malicious attacks that can compromise the confidentiality, integrity, and availability of data.
An edge gateway system is introduced, comprising field orientation components connected to process plant networks, which acquire and filter relevant data using interest lists. This data is then sent to edge orientation components via a unidirectional data diode, ensuring secure and controlled data transfer to external systems.
The edge gateway system effectively secures the transfer of process plant data, reducing the risk of cyber threats while enabling efficient data consumption by external systems, thus enhancing the security and reliability of process control systems.
Smart Images

Figure 0007648354000001 
Figure 0007648354000002 
Figure 0007648354000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates generally to process plants and process control systems, and more specifically to ensuring delivery of process plant related data from the process plant / process control system to external systems that utilize or consume the process plant related data. [Background technology]
[0002] Distributed process control systems, such as those used in chemical, petroleum, pharmaceutical, paper product processing, or other process plants, typically include one or more process controllers communicatively coupled to one or more field devices via an analog bus, a digital bus, or an analog / digital coupled bus, or via a wireless communication link or network. The field devices, which may be, for example, valves, valve positioners, switches, and transmitters (e.g., temperature, pressure, level and flow sensors), are positioned within the process environment and generally perform physical or process control functions, such as opening and closing valves, measuring process parameters such as pressure, temperature, etc., to control one or more processes running within the process plant or system. Smart field devices, such as field devices conforming to the well-known Fieldbus protocol, may also perform control calculations, alarm functions, and other control functions typically implemented within a controller. A process controller, which is also typically located within a plant environment, receives signals indicative of process measurements made by the field devices and / or other information regarding the field devices, executes a controller application that executes different control modules that, for example, make process control decisions, generates control signals based on the received information, and interfaces with control modules or blocks implemented in the field devices, such as HART®, WirelessHART®, and FOUNDATION® Fieldbus field devices. The control modules within the controller send control signals over communication lines or links to the field devices, thereby controlling the operation of at least a portion of a process plant or system.
[0003] Information from the field devices and controllers is typically made available over a data highway to one or more other hardware devices, such as operator workstations, personal computers or computing devices, data historians, report generators, centralized databases, or other centralized computing devices, typically located in a control room or other location away from the more austere plant environment. Each of these hardware devices is typically centralized throughout the process plant, or throughout a portion of the process plant. These hardware devices execute applications that may enable operators to perform functions related to the control of the process and / or operation of the process plant, such as, for example, changing settings of process control routines, modifying the operation of control modules in controllers or field devices, viewing the current state of the process, viewing alarms generated by field devices and controllers, simulating the operation of the process for purposes of training personnel or testing process control software, maintaining and updating configuration databases, etc. The data highways utilized by the hardware devices, controllers, and field devices may include wired communication paths, wireless communication paths, or a combination of wired and wireless communication paths.
[0004] As an example, the DeltaV™ control system sold by Emerson Automation Solutions includes multiple applications stored in and executed by different devices located at various locations within a process plant. Configuration applications residing in one or more workstations or computing devices allow users to create or modify process control modules and download these process control modules over a data highway to dedicated distributed controllers. Typically, these control modules are composed of communicatively interconnected function blocks that are objects in an object-oriented programming protocol that perform functions within a control scheme based on inputs thereto and provide outputs to other function blocks in the control scheme. The configuration application may also allow the configuration designer to create or modify operator interfaces that are used by viewing applications to display data to an operator and to allow the operator to change settings such as set points within a process control routine. Each dedicated controller, and in some cases one or more field devices, stores and executes respective controller applications that execute the control modules assigned to them and downloaded to implement the actual process control functions. A visibility application may run on one or more operator workstations (or one or more remote computing devices communicatively connected to the operator workstations and the data highway) and may receive data from the controller application via the data highway and display this data to a process control system designer, operator, or user using a user interface to provide any of a number of different views, such as an operator's view, an engineer's view, a technician's view, etc.While a data historian application is typically stored on and executed by a data historian device that collects and stores some or all of the data provided over the data highway, a configuration database application may be run on an even further remote computer attached to the data highway to store the current process control routine configuration and data associated therewith. Alternatively, the configuration database may be located on the same workstation as the configuration application.
[0005] Generally speaking, a process control system of a process plant includes field devices, controllers, workstations, and other devices interconnected by a set of hierarchical networks and buses. Similarly, the process control system may be connected with various business and external networks to, for example, reduce manufacturing and operation costs, increase productivity and efficiency, provide timely process control and / or process plant information, and the like. Meanwhile, the interconnection of the process plant and / or process control system to enterprise and / or external networks and systems increases the risk of cyber intrusion and / or malicious cyber attacks that may result from anticipated vulnerabilities in commercial systems and applications, such as those used in enterprise and / or external networks. Cyber intrusion and malicious cyber attacks of the process plant, network, and / or control system may adversely affect the confidentiality, integrity, and / or availability of information assets, which are generally similar vulnerabilities to those of general-purpose computing networks. However, unlike general-purpose computer networks, cyber intrusion of the process plant, network, and / or control system may result in damage, destruction, and / or loss of plant equipment, products, and other physical assets, as well as loss of human life. For example, a cyber intrusion may cause processes to become uncontrollable, thereby resulting in explosions, fires, floods, exposure to hazardous materials, etc. Therefore, protecting communications associated with process control plants and systems is of paramount importance. Summary of the Invention
[0006] In one embodiment, an edge gateway system for securely delivering data associated with a process plant from a process plant for consumption by one or more external systems is disclosed. The edge gateway system includes a field facing component communicatively connected to one or more process plant networks of the process plant, the field facing component including respective interfaces to the one or more process plant networks, one or more processors, and one or more non-transient memories. The one or more non-transient memories of the field facing component store one or more interest lists, each interest list indicating respective data that the field facing component allows to be exposed to the one or more external systems for consumption, each releasable data indicated by each interest list corresponding to respective data content generated by a respective one or more devices of the process plant while the process plant is operating to control an industrial process, and a releasable data list indicated by the one or more interest lists defining a unique set of data of the entire process plant data acquired by the field facing component that the field facing component allows to be exposed to the one or more external systems for consumption. The one or more non-transitory memories of the field facing components further store computer-executable instructions that, when executed by the one or more processors, cause the field facing components to obtain publishable data indicated by the one or more interest lists and transmit the obtained publishable data to an edge facing component of the edge gateway system to make the obtained publishable data consumable by one or more external systems via the edge facing component.
[0007] In one embodiment, a method is disclosed for securely delivering data associated with a process plant from a process plant via an edge gateway system for consumption by one or more external systems. The method includes obtaining, at a field facing component of the edge gateway system, one or more interest lists and storing the one or more interest lists in one or more memories accessible to the field facing component. Each interest list indicates respective data that can be made available for publishing to one or more external systems for consumption by the process plant, each of the publishable data indicated by each interest list corresponding to a respective data content generated by a respective one or more devices of the process plant while the process plant is operating to control an industrial process, and the publishable data list indicated by the one or more interest lists defines a unique set of data across the process plant data acquired by the field facing component that the field facing component enables for publishing to the one or more external systems for consumption. The method further includes obtaining, by the field facing component, the publishable data indicated by the one or more interest lists and transmitting, by the field facing component, the acquired publishable data to an edge facing component of the edge gateway system, thereby making the acquired publishable data available for consumption by one or more external systems via the edge gateway system. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a block diagram of an example edge gateway system for an industrial process plant. [Diagram 2]FIG. 1 is a block diagram of an exemplary industrial process plant, particularly illustrating the interconnections between various exemplary components of the process plant or process control system, the process control system itself, and other exemplary associated systems and / or networks with a similar security level as the process plant. [Diagram 3] FIG. 1 is a block diagram of example field facing components of an edge gateway system for a process plant or process control system. [Figure 4A] 1 illustrates an example data type of an example publishable data type system generated by a field-facing component of an edge gateway system for a process plant or process control system. [Figure 4B] 1 illustrates an example data type of an example publishable data type system generated by a field-facing component of an edge gateway system for a process plant or process control system. [Figure 4C] 1 illustrates an example data type of an example publishable data type system generated by a field-facing component of an edge gateway system for a process plant or process control system. [Figure 5A] FIG. 1 is a block diagram of a first portion of edge facing components of an edge gateway system for a process plant or process control system. [Figure 5B] FIG. 5B is a block diagram of a second portion of the edge-facing component of FIG. 5A. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] Protecting process plants and process control systems from cyber intrusions and malicious cyber attacks typically involves the use of a layered or leveled security hierarchy, with at least some layers or levels protected using firewalls and other security mechanisms. Using the Purdue Model for Control Hierarchy logical framework standardized by the International Society of Automation (ISA) 95.01-International Electrotechnical Commission (IEC) 62264-1 as an exemplary framework, process control systems are typically classified as security levels 0-2 (e.g., OT (operational techniques) levels, where there is a high level of confidence in the safety and validity of messages, packets, and other communications), while manufacturing, corporate, and enterprise systems are typically classified as security levels 3-5 (e.g., IT (information techniques) levels, where there is a low level of confidence). For example, process plant systems, networks, and devices at security levels 0-3 may be protected from threats from a corporate network at security levels 4-5 and / or from any external networks above security level 5 that utilize the corporate network, for example, by using a demilitarized zone (DMZ) and / or one or more firewalls. However, as more services and applications that manipulate process plant data move toward running remotely, e.g., outside the process plant or on external networks (e.g., security level 4 and / or 5 within an enterprise or business associated with, owned, and / or operated by the process plant) and systems, and / or on networks and systems external to the enterprise or business (e.g., above security level 5 over the Internet or other public networks), more robust techniques are needed to prevent process plant systems, networks, and devices from being compromised.
[0010] The novel systems, components, apparatus, methods, and techniques described herein address these and other security issues associated with process plants and their networks, and are particularly directed to securely delivering process plant-related data to one or more external systems that are consumers of the process plant-related data.
[0011] To illustrate, FIG. 1 is a block diagram of an exemplary edge gateway system 1 that securely distributes process plant related data (e.g., field data) from a process plant 5 to one or more external data consuming applications and / or systems, which may include enterprise applications and / or systems (e.g., IT level security, such as security levels 3-5) and / or third party applications and / or systems. The edge gateway system 1 includes a field facing component 10 that is communicatively connected to an edge facing component 12 via a data diode 15. The field facing component 10 includes one or more processors 18 and one or more non-transitory memory or data storage devices 20 that store at least one set of data and at least one set of computer executable instructions, the at least one set of computer executable instructions executable by the one or more processors 18. For example, as shown in FIG. 1, the one or more memories 20 of the field facing component 10 store respective data sets, such as one or more interest lists 22, a system of exposable data types 24A, and optionally other data sets (not shown). The one or more memories 20 of the field facing components 10 further store computer executable instructions for a data typer 25 and may also store other sets of computer executable instructions (not shown). The field facing components 10 are communicatively connected to one or more process plant communication networks, data networks, and / or links 28, which may include any number of wired and / or wireless communication networks, data networks, and / or links communicatively connecting various devices, and / or other data sources 30 associated with the process plant 5 and generating data during operation of the process plant 5 to control an industrial process, for example. A more detailed description of embodiments of the field facing components 10 and their subcomponents of the edge gateway system 1 are provided elsewhere within this disclosure.
[0012] The edge-facing component 12 of the edge gateway system 1 includes one or more processors 35 and one or more non-transitory memory or data storage devices 38 that store at least one set of data and at least one set of computer-executable instructions executable by the one or more processors 35. For example, as shown in FIG. 1, the one or more memories 38 of the edge-facing component 12 store at least a partial copy 24B of the system of exposable data types 24A of the field-facing component 10, with respective data sets corresponding to a data lake 40 and a context knowledge repository 42, and the one or more memories 38 of the edge-facing component 12 store respective computer-executable instructions for a context knowledge miner 45 and one or more access mechanisms 48 for the context knowledge repository 42. Although not shown in FIG. 1, it will be appreciated that the one or more memories 38 of the edge-facing component 12 may store other data sets and / or other sets of computer-executable instructions. As also shown in FIG. 1 , the edge-facing components 12 of the edge gateway system 1 are communicatively connected to one or more external data consuming systems 8 via one or more external communication networks, data networks, and / or links 50. The one or more external communication networks, data networks, and / or links 50 may include any number of wired and / or wireless communication networks, data networks, and / or links, and may include any number of private and / or public networks and / or links. The one or more external systems 8 may each be implemented using any suitable technique, such as a server bank, a cloud computing system, and may include any number of public and / or private computing systems that may run various applications (third-party applications, websites, etc.). A more detailed description of embodiments of the edge-facing components 12 and their subcomponents is provided elsewhere within this disclosure.
[0013] As shown in FIG. 1, the field facing component 10 and the edge facing component 12 are interconnected via a data diode 15 (although in some implementations (not shown) of the edge gateway system 1, the data diode 15 may be omitted and the field facing component 10 and the edge facing component 12 may be directly connected or may be integral and be a single logical and / or physical component). In any case, as shown in FIG. 1, the data diode 15 includes one or more transmission media through which data (e.g., electronic data) is transmitted from the field facing component 10 to the edge facing component 12, and the data diode 15 is the only communication connection between the field facing component 10 and the edge facing component 12. In a preferred embodiment, the data diode 15 is unidirectional, such that any and all types of data (e.g., signaling data, control data, management data, payload data, etc.) flow only from the field facing component 10 to the edge facing component 12 and do not flow (and indeed, in some embodiments, cannot physically flow) from the edge facing component 12 to the field facing component 10. That is, data diode 15 may be physically and / or logically configured to prevent any and all types of data (e.g., signaling data, control data, management data, payload data, etc.) from flowing from edge facing component 12 to field facing component 10. In one example, unidirectional data diode 15 is implemented using a fiber optic link or cable or other suitable type of high bandwidth hardware and / or software transmission medium such as, for example, an Ethernet link, a wireless data diode, a software defined data diode, etc.In another example, the hardware and / or software of unidirectional data diode 15 may instead be configured to prevent the flow of any type of data (e.g., signaling data, control data, management data, payload data, etc.) from edge facing component 12 to field facing component 10 while supporting the flow of data from field facing component 10 to edge facing component 12. For example, physical ports of edge facing component 12 that would otherwise receive data from one or more external systems 8 may be blocked, disabled, and / or omitted.
[0014] For further security, data transferred from the field facing component 10 to the edge facing component 12 through the data diode 15 may be encrypted by the field facing component 10 and decrypted by the edge facing component 12. Additionally, for efficiency, the data diode 15 is configured to support high throughput data streaming, such as at a rate of 100K parameters per second or more. Indeed, in some embodiments, the data diode 15 may operate at speeds of 1 Gigabit per second or more. For example, the data diode 15 may be implemented using a fiber optic link or cable, or other suitable type of high bandwidth hardware and / or software transmission medium, such as, for example, an Ethernet link, a wireless data diode, a software-defined data diode, etc., to support high throughput data streaming capabilities. Such high bandwidth hardware and / or software transmission medium may also be implemented with unidirectional transmit capability and no receive capability for the field facing component 10, thereby further enhancing unidirectional data transmission in only one direction, from the field facing component 10 to the edge facing component 12. Additionally, the data diode 15 is easily scalable to accommodate system growth. For example, multiple cores and / or multiple threads may be added and / or utilized to support system growth and a corresponding increase in the amount and speed of data transferred from the field facing components 10 to the edge facing components 12.
[0015] Generally speaking, the edge gateway system 1 securely connects and / or bridges the process plant 5 and associated systems at a lower numerical security level with one or more data consuming systems 8 at a higher numerical security level. For example, with reference to the Purdue model (or other similar security hierarchy), the data sources 30 and networks / links 28 through which the edge gateway system 1 obtains process plant related data may be at lower numerical security levels (e.g., security level 0 to security level 2) and may include, for example, process control systems, safety instrumented systems, configuration systems, analysis systems, communication / networking systems, asset management systems, diagnostic and / or testing tools and / or systems, commissioning tools and / or systems, user devices and / or operator interfaces, historian systems, batch systems, software defined networks, virtual networks such as virtual private networks, virtual local area networks (VLANs), virtual extensible local area networks (VXLANs), and other systems, networks, applications, and / or devices associated with the process plant 5. Thus, for ease of discussion herein, and not for purposes of limitation, the term "process plant 5" is used to collectively refer to the physical process plant and other systems associated with and communicatively connected to the physical process plant that generate and / or communicate data of lower number security levels.
[0016] In the edge gateway system 1 of FIG. 1 , the field facing components 10 that acquire and initially process process plant related data (e.g., field data) generated by the process plant 5 may be at security level 2 to security level 3, and the data diode 15 and edge facing components 12 may be at security level 3. The one or more external data consuming systems 8 may be at security level 4 or higher and may include any number of public and / or private systems and various applications running thereon, such as enterprise applications and / or systems, third party applications and / or systems, publicly available applications and / or systems, websites, etc. In this manner, the edge gateway system 1 securely distributes the field data generated by the process plant and its associated systems, networks, and / or applications 5 at lower numbered security levels to systems, networks, and / or applications 8 at higher numbered security levels.
[0017] In particular, as shown in FIG. 1, the field-facing component 10 of the edge gateway system 1 acquires or collects field data from data sources 30 according to one or more interest lists 22 stored in the field-facing component 10. The interest lists 22 indicate particular process plant-related or field data generated by the process plant 5 in association with the plant 5 operating to control an industrial process, the indicated process plant-related of the field data being exposable (e.g., exposable) to external systems, networks, and / or applications 8. In this manner, the interest lists 22 included in the edge gateway system 1 provide an initial level field-facing security such that protected field data is not inadvertently released from the process plant 5 to external data consuming systems 8. The interest lists 22 may indicate particular field interest data and / or combinations thereof, such as particular runtime data, event data, historical data, configuration data, and / or other types of process plant-related data generated by devices, components and / or systems associated with the process plant 5 of lower numerical security levels (e.g., security levels 0-2). Interest list 22 may be configured and / or defined via an interest manager (not shown in FIG. 1), which is described in more detail elsewhere in this disclosure.
[0018] Additionally, in the field facing component 10, the data typer 25 types each of the retrieved interest list data content according to a system of exposable data types 24A. Generally speaking, the system of exposable data types 24A defines or configures a system of data types (including data definitions, names, values, fields, structures, classes, objects, etc.) that are published or made available to the external data consuming system 8. Additionally, the exposable data system 24A defines names, mappings, conversions, groupings, value assignments, and / or other arrangements of process plant related or field data types into the exposable data types such that the process plant related data content may be utilized and understood by the external data consuming system 8. The terms "process plant related data types" or "field data types" used interchangeably herein generally refer to data types (e.g., data definitions, names, values, fields, structures, classes, objects, etc.) that are defined and / or configured for use with applications, devices, components, systems, and / or networks of the process plant 5 and its associated systems at a lower number security level. In one embodiment, the exposeable data type system 24A may be defined or configured via an interest manager (e.g., in a manner as described elsewhere in this disclosure). In any event, the exposeable data system 24A enables the external system 8 to interpret process plant related / field data generated by the process plant 5 and associated lower security level systems without the external system 8 having to be aware of any internal data definitions and / or configurations of the plant 5, and without the external system 8 having to query and / or initiate communication with and / or send responses to the process plant 5. In this manner, the exposeable data type system 24A and data typers 25 of the edge gateway system 1 further protect the process plant 5 from possible security breaches from the external system 8.The exposable data type system 24A and data typer 25 are described in more detail elsewhere in this disclosure.
[0019] At least through the use of the publishable data type system 24A and the data typer 25, the data diode 15 may be a truly unidirectional data diode. Currently known data diodes provide a unidirectional flow of content data, but also allow for a bidirectional flow of signaling, control, and / or management material by thus allowing acknowledgments and / or error conditions to be communicated from the data receiving end to the data sending end. However, the data diode 15 of the edge gateway system 1 may be truly unidirectional in that there is no data flow of any type from its data receiving end to its data sending end. Indeed, in an embodiment, the data diode 15 is physically configured to prevent any type of data (e.g., signaling, control, management, content, etc.) from being distributed from the edge facing component 12 to the field facing component 10, such as in an embodiment in which the data diode 15 is implemented via an optical transmission medium. Thus, at least through the truly unidirectional nature of the data diode 15, the data diode 15 of the edge gateway system 1 further protects the process plant 5 from possible security breaches from external systems 8.
[0020] In the edge-facing component 12 of the edge gateway system 1, the typed field content data received from the field-facing component 10 via the data diode 15 is stored in a data lake 40. A context knowledge miner 45 mines the data lake 40 to discover relationships and associations between the various field content data stored in the data lake 40 and creates / modifies / updates a context knowledge repository 48 such that the context knowledge repository 48 includes a representation of both the received field content data and the discovered relationships and / or associations (e.g., the context of the received field content data). In this manner, the context knowledge repository 48 stores both the process plant-related or field content data (e.g., runtime data, event data, historical data, and / or other types of data provided by the process plant 5, as well as context information indicating relationships between the provided process plant-related / field content data, conditions corresponding to the generation, delivery, and / or receipt of the process plant-related / field content data within the process plant 5, and / or the context of other types of process plant-related / field content data. The knowledge stored in the context knowledge repository 48 (e.g., the content data and associated context information, and optionally other data) can be exposed (e.g., made available) to one or more external data consuming systems 8.
[0021] Indeed, the edge facing components 12 provide one or more access mechanisms 48 through which external data consuming systems 8 may access at least a portion of the knowledge stored in the context knowledge repository 48. Each access mechanism may include yet another level of protection against possible security breaches from the external systems 8. For example, the access mechanisms 48 may be implemented using application programming interfaces (APIs), containers, etc. to help prevent unauthorized access by external systems to the context knowledge repository 48 and / or the process plant 5. In an embodiment, at least one of the access mechanisms 48 may include a respective server or protected application running on the edge facing components 12, such as a search engine, where a server or private application (e.g., a server-specific or application-specific API, etc.) is exposed to the external systems 8 for their use, and a unique access mechanism for the server or private application. The edge facing components 12 of the edge gateway system 1 and its subcomponents are discussed in more detail elsewhere in this disclosure.
[0022] Generally speaking, the features, components, and architecture of the edge gateway system 1 provide nearly unlimited access to process plant related data from external, data consuming systems 8 in a highly secure manner and without impacting the performance of the process plant 5. Furthermore, when the edge gateway system 1 provides the process plant related data to the external systems 8 in a contextual manner, e.g., providing process plant related content data within the context of the configuration of the process plant 5, the external systems 8 may more quickly and easily find and use the process plant related data. Furthermore, the edge gateway system 1 enables a variety of different types of data consuming applications, such as mobile connectivity applications, advanced analytics applications, open systems technology applications (e.g., Node.JS, Docker, Linux, etc.), custom applications, IoT applications, IIoT applications, business and / or enterprise applications and / or enterprise applications (e.g., Excel, Power BI, etc.), and / or other types of applications, to operate securely and easily with contextual knowledge corresponding to the process plant 5. Additionally, the edge gateway system 1 is readily adaptable to aggregate process plant related data from multiple process plants to discover relevant aggregated knowledge therefrom, as well as to aggregate data from external systems at higher numerical security levels (such as weather forecasting systems, supply chain systems, financial systems, inventory control systems, etc.) to discover relevant aggregated knowledge therefrom.
[0023] It should be noted that while FIG. 1 illustrates the edge gateway system 1 as including a single field-facing component 10 communicatively connected to the edge-facing component 12 via a unidirectional data diode 15, this is only one of many possible arrangements. For example, in some embodiments, the field-facing component 10 and the edge-facing component 12 may be implemented as integrated components within the edge gateway system 1, and the data diode 15 may be omitted. In some embodiments, the field-facing component 10 and the data diode 15 may be implemented as integrated components of the edge gateway system 1, or the data diode 15 and the edge-facing component 12 may be implemented as integrated components. In some embodiments, multiple instances of the data diode 15 may be included in the edge gateway system 1, such as when an integrated field-facing component 10 / data diode instance 15 is communicatively connected to an integrated data diode instance 15 / edge-facing component 12. In other embodiments, the edge gateway system 1 may include a single edge-facing component 12 communicatively connected to multiple field-facing components 10 via respective data diodes 15. In these embodiments, the edge gateway system 1 may serve an entire process plant site and data from the entire site may be aggregated in the edge facing components 12 and manipulated by various applications such as monitoring applications, analytical applications, reporting applications, display applications, etc. A single edge facing component 12 and multiple field facing components 10 configuration may be equally useful for serving multiple process plant sites, multiple process control systems, and / or other distributed configurations across an enterprise.
[0024] Process plants and associated data sources Figure 2 is a block diagram of an example process plant 100 configured to control an industrial process during online or runtime operation, from which process plant related information may be securely distributed via an embodiment of an edge gateway system 1. For example, the process plant 5 of Figure 1 may include at least a portion of the process plant 100 of Figure 2. As shown in Figure 2, the process plant 100 is communicatively connected to an edge gateway system 102, which may be, for example, an embodiment of the edge gateway system 1 of Figure 1.
[0025] The process plant 100 (also referred to interchangeably herein as a process control system 100 or process control environment 100) includes one or more process controllers that receive signals indicative of process and / or other types of measurements made by field devices, process this information to implement control routines, and generate control signals that are transmitted over wired or wireless process control communication links or networks to other field devices to control the operation of an industrial process within the plant 100. Typically, at least one field device performs a physical function (e.g., opening or closing a valve, raising or lowering a temperature, taking measurements, sensing a condition, etc.) to control the operation of a process. Some types of field devices communicate with a controller using I / O devices and / or I / O electronic marshalling devices, hubs, services, or systems. The process controllers, field devices, and I / O devices may be wired or wireless, and any number and combination of wired and wireless process controllers, field devices, and I / O devices may be included within the process plant environment or system 100.
[0026] 2 shows a process controller 111 communicatively coupled to wired field devices 115-122 via input / output (I / O) cards 126 and 128, and to wireless field devices 140-146 via a wireless gateway 135 and a process control data highway or backbone 110. The process control data highway 110 may include one or more wired and / or wireless communication links and may be implemented using any desired or suitable communication protocol, such as, for example, an Ethernet protocol, IP or other packet protocol, etc. In some configurations (not shown), the controller 111 may be communicatively coupled to the wireless gateway 135 using one or more communications networks other than or in addition to the backbone 110, such as by using any number of other wired or wireless communications links supporting one or more communications, data, and / or industrial automation protocols, e.g., Wi-Fi or other IEEE 802.11 compliant wireless local area network protocols, mobile communications protocols (e.g., WiMAX, LTE, or other ITU-R compatible protocols), Bluetooth®, HART®, WirelessHART®, HART-IP, other packet protocols, streaming protocols, Profibus, FOUNDATION® Fieldbus, etc.
[0027] The controller 111 may be, by way of example, a DeltaV controller sold by Emerson Automation Solutions and may operate to implement a batch or continuous process using at least some of the field devices 115-122 and 140-146. In one embodiment, in addition to being communicatively connected to the process control data highway 110, the controller 111 is also communicatively connected to at least some of the field devices 115-122 and 140-146 using any desired hardware and software, for example, associated with standard 4-20 mA devices, I / O cards 126, 128, and / or any smart communication protocol, such as FOUNDATION® Fieldbus protocol, HART® protocol, WirelessHART® protocol, etc. In FIG. 2, the controller 111, the field devices 115-122, and the I / O cards 126, 128 are wired devices and the field devices 140-146 are wireless field devices. Of course, the wired field devices 115-122 and the wireless field devices 140-146 may conform to any other desired standard(s) or protocol, such as any wired or wireless protocol, including any standard or protocol developed in the future.
[0028] The process controller 111 of FIG. 2 includes a processor 130 that implements or monitors one or more process control routines 138 (e.g., stored in memory 132). To this end, the processor 130 is configured to communicate with the field devices 115-122 and 140-146, and with other nodes communicatively connected to the controller 111. It should be noted that any control routines or modules described herein may have portions implemented or performed by different controllers or other devices, if so desired. Similarly, the control routines or modules 138 described herein implemented within the process control system 100 may take any form, including software, firmware, hardware, etc. The control routines may be implemented in any desired software format, such as using object-oriented programming, ladder logic, sequential function charts, function block diagrams, or any other software programming language or design paradigm. The control routines 138 may be stored in any desired type of memory 132, such as random access memory (RAM) or read-only memory (ROM). Similarly, the control routines 138 may be hard-coded into, for example, one or more EPROMs, EEPROMs, application specific integrated circuits (ASICs), or any other hardware or firmware elements. Thus, the controller 111 may be configured to implement the control strategies or control routines in any desired manner.
[0029] The controller 111 implements control strategies using what are generally referred to as function blocks, each of which is an object or other portion (e.g., a subroutine) of an overall control routine, and which operates with other function blocks (through communications called links) to implement process control loops within the process control system 100. Control-based function blocks typically perform one of the following functions: an input function, such as those associated with a transmitter, sensor, or other process parameter measurement device; a control function, such as those associated with a control routine that performs control, such as PID, fuzzy logic, etc.; or an output function that controls the operation of some device, such as a valve, to perform some physical function within the process control system 100. Of course, hybrid and other types of function blocks exist. Function blocks may be stored within and executed by the controller 111, as typically the case when these function blocks are used for or associated with some types of smart field devices, such as standard 4-20 mA devices and HART® devices, or may be stored within and implemented by the field device itself, in the case of FOUNDATION® Fieldbus devices. The controller 111 may include one or more control routines 138 that may implement one or more control loops that are executed by executing one or more of the functional blocks.
[0030] Wired field devices 115-122 may be any type of device, such as sensors, valves, transmitters, positioners, etc., while I / O cards 126 and 128 may be any type of I / O device conforming to any desired communication or controller protocol. In Fig. 2, field devices 115-118 are standard 4-20 mA or HART devices that communicate to I / O card 126 via analog lines or combined analog and digital lines, while field devices 119-122 are smart devices, such as FOUNDATION Fieldbus field devices, that communicate to I / O card 128 via a digital bus using the FOUNDATION Fieldbus communication protocol. However, in some embodiments, at least some of the wired field devices 115, 116 and 118-121 and / or at least some of the I / O cards 126, 128 additionally or alternatively communicate with the controller 111 using the process control data highway 110 and / or by using other suitable control system protocols (e.g., ProcessBus, DeviceNet, Foundation Fieldbus, ControlNet, Modbus, HART, etc.).
[0031] In FIG. 2 , the wireless field devices 140-146 communicate over a wireless process control communication network 170 using a wireless protocol such as the WirelessHART® protocol. Such wireless field devices 140-146 may communicate directly with one or more other devices or nodes of the wireless network 170 that are also configured to communicate wirelessly (e.g., using the wireless protocol or another wireless protocol). To communicate with other nodes not configured to communicate wirelessly, the wireless field devices 140-146 may utilize a wireless gateway 135 connected to the process control data highway 110 or to another process control communication network. The wireless gateway 135 provides access to the various wireless devices 140-158 of the wireless communication network 170. In particular, the wireless gateway 135 provides a communicative coupling between the wireless devices 140-158, the wired devices 115-128, and / or other nodes or devices of the process control plant 100. For example, the wireless gateway 135 may provide a communicative coupling by using the process control data highway 110 and / or by using one or more other communication networks of the process plant 100 .
[0032] Similar to the wired field devices 115-122, the wireless field devices 140-146 of the wireless network 170 perform physical control functions within the process plant 100, such as opening or closing a valve or taking a measurement of a process parameter. However, the wireless field devices 140-146 are configured to communicate using the wireless protocol of the network 170. In this manner, the wireless field devices 140-146, the wireless gateway 135, and the other wireless nodes 152-158 of the wireless network 170 are producers and consumers of wireless communication packets.
[0033] In some configurations of the process plant 100, the wireless network 170 includes non-wireless devices. For example, in FIG. 2, the field device 148 of FIG. 2 is a legacy 4-20 mA device and the field device 150 is a wired HART® device. To communicate within the network 170, the field devices 148 and 150 are connected to the wireless communication network 170 via wireless adapters 152A, 152B. The wireless adapters 152A, 152B support wireless protocols such as WirelessHART, and may also support one or more other communication protocols such as Foundation® Fieldbus, PROFIBUS, DeviceNet, etc. Additionally, in some configurations, the wireless network 170 includes one or more network access points 155A, 155B, which may be separate physical devices in wired communication with the wireless gateway 135 or may be provided within the wireless gateway 135 as an integrated device. The wireless network 170 may also include one or more routers 158 for forwarding packets from one wireless device to another within the wireless communication network 170. In Figure 2, the wireless devices 140-146 and 152-158 communicate with each other and with the wireless gateway 135 via wireless links 160 of the wireless communication network 170 and / or through the process control data highway 110.
[0034] 2, the process control system 100 includes one or more operator workstations 171 communicatively connected to the data highway 110. Through the operator workstations 171, an operator may view and monitor the run-time operation of the process plant 100, as well as perform any diagnostic, corrective, maintenance, and / or other actions that may be required. At least some of the operator workstations 171 may be located in various protected areas within or near the plant 100, such as, for example, a back-end environment of the plant 100, and in some cases, at least some of the operator workstations 171 may be communicatively connected to the plant 100 despite being located in a remote location. The operator workstations 171 may be wired or wireless computing devices.
[0035] The example process control system 100 is further shown as including a configuration application 172A and a configuration database 172B, each of which are also communicatively connected to the data highway 110. As discussed above, various instances of the configuration application 172A may run on one or more computing devices (not shown) to enable users to create or modify process control modules and / or other types of modules and download them via the data highway 110 to the controller 111 and / or other devices of the process control system 100, as well as to enable users to create or modify operator interfaces through which an operator can view data and change data settings within a process control routine. The configuration database 172B stores the created (e.g., configured) modules and / or operator interfaces. Generally, the configuration application 172A and the configuration database 172B are centralized and have a single logical appearance to the process control system 100, although multiple instances of the configuration application 172A may run simultaneously within the process control system 100, and the configuration database 172B may be implemented across multiple physical data storage devices. Thus, the configuration application 172A, the configuration database 172B, and the user interface thereto (not shown) comprise a configuration or development system 172 for a control and / or display module. Typically, but not necessarily, the user interface for the configuration system 172 is distinct from the operator workstation 171, since the user interface for the configuration system 172 is utilized by configuration and development engineers regardless of whether the plant 100 is operating in real time, but the operator workstation 171 is utilized by an operator during real-time operation of the process plant 100 (also referred to herein interchangeably as “run-time” operation of the process plant 100).
[0036] The example process control system 100 also includes a data historian application 173A and a data historian database 173B, each of which are also communicatively connected to the data highway 110. The data historian application 173A operates to collect some or all of the data provided across the data highway 110 and historize or store the data in the historian database 173B for long term storage. Like the configuration application 172A and the configuration database 172B, the data historian application 173A and the historian database 173B are centralized and have a single logical appearance to the process control system 100, although multiple instances of the data historian application 173A may run simultaneously within the process control system 100, and the data historian 173B may be implemented across multiple physical data storage devices.
[0037] In some configurations, the process control system 100 includes one or more other wireless access points 174 that communicate with other devices using other wireless protocols, such as Wi-Fi or other IEEE 802.11 compliant wireless local area network protocols, mobile communication protocols such as WiMAX (Worldwide Interoperability for Microwave Access), LTE (Long Term Evolution) or other ITU-R (International Telecommunication Union Radio Communication Sector) compatible protocols, shortwave wireless communications such as Near Field Communication (NFC) and Bluetooth, or other wireless communication protocols. Typically, such wireless access points 174 enable communication by handheld or other portable computing devices (e.g., user interface devices 175) over a respective wireless process control communication network that is different from the wireless network 170 and that supports a different wireless protocol than the wireless network 170. For example, the wireless or portable user interface devices 175 may be mobile workstations or diagnostic test equipment utilized by operators (e.g., one instance of the operator workstations 171) within the process plant 100. In some scenarios, in addition to the portable computing devices, one or more process control devices (e.g., the controller 111, the field devices 115-122, or the wireless devices 135, 140-158) also communicate using a wireless protocol supported by the access point 174.
[0038] In some configurations, the process control system 100 includes one or more gateways 176, 178 to systems outside of the instant process control system 100. Typically, such systems are customers or consumers of information generated or manipulated by the process control system 100. For example, the process control plant 100 may include a gateway node 176 for communicatively connecting the instant process plant 100 to another process plant. Additionally or alternatively, the process control plant 100 may include a gateway node 178 for communicatively connecting the proximate process plant 100 to external public or private systems, such as a laboratory system (e.g., a laboratory information management system or LIMS), an operator round database, a material handling system, a maintenance management system, a product inventory management system, a manufacturing schedule management system, a weather data system, a shipping and handling system, a packaging system, the Internet, another provider's process control system, or other external systems.
[0039] 2 only illustrates a single wireless controller 111 along with a finite number of field devices 115-122 and 140-146, wireless gateway 35, wireless adapter 152, access point 155, router 1158, and process control communications network 170 included within the exemplary process plant 100, this is merely an exemplary and non-limiting embodiment. Any number of controllers 111 may be included within the process control plant or system 100, and any of the controllers 111 may communicate with any number of wired or wireless devices and networks 115-122, 140-146, 135, 152, 155, 158, and 170 to control processes within the plant 100.
[0040] 2, and referring simultaneously to FIG. 1 for clarity of illustration and not by way of limitation, a process plant 100 is communicatively connected to an edge gateway system 102, which may be an embodiment of an edge gateway system 1. For example, the process plant 100 may be communicatively connected to the field facing components 10 of the edge gateway system 1 via one or more process plant communication networks, data networks, and / or links, directly and / or via respective gateways of the process plant 100. For example, the field facing components 10 of the edge gateway system 1 may be communicatively connected to the process plant 100 via networks 110, 170, via gateways 135, 176, 178, and / or other networks, links, and / or gateways associated with the process plant through which the field facing components 10 receive or obtain data generated by various data sources 30 associated with the process plant 100.
[0041] Generally speaking, the data sources 30 and networks / links 28 through which the edge gateway system 1 obtains process plant related data may be at lower numbered levels of the Purdue model or similar security hierarchy (e.g., Level 0 to Level 2) and may include controllers, field devices, I / O cards, and other types of process control devices. It will be further understood that the set of data sources 30 associated with the process plant is not limited to only process control devices that directly generate primary process data, but may additionally or alternatively include any devices or components within and / or associated with the process plant 100 that generate process data and / or other types of data as a result of the process plant 100 controlling an online process. For example, the set of data sources 30 may include modules, alarms, event historians, batch systems and / or historians, diagnostic devices or components that generate diagnostic data, network routing devices or components that transmit information between various components and / or devices of the process plant 100, asset management systems, configuration systems, analytics systems, mobile devices, virtual networks such as software defined networks, virtual private networks, VLANs, and / or VXLANs, and the like. Indeed, any one or more of the components shown in FIG. 2 (e.g., components 111, 115-122, 126, 128, 135, 140-146, 152, 155, 158, 160, 170, 171-176, 178) and other components not shown in FIG. 2 may be data sources 30 that generate process plant-related data that may be provided for consumption by one or more external systems 8 via the edge gateway systems 1, 102.
[0042] Field Facing Components 3 is a block diagram of a field facing component 300 that may be included in an edge gateway system, such as edge gateway system 1 or edge gateway system 102. For example, field facing component 300 may be field facing component 10 shown in FIG. 1 and / or may be communicatively coupled to process plant 100 of FIG. 2. For ease of explanation, and not by way of limitation, FIG. 3 is described with simultaneous reference to FIGS. 1 and 2, however, it is understood that field facing component 300 may be included in an edge gateway system other than edge gateway system 1 or 102 and may be communicatively coupled to a process plant other than process plant 5 or process plant 100.
[0043] 3, the field data receiver 302 of the field facing component 300 may be communicatively coupled with a process plant, such as the process plant 5 or 102, and optionally with other systems, devices, and / or applications that support and / or are associated with the process plant in runtime operation, such as process control systems, safety instrumented systems, configuration systems, analysis systems, communication / networking systems, asset management systems, diagnostic and / or testing tools and / or systems, commissioning tools and / or systems, user devices and / or operator interfaces, historian systems, batch systems, software defined networks, virtual private networks, such as VLANs and / or VXLANs, other systems, networks, applications, and / or devices associated with the process plant, etc. Generally speaking, the process plant and its support systems to which the field facing component 300 is communicatively coupled operate at the Purdue model (or a similar security hierarchy) of security levels 0-2. For ease of discussion herein, and not for purposes of limitation, the term “process plant 5” is used to collectively refer to the physical process plant with which the field-facing components 300 can communicate, as well as other systems associated with and communicatively connected to the physical process plant that generate and / or communicate data at lower numerical security levels.
[0044] The field data receiver 302 is communicatively connected to the process plant 5 via one or more links, communication networks, and / or data networks 305 of the process plant 5, collectively referred to herein as the “process plant network 305.” The process plant network 305 may include any number of wired and / or wireless links and / or networks supporting one or more communications protocols, data protocols, and / or industrial automation protocols, such as Ethernet, IP or other types of packet protocols, Wi-Fi or other IEEE 802.11 compliant wireless local area network protocols, mobile communications protocols (e.g., WiMAX, LTE, or other ITU-R compatible protocols), Bluetooth®, other standardized communications and / or data protocols (such as those established by the Internet Engineering Task Force (IETF), the Institute of Electrical and Electronics Engineers (IEEE), or the International Organization for Standardization (ISO)), HART®, WirelessHART®, HART-IP, Profibus, FOUNDATION® Fieldbus, Field Device Integration Technology (FDI), OPC (Object Linking and Embedded for Process Control) UA (Unified Architecture), other types of industrial automation protocols, and the like.For example, the process plant network 305 may include the process plant network 28, the wireless network 170, the backbone 110, and other wired and / or wireless networks and / or links available to the process plant 5 and its associated systems, such as, for example, an asset management network, a historian network, a data analytics network, a software defined network, a virtual network such as a virtual private network, a VLAN, and / or a VXLAN, a diagnostic and / or test network, a configuration network, and / or another type of network corresponding to the operation, maintenance and / or configuration of the process plant 5.
[0045] The field data receiver 302 retrieves one or more field configurations of the process plant 5 from the process plant 5 via the process plant network 305. For example, if the process plant 5 includes a DeltaV process control system provided by Emerson Automation Solutions, the field data receiver 302 retrieves one or more .FHX files in which the process control system and its components (e.g., physical, logical, and data components) are defined, for example, via the configuration application 172A. The interest manager 308 defines, creates, generates, and updates a collection or system of exposable data types 310 based on the retrieved field configuration of the process plant 5. As described in more detail elsewhere in this disclosure, the field facing components 300 forward the system or collection of exposable data types 310 to the respective edge facing components (e.g., edge facing components 12). In an exemplary embodiment, the system or collection of exposable data types 310 is the system of exposable data types 24A of FIG. 1.
[0046] Generally speaking, to define, create, generate, and update the system of exposable data types 310, the interest manager 308 extracts information from the captured field data configurations, and the captured information is made available for exposable (e.g., exposable) to external, data consuming systems 8. Whether or not certain information contained in the captured field configurations is made available for exposable to external systems 8 can be predefined. For example, it may be predefined a priori by the edge gateway system, the field facing components 300, and / or by a user via one or more interest lists 315, and / or it may be indicated in-line during the extraction process, for example, by the edge gateway system, the field facing components 300, and / or by a user. In any case, the interest manager 308 names, maps, transforms, groups, assigns values to, and / or otherwise arranges the extracted information into corresponding data types and configurations of the system of exposable data types 310, for example, using a syntax, such as a commonly understood standard or open source syntax. Thus, the exposable data type system 310 provides a common understanding of other types of exposable process plant related data contained in the field content data (which may include, for example, process plant related data types, parameter types, block types, module types, event types, history data types, equipment and equipment component types, display and display component types, and other process plant related data generated by the process plant) using a syntax that is naturally understood by external data consuming systems 8.
[0047] For example, the system of exposable data types 310 may include basic data types such as float, float with status, signed integer, unsigned integer, and other basic data types that are naturally understood by the external data consuming system 8. Additionally, the system of exposable data types 310 may include more complex data configuration type definitions that are defined and structured at least in part based on the basic data types shown in FIGS. 4A-4C. Some data types in the system of exposable data types 310 may include multiple fields, as shown in FIG. 4A by the exemplary mode type 312a defined to include four fields of type ENUM. Indeed, the system of exposable data types 310 may include types based on multiple enumerations, which may be user-defined or system-defined. For example, as shown in FIG. 4C, a portion 312b of the exemplary enumeration set included in the system of exposable data types 310 is named and defined to indicate distinct HART states utilized in the process plant 5. 4B illustrates a more complex example portion 312c in which a causal matrix (CEM) function block of a process plant 5 is defined within the exposeable data types system 310 through the use of block types. Of course, the exposeable data types system 310 may include many more exposeable data type definitions and / or configurations than the examples shown in FIGS. 4A-4C.
[0048] In general, the system or collection of exposable data types 310 generated or defined by the interest manager 308 need not conform to the data types, configurations, hierarchies, and architectures defined within the process plant 5 (although, if desired, some exposable data types 310 may be defined to conform at least partially to a defined process plant data architecture and configuration). Additionally, it is understood that the generation or definition of the system or collection of exposable data types 310 is not typically a one-to-one conversion or mapping of each defined process plant data type to an exposable data type. Rather, only process plant data types that are capable of being exposed to external data consuming systems 8 are included in the collection / system 310, and such exposable process plant data types are reorganized, rearranged, regrouped, consolidated, distributed, abstracted, defined, and / or otherwise represented in a comprehensive data type system 310 that is more useful and / or more easily utilized by the external systems 8, not only in syntax but also in the structure and arrangement of content.
[0049] In particular, as described above, in some embodiments, the interest manager 308 extracts the systems of exposable data types 310 from the captured field configuration of the process plant 5 based at least in part on one or more interest lists 315. The interest lists 315 indicate what types of process plant related data may be exposed by the field facing components 300 to external data consuming systems 8, and the interest lists 315 may be defined by a user, the field facing components 300, the edge gateway system 1, and / or some other computing system, for example, via an interest list configuration application provided by the field facing components 300. For example, the field facing components 300 may provide a web-based user interface through which a user may manually define one or more interest lists 315, for example, by using JSON (JavaScript Object Notation) or other types of scripts or notations. Additionally or alternatively, the field facing components 300, edge gateway system 1, and / or some other computing system may automatically determine or define one or more interest lists 315, for example, by using templates and best practices, by including commonly written and / or read data points (e.g., via operator interface data and / or analysis, processing historian data, mining event historian data, etc.), and / or by using other suitable automation techniques. In one embodiment, the set of interest lists 315 defines only the data of the entirety of the data acquired by the field facing components from the process plant that the field facing components 300 allow to be exposed to one or more external systems for consumption by the field facing components.Different field facing components 300 of the process plant 5 may store different sets of interest lists 315, as desired, thereby indicating the particular types of process plant related data that the hosting field facing components each allow to expose to the data consuming system 8.
[0050] The interest list may indicate, for example, names and respective groupings or arrangements of related modules, nodes, diagnostics, alarms, events, and / or other field data information that may be configured in multiple and possibly heterogeneous configurations within the process plant 5. Indeed, the interest list 315 need not conform to a configuration hierarchy and / or configuration content defined within the process plant 5 (although, if desired, the interest list 315 may be defined to conform at least in part to a defined process plant configuration hierarchy and / or configuration content). Generally speaking, the interest list 315 may be defined in any manner (e.g., organizationally, hierarchically, and / or content-wise) that is useful and / or easily utilized by external systems 8 that are consumers of the exposed process plant related data. For example, at least some of the interest lists 315 may be named to reflect particular plant equipment and / or devices (e.g., “Diesel Hydrotreater 1,” “Alkylation Unit 3,” etc.) and may be defined using parameters from a number of different modules, nodes, diagnostics, alarms, etc. defined within the process plant 5 and obtained from a number of different configurations associated with the particular plant equipment / devices.For example, the field data content ingestor 320 may utilize the specific interest list 315 to extract specific field content data (e.g., control data, I / O data, diagnostic data, device data, etc.) that are collectively identified by the specific interest list 315 as representing specific named entities (e.g., “Diesel Hydrotreater 1”, “Alkylation Unit 3”, etc.) and may store the extracted data corresponding to the specific named entities in the cache 322, e.g., as is and / or in a reorganized manner, e.g., by using the exposeable data type system 310A, such that the extracted data corresponding to the specific named entities of the specific interest 315 list is exposed to the external system 8 via the edge-facing component 12.
[0051] For example, a “Spray Tower 2” relationship list may be defined to reference a particular spray tower in process plant 5 and may include all parameters related to “Spray Tower 2” included in the field configuration, such as asset management systems, process control systems, safety instrumented systems, diagnostic tools, historian systems, software defined networks, virtual private networks, virtual networks such as VLANs, VXLANs, etc. For example, a “Spray Tower 2” interest list may include parameters indicative of the area in which spray tower 2 is located, parameters indicative of pipes, pumps, other vessels, lines, and other physical component devices included in spray tower 2 (which may be referenced in the field configuration, e.g., by device tags and other types of physical component tags or identifiers), logical process elements such as control loops and modules, control parameters and / or variables (e.g., set points, measurements, control signals, other signals, etc.), alarms, events, operational states or status, equipment or device states or conditions, timestamps, and other logical and / or display components included in and / or utilized by spray tower 2 (which may be referenced in the field configuration, e.g., by control tags, device signal tags, or other types of logical component tags or identifiers, etc.). Additionally, the “Spray Tower-2” interest listing may indicate other characteristics and / or aspects of the parameters, such as, for example, their respective units of measurement, their respective ranges, their respective target or set values, their respective control routines or other applications that utilize the parameters, their respective uses, their respective diagnostic parameters, and / or other respective characteristics and / or associated information.
[0052] In some embodiments, based on generation of the interest list 315, the interest manager 308 may determine one or more changes to one or more field configurations stored in the process plant 5 and communicate the determined changes to the configuration application 172A or other process plant related configuration applications via the process plant network 305, as indicated by reference numeral 318.
[0053] Returning to the field data receiver 302, in addition to the field configuration, the field data receiver 302 also receives field content data from the process plant 5 via the process plant network 305, including data generated by the process plant 5 while operating to control an industrial process, as well as other data related to the process plant 5 that performs control operations on the industrial process. Generally speaking, the field content data includes any type of data generated by the process plant 5, for example, by process control systems, configuration systems, analysis systems, communication / networking systems, asset management systems, diagnostic and / or testing tools and / or systems, commissioning tools and / or systems, user devices and / or operator interfaces, historian systems, batch systems, software defined networks, virtual networks such as virtual private networks, VLANs and / or VXLANs, and other systems, networks, applications, and / or devices associated with the process plant. For example, the field content data may include runtime process data, continuous process data, batch process data, batch history data, historization data, event data, alarm data, analytical data, diagnostic data, environmental data, user interface data, performance data, and / or other types of payload data generated by the data source 30. The field data receiver 302 may receive the field content data over the process plant network 305 in any protocol utilized by the process plant network 305, e.g., Ethernet, wireless HART, HART-IP, and / or other packet protocols, streaming protocols, etc.
[0054] The field content data ingestor 320 may ingest the obtained field data content based on the interest list 315, perform processing on at least a portion of the ingested field data content, store the ingested field data content in the field facing component 300 cache or other type of memory 322, and ultimately deliver it to its respective edge facing component (e.g., edge facing component 12). The field content data ingestor 320 may cooperate with the field data receiver 302 to obtain field content data for ingest in one or more different modalities. For example, in the case of field content data published by the respective source 30 and included in the interest list 315, the field content data ingestor 320 may, for example, cause the field data receiver 302 to subscribe to the publication of such field content data on behalf of the field facing component 300. In another example, for some field content data included in the interest list 315, the field content data ingestor 320 may initiate a query of the respective data sources 30 for the field content data, e.g., via polling and / or via a request / response mechanism, e.g., according to at least some of the configured or defined interest lists 312. In yet another example, for some field content data included in the interest list 315, the field content data ingestor 320 may stop or filter any field content data obtained in the field facing component 300 via the field data receiver 302 and that is not indicated in the interest list 302. In yet another embodiment, instead of defining or indicating which field content data is exposed to external sources 8, some interest lists 315 may define or indicate which types of field content data should be excluded from being exposed to external sources 8.If such unpublished field content data is received at the field facing component 300, the field content data ingestor 320 may stop or filter such field component data so that the excluded field content data is not stored in the cache 322 and is not delivered to the edge facing components.
[0055] In some embodiments, the interest list 315 may represent publishable field content interest data that is not generated by the process plant related data sources 30, but is derived or generated from field content data generated by the process plant related data sources 30. Such secondary field content data may be determined or generated by one or more calculation engines 325 invoked by the field content data ingestor 320. Generally speaking, the calculation engines 325 operate on primary field content data obtained via the process plant network 308 to generate one or more outputs, the outputs of the calculation engines 325 being defined as publishable field content data on one or more interest lists 315. The outputs of the calculation engines 325 may be stored in the cache 322 along with other primary field content data for eventual delivery to edge-facing components. The calculation engines 325 may perform computational functions such as in-stream data aggregation and / or manipulation (e.g., average, maximum, minimum, etc.). The computation engines 325 may perform more complex calculations or algorithms, such as principal component analysis (PCA), partial least squares (PLS) prediction, and / or other types of statistical calculations or analyses. The computation engines 325 may perform process control specific calculations, such as function block, shadow block, and / or control module operations. At least some of the computation engines 325 may be defined and / or configured by scripts and / or via a web-based user interface or other type of computation engine configuration application provided by the field facing components 300, and at least some of the computation engines 325 may be defined and / or configured using containers (such as Docker containers and / or other suitable types of containers) that are accessed and / or installed from the field facing components 300.
[0056] In addition to the calculation engine 325, the field content data ingestor 320 may invoke a data typer 328 to convert at least a portion of the retrieved, publishable field content data into respective publishable data types according to the publishable data type system 310. That is, the data typer 328 represents the publishable field content data using names, structures, groupings, values, arrangements, etc. defined by the publishable data type system 310. The field content data ingestor 320 stores the typed field content data in a data cache 322 as published field content data associated with the process plant 5 for delivery to edge-facing components.
[0057] The published data provider 330 of the field-facing component 300 provides the publishable data configurations and published data content to the edge-facing component corresponding to the field-facing component 300, e.g., via the data diode 15 or via some other suitable data transfer mechanism. For example, the published data provider 330 may transmit the publishable data configurations of the system 310 in a publishable data type to the edge-facing component, e.g., on behalf of the field-facing component 300, so that the edge-facing component can interpret the published data content transmitted by the field-facing component 300. The published data provider 330 may then retrieve the stored published field data content stored in the cache 322 and transmit the retrieved data to the edge-facing component. The published data provider 330 may transmit the publishable data configurations and published data content using a streaming protocol and / or a public or commonly used data exchange format, such as JSON or other standardized and / or open source data format. For example, the field-facing components 300 may provide streaming services that the exposed data providers 330 utilize to stream data to corresponding edge-facing components, e.g., via respective unidirectional data diodes 15. In one embodiment, the exposed data providers 330 wrap the exposeable data configurations and exposed data content in a streaming protocol implemented using a public or commonly used data exchange format. In some embodiments, the exposed data providers 330 transmit the exposeable data configurations and exposed data content to the edge-facing components using a proprietary or private protocol, which may be a proprietary or private streaming protocol. In some embodiments, the exposed data providers 330 encrypt the exposed data configurations and exposed data content before delivering them to the edge-facing components.
[0058] In one embodiment, the published data provider 330 publishes publishable data configurations and published data content, for example, via the data diode 15. The edge facing components subscribe to information published by the published data provider 330 of the field facing components 300, thereby obtaining the publishable data configurations and published data content that may be available to external data consumption systems 8 at the edge facing components, as described in more detail elsewhere in this disclosure.
[0059] 3, the field data receiver 302, interest manager 308, field content data ingestor 320, data typer 328, and exposed data provider 330 are depicted as separate and distinct components of the field facing components 300 for clarity of discussion only, and not by way of limitation. Indeed, any two or more of the components 302, 308, 320, 328, and 330 may be implemented as integrated components of the field facing components 300, if desired.
[0060] Edge Facing Components 5A-5B illustrate block diagrams of an edge facing component 400 that may be included in an edge gateway system, such as edge gateway system 1 of FIG. 1 or edge gateway system 102 of FIG. 2. For example, edge facing component 400 may be edge facing component 12 shown in FIG. 1 and / or may be communicatively coupled to field facing component 10 or 300, for example, via data diode 15 or another connecting link, network, or medium. For ease of explanation and not for purposes of limitation, FIGS. 5A and 5B are described with simultaneous reference to FIGS. 1-3, although it will be understood that edge facing component 400 may be included in an edge gateway system other than edge gateway system 1 or 102 and may be communicatively coupled to field facing components other than field facing component 10 or 300.
[0061] 5A, the exposed data receiver 402 of the edge facing component 400 may likewise be communicatively coupled to field facing components that may be communicatively coupled to the process plant, such as the process plant 5 or 102, and optionally other systems, devices, and / or applications that support and / or are associated with the process plant in runtime operation, such as process control systems, safety instrumented systems, configuration systems, analysis systems, communication / networking systems, asset management systems, diagnostic and / or testing tools and / or systems, commissioning tools and / or systems, user devices and / or operator interfaces, historian systems, batch systems, virtual networks such as software defined networks, virtual private networks, VLANs, and / or VXLANs, and other systems, networks, applications, and / or devices associated with the process plant. Generally speaking, the process plant and its support systems to which the field facing components corresponding to the edge facing components 400 are communicatively coupled operate at security levels 0-2 of the Purdue model (or a similar security hierarchy).
[0062] The exposed data receiver 402 of the edge facing component 400 communicatively connects the edge facing component 400 and the corresponding field facing component via one or more links, communication networks, and / or data networks. In a preferred embodiment, the exposed data receiver 402 communicatively connects the edge facing component 400 to the corresponding field facing component via a data diode, such as the unidirectional data diode 15 shown in FIG. 1. For ease of discussion and not for purposes of limitation, the edge facing component 400 is described as being communicatively connected to the field facing component via the data diode 15, although it will be appreciated that other communication connections besides the data diode 15 may interconnect the edge facing component 400 and the field facing component. For example, in some embodiments, the edge facing component 400 and the field facing component may be included in an integrated system or device.
[0063] The published data receiver 402 may receive published data configurations and published data content from the field facing components. The publishable data configurations and published data content may be received via a streaming protocol and / or via a public or commonly used data exchange format, such as JSON or other standardized and / or open source data exchange format. In some embodiments, the published data configurations and published data content may be wrapped with a streaming protocol at the edge of the field facing components, and the published data receiver 402 unwraps or extracts the published data configurations and published data content from the data stream. In some embodiments, the published data configurations and published data content may be encrypted at the edge of the field facing components, and the published data receiver 402 decrypts the information received via the data stream. In some embodiments, the field facing components publish the publishable data configurations and published data content, for example, over the data diode 15. The edge facing components 400 subscribe to information published by the field facing components, thereby obtaining the publishable data configurations and published data content from the field facing components.
[0064] The releasable data configurations received at the published data receiver 402 collectively define a system of releasable data types (e.g., system of releasable data types 24A or 310) that is being generated by the field facing components based on the process plant related configurations, such as in the manner described above. The published data receiver 402 stores the received releasable data configurations locally in one or more memories as a local copy 24B of at least a portion of the system of releasable data types 24A of the field facing components.
[0065] The published data content received at the published data receiver 402 is represented using the respective data types included in the publishable data type system 24B. The received published data content may include field content data generated by the process plant 5, such as data generated by process control systems, configuration systems, analysis systems, communication / networking systems, asset management systems, diagnostic and / or testing tools and / or systems, commissioning tools and / or systems, user devices and / or operator interfaces, historian systems, batch systems, software defined networks, virtual networks (e.g., virtual private networks, VLANs, VXLANs, etc.), and other systems, networks, applications, and / or devices associated with the process plant. For example, the field content data may include runtime process data, continuous process data, batch process data, batch history data, historization data, event data, alarm data, analysis data, diagnostic data, environmental data, user interface data, performance data, and / or other types of payload data generated by the data sources 30. Additionally, the received published data content may include data derived or generated from field content data by a field facing component corresponding to the edge facing component 400, such as by one or more computational engines 325 of the field facing component. The published data receiver 402 provides the received published data content to a published data ingestor 405 of the edge facing component 400 for interpretation, possible further processing, and storage to make the published data content (and possible additional content) available for consumption by data consuming applications and / or systems, represented in FIG. 5B by block 422.
[0066] In particular, the published data ingestor 405 utilizes a local copy of the publishable data type system 24B to interpret published data content received from the field facing components. In this manner, the published data ingestor 405 and the edge facing components 400 need not be aware of (and in fact are not aware of) the internal or native data definitions and / or configurations of the process plant 5. That is, the edge facing components 400 interpret the received published data content based on the received publishable data configurations stored in the publishable data type system 24A corresponding to the field facing components, and the edge facing components 400 do not need to send communications to the field facing components to obtain and / or adjust the data configurations. This technique protects the process plant 5 from possible security breaches since it is not necessary to send management and / or control messages from the edge facing components to the field facing components communicatively connected to the process plant 5, thereby eliminating a likely point of entry for malicious actors. Additionally, this technique allows configuration changes at the process plant 5 to be propagated in-line, in real-time, and incrementally to the edge facing components 400 as needed. Furthermore, this technique allows a single edge facing component 400 to provide services to many different field facing components that utilize different exposable data type systems.
[0067] In some embodiments, the published data ingestor 405 of the edge-facing component 400 may further derive and / or generate additional data from the received published data content. For example, the published data receiver 402 may invoke one or more computation engines 408 to manipulate at least a portion of the received published data content, thereby generating additional data content available to the data consuming application and / or system 422. The computation engines 408 may be stored in the edge-facing component 400 and may perform computational functions such as in-stream data aggregation and / or manipulation (e.g., average, maximum, minimum, etc.) on payload values of the data. Some computation engines 408 may be configured to perform more complex calculations or algorithms, such as principal component analysis (PCA), partial least squares (PLS) prediction, and / or other types of statistical calculations or analyses, calculation of key performance indicators (KPIs), and some computation engines 408 may be configured to drive events. At least some of the computation engines 408 may be defined and / or configured by scripts and / or via a web-based user interface or other type of computation engine configuration application provided by the edge-facing components 400, and at least some of the computation engines 400 may be defined and / or configured by using containers accessible and / or installed in the edge-facing components 400. Indeed, some of the computation engines 408 may be made available for use by data consuming applications and / or systems 422, such as in a manner as described elsewhere in this disclosure.
[0068] The published data ingestor 405 stores the received published data content and output generated by the computation engine 408 in a data lake 410, which may be, for example, the data lake 40 of FIG. 1. Because the data lake 40 stores field content data received from field-facing components, the data lake 40 mirrors at least a portion of the overall data related to the process plant 5 (e.g., runtime data, configuration data, event data, historical data, and other types of data generated by and associated with the process plant 5), and the process plant related data stored in the data lake 40 is exposable to (e.g., made available for use by) external data consuming systems 8. In some process plants, all data generated by the process plant 5 is mirrored in the edge-facing components 400 and exposed to external systems 8, while in other process plants, only a subset of all data generated by the process plant 5 is mirrored in the edge-facing components 400 and exposed to data consuming applications and / or systems 8, the subset being defined by a collection of a set of interest lists 22, 315 present across the set of field-facing components of the process plant 5.
[0069] As previously discussed, in some implementations, in addition to the mirrored process plant-related data, the data lake 40 stores associated computational data generated by the computational engine 408 of the edge-facing components 400 based on public content data received from the process plant 5. Additionally, in some embodiments, the data lake 410 also stores content data received via one or more external data ingestors 412 from other external data providing systems (e.g., systems that are external to the process plant 5 and generate data that can be interpreted and / or analyzed in conjunction with the process plant-related data, not shown in FIG. 5A ), typically at a numerically higher security level than the process plant 5. Such external data providing systems may include, for example, enterprise level systems such as email systems, intranet systems, site business planning and logistics systems, schedule management systems, supply chain management systems, financial systems, accounting systems, inventory management systems, other enterprise systems, other IT systems, etc., and / or systems provided by third parties, such as weather forecast systems, stock market feeds, third-party provided OPC servers, etc. The external data ingestor 412 may convert, modify, translate, and / or otherwise transform the external data received from the external data providing system to conform to the publishable data types system 24B. Additionally, in some embodiments, the external data ingestor 412 may invoke one or more calculation engines 408 to manipulate the retrieved external data, thereby generating additional data that is stored in the data lake 410. In some embodiments, the external data ingestor 412 may communicate with enterprise and / or third party systems to thereby retrieve and / or reconcile their respective data configurations, and in some embodiments, the external data ingestor 412 may update the publishable data types system 24B to include their corresponding data types utilized by the enterprise and / or third party systems.However, even though the edge-facing components 400 may participate in bidirectional communications with external data-providing systems, the edge-facing components 400 still do not transmit communications to field-facing components that are communicatively connected to the process plant 5 (and in fact may be physically prevented from transmitting), thereby protecting the process plant 5 from security breaches that may occur via external systems.
[0070] In any event, the data lake 410 stores content data generated and received by the process plant 5 via the field-facing components, and in some implementations stores content data generated and received by one or more external data providing systems. In some embodiments, the data lake 410 may store additional data (whether process plant related and / or externally generated) that is calculated and / or derived from the received content data by one or more calculation engines 408. Data stored in the data lake 410 may be stored according to publishable data type system 24B, making the data content more readily available for consumption by applications and / or systems 422.
[0071] The edge-facing components 400 include a context knowledge miner 415 that operates on the content of the data lake 410 to discover relationships and associations between various different data points in the data lake 410. That is, the context knowledge miner 415 discovers the context of each of the data points in the data lake 410. For example, the context knowledge miner 415 may discover that a certain type of alarm was generated for a similar set of operating conditions across various different vendors' field devices in the same area of the process plant at a certain time, or the context knowledge miner 415 may discover that a key performance indicator of a particular line in the plant corresponds to a rate of change of a particular valve relative to a rate of change of another particular valve. In either case, the context knowledge miner 415 stores the discovered contexts and relationships along with the content of the data lake 415 (collectively referred to herein as "knowledge") in the contextualized process plant knowledge repository 420, e.g., connected domains. For example, the contextualized process plant knowledge repository 420 may be implemented using a graph database or other suitable model in which the content data and their respective interconnections are stored. For example, the graph database nodes may correspond to names or labels contained in the data lake 410, the properties stored in the nodes may include respective parameters, values, states, etc., and the connectors between the nodes and other nodes may indicate inter-relationships discovered by the contextual knowledge miner 415. Generally speaking, the information stored in the contextual process plant knowledge repository 420 is exposable (e.g., available for consumption) to data consumer applications and / or systems 422.
[0072] 5A, the exposed data receiver 402, the exposed data ingestion query five, and the context knowledge miner 415 are depicted as separate and distinct components of the edge-facing component 400 for purposes of clarity of discussion only, and not by way of limitation. Indeed, any two or more of the components 402, 405, and 415 may be implemented as integrated components of the edge-facing component 400, if desired.
[0073] 5B , the edge facing components 400 provide a set of one or more access mechanisms 425 through which various types of data consuming applications and / or systems 422 access, directly or via other applications and access mechanisms, the information stored in the context knowledge repository 420. The data consuming applications and / or systems 422 that may utilize the access mechanisms 425 provided by the edge facing components 400 may include external applications and / or systems 8, such as, for example, enterprise applications and / or systems 422a (email, internet, site business planning and logistics, schedule management, supply chain management, finance, accounting, inventory control, corporate and / or other IT applications and / or systems) that own, operate, and / or are otherwise associated with the process plant 5 and that are at a higher numerical security level than the process plant 5, and third party applications and / or systems 422b (e.g., cloud computing applications / systems, external OPC servers, IoT applications / systems, IIoT applications / systems, etc.) that consume process plant related knowledge. In some configurations, the data consuming applications and / or systems 422 may include plant-related applications and / or systems 422c, which may be at a similar numerical security level as the process plant 5, or may be systems within the process plant 5, such as process control systems, analytical systems, etc.For example, at least some of the one or more access mechanisms 425 may be utilized by one or more applications specific to the process plant 5, such as a monitoring application, an analytics application, an optimization application, a virtualized device application, a process control application, an alarm management application, a device management application, a dispatching application, a low-cost sensor application, a simulation application, an operator training application, a redundancy or backup application, a recovery application, a safety instrumented system application, a vibration monitoring application, an engineering application, an asset management application, a user interface application, or an application running on a personal electronic device. As shown in FIG. 5B , the data consuming applications and / or systems 422 may be communicatively connected to the edge-facing component 400 via one or more networks 423, which may be public, private, wired, and / or wireless networks. Additionally or alternatively, at least some of the data consuming applications 422 may be installed on the edge-facing component 400, whether installed by a plant, an enterprise, or a third party, as described in more detail below.
[0074] As shown in FIG. 5B, the access mechanisms 425 provided by the edge-facing components 400 include one or more APIs 428 that serve as direct access mechanisms to the information stored in the contextual knowledge repository 420. The one or more direct access APIs 428 may be implemented according to, for example, a REST (REpresentational State Transfer) architecture, GraphQL or other suitable query language, and / or other standardized open-source interoperable data syntax, format, and / or architecture utilized for APIs. For example, the APIs 428 may interface with C, C++, and / or C# applications, Python applications, Node.JS applications, and / or other types of applications whose languages, protocols, platforms, frameworks are supported by or provided by the edge-facing components 400, and thus the APIs 428 may be accessed using respective bindings. Other higher level or more removed access mechanisms may utilize the one or more direct access APIs 428 to access the knowledge and information stored in the contextual knowledge repository 420.
[0075] Other access mechanisms 425 provided by the edge facing components 400 include, for example, utilities 430, servers 432, services 435, and applications 438, to name a few. In general, the access mechanisms 425 collectively support various types of access to the process plant related knowledge stored in the context knowledge repository 420, such as request / response, publish / subscribe, event-driven access, etc. Each of the access mechanisms 425 may utilize one or more direct access APIs 422 to access the information stored in the context knowledge repository 420. Some of the access mechanisms 425 may be exposed to external applications and / or servers 422, some of the access mechanisms may be exposed only to the process plant 5 and other associated systems of a lower numbered security level (e.g., OT level), and / or some of the access mechanisms may be exposed to the edge facing components 400 itself. For example, at least one access mechanism 425 may include one or more replication mechanisms through which the data lake 410 and / or the context knowledge repository 420 are replicated, e.g., for purposes of fault tolerance, backup, and / or redundancy.
[0076] Utilities 430 that may be provided by edge-facing components 400 include, for example, a query and / or search engine, a natural language processor, and / or other types of contextual utilities. Additionally or alternatively, utilities 430 may include computational utilities, such as calculations, analyses, analytics, scripts, etc. Utilities 430 may be implemented in edge-facing components 400 using, for example, functions, algorithms, applications, etc.
[0077] The servers 432 that may be provided by the edge facing components 400 include, for example, OPC UA servers that expose process plant related knowledge through an OPC UA data model to data consuming applications / systems 422, for example via respective subscriptions, web servers that host one or more websites and / or web applications through which the data consuming applications and / or systems 422 interface with the edge facing components 400 to access the process plant related knowledge stored in the context knowledge repository 420, and other types of servers. In some embodiments, one or more of the servers 432 are not exposed to external applications and systems 422, but instead are provided for use by the process plant 5 and / or systems associated with the process plant 5 with a lower numbered security level. For example, the edge facing components 400 may provide I / O servers that route data between various components of the process plant 5.
[0078] Services 435 that may be provided by edge-facing components 400 include, for example, Advanced Message Queueing Protocol (AMQP) queuing services (e.g., publishing knowledge in JSON format), Message Queuing Telemetry Transport (MQTT) publication and subscription services, and / or other similar purpose services, systems, and / or protocols that support the transfer of process plant related information to cloud computing applications and / or systems, IoT and / or IIoT applications and / or systems, event hubs, and / or other data consuming applications and / or systems (e.g., via publication / subscription mechanisms and / or point-to-point mechanisms) 422. For example, services 435 may include an OPC runtime service that may provide a respective data source to each external OPC server (which may be a plant, enterprise, or third-party OPC server) that is a consumer of process plant related knowledge. Additionally, services 435 may include authentication and / or authorization services to data consuming applications and / or systems 422 (e.g., by using OAuth2 or other suitable standards), services that interact with mobile devices, web services, knowledge or information subscription managers, and / or any other type of service that may be exposed to and / or utilized by at least some of the data consuming applications and / or systems 422.
[0079] Additionally, edge facing components 400 may provide one or more applications 438 that access information stored in context knowledge repository 420 and manipulate the accessed information. For example, some of utilities 430 may be implemented using applications 438, some web services may be implemented using applications 438, etc. At least some of applications 438 may be provided by companies, such as query engines and search engines. Some of applications 438 may be provided by third parties and may be published and / or utilized by at least some of data consuming applications and / or systems 422.
[0080] Indeed, edge facing components 400 may support or provide a number of architecture configurations, platforms, and frameworks that allow edge facing components 400 to support or provide enterprise and third party generated utilities 430, servers 432, services 435, and / or applications 438 associated with process plant 5. In some configurations, both enterprise and third party provided utilities 430, services 432, and / or applications 438 may be installed on edge facing components 400. For example, edge facing components may support Docker, Linux, or other types of containers through which OPC UA servers, AMQP gateways, and various enterprise provided access mechanisms 425 may be implemented in edge facing components 400 and third party provided applications may be implemented in edge facing components 400. Docker and / or other types of containers may utilize direct access APIs 428, for example, to access information stored in context knowledge repository 420.
[0081] Additionally or alternatively, edge facing components 400 may provide a Node.JS framework to support web applications and services provided by the enterprise and / or by third parties and installed on edge facing components 400. The Node.JS framework may utilize a direct access API 428 to access information stored in context knowledge repository 420, and / or the Node.JS framework may invoke various utilities 430 (e.g., query, search, language processing, etc.) to access, retrieve, and / or manipulate information stored in context knowledge repository 420.
[0082] Thus, in view of the above considerations, embodiments of the edge gateway system 1 securely connect the process plant 5 and associated networks to applications running on the plant premises as well as remotely running applications, such as those hosted on clouds and / or remote networks. Applications and / or systems consuming data generated by the process plant 5 and discovered relationships and / or knowledge contained therein can securely access and obtain the exposed contextual process plant knowledge with minimal to no risk to the process plant 5 itself. Additionally, the edge gateway system 1 may operate continuously in environments with permanent intranet connectivity (e.g., security levels 3 and 4), as well as in environments with public internet connectivity. Various security mechanisms and capabilities of the edge gateway system 5 (e.g., physical separation of OT and IT networks, physical prevention of data flow to the process plant 5, secure start-up and updates, signed firmware and packet execution, encryption, system of customizable exposable data types, etc.) secure the process plant 5 and its data and provide protection against data theft and security breaches. Additionally, in embodiments, the edge gateway system 1 and / or components thereof utilize or incorporate one or more of the security techniques described in commonly owned U.S. patent application Ser. No. 15 / 332,622, commonly owned U.S. patent application Ser. No. 15 / 332,690, and commonly owned U.S. patent application Ser. No. 15 / 332,751, the disclosures of which are incorporated herein by reference in their entireties, thereby further securing the process plant 5 and its data and providing additional protection against data theft and security breaches.
[0083] When implemented in software, any of the applications, services, and engines described herein may be stored in any tangible, non-transitory computer-readable memory, such as a magnetic disk, a laser disk, a solid-state memory device, a molecular memory storage device, or other storage medium, such as in the RAM or ROM of a computer or processor. It should be noted that while the exemplary systems disclosed herein are disclosed as including software and / or firmware running on hardware, among other components, such systems are merely exemplary and should not be considered limiting. For example, it is contemplated that any or all of these hardware, software, and firmware components may be embedded solely in hardware, solely in software, or in any combination of hardware and software. Thus, while the exemplary systems described herein are described as being implemented in software running on a processor of one or more computing devices, those skilled in the art will readily appreciate that the examples provided are not the only way to implement such systems.
[0084] Thus, while the invention has been described with reference to specific examples, it will be apparent to those skilled in the art that these examples are illustrative only and are not intended to be limitations of the invention, and that modifications, additions, or deletions may be made to the disclosed embodiments without departing from the spirit and scope of the invention.
Claims
1. 1. An edge gateway system for securely distributing data relating to a process plant from a process plant for consumption by one or more external systems, comprising: a field facing component communicatively connected to one or more process plant networks of the process plant, the field facing component including a respective interface to the one or more process plant networks, one or more processors, and one or more non-transient memories, the one or more non-transient memories comprising: One or more interest lists, each interest list indicating respective data that may be exposed by the field-facing component to the one or more external systems for consumption; the respective releasable data indicated by the respective interest lists corresponds to respective data content generated by one or more devices of the respective process plant while the process plant is operating to control an industrial process; one or more interest lists, the exposable data indicated by the one or more interest lists defining only the entirety of the process plant data acquired by the field facing component that is made available for exposable by the field facing component to the one or more external systems for consumption; and computer-executable instructions that, when executed by the one or more processors, cause the field facing component to obtain the publishable data indicated by the one or more interest lists and transmit the obtained publishable data to an edge facing component of the edge gateway system to make the obtained publishable data consumable by the one or more external systems via the edge facing component.
2. 2. The system of claim 1, wherein the respective data content corresponding to the releasable data indicated by each interest list includes at least one of runtime process data, continuous process data, batch process data, batch history data, historization data, event data, alarm data, analytical data, diagnostic data, environmental data, user interface data, performance data, or another type of data generated by the respective one or more devices of the process plant while the process plant is operating to control an industrial process.
3. the respective data content corresponding to the respective publicly available data represented by the respective interest list, a respective identification of a respective source of said respective data content, said respective sources being included in said respective one or more devices; each time that said respective data content was generated by said respective source; respective operational states and / or other parameter values of said respective sources corresponding to said respective generation times of said respective data content; a respective identification of a respective recipient of said respective data content, said respective recipient being included in said respective one or more devices; each time that said respective data content was acquired by said respective recipient; or The system of any one of claims 1 to 2, wherein the respective data content includes at least one of the respective operational states and / or other parameter values of the respective recipients corresponding to the respective times acquired by the respective recipients.
4. the respective data content corresponding to the respective publicly available data represented by the respective interest list, a unit of measure for said respective data content; the scope of each of said data contents; a target value for each of said data contents; a control routine that utilizes said respective data content; Diagnostic parameters, parameters characteristic of said respective data content; or A system according to any one of claims 1 to 3, further comprising: a parameter indicative of a usage of said respective data content.
5. 5. The system of claim 1, wherein a source of at least some of the publishable data publishes the at least some of the publishable data to at least one of the one or more process plant networks, and the field-facing component is a subscriber to the at least some of the publishable data published by the source.
6. at least one interest list is configurable via an interest list configuration application provided by the field-oriented component; The system of any one of claims 1 to 5, wherein based on the configuration of the at least one interest list, the field-oriented component requests a corresponding source of the respective publicly available data indicated by the at least one interest list to obtain the respective publicly available data of the at least one interest list.
7. The system of claim 6 , wherein the at least one interest list is configured through utilization of the interest list configuration application by at least one of a user interface application or a system application.
8. 8. The system of claim 1, wherein at least some of the respective publicly available data indicated by the one or more interest lists is streamed from respective sources to the field-facing component via the one or more process plant networks.
9. When executed by the one or more processors, the computer-executable instructions stored in the one or more memories further cause the field facing component to provide streaming services; 9. The system of claim 1, wherein the field facing component streams at least a portion of the publishable data indicated by the one or more interest lists via the one or more process plant networks to the edge facing component using the streaming service based on receipt of the at least a portion of the publishable data at the field facing component.
10. 10. The system of claim 1, wherein the computer-executable instructions stored in the one or more memories, when executed by the one or more processors, further cause the field facing component to publish at least a portion of the publishable data indicated by the one or more interest lists, and the edge facing component subscribes to the at least a portion of the publishable data published by the field facing component.
11. 11. The system of claim 1, wherein the field facing component transmits the releasable data indicated by the one or more interest lists to the edge facing component via a unidirectional data diode interconnecting the field facing component and the edge facing component.
12. The system of any one of claims 1 to 11, wherein the one or more external systems include at least one of a cloud computing system, a public computing system, or a private computing system.
13. the one or more devices of the process plant that generate the data content of the publishable data indicated by the one or more interest lists; a local gateway for each process plant network included in the one or more process plant networks; controller, Field devices, a device included in a safety instrumented system of the process plant; I / O (input / output) devices, I / O servers or hubs, an I / O module configured to provide electronic marshalling; another type of device included in the one or more process plant networks and providing I / O over the one or more process plant networks; User interface devices, Data analysis devices, Data Historian, Networking devices, or A system according to any preceding claim, including at least one further field facing component.
14. the one or more process plant networks; Wired communication links, wireless communication links, Wired process control or automation networks, Wireless process control or automation networks, Networks supporting industrial automation protocols, Networks that support standardized communications or data protocols; Data Analysis Network, Data Historian Network, Asset Management Network, Virtual Private Network, Virtual Local Area Network, Virtual scalable local area networks, Diagnostic networks, Configuration network, or The system of any one of claims 1 to 13, including at least one of another type of network corresponding to at least one of the operation, maintenance or configuration of the process plant.
15. The industrial automation protocol corresponds to one of 4-20 mA, Remote I / O, Fieldbus, HART, WirelessHART, HART-IP, Field Device Integration Technology (FDI), OPC UA, or Profibus; or 15. The system of claim 14, wherein the standardized communications or data protocol is one of Wi-Fi, Bluetooth, NFC, another type of short-range wireless protocol, Ethernet, wireless Ethernet, an IP protocol, a protocol administered by the Internet Engineering Task Force (IETF), a protocol administered by the Institute of Electrical and Electronics Engineers (IEEE), or a protocol administered by the International Organization for Standardization (ISO).
16. the publishable data indicated by the one or more interest lists further includes respective outputs of one or more computational engines operating on at least some of the publishable data obtained at the field facing component via the one or more process plant networks; 16. The system of claim 1, wherein the computer executable instructions stored in the one or more field facing component memories, when executed by the one or more field facing component processors, further cause the field facing components to utilize the one or more computational engines to operate on at least some of the releasable data obtained at the field facing components via the one or more process plant networks.
17. 20. The system of claim 16, wherein the one or more computational engines include at least one of a function, an algorithm, an analysis, a shadow block, a functional block, or a module, and the one or more memories store the one or more computational engines.
18. 18. The system of claim 16, wherein at least one of the one or more calculation engines is configured via a calculation engine configuration application provided by the field facing component or is implemented in a respective container installed in the field facing component.
19. 19. The system of claim 1, wherein the field facing component is included in a plurality of field facing components of the edge gateway system, each field facing component of the plurality of field facing components being communicatively connected to the edge facing component via a respective unidirectional data diode.
20. 1. A method for securely distributing data relating to a process plant for consumption by one or more external systems from a process plant via an edge gateway system, the method comprising: obtaining, at a field facing component of the edge gateway system, one or more interest lists; and storing the one or more interest lists in one or more memories accessible to the field facing component; each interest list indicating respective data that may be exposed by the process plant to the one or more external systems for consumption; the respective releasable data indicated by the respective interest lists corresponds to respective data content generated by one or more devices of the respective process plant while the process plant is operating to control an industrial process; storing the exposable data indicated by the one or more interest lists, the exposable data defining a unique set of process plant data obtained by the field facing component that can be exposed to the one or more external systems for consumption by the field facing component; obtaining, by the field-oriented component, the publishable data indicated by the one or more interest lists; transmitting, by the field facing component, the retrieved publishable data to an edge facing component of the edge gateway system, thereby making the retrieved displayable data consumable by the one or more external systems via the edge gateway system.
21. 21. The method of claim 20, wherein the respective data content corresponding to the releasable data indicated by each interest list includes at least one of runtime process data, continuous process data, batch process data, batch history data, historization data, event data, alarm data, analytical data, diagnostic data, environmental data, user interface data, performance data, or another type of data generated by the respective one or more devices of the process plant while the process plant is operating to control the industrial process.
22. the respective data content corresponding to the respective publicly available data represented by the respective interest list, a respective identification of a respective source of said respective data content, said respective sources being included in said respective one or more devices; each time that said respective data content was generated by said respective source; respective operational states and / or other parameter values of said respective sources corresponding to said respective generation times of said respective data content; a respective identification of a respective recipient of said respective data content, said respective recipient being included in said respective one or more devices; each time that said respective data content was acquired by said respective recipient; or 22. The method of claim 20, wherein the respective data content comprises at least one of a respective operational state and / or other parameter value of the respective resident corresponding to the respective time acquired by the respective resident.
23. The respective publicly available data represented by each of the interest lists is a unit of measure for said respective data content; the scope of each of said data contents; a target value for each of said data contents; a control routine that utilizes said respective data content; Diagnostic parameters, parameters characteristic of said respective data content; or A method according to any one of claims 20 to 22, further comprising: indicating at least one of: a.
24. a source publishing at least a portion of the publishable data represented by the one or more interest lists; The method further includes subscribing, by the field-facing component, to the at least some of the publishable data published by the source; 24. The method of claim 20, wherein obtaining the publishable data indicated by the one or more interest lists comprises obtaining the at least a portion of the publishable data published by the source via the one or more process plant networks.
25. at least one interest list is configurable via an interest list configuration application of the field-oriented component; The method of any one of claims 20 to 24, further comprising requesting, based on a configuration of the at least one interest list, to receive by the field-facing component the respective publishable data indicated by the at least one interest list from a corresponding source.
26. 26. The method of claim 20, wherein obtaining, by the field facing component, the releasable data indicated by the one or more interest lists comprises receiving, by the field facing component over the one or more process plant networks, a stream of data including at least a portion of the releasable data indicated by the one or more interest lists.
27. 27. The method of claim 20, wherein transmitting, by the field facing component, the obtained publishable data to the edge facing component comprises streaming, by the field facing component to the edge facing component, at least a portion of the obtained publishable data indicated by the one or more interest lists, via the one or more process plant networks at the field facing component based on receiving the at least a portion of the publishable data.
28. 28. The method of claim 20, wherein sending, by the field facing component, the obtained publishable data to the edge facing component includes publishing, by the field facing component, at least a portion of the obtained publishable data indicated by the one or more interest lists, and the edge facing component subscribes to the at least a portion of the obtained publishable data published by the field facing component.
29. 29. The method of claim 20, wherein transmitting, by the field facing component, the obtained releasable data to the edge facing component comprises transmitting, by the field facing component, the obtained releasable data via a unidirectional data diode interconnecting the field facing component and the edge facing component.
30. and prior to transmitting the acquired releasable data to the edge facing component, transmitting, by the field facing component, to the edge facing component via a data diode, a collection of data types of data corresponding to controlling the industrial process and enabling exposable to the one or more external systems, the collection of data types being determined based on one or more configurations of the process plant; 30. The method of claim 20, wherein transmitting, by the field facing component, the obtained publishable data to the edge facing component comprises transmitting, by the field facing component to the edge facing component, the obtained publishable data represented using a corresponding data type included in the collection of data types.
31. Obtaining, by the field facing component, the publishable data indicated by the one or more interest lists includes obtaining, by the field facing component, data content generated by the one or more devices of the process plant via the one or more process plant networks while the process plant is operating to control the industrial process, wherein the one or more devices: a local gateway for each process plant network included in the one or more process plant networks; controller, Field devices, a device included in a safety instrumented system of the process plant; I / O (input / output) devices, I / O servers or hubs, an I / O module configured to provide electronic marshalling; another type of device included in the one or more process plant networks and providing I / O over the one or more process plant networks; User interface devices, Data analysis devices, Data Historian, Networking devices, or The method of any one of claims 20 to 30, including at least one of the further field facing components.
32. the one or more process plant networks; Wired communication links, wireless communication links, Wired process control or automation networks, Wireless process control or automation networks, Networks supporting industrial automation protocols, Networks that support standardized communications or data protocols; Data Analysis Network, Data Historian Network, Asset Management Network, Virtual Private Network, Virtual Local Area Network, Virtual scalable local area networks, Diagnostic networks, Configuration network, or The method of any one of claims 20 to 31, including at least one of another type of network corresponding to at least one of the operation, maintenance or configuration of the process plant.
33. The industrial automation protocol corresponds to one of 4-20 mA, Remote I / O, Fieldbus, HART, WirelessHART, HART-IP, Field Device Integration Technology (FDI), OPC UA, or Profibus; or 33. The method of claim 32, wherein the standardized communications or data protocol is one of Wi-Fi, Bluetooth, NFC, another type of short-range wireless protocol, Ethernet, wireless Ethernet, an IP protocol, a protocol administered by the Internet Engineering Task Force (IETF), a protocol administered by the Institute of Electrical and Electronics Engineers (IEEE), or a protocol administered by the International Organization for Standardization (ISO).
34. The method further includes utilizing one or more computational engines, by the field facing component, to operate on at least a portion of the releasable data acquired by the field facing component via the one or more process plant networks; 34. The method of claim 20, wherein obtaining, by the field facing component, the publishable data indicated by the one or more interest lists comprises obtaining, by the field facing component, at least a portion of the publishable data indicated by the one or more interest lists from an output of each of the one or more calculation engines.
35. 35. The method of claim 34, wherein the one or more computational engines include at least one of a function, an algorithm, an analysis, a shadow block, a functional block, or a module.
36. The method further includes providing, by the field-oriented component, a calculation engine configuration application; A method according to any one of claims 34 to 35, wherein at least one of said one or more calculation engines is configured via said calculation engine configuration application.
37. A method according to any one of claims 20 to 36, performed by the system according to any one of claims 1 to 19.
Citation Information
Patent Citations
Information monitoring support device, information processing method, information monitoring system and information monitoring method
JP2005250993A
Method and apparatus for displaying process data
JP2011204237A
Nuclear power plant monitoring operation system and monitoring operating method thereof
JP2013195398A
Publishing data across data diode for secured process control communications
JP2018106689A