US20200210869A1 - Gateway and method for transforming a description of an industrial process equipment into a data information model - Google Patents

Gateway and method for transforming a description of an industrial process equipment into a data information model Download PDF

Info

Publication number
US20200210869A1
US20200210869A1 US16/235,557 US201816235557A US2020210869A1 US 20200210869 A1 US20200210869 A1 US 20200210869A1 US 201816235557 A US201816235557 A US 201816235557A US 2020210869 A1 US2020210869 A1 US 2020210869A1
Authority
US
United States
Prior art keywords
eddl
opc
gateway
description
variable
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US16/235,557
Inventor
Darko Anicic
Alexander Hoffman
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to US16/235,557 priority Critical patent/US20200210869A1/en
Assigned to SIEMENS AKTIENGESELLSCHAFT reassignment SIEMENS AKTIENGESELLSCHAFT ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ANICIC, Darko, HOFFMAN, ALEXANDER
Priority to US17/418,767 priority patent/US20220058502A1/en
Priority to PCT/EP2019/082917 priority patent/WO2020135968A1/en
Priority to EP19821027.0A priority patent/EP3853680A1/en
Priority to CN201980086722.4A priority patent/CN113196192A/en
Publication of US20200210869A1 publication Critical patent/US20200210869A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/046Forward inferencing; Production systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31334Database with devices, configuration, of plant
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32142Define device, module description using xml format file
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the present embodiments relate to a gateway for transforming a description of an industrial process equipment into a data information model. More specifically, the present embodiments relate to a transformation of a description of an industrial process equipment into a semantically enriched and graph-based data information model for automation purposes.
  • OPC UA An Open Platform Communications Unified Architecture, or OPC UA, provides an architecture for the integration of field devices.
  • OPC UA is an industrial standard protocol of the OPC Foundation for manufacturer-independent communication with the purpose of interchanging industrial data, in particular in process automation.
  • Embodiments herein generally involve a gateway for facilitating an integration of process equipment within an industrial environment supporting an open industry standard such as OPC UA.
  • a gateway for transforming a description of an industrial process equipment into a semantically enriched and graph-based data information model for automation purposes.
  • the gateway includes a parsing module for parsing information entities in the description of the industrial process equipment by a field communication protocol and for transforming the parsed information entities into declarative logic facts and asserting the declarative logic facts within a deductive database.
  • the gateway further includes a knowledge engine using a mapping knowledge base for applying mapping rules to said declarative logic facts, whereby said declarative logic facts are deductively mapped onto the graph-based data information model.
  • the gateway includes an interface module for accessing the graph-based data object model.
  • FIG. 1 shows a hierarchically layered architecture of manufacturing control in an industrial automation domain
  • FIG. 2 shows a block diagram of functional units for exchanging data within an automation control system
  • FIG. 3 shows a block diagram of basic functional units of a gateway according to an embodiment
  • FIG. 4 shows a graphical representation of a declarative logic rule applied to declarative logic facts
  • FIG. 5 shows a model structure for modeling a generic variable in a graph-based data information model
  • FIG. 6 shows a node structure for modeling a description of an industrial process equipment in a graph-based data information model
  • FIG. 7 shows a block diagram of a gateway according to an embodiment amongst other functional units for exchanging data within an automation control system.
  • FIG. 8 shows a diagram illustrating an operational flowchart for transforming a description of an industrial process equipment into a semantically enriched and graph-based data information model according to an embodiment.
  • Industrial processes are complex as they involve technologies of different fields, ranging from mechanics, electronics, communication, and computer science. Further on, different systems play different roles in industrial processes, ranging from field devices, control devices, manufacturing execution systems, and enterprise management systems.
  • FIG. 1 shows such a hierarchically layered Automation Pyramid, wherein: a first level or field level FLD comprises physical field devices such as actuators and sensors; a second control level CRT includes control devices such as Programmable Logic Controllers or PLCs; a third manufacturing level MAN includes manufacturing execution systems; and a top enterprise level ENT of the pyramid comprises an enterprise management system.
  • a first level or field level FLD comprises physical field devices such as actuators and sensors
  • a second control level CRT includes control devices such as Programmable Logic Controllers or PLCs
  • a third manufacturing level MAN includes manufacturing execution systems
  • a top enterprise level ENT of the pyramid comprises an enterprise management system.
  • a data flow is structured by these well-defined layers FLD, CRT, MAN, ENT such that data flows upwards from individual field devices to the enterprise level via control supervision and manufacturing execution systems. In the same vein, data flows from enterprise systems flows downwards to field devices.
  • OPC UA Open Platform Communications Unified Architecture
  • OPC Foundation Open Platform Communications Unified Architecture
  • OPC UA offers direct data access, regardless of the level of the automation pyramid.
  • OPC UA further provides an information model and transport layer communications, where clients at any level of the pyramid can directly access data served by one or more OPC UA servers, hosted at any level. This includes OPC UA servers hosted at the field device level.
  • OPC UA imposes a prerequisite in that information of heterogeneous automation devices and systems need to be represented with the OPC UA Information Model—or OPC UA IM—which is a semantically enriched and graph-based data information model for automation purposes.
  • EDDL Electronic Device Description Language
  • brownfield refers to state-of-the-art-devices operated by a legacy description language which are to be deployed in a more contemporary environment.
  • EDDL is not the only example of such legacy description languages.
  • Legacy description languages include languages or protocols such as FDT/DTM or Field Device Tool/Device Type Manager, GSD or General Station Description, IO Device Description etc. It is an object of the proposed embodiments to support an integration of field devices operated by such legacy description languages of any kind.
  • control is typically localized on the field level FLD or at the control level CRT according to FIG. 1 .
  • the control is typically performed during an engineering process wherein automation system parameters of field devices are set and exposed over a controller.
  • Such Controllers could then assist to export this information to an OPC UA server located on higher levels of the automation pyramid.
  • information from field devices would be indirectly accessible by a server and could be used further above at different levels of the automation pyramid.
  • the present embodiments generally propose a gateway for transforming a description of an industrial process equipment into a semantically enriched and graph-based data information model for automation purposes with the goal of enabling industrial process equipment such as brown-field field devices to be used in modern industrial applications.
  • the gateway includes a knowledge-based mapping system and allows for a connection to one or more process equipment—particularly field devices—in order to collect information from each field device and exchanging this information with a server or an application on the basis of a semantically enriched and graph-based data information model for automation purposes, such as OPC UA.
  • the gateway includes an interface module for accessing the graph-based data information model.
  • This interface module is may be embodied by one or more processors (e.g., an OPC UA server operated by and/or on the gateway, such as a gateway-internal OPC UA server).
  • FIG. 2 shows a proposed gateway GW connected to one field device FD—or, alternatively to one or more industrial process equipment FD of any kind—and communicating information collected from the description of the industrial process equipment FD to one or more applications, such as a cloud-based application CA, a portable application PA and/or an application MO for asset-monitoring, management, and/or optimization.
  • Said applications CA, PA, MO can access the—not shown—description of the industrial process equipment FD over a standard OPC UA server provided by the—not shown—interface module of the gateway GW.
  • the knowledge-based mapping MAP of the gateway is detailed as an intermediary model between an input delivering a conventional or legacy field device description FDD—e.g. expressed by the description language EDDL—mapping information from said description to a graph-based data information model and allocating the data information model by a gateway-internal server SRV.
  • FDD e.g. expressed by the description language EDDL
  • a mapping knowledge base MKN is used, the details of which will be described further down below.
  • the gateway acts in a plug-and-play fashion, i.e., it connects to the field device FD, reads its field device description FDD, and maps field device information (e.g., device parameters) to an OPC UA address space. Device parameters and corresponding values can then be accessed by the gateway-internal server SRV using any—not shown—standard OPC UA client or any—not shown—standard OPC UA server connected to the gateway-internal server SRV.
  • field device information e.g., device parameters
  • a mapping of information models according to the present embodiments is performed using one or more declarative logic rules or facts for applying a deductive inference mechanism.
  • a deductive inference method is described using Datalog as one exemplary programming language for expressing said declarative logic rules.
  • a Datalog language section also referred to as a Datalog program—consists of declarative rules.
  • a rule has a rule body and a rule head, which is expressed as:
  • a Datalog system can proof that body is TRUE—as a Boolean TRUE—then it can infer that the head is TRUE as well. This is a mechanism how a Datalog system can derive new knowledge from existing knowledge.
  • Literals are positive or negative atoms.
  • Terms are constants, variables or compound terms. Variables are denoted with strings consisting of capital letters or beginning with a capital letter—e.g. VAR or Var—and constants are quoted, e.g. “constant_unit”.
  • Compound terms implement functions.
  • a function is an expression of a type:
  • a fact is a ground atomic formula, e.g. expressed by:
  • FIG. 4 shows a graphical representation of a declarative logic rule applied to declarative logic facts with the aim of mapping data from one information model to another one.
  • Datalog rules can be constructed in such a way that they recursively work with each other to populate complete mapping rules using many individuals, and smaller Datalog rules that define information relationships. As such, in the example, a new Datalog fact with the format of the rule head will be asserted into the database if there are literals matching the body literals' constant terms with the terms also being satisfied as wildcards.
  • the OPC UA specification comprises nine OPC UA node classes, including a Base Node class. Each of these node classes has standardized attributes that are stored directly within the node. Each of these node classes can be stored in Datalog using the predicate to specify the node class.
  • the inventors have verified a feasible utilization of Datalog in defining relational rules for mapping the facts' term semantics into different facts' semantics, thereby mapping one information model to another, all within a same Datalog database.
  • mapping rules are advantageously structured in a hierarchical fashion so as to utilize a re-usability of rules.
  • This construction of mapping rules is similar to the art of programming functions used for a modularization of program code, wherein a function is called by a multitude of higher-level function calls rather than being repeatedly coded within the higher level.
  • Datalog rules are rather declarative statements, which means they can be interpreted regardless of a position in a program.
  • MANUFACTURER 66 DEVICE_TYPE 0x070E, DEVICE_REVISION 1, DD_REVISION 1 VARIABLE DEMO_Temperature_Sensor ⁇ LABEL DEMO_Temperature_Sensor HELP measures_actual_temperature; CLASS CONTAINED; TYPE FLOAT; ⁇ DEFAULT_VALUE 0.0; ⁇ HANDLING READ & WRITE; ⁇
  • a mapping of typical EDD file attributes is done in a first step, which is followed by a step of mapping the variable itself.
  • each EDD file has four top level attributes—manufacturer ID, device type, device revision and the device description revision, see first four lines in the EDDL code shown above—there are four OPC UA property nodes to be attached to the top-level object node representing the EDD file.
  • Each property node is constructed from a Variable node that is referenced from its parent object by a reference entitled »HasProperty «.
  • Variables are defined using the Variable node class.
  • Two types of variables in OPC UA IM are defined: properties and data variables.
  • the Variable node is always part of at least one other node.
  • FIG. 5 shows the resulting model structure modeling the generic variable and top-level attributes of a general EDD file in the graph-based data information model of OPC UA.
  • a variable typically describes parameters contained in a field device or in an EDD application.
  • a Datalog atomic formula representing an EDDL variable is expressed by:
  • EDDL_ID EDDL_ID_1, EDDL_ID_2, EDDL_ID_3, EDDL_ID_4, EDDL_ID_5, EDDL_ID_6—are used as placeholders for certain OPC UA node identifiers or IDs.
  • a Datalog atomic formula representing an OPC UA variable is specified as:
  • opc_UAVariable OPC_NodeId, OPC_Value, OPC_DataType, OPC_ValueRank, OPC_ArrayDimensions, OPC_IsAbstract, OPC_AccessLevel, OPC_UserAccessLevel, OPC_MinSamplingInterval, OPC_Historizing
  • This rule defines a base node for an OPC UA variable by the term:
  • variable in the OPC UA information model has an ID specified as »EDDL_ID_1 «.
  • Browse name, display name and the description is respectively mapped to corresponding EDDL variable values, i.e. EDDL_VariableName, EDDL_LABEL, EDDL_HELP, respectively.
  • WriteMask and UserWriteMask are not set in the example above.
  • EDDL_ID_2 and EDDL_ID_3 are used respectively.
  • opc_BaseNodeClass for opc_UAVariableType needs to be created too.
  • the same rule as shown above can be used for this purpose. Only the identifier and the type (UAVariableType instead of UAVariable) need to change:
  • OPC UA Data Type Class Data type of an OPC UA variable can be specified with a following Datalog atomic formula:
  • opc_BaseNodeClass for opc_DataTypeNode needs to be created, the same rule as shown above can be used. Only the identifier and the type (UADataType) need to change.
  • OPC UA Variable Node Class EDDL_CONSTANT_UNIT.
  • the signature of eddl_Variable has a term called EDDL_CONSTANT_UNIT. This term from an EDDL variable is to be mapped to an OPC UA Property, which is a type of an OPC UA Variable:
  • the data type »String « above has its code in the OPC UA information model. Often the code is used in an OPC UA address space to denote a string.
  • OPC UA Variable Node Class EDDL_STYLE.
  • the signature of eddl_Variable has a term called EDDL_STYLE. This term from an EDDL variable is to be mapped to an OPC UA Property, which is a type of an OPC UA Variable:
  • the BaseNodeClass of the property is realized with the following rule:
  • EDDL_VALIDITY The signature of eddl_Variable has a term called EDDL_VALIDITY. This term from an EDDL variable is to be mapped to an OPC UA Property, which is a type of an OPC UA Variable:
  • the BaseNodeClass of the property can be realized with the following rule.
  • actions in EDD such as POST EDIT ACTIONS, POST READ ACTIONS, POST WRITE ACTIONS, PRE EDIT ACTIONS, PRE READ ACTIONS, PRE WRITE ACTIONS etc. can be mapped to OPC UA IM by using Datalog built-in predicates and compound terms. Since they can be used to handle external calls or functions, they can also be used to map EDD actions into OPC UA methods, as well as to call or execute methods and commands specified in an EDD.
  • the following section describes a creation of an OPC UA Object node.
  • the EDD file attributes of the created OPC UA Object node such as manufacturer ID, device type, device revision and the device description revision, serve as reference.
  • the OPC UA Object node is realized with the following rule:
  • opc_UAObject(EDDL_ID) ⁇ eddl_FileInformation( EDDL_ID, EDDL_ID_1, EDDL_ID_2, EDDL_ID_3, EDDL_ID_4, EDDL_ID_5, EDDL_MANUFACTURER, EDDL_DEVICE_TYPE, EDDL_DEVICE_REVISION, EDDL_DD_REVISION).
  • An OPC UA ObjectType class for the OPC UA Object node is realized with the rule:
  • the top-level file Object must be referenced to the top-level Objects folder in the OPC UA server as this is the root node for an OPC UA server.
  • all top-level nodes within an information model should be direct children of this node.
  • the reference which accomplishes this is an »Organizes« reference to an in-built node having an ID with a value of 85 or »ObjectsFolder «.
  • the OPC UA Reference is represented by the following Datalog atomic formula:
  • opc_Reference (opc_SourceNodeId, opc_ReferenceType, opc_TargetNodeId).
  • references between the core Object and the MANUFACTURE ID property Variable node are instantiated. Similar references are instantiated for remaining properties, i.e., DEVICE TYPE, DEVICE REVISION, and DD REVISION:
  • opc_Reference(EDDL_ID, “HasProperty”, “EDDL_ID_2”) ⁇ eddl_FileInformation.
  • opc_Reference(EDDL_ID, “HasProperty”, “EDDL_ID_3”) ⁇ eddl_FileInformation.
  • opc_Reference(EDDL_ID, “HasProperty”, “EDDL_ID_4”) ⁇ eddl_FileInformation.
  • opc_Reference(EDDL_ID, “HasProperty”, “EDDL_ID_5”) ⁇ eddl_FileInformation.
  • the core object is then related to the variable node as expressed by:
  • opc_Reference(EDDL_ID, “HasComponent”, EDDL_ID_1) ⁇ eddl_Variable.
  • variable node has been defined via the variable type node:
  • opc_Reference(EDDL_ID_1, “HasTypeDefinition”, EDDL_ID_2) ⁇ eddl_Variable.
  • opc_Reference(EDDL_ID_1, “HasProperty”, “EDDL_ID_4”) ⁇ eddl_Variable.
  • opc_Reference(EDDL_ID_1, “HasProperty”, “EDDL_ID_5”) ⁇ eddl_Variable.
  • opc_Reference(EDDL_ID_1, “HasProperty”, “EDDL_ID_6”) ⁇ eddl_Variable.
  • variable in the EDD file is modeled as a separate variable object, using the basic structure as shown in FIG. 5 , where the variable is based around a Variable object with accompanying property Variable nodes, VariableType node and a simple DataType node. Accordingly, each variable in the EDD file has a number of various properties that are specific to the variable.
  • FIG. 6 shows an extended information model using the standard OPC UA Information Model, and realized by Datalog rules for nodes and references as described above.
  • OPC UA EDD File OPC UA Object EDD File Information OPC UA Properties
  • OPC UA Variable Base Node, BrowseName LABEL OPC UA Variable Base Node, DisplayName HELP OPC UA Variable Base Node, Description HANDLING OPC UA Variable AccessLevel DEFAULT VALUE OPC UA VariableType Value CLASS OPC UA DataType Base Node, BrowseName TYPE OPC UA DataType, HasSubType reference to respective OPC UA standard data type
  • the following section describes an overall system architecture and flow of data in a gateway GW according to an embodiment for transforming a field device description FDD—or more generally: a description of an industrial process equipment—into a OPC UA information model—or more generally: into a semantically enriched and graph-based data information model for automation purposes—with reference to FIG. 7 .
  • a parsing module PRS of the gateway GW is reading a field device description FDD of a—not shown—field device or other arbitrary process equipment.
  • the field device description FDD is stored in the field device and accessed via a field communication protocol, e.g. the well-known HART (Highway Addressable Remote Transducer) protocol.
  • the parsing module PRS is parsing information entities in the field device description FDD of the field device by said field communication protocol.
  • the parsed information entities are then transformed into a data object representation—declarative logic facts—which are asserted within a deductive database or knowledge base KNB.
  • the parsing module PRS may optionally use an—not shown—accompanying asserter for wrapping the extracted information into Datalog facts and asserting the declarative logic Datalog facts within the knowledge base KNB, e.g. Datalog database KNB.
  • the contents of the knowledge base KNB are used for applying mapping rules or mapping knowledge MKN in general to said declarative logic facts using a Datalog Engine DLE.
  • the parsing module PRS may be formed by one or more processors (e.g., the same or different processors as the one or more processors of the interface module).
  • the knowledge base KNB or knowledge engine KNB is not only a passively queried database but also acting in a sense of applying rules, mapping facts etc.
  • the knowledge base KNB co-operates with the parsing module PRS and a Datalog Engine DLE and may include one or more of these components.
  • the knowledge base KNB is loaded with Mapping Knowledge MKN.
  • the Mapping Knowledge MKN is operated to deductively map the data objects transformed by the field device description FDD within the knowledge base KNB with a structure to allow them to be later extracted as OPC UA objects. These mapping rules are asserted before any mappings occur, such that they are able to be applied to input information throughout the mapping process.
  • Mapping Knowledge MKN can be operated for EDDL and OPC UA IM. Applying similar procedures, it is possible to create Mapping Knowledge MKN for another field device description model, or an extension of this one, for example, if one needs to represent EDD data over OPC UA IM with the semantics from another model, e.g., the NAMUR Open Architecture or NOA model. Applicability of this approach is thus not limited to other standard information models, e.g., IODD or IO Device Description, FDT/DTM14 or Field Device Tool/Device Type Manager, or NOA (NAMUR Open Architecture).
  • Datalog has been chosen as a formalism to implement the proposed mapping method due to the of efficiency of Datalog algorithms and their suitability on even resource constraint devices, e.g., non-expensive IoT devices (Internet of Things) and IoT gateways.
  • resource constraint devices e.g., non-expensive IoT devices (Internet of Things) and IoT gateways.
  • FIG. 8 shows a flowchart for querying and extracting OPC UA information from the Datalog Engine in order to recursively instantiate all references pointing from a source node.
  • a first step 802 the database is queried for a starting base node using a given NodeID.
  • a subsequent step 810 the node information is processed, and the current node is marked as known.
  • the database is queried for references with a (source) node ID which matches with the current NodeID.
  • the queried reference information is stored.
  • a subsequent step 816 for each of the stored reference information one or more NodeIDs are targeted and/or extracted.
  • a decision is made of whether a target node is already known or not. Once all nodes are known—represented by a branch Y (»Yes «) pointing vertically upward from decision step 818 —the procedure is completed by step 822 .
  • the source node would be an OPC UA server's object root node.
  • the database will return a list of all references associated with the root node, thus giving a list of all the reference's target node IDs. This returned list can in turn can be recursively processed, allowing for the hierarchical information model of the OPC UA IM to be traversed and processed.
  • OPC UA information extracted from the Query Engine is advantageously converted into XML, nodes within an XML Schema of OPC UA.
  • OPC UA Server Config Generator accomplishes this task, and then passes the information downstream to the OPC UA Server. In this way every standard OPC UA client can access data, which originated as EDD field device descriptions.
  • the mapping system of the gateway is capable of interpreting input information, particularly EDD, using stored mapping knowledge, deductively creating information mappings from the input information model into the OPC UA information model, thus eliminating the need for trivial one-to-one hard-coded mapping approaches and allowing for the external storage and querying of mapping knowledge.
  • mapping knowledge is extensible for enabling new classes of applications. Beyond a usage for monitoring field devices, the mapping knowledge is also capable of supporting a management of field assets.
  • the mapping is suited to be implemented on edge or constrained devices. Typically, these are IoT (Internet of Things) gateways or constrained and inexpensive devices. While the mapping can be also accomplished with other semantic formalism, Datalog can be easily implemented on constrained devices. At the same time, Datalog is expressive enough to be used for the mapping of EDD to an OPC UA information model. Datalog was chosen as a formalism for implementing the knowledge mapping system because of its algorithmic efficiency and its possibility to implement the algorithms on constraint devices. The semantics of Datalog is well understood and efficient algorithms have been developed over the past 30 years.
  • mapping according to the embodiments is particularly applicable for edge or constrained devices, however, suited to be implemented in a cloud environment as well.
  • the embodiments allow for a discovery of the mapping knowledge or a part thereof.
  • a user or an application can, for example, query the storage of mapping knowledge via expressive semantic queries.
  • mapping Knowledge can be created for EDDL and OPC UA IM. Applying similar procedures, it is possible to create Mapping Knowledge for another field device description model or an extension of this one.
  • mapping knowledge is transparently available instead of being hard-coded. As such it can be, for example, downloaded, exchanged, updated etc.
  • the embodiments advantageously allow for a validation of field device data against the mapping knowledge. For example, it can be advantageously checked whether field device data are in conformance to a specification.
  • the embodiments advantageously allow a direct access of information. For many added-value applications, e.g., related to monitoring, management, and optimization of field level assets, it is desirable not to access field information over a controller.
  • mapping system reduces the complexity of mapping complex information models where large parts of mapping knowledge can be inherited from previous mappings or complex structures can be mapped by deductively applying mapping rules in a bottom-up fashion.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Modern industrial processes demand flexibility in terms of how data flows are structured in an automation pyramid. Instead of only upward and downward flows, the data should be accessible directly at each level of the pyramid. A gateway for facilitating an integration of process equipment within an industrial environment supporting an open industry standard is provided. Field devices having characteristics, capabilities and/or requirements that are expressed by a description language for industrial process equipment such as EDDL are integrated into a contemporary communication environment enabling a direct data access. The communication environment is operated based on a semantically enriched and graph-based data information model such as provided by OPC UA.

