Method for Generating Self-Description Data Modules
20220342372 · 2022-10-27
Inventors
- Brent HANNIMAN (Nürnberg, DE)
- Steffen Lamparter (Feldkirchen, DE)
- Jens MECKEL (Postbauer-Heng, DE)
- Jörg Neidig (Nürnberg, DE)
Cpc classification
Y02P90/02
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
International classification
Abstract
A method for generating respective self-description data modules with respect to at least one functionality and/or at least one component, device, or system, wherein a data collection is provided comprising engineering elements from at least one of the three data sources, where relationship information is ascertained in which each piece of relationship information is assigned to engineering elements of the data collection, a multigraph comprising nodes and connections between nodes is generated, a clustering method is applied to the multigraph to ascertain at least one sub-graph within the multigraph, a sub-graph is selected from the ascertained at least one sub-graph, and a self-description data module relating to a component and/or a functionality of the device or system is generated.
Claims
1.-12. (canceled)
13. A method for generating a respective self-description data module in each case in relation to at least one of (i) at least one functionality and (ii) at least one component of a device or installation, a data collection comprising engineering elements from at least one of three data sources, a first data source containing automation engineering data in relation to at least one of automation and an automation plan of the installation or device or parts thereof, a second data source containing mechanical computer aided design data in relation to a mechanical and/or spatial plan of the device or installation or parts thereof, and/or in relation to a mechanical and/or spatial design of the device or installation or parts thereof, and a third data source containing electrical computer aided design data in relation to an electrical plan and/or circuit diagram of the device or installation or parts thereof, and/or in relation to an electrical design and/or implemented circuit diagram of the device or installation or parts thereof, the method comprising: a.) ascertaining relationship information respectively associated with engineering elements of the data collection; b.) generating a multigraph comprising nodes and connections between nodes, the nodes each being associated with engineering elements of the data collection and the connections each being associated with relationship information ascertained in accordance with step a.); c.) applying a clustering method to the multigraph to ascertain at least one sub-graph within the multigraph; d.) selecting a sub-graph from the at least one sub-graph ascertained in step c.); and e.) creating a self-description data module in relation to a component and/or a functionality of the device or installation, the self-description data module comprising the selected sub-graph and/or information contained in the sub-graph.
14. The method as claimed in claim 13, wherein during step e.), a content description file is generated, containing at least one description element for at least one of a functionality and component to which the sub-graph data stored in the self-description data module relate.
15. The method as claimed in claim 13, wherein the self-description data module generated in during step e.) is configured as a skill data module in relation to a functionality of the device or installation.
16. The method as claimed in claim 14, wherein the self-description data module generated in during step e.) is configured as a skill data module in relation to a functionality of the device or installation.
17. The method as claimed in claim 13, further comprising: f.) identifying description information in relation to the engineering elements associated with the ascertained self-description data module within the data collection and within at least one of the first, second and third data sources, and storing the identified description information in the self-description data module.
18. The method as claimed in claim 13, further comprising: g.) identifying context information in relation to the engineering elements associated with the ascertained self-description data module within further data sources and storing the identified context information in the self-description data module.
19. The method as claimed in claim 17, wherein at least one of the identified description information and the identified context information are stored in the self-description data module as a semantic database.
20. The method as claimed in claim 18, wherein at least one of the identified description information and the identified context information are stored in the self-description data module as a semantic database.
21. The method as claimed in claim 13, wherein the self-description data module is stored in at least one of (i) a storage unit of the device or installation, (ii) an engineering system for at least one of mechanical, electrical and automation engineering.
22. A self-description data module for a device or installation, wherein the self-description data module is created via the method as claimed in claim 13.
23. A non-transitory computer-readable storage medium comprising the self-description data module as claimed in claim 22.
24. A device or installation having a storage unit, wherein the storage unit comprises the self-description data module as claimed in claim 22.
25. The device or installation as claimed in claim 24, wherein at least one of: (i) the self-description data module comprises a generated content description file containing at least one description element for at least one of a functionality and component to which the sub-graph data stored in the self-description data module relate and (ii) the device or installation is configured to generate the generated content description file containing at least one description element for at least one of a functionality and component to which the sub-graph data stored in the self-description data module relate; wherein at least one of the device or installation is further configured to communicate the content description file to an external device and the device or installation is further configured to receive a description element from the content description file in relation to the functionality of the device or installation and to then at least one of call, output corresponding information in relation to the functionality or component and call or execute the corresponding functionality.
26. An automation engineering system comprising: a storage unit; wherein the storage unit comprises the self-description data module as claimed in claim 22.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0141] The present invention is explained in more detail by way of example below with reference to the appended figures, in which:
[0142]
[0143]
[0144]
DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS
[0145]
[0146] In this case, in a first step 110, engineering data 100 are made available. In this case, the engineering data 100 are one example of a data collection comprising engineering elements according to the present description. The engineering data 100 and the engineering elements contained therein are discussed in more detail in the course of the description of
[0147] In a next method step 120, relationship information 150 is ascertained, in relation to these engineering data 100, between some of the engineering elements contained in the engineering data 100. The corresponding relationship information 150 and the ascertainment thereof are likewise discussed in more detail in connection with the explanations of
[0148] In a following working step 130, a multigraph 200 is then created from engineering elements of the engineering data 100 and corresponding relationship information 150 regarding these engineering data 100. In this case, the selected engineering elements are selected as nodes in this multigraph 200 and the corresponding relationship information 150 is selected as connection between the respective nodes. In this case, the multigraph 200 may be created and stored in the form of a graphical depiction or else an appropriately adapted mathematical or other depiction of the multigraph structure.
[0149] The exemplary creation of such a multigraph 200 is explained in more detail in the course of the explanations of
[0150] Next, in a clustering step 140, the multigraph 200 is divided into sub-graphs 280, 290, where the clustering is configured such that the identified sub-graphs 280, 290 correspond, for example, to particular functionalities or components of an underlying installation or device. The clustering step 140 is likewise explained in more detail by way of example in the course of the explanations of
[0151] Following the clustering 140, a selection step 150 then occurs, in which one of the sub-graphs 280, 290 identified in the clustering step 140 is selected to create a corresponding self-description data module 380, 390.
[0152] In a final working step 160, the self-description data module 380, 390 is then created. Such creation of a self-description data module 380, 390 is likewise explained in more detail by way of example in relation to the explanations of
[0153]
[0154] In this case, the automation engineering data 110 comprise data that are required or used in the course of automation of the device or installation, for example, using appropriate controllers or a programmable logic controller. Such data are for example, a variable list and/or what is known as a “tag” list of the variables or tags used in the course of the control of the device or installation within such a control operation. A “tag” in the context of automation engineering is understood to mean for example a variable that is marked for display or input in an operate and observe system (SCADA system) or a graphical user interface (HMI: human machine interface).
[0155] The automation engineering data 110 furthermore comprise function modules, data modules and further what are known as “program organizational units” (POU) used in the course of controlling the device or installation or else the code of a corresponding control program for controlling the device or installation using an appropriate controller or an appropriate programmable logic controller.
[0156] The automation engineering data 110 also comprise a list of user-defined data formats (what are known as “UDTs” (user-defined type)) that were created or set up in the course of creating the automation engineering data 110.
[0157] The automation engineering data 110 furthermore comprise a list of information in relation to hardware components used in the device or installation. This information may comprise, for example, component names, component ID information (for example, serial numbers, and/or order numbers), component type designations, component description information, a list of respectively used parameters and/or corresponding parameter limit values, geometric information regarding corresponding hardware components and/or additional, background or support information regarding the corresponding hardware components.
[0158] Call structures for function modules, data modules and/or further POUs are also part of the automation engineering data 110. Such structures represent which of the modules call and/or reference which other modules. In this case, for example, chained structures, what are known as call chains, or else tree structures may, for example, arise.
[0159] The mechanical CAD data (MCA data) 120 comprise a parts list of the components of the device or installation, 3D information regarding the components of the device or installation and regarding the device or installation itself. The MCAD data 120 furthermore comprise kinematic information in relation to individual components of the device or installation, of the device or installation as a whole and between various ones of the components of the device or installation. The MCAD data furthermore also comprise points cloud information in relation to individual components of the device or installation and the device or installation as a whole.
[0160] Relationship information between parts of the device or installation is also part of the MCAD data 120. Such relationship information may, for example, be information about which components of the device or installation adjoin or are connected to which other components. The type of connection of two components may also be part of the relationship information. In this case, the connection of two components may, for example, be a spatial or mechanical connection or else a functional connection.
[0161] The electrical CAD data (ECAD data) 130 comprise circuit diagrams of the device or installation and its components, function plans thereof, function diagrams, function lists, location information in relation to electrical modules and components of the device or installation and of the device or the installation as a whole. The ECAD data 130 furthermore comprise a parts list of electrical and electronic components used, a corresponding product identifier list and images of such components and corresponding circuits in which, for example, these components are used.
[0162] In this case, the abovementioned examples of automation engineering data 110, MCAD data 120 and ECAD data 130 are examples of engineering elements in accordance with the present disclosure.
[0163]
[0164] The relationship data 150 furthermore comprise information about which program modules, function modules, data modules or generally what are known as “POUs” are associated with which components and/or parts of the device or installation. Such information may be obtained, for example, from comments or other meta-information regarding the abovementioned components. Relationships between electrical, mechanical and software objects are also part of the relationship data 150. Such relationships may be obtained, for example, from 3D information or CAD data, comments, parts lists and further meta-information. It is also possible to determine for example information about mechanical connections between various components and/or parts of the device or installation, which are also part of the relationship data 150, from these data sources.
[0165] Information obtained from wiring diagrams in relation to, for example, electrical, communication or data connections between various electrical or electromechanical components is also part of the relationship data 150.
[0166]
[0167] The multigraph 200 illustrated in
[0168] The multigraph 200 illustrated at the top left in
[0169] In this case, the multigraph has been constructed such that nodes of the multigraph 200 have been assigned to the four function modules 210, 220, 240, 250 that are denoted “FB1”, “FB2”, “FB3”, “FB4” in
[0170] It may also be gleaned from the call structures for function modules within the relationship data 150 that the function module “FB1” 210 calls the second function module “FB2” 220 three times in the course of its execution. This is implemented in the multigraph 200 such that a directed connection 212 to the second function module 220 is set up three times by the first function module 210, the category “calls” furthermore being assigned to these connections 212.
[0171] Furthermore, the data module 230 is referenced once by the first function module 210, this being illustrated by a directed connection 214 between these two nodes 210, 230 in the multigraph 200. This connection 214 is assigned the property “references”. The second function module 220 also references the data module 230, where the second function module 220 references the data module 230 twice in the course of its execution. This is implemented by two directed connections 222 between the second function module 220 and the data module 230 in the multigraph 200.
[0172] It is correspondingly indicated in the multigraph 200 that the fourth function module “FB4” 250 calls the first function module “FB1” 210 by virtue of a correspondingly directed connection 254 being indicated between the corresponding nodes 250, 210 with the category “calls”. In the same way, the multigraph 200 indicates that, in the course of the execution of the fourth function module “FB4” 250, the third function module “FB3” 240 is called three times, which again is implemented in the form of three parallel-directed connections 252 between the corresponding nodes 240, 250 in the multigraph 200. These directed connections 252 are accordingly again assigned the category “calls”.
[0173] In the case of the connections 212, 214, 222, 252, 254 between the respective nodes 210, 220, 230, 240, 350 in the multigraph 200 illustrated in
[0174] The upper right-hand part of
[0175] The clustering step 140, which is symbolized in
[0176]
[0177] In the course of generating the first skill data module 380 from the first cluster 290, denoted “skill 1”, a skill description file 382 for the first skill data module 380 was generated. This skill description 382 contains a description of a functionality that is associated with the first skill data module 380. Such a skill description may, for example, be generated in an automated manner or else in a partially automated manner. This may be performed, for example, by evaluating comments, descriptions or further meta-information regarding the function and data modules 210, 220, 230 and/or regarding the corresponding relationship information 212, 214, 222 in the first skill data module 380.
[0178] In this case, this meta-information is sought through, for example, for terms, descriptions and/or references that may be associated, for example, with a particular functionality and/or a particular component.
[0179] A skill description 382 for the first skill data module 380 may then, for example, be generated automatically from such matching description or meta-information. Furthermore, in an alternative partially automated mode, corresponding suggestions for such a skill description 382 may be output to a user. The user may then subsequently, for example, select one of the suggestions, following which an appropriate skill description 382 is then generated. A user may furthermore also generate the skill description 382 manually.
[0180] The first skill data module 380 furthermore comprises an additional information file 384 in relation to the engineering elements 210, 220, 230 contained in the first skill data module 380 and in relation to the relationship information 212, 214, 222 associated therewith. Such information may, for example, be taken from descriptions, comments, instructions or comparable meta-information or meta-information sources regarding the correspondingly mentioned elements. The additional information file 384 may, for example, be configured in the form of a database in accordance with the present description. Both the skill description file 382 and the additional information file 384 of the first skill data module 380 may in this case be part of a content description file in accordance with the present description or form such a content description file.
[0181] In a comparable manner, a corresponding skill description file 392 and a corresponding additional information file 394 are likewise associated with the second skill data module 390. Said files may in this case, for example, be generated in the same way as the abovementioned description in relation to the skill description file 382 and the additional information file 384 of the first skill data module 380. The skill description file 392 and/or the additional information file 394 may also be part of a content description file in accordance with the present disclosure or each or together form same.
[0182] In this case, for example, the skill description files 382, 392 may comprise a unique identifier for the respective skill data module 380, 390, on the basis of which, for example, a skill data module 380, 390 may be called and/or selected. Thus, for example, in the case in which a skill data module is generally configured as executable program code and/or comprises such executable program code, this program code may be called based on a unique identifier associated with this skill data module and/or execution of this program code may be triggered. Furthermore, an appropriate skill data module with which this identifier is associated may be called from a database and, for example, loaded into an engineering project based on the unique identifier.
[0183] Such skill description files, such as the skill description files 382, 392 illustrated in
[0184] Based on the additional information files 384, 394, a user of the corresponding skill data module 380, 390 may, for example, be given access to further information regarding the engineering elements contained in the respective skill data module 380, 390. Such additional information may, for example, be used to integrate a corresponding skill data module into a corresponding engineering project as easily as possible or else to modify, to amend or to adapt a corresponding skill data module.
[0185] The skill data modules 380, 390 generated in the example illustrated in
[0186] Thus, while there have been shown, described and pointed out fundamental novel features of the invention as applied to a preferred embodiment thereof, it will be understood that various omissions and substitutions and changes in the form and details of the methods described and the devices illustrated, and in their operation, may be made by those skilled in the art without departing from the spirit of the invention. For example, it is expressly intended that all combinations of those elements and/or method steps which perform substantially the same function in substantially the same way to achieve the same results are within the scope of the invention. Moreover, it should be recognized that structures and/or elements and/or method steps shown and/or described in connection with any disclosed form or embodiment of the invention may be incorporated in any other disclosed or described or suggested form or embodiment as a general matter of design choice. It is the intention, therefore, to be limited only as indicated by the scope of the claims appended hereto.