ADAPTATION OF DATA TRANSFER FROM A CONTROL DEVICE TO A CLOUD SYSTEM USING MACHINE LEARNING

DE502021006084D1Active Publication Date: 2025-01-02WAGO VERW GMBH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
DE502021006084
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-08-18
Filing Date
2021-05-20
Publication Date
2025-01-02
Estimated Expiration
2041-05-20

AI Technical Summary

Technical Problem

Current methods for data transmission from industrial control devices to cloud systems are inefficient, leading to unnecessary data transfer and high resource consumption, as they are inflexible and based on predefined data selection by PLC developers, rather than actual user needs in the cloud system.

Method used

A method using machine learning to determine usage behavior and adapt data transmission from industrial control devices to cloud systems, optimizing data transfer by selecting relevant data subsets, adjusting sampling rates, and grouping data based on user behavior analysis.

Benefits of technology

This approach reduces unnecessary data transfer and storage, saving resources and lowering costs by aligning data transmission with actual user needs in the cloud system, while improving data connection efficiency.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader
Need to check novelty before this filing date? Find Prior Art

Description

1. Technical area

[0001] The invention relates generally to the field of automation technology and, in particular, to methods and techniques for efficient data transmission from an industrial control device to a cloud system and / or a remote computer, e.g., a web application. 2. Background

[0002] In the wake of the fourth industrial revolution and the all-pervasive digitalization, especially in industrial automation technology, cloud solutions are increasingly being used to analyze, manage, and sometimes even control the components of the automation environment.

[0003] In this case, data is typically generated by industrial control devices at runtime and sent to one or more cloud systems. An industrial control device can, for example, be a programmable logic controller (PLC). Such a device is typically communicatively connected to one or more sensors and / or actuators and implements tasks in the context of automation technology.

[0004] Within the scope of the invention, a cloud system can generally comprise a computer system remote from the control device. Examples include the WAGO Cloud, Microsoft Azure, Amazon AWS ("Amazon Web Services"), the SAP Cloud, or the IBM Cloud. Within the cloud system, the received data is typically stored, evaluated, and / or made available to users in a format suitable for any device. The connection between the control devices and the cloud system(s) can be wired or wireless (e.g., via mobile communications technologies).

[0005] The devices within the automation environment, such as the industrial control devices mentioned above, are often referred to as edge devices in this context. An edge device is generally understood to be a device that, while connected to a remote computer system, especially a cloud system, nevertheless performs local and therefore decentralized data processing, for example, to prepare data before transmission to the cloud or to the remote computer system.

[0006] Which data an industrial control device should send to the cloud system is typically defined by a (PLC) developer programming within the control device, for example, in the PLC program. In other words, the data to be transferred is typically selected and defined during development. However, the actual use of the data within the cloud system is typically not determined by the (PLC) developer, but rather by the cloud user(s), for example, by creating dashboard elements, defining alarm rules, creating trends, performing exports, or the like. Which of the data supplied by the industrial control device will then be used within or outside the cloud system is not necessarily known at the time the data transfer is defined.Furthermore, it is also conceivable to subsequently adapt the definition of the data transfer, e.g., by selecting a user via a corresponding application, which then adapts the selection within the control device. However, these procedures are inflexible, and changing the data to be transferred and / or the transfer characteristics is complex. In particular, the first-mentioned known method often also transfers data that is not used in the cloud system and is therefore unnecessary. Transferring superfluous data and retaining it within the cloud system can sometimes result in considerable resource consumption and thus high costs.

[0007] Sending data from industrial devices to cloud systems and the data connection required for this have their negative characteristics. For example, data transmission in an industrial context is often associated with usage-dependent costs, i.e. the more data to be transmitted, the more expensive it can become. The costs result, for example, from the resulting traffic and / or the number of incoming messages into the cloud system. Furthermore, the data transmission rate is often physically limited, which means that not an unlimited amount of data can be transmitted. The more devices sharing a connection, the lower the possible data transmission rate. Especially in the context of the Internet, but also in an intranet, a data connection can also be affected by outages.