Description

    TECHNICAL FIELD
  • The present embodiments relate to a gateway for transforming a description of an industrial process equipment into a data information model. More specifically, the present embodiments relate to a transformation of a description of an industrial process equipment into a semantically enriched and graph-based data information model for automation purposes.
  • BACKGROUND
  • Industrial automation system components of the past have traditionally been interconnected by specialized networks using a variety of different protocols for access and data exchange.
  • The development of present and future automation systems and field devices has put considerable focus on common industry standards aiming for a standardized access to process data in order to reduce the effort for device-engineering, configuration, management, operation, and versioning, as well as enable applications that are based on integration and processing of the process data.
  • An Open Platform Communications Unified Architecture, or OPC UA, provides an architecture for the integration of field devices. OPC UA is an industrial standard protocol of the OPC Foundation for manufacturer-independent communication with the purpose of interchanging industrial data, in particular in process automation.
  • Many field devices of today, however, are described by alternative approaches such as a description language entitled Electronic Device Description Language, or EDDL. Accordingly, there is a need in the art to facilitate an integration of process equipment described by a description language according to a different description scheme data within an industrial environment of process equipment described by open industry standards such as OPC UA.
  • SUMMARY AND DESCRIPTION
  • Embodiments herein generally involve a gateway for facilitating an integration of process equipment within an industrial environment supporting an open industry standard such as OPC UA.
  • In one embodiment, a gateway for transforming a description of an industrial process equipment into a semantically enriched and graph-based data information model for automation purposes is disclosed. The gateway includes a parsing module for parsing information entities in the description of the industrial process equipment by a field communication protocol and for transforming the parsed information entities into declarative logic facts and asserting the declarative logic facts within a deductive database. The gateway further includes a knowledge engine using a mapping knowledge base for applying mapping rules to said declarative logic facts, whereby said declarative logic facts are deductively mapped onto the graph-based data information model. Eventually the gateway includes an interface module for accessing the graph-based data object model.
  • Although there many alternative formalisms for declarative logic facts, e.g. a formalism based on W3C OWL, the usage of Datalog is regarded as superior for a deployment on resource constrained devices.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The objects as well as further advantages of the present embodiments will become more apparent and readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawing in which:
  • FIG. 1 shows a hierarchically layered architecture of manufacturing control in an industrial automation domain;
  • FIG. 2 shows a block diagram of functional units for exchanging data within an automation control system;
  • FIG. 3 shows a block diagram of basic functional units of a gateway according to an embodiment;
  • FIG. 4 shows a graphical representation of a declarative logic rule applied to declarative logic facts;
  • FIG. 5 shows a model structure for modeling a generic variable in a graph-based data information model;
  • FIG. 6 shows a node structure for modeling a description of an industrial process equipment in a graph-based data information model;
  • FIG. 7 shows a block diagram of a gateway according to an embodiment amongst other functional units for exchanging data within an automation control system; and
  • FIG. 8 shows a diagram illustrating an operational flowchart for transforming a description of an industrial process equipment into a semantically enriched and graph-based data information model according to an embodiment.
  • DETAILED DESCRIPTION
  • Industrial processes are complex as they involve technologies of different fields, ranging from mechanics, electronics, communication, and computer science. Further on, different systems play different roles in industrial processes, ranging from field devices, control devices, manufacturing execution systems, and enterprise management systems.
  • Until today industrial processes are categorized by a so-called Automation Pyramid. A right part of FIG. 1 shows such a hierarchically layered Automation Pyramid, wherein: a first level or field level FLD comprises physical field devices such as actuators and sensors; a second control level CRT includes control devices such as Programmable Logic Controllers or PLCs; a third manufacturing level MAN includes manufacturing execution systems; and a top enterprise level ENT of the pyramid comprises an enterprise management system.
  • A data flow is structured by these well-defined layers FLD, CRT, MAN, ENT such that data flows upwards from individual field devices to the enterprise level via control supervision and manufacturing execution systems. In the same vein, data flows from enterprise systems flows downwards to field devices.
  • Modern industrial processes, however, demand flexibility in terms of how data flows are structured in the automation pyramid. Instead of only upward and downward flows, the data should be accessible directly at each level of the pyramid. This direct access by each of the layers of the pyramid is symbolized by an oblique layer DAC on the left side of FIG. 1 which is configured for a cross-layered data access in all levels FLD, CRT, MAN, ENT of the automation pyramid.
  • A protocol of choice for enabling a cross-layered data access is OPC UA. OPC UA (Open Platform Communications Unified Architecture) is an industrial standard protocol of the OPC Foundation for manufacturer-independent communication with the purpose of interchanging industrial data, in particular in process automation.
  • OPC UA offers direct data access, regardless of the level of the automation pyramid. OPC UA further provides an information model and transport layer communications, where clients at any level of the pyramid can directly access data served by one or more OPC UA servers, hosted at any level. This includes OPC UA servers hosted at the field device level. OPC UA imposes a prerequisite in that information of heterogeneous automation devices and systems need to be represented with the OPC UA Information Model—or OPC UA IM—which is a semantically enriched and graph-based data information model for automation purposes.
  • Current field devices in an environment of a current automation systems, however, are predominantly operated by a differing description language for industrial process equipment. One prevalent description language in the industrial domain is EDDL or Electronic Device Description Language. Until today, EDDL is a widely used standard in the process industry. As EDDL is nothing more but a structured listing of parameters, characteristics, capabilities and/or requirements of a device, direct data access of EDDL described devices interfacing servers operated on the basis of a semantically enriched and graph-based data information model for automation purposes is not possible at present.
  • It is therefore an object of the proposed embodiments to support an integration of field devices—or process equipment in general—whose characteristics, capabilities and/or requirements are expressed by a description language for industrial process equipment such as EDDL, into a contemporary communication environment enabling a direct data access, wherein the communication environment is operated on the basis of a semantically enriched and graph-based data information model such as provided by OPC UA.
  • More specifically, the problem is how to make information from »brownfield« devices available in the address space of an OPC UA server. The term brownfield refers to state-of-the-art-devices operated by a legacy description language which are to be deployed in a more contemporary environment. EDDL is not the only example of such legacy description languages. There are several other device description languages implemented on brownfield devices which need to be integrated into a communication environment for facilitating a direct data access. Legacy description languages include languages or protocols such as FDT/DTM or Field Device Tool/Device Type Manager, GSD or General Station Description, IO Device Description etc. It is an object of the proposed embodiments to support an integration of field devices operated by such legacy description languages of any kind.
  • In existing automation systems information from field devices is typically accessible via a controller for controlling these field devices. This control is localized on the field level FLD or at the control level CRT according to FIG. 1. The control is typically performed during an engineering process wherein automation system parameters of field devices are set and exposed over a controller.
  • Such Controllers could then assist to export this information to an OPC UA server located on higher levels of the automation pyramid. In this way, information from field devices would be indirectly accessible by a server and could be used further above at different levels of the automation pyramid.
  • For many applications, however, it is desirable not to access field information by an intermediate controller. These applications include added-value applications, e.g. applications related to monitoring, management, and optimization of field level assets. The reason for favoring a direct access of field information over an indirect access by an intermediate controller is due to a design principle of dedicating a controller solely for enduring system stability. For other applications it is desirable to access the field device information aside form the core control, possibly in a cheap and flexible way.
  • The present embodiments generally propose a gateway for transforming a description of an industrial process equipment into a semantically enriched and graph-based data information model for automation purposes with the goal of enabling industrial process equipment such as brown-field field devices to be used in modern industrial applications.
  • The gateway includes a knowledge-based mapping system and allows for a connection to one or more process equipment—particularly field devices—in order to collect information from each field device and exchanging this information with a server or an application on the basis of a semantically enriched and graph-based data information model for automation purposes, such as OPC UA. For the »upward« exchange of information—e.g. exchange with a server or an application based on a semantically enriched and graph-based data information model—the gateway includes an interface module for accessing the graph-based data information model. This interface module is may be embodied by one or more processors (e.g., an OPC UA server operated by and/or on the gateway, such as a gateway-internal OPC UA server).
  • FIG. 2 shows a proposed gateway GW connected to one field device FD—or, alternatively to one or more industrial process equipment FD of any kind—and communicating information collected from the description of the industrial process equipment FD to one or more applications, such as a cloud-based application CA, a portable application PA and/or an application MO for asset-monitoring, management, and/or optimization. Said applications CA, PA, MO can access the—not shown—description of the industrial process equipment FD over a standard OPC UA server provided by the—not shown—interface module of the gateway GW.
  • Referring now to FIG. 3, the knowledge-based mapping MAP of the gateway is detailed as an intermediary model between an input delivering a conventional or legacy field device description FDD—e.g. expressed by the description language EDDL—mapping information from said description to a graph-based data information model and allocating the data information model by a gateway-internal server SRV. For the process of knowledge-based mapping MAP a mapping knowledge base MKN is used, the details of which will be described further down below.
  • The gateway acts in a plug-and-play fashion, i.e., it connects to the field device FD, reads its field device description FDD, and maps field device information (e.g., device parameters) to an OPC UA address space. Device parameters and corresponding values can then be accessed by the gateway-internal server SRV using any—not shown—standard OPC UA client or any—not shown—standard OPC UA server connected to the gateway-internal server SRV.
  • A mapping of information models according to the present embodiments is performed using one or more declarative logic rules or facts for applying a deductive inference mechanism. In the following, a deductive inference method is described using Datalog as one exemplary programming language for expressing said declarative logic rules.
  • A Datalog language section—also referred to as a Datalog program—consists of declarative rules. A rule has a rule body and a rule head, which is expressed as:
      • head <=body
  • If a Datalog system can proof that body is TRUE—as a Boolean TRUE—then it can infer that the head is TRUE as well. This is a mechanism how a Datalog system can derive new knowledge from existing knowledge.
  • Further on, Datalog programs and Datalog rules are built up from atomic formulas of a type:
      • p(t1, t2, . . . , tn)
        wherein p is a predicate symbol and t1, t2, . . . , tn denote terms. Some predicates have predefined meaning in a Datalog system. They denote a built-in operation, and thus are called built-in predicates. In anticipation of embodiments to be described further down below, built-in predicates and compound terms can be used to handle external calls or functions, which can be used to map EDDL (Electronic Device Description Language) methods and commands into OPC UA methods. Further on, built-in predicates and compound terms can be used to call or execute methods and commands specified in an EDD or Electronic Device Description.
  • Returning back to the description of Datalog, an atomic formula—or short: an atom—is a formula that cannot be divided into strict sub-formulas. Literals are positive or negative atoms. Terms are constants, variables or compound terms. Variables are denoted with strings consisting of capital letters or beginning with a capital letter—e.g. VAR or Var—and constants are quoted, e.g. “constant_unit”. Compound terms implement functions.
  • A function is an expression of a type:
      • f(t1, t2, . . . , tn)
        wherein f is a function symbol of arity n, and t1, t2, . . . , tn are terms.
  • A fact is a ground atomic formula, e.g. expressed by:
      • p(“c1”, “c2”, . . . , “cn”)
        wherein “c1”, “c2”, . . . , “cn” are constants.
  • FIG. 4 shows a graphical representation of a declarative logic rule applied to declarative logic facts with the aim of mapping data from one information model to another one.
  • It can be seen that terms in the Body literal—right side of FIG. 4—are related to terms in the head atom—left side of FIG. 4. In this case, upon input of a single fact matching the structure of the body literal, a Datalog fact will be deduced using the inputted fact and the existing Datalog rule.
  • Datalog rules can be constructed in such a way that they recursively work with each other to populate complete mapping rules using many individuals, and smaller Datalog rules that define information relationships. As such, in the example, a new Datalog fact with the format of the rule head will be asserted into the database if there are literals matching the body literals' constant terms with the terms also being satisfied as wildcards.
  • In the following a Representation of OPC UA Information in Datalog is described. Compound names with one or more medial capitals—e.g. a compound name »TypeDefinitionNodes«—are used to refer to authoritative names used in the specification »OPC Unified Architecture« of the OPC Foundation. These authoritative names are assumed to be known and for a person skilled in the art. Hereinafter, these authoritative names are, therefore, introduced without explanation.
  • The OPC UA specification comprises nine OPC UA node classes, including a Base Node class. Each of these node classes has standardized attributes that are stored directly within the node. Each of these node classes can be stored in Datalog using the predicate to specify the node class.
  • For the exemplary OPC UA class » ReferenceType« three attributes are specified by the OPC UA standard, namely:
  • Attribute Name Use Type
    IsAbstract Mandatory Boolean
    Symmetric Optional Boolean
    InverseName Optional LocalizedText
  • These three attributes can be stored as an atomic formula by using the three terms in a semantic order along with the unique node ID that explicitly references the node to be stored. The respective representation of the OPC UA class » ReferenceType« as an atomic formula in Datalog is then:
      • opc_ReferenceType(NodeID, IsAbstract, Symmetric, InverseName).
        An example of storing a ReferenceType node by a Datalog formalism whose OPC UA namespace ID is 1, is an abstract type, not symmetric and does not have an inverse name would be as follows:
        opc_ReferenceType(1, true, false, NULL).
  • The inventors have verified a feasible utilization of Datalog in defining relational rules for mapping the facts' term semantics into different facts' semantics, thereby mapping one information model to another, all within a same Datalog database.
  • While one could create very large collections of top-level mapping rules which would handle entire information models, such creation would result in a large number of mapping rules, thereby neglecting usage of the deductive power of Datalog. This deductive power of Datalog, however, allows for fewer mapping rules, as smaller components of an information model can be mapped using rules that are then utilized by higher level rules in a deductive manner. Meaning mapping rules are advantageously structured in a hierarchical fashion so as to utilize a re-usability of rules. This construction of mapping rules is similar to the art of programming functions used for a modularization of program code, wherein a function is called by a multitude of higher-level function calls rather than being repeatedly coded within the higher level. On the other hand, unlike programming functions being rather procedural statements, Datalog rules are rather declarative statements, which means they can be interpreted regardless of a position in a program.
  • In the following a mapping of EDD Information to an OPC UA information model—or OPC UA IM—is described. An exemplary EDDL variable in an EDD file is considered as follows:
  • MANUFACTURER 66,
    DEVICE_TYPE 0x070E,
    DEVICE_REVISION 1,
    DD_REVISION 1
    VARIABLE DEMO_Temperature_Sensor
    {
     LABEL DEMO_Temperature_Sensor
     HELP measures_actual_temperature;
     CLASS CONTAINED;
     TYPE FLOAT;
     {
      DEFAULT_VALUE 0.0;
     }
     HANDLING READ & WRITE;
    }
  • In order to accomplish a mapping of the above shown EDD information into an OPC UA information model, a mapping of typical EDD file attributes is done in a first step, which is followed by a step of mapping the variable itself.
  • As each EDD file has four top level attributes—manufacturer ID, device type, device revision and the device description revision, see first four lines in the EDDL code shown above—there are four OPC UA property nodes to be attached to the top-level object node representing the EDD file.
  • Each property node is constructed from a Variable node that is referenced from its parent object by a reference entitled »HasProperty«. Variables are defined using the Variable node class. Two types of variables in OPC UA IM are defined: properties and data variables. The Variable node is always part of at least one other node.
  • FIG. 5 shows the resulting model structure modeling the generic variable and top-level attributes of a general EDD file in the graph-based data information model of OPC UA.
  • In the following a mapping of an EDDL variable in the structure of an EDDL variable to an address space of the OPC UA information model is described.
  • A variable typically describes parameters contained in a field device or in an EDD application. A Datalog atomic formula representing an EDDL variable is expressed by:
  • eddl_Variable(
     EDDL_ID, EDDL_ID_1, EDDL_ID_2, EDDL_ID_3, EDDL_ID_4,
     EDDL_ID_5, EDDL_ID_6,
     EDDL_VariableName, EDDL_CLASS, EDDL_LABEL, EDDL_TYPE,
     EDDL_CONSTANT_UNIT,
     EDDL_DEFAULT_VALUE, EDDL_HANDLING, EDDL_HELP,
     EDDL_INITIAL_VALUE,
     EDDL_POST_EDIT_ACTIONS, EDDL_POST_READ_ACTIONS,
     EDDL_POST_WRITE_ACTIONS,
     EDDL_PRE_EDIT_ACTIONS, EDDL_PRE_READ_ACTIONS,
     EDDL_PRE_WRITE_ACTIONS,
     EDDL_READ_TIMEOUT, EDDL_REFRESH_ACTIONS,
     EDDL_RESPONSE_CODES, EDDL_STYLE,
     EDDL_VALIDITY, EDDL_WRITE_TIMEOUT).
  • According to an Industry Standard Specification entitled »IEC 62769-109-1:2015—Field Devices Integration (FDI)—Part 109-1: Profiles—HART and WirelessHART« the description of attributes of an EDDL variable is specified as:
      • EDDL_ID—UAObject node ID;
      • EDDL_ID_1—variable node ID;
      • EDDL_ID_2—variableType node ID;
      • EDDL_ID_3—OPC_DataType node ID;
      • EDDL_ID_4—node ID for variable EDDL_CONSTANT_UNIT;
      • EDDL_ID_5—node ID for variable EDDL_STYLE;
      • EDDL_ID_6—node ID for variable EDDL_VALIDITY;
      • EDDL_VariableName—specifies identifier of a variable;
      • EDDL_CLASS—specifies how the variable is used by the device and the EDD application for organization purposes and display;
      • EDDL_LABEL—specifies the displayed designation of an element;
      • EDDL_TYPE—specifies the data type of a variable;
      • EDDL_CONSTANT_UNIT—is used, if a variable has a units code which never changes;
      • EDDL_DEFAULT_VALUE—specifies the default setting for the variable;
      • EDDL_HANDLING—specifies the operations that can be performed on an element;
      • EDDL_HELP—specifies text, which provides a description of the construct;
      • EDDL_INITIAL_VALUE—specifies the value of a variable that is displayed when a device is instantiated for the first time;
      • EDDL_POST_EDIT_ACTIONS—specifies methods that shall be executed after the variable has been written to the device;
      • EDDL_POST_READ_ACTIONS—specifies methods that shall be executed after the variable was read from the device;
      • EDDL_POST_WRITE_ACTIONS—specifies methods that shall be executed after the variable has been written to the device;
      • EDDL_PRE_EDIT_ACTIONS—specifies methods that shall be executed immediately when the variable is going to be edited;
      • EDDL_PRE_READ_ACTIONS—specifies methods that shall be executed before the variable is read;
      • EDDL_PRE_WRITE_ACTIONS—specifies methods that shall be executed before the variable is written to the device;
      • EDDL_READ_TIMEOUT—specifies the length of time, in ms, the EDD application shall wait for the returned variable;
      • EDDL_REFRESH_ACTIONS—specifies EDD methods that shall be executed whenever the variable is displayed or refreshed;
      • EDDL_RESPONSE_CODES—specify values a device may return as error information;
      • EDDL_STYLE—specifies the way a variable is displayed;
      • EDDL_VALIDITY—specifies whether an element is valid or invalid; and;
      • EDDL_WRITE_TIMEOUT—specifies the length of time, in ms, an EDD application shall wait for confirmation that the variable is successfully written to the device.
  • The leading seven variables—EDDL_ID, EDDL_ID_1, EDDL_ID_2, EDDL_ID_3, EDDL_ID_4, EDDL_ID_5, EDDL_ID_6—are used as placeholders for certain OPC UA node identifiers or IDs.
  • In the following a mapping of an EDDL variable to a variable in the OPC UA information model is described. A Datalog atomic formula representing an OPC UA variable is specified as:
  • opc_UAVariable(
     OPC_NodeId, OPC_Value, OPC_DataType, OPC_ValueRank,
     OPC_ArrayDimensions, OPC_IsAbstract, OPC_AccessLevel,
     OPC_UserAccessLevel, OPC_MinSamplingInterval, OPC_Historizing)
  • According to an Industry Standard Specification entitled »OPC UA Part 5—Information Model RC 1.04.15 Specification« the description of attributes of the OPC UA Base Node class is specified as:
      • OPC_NodeId—a node identifier in the address space of an OPC UA server;
      • OPC_NodeClass—identifies the class of a node;
      • OPC_BrowseName—specifies a non-localized human-readable name of a node;
      • OPC_DisplayName—specifies the localized name of the node (used to display the name of the node to the user);
      • OPC_Description—optional description to explain the meaning of the node;
      • OPC_WriteMask—specifies possibility of a client to write attributes of the node; and;
      • OPC_UserWriteMask—optionally specifies possibility of a client to write attributes of the node taking user access rights into account.
  • The following Datalog rule will create an OPC UA Base Node Class with certain attributes taken from the corresponding EDDL variable:
  • opc_BaseNodeClass(
     EDDL_ID_1, “UAVariable”, EDDL_VariableName, EDDL_LABEL,
     EDDL_HELP, “Not_Used”, “Not_Used”)
     <= eddl_Variable.
  • This rule defines a base node for an OPC UA variable by the term:
      • <=eddl_Variable
  • Further on, the variable in the OPC UA information model has an ID specified as »EDDL_ID_1«. Browse name, display name and the description is respectively mapped to corresponding EDDL variable values, i.e. EDDL_VariableName, EDDL_LABEL, EDDL_HELP, respectively. WriteMask and UserWriteMask are not set in the example above.
  • In the following a definition of an OPC UA Variable Type Node Class is described. Defining an OPC Variable Type—see box with the same name in FIG. 5—for an OPC Variable—see box with the same name in FIG. 5—for an OPC variable is a common practice.
  • The signature of a variable type is represented with the following Datalog atomic formula:
      • opc_UAVariableType(OPC_NodeId, DefaultValue, DataType, ValueRank, ArrayDimensions, IsAbstract).
  • Consequently, a default value of the variable—see the second term »DefaultValue« in the signature of the formula above is specified. The following rule creates an OPC UA variable type by mapping the default value from a corresponding EDDL variable, namely EDDL_DEFAULT_VALUE:
  • opc_UAVariableType(
     EDDL_ID_2, EDDL_DEFAULT_VALUE, EDDL_ID_3, “−1”,
     “Not_Used”, “Not_Used”)
     <= eddl_Variable.
  • For identifiers OPC_NodeId and OPC_DataType, EDDL_ID_2 and EDDL_ID_3 are used respectively.
  • Consequently, opc_BaseNodeClass for opc_UAVariableType needs to be created too. The same rule as shown above can be used for this purpose. Only the identifier and the type (UAVariableType instead of UAVariable) need to change:
  • opc_BaseNodeClass(
     “EDDL_ID_2”, “UAVariableType”, EDDL_VariableName,
     EDDL_LABEL, EDDL_HELP, “Not_Used”,“Not_Used”)
     <= eddl_Variable.
  • The following section describes a creation of an OPC UA Data Type Class. Data type of an OPC UA variable can be specified with a following Datalog atomic formula:
      • opc_DataTypeNode(OPC_NodeId, OPC IsAbstract).
  • For the exemplary variable used before the following rule creates an OPC UA DataTypeNode:
  • opc_DataTypeNode(EDDL_ID_3, “Not_Used”)
     <= eddl_Variable.
  • Optionally, if an opc_BaseNodeClass for opc_DataTypeNode needs to be created, the same rule as shown above can be used. Only the identifier and the type (UADataType) need to change.
  • The following section describes a creation of an OPC UA Variable Node Class: EDDL_CONSTANT_UNIT. The signature of eddl_Variable has a term called EDDL_CONSTANT_UNIT. This term from an EDDL variable is to be mapped to an OPC UA Property, which is a type of an OPC UA Variable:
  • opc_ UAVariable(
     EDDL_ID_4, EDDL_CONSTANT_UNIT, “String”, “−1”, “Not_Used”,
     “Not_Used”, “Not_Used”, “Not_Used”, “Not_Used”)
     <= eddl_Variable.
  • The data type »String« above has its code in the OPC UA information model. Often the code is used in an OPC UA address space to denote a string.
  • The Class »BaseNodeClass« of the property is created by the following rule:
  • opc_ BaseNodeClass(
     “EDDL_ID_4”, “UAVariable”, “CONSTANT_UNIT”,
     “CONSTANT_UNIT”, “Not_Used”, “Not_Used”, “Not_Used”)
     <= eddl_Variable.
  • The following section describes a creation of an OPC UA Variable Node Class: EDDL_STYLE. The signature of eddl_Variable has a term called EDDL_STYLE. This term from an EDDL variable is to be mapped to an OPC UA Property, which is a type of an OPC UA Variable:
  • opc_ UAVariable(
     EDDL_ID_5, “EDDL_STYLE”, “String”, “−1”, “Not_Used”,
     “Not_Used”, “Not_Used”, “Not_Used”, “Not_Used”)
     <= eddl_Variable.
  • The BaseNodeClass of the property is realized with the following rule:
  • opc_ BaseNodeClass(
     “EDDL_ID_5”, “UAVariable”, “STYLE”, “STYLE”, “Not_Used”,
     “Not_Used”, “Not_Used”)
     <= eddl_Variable.
  • The following section describes a creation of an OPC UA Variable Node Class: EDDL_VALIDITY. The signature of eddl_Variable has a term called EDDL_VALIDITY. This term from an EDDL variable is to be mapped to an OPC UA Property, which is a type of an OPC UA Variable:
  • opc_ UAVariable(
     EDDL_ID_6, “EDDL_VALIDITY”, “String”, “−1”, “Not_Used”,
     “Not_Used”, “Not_Used”, “Not_Used”, “Not_Used”)
     <= eddl_Variable.
  • The BaseNodeClass of the property can be realized with the following rule.
  • opc_BaseNodeClass(
     “EDDL_ID_6”, “UAVariable”, “VALIDITY”, “VALIDITY”,
     “Not_Used”,
     “Not_Used”, “Not_Used”)
     <= eddl_Variable.
  • As mentioned above, actions in EDD, such as POST EDIT ACTIONS, POST READ ACTIONS, POST WRITE ACTIONS, PRE EDIT ACTIONS, PRE READ ACTIONS, PRE WRITE ACTIONS etc. can be mapped to OPC UA IM by using Datalog built-in predicates and compound terms. Since they can be used to handle external calls or functions, they can also be used to map EDD actions into OPC UA methods, as well as to call or execute methods and commands specified in an EDD.
  • The following section describes a creation of an OPC UA Object node. The EDD file attributes of the created OPC UA Object node, such as manufacturer ID, device type, device revision and the device description revision, serve as reference. The OPC UA Object node is realized with the following rule:
  • opc_UAObject(EDDL_ID)
     <=
     eddl_FileInformation(
     EDDL_ID, EDDL_ID_1, EDDL_ID_2, EDDL_ID_3, EDDL_ID_4,
     EDDL_ID_5,
     EDDL_MANUFACTURER, EDDL_DEVICE_TYPE,
     EDDL_DEVICE_REVISION, EDDL_DD_REVISION).
  • The rule body for creating the OPC UA Object node is apparently differing from other rule bodies. Terms in eddl_FileInformation have the following meaning according to a specification defining EDDL and entitled »IEC 61804-3: Function blocks (FB) for process control—Part 3: Electronic Device Description Language (EDDL)«
      • EDDL_ID—UAObject node ID;
      • EDDL_ID_1—UAObjectType node ID;
      • EDDL_ID_2—node ID for variable EDDL_MANUFACTURER;
      • EDDL_ID_3—node ID for variable EDDL_DEVICE_TYPE;
      • EDDL_ID_4—node ID for variable EDDL_DEVICE_REVISION;
      • EDDL_ID_5—node ID for variable EDDL_DD_REVISION;
      • EDDL_MANUFACTURER—identifies the manufacturer;
      • EDDL_DEVICE_TYPE—specifies an identifier for the device type, as defined by the manufacturer of the device;
      • EDDL_DEVICE_REVISION—specifies a unique code for the device revision of the field device, as defined by the manufacturer;
      • EDDL_DD_REVISION—specifies a unique code for the EDD revision of this device, as defined by the manufacturer.
  • An inherited base node class for the OPC UA Object node is realized with the rule:
  • opc_ BaseNodeClass(
     “EDDL_ID”, “UAObject”, “EDD DOCUMENT”, “EDD DOCUMENT”,
     “Not_Used”, “Not_Used”, “Not_Used”)
     <= eddl_FileInformation.
  • For the sake of readability, the term
      • eddl_FileInformation
        hereinafter replaces the complete atomic formula:
      • eddl_FileInformation(EDDL_ID, EDDL_ID_1, EDDL_ID_2, EDDL_ID_3, EDDL_ID_4, EDDL_ID_5, EDDL_MANUFACTURER, EDDL_DEVICE_TYPE, EDDL_DEVICE_REVISION, EDDL_DD_REVISION).
  • The following section describes a creation of an OPC UA ObjectType class. An OPC UA ObjectType class for the OPC UA Object node is realized with the rule:
      • opc_UAObjectType(EDDL_ID_1)<=eddl_FileInformation.
  • The following section describes a creation of an OPC UA Variable Node Class: EDDL_MANUFACTURER. The EDD file attribute »manufacturer ID« is realized with the rule:
  • opc_ UAVariable(
     EDDL_ID_2, EDDL_MANUFACTURER, “String”, “−1”, “Not_Used”,
     “Not_Used”, “Not_Used”, “Not_Used”, “Not_Used”)
     <= eddl_FileInformation.
  • An inherited base node class for the attribute »manufacturer ID« is realized with the rule:
  • opc_BaseNodeClass(
     “EDDL_ID_2”, “UAVariable”, “MANUFACTURER”,
     “MANUFACTURER”, “Not_Used”, “Not_Used”, “Not_Used”)
     <= eddl_FileInformation.
  • Remaining variables for EDDL_DEVICE_TYPE, EDDL_DEVICE_REVISION and EDDL_DD_REVISION are created in a substantially similar manner. A further description regarding the creation of these variables is, therefore, omitted.
  • Hitherto the creation of nodes has been shown. Subsequent parts of this description will now define and elucidate how to link these nodes using references. An absence of references would result in an absence of semantic connections between nodes, and, therefore, result in an absence of an overall semantic structure.
  • In the exemplary EDDL variable in an EDD file as stated above, the top-level file Object must be referenced to the top-level Objects folder in the OPC UA server as this is the root node for an OPC UA server. As such, all top-level nodes within an information model should be direct children of this node. The reference which accomplishes this is an »Organizes« reference to an in-built node having an ID with a value of 85 or »ObjectsFolder«.
  • This reference is realized by:
  • opc_Reference(“i=85”, “Organizes”, EDDL_ID) <=
    eddl_FileInformation.
  • The OPC UA Reference is represented by the following Datalog atomic formula:
  • opc_Reference(opc_SourceNodeId, opc_ReferenceType,
    opc_TargetNodeId).
  • The attributes of the OPC UA Reference have the following meaning:
      • opc_SourceNodeId—a source Node ID of a reference;
      • opc_ReferenceType—a reference type. As specified by OPC UA IM. Possible values are: HasTypeDefinition, HasComponent, HasProperty, HasSubtype, Organizes, HasSubtype etc.;
      • opc_TargetNodeId—a target Node ID of a reference.
  • Additionally, however optionally, it is common to state that the ObjectsFolder and the top-level node are related via the »HasComponent« reference:
  • opc_Reference(“i=85”, “HasComponent”, EDDL_ID)
    <= eddl_FileInformation
  • The ObjectsFolder is then semantically linked using a HasTypeDenition reference in order to show announce that it contains the type definition, i.e., the in-built type FolderType (i=61):
  • opc_Reference(“i=85”, “HasTypeDefinition”, “i=61”)
    <= eddl_FileInformation.
  • Further on, references between the core Object and the MANUFACTURE ID property Variable node are instantiated. Similar references are instantiated for remaining properties, i.e., DEVICE TYPE, DEVICE REVISION, and DD REVISION:
  • opc_Reference(EDDL_ID, “HasProperty”, “EDDL_ID_2”)
    <= eddl_FileInformation.
    opc_Reference(EDDL_ID, “HasProperty”, “EDDL_ID_3”)
    <= eddl_FileInformation.
    opc_Reference(EDDL_ID, “HasProperty”, “EDDL_ID_4”)
    <= eddl_FileInformation.
    opc_Reference(EDDL_ID, “HasProperty”, “EDDL_ID_5”)
    <= eddl_FileInformation.
  • Additionally, however optionally, the above described variables EDDL_ID_2, EDDL_ID_3, EDDL_ID_4 and EDDL_ID_5 are referenced by BaseDataVariableType (“i=63”) via “HasSubtype” and “HasTypeDefinition” references. This references are expressed in a substantially similar manner as described before. A further description regarding the creation of these references is, therefore, omitted.
  • The core object is then related to the variable node as expressed by:
  • opc_Reference(EDDL_ID, “HasComponent”, EDDL_ID_1)
    <= eddl_Variable.
  • The variable node has been defined via the variable type node:
  • opc_Reference(EDDL_ID_1, “HasTypeDefinition”, EDDL_ID_2)
    <= eddl_Variable.
  • Additionally, however optionally, a “HasSubtype” reference to the BaseDataVariableType (“i=63”) node is added regarding EDDL_ID_2. Further on, relation to the float datatype (“i=10”), of the temperature variable, is accomplished by the reference:
  • opc_Reference(EDDL_ID_3, “HasSubtype”, “i=10”) <=
    eddl_Variable.
  • Property variables, CONSTANT UNIT, STYLE, and VALIDITY, are connected with the exemplary variable node:
  • opc_Reference(EDDL_ID_1, “HasProperty”, “EDDL_ID_4”)
    <= eddl_Variable.
    opc_Reference(EDDL_ID_1, “HasProperty”, “EDDL_ID_5”)
    <= eddl_Variable.
    opc_Reference(EDDL_ID_1, “HasProperty”, “EDDL_ID_6”)
    <= eddl_Variable.
  • Additionally, however optionally, “HasSubtype” and “HasTypeDefinition” references are added to the BaseDataVariableType (“i=63”) node is added regarding EDDL_ID_4, EDDL_ID_5 and EDDL_ID_6.
  • A variable in the EDD file is modeled as a separate variable object, using the basic structure as shown in FIG. 5, where the variable is based around a Variable object with accompanying property Variable nodes, VariableType node and a simple DataType node. Accordingly, each variable in the EDD file has a number of various properties that are specific to the variable.
  • FIG. 6 shows an extended information model using the standard OPC UA Information Model, and realized by Datalog rules for nodes and references as described above.
  • Through the use of a collection of different OPC UA nodes, it can thus be seen that it is easy to map the unique information model of an EDD file and its variables into the OPC UA IM. The mappings of an EDD variable into the OPC UA IM have been summarized up in Table 5.
  • EDDL OPC UA
    EDD File OPC UA Object
    EDD File Information OPC UA Properties
    EDD Variable OPC UA Variable, VariableType and DataType
    VARIABLE NAME OPC UA Variable Base Node, BrowseName
    LABEL OPC UA Variable Base Node, DisplayName
    HELP OPC UA Variable Base Node, Description
    HANDLING OPC UA Variable AccessLevel
    DEFAULT VALUE OPC UA VariableType Value
    CLASS OPC UA DataType Base Node, BrowseName
    TYPE OPC UA DataType, HasSubType reference to
    respective OPC UA standard data type
  • The following section describes an overall system architecture and flow of data in a gateway GW according to an embodiment for transforming a field device description FDD—or more generally: a description of an industrial process equipment—into a OPC UA information model—or more generally: into a semantically enriched and graph-based data information model for automation purposes—with reference to FIG. 7.
  • A parsing module PRS of the gateway GW is reading a field device description FDD of a—not shown—field device or other arbitrary process equipment. The field device description FDD is stored in the field device and accessed via a field communication protocol, e.g. the well-known HART (Highway Addressable Remote Transducer) protocol.
  • The parsing module PRS is parsing information entities in the field device description FDD of the field device by said field communication protocol. The parsed information entities are then transformed into a data object representation—declarative logic facts—which are asserted within a deductive database or knowledge base KNB. The parsing module PRS may optionally use an—not shown—accompanying asserter for wrapping the extracted information into Datalog facts and asserting the declarative logic Datalog facts within the knowledge base KNB, e.g. Datalog database KNB. The contents of the knowledge base KNB are used for applying mapping rules or mapping knowledge MKN in general to said declarative logic facts using a Datalog Engine DLE. The parsing module PRS may be formed by one or more processors (e.g., the same or different processors as the one or more processors of the interface module).
  • It is to be noted here, that the knowledge base KNB or knowledge engine KNB is not only a passively queried database but also acting in a sense of applying rules, mapping facts etc. Depending on the implementation of a particular embodiment, the knowledge base KNB co-operates with the parsing module PRS and a Datalog Engine DLE and may include one or more of these components.
  • In order to map the declarative logic facts using the Datalog Engine DLE, the knowledge base KNB is loaded with Mapping Knowledge MKN. The Mapping Knowledge MKN is operated to deductively map the data objects transformed by the field device description FDD within the knowledge base KNB with a structure to allow them to be later extracted as OPC UA objects. These mapping rules are asserted before any mappings occur, such that they are able to be applied to input information throughout the mapping process.
  • It has been shown how the Mapping Knowledge MKN can be operated for EDDL and OPC UA IM. Applying similar procedures, it is possible to create Mapping Knowledge MKN for another field device description model, or an extension of this one, for example, if one needs to represent EDD data over OPC UA IM with the semantics from another model, e.g., the NAMUR Open Architecture or NOA model. Applicability of this approach is thus not limited to other standard information models, e.g., IODD or IO Device Description, FDT/DTM14 or Field Device Tool/Device Type Manager, or NOA (NAMUR Open Architecture).
  • Unlike most mapping systems, the functionality of the knowledge base KNB—one core of the gateway GW—has been abstracted away from the system itself. By doing so there is a larger degree of flexibility and portability when implementing application specific mappings. By removing all mapping logic from within the source code, the system's flexibility is bounded only by the modeling abilities of the OPC UA IM.
  • With the mapped EDD information stored within the Knowledge Base KNB the information is then processed and queried in a way that this information can be extracted and eventually exposed via an gateway-internal OPC UA server ISF. These tasks are accomplished by the Datalog Engine DLE and a Query Engine QYE. The recursive querying algorithms for Datalog formalism are well known.
  • According to embodiments, Datalog has been chosen as a formalism to implement the proposed mapping method due to the of efficiency of Datalog algorithms and their suitability on even resource constraint devices, e.g., non-expensive IoT devices (Internet of Things) and IoT gateways.
  • FIG. 8 shows a flowchart for querying and extracting OPC UA information from the Datalog Engine in order to recursively instantiate all references pointing from a source node.
  • By a first step 802, the database is queried for a starting base node using a given NodeID.
  • In a subsequent decision step 804 a decision is made whether the node with the given NodeID is a base node or not. If the given node is no base node—represented by a branch N (»No«) of decision step 804—a subsequent step 806 is carried out. The subsequent step 806 returns the node with the NodeID.
  • In a subsequent decision step 804 a decision is made whether a base node with the given NodeID exists or not. If the node does not exist—represented by a branch N (»No«) of decision step 804—there is nothing to map anymore. The procedure is completed by step 806. If a base node with the current NodeID exists—which is represented by a branch Y (»Yes«) pointing vertically downward from decision step 804—a subsequent step 808 is carried out. In the subsequent step 808 the database is queried for node attributes and node type of the base node.
  • In a subsequent step 810, the node information is processed, and the current node is marked as known. In a subsequent step 812, the database is queried for references with a (source) node ID which matches with the current NodeID. In a subsequent step 814, the queried reference information is stored. In a subsequent step 816, for each of the stored reference information one or more NodeIDs are targeted and/or extracted.
  • In a subsequent decision step 818 a decision is made of whether a target node is already known or not. Once all nodes are known—represented by a branch Y (»Yes«) pointing vertically upward from decision step 818—the procedure is completed by step 822.
  • If the referenced target node is not known—represented by a branch N (»No«) of decision step 818—the flow branches to the step 808, which will be recursively called—see reference sign 820—with NodeID as target ID.
  • The source node would be an OPC UA server's object root node. One has only to query the database for references with a source node ID matching that of the root node. The database will return a list of all references associated with the root node, thus giving a list of all the reference's target node IDs. This returned list can in turn can be recursively processed, allowing for the hierarchical information model of the OPC UA IM to be traversed and processed.
  • Finally the OPC UA information extracted from the Query Engine is advantageously converted into XML, nodes within an XML Schema of OPC UA. OPC UA Server Config Generator accomplishes this task, and then passes the information downstream to the OPC UA Server. In this way every standard OPC UA client can access data, which originated as EDD field device descriptions.
  • In conclusion, the embodiments show the following benefits.
  • The mapping system of the gateway according to the embodiments is capable of interpreting input information, particularly EDD, using stored mapping knowledge, deductively creating information mappings from the input information model into the OPC UA information model, thus eliminating the need for trivial one-to-one hard-coded mapping approaches and allowing for the external storage and querying of mapping knowledge.
  • The mapping knowledge is extensible for enabling new classes of applications. Beyond a usage for monitoring field devices, the mapping knowledge is also capable of supporting a management of field assets.
  • The mapping is suited to be implemented on edge or constrained devices. Typically, these are IoT (Internet of Things) gateways or constrained and inexpensive devices. While the mapping can be also accomplished with other semantic formalism, Datalog can be easily implemented on constrained devices. At the same time, Datalog is expressive enough to be used for the mapping of EDD to an OPC UA information model. Datalog was chosen as a formalism for implementing the knowledge mapping system because of its algorithmic efficiency and its possibility to implement the algorithms on constraint devices. The semantics of Datalog is well understood and efficient algorithms have been developed over the past 30 years.
  • The mapping according to the embodiments is particularly applicable for edge or constrained devices, however, suited to be implemented in a cloud environment as well.
  • The embodiments allow for a discovery of the mapping knowledge or a part thereof. A user or an application can, for example, query the storage of mapping knowledge via expressive semantic queries.
  • Extensibility of the mapping knowledge with other models is a further advantage. It has been shown how the Mapping Knowledge can be created for EDDL and OPC UA IM. Applying similar procedures, it is possible to create Mapping Knowledge for another field device description model or an extension of this one.
  • Further advantages are achieved by the portability and modularity of the system. The mapping knowledge is transparently available instead of being hard-coded. As such it can be, for example, downloaded, exchanged, updated etc.
  • The embodiments advantageously allow for a validation of field device data against the mapping knowledge. For example, it can be advantageously checked whether field device data are in conformance to a specification.
  • The embodiments advantageously allow a direct access of information. For many added-value applications, e.g., related to monitoring, management, and optimization of field level assets, it is desirable not to access field information over a controller.
  • The mapping system reduces the complexity of mapping complex information models where large parts of mapping knowledge can be inherited from previous mappings or complex structures can be mapped by deductively applying mapping rules in a bottom-up fashion.
  • It is to be understood that the elements and features recited in the appended claims may be combined in different ways to produce new claims that likewise fall within the scope of the present invention. Thus, whereas the dependent claims appended below depend from only a single independent or dependent claim, it is to be understood that these dependent claims can, alternatively, be made to depend in the alternative from any preceding or following claim, whether independent or dependent, and that such new combinations are to be understood as forming a part of the present specification.
  • While the present invention has been described above by reference to various embodiments, it should be understood that many changes and modifications can be made to the described embodiments. It is therefore intended that the foregoing description be regarded as illustrative rather than limiting, and that it be understood that all equivalents and/or combinations of embodiments are intended to be included in this description.

