EP3249481B1

System, industrial controller and method configured to execute a closed loop control on data for cloud based applications

Abstract

This record has no abstract on file.

EP3249481B1, drawing sheet 1
Sheet 1 of 4

Term

Projected expiry 25 May 2036.

  1. Priority and filed
  2. Granted
  3. Today
  4. Projected expiry

14 claims: 14 independent, 0 dependent

  1. 1
    System configured to execute a closed loop control on data for cloud-based applications (70) comprising:• an industrial automation device (30) configured to generate cloud variables,• a cloud-based application (70), which is hosted by a network device with a cloud-computing infrastructure,• an industrial controller (20) configured to control the industrial automation device by a user-defined program (22), hosted by industrial controller,• the user-defined program configured to receive the cloud variables,• a cloud agent (21) configured for communication with the user-defined control program, and for communication with the cloud-based application, further configured to: collecting the cloud variables and sending the cloud variables to the cloud-based application,• the cloud-based application (70) configured to determine updated optimized cloud variables and to notify the cloud agent (21) in the industrial controller with the updated optimized cloud variables• the cloud agent (21) configured to reload the updated optimized cloud variables and to notify the user-defined control program with the updated optimized cloud variables,• the user-defined control program further configured to include cloud constructs and to reload the updated optimized cloud variables in the user-defined control program, wherein the cloud constructs declare the cloud variables that are to be updated by the cloud-based application (70) and request the updated optimized cloud variables on runtime. System, das dazu ausgelegt ist, einen geschlossenen Regelkreis auf Daten für Cloud-basierte Anwendungen (70) auszuführen, umfassend: • eine Industrieautomatisierungsvorrichtung (30), die dazu ausgelegt ist, Cloud-Variablen zu erzeugen,• eine Cloud-basierte Anwendung (70), die durch eine Netzwerkvorrichtung mit einer Cloud-Recheninfrastruktur gehostet wird,• einen Industrieregler (20), der dazu ausgelegt ist, die Industrieautomatisierungsvorrichtung durch ein benutzerdefiniertes Programm (22), das durch den Industrieregler gehostet wird, zu regeln,• wobei das benutzerdefinierte Programm zum Empfangen der Cloud-Variablen ausgelegt ist,• einen Cloud-Agenten (21), der zur Kommunikation mit dem benutzerdefinierten Regelprogramm und zur Kommunikation mit der Cloud-basierten Anwendung ausgelegt ist, ferner ausgelegt zum: Erfassen der Cloud-Variablen und Senden der Cloud-Variablen zu der Cloud-basierten Anwendung,• wobei die Cloud-basierte Anwendung (70) dazu ausgelegt ist, aktualisierte optimierte Cloud-Variablen zu bestimmen und dem Cloud-Agenten (21) in dem Industrieregler die aktualisierten optimierten Cloud-Variablen mitzuteilen,• wobei der Cloud-Agent (21) dazu ausgelegt ist, die aktualisierten optimierten Cloud-Variablen neu zu laden und dem benutzerdefinierten Regelprogramm die aktualisierten optimierten Cloud-Variablen mitzuteilen,• wobei das benutzerdefinierte Regelprogramm ferner dazu ausgelegt ist, Cloud-Konstrukte einzuschließen und die aktualisierten optimierten Cloud-Variablen in dem benutzerdefinierten Regelprogramm neu zu laden, wobei die Cloud-Konstrukte die Cloud-Variablen deklarieren, die durch die Cloud-basierte Anwendung (70) zu aktualisieren sind, und die aktualisierten optimierten Cloud-Variablen zur Laufzeit anfordern. Système configuré pour exécuter une commande en boucle fermée sur des données pour des applications (70) en nuage, comprenant : • un dispositif (30) d'automatisation industrielle, configuré pour produire des variables de nuage,• une application (70) en nuage, qui est logée par un dispositif de réseau ayant une infrastructure de calcul en nuage,• une unité (20) de commande industrielle, configurée pour commander le dispositif d'automatisation industrielle, par un programme (29) défini par un utilisateur, logé par l'unité de commande industrielle,• le programme défini par un utilisateur étant configuré pour recevoir les variables de nuage,• un agent (21) de nuage, configuré pour communiquer avec le programme de commande défini par un utilisateur et pour communiquer avec l'application en nuage, configuré, en outre, pour recueillir les variables de nuage et envoyer les variables de nuage à l'application en nuage,• l'application (70) en nuage étant configurée pour déterminer des variables de nuage optimisées et mises à jour et pour notifier, à l'agent (21) de nuage de l'unité de commande industrielle, les variables de nuage optimisées et mises à jour,• l'agent (21) de nuage étant configuré pour recharger les variables de nuage optimisées et mises à jour et pour notifier au programme de commande défini par l'utilisateur les variables de nuage optimisées et mises à jour,• le programme de commande défini par un utilisateur étant configuré, en outre, pour comprendre des structures de nuage et pour recharger des variables de nuage optimisées et mises à jour dans le programme de commande défini par un utilisateur, dans lequel les structures de nuage déclarent les variables de nuage, qui doivent être mises à jour par l'application (70) en nuage, et demandent que les variables de nuage optimisées et mises à jour soient mises en temps d'exécution.
  2. 2
    System according to claim 1, characterized in that the cloud agent (21) is hosted in the industrial controller. System nach Anspruch 1, dadurch gekennzeichnet, dass der Cloud-Agent (21) in dem Industrieregler gehostet wird. Système suivant la revendication 1, caractérisé en ce que l'agent (21) de nuage est logé dans l'unité de commande industrielle.
  3. 3
    System according to claim 1 or 2, characterized in that the industrial controller is configured as a programmable logic controller (20). System nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass der Industrieregler als ein programmierbarer Logikregler (20) ausgelegt ist. Système suivant la revendication 1 ou 2, caractérisé en ce que l'unité de commande industrielle est configurée sous la forme d'une unité (22) de commande logique programmable.
  4. 4
    System according to claim 3, characterized in that the user-defined program is configured as a programmable logic controller-program (22). System nach Anspruch 3, dadurch gekennzeichnet, dass das benutzerdefinierte Programm als ein programmierbares Logikreglerprogramm (22) ausgelegt ist. Système suivant la revendication 3, caractérisé en ce que le programme défini par un utilisateur est configuré sous la forme d'un programme (22) d'unité de commande logique programmable.
  5. 5
    System according to any one of claims 1 to 4, characterized in that the cloud agent (21) includes a unique identity number for identifying the user-defined control program (22), for which the cloud variables is collected and on which the cloud variables are to be updated. System nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass der Cloud-Agent (21) eine eindeutige Identitätsnummer zum Identifizieren des benutzerdefinierten Regelprogramms (22) einschließt, für das die Cloud-Variablen erfasst werden und auf dem die Cloud-Variablen aktualisiert werden sollen. Système suivant l'une quelconque des revendications 1 à 4, caractérisé en ce que l'agent (21) de nuage comprend un numéro d'identité unique pour identifier le programme (22) de commande défini par un utilisateur pour lequel les variables de nuage sont recueillies et sur lequel les variables de nuage doivent être mises à jour.
  6. 6
    System according to any one of claims 1 to 5, characterized in that the cloud agent (21) is configured to aggregate continuously at least the cloud variables from the user-defined control program and sends it to a cloud-based application (70). System nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass der Cloud-Agent (21) dazu ausgelegt ist, fortlaufend zumindest die Cloud-Variablen von dem benutzerdefinierten Regelprogramm zu aggregieren, und diese zu einer Cloud-basierten Anwendung (70) sendet. Système suivant l'une quelconque des revendications 1 à 5, caractérisé en ce que l'agent (21) de nuage est configuré pour agréger continuellement au moins les variables de nuage à partir du programme de commande défini par un utilisateur et les envoyer à une application (70) en nuage.
  7. 7
    System according to any one of claims 1 to 6, characterized in that the industrial automation device configured to generate variables as well and the cloud agent (21) is configured to collect the variables as well. System nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass die Industrieautomatisierungsvorrichtung dazu ausgelegt ist, die Variablen auch zu erzeugen, und der Cloud-Agent (21) dazu ausgelegt ist, die Variablen auch zu erfassen. Système suivant l'une quelconque des revendications 1 à 6, caractérisé en ce que le dispositif d'automatisation industrielle est configuré pour produire aussi bien des variables et l'agent (21) de nuage est configuré pour collecter aussi bien les variables.
  8. 8
    Method configured to execute a closed loop control on data for cloud-based applications comprising:• generating cloud variables by an industrial automation device,• hosting, by a network device with a cloud-computing infrastructure, a cloud-based application,• controlling the industrial automation device by a user-defined program, which is hosted by an industrial controller,• receiving the cloud variables by the user-defined program,• collecting, by a cloud agent configured for communication with the user-defined control program, and for communication with the cloud-based application, the cloud variables and sending the cloud variables to the cloud-based application,• determining, by the cloud-based application (70), updated optimized cloud variables and notifying the cloud agent in the industrial controller with the updated optimized cloud variables,• reloading the updated cloud variables by the cloud agent,• notifying the user-defined control program with the updated optimized cloud variables by the cloud agent,• providing cloud constructs by the user-defined control program, the cloud constructs declaring the cloud variables that are to be updated by the cloud-based application (70) and requesting the updated optimized cloud variables on runtime and reloading the updated optimized cloud variables in the user-defined control program. Procédé configuré pour exécuter une commande en boucle fermée sur des données pour des applications en nuage, comprenant : • produire des variables de nuage par un dispositif d'automatisation industrielle,• loger, par un dispositif de réseau ayant une infrastructure de calcul en nuage, une application en nuage,• commander le dispositif d'automatisation industrielle par un programme défini par un utilisateur, qui est logé par une unité de commande industrielle,• recevoir les variables de nuage par le programme défini par un utilisateur,• recueillir, par un agent de nuage, configuré pour communiquer avec le programme de commande défini par un utilisateur et pour communiquer, avec l'application en nuage, les variables de nuage et envoyer les variables de nuage à l'application en nuage,• déterminer, par l'application (70) en nuage, des variables de nuage optimisées et mises à jour et notifier à l'agent de nuage de l'unité de commande industrielle les variables de nuage optimisées et mises à jour,• recharger les variables de nuage mises à jour par l'agent de nuage,• notifier par l'agent de nuage au programme de commande défini par un utilisateur les variables de nuage optimisées et mises à jour,• fournir des structures de nuage par le programme de commande défini par un utilisateur, les structures de nuage déclarant les variables de nuage, qui doivent être mises à jour par l'application (70) en nuage et demandant que les variables de nuage optimisées et mises à jour soient mises en temps d'exécution et rechargeant les variables de nuage optimisées et mises à jour dans le programme de commande défini par un utilisateur. Verfahren, das dazu ausgelegt ist, einen geschlossenen Regelkreis auf Daten für Cloud-basierte Anwendungen auszuführen, umfassend: • Erzeugen von Cloud-Variablen durch eine Industrieautomatisierungsvorrichtung,• Hosten, durch eine Netzwerkvorrichtung mit einer Cloud-Recheninfrastruktur, einer Cloud-basierten Anwendung,• Regeln der Industrieautomatisierungsvorrichtung durch ein benutzerdefiniertes Programm, das durch einen Industrieregler gehostet wird,• Empfangen der Cloud-Variablen durch das benutzerdefinierte Programm,• Erfassen, durch einen Cloud-Agenten, der zur Kommunikation mit dem benutzerdefinierten Regelprogramm und zur Kommunikation mit der Cloud-basierten Anwendung ausgelegt ist, der Cloud-Variablen und Senden der Cloud-Variablen zu der Cloud-basierten Anwendung,• Bestimmen, durch die Cloud-basierte Anwendung (70), von aktualisierten optimierten Cloud-Variablen und Mitteilen der aktualisierten optimierten Cloud-Variablen an den Cloud-Agenten in dem Industrieregler,• Neuladen der aktualisierten Cloud-Variablen durch den Cloud-Agenten,• Mitteilen, durch den Cloud-Agenten, der aktualisierten optimierten Cloud-Variablen an das benutzerdefinierte Regelprogramm,• Bereitstellen von Cloud-Konstrukten durch das benutzerdefinierte Regelprogramm, wobei die Cloud-Konstrukte die Cloud-Variablen deklarieren, die durch die Cloud-basierte Anwendung (70) aktualisiert werden sollen, und Anfordern der aktualisierten optimierten Cloud-Variablen zur Laufzeit und Neuladen der aktualisierten optimierten Cloud-Variablen in dem benutzerdefinierten Regelprogramm.
  9. 9
    Method according to claim 8 characterized in that the industrial automation system is configured in a programming language and the cloud variables are defined in the programming language of the industrial automation system. Procédé suivant la revendication 8, caractérisé en ce que le système d'automatisation industrielle est configuré dans un langage de programmation et les variables de nuage sont définies dans le langage de programmation du système d'automatisation industrielle. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass das Industrieautomatisierungssystem in einer Programmiersprache konfiguriert ist und die Cloud-Variablen in der Programmiersprache des Industrieautomatisierungssystems definiert sind.
  10. 10
    Method for according to claim 8 to 9, characterized in that the cloud agent is hosted in the industrial controller. Procédé suivant la revendication 8 à 9, caractérisé en ce que l'agent de nuage est logé dans l'unité de commande industrielle. Verfahren nach Anspruch 8 bis 9, dadurch gekennzeichnet, dass der Cloud-Agent in dem Industrieregler gehostet wird.
  11. 11
    Method according to any one of claims 8 to 9, characterized in that the cloud agent sends the cloud variables to the cloud-based application using wired link or wireless radio link Procédé suivant l'une quelconque des revendications 8 à 9, caractérisé en ce que l'agent de nuage envoie les variables de nuage à l'application en nuage, en utilisant une liaison par fil ou une liaison radio sans fil. Verfahren nach einem der Ansprüche 8 bis 9, dadurch gekennzeichnet, dass der Cloud-Agent die Cloud-Variablen unter Verwendung einer drahtverbundenen Verbindung oder drahtlosen Funkverbindung zu der Cloud-basierten Anwendung sendet.
  12. 12
    Method according to any one of claims 8 to 11, characterized in that the cloud agent (21) includes a unique ID for identifying the user-defined control program (22) for which the cloud variables collected and on which the cloud variables are to be updated. Procédé suivant l'une quelconque des revendications 8 à 11, caractérisé en ce que l'agent (21) de nuage comprend une idée unique pour identifier le programme (22) de commande défini par un utilisateur pour lequel les variables de nuage sont recueillies et sur lequel les variables de nuage doivent être mises à jour. Verfahren nach einem der Ansprüche 8 bis 11, dadurch gekennzeichnet, dass der Cloud-Agent (21) eine eindeutige ID zum Identifizieren des benutzerdefinierten Regelprogramms (22) einschließt, für das die Cloud-Variablen erfasst werden und auf dem die Cloud-Variablen aktualisiert werden sollen.
  13. 13
    Method according to any one of claims 8 to 12, characterized in that the runtime is at the beginning of a scan cycle of a user-defined control program. Procédé suivant l'une quelconque des revendications 8 à 12, caractérisé en ce que le temps de mise en exécution est au début d'un cycle de balayage d'un programme de commande défini par un utilisateur. Verfahren nach einem der Ansprüche 8 bis 12, dadurch gekennzeichnet, dass die Laufzeit zu Beginn eines Scanzyklus eines benutzerdefinierten Regelprogramms ist.
  14. 14
    Method according to claim 13, characterized in that the scan cycle of a user-defined control program comprises an input scan, an executing program, and an output scan. Procédé suivant la revendication 13, caractérisé en ce que le cycle de balayage d'un programme de commande défini par un utilisateur comprend un balayage d'entrée, un programme d'exécution et un balayage de sortie. Verfahren nach Anspruch 13, dadurch gekennzeichnet, dass der Scanzyklus eines benutzerdefinierten Regelprogramms einen Eingabescan, ein ausführendes Programm und einen Ausgabescan umfasst.