METHOD FOR CREATING A DIGITAL TWIN OF A PLANT OR DEVICE
Patent Information
- Application Number
- DE502019013706
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2019-09-24
- Publication Date
- 2025-08-14
- Estimated Expiration
- 2039-09-24
AI Technical Summary
Existing methods for creating digital twins of plants or factories require pre-existing digital structures and manual assembly of cluster structures, limiting their applicability when such structures are absent.
A method utilizing machine learning-based clustering to identify and assign component data clusters within automation engineering data, enabling automated or semi-automated creation of digital twins without prior digital models, using relational and NoSQL databases for storage.
Facilitates the creation of digital twins for systems or devices without pre-existing digital models, simplifying the process and enhancing flexibility by automating the identification and assignment of component data clusters.
Description
[0001] The present invention relates to a method for creating a digital twin of a plant or device.
[0002] Such methods are known from the state of the art.
[0003] For example, US publication US 2018 / 0210436 A1 discloses a method for creating a digital twin based on an aggregation of static and dynamic digital models of the individual devices in a plant. This involves an aggregation algorithm that enables an overall view of the plant from the corresponding static and dynamic models of the individual devices. Furthermore, the overall model then enables corresponding alarm notifications regarding specific operating states of the process devices or the corresponding industrial process.
[0004] Furthermore, the article "Resource virtualization: A core technology for developing cyber-physical production systems"; Yuqian Lu, Xun Xu; Journal of Manufacturing Systems, Volume 47, April 2018, Pages 128-140, discloses a method for creating a digital twin of a factory based on a reference model of the factory. A semantic model is developed that describes all the required concepts and the physical resources of the factory in order to create the digital twin.
[0005] Publication US 2018 / 0157735 A1 discloses a system in which technical data is summarized in data clusters within a multidisciplinary engineering system. These clusters can be used, for example, for various applications within the multidisciplinary engineering system. The technical data can be grouped for different purposes, such as a group of devices contained within a safety area of an automated facility, a group of devices contained within an automation system, or a group of devices assigned to a specific bus controller.
[0006] WO 2016 / 141998 discloses a device for providing a digital representation of a physical entity, e.g., a machine or system. The device comprises a mapping unit for mapping a physical structure of the physical entity to a digital structure based on a predefined schema.
[0007] A disadvantage of the aforementioned state of the art is that a basic prerequisite for creating a digital twin is the existence of digital structures and sub-elements from which the digital twin of, for example, a plant or factory can then be assembled. These methods are not applicable in cases where, for example, existing plants and factories do not have such ready-made digital modules for, for example, plant or factory components. Another disadvantage of the state of the art is that corresponding cluster structures must be predefined for engineering data or must be assembled manually.
[0008] Therefore, it is an object of the present invention to provide a method that enables the creation of a digital twin of a system or device in a more flexible and / or simpler manner, or to provide a digital twin created in this way. An alternative object of the present invention is to provide a method that enables the creation of a digital twin of a system or device for which digital twins or corresponding digital models do not already exist, at least for individual components of the system or device.
[0009] This problem is solved by a method having the features of patent claim 1.
[0010] Such a method is designed and configured to create a digital twin of a system or device, wherein a first data source with automation engineering data relating to automation and / or automation planning of the plant or device or parts thereof is present, and wherein the automation engineering data comprises data of at least two data categories, the method comprising the following steps: a.) identifying component data clusters (310, 320, 330, 340, 250) within the data of the first data source (205) using a clustering method designed as a machine learning method, wherein the component data clusters (310, 320, 330, 340, 250) are assignable or assigned to component types or component ID information relating to the plant or device (100), b.) automated or semi-automated assignment of a component type designation (312, 322, 352) or a component ID information designation (314, 334, 344, 354) to at least one of the identified component data clusters (310, 320, 330, 340, 250), wherein the automated or semi-automated assignment is carried out using a cluster assignment database and / or a cluster assignment neural network, c.) creating and storing the digital twin (800) of the system or device (100), comprising arranging and / or storing the information generated according to method step b.) regarding the component type designation or component ID information designation assigned to the at least one of the identified component data clusters, as a digital twin database.
[0011] The above-mentioned object is further achieved by a method for creating a digital twin of a system or device, in particular a method for creating a digital twin of a system or device according to the present description, wherein a first data source is available from the following list of data sources: Automation engineering data relating to automation and / or automation planning of the system or device or parts thereof, MCAD data relating to mechanical and / or spatial planning of the device or system or parts thereof, and / or relating to a mechanical and / or spatial design of the device or system or parts thereof, ECAD data relating to electrical planning and / or circuit planning of the device or system or parts thereof, and / or relating to an electrical design and / or implemented circuit planning of the device or system or parts thereof, Robot data relating to planning and / or design of one or more robots of the device or system, Description data relating to planning and / or design of the device or system or parts thereof.
[0012] The first data source includes data from at least two data categories.
[0013] The procedure includes the following steps: a.) Identifying component data clusters within the first data source, wherein the component data clusters are assignable or assigned to component types or component ID information relating to the plant or device, b.) Assigning a component type designation or a component ID information designation to at least one of the identified component data clusters, c.) Creating and storing the digital twin of the plant or device.
[0014] Clustering within the scope of process step a.) is set up and configured in such a way that clustering occurs either according to component types or according to component ID information. The result of clustering according to process step a.) is therefore one or more clusters, whereby all of the identified clusters can be assigned or assignable to different component types, or all of the identified clusters can be assigned or assignable to different component ID information.
[0015] Feature b.) is to be understood in such a way that component data clusters that are assigned to component types are each assigned a component type designation. Component data clusters that are assigned to component ID information, however, are assigned corresponding component ID information designations.
[0016] Furthermore, feature b.) is to be understood as meaning that each of the at least one identified component data cluster is assigned a corresponding designation, whereby different designations are generally assigned to different data clusters. However, it can also be provided that the same designation is assigned to different data clusters.
[0017] The method according to the invention allows the creation of a digital twin for a system or device based on the data that was created for the device or system as part of an engineering process, e.g. automation engineering. By appropriately clustering such data according to the present description, the data associated with specific components of the system or device can be identified from the first data source or the automation engineering data and thus a digital twin for the system or device can be created according to the present description. This simplifies the creation of such a digital twin compared to the methods and processes known from the prior art. Furthermore, it enables the creation of a digital twin for a system or device without digital models or digital twins for components of the system or device having to be available beforehand.
[0018] The creation of the digital twin may, for example, comprise a suitable arrangement and / or storage of the information identified or generated in one or more of the method steps a.), a1.), aa.), aa1.), b.), b1.), b2.), bb.), bb1.), bb2.), bbb.) in accordance with the patent claims and / or the present description. Furthermore, the creation of the digital twin may also consist of a corresponding arrangement and / or storage of this information.
[0019] This arrangement and / or storage of the identified or generated data can, for example, be implemented as a database in a digital twin database, or comprise such a digital twin database, and can be available in any database format. Such database formats can be, for example, so-called relational database formats or SQL database formats, or also so-called NoSQL database formats or knowledge graph data formats.
[0020] Different parts of the digital twin can also be saved in different formats mentioned above.
[0021] Furthermore, the digital twin can also include additional parts that are not available in any of the database formats mentioned above.
[0022] In contrast to the aforementioned relational databases (e.g., SQL databases), "NoSQL" (English for: Not only SQL) refers to a non-relational approach. In the context of this description, NoSQL databases are understood to be databases that pursue this non-relational approach. In particular, NoSQL databases in this description include document-oriented, graph-oriented, object-oriented, attribute-value pair-oriented, and / or column-oriented databases.
[0023] Current NoSQL databases generally do not use rigid table schemas like their relational counterparts. As schema-free databases, they rely on more flexible techniques to determine how data is stored. The name NoSQL derives from the use of protocols other than SQL for communication with clients.
[0024] A NoSQL database in the context of the present description can be set up and designed, for example, as a document-oriented database, a graph-oriented database, a knowledge graph, a distributed ACID database, a key-value database, an attribute-value pair-oriented database, a multivalue database, an object-oriented database and / or as a column-oriented database or a combination or further development of such databases.
[0025] In the digital twin, the information or parts of the information can be stored as a relational database, or the digital twin can include such a database. Furthermore, in the digital twin, the information or parts of the information can also be stored as a NoSQL database, one or more knowledge graphs, a non-relational database, an OWL database, an RDF database, and / or a database using SPARQL as a query query, or the digital twin can include such databases.
[0026] Furthermore, to create the digital twin, component simulations associated with the identified components can be selected, for example, from a corresponding simulation database. The identification of the respective components or the selection of the corresponding simulations can be done, for example, based on the assigned component type designations or component ID information designations. The selected component simulations can then be parameterized accordingly using data contained in the corresponding component data clusters from the first data source or automation engineering.
[0027] Using, for example, also identified relationship data between the various component data clusters, the selected component simulations can then be further combined with methods known from the prior art to create a simulation of the device or system, or parts thereof. Data contained within the respective data clusters can also be used in the context of creating such a simulation of the device or system. Such a simulation can then, for example, also form a digital twin within the meaning of the present invention or even be part of such a digital twin.
[0028] A digital twin created according to the present description can, for example, be used by software systems or integrated into them. Such software systems can, for example, be designed and configured for planning, designing, simulating, projecting, and / or setting up devices or systems. Furthermore, such a software system can also be designed and configured for planning, designing, simulating, projecting, and / or setting up automation for a device or system.
[0029] In this way, the data of the digital twin can be used both in the planning and setup of the device or system according to this description and in the planning and setup of future devices or systems.
[0030] Further possibilities for using a digital twin according to the present description are presented and explained in detail in the patent claims and the following parts of the description.
[0031] The device or system can be designed and configured, for example, as a machine, a device, a robot, a production system, or a similar device, or can also include such parts as components. Such a device or system can, for example, include one or more components, drives, sensors, machines, devices, communication devices, control devices, or the like.
[0032] Components of a system or device can be, for example: functionally and / or spatially related system parts, segments, groupings, components, actuators, sensors (e.g. robots, transport devices or certain types thereof (conveyor belt, overhead conveyor, ... .), motors, converters, sensors of various types (e.g. temperature, pressure, touch, flow sensors), machines of various types (e.g. machine tools, presses, extruders, injection molding machines) and their sub-components.
[0033] Component types of components contained in the system or device are understood to mean, for example, names, designations, and / or descriptions of specific types or specific type categories of these components. Such component types can be, for example, a line, a robot, a cell, an actuator, a motor, a sensor, a temperature sensor, a converter, a transport device, and / or comparable component types.
[0034] Component ID information, on the other hand, refers to information that identifies and / or identifies specific instances of components present in the system or device. Such component ID information can include, for example, product names, order numbers, serial numbers, type codes, or similar information that identifies a specific component—especially information that uniquely identifies the component.
[0035] Component clusters According to the present description, for example, component type clusters can be used. A specific component type cluster is characterized by the fact that it contains automation engineering data or data from the first data source, or also data from additional data sources, which are assigned to a specific component type. A corresponding component type designation for such a cluster can, for example, be a name of the component type, a short description, or even a corresponding code for this component type. Examples of corresponding component types or component type designations can be, for example: robot, transport device, line, assembly device, motor, converter, sensor, controller, switch.
[0036] Component clusters according to the present description can also be, for example, component ID information clusters. A specific component ID information cluster is characterized by the fact that it contains automation engineering data or data from the first data source, or also data from other data sources, which are assigned to a specific component instance, which is characterized, for example, by specific ID information (e.g., serial number, product name). In particular, component ID information clusters can be those of the above-mentioned clusters which are assigned to a specific component instance, which is uniquely characterized, for example, by specific ID information. A corresponding component ID information designation for such a cluster can, for example, be the aforementioned ID information. Examples of corresponding ID information can be, for example, specific serial numbers, order numbers, brand names (e.g.,specific to a product (Simatic S7-1512) or general for a product family (S7 controller, Scalance Switch), model type designations, or even general model designations.
[0037] The difference between component types and component ID information, as used in this description, will be further clarified with the following example. In this example, a specific device contains two motors with different serial numbers. In this example, within the context of a corresponding clustering by component type, the automation engineering data associated with these motors could, for example, be assigned to a data cluster associated with the component type "Motor."Within the scope of an alternative or additional clustering according to component ID information, the automation engineering data for the motor with the first serial number could then continue to be classified in a component ID information data cluster assigned to this serial number, while the automation engineering data for the motor with the second serial number could be classified in a component ID information data cluster assigned to this second serial number.
[0038] The component data clusters can be identified, for example, by applying a clustering method to the data of the first data source or the automation engineering data to identify the component data clusters within the first data source or the automation engineering data.
[0039] The application of the clustering method can, for example, be an automated clustering method. This can be achieved, for example, by using appropriate software that automatically executes the clustering method. One or more clustering algorithms can be implemented within the software.
[0040] Furthermore, the application of the clustering method can also be a semi-automated clustering method. This can be implemented, for example, using appropriate software that executes the clustering method semi-automatically. This can be implemented, for example, in such a way that the software expects corresponding user input at certain times during the clustering process.
[0041] In general, clusters are groups of similar data points or data groups that are formed through cluster analysis.
[0042] Cluster analysis, or clustering, is a machine learning technique in which data or data points are grouped into so-called "clusters." Given a set of data or data points, a cluster analysis method, a clustering method, or a clustering algorithm can be used, for example, to classify each piece of data or data point into a specific group. Such a group is then referred to as a "cluster." Data or data points in the same group (i.e., the same cluster) have similar properties and / or characteristics, while data points in different groups have very different properties and / or characteristics.
[0043] Mathematically, clusters consist of objects that are closer to each other (or conversely, more similar) than to objects in other clusters. Clustering methods can be differentiated, for example, based on the distance or proximity measures used between objects in the cluster, but also between entire clusters. Furthermore, or alternatively, clustering methods can also be differentiated based on the respective calculation rules for such distance measures.
[0044] Cluster analysis or clustering methods are methods for discovering similarity structures in large data sets. These include, for example, methods of supervised or unsupervised machine learning, such as k-means or DBSCAN. Cluster analysis results in clusters. The advantage here is that the data analysis can be carried out fully automatically. Supervised learning would be suitable if data is already available in a contextualized form. Unsupervised learning algorithms make it possible to find similarity structures even in data that has not yet been contextualized. The discovered clusters can be analyzed by an expert in the field of automation systems, and agents can be conveniently generated from the clusters.
[0045] The application of the clustering method can, for example, involve the application of one clustering algorithm or the application of several clustering algorithms, for example, one after the other. Such clustering algorithms can be, for example, so-called "K-Means Clustering," so-called "Mean-Shift Clustering," so-called "Expectation-Maximization (EM) Clustering using Gaussian Mixture Models (GMM)," so-called "Agglomerative Hierarchical Clustering," and / or so-called "Density-Based Spatial Clustering," e.g., Density-Based Spatial Clustering of Applications with Noise (DBSCAN)." Further examples of clustering algorithms can be, for example, the following algorithms: "Mini Batch K-Means," "Affinity Propagation," "Mean Shift," "Spectral Clustering," "Ward," "Agglomeration Clustering," "Birch," and "Gaussian Mixture."
[0046] In cluster analyses or clustering methods, it is necessary to calculate distances or (dis)similarities between two objects, an object and a cluster, or two clusters. Different distance measures are used depending on the type of underlying objects, data, or variables. For so-called categorical objects, data, or variables (usually data that is or can be assigned to certain categories or classes), similarity measures are often used; this means that a similarity value of zero means that the objects have maximum dissimilarity. These can be converted into distance measures. For numerical or metric variables, distance measures are used; this means that a distance measure of zero means that the objects have a distance of zero, i.e., maximum similarity. There are also corresponding distance or similarity measures for other types of variables, such as binary data, text data, or time series data.
[0047] When implementing the clustering method or a clustering algorithm according to the present description, a wide variety of standard distance measures or similarity measures for numerical data, binary data, string data, categorical data, text data, and / or time series data can be used, depending on the type of data categories used for the data from the first data source or the automation engineering data.
[0048] A clustering method according to the present description can be designed and configured as explained above. Techniques for identifying similarities between the data within the data collection under consideration are used. The clustering method can further comprise, for example, the application of a specific clustering algorithm. Furthermore, the clustering method can also be multi-stage and comprise the use of two or more corresponding clustering algorithms (e.g., sequential).
[0049] Examples of such clustering methods or algorithms are: so-called "unsupervised clustering", the so-called K-means clustering method, methods from image processing for the recognition of related structures within existing images or image information, a combination of the methods mentioned above.
[0050] The clustering method used can be selected to suit the data types within the existing data collection.
[0051] Process step a.) can also be performed multiple times in succession if necessary, by applying the first clustering procedure to the results of the previous clustering step. If necessary, further processing of the results of the previous clustering step can also be performed between clustering steps.
[0052] Furthermore, the sequence of process steps a.) and b.) can be carried out several times in succession by applying a clustering procedure to the identified clusters again after assigning appropriate names to the identified clusters.
[0053] The component data clusters can be identified, for example, by applying a clustering method to the first data source or the automation engineering data. Furthermore, the component data clusters can also be identified using a corresponding assignment database, for example a cluster assignment database, wherein such a database includes, for example, assignments of automation engineering data or data from the first data source to specific clusters that were already identified at earlier points in time. In addition, the component data clusters can also be identified using a corresponding assignment neural network, for example a cluster assignment neural network. Such a cluster assignment neural network can, for example, be identified using previously determined assignments of automation engineering data orData from the first data source must have been trained to cluster.
[0054] The identification of the component data clusters can, for example, also include several of the methods mentioned above in parallel or sequentially.
[0055] Automation engineering data is, for example, data that is created and / or intended for the automation and / or control of a plant or device. Such data is created, for example, in so-called engineering systems, which are used to create corresponding control programs and to parameterize the components of the plant or device and the corresponding controllers accordingly. An example of such an engineering system is a commercially available software with the product name "TIA Portal."
[0056] Automation engineering data can include a wide variety of data, for example one or more control programs, variables, so-called "tags", program modules, function modules, data modules, program blocks, so-called "Program Organizational Units" (POU), a list of used data types, definitions of user-defined data types ("User Defined Type" (UDT)), ID information for components, configuration data, call information for program elements, comments, control programs, parts of control programs and / or comparable data.
[0057] Data categories of automation engineering data can be, for example: Variables or so-called "tags", program blocks, function blocks, data blocks, program blocks or so-called POUs (POU: Program Organizational Unit), user-defined data types (e.g. UDTs), information on components of the device or system, call information for program blocks or POUs, comments or comparable data categories.
[0058] Data of a specific data category within the automation engineering data can, for example, be collected into a corresponding list, or can also be assigned to one another in a database or similar structure. The compilation of data of a data category from the automation engineering data can also be created in preparation for the implementation of the method according to the present description. Such a compilation of data can, for example, be carried out in order to subsequently export the corresponding data from a corresponding automation engineering system and then use it in the context of implementing a method according to the present description.
[0059] The data belonging to each of the aforementioned data categories can, for example, already exist as lists, tables, and / or database structures within the automation engineering data or be provided as such by a corresponding engineering system. For example, data belonging to the above-mentioned data categories can exist or be provided as a tag or variable list, a POU list, a data type list, a hardware component list, a call structure, and / or a UDT list.
[0060] The individual data within the data categories of automation engineering data may also include meta-information about the respective data. Such meta-information may include, for example, names, comments, references, physical units, ID information (such as type names, serial numbers, ID numbers, function names, functionality, etc.), or other supplementary information regarding the respective data.
[0061] For a clustering procedure or clustering algorithm applied to automation engineering data, the following information characteristic of the respective data categories can be used: names or designations assigned to the respective data (e.g. names or designations of variables, tags, program blocks, function blocks, data blocks, UDTs,...), or text information assigned to the respective data (e.g. meta information, comments or description information on variables, tags, program blocks, function blocks, data blocks, UDTs, system / device parts or components,...).
[0062] Further information that can also be used within the framework of a clustering procedure or algorithm for corresponding data categories mentioned includes: Data types of variables, tags or, for example, data types used by a data, function or program block; number of inputs and / or outputs of a data, function or program block or names / designations of the inputs and / or outputs of such blocks; number, names or designations of other such blocks called by a specific data, function or program block; other comparable information on the data categories of automation engineering data according to this description.
[0063] The same applies not only to automation engineering data or data from the first data source, but also to any comparable data according to this description.
[0064] The assignment of component type designations or component ID information designations to the respective identified component data clusters can, for example, be done manually, automatically or semi-automatically.
[0065] With manual assignment, for example, the user can display the correspondingly assigned automation engineering data or the corresponding data from the first or another data source according to the present description for each of the data clusters on a screen. In particular, metadata from the aforementioned data sources can also be displayed for this data. This data can then be used by a user to identify a corresponding component type or component ID information designation.
[0066] The assignment of the component type designation or the component ID information designation can also be automated, for example. A database and / or a neural network can be provided for this purpose. This can, for example, be a database according to the present description, in which the results of clustering steps already performed in the past according to the present description, the results of assigning corresponding designations to clusters according to the present description, and identified relationship information according to the present description are stored.Furthermore, this may also be a neural network according to the present description, which was trained with the results of previous clustering steps according to the present description, results of label assignment steps according to the present description or relationship information according to the present description.
[0067] As part of the automated assignment of component type designations or component ID information designations, corresponding cluster compositions can be identified in the database or entered into the corresponding neural network. Based on the database, a corresponding designation for the corresponding cluster can then be determined. When using the neural network, a corresponding designation can, for example, be output information from the neural network after input of corresponding data assigned to the cluster.
[0068] For an automated assignment of the component type designations or component ID information designations, for example, meta information from the aforementioned data sources can be automatically analyzed for this data and then a corresponding designation can be automatically selected and / or created from it.
[0069] In a semi-automated mode of assigning corresponding labels to clusters, suggestions for such assignments can also be created automatically, for example, in one of the ways mentioned above. These suggestions can then be displayed to a user. By selecting one of the suggestions—and possibly adjusting the corresponding suggestion by the user—the selected suggestion can then be assigned a label to identify a corresponding component type or component ID information.
[0070] In an advantageous embodiment, the method can be designed and configured in such a way that the following method steps are carried out after method step a.) and before method step c.): a1.) Identifying sub-component data clusters within the identified component data clusters, wherein the sub-component data clusters are assignable or assigned to sub-component types or sub-component ID information relating to the system or device, and that following method step a1.) and before method step c.) the following method step is carried out: b1.) Assigning in each case a sub-component type designation or in each case a sub-component ID information designation to at least one of the identified sub-component data clusters.
[0071] A method designed in this way enables the generation of a hierarchical cluster model of the device or system by identifying and naming subcomponent data clusters, which further simplifies the creation of a digital twin for this device or system. In particular, the creation of the digital twin is simplified by the fact that such a hierarchy transfers a component and / or subcomponent structure of the device or system from a cluster structure of the automation engineering data or the first data source for this device or system. This creates a cluster structure that is close to or even corresponds to a component and / or subcomponent structure of the device or system.
[0072] Process step a1.) is aimed at identifying one or more subcomponent data clusters within the already identified component data clusters. Subcomponent data clusters identified within a specific component data cluster can correspond to corresponding subcomponents of the component to which the component data cluster is assigned.
[0073] When executing process steps a1.) and, if applicable, b1.), a hierarchical system of clusters can be formed, for example. Within the framework of clustering steps for identifying component-type data clusters, a cluster for the component type "robot" could, for example, be identified in a first clustering step. In a further clustering step for identifying sub-component-type data clusters, a sub-cluster for a sub-component "robot arm" could then be identified within this cluster. If, for example, a further clustering step for identifying sub-component-type data clusters is applied to this cluster for the "robot arm," a cluster corresponding to the component type "motor" can be identified within this data cluster.
[0074] In this way, a hierarchical cluster structure can be created that corresponds to a hierarchical component structure of the device or system. Further examples of such component or cluster hierarchies are analogous "parts-of" hierarchies such as "Line - Cell - Robot - Motor."
[0075] Corresponding hierarchies can also be created within component ID information clusters. For example, a cluster generally assigned to robots from a specific manufacturer can contain subclusters assigned to different robot types from that manufacturer. These robot type subclusters can then be further subdivided into further subclusters, each of which can be assigned to different robot models from that manufacturer.
[0076] In the context of this description, the phrase "subsequent process step" means that the corresponding process step is carried out at some point after the mentioned process step and does not necessarily have to follow it immediately. However, it can also follow it directly.
[0077] The identification of the sub-component data clusters according to method step a1.) can, for example, be carried out analogously to the identification of the component data clusters according to method step a.) according to the patent claims and / or the present description.
[0078] Furthermore, the sub-component data clusters, sub-component types and / or the sub-component ID information may be configured and configured according to the component data clusters, component types and / or component ID information according to the present description.
[0079] The assignment of the respective sub-component type designations or sub-component ID information designations to the identified sub-component data clusters according to method step b1.) can also be carried out in accordance with the assignment of component type designations or component ID information designations to component data clusters according to method step b.) and / or the present description.
[0080] The subcomponent data clusters can be identified, for example, using a second clustering method or the clustering method according to claim 1. Furthermore, the subcomponent data clusters can also be identified using a cluster mapping database or a cluster mapping neural network according to the present description. The subcomponent data clusters can also be identified using a combination of the aforementioned methods.
[0081] The cluster assignment database can, for example, be set up and designed in such a way that, for example, previously determined assignments of cluster data to sub-component data clusters are stored there. Furthermore, a corresponding cluster assignment neural network can also be trained with, for example, previously determined assignments of sub-component data clusters to corresponding cluster data.
[0082] The second clustering method can be designed and configured as a clustering method according to the present description.
[0083] For example, clustering by component type can be followed by clustering by subcomponent type. Furthermore, clustering by component ID information can be followed by clustering by subcomponent ID information.
[0084] Furthermore, clustering by component type can also be followed by clustering by component ID information, and vice versa. In the former case, clustering that assigns engineering data to specific component types can be followed by clustering by ID information within the respective type clusters. In this way, engineering data that is assigned to a cluster for a component type, for example, can then be assigned to different components of that component type.
[0085] The second clustering method can, for example, be applied to the entirety of the component data clusters identified in method step b1.). As a result of the second clustering method, sub-component data clusters can then be identified, for example, whereby individual component data clusters can, for example, comprise one or more of the sub-component data clusters.
[0086] The application of the second clustering method to the component data clusters may also result in no further subdivision being possible for at least one or more of the component data clusters.
[0087] Process step a1.) can be performed multiple times accordingly. This results in a hierarchical structure, by means of which the subcomponents identified in process step a1.) can be further subdivided into sub-subcomponents and sub-sub-subcomponents, etc., and structured hierarchically.
[0088] For each of the clustering steps mentioned, a previously used clustering method or a previously unused clustering method can be used, for example another suitable method according to the present description.
[0089] If process step a1.) is executed multiple times, the first clustering procedure can be applied to the results of the previous clustering step. If necessary, further processing of the results of the previous clustering step can also be performed between different clustering steps.
[0090] If process step a1.) is executed multiple times, process step b1.) can also be executed multiple times. In this case, sub-subcomponent names and sub-sub-subcomponent names, etc., can be assigned to the corresponding clusters for the corresponding subcomponents.
[0091] Examples of such a hierarchical arrangement can be a sequence of robot - robot arm - motor, or line - cell - robot / motor.
[0092] In this way, the system or device can be structured hierarchically with regard to its assigned automation data and this hierarchical structure can also be provided with appropriate designations.
[0093] The digital twin created using this information can thus have a hierarchical structure that corresponds to the hierarchical structure of the plant or device. This enables analysis of the plant or device at various hierarchical levels.
[0094] Furthermore, in this case, it can be provided that in process step c.) the digital twin is created using the sub-component data clusters.
[0095] A method according to the present description can further be designed and configured such that following method step a.) and / or a1.) the following method step is carried out: b2.) Identifying relationship information of the component data clusters identified according to method step a.) by evaluating the data of the first data source or the automation engineering data and / or additional information to this data, and / or Identifying relationship information between sub-component data clusters identified according to process step a1.) by evaluating the data from the first data source or the automation engineering data and / or additional information to this data, wherein in process step c.) the digital twin is further created using relationship information identified thereby.
[0096] Relationship information can, for example, be parent-child relationships between program modules, program components, and / or program or component instances. Call information between different program modules, program components, and / or program or program component instances can also be such relationship information. Furthermore, "is part of" relationships between components and their respective subcomponents can also be examples of relationship information.
[0097] For example, relationship information can be extracted from additional information or metadata about individual data used or identified clusters. Relationship information can also be extracted from cross-referencing or material flow information, for example.
[0098] Additional information about individual or groups of data, which can also be referred to as metadata or metainformation about this data, can be, for example, comments, descriptions, physical units, descriptions of relationships to other data, functionalities, authors, permissions or similar information.
[0099] The relationship information can be identified, for example, by evaluating call information and / or call chains of program blocks, function blocks, data blocks, or general POUs according to the present description. In this way, for example, functional relationships between different clusters containing various of the aforementioned blocks can be identified.
[0100] For example, a case may arise in which, within a control program for a plant, a first function block calls a second function block. During clustering, it may then turn out, for example, that the first function block is assigned to a first plant component cluster, and thus to a first plant component, and the second function block to a second plant component cluster, and thus to a second plant component. Based on the aforementioned call information, it can then be concluded that the second plant component must be functionally assigned to the first.
[0101] Furthermore, relationship information can be determined, for example, based on meta-information about specific automation engineering data or data from the first data source, or even comments on such data. Such meta-information or comments can, for example, directly contain relationship information such as a description and / or representation of a functional assignment, a structural assignment, and / or a spatial assignment. Furthermore, relationship information can also be determined, for example, from names or ID information, for example, from the matching of parts of the names of different data elements of the same category.
[0102] Within the scope of this description, for example, in the aforementioned case, the phrase "subsequently, method step a.) and / or a1.)" means that method step bb2.) can be performed, for example, after method step a.), a1.), b.) and / or b1.). If the identification of the relationship information relates at least, among other things, to subcomponent data clusters identified according to method step a1.), then method step bb2.) can be performed, for example, after method step a1.), b.) and / or b1.).
[0103] A method according to the present description can also be designed and configured such that a second data source from the following list of data sources is available: MCAD data relating to a mechanical and / or spatial plan of the device or system or parts thereof, and / or relating to a mechanical and / or spatial design of the device or system or parts thereof; ECAD data relating to an electrical plan and / or circuit plan of the device or system or parts thereof, and / or relating to an electrical design and / or realized circuit plan of the device or system or parts thereof; Robot data relating to a plan and / or design of one or more robots of the device or system; Description data relating to a plan and / or design of the device or system or parts thereof; wherein the method further comprises the following method steps prior to creating the digital twin according to feature c.): aa.) Identifying component data clusters within the second data source, wherein the component data clusters are assignable or assigned to component types or component ID information relating to the system or device, bb.) Assigning a component type designation or a component ID information designation to at least one of the component data clusters identified in method step aa.), bbb.) Assigning the component data clusters and / or sub-component data clusters of the automation engineering data or the first data source identified in method step b.) according to claim 1 or 2 to the component data clusters of the data of the second data source identified in method step bb.).
[0104] Furthermore, for example, after the aforementioned method steps have been completed, these method steps can be executed again using another data source from the list of the aforementioned data sources—or even another data source. In this way, by clustering according to the present description within a wide variety of data sources and performing a corresponding assignment step according to the aforementioned method step bbb.) between the various data sources, identified clusters can be assigned to specific components or component parts.
[0105] In this way, a digital twin of a device or system can be created that assigns data about this device or system from a variety of data sources to the various parts or components of the system or device, thus creating a consistent digital image of the device or system. This simplifies and improves the creation of the digital twin, as a larger number of data sources used simplifies the assignment of clusters to different components or parts of the device or system and enables better networking of disparate data relating to the system or device.
[0106] The identification of the component data clusters according to method step aa.) can be carried out in accordance with the identification of component data clusters according to method step a.) and / or the present description. The assignment of the respective component type designation according to method step bb.) can be carried out analogously according to the assignment of component type designations according to method step b.) and / or the present description.
[0107] In this case, a correspondingly applied clustering method can be designed and configured according to the present description. The identification of relationship information between the data clusters can also be designed and configured according to the present description.
[0108] This simplifies and improves the creation of the digital twin, as a larger number of data sources used simplifies the assignment of clusters to different components or parts of the device or system and enables better networking of a larger number of different types of data relating to the system or device.
[0109] The identification of the component data clusters according to process step aa.) can be carried out, for example, by applying a further clustering method to the second data source.
[0110] The assignment of the component data clusters and / or the sub-component data clusters of the automation engineering data or the first data source to the component data clusters of the second data source can be carried out, for example, in such a way that the respective component type designations or component ID information designations of the respective data clusters are compared with one another and, if the designations are identical or similar, a corresponding assignment is made.
[0111] Furthermore, one or more of the relationship information between respective data clusters can be compared and used in the assignment process. For example, if data clusters from the second data source and data clusters from the automation engineering data or the first data source only have similar names, the corresponding data clusters can be assigned to each other if they each have similar relationships to other data clusters.
[0112] The identification of the component data clusters within the data of the second data source can be carried out in accordance with the identification of the component data clusters within the first data source or the automation engineering data according to the present description. Thus, the identification of the component data clusters within the data of the second data source can also be carried out, for example, using a corresponding clustering method, a corresponding cluster assignment database, and / or a corresponding cluster assignment neural network, each in accordance with the present description.
[0113] For a clustering method or a clustering algorithm applied to the aforementioned data categories (MCAD data, ECAD data, robot data and / or description data) in accordance with this description, the following information characteristic of the respective data categories can be used, for example: names or designations assigned to the respective data; text information assigned to the respective data (e.g. meta information, comments or description information).
[0114] Further information that can also be used within the framework of a clustering procedure or algorithm for corresponding data categories mentioned includes: Data or signal types of variables, tags, signals, inputs and outputs; data types used by a data, function, program block or other software element; connection types, connection names or designations as well as the number of connections of a specific mechanical, electrical and / or logical component or software component with corresponding other such components; number, class, type and / or designation of the inputs and / or outputs of a mechanical, electromechanical, electrical or logical block or also of a software block or also names / designations of the inputs and / or outputs of such blocks; number, names or designations of other such blocks called by a specific data, function or program block; further comparable information on the data categories of MCAD data, ECAD data, robot data and / or description data according to this description.
[0115] Mechanical data or MCAD data can be, for example: 3D geometries, kinematic information, point cloud information, names / designations / meta-information on mechanical components or parts, relationship information on various mechanical components or parts (e.g. name, designation and / or number of other components connected to a specific part as well as, for example, the type and design of such connections), image data or design or CAD data on corresponding mechanical components or parts thereof.
[0116] Electrical planning data or ECAD data can include, for example: functional descriptions, location information, product reference numbers, parts lists, schematic drawings, circuit diagrams, wiring diagrams, images of components or circuits, names, designations or numbers of inputs and / or outputs, information on dynamic behavior (e.g. described by so-called "macros") or comparable data on electrical properties and / or designs of the device or system.
[0117] In addition to automation engineering data, robot data can also be data such as signal lists or robot programs.
[0118] The robot data may also relate to the device or system as a whole, particularly if it consists essentially or exclusively of one or more robots.
[0119] Descriptive data can, for example, be planning and / or descriptive data or operating instructions relating to the device or system, or components and parts thereof. In particular, such descriptive data can be available in standard document formats, such as text formats, Word format, PDF, Excel format, Visio format, various image formats, flowchart formats, mind map formats, or comparable document formats.
[0120] A method according to the present description can further be designed and configured such that the following method steps are carried out following method step aa.) and before method step bbb.): aa1.) Identifying sub-component data clusters within the component data clusters identified in method step aa.), wherein sub-component types or sub-component ID information relating to the system or device are assignable or assigned to the sub-component data clusters, and bb1.) Assigning a sub-component type designation or a sub-component ID information designation to at least one of the identified sub-component data clusters.
[0121] The wording "following process step aa.)" also means here that the process step mentioned here takes place at some point after process step aa.) and does not necessarily have to follow process step aa.) immediately (but can).
[0122] The identification of sub-component data clusters as well as the assignment of the sub-component type designation to the corresponding sub-component data clusters can in turn be designed and configured in accordance with the present description.
[0123] The identification of the subcomponent data clusters can be achieved, for example, by applying a further second clustering method to the component data clusters identified within the data of the second data source. The further second clustering method can be designed and configured as a clustering method according to the present description. It can correspond to or be different from the clustering method according to claim 1 or the further clustering method according to the present description.
[0124] Here too, the identification of the sub-component data clusters can again be carried out using a corresponding cluster mapping database and / or a corresponding cluster mapping neural network according to the present description.
[0125] In an advantageous embodiment, clustering by component type can be followed by clustering by subcomponent type. Furthermore, clustering by component ID information can be followed by clustering by subcomponent ID information.
[0126] For example, clustering by component type can also be followed by clustering by component ID information, and vice versa. In the former case, clustering that assigns data from the second data source to specific component types can be followed by clustering by ID information within the respective type clusters.
[0127] The further second clustering method can, for example, be applied to the entirety of the component data clusters identified in method step bb1.). As a result of the second clustering method, sub-component data clusters can then be identified, for example, whereby individual component data clusters can, for example, comprise one or more of the sub-component data clusters.
[0128] The application of the further second clustering method to the component data clusters may also result in no further clustering being possible for at least one or more of the component data clusters.
[0129] Process step aa1.) can also be performed multiple times. This results in a hierarchical structure, by means of which the subcomponents identified in process step aa1.) can be further subdivided into sub-subcomponents and sub-sub-subcomponents, etc., and structured hierarchically.
[0130] For each of the clustering steps mentioned, a clustering method that has already been used can be used, or a clustering method that has not yet been used in the context of the method according to the invention, for example according to the present description.
[0131] Furthermore, clustering by component type can also be followed by clustering by component ID information, and vice versa. In the former case, clustering that assigns data from the second data source to specific component types can be followed by clustering by ID information within the respective type clusters, so that data from the second data source that is assigned to a cluster for a component type, for example, can be assigned to different component instances of that component type.
[0132] If process step aa1.) is executed multiple times, the first clustering procedure can be applied to the results of the previous clustering step. If necessary, further processing of the results of the previous clustering step can also be performed between clustering steps.
[0133] If process step aa1.) is executed multiple times, process step bb1.) can also be executed multiple times. In this case, sub-subcomponent names and sub-sub-subcomponent names, etc., can be assigned to the corresponding clusters for the corresponding subcomponents.
[0134] In this way, the system or device can be structured hierarchically with regard to its assigned data from the second data source and this hierarchical structure can also be given appropriate designations.
[0135] The digital twin created using this information thus receives a hierarchical structure of the plant or device, which enables an analysis of the plant or device at various hierarchical levels.
[0136] Furthermore, in this case, it can be provided that in process step c.) the digital twin is created using the sub-component data clusters.
[0137] A method according to the present invention can further be designed and configured such that following method step aa.) and / or aa1.) the following method step is carried out: bb2.) Identifying relationship information between component data clusters identified according to method step aa.) by evaluating the data from the second data source and / or additional information to this data, and / or identifying relationship information between sub-component data clusters identified according to method step aa1.) by evaluating the data from the second data source and / or additional information to this data, wherein in method step c.) the digital twin is further created using identified relationship information.
[0138] Relationship information can be designed and configured according to the present description.
[0139] The determination of the relationship information can also be designed and configured according to the present description. For example, the configurations and explanations presented in the context of determining the relationship information from the automation engineering data or the data from the first data source can be transferred accordingly to the determination of relationship information from the data from the second data source. In particular, relationship information can be obtained from corresponding robot data in a manner analogous to the embodiments presented with regard to the automation engineering data.
[0140] For example, relationship information can be determined from mechanical planning data or MCAD data. 3D geometry information, parts or bills of materials, or even kinematic information regarding the geometric design and location of components of the device or system can be used for this purpose. The type and design of connections between various components of the device or system can also be evaluated and used accordingly, or corresponding image data can be used to determine relationship information.
[0141] Electrical planning data or ECAD data can also be evaluated in a similar way to determine relationship information. Here, too, location information, parts lists, schematic drawings, circuit diagrams, input and / or output designations, or even information on dynamic behavior can be evaluated accordingly to identify relationship information between different components of the device or system.
[0142] Description data according to the present description can also be evaluated to identify relationship data. In particular, such planning and / or description documents can directly contain relationship information between various components of the device or system.
[0143] In the context of this description, the wording "subsequently aa.)" and / or "following aa1.)" means that, for example, method step bb2.) can occur after method step aa.), aa1.), bb.) and / or bb1.). If the identification of the relationship information relates at least, among other things, to subcomponent data clusters identified according to method step aa1.), method step bb2.) can occur, for example, after method step aa1.), bb.) and / or bb1.).
[0144] A method according to the present description can, for example, be further designed and configured in such a way that that following method step a.), a1.), aa.), aa1.), b.), b1.), b2.), bb.), bb1.), bb2.), bbb.) and / or further method steps according to the present description, a result of the respective method step is stored in a cluster assignment database and / or that following method step a.), a1.), aa.), aa1.), b.), b1.), b2.), bb.), bb1.), bb2.), bbb.) and / or further method steps according to the present description, a cluster assignment neural network is trained using results of the respective method step.
[0145] Such storage of the results of the aforementioned method steps in a cluster assignment database or the use of the corresponding results of these method steps for training a cluster assignment neural network enables the use of the results obtained in the context of the aforementioned method steps for future clustering steps or description assignment steps for correspondingly determined clusters.
[0146] In this way, the corresponding findings can be used in future clustering procedures and future clustering procedures can be further simplified and accelerated.
[0147] The storage of the results of method steps a.), a1.), aa.), aa1.), b.), b1.), b2.), bb.), bb1.), bb2.), bbb.) and / or further method steps according to the present description in one of the cluster allocation databases can be carried out, for example, in an SQL format or also a NoSQL format. The database or the storage in the database can be designed and configured according to the present description or can comprise components according to the present description.
[0148] The storage in the cluster assignment database can be provided and configured in such a way that the stored results can be used in future analyses, for example of corresponding data collections, data sources and / or plant component clusters.
[0149] Such a cluster assignment database can store, for example, the assignment of specific data to a specific cluster, or the assignment of specific data or clusters to specific cluster designations or ID information designations. Furthermore, such a database can also store, for example, the assignment of different clusters to one another, as determined, for example, according to method steps b2.), bb2.) or bbb.). Within the scope of such storage of assignments of clusters to one another, determined relationship information between these clusters can also be stored.
[0150] The cluster assignment database can, for example, comprise two subsegments: a cluster assignment type database area and a cluster assignment ID information database area. For example, the first of these database areas can store the assignment of corresponding cluster data to specific type descriptions or designations or other type information. The second database area can then store, for example, an assignment of corresponding cluster data to ID information.
[0151] The use of the result of the respective method step for training a corresponding neural network can, for example, be set up and designed in such a way that, subsequently in method step a.), a1.), aa.), aa1.), b.), b1.), b2.), bb.), bb1.), bb2.), bbb.) and / or further method steps according to the present description, the component data clusters or sub-component data clusters determined on the basis of the data used are used to train a corresponding neural network for the identification of such component data clusters or sub-component data clusters.
[0152] For example, the assignment of the data contained in the respective data cluster to the respective cluster and / or a component type or component ID information designation assigned to this cluster can be used. Furthermore, the assignment of the respective component data clusters to specific associated real components, physical plant components, and / or specific designations can also be used to train the corresponding neural network.
[0153] A method according to the present description can further be designed and arranged in such a way that that the cluster assignment database and / or the cluster assignment neural network is used in carrying out a method according to the present description, in particular that the identification of the component data clusters and / or the sub-component data clusters is carried out using the cluster assignment database and / or the cluster assignment neural network, and / or that the assignment of the component type designation (or component ID information designation and / or the sub-component type designation or a respective sub-component ID information designation) is carried out using the cluster assignment database and / or the cluster assignment neural network.
[0154] This can, for example, be designed and configured in such a way that the information stored, for example, in a corresponding database or a corresponding neural network according to the above description is then used, for example, to divide further data collections, data sources and / or already determined data clusters into corresponding component data clusters and / or sub-component data clusters.
[0155] In an advantageous embodiment, clustering is carried out according to method step a.), a1.), aa.), aa1.) and / or further method steps according to the present description using the database and / or the trained neural network.
[0156] In a further advantageous embodiment, the assignment of a designation and / or relationship information according to method step b.), b1.), b2.), bb.), bb1.), bb2.) and / or further method steps according to the present description is carried out according to the present description using the database and / or the trained neural network.
[0157] In a further advantageous embodiment, the assignment of clusters according to method step bbb.) and / or further method steps according to the present description is carried out using the database and / or the trained neural network.
[0158] For example, the data from the first data source, the automation engineering data, and / or the data from the second data source or other data sources can be fed into the cluster assignment database. Within this database, a search can then be performed for past assignments of the data contained therein to specific clusters, and these cluster assignments can then be output. Furthermore, data from the first data source or the automation engineering data and / or data from the second or another data source belonging to specific clusters can be fed into the cluster assignment database. Within the database, a search can be performed for component descriptions that have already been assigned to such clusters in the past—and these assignments can then be output.
[0159] In a similar manner, for example, data from the first data source or automation engineering data and / or data from the second or further data sources can be fed to a neural network trained according to the present description, after which the neural network then outputs corresponding assignments of certain of these data to corresponding clusters. To determine corresponding component descriptions for certain determined cluster data, for example, the data associated with a specific cluster can again be input into a neural network trained according to the present description, with the neural network then outputting a corresponding component description for the associated cluster.
[0160] It can further be provided that the digital twin and / or the cluster assignment database is designed as a relational database, a NoSQL database and / or a knowledge graph database.
[0161] In this case, the digital twin or the digital twin's data can be stored as a database in a digital twin database, or can include such a digital twin database and be available in any database format. Such database formats can be, for example, so-called relational database formats, SQL database formats, or even so-called NoSQL database formats and / or knowledge graph database formats.
[0162] The cluster mapping database can also be in any database format. Here, too, such database formats can be, for example, so-called relational database formats, SQL database formats, or even so-called NoSQL database formats and / or knowledge graph database formats.
[0163] Different parts of the digital twin and / or the cluster assignment database can also be stored in different formats mentioned above.
[0164] Furthermore, the digital twin and / or the cluster assignment database may also include additional parts that are not available in any of the above-mentioned database formats.
[0165] In the digital twin, the information or parts of the information can be stored as a relational database, or the digital twin can include such a database. Furthermore, in the digital twin, the information or parts of the information can also be stored as a NoSQL database, one or more knowledge graphs, a non-relational database, an OWL database, an RDF database, and / or a database using SPARQL as a query query, or the digital twin can include such databases.
[0166] The database formats mentioned, for example a relational database, an SQL database, a NoSQL database and / or a knowledge graph, can further be designed and configured in accordance with the present description.
[0167] The above-mentioned object is further achieved by a digital twin for a device or system, wherein the digital twin was created using a method according to the above description.
[0168] A digital twin created in this way solves the above-mentioned problem because it was created in a simplified manner using the method presented in the present description.
[0169] The above-mentioned object is also achieved by a computer-readable storage medium comprising a digital twin, a cluster assignment database and / or a cluster assignment neural network according to one of the above descriptions.
[0170] A digital twin stored in this way solves the aforementioned problem because the digital twin was created in a simplified manner using the method described in this description. The cluster assignment database stored on the computer-readable storage medium and / or the cluster assignment neural network stored therein further enables the simplified creation of a digital twin according to this description for another device or system, as further explained in this description.
[0171] The above-mentioned object is further achieved by using a digital twin according to the present description to identify inconsistencies between the automation engineering data or the data of the first data source and the data of the second data source.
[0172] Such inconsistencies between the automation engineering data or the data from the first data source and the data from the second data source can be, for example: Differences in the number of identified component data clusters and / or sub-component data clusters after clustering the respective data; differences in the assigned component type designations and / or component ID information designations assigned to the respective component data clusters or sub-component data clusters; differences in the relationship information determined between different identified component data clusters and / or sub-component data clusters.
[0173] In a further method step, the identified inconsistencies can be presented to a user, for example. Furthermore, in a further method step, an input mask can be made available such that a user can manually enter and / or change, for example, assigned component type designations and / or component ID information designations for specific component data clusters and / or subcomponent data clusters.
[0174] Furthermore, it can be provided that, for example as a result of a corresponding inconsistency check, component type designations and / or component ID information designations for respectively determined component data clusters and / or sub-component data clusters of the first data source or the automation engineering data and the data of the second data source are displayed to a user.
[0175] Furthermore, for example, a user can be provided with alternative suggestions for corresponding names for each of the displayed component tip names and / or component ID information names via a selection menu. The alternative suggestions for corresponding names can be taken from the cluster names of the other data source. This means, for example, that a component type name of a specific data cluster within the first data source or the automation engineering data is then provided in a selection list with all or a selection of those component type names that were determined within the cluster for the second data source.
[0176] In this way, the user can be supported, for example, in assigning identified data clusters in both data sources to the corresponding correct labels.
[0177] In a similar way, the respective relationship information identified during the clustering of the first data source or the automation engineering data and the data from the second data source can be displayed, and the corresponding labels for such relationship information can be presented in corresponding drop-down menus. This also allows the relationships identified during the clustering of both data sources to be aligned.
[0178] In this way, not only can inconsistencies between the first data source or the automation engineering data and the data from the second data source be identified, but a user can also be supported in eliminating such inconsistencies and, if necessary, even correcting and / or supplementing both data sources accordingly.
[0179] In a further advantageous embodiment, the identified inconsistencies can also be used, for example, to identify errors in one or both of the data sources and to identify necessary steps to correct such errors. This can be done, for example, by providing a user with appropriate information and / or automatically suggesting changes.
[0180] Furthermore, the method can also be designed and configured in such a way that such identified errors are automatically corrected based on the information within the digital twin. In this case, for example, a user can be shown which values or terms were automatically corrected, offering them further correction options.
[0181] The above-mentioned object is also achieved by using a digital twin according to the present description to create a digital twin of a modified device or system.
[0182] Creating such a digital twin for a modified device or system, or for planning a change to the device or system, can be done, for example, by replacing clusters assigned to specific component types or component ID information with clusters assigned to modified component types or component ID information. For example, replacing the corresponding component types or even individual components with alternative component types or individual components can be taken into account in the new digital twin for the modified device or system.
[0183] Accordingly, relationship information of corresponding component clusters or sub-component clusters can also be adjusted if the relationships (e.g. a spatial or hierarchical relationship) of the corresponding components have changed accordingly or if such a change is planned.
[0184] The data of this modified digital twin for the modified device or system, or the planned change to the device or system, can be used, for example, to create a corresponding simulation of the modified device or system or to support its creation.
[0185] Furthermore, the data from the digital twin for the modified device or system can also be used, for example, to create a control program for the modified device or system or to support the creation of such a program. Furthermore, this data can also be used to create a corresponding engineering project, MCAD data, ECAD data, robot data, and / or description data for the modified device or system.
[0186] The above-mentioned object is also achieved by using a digital twin according to the present description to create a simulation of the device or system or parts thereof and / or to virtually commission the device or system or parts thereof.
[0187] Using the digital twin to create a simulation means, among other things, that at least parts of the digital twin's data are used, at least among other things, to create the simulation of the device or system. It may be necessary that other data or data sources, as well as user inputs, are also required to create the simulation.
[0188] For example, the identified component data clusters and / or sub-component data clusters, or the type designations or ID information designations assigned to them, can be used to identify and select corresponding simulation programs for the corresponding components, for example within a corresponding simulation database.
[0189] Furthermore, identified relationship information between corresponding data clusters can be used, for example, to logically link simulation programs with regard to components assigned to these data clusters.
[0190] Further data, for example, within specific data clusters, can also be used to create or parameterize a corresponding simulation. Such data can be, for example, 3D geometries or corresponding kinematic information for specific parts of the system or device. Furthermore, such information can be reference designations for products, parts lists, and / or corresponding schematic drawings or circuit diagrams of the system or device. Descriptive data such as flow charts can also be such information, which can be used to create and / or parameterize a simulation for the system or device.
[0191] In a further advantageous embodiment, the data from the digital twin can also be used to link different simulation programs, each assigned to a component of the device or system. Such a link requires, among other things, the input and output data of a simulation relating to a specific component of the device or system to be logically linked with corresponding input and output data of a simulation relating to another component of the device or system that is at least logically linked to the said component. This can, for example, enable correct communication between the two simulations. Such a logical linking of input and output signals from different simulations is referred to as "signal mapping."
[0192] Therefore, in a further advantageous embodiment, a digital twin according to the present description can also be used for such "signal mapping" between simulation programs assigned to different components and / or sub-components of the system or device.
[0193] Such signal mapping can, for example, be carried out using the digital twin of the device or system or at least be supported by the digital twin. For example, information from other data sources on the identified component types or component ID information can be used. However, information stored in the digital twin itself or information from the corresponding data clusters themselves can also be used, for example, corresponding variable names, variable information, function blocks, function block information, data blocks and / or corresponding data block information. This information can be used to obtain, for example, names, designations, arrangements and / or similar information regarding input and output signals of a corresponding simulation for a corresponding component.Based on such information, the input and output signals of a simulation for a specific component can then be linked with the corresponding input and output signals of another simulation for another component that is at least logically linked to the specific component.
[0194] Such a link can be created automatically or by assisting a user in manually assigning corresponding input and output signals, for example by displaying corresponding suggestions.
[0195] Virtual commissioning of a device or system refers to the implementation of the automation of the device or system using a digital model of the device or system and / or a simulation of the device or system. For example, the simulation or model of the device or system can be linked to real control hardware for the device or system (so-called "hardware in the loop"). Furthermore, the simulation or model of the device or system can also be linked to a simulation of the control hardware (so-called "software in the loop").
[0196] In this way, the control system for the system and its operation can be set up without the real system having to be functional.
[0197] A digital twin according to the present description can be used, for example, to create such a simulation of the device or system, as already explained in this description. Furthermore, a control program and / or its components can also be extracted from the digital twin, for example, in order to configure the corresponding control hardware or control hardware simulation accordingly. Furthermore, other data that is useful or necessary for virtual commissioning can also be extracted from the digital twin, such as additional information on the hardware components used, the communication protocols used, or similar information.
[0198] The above-mentioned task is also achieved by using a digital twin according to the present description to check whether the digital twin corresponds to the original planning data of the device or system. Original planning data can be, for example, data from a digital design system for the device or system, or also printed plans, drawings, parts lists, functional descriptions, and / or other planning data for the device or system.
[0199] When checking whether the digital twin corresponds to the original planning data for the device or system, it can be verified, for example, whether the digital twin contains the same components and / or subcomponents as those recorded in the original planning data. Furthermore, it can also be checked, for example, whether the components and / or subcomponents of the device or system, according to the digital twin, contain the same relationship information as originally recorded in the planning data for the device or system.
[0200] Further advantageous embodiments can be found in the subclaims.
[0201] The present invention is explained in more detail below by way of example with reference to the attached figures.
[0202] They show: Figure 1 : Schematic representation of an assembly unit according to the present embodiment; Figure 2 : List of various engineering and / or planning data for the assembly unit; Figure 3 : schematic process of creating a digital twin for the assembly unit; Figure 4 : schematic process for creating a digital twin for the assembly unit using data from various engineering data sources; Figure 5 : Representation of data from various data categories of automation engineering data for an exemplary description of a process for creating a digital twin for the assembly facility; Figure 6 : Result of a first clustering step regarding the automation engineering data; Figure 7 : Result of a 2nd clustering step regarding the automation engineering data; Figure 8 : the result of the 2nd clustering step with further identified relationship assignments between different components; Figure 9: exemplary representation of data from various data categories for the mechanical CAD data of the assembly unit; Figure 10 : Result of applying a 1st and 2nd clustering step as well as a relationship assignment to the mechanical CAD data; Figure 11 : schematic graphic representation of a digital twin of the assembly unit based on the data and information determined in the exemplary process steps.
[0203] Figure 1 shows an assembly station 100 or assembly unit 100 with a first transport station 110 and a second transport station 120. The first transport station 110 comprises a first robot unit 115 and the second transport station 120 comprises a second robot unit 125. Furthermore, the assembly station 100 comprises an assembly platform 130.
[0204] Figure 2 shows a list of engineering data 150 for the Figure 1illustrated assembly station 100. The engineering data 150 includes automation engineering data 200, mechanical CAD data (MCAD) 400, electrical CAD data (ECAD) 152, robotics data 154, and data in standard document formats 156.
[0205] The automation engineering data 200 includes data which is required or used in the context of an automation of the assembly station 100, for example via corresponding controllers or control devices (e.g. one or more programmable logic controllers).
[0206] Such data includes, for example, a variable list of the variables used within the control of the assembly device 100 within such a controller. Furthermore, the automation engineering data 200 includes function blocks, data blocks, or the code of a corresponding control program for controlling the assembly device by a corresponding controller or a corresponding programmable logic controller.
[0207] The automation engineering data 200 also includes a list of user-defined data formats (so-called "UDTs" (User Defined Types) that were created or set up during the creation of the automation engineering data 150.
[0208] Furthermore, the automation engineering data 200 includes a list of information about the hardware components used in the assembly station 100. This information may include, for example, component names, component ID information (e.g., brand names, serial numbers, order numbers, or similar), component type designations, component description information, a list of parameters used and / or corresponding parameter limits, geometric information about the corresponding hardware components, and / or additional, background, or support information about the corresponding hardware components.
[0209] The MCAD data 400 includes a parts list of the components of the assembly station 100, 3D information about the components of the assembly station 100, and about the assembly station 100 itself. Furthermore, the MCAD data 400 includes kinematic information regarding individual components of the assembly station 100, the assembly station 100 as a whole, and between various components of the assembly station 100. Furthermore, the MCAD data also includes point cloud information regarding individual components of the assembly station 100 and the assembly station 100 as a whole.
[0210] The ECAD data 152 includes circuit diagrams of the assembly station 100 and its components, functional plans, functional diagrams, function lists, and location information regarding electrical modules and components of the components of the assembly station 100. The ECAD data also includes a parts list of used electrical and electronic components, a corresponding product identification list, and illustrations of such components and corresponding circuits as used within the assembly station 100 and the components of the assembly station 100.
[0211] The robotics data 154 of the engineering data 150 for the assembly station 100 include signal lists of the robot units 115, 125 of the assembly station 100 as well as robot programs for the robot units 115, 125 of the assembly station 100.
[0212] The information contained in the engineering data 150 for the assembly station 100 in standard document formats 156 includes PDF files, Excel files, Visio files, images, and flowcharts with information regarding the assembly station 100 and its components. Such information can include, for example, functional descriptions, operating instructions, parameter and other data lists, image representations, and similar information.
[0213] Figure 3 This schematically illustrates an example process for creating data for a digital twin 800 for the assembly station 100 according to the present description. This process is explained below using the example of clustering automation engineering data 200 for the assembly station 100. The automation engineering data 200 also constitutes an example of a first data source according to the present description.
[0214] The creation of the Digital Twin 800 according to Figure 3 begins with a first clustering step 610, in which type clusters are identified within data selected for clustering from the automation engineering data 200 using a first clustering method. Data belonging to a specific component type is assigned to an associated cluster. Such component types can be, for example, a robot, a line, an assembly station, a motor, a converter, a sensor, or similar component types. This will be explained in more detail in connection with the following figures.
[0215] In a second assignment step 620, corresponding type descriptions are assigned to the identified type clusters. This assignment can be performed manually by a user, for example, or semi-automatically or automatically based on previously stored corresponding information.
[0216] Figure 3 further shows a database 700, which includes a type database 710 and an ID info database 720. The results of the assignment step 620 are then stored accordingly in the type database 710, for example, by associating the information on the identified type clusters with the respective type descriptions within the database.
[0217] Subsequently, in a second clustering step 630, ID information clusters are identified within the type clusters found in the first clustering step 610. Within a type cluster, data belonging to a specific component or component instance is assigned to a corresponding cluster. Such specific components or component instances can be identified, for example, by a serial number or order number, or by a corresponding product name or manufacturer name. Within one of the identified type clusters, for example, there can be different ID information clusters for different components. Furthermore, the identified type cluster can also correspond exactly to one ID information cluster, i.e. there is exactly one component of a specific type.
[0218] Subsequently, in a further assignment step 640, each of the identified ID information clusters is assigned a corresponding piece of ID information. Such ID information can then, for example, be the corresponding serial or order numbers, product names, or manufacturer names already mentioned above.
[0219] This is followed by a relationship assignment step 650, in which relationships between various of the identified type clusters and / or ID information clusters are identified. Such relationships can be, for example, relationships such as "functionally assigned," "is part of," "is assigned," "is connected to," or similar relationships. Such relationships can be determined, for example, based on the relationships between individual data within the automation engineering data 200. Such relationships can be derived, for example, from call chains or sequences of program blocks, function blocks, data blocks, or similar structures. Furthermore, relationships can also be inferred from variable names or similar data.
[0220] Furthermore, the data stored in the type database 710 and the ID information database 720 are used to train an AI component 750 with a neural network 752. For training the neural network 752, for example, the assignment of certain data to certain clusters and / or the assignment of certain labels to certain clusters and / or the data contained therein is used.
[0221] The trained neural network 752 of the AI component 750 can then, for example, also be used in the context of Figure 3The clustering steps 610, 630 shown as well as the assignment steps 620, 640 can be used. For example, within the scope of one of the clustering steps 610, 630, the source data can be fed to the trained neural network 752, which can then output a corresponding cluster structure or corresponding clusters or cluster designations assigned to the individual data and thus supplement or possibly even replace the clustering methods used in the respective clustering steps 610, 630.
[0222] In an analogous manner, the AI component 750 can also be used for the type description assignment step 620 or the ID information assignment step 640. Furthermore, the relationships identified in the relationship assignment step 650 can also be used to train the neural network 752 accordingly, thus supporting the relationship assignment step 650 later with a correspondingly trained neural network 752.
[0223] Figure 4 shows an exemplary schematic representation of steps for creating a digital twin 800 according to the present description using data from various engineering data sources 200, 400, 152, 154, 156.
[0224] For this purpose, automation engineering data 200, such as those used in connection with Figure 2are explained and explained in more detail, subjected to one or more data selection and structuring steps 660, such as those used in the context of Figure 3 Furthermore, mechanical CAD data 400, such as those used in connection with Figure 2 are explained in more detail, are also subjected to one or more data selection and structuring steps 662, as described in connection with Figure 3 have already been explained in more detail. In the same way, the electrical CAD data 152, the robotics data 154 and the standard document data 156, which are also related to Figure 2 are explained in more detail, each subjected to data selection and structuring steps 664, 666, 668, whereby these data selection and structuring steps 664, 666, 668, each independently of each other, are again carried out in accordance with the Figure 3 procedures explained in more detail.
[0225] In a further data comparison and fusion step 670, the data clusters determined during the data selection and structuring steps 660, 662, 664, 666, 668 are assigned to one another. This assignment is performed in such a way that those data clusters from the various data sources 200, 400, 152, 154, 156 that belong to the same component types, component type designations, component ID information, and / or component ID information designations are assigned to one another. This model comparison and fusion step 670 thus generates a consistent data model for the assembly station 100 across the boundaries of the various data sources 200, 400, 152, 154, 156 and is thus a good basis for creating a digital twin 800 according to the present description.
[0226] Based on the Figure 5-8 Now, for example, the ones related to Figure 3The process steps 610, 620, 630, 640, 650 already explained will be explained in more detail using exemplary automation engineering data 200 for the assembly station 100.
[0227] Based on the Figure 9-10 An analog clustering is explained using exemplary MCAD data 400 for the assembly station 100, after which, with respect to Figure 11 which has already been linked to Figure 4 The model matching and fusion step 670 explained in more detail is exemplified with reference to the clustering analysis of the automation engineering data 200 according to the Figure 5-8 and the MCAD data 400 according to the Figure 9-10 identified data clusters are explained in more detail.
[0228] Figure 5shows an exemplary example of automation engineering data 200 for the assembly station 100. In this example, the automation engineering data 200 includes a variable list 210 with the variables h to n, each marked with a square symbol. Furthermore, the automation engineering data 200 includes a function block list 220 with function blocks a to c, which are represented by triangular symbols. The automation engineering data 200 also includes a data block list 230 with data blocks d to g, which are each represented by circular symbols. Furthermore, the automation engineering data 200 also includes a UDT list 240, a hardware information list 250 and a control program 260, which, however, are in the Figure 6-8 cannot be used in the clustering embodiment shown.
[0229] Figure 6shows the result of a first clustering step for identifying clusters 310, 320, 250, which are each assigned to component types of the assembly station 100. Such a clustering step can, for example, be carried out as in the first clustering step 610 within the framework of Figure 3 be designed and set up in more detail.
[0230] Furthermore, Figure 6 also the result of a subsequent type description assignment step for assigning corresponding component type designations 312, 322, 352 to the corresponding clusters 310, 320, 250. Such a type assignment step can, for example, correspond to the first type description assignment step 620 according to Figure 3 be designed and furnished.
[0231] For the first clustering step 610, the automation engineering data 200 are Figure 5The variable list 210, the function block list 220, and the data block list 230 are selected as a data selection 205 or first data source 205. For clustering, the variable names assigned to variables h to n are then used. For function blocks a to c, variables used by the function blocks or their associated names are used. For data blocks d to g, variables used by the data blocks or their associated names are also used for clustering.
[0232] The variable names selected for clustering are well suited for the corresponding clustering, for example, because when variable names are assigned during engineering, e.g., for assembly station 100, the assignment of variables to specific components, subcomponents, or system parts is typically encoded into the variable name. Therefore, for example, the similarity of certain parts of a variable name can be used to infer a corresponding commonality in the assignment of these variables to various components, component parts, or subcomponents of assembly station 100.
[0233] After selecting and implementing an appropriate clustering procedure on the above-mentioned data, for example according to the present description, the Figure 6The cluster image shown is obtained, in which the variables i and h as well as the function block a are assigned to a first cluster 310. The variables k, j, l, m, the function blocks b and c as well as the data blocks d and e are found in a second cluster 320. Furthermore, the variable n in as well as the data blocks g and f are assigned to a third cluster 250.
[0234] Subsequently, in a further step, the identified clusters 310, 320, 250 are assigned corresponding component type designations 312, 322, 352. This component type designation assignment can be carried out, for example, according to the present description or also as in connection with the Figure 3 shown component description assignment step 620 may be designed and configured.
[0235] In the present example, this assignment of component type designations 312, 322, 352 can, for example, be carried out semi-automatically, wherein, for example, meta information about the data contained in the first data cluster 310 or descriptive information about this data is used and matches are searched for in this data. If a commonality clearly emerges from this search, this can, for example, be presented to a user as a suggestion for confirmation. The user can, for example, accept the suggestion, whereby this term is then assigned as the component type designation 312, 322, 352 for the respective cluster 310, 320, 250. If there are various matches between the aforementioned data, a corresponding selection can, for example, be presented to a user, who can then select the appropriate component type designation 312, 322, 352 for the respective cluster 310, 320, 250.
[0236] This process can also be fully automated, after which the system itself evaluates the matches found using a suitable methodology and generates a corresponding component type designation 312, 322, 352 and assigns it to the respective cluster 310, 320, 250. This assignment can then be subsequently changed by a user, for example.
[0237] This assignment step can also continue to be carried out completely manually, for example by a user manually evaluating the meta or description information presented above and using this to create a corresponding component type designation 312, 322, 352 for the respective cluster 310, 320, 250.
[0238] In the present example, a component type designation "assembly station" 312 was determined for the first cluster 310 in one of the three ways explained above and assigned to this cluster 310. Functionally, this means that the data contained in the cluster, the variable a and the function blocks i and h, can be assigned to the overall functionality of the assembly station 100 as a whole.
[0239] In a similar manner, the second cluster 320 was assigned a cluster type designation "Robot" 322. Functionally, the data contained in this second data cluster 320 can therefore be assigned to the functionality of the robots 115, 125 within the assembly station 100.
[0240] In a similar manner, the third cluster 250 was assigned the type designation "Transport" 352. Thus, the functionality of the data contained in the second cluster 250 can be assigned to transport stations one and two 110, 120 of the assembly station 100.
[0241] Figure 7 shows the result after a second clustering step 630 for identifying component ID information clusters and a second assignment step 640 for assigning component ID information labels to the identified clusters according to the explanations to Figure 3 on the Figure 6 presented clusters were applied.
[0242] The result of the second clustering step 630 is four clusters 310, 330, 340, 250. The first cluster 310 corresponds to the first cluster 310 already identified in the first clustering step and the fourth cluster 250 corresponds to the third cluster 250 defined in the first step.
[0243] From this, it can be concluded, for example, that the data assigned to the "assembly station" type according to the first clustering step 610 can be assigned to exactly one assembly station with specific ID information. Likewise, the data assigned to the "transport station" type according to the first clustering step 610 can be assigned in the corresponding data cluster 250 to exactly one specific transport station with a specific transport station ID. Thus, no new clusters were identified in these two cases by the second clustering step 610; rather, the second clustering step 610 did not result in any change to the cluster structure.
[0244] The case is different with regard to the second cluster 320 identified in the first clustering step 610, which is assigned to the component type "robot." The application of the second clustering step 630 has resulted in a division of the data contained in the type cluster 320 into two component ID information clusters 330, 340, as shown in Figure 7. Variables 1 to m, function block c, and data block e are assigned to a first of these clusters 330. Variables j to k, function block b, and data block d are assigned to a second of these clusters 340. From this, it can be concluded, for example, that the data assigned to the component type "robot" can be assigned to two different robot instances.
[0245] According to the first description assignment step 620, corresponding component ID information designations 314, 334, 344, 354 can then also be assigned for the clusters identified in the second clustering step 630. Here, again based on the description and meta information assigned to the corresponding variables, specific ID information 314 for the assembly station 100 can be assigned to the first cluster 310. The second component ID information cluster 330 is then assigned a unique ID identifier of the first robot 115 of the assembly station 100, while the third component ID information cluster 340 is assigned a unique ID identifier of the second robot 125 of the assembly station 100. The fourth component ID information cluster 250 is then assigned a unique ID identifier 352 for the first transport station 110 of the assembly station 100 in an analogous manner.
[0246] Figure 8shows the result of a relationship assignment step 650 following the preceding method steps 610, 620, 630, 640, as it is related to Figure 3 This relationship assignment step 650 was applied to the corresponding clustering result according to Figure 7 applied. To identify relationship assignments between the clusters 310, 330, 340, and 250 shown in Figure 7, a call structure or call chain for function modules a to c, which can be taken from the function module list 220, was automatically evaluated. Alternatively, this evaluation can also be performed partially automated according to the present description or manually.
[0247] The result of this evaluation is in Figure 8shown. Here, it is shown by means of dash-dotted arrows between the function blocks a and c as well as a and b that the function block c is called by the function block a and the function block b is also called by the function block a. The function block a is assigned to the cluster 310 for the assembly station 100 with the assembly station identifier 314, the function block b to the second robot 125 with the second robot ID identifier 344, and the function block c to the first robot 115 with the first robot ID identifier 334. From the call assignment explained above, it can then be concluded that the data cluster 330 assigned to the first robot 115 is functionally assigned to the data cluster 310 assigned to the assembly station 100, which is indicated by a dashed arrow 336 in Figure 8Analogously, the data cluster 340 assigned to the second robot 125 is also assigned to the data cluster 310 assigned to the assembly station 100, which in turn is indicated by a dashed arrow 346 in Figure 8 is shown.
[0248] In the Figure 9 and 10 is an application of the method steps 610, 620, 630, 640, 650, which are related to Figure 3 explained in more detail, the mechanical CAD data 400 assigned to the assembly station 100 are explained by way of example. The basic sequence of the process steps 610, 620, 630, 640, 650 corresponds to that described above with regard to the Figure 5 to 8 explained process with regard to a corresponding clustering of the automation engineering data 200 for the assembly station 100.
[0249] Figure 9shows MCAD data 400 for the assembly station 100. This MCAD data 400 includes a list of 3D information 410 on components of the assembly station 100, which are represented by trapezoids with the letters s to t in Figure 9 are shown. Furthermore, the MCAD data 400 includes a parts list 420, which contains information on four individual components of the assembly station 100, which are symbolized by hexagons with the letters o to r. Furthermore, the MCAD data 400 includes a list of kinematic information 430 and a list of point cloud information 440. For the clustering steps explained below, the 3D information list 410 and the parts list 420 were selected, which is represented by a selection 405 shown as a dotted rectangle in Figure 9 is shown.
[0250] Figure 10 shows the result of clustering the MCAD data according to the Figure 9 selection 405 from the total amount of MCAD data 400. The Figure 10The clustering result shown for the MCAD data 405 corresponds to the one shown in Figure 8 shown clustering result for the corresponding automation engineering data 205. Figure ten shows the result of the clustering after the process steps 610, 620, 630, 640, 650 explained with reference to Figure three were applied to the MCAD data 405. The application of these process steps is analogous to the application of these steps as they are applied with respect to the automation engineering data 200 in connection with the Figures 5 to 8 were explained.
[0251] Figure 10Therefore, it shows the result after a sequence of a first clustering step 610 according to component types, a first labeling step of the identified clusters with component type labels 620, a second clustering step 630 according to component ID information, and a subsequent second labeling step 640 for labeling the identified clusters with component ID information labels. The final step was then a relationship assignment step 650 for identifying relationships between the ID information clusters identified in the second clustering step 630.
[0252] This then results in, as in Figure 10, a first cluster 530 is assigned to the first robot 115 of the assembly station 100 and has therefore been assigned ID information for this first robot 534. This first robot cluster 530 includes the parts "∘" according to the parts list 420 of the MCAD data 400 and the 3D information "s." A second cluster 540 is assigned to the second robot 125 of the assembly station 100. Therefore, cluster 540 is assigned an ID identifier of the second robot 544 as the component ID information designation 544. This second robot cluster 540 includes information about the component "q" from the parts list 420 of the MCAD data 400 and the 3D information "t."
[0253] Furthermore, Figure 10a cluster 550 assigned to the first transport station 110, to which an ID identifier of this first transport station 554 is assigned as a component ID information designation. This cluster contains the information "p" from the parts list 420 of the MCAD data 400. Furthermore, Figure 10 a cluster 560 assigned to the second transport station 120, to which the ID identifier of this second transport station 564 is assigned as a component ID information designation. This cluster contains the information "r" from the parts list 420 of the MCAD data 400.
[0254] By analyzing information on components o to r contained, for example, in the parts list 420 of the MCAD data 400, the information was further determined that the first robot 115 is part of the transport station 110 and the second robot 125 is part of the transport station 120. These relationships were also assigned to the respective clusters 530, 540, 550, 560 for the aforementioned components 110, 115, 120, 125 by assigning a corresponding "part of" relationship to cluster 530 for the first robot 115 and cluster 550 for the first transport station 110, which in Figure 10 symbolized by a dashed arrow 536 between these clusters 530, 550. Accordingly, the cluster 540 for the second robot 125 and the cluster 560 for the second transport station 120 are assigned a corresponding "part of" relationship, which is Figure 10 symbolized by a dashed arrow 546 between both clusters.
[0255] Figure 11 shows the result of applying a model matching and fusion step 670, as described, for example, in connection with the explanations relating to Figure 4 was presented in more detail. Figure 11 In a left part, a simplified representation of the clustering result regarding the automation engineering data 205 is shown, as shown in Figure 8 Furthermore, in the right part, Figure 11 a simplified representation of the clustering result regarding the MCAD data 405 is shown, as shown in Figure 10 was presented.
[0256] As part of the model comparison and fusion step 670, all identified component ID information designations 314, 334, 344, 354, 534, 544, 554, 564 were then collected and corresponding symbols for corresponding components 100, 110, 115, 120, 125 were assigned to these designations. This symbolic component representation for the assembly station 100, the first transport station 110, the first robot 115 of the first transport station 110 and the second transport station 120 with its second robot 125 is shown in a middle section in Figure 11 shown.
[0257] Furthermore, Figure 11 by means of arrows between the respective clusters 330, 310, 340, 350 of the automation engineering data 205 and the respective clusters 530, 540, 550, 560 of the MCAD data 405 an assignment of the corresponding clusters to these in the middle part of Figure 11 represented by system components 100, 110, 115, 120, 125 symbolized by rectangles.
[0258] The identified and Figure 11 The information presented is now recorded as a corresponding database to create a corresponding digital twin 800 for the assembly station 100. The assignments of the individual data from the automation engineering data 205 and MCAD data 405 to the various clusters, their respective component type designations and their component ID information designations, as well as the relationships of the various clusters to one another and to the components of the assembly station 100, are recorded and stored accordingly in the digital twin 800.
[0259] Furthermore, within this Digital Twin 800, corresponding links of the individual data in the Digital Twin 800 to the original automation engineering source data 205 and MCAD source data 405 are stored, via which a connection and thus also access to the original data source is enabled. This also enables access to the complete information stored there. For example, storing this Digital Twin 800 in a Knowledge Graph database format or a comparable NoSQL database format is advantageous. Figure 11 the representation of the result of the model comparison and fusion step 670 can be considered as a possible representation of the digital twin 800 of the assembly station 100.
[0260] Based on this digital twin 800, it is then further possible, for example, to create a simulation for the assembly station 100 or parts thereof. For this purpose, the component ID information designations 314, 334, 344, 354, 534, 544, 554, 564 identified during the creation of the digital twin 800 can be used, for example, to select appropriate simulations for the corresponding components, for example from a database collection of such simulations. These simulations can then be parameterized, configured, and interconnected using the corresponding associated data from the assigned data clusters. In this way, a simulation of the assembly station 100 can be created based on the created digital twin 800. The creation of this simulation can also be considered the creation of a digital twin within the meaning of the present description.The simulation created in this way is also another possible design for a digital twin in the sense of this description.
[0261] In Figure 11 Furthermore, the database 700 with the type database 710 and the ID information database 720 is shown, which are described in the context of the Figure 3 have already been explained. Figure 11 also shows the AI component 750 with the neural network 752, which is also already described in the description of Figure 3 The corresponding connecting arrows in the Figure 11 It is symbolized that the result and the information in the digital twin 800 are stored in the type database 710 and the ID information database 720 and that this data is also used to train the neural network 752 in the AI component 750 - as already described in connection with Figure 3 explained.
Claims
1. Method for creating a digital twin (800) of an installation or device (100), wherein a first data source containing automation engineering data (205) in relation to automation and / or an automation plan of the installation or device (100) or parts thereof is present, and wherein the automation engineering data (205) comprise data from at least two data categories, the method being characterized by the following steps: a.) identifying component data clusters (310, 320, 330, 340, 250) within the data from the first data source (205) using a clustering method in the form of a machine learning method, wherein the component data clusters (310, 320, 330, 340, 250) are able to be associated with or are associated with component types or component ID information in relation to the installation or device (100), b.) assigning, in automated or semi-automated fashion, a respective component type designation (312, 322, 352) or a respective component ID information designation (314, 334, 344, 354) to at least one of the identified component data clusters (310, 320, 330, 340, 250), wherein the automated or semi-automated assignment is carried out using a cluster association database and / or a cluster association neural network, c.) creating and storing the digital twin (800) of the installation or device (100), comprising arranging and / or storing the information, generated according to method step b.), in relation to the component type designation or component ID information designation assigned in each case to the at least one of the identified component data clusters, as a digital twin database.
2. Method according to Claim 1, characterized in that, following method step a.) and before method step c.), the following method steps are performed: a1.) identifying subcomponent data clusters (330, 340) within the component data clusters (320) identified according to Claim 1, wherein the subcomponent data clusters (330, 340) are able to be associated with or are associated with subcomponent types or subcomponent ID information in relation to the installation or device (100), and in that, following method step a1.) and before method step c.), the following method step is performed: b1.) assigning a respective subcomponent type designation or a respective subcomponent ID information designation (334, 344) to at least one of the identified subcomponent data clusters (340).
3. Method according to Claim 1 or 2, characterized in that, following method step a.) and / or a1.), the following method step is performed: b2.) identifying relationship information (336, 346) of the component data clusters (310, 320, 330, 340, 250) identified according to method step a.) by evaluating the data from the first data source (205) and / or additional information regarding these data, and / or identifying relationship information (336, 346) between subcomponent data clusters identified according to method step a1.) by evaluating the data from the first data source and / or additional information regarding these data, wherein, furthermore, in method step c.), the digital twin (800) is furthermore created using identified relationship information (336, 346).
4. Method according to one of the preceding claims, characterized in that a second data source (405) from the following list of data sources is present: - MCAD data (400) in relation to a mechanical and / or spatial plan of the device or installation (100) or parts thereof, and / or in relation to a mechanical and / or spatial design of the device or installation or parts thereof, - ECAD data (152) 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, - robotics data (154) in relation to a plan and / or a design of one or more robots (115, 125) of the device or installation (100), - description data (156) in relation to a plan and / or design of the device or installation (100) or parts thereof, wherein the method furthermore additionally comprises, before the creation of the digital twin (800) according to feature c.), the following method steps: aa.) identifying component data clusters (530, 540, 550, 560) within the second data source (405), wherein the component data clusters (530, 540, 550, 560) are able to be associated with or are associated with component types or component ID information in relation to the installation or device (100), bb.) assigning a respective component type designation or a respective component ID information designation (534, 544, 554, 564) to at least one of the component data clusters (530, 540, 550, 560) identified in method step aa.), bbb.) associating the component data clusters (310, 320, 330, 340, 250) and / or subcomponent data clusters of the data from the first data source identified in method step b.) according to Claim 1 or 2 with the component data clusters (530, 540, 550, 560) identified in method step bb.).
5. Method according to Claim 4, characterized in that, following method step aa.) and before method step bbb.), the following method steps are performed: aal.) identifying subcomponent data clusters within the component data clusters (530, 540, 550, 560) identified according to Claim 4, wherein subcomponent types or subcomponent ID information in relation to the installation or device are able to be associated with or are associated with the subcomponent data clusters (530, 540, 550, 560), and bb1.) assigning a respective subcomponent type designation or a respective subcomponent ID information designation (534, 544, 554, 564) to at least one of the identified subcomponent data clusters.
6. Method according to Claim 4 or 5, characterized in that, following method step aa.) and / or aa1.), the following method step is performed: bb2.) identifying relationship information (536, 546) between component data clusters (530, 540, 550, 560) identified according to method step aa.) by evaluating the data from the second data source (405) and / or additional information regarding these data, and / or identifying relationship information between subcomponent data clusters identified according to method step aa1.) by evaluating the data from the second data source and / or additional information regarding these data, wherein, furthermore, in method step c.), the digital twin (800) is furthermore created using identified relationship information (536, 546).
7. Method according to one of the preceding claims, characterized in that, following method step a.), a1.), aa.), aa1.), b.), b1.), b2.), bb.), bb1.), bb2.), bbb.) and / or further method steps according to one of the preceding claims, a result of the respective method step is stored in a cluster association database (700) and / or in that, following method step a.), a1.), aa.), aa1.), b.), b1.), b2.), bb.), bb1.), bb2.), bbb.) and / or further method steps according to one of the preceding claims, a cluster association neural network (752) is trained using results from the respective method step.
8. Method according to Claim 7, characterized in that the cluster association database (700) and / or the cluster association neural network (752) is used when performing a method according to one of Claims 1 to 6, in particular in that the component data clusters (310, 320, 330, 340, 250, 530, 540, 550, 560) and / or the subcomponent data clusters are identified using the cluster association database (700) and / or the cluster association neural network (752), and / or in that the component type designation (312, 322, 352) or component ID information designation (314, 334, 344, 354, 534, 544, 554, 564) and / or the subcomponent type designation or in each case one subcomponent ID information designation is assigned using the cluster association database and / or the cluster association neural network.
9. Method according to one of the preceding claims, characterized in that the digital twin (800) and / or the cluster association database (700) is in the form of a relational database, a NoSQL database and / or a knowledge graph database.
10. Method for creating a digital twin (800) of an installation or device (100) according to one of Claims 1 to 9, wherein a first data source (205) from the following list of data sources is present: - automation engineering data (205) in relation to automation and / or an automation plan of the installation or device (100) or parts thereof, - MCAD data (400) in relation to a mechanical and / or spatial plan of the device or installation (100) or parts thereof, and / or in relation to a mechanical and / or spatial design of the device or installation or parts thereof, - ECAD data (152) 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, - robotics data (154) in relation to a plan and / or a design of one or more robots (115, 125) of the device or installation (100), and wherein the first data source (205) comprises data from at least two data categories.
11. Method according to Claim 10, characterized in that a second data source (405), different from the first data source (205), is selected from the following list of data sources: - automation engineering data (205) in relation to automation and / or an automation plan of the installation or device (100) or parts thereof, - MCAD data (400) in relation to a mechanical and / or spatial plan of the device or installation (100) or parts thereof, and / or in relation to a mechanical and / or spatial design of the device or installation or parts thereof, - ECAD data (152) 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, - robotics data (154) in relation to a plan and / or a design of one or more robots (115, 125) of the device or installation (100), - description data (156) in relation to a plan and / or design of the device or installation (100) or parts thereof, wherein the method furthermore additionally comprises, before the creation of the digital twin (800) according to feature c.), the following method steps: aa.) identifying component data clusters (530, 540, 550, 560) within the second data source (405), wherein the component data clusters (530, 540, 550, 560) are able to be associated with or are associated with component types or component ID information in relation to the installation or device (100), bb.) assigning a respective component type designation or a respective component ID information designation (534, 544, 554, 564) to at least one of the component data clusters (530, 540, 550, 560) identified in method step aa.), bbb.) associating the component data clusters (310, 320, 330, 340, 250) and / or subcomponent data clusters from the first data source (205) identified in method step b.) according to Claim 10 or 11 with the component data clusters (530, 540, 550, 560) identified in method step bb.).
12. Method according to either of Claims 10 and 11, characterized in that the method is furthermore accordingly designed and configured in accordance with the features of one or more of Claims 5 to 9.
13. Digital twin for a device or installation, characterized in that the digital twin (800) has been created using a method according to one of Claims 1 to 12.
14. Computer-readable storage medium comprising a digital twin (800) that has been created using a method according to one of Claims 1 to 12.
15. Use of a digital twin (800) that has been created using a method according to one of Claims 4 to 9 to identify inconsistencies between the automation engineering data (205) and the data from the second data source (405), or use of a digital twin that has been created using a method according to either of Claims 11 to 12 to identify inconsistencies between the data from the first data source (205) and the data from the second data source (405).
16. Use of a digital twin (800) that has been created using a method according to one of Claims 1 to 12 - to create a digital twin of a changed device or installation, - to create a simulation of the device or installation (100) or parts thereof and / or to virtually commission the device or installation (100) or parts thereof, and / or - to check whether the digital twin (800) corresponds to original planning data of the device or installation (100).