Claims (11)

1. A gateway for transforming a description of an industrial process equipment into a semantically enriched and graph-based data information model for automation purposes, the gateway including:
a parsing module configured to:
parse information entities in the description of the industrial process equipment by a field communication protocol;
transform the parsed information entities into declarative logic facts; and
assert the declarative logic facts within a deductive database;
a knowledge engine configured to apply mapping rules to the declarative logic facts using a mapping knowledge base, wherein the declarative logic facts are deductively mapped onto the graph-based data information model; and
an interface module configured to access the graph-based data object model.
2. The gateway of claim 1, wherein the semantically enriched and graph-based data information model is an OPC UA information model.
3. The gateway of claim 2, wherein the knowledge engine is configured to apply a mapping rule for creating an OPC UA Base Node Class using attributes taken from a corresponding variable in the description of the industrial process equipment.
4. The gateway of claim 2, wherein the knowledge engine is configured to apply a mapping rule is applied for creating an OPC UA Object node by referencing corresponding attributes in the description of the industrial process equipment including a manufacturer identification, a device type, a device revision, and a device description revision.
5. The gateway of claim 1, wherein the description of the industrial process equipment is expressed by an electronic device description language (EDDL), a field device tool (FDT)/device type manager (DTM) protocol, a general station description (GSD), or an TO device description.
6. The gateway of claim 1, wherein the interface module is a gateway-internal OPC UA server.
7. The gateway of claim 1, wherein the knowledge engine is a Datalog engine.
8. The gateway of claim 7, wherein the knowledge engine, the parsing module, and the Datalog engine are substantially integrated within one functional unit.
9. The gateway of claim 1, wherein the field communication protocol is a highway addressable remote transducer (HART) protocol.
10. The gateway of claim 1, further comprising at least one equipment interface for connecting at least one industrial process equipment.
11. A method for transforming a description of an industrial process equipment into a semantically enriched and graph-based data information model for automation purposes, the method comprising:
parsing information entities in the description of the industrial process equipment by a field communication protocol;
transforming the parsed information entities into declarative logic facts;
asserting the declarative logic facts within a deductive database;
applying mapping rules to the declarative logic facts using a mapping knowledge base, wherein the declarative logic facts are deductively mapped onto the graph-based data information model; and
providing, by an interface module, the graph-based data object model.
US16/235,557 2018-12-28 2018-12-28 Gateway and method for transforming a description of an industrial process equipment into a data information model Abandoned US20200210869A1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
US16/235,557 US20200210869A1 (en) 2018-12-28 2018-12-28 Gateway and method for transforming a description of an industrial process equipment into a data information model
US17/418,767 US20220058502A1 (en) 2018-12-28 2019-11-28 Gateway and method for transforming a description of an industrial process equipment into a data information model
PCT/EP2019/082917 WO2020135968A1 (en) 2018-12-28 2019-11-28 A gateway and method for transforming a description of an industrial process equipment into a data information model
EP19821027.0A EP3853680A1 (en) 2018-12-28 2019-11-28 A gateway and method for transforming a description of an industrial process equipment into a data information model
CN201980086722.4A CN113196192A (en) 2018-12-28 2019-11-28 Gateway and method for converting a description of industrial process equipment into a data information model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US16/235,557 US20200210869A1 (en) 2018-12-28 2018-12-28 Gateway and method for transforming a description of an industrial process equipment into a data information model

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/418,767 Continuation US20220058502A1 (en) 2018-12-28 2019-11-28 Gateway and method for transforming a description of an industrial process equipment into a data information model