[0008] In another technical field, namely the operation of mobile networks, it is known, for example, from DE 103 17 563 A1, to adapt the menu items or menu navigation of a mobile portal to the individual usage behavior of mobile users. A menu-driven mobile portal is transmitted via the mobile network from a central unit to the mobile devices and executed locally there. The central unit evaluates which menu items were selected on the mobile devices, how often, at what time, and at what location. This allows user profiles to be created and the mobile portal to be individually adapted.However, such a concept, in which user behavior is recorded on the local mobile terminals, is unusable for the present invention because, as explained at the beginning, in an industrial context it is not the users of the local control devices but rather the users of the remote cloud system who decide which data is ultimately relevant.

[0009] Document US 2013 / 0212420 A1 describes a cloud-compatible industrial device that provides time-stamped industrial data to a cloud platform. A cloud application can dynamically select an appropriate upload frequency for the data from the industrial devices.

[0010] Ivan Koychev and Ingo Schwab's publication "Adaptation to Drifting User's Interests" introduces a method for dynamically adapting an internet search engine to changing user interests. This approach utilizes the concept of gradual forgetting.

[0011] The present invention is therefore based on the problem of providing a method for more efficient data transmission from an industrial control device to a cloud system, which at least partially overcomes the disadvantages of the prior art mentioned above. 3. Summary of the invention

[0012] This problem is solved by the subject matter of the independent patent claims, wherein the subclaims relate to preferred developments.

[0013] Thus, claim 1 relates to a method for adapting the data transmission from an industrial control device to a cloud system, wherein the method comprises the following steps carried out by a cloud application: determining a usage behavior by means of machine learning, wherein the usage behavior relates to the use of the data transmitted from the industrial control device, in particular process data, by the cloud system or a computer system connected thereto, and sending at least one command to the industrial control device for adapting the data transmission from the industrial control device to the cloud system based on the determined usage behavior.

[0014] A basic idea is to use machine learning within the cloud system to learn the (preferably regular or recurring) usage behavior of users (or multiple users or user behavior) with regard to the use of the data provided by the control device and to adapt and / or gradually optimize data transmission based on this. This can reduce the transmission and retention of superfluous data within the cloud system. This reduction helps to conserve resources within the cloud system. Furthermore, data connection traffic is reduced, which is particularly advantageous in industrial contexts and / or with mobile connections.

[0015] The determined usage behavior can comprise a set of values ​​which, for example, represent at least one frequency of use, at least one duration of use and / or at least one time of use. These parameters (i.e., frequency of use, duration of use, time of use, etc.) are preferably based on inputs by one or more users, whereby the inputs can have a direct and / or indirect impact on the parameters. Such user inputs can be of a diverse nature, e.g., manual mouse inputs, keyboard inputs, voice inputs, inputs via eye tracking, opening an application, clicking a button, etc. The parameters can be determined, for example, from login times, an access time and / or access duration to projects, dashboards, functions (e.g., for export), etc., and / or mouse interactions.

[0016] Additionally or alternatively, the identified usage behavior can also include at least one usage type. This can be determined, for example, by analyzing whether the associated data is used in alarms (this data is preferably always sent), dashboards, trends, and / or for exports (e.g., to other systems).

[0017] The at least one command for adapting the data transmission can be a command for selecting a subset of the data for transmission, for not sending certain data, for redirecting certain data to another data storage device, for sending data aggregates, in particular minimum values ​​and / or maximum values, for adapting a time interval, in particular a sampling rate and / or publishing rate, of certain data, and / or for grouping data. Far-reaching cost-benefit optimizations can be achieved through the aforementioned adaptations or combinations thereof. Preferably, a command is a command that is automatically generated and then sent to the control device, where it is implemented such that the data transmission is adapted according to the command, e.g., by adapting the PLC program or changing configurations on the control device side.

[0018] Preferably, the usage behavior is determined over a predetermined period of time, for example, over a period in which several direct and / or indirect inputs, interactions, etc. occur. The method may further comprise creating a predictive model for future use of the data, wherein the at least one command serves to adapt the data transmission based on the predictive model. Preferably, the usage behavior is determined continuously or regularly. The usage behavior may relate to the use of the data by one or more users or a user group.

