Abstract

Many industrial processes (e.g., steel, fertilizer, paper production) utilize programmable logic controllers or distributed control systems, which cyclically execute control applications. Dynamic updates of such applications at runtime are desirable for optimizing the production while avoiding production stops. However, such updates are challenging since they require fast switching to an updated instance and executing an internal state transfer within the control cycle times. Existing dynamic update approaches for industrial applications can for example not update controller runtimes or operating systems, since they do not utilize modern container virtualization technologies. Furthermore, existing state transfer methods for container orchestration systems do not support fast cyclic applications. We propose a novel state transfer method for industrial control applications deployed as containerized Kubernetes microservices on server hosts or resource-rich industrial personal computers. The method enables dynamic updates and live migration of applications to others hosts without interrupting the underlying production facilities, which avoids costly downtimes. We have implemented our method as a Kubernetes extension and found that it can transfer large application states (i.e. 100.000 variables) via OPC UA in less than 42 ms across different hosts, which can fit into the available cycle slack time, therefore enabling a wide range of bumpless updates at runtime.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call