IP Library Granted Patent US 12,287,613
Granted Patent B2
US 12,287,613 · App. 17/912,555 · Granted Apr 29, 2025

Method and assembly for managing automation programs for industrial automation platforms

Inventors: Jan Götz (Buckenhof, DE); Ludwig Andreas Mittermeier (Munich, DE); Harald Müller (Seefeld-Hechendorf, DE); Sreenath Premnadh (Maisach, DE)
Assignee: Siemens Aktiengesellschaft
G05B19/056G05B19/052G05B2219/13125
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,287,613
App. No.
17/912,555
Granted
Apr 29, 2025
Kind
B2
Abstract

A method and to assembly for managing an automation program for an industrial automation platform, wherein the automation program is transferred to the automation platform and execution of the automation program is controlled, where in a first step, the automation program or a reference to the automation program is transferred from a Kubernetes master a virtual kubelet, in a second step, the transferred or referenced automation program is transferred to the industrial automation platform via a provider interface of the virtual kubelet, and in a third step, the execution of the transferred automation program on the industrial automation platform is controlled, where via the provider interface, control commands are transferred to the industrial automation platform and acknowledgement messages of the industrial automation platform are received and processed or forwarded to a control entity, such that automation programs can be managed, distributed and run using container orchestration systems.

Claims (17)

1. A method for managing an automation program for a programmable logic controller, the automation program being transferred to the programmable logic controller and execution of the automation program on the programmable logic controller being controlled, the method comprising:

transferring, during a first step, the automation program or a reference to this automation program from a Kubernetes master to a virtual kubelet;

transferring, during a second step, the transferred or referenced automation program to the programmable logic controller via a provider interface of the virtual kubelet; and

controlling, during a third step, the execution of the transferred automation program on the programmable logic controller, via the provider interface, control commands being transferred to the programmable logic controller and acknowledgement messages of the programmable logic controller being received and processed or forwarded to a control entity.

2. The method as claimed in patent claim 1 , wherein the control entity comprises the Kubernetes master.

3. The method as claimed in patent claim 1 , wherein during the first step, one of a storage address comprising a URL, storage path information, a specification relating to the contents of an app store and another address is utilized as the reference to the automation program.

4. The method as claimed in patent claim 1 , wherein during the second step, the automation program transferred or specified to the virtual kubelet as a reference is preprocessed before transfer to the programmable logic controller.

5. The method as claimed in claim 4 , wherein during the second step, the automation program is compiled before the transfer.

6. The method as claimed in patent claim 4 , wherein during the second step, the automation program to be transferred is created from at least one of (i) a multiplicity of referenced sources and (ii) program parts transferred from the Kubernetes master.

7. The method as claimed in patent claim 5 , wherein during the second step, the automation program to be transferred is created from at least one of (i) a multiplicity of referenced sources and (ii) program parts transferred from the Kubernetes master.

8. The method as claimed in patent claim 1 , wherein in an assembly having a multiplicity of programmable logic controllers, a separate provider interface is utilized for each individual programmable logic controller or for a group of programmable logic controllers of the same or similar type; and wherein each of the provider interfaces utilized performed customization of the automation program to be transferred to the respective programmable logic controller to the type and the specific properties of a respective target controller.

9. The method as claimed in patent claim 1 , wherein the virtual kubelet utilizes an industrial engineering system or parts thereof as a provider interface; and wherein the engineering system or the parts thereof are controlled by instructions transmitted from the Kubernetes master to the virtual kubelet.

10. The method as claimed in patent claim 1 , wherein custom resource definitions (CRD) in Kubernetes are utilized to at least one of (i) manage resources of the programmable logic controller and (ii) assign the automation program to one of a plurality of automation platforms.

11. The method as claimed in patent claim 1 , wherein a scheduler comprising a Kubernetes Custom Scheduler customized to use of programmable logic controllers is utilized for deployment of the automation program on the programmable logic controllers.

12. An assembly for managing an automation program for a programmable logic controller, comprising:

a Kubernetes master for transferring the automation program or a reference to the automation program to a virtual kubelet, the virtual kubelet receiving the automation program or the reference to the automation program, receiving instructions for installing the automation program on the programmable logic controller, and controlling the execution of the automation program on the programmable logic controller; and

a provider interface of the virtual kubelet for transferring the automation program to the programmable logic controller, for controlling the program execution of the automation program, and for receiving and forwarding acknowledgment messages of the programmable logic controller during the execution of the automation program.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2025
From: GOETZ, JAN; MITTERMEIER, LUDWIG ANDREAS; MUELLER, HARALD; PREMNADH, SREENATH
To: SIEMENS AKTIENGESELLSCHAFT
Reel/Frame 069992/0980 →
Priority Claims (1)
EP 20164384 · Mar 20, 2020 · regional
Continuity (1)
Related Publication 20230324870A1 · Oct 12, 2023
References Cited (16)
US 11074091B1 · Nayakbomman · 2021 [cited by examiner]
US 20180365039A1 · Kohler et al. · 2018 [cited by applicant]
US 20190116110A1 · Raney · 2019 [cited by examiner]
US 20190339663A1 · Park · 2019 [cited by applicant]
US 20200073692A1 · Rao · 2020 [cited by examiner]
US 20200186616A1 · Fitzer · 2020 [cited by examiner]
US 20210064003A1 · Yoneda et al. · 2021 [cited by applicant]
EP 3564764 · 2019 [cited by applicant]
JP 2004280305 · 2004 [cited by applicant]
JP 2019159532 · 2019 [cited by applicant]
WO WO2016089689 · 2016 [cited by applicant]
Arun Gupta, Alan Hohn, “Getting Started with Kubernetes”, 2019, DZone, A devada media property (Year: 2019). [cited by examiner]
Heiko Koziolek, “Dynamic Updates of Virtual PLCs Deployed as Kubernetes Microservices”, 2021, Springer Nature Switzerland, ECSA 2021, LNCS 12857, pp. 3-19 (Year: 2021). [cited by examiner]
Heiko Koziolek, “Fast state transfer for updates and live migration of industrial controller runtimes in container orchestration systems ”, 2024, Elsevier, The Journal of Systems and Software, 211 (Year: 2024). [cited by examiner]
PCT International Search Report and Written Opinion of International Searching Authority mailed May 31, 2021 corresponding to PCT International Application No. PCT/EP2021/054633 filed Feb. 25, 2021. [cited by applicant]
Join GitHub today Seiten 1-6 https://github.com/virtual-kubelet/virtual-kubelet. [cited by applicant]