[0019] In a further aspect of the invention, the control device may comprise an OPC server, preferably an OPC UA server, and / or the computer system may comprise an OPC client, preferably an OPC UA client.

[0020] The described methods may also include receiving data from the industrial control device without an initial selection of the data having taken place on the industrial control device. In this case, the control device initially sends all available data to the cloud system, so that the cloud system can then perform the data transmission optimizations described above.

[0021] Furthermore, in another aspect, all or some of the data generally available in the control device can be manually reselected, e.g., via a web application. This allows access at any time to data that may have been automatically deselected by the system. Depending on the configuration, this data can also be temporarily stored on the control device or another system.

[0022] The invention further relates to a system for adapting data transmission from an industrial control device to a cloud system, wherein the system is configured to perform the methods described above. Furthermore, a computer program is provided with instructions for implementing the methods described above. 4. Brief description of the drawings

[0023] In the following, preferred embodiments of the present invention are explained with reference to the accompanying figures: Fig. 1: A schematic representation of a system environment for embodiments of the invention; Fig. 2: Examples of recorded usage behavior and the prediction of expected usage behavior according to embodiments of the invention; Fig. 3: The system overview from Fig. 1with an enlarged view of the cloud system and machine learning system according to embodiments of the invention; and Fig. 4: An exemplary neural network according to embodiments of the invention. 5. Detailed description of preferred embodiments

[0024] In the following, currently preferred embodiments of a system and method according to the invention for efficient data transmission between an industrial control device and a cloud system are explained in more detail. The term "industrial" is to be understood generally and is not limited to traditional manufacturing systems. Rather, an application in the context of building automation, for example, is also conceivable and useful. System overview

[0025] Fig. 1shows an exemplary system environment for a method for adapting a transmission of process data PD between a device 310 of an automation system 300 and a first computer system 100. The device 310 of the automation system can be an industrial control device, such as a programmable logic controller (PLC), an industrial PC (IPC), an IoT gateway, an edge controller, etc. The process data PD are transmitted as usual during the execution of a technical process (in Fig. 1 not shown) and detected by the device 310.

[0026] The device 310 of the automation system may include an OPC UA server. OPC UA (Open Platform Communications - Unified Architecture) is a standard for data exchange as a platform-independent, service-oriented architecture (SOA) and has the ability to transport machine data and describe it semantically in a machine-readable manner (see https: / / de.wikipedia.org / wiki / OPC_Unified_Architecture).

[0027] The first computer system 100 is, in particular, a cloud system (e.g., in the form of a public cloud and / or private cloud), which, as is conventional, comprises one or more computers or servers. Alternatively, the first computer system 100 can also consist of one or more "normal" computers or servers, which are operated locally (e.g., as part of the automation system 300) or at a remote location. Combinations are also conceivable.

[0028] For the sake of simplicity, preferred embodiments will be explained below only with reference to an industrial control device 310 and a cloud system 100. However, it should be emphasized that aspects of the invention can also be used in other types of devices and systems, as explained above.

[0029] The industrial control device 310 of the automation system 300 and the cloud system 100 are connected to one another via a corresponding network system and exchange process data PD during normal operation. In particular, process data PD is transmitted from the control device 310 to the cloud system 100. The process data PD comprises values, signals, and / or information that arise, in particular, during the operation of sensors and / or actuators connected to the control device 310. This is particularly the case in the context of automation technology, where a large amount of such data is continuously generated. Within the scope of the invention, data refers to both data at a specific point in time and time series, i.e., temporal sequences of data.

[0030] The control device 310 may include a control application that processes the process data PD as input and generates corresponding outputs. Furthermore, a portion of the control application may be responsible for transmitting the process data PD defined in the control application to the cloud system 100. This portion of the control application may also be separate from the rest of the control device 310.

[0031] The cloud system 100 may include a cloud application 110, for example, in the form of the WAGO Cloud. The cloud application 110 may include, among other things, user management, project management, device management, an alarm management system, dashboards, trends, and / or export functionalities.

[0032] In some embodiments, a data point overview (DÜ) may also be used. This preferably includes the data points available to the control device 310. A data point may, in particular, include a key and a value, e.g., "Sensor_UG12 = 20.0."

[0033] Furthermore, in the embodiment according to Fig. 1 other computer systems (such as the second computer system 200 in Fig. 1 ), which can be implemented in the form of any end device (e.g., desktop PC, laptop, smartphone, tablet, mixed reality devices, etc.). A second computer system 200, also referred to below as a client system, can include, among other things, an OPC UA client.

[0034] The client system 200 and the cloud system 100 are connected to each other via a corresponding network system and exchange data during normal operation. In particular, requests are sent from a client application 210 running on the client system 200 to the cloud system 100, and the cloud system 100 responds with a response in accordance with the request (see request-response methodology). The client application 210 can, in particular, be a web application, which runs, for example, in a web browser. Such a web application is provided, for example, by the WAGO Cloud. Analysis of user behavior through machine learning

[0035] In embodiments of the invention, approaches, methods and / or algorithms of so-called "machine learning" are used to make a prediction based on one or more usage behaviors regarding the use of the process data PD as to which process data PD will actually be needed for the user(s) in the future.

[0036] For this purpose, the cloud application 110 preferably comprises a machine learning system (which, in alternative embodiments, can also run in another cloud system). Based on the process data PD and the actual usage behavior within the cloud application 110 or the cloud system 100 and / or the computer system 200, an analysis of the user's usage behavior with regard to data usage is carried out. The usage behavior can be determined, in particular, from information on the frequency of use, the duration of use, and the time of use of the process data PD. In a preferred embodiment of the invention, the usage behavior is thus determined based on the actions (and associated requests) within the client application 210 on the client system 200 and / or the associated actions within the cloud system 100. For example, an alarm is defined in the client application 210 (e.g.by means of a rule), but the alarm rule is constantly evaluated within the cloud system 100 and, when the alarm is triggered, is also forwarded to external systems (e.g. via SMS, email, etc.).

[0037] Based on the usage behavior, a prediction can be made regarding the expected usage behavior. Fig. 2 shows examples of recorded usage behavior and the prediction of expected usage behavior.

[0038] Machine learning is considered a subfield of artificial intelligence. A well-known approach in the context of machine learning is so-called neural networks. In some embodiments of the invention, the machine learning process for determining user behavior can consist of several process steps, which are Fig. 3are shown as examples. For example, after preprocessing (S100 - e.g., combining multiple data points into vectors), the resulting data can serve as input to a neural network (S200), and the resulting outputs can be further combined or correlated in a subsequent step (S300). Approaches involving only some of the steps described above are also conceivable.

[0039] As a highly simplified example, Fig. 4The structure of a neural network is depicted. A neural network typically comprises a large number of interconnected artificial neurons. These are usually arranged in layers. The layer that receives the input data is called the input layer. The output layer generates the output. Any number of additional layers – so-called hidden layers – can be located between the input and output layers. Each neuron generates an individual output that depends on the respective input and the neuron's internal activation function. All outputs of one layer are passed on as inputs to the next layer, with each connection being able to pass on the information to a different extent. The strength of each individual connection is determined when the neural network is created and trained using a special learning algorithm (e.g. backpropagation) (see https: / / blog.iao.fraunhofer.de / varieties-of-artificial-intelligence-machine-learning-and-artificial-neural-networks / ).

[0040] In embodiments of the invention, usage behavior can be determined, for example, based on a wide variety of usage information and subsequently analyzed, i.e., which data is requested or used at what time and for how long, in what context is it requested or used, and who requests or uses it. This information can be captured through the use of client application 210 and the associated requests and actions of cloud system 100.

[0041] Furthermore, with regard to user behavior, external data from external data sources 400 (see Fig. 3). This could, for example, be calendar information from which relevant knowledge can be derived (e.g., the person or user may be on vacation soon and therefore does not require process data PD, but only a summary after their vacation). Adjustment of data transmission

[0042] Based on the learned usage behavior and / or the expected usage behavior, the data transmission between the control device 310 and the cloud system 100 can be adapted, in particular iteratively. The data transmission can be adapted using commands or new configurations sent from the first cloud system 100 to the control device 310. These can be used, for example, to adapt the settings of a PLC program with regard to data transmission or to change the data transmission configuration of an OPC UA server.

[0043] Data transmission can be customized, in particular, by specifying the sampling rate, the publishing rate, a storage location, the data points to be transmitted, and / or possible preprocessing (e.g., the creation of aggregate values). Such customizations can then, for example, prevent the values ​​of individual data points from being sent at all, redirect certain data points to another storage location, send only aggregates, minimum values, maximum values, etc., adjust the time interval, and / or group data according to their intended use and send them together.

[0044] In one embodiment, the control device 310 no longer defines the data points to be transmitted to the cloud system 100. Instead, all data initially acquired by the control device 310 is transmitted to the cloud system 100, and the system then (after a certain time) adjusts the data transmission so that only the required data is transmitted at the required time, as described above. Example application: Using the WAGO Cloud for the facility management of a server room

[0045] Regarding access control to the server room, the responsible facility manager has defined an alarm rule within the WAGO Cloud that sends a notification to the facility manager in the event of an unauthorized access attempt. Based on user behavior and the type of use (alarm), the system has learned that access control data is required around the clock and therefore must be continuously sent by the control device.

[0046] To track the total power consumption of the servers in the server room, the facility manager uses a trend within the WAGO Cloud. Based on the facility manager's usage behavior, the system has learned that trend data is only needed once a month to generate a report, and it is therefore sufficient to summarize the data as daily aggregates on the control device and send them to the cloud system.

[0047] To monitor multiple operating states in a server room, the facility manager uses a dashboard with multiple dashboard elements. Based on the facility manager's usage behavior, the system has learned that data for the dashboard elements only needs to be sent to the cloud system Monday through Friday between 8 a.m. and 4 p.m.

Claims

1. A method for adapting data transmission from an industrial control device (310) to a cloud system (100), the method comprising the following steps performed by a cloud application (110): determining a usage behavior by means of machine learning, wherein the usage behavior relates to the use of the data transmitted by the industrial control device (310), in particular process data (PD), by the cloud system (100) or a computer system (200) connected thereto; and sending at least one command to the industrial control device (310) to adapt the data transmission from the industrial control device (300) to the cloud system (100) based on the determined usage behavior.

2. The method according to claim 1, wherein the determined usage behavior comprises at least one frequency of use, at least one duration of use, at least one time of use and / or at least one type of use.

3. The method according to claim 1 or 2, wherein the at least one data transmission adjustment command is a command to: Select a subset of the data for transfer; Not sending certain data; Redirect certain data to another data storage; Transmission of data aggregates, in particular minimum values and / or maximum values; Adjusting a time interval, in particular a sampling rate and / or publishing rate, of certain data; and / or Grouping of data.

4. The method according to any of the preceding claims, wherein the usage behavior is determined over a predetermined period of time, wherein the method further comprises creating a prediction model for a future usage of the data.

5. The method according to one of the preceding claims, wherein the usage behavior is determined continuously or regularly.

6. The method according to any one of the preceding claims, wherein the usage behavior refers to the usage of the data by one or more users or by a user group.

7. The method according to any one of the preceding claims, wherein the control device (310) comprises an OPC server, preferably an OPC UA server, and / or wherein the computer system (200) comprises an OPC client, preferably an OPC UA client.

8. The method according to any one of the preceding claims, further comprising the following step of: Receiving data (PD) from the industrial control device (310) without an initial selection of the data having been made on the industrial control device (310).

9. A system for adapting data transmission from an industrial control device (310) to a cloud system (100), wherein the system is configured to perform a method according to any one of the preceding claims 1-8.

10. A computer program comprising instructions for implementing a method according to any of the preceding claims 1-8 during performing the program on one or a plurality of computers.