Publications (1)

Publication Number Publication Date
US20200210869A1 true US20200210869A1 (en) 2020-07-02

Family

ID=68887391

Family Applications (2)

Application Number Title Priority Date Filing Date
US16/235,557 Abandoned US20200210869A1 (en) 2018-12-28 2018-12-28 Gateway and method for transforming a description of an industrial process equipment into a data information model
US17/418,767 Pending US20220058502A1 (en) 2018-12-28 2019-11-28 Gateway and method for transforming a description of an industrial process equipment into a data information model

Family Applications After (1)

Application Number Title Priority Date Filing Date
US17/418,767 Pending US20220058502A1 (en) 2018-12-28 2019-11-28 Gateway and method for transforming a description of an industrial process equipment into a data information model

Country Status (4)

Country Link
US (2) US20200210869A1 (en)
EP (1) EP3853680A1 (en)
CN (1) CN113196192A (en)
WO (1) WO2020135968A1 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112597129A (en) * 2020-12-21 2021-04-02 浙江大学 Automatic construction method of OPC UA information model based on structured database
CN112702343A (en) * 2020-12-22 2021-04-23 机械工业仪器仪表综合技术经济研究所 OPC UA and MQTT fusion method
CN112860657A (en) * 2021-01-14 2021-05-28 中车青岛四方车辆研究所有限公司 Method and system for constructing address space of real-time database of TIAS (geographic information System)
US20220121716A1 (en) * 2020-10-16 2022-04-21 Abb Schweiz Ag Negotiation of information contracts between information providers and consumers
CN114465911A (en) * 2022-02-10 2022-05-10 成都阿普奇科技股份有限公司 Internet of things sensing equipment resource unified description method
WO2022100909A1 (en) * 2020-11-12 2022-05-19 Abb Schweiz Ag Interface device for connecting process controllers to opc ua peer devices
CN115086362A (en) * 2022-05-18 2022-09-20 中国科学院沈阳自动化研究所 Intelligent transmission control method of heterogeneous edge equipment under multiple complex modes
EP4072099A1 (en) * 2021-04-08 2022-10-12 Siemens Aktiengesellschaft System and method for exchanging data between a server and a client in an industrial data network
US20230171316A1 (en) * 2020-05-11 2023-06-01 Ls Electric Co., Ltd. Data collection apparatus of power system
EP4254086A1 (en) * 2022-03-31 2023-10-04 Siemens Aktiengesellschaft Transforming an ontology into a graph-based information model for automation purposes
EP4300226A1 (en) * 2022-06-30 2024-01-03 Siemens Aktiengesellschaft Gateway and method for transforming a data model of a manufacturing process equipment

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3502817A1 (en) * 2017-12-19 2019-06-26 ABB Schweiz AG Method for facilitating control system testing and simulation
CN112688865B (en) * 2020-12-10 2022-09-02 西安理工大学 Design method of OPC UA gateway for graphical online modeling
WO2023004802A1 (en) * 2021-07-30 2023-02-02 西门子(中国)有限公司 Method and device for automatically generating model of industrial process system
WO2023028886A1 (en) * 2021-08-31 2023-03-09 Siemens Aktiengesellschaft Industrial data modeling device, method and computer readable storage medium

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7317952B2 (en) * 2005-04-07 2008-01-08 Honeywell International Inc. Managing field devices having different device description specifications in a process control system
US20070078540A1 (en) * 2005-10-05 2007-04-05 Invensys Systems, Inc. Utility for comparing deployed and archived parameter value sets within a field device editor
US7889747B2 (en) * 2006-05-31 2011-02-15 Honeywell International Inc. Apparatus, system, and method for integrating a wireless network with wired field devices in a process control system
EP1876553A1 (en) * 2006-07-07 2008-01-09 Abb Research Ltd. Method and system for engineering process graphics using sketch recognition
KR101080434B1 (en) * 2009-11-17 2011-11-07 울산대학교 산학협력단 OLE for Process Control Unified Architecture Server based FDT/DTM and EDDL for Device Integration
US8984533B2 (en) * 2010-04-15 2015-03-17 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US11068657B2 (en) * 2010-06-28 2021-07-20 Skyscanner Limited Natural language question answering system and method based on deep semantics
DE102010062266A1 (en) * 2010-12-01 2012-06-21 Codewrights Gmbh Method for implementing at least one additional function of a field device in automation technology
DE102010063164A1 (en) * 2010-12-15 2012-06-21 Endress + Hauser Process Solutions Ag Method for integrating at least one field device in a network of automation technology
CN103108411B (en) * 2011-11-11 2016-04-06 中国联合网络通信集团有限公司 Internet of things networking method and equipment
US20140040431A1 (en) * 2012-08-06 2014-02-06 General Electric Company Systems and methods for an opc ua server
KR20150052538A (en) * 2013-11-06 2015-05-14 한국전력공사 Apparatus and method for managing node of opc ua
CN103838921B (en) * 2014-02-13 2015-03-25 华北电力大学(保定) PSCAD-EMTDC simulation model automatic generation method
WO2016019183A1 (en) * 2014-07-30 2016-02-04 Tempered Networks, Inc. Performing actions via devices that establish a secure, private network
DE102015213300A1 (en) * 2015-07-15 2017-01-19 Siemens Aktiengesellschaft Method and device for generating a device-specific identifier and devices comprising a personalized programmable circuit module
CN105278960A (en) * 2015-10-27 2016-01-27 航天恒星科技有限公司 Process automation method and system in remote sensing application
US10359911B2 (en) * 2016-10-21 2019-07-23 Fisher-Rosemount Systems, Inc. Apparatus and method for dynamic device description language menus
CN107423054B (en) * 2017-06-29 2021-03-19 北京广利核系统工程有限公司 Self-defined graphical algorithm configuration device, system and method based on FPGA
CN107454092B (en) * 2017-08-18 2021-09-17 北京海兰信数据科技股份有限公司 OPCUA and DDS protocol signal conversion device, communication system and communication method
CN108459574A (en) * 2018-03-27 2018-08-28 重庆邮电大学 It is a kind of that system is managed based on the semantic field device information with OPC UA

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230171316A1 (en) * 2020-05-11 2023-06-01 Ls Electric Co., Ltd. Data collection apparatus of power system
US20220121716A1 (en) * 2020-10-16 2022-04-21 Abb Schweiz Ag Negotiation of information contracts between information providers and consumers
WO2022100909A1 (en) * 2020-11-12 2022-05-19 Abb Schweiz Ag Interface device for connecting process controllers to opc ua peer devices
EP4002030A1 (en) * 2020-11-12 2022-05-25 ABB Schweiz AG Interface device for connecting process controllers to opc ua peer devices
CN116472503A (en) * 2020-11-12 2023-07-21 Abb瑞士股份有限公司 Interface device for connecting a process controller to an OPC UA peer device
CN112597129A (en) * 2020-12-21 2021-04-02 浙江大学 Automatic construction method of OPC UA information model based on structured database
CN112702343A (en) * 2020-12-22 2021-04-23 机械工业仪器仪表综合技术经济研究所 OPC UA and MQTT fusion method
CN112860657A (en) * 2021-01-14 2021-05-28 中车青岛四方车辆研究所有限公司 Method and system for constructing address space of real-time database of TIAS (geographic information System)
EP4072099A1 (en) * 2021-04-08 2022-10-12 Siemens Aktiengesellschaft System and method for exchanging data between a server and a client in an industrial data network
CN114465911A (en) * 2022-02-10 2022-05-10 成都阿普奇科技股份有限公司 Internet of things sensing equipment resource unified description method
EP4254086A1 (en) * 2022-03-31 2023-10-04 Siemens Aktiengesellschaft Transforming an ontology into a graph-based information model for automation purposes
CN115086362A (en) * 2022-05-18 2022-09-20 中国科学院沈阳自动化研究所 Intelligent transmission control method of heterogeneous edge equipment under multiple complex modes
EP4300226A1 (en) * 2022-06-30 2024-01-03 Siemens Aktiengesellschaft Gateway and method for transforming a data model of a manufacturing process equipment

Also Published As

Publication number Publication date
WO2020135968A1 (en) 2020-07-02
CN113196192A (en) 2021-07-30
EP3853680A1 (en) 2021-07-28
US20220058502A1 (en) 2022-02-24

Similar Documents

Publication Publication Date Title
US20220058502A1 (en) Gateway and method for transforming a description of an industrial process equipment into a data information model
Graube et al. Information models in OPC UA and their advantages and disadvantages
US7613285B2 (en) System and method for service-oriented automatic remote control, remote server, and remote control agent
US20070174308A1 (en) Data warehousing systems and methods having reusable user transforms
Ramis et al. Knowledge-based web service integration for industrial automation
EP3712787B1 (en) A method for generating a semantic description of a composite interaction
JP6065008B2 (en) Control device
US20160291563A1 (en) A method and a system for replacing and commissioning of a field device
Strassner et al. A semantic interoperability architecture for Internet of Things data sharing and computing
Schiekofer et al. A formal mapping between OPC UA and the semantic web
KR102662252B1 (en) Method for converting a data model into a target ontology for automation purposes
Köcher et al. A method to automatically generate semantic skill models from PLC code
Weigand et al. Creating Virtual Knowledge Graphs from Software-Internal Data
Legat et al. Unified sensor data provisioning with semantic technologies
EP2772877A1 (en) Method and system for automated detection of inconsistencies in a plant model
Fernbach et al. Linked data for building management
Köcher et al. Toward a Generic Mapping Language for Transformations between RDF and Data Interchange Formats
CN110046257A (en) For the method and apparatus based on ontology matching unit data model
Mizutani et al. Towards Provenance Integration for Field Devices in Industrial IoT Systems
EP4072099A1 (en) System and method for exchanging data between a server and a client in an industrial data network
Pessemier et al. Developing a PLC-friendly state machine model: lessons learned
EP4287037A1 (en) A method for generating a query pertaining to an industrial automation control system
Pantoni et al. Developing and implementing an open and non-proprietary device description for FOUNDATION fieldbus based on software standards
EP3812985A1 (en) Automation component and method of operating the same based on an enhanced information model
Ahmadon et al. The Design Once, Provide Anywhere Concept for the Internet of Things Service Implementation

Legal Events

Date Code Title Description
AS Assignment

Owner name: SIEMENS AKTIENGESELLSCHAFT, GERMANY

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ANICIC, DARKO;HOFFMAN, ALEXANDER;SIGNING DATES FROM 20190317 TO 20190322;REEL/FRAME:048772/0831

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION