PLC Publish-Subscribe Handover for Zero-Downtime Control Upgrades

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current PLCs do not support zero-downtime updates of control functions due to the inability to deploy and execute two different control functions with the same name in parallel, leading to competitive command publishing and inability to determine which command to pass to actuators.

Innovation Solution

A PLC with a cyclic Publish/Subscribe data bus decouples control functions from actuators, allowing two versions to register as publishers on the same topic, with one version as primary and the other as secondary, and only passing primary commands to actuators, enabling seamless handover.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If two control function versions run in parallel on the same PLC, then zero-downtime updates are enabled, but competitive command publishing occurs on the same PubSub topic causing uncertainty about which command to execute

Engineering Contradiction:
Improvezero-downtime update capabilityVSAvoidcommand authority ambiguity
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent introduces an intermediary mechanism (command priority identification and selection logic) that mediates between multiple control function versions publishing on the same PubSub topic. The PLC identifies which control function has authority to publish commands based on version state information, and only passes commands from the authorized function to actuators, thereby resolving the command authority ambiguity while maintaining parallel operation capability

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the command publishing authority by introducing version identification and priority markers to control functions. Each control function version is tagged with version information, and the PLC segments the command flow by selecting only commands from the primary/active version, allowing multiple versions to coexist in memory while ensuring only one actively controls actuators

Inventive Principle:
Principle #1Segmentation

2Reliability

If current PLC architecture is used, then system stability is maintained, but control function updates require system shutdown interrupting actuator operation

Engineering Contradiction:
Improvesystem stabilityVSAvoiddowntime during update
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by deploying the updated control function version in parallel alongside the current version before the update is complete. The new version is prepared and registered with the PubSub topic in advance, with version identification markers set, so that when the update completes, the PLC can immediately switch command authority without interrupting actuator operation

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces dynamic version switching capability where the PLC can change which control function version has command authority during runtime. The system transitions from static single-version operation to dynamic multi-version operation, allowing seamless switching between versions based on update state while maintaining continuous actuator control

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If multiple control functions register as publishers on the same PubSub topic, then parallel execution is enabled, but the PLC cannot determine which command shall be passed to the actuator

Engineering Contradiction:
Improveparallel control function executionVSAvoidcommand selection clarity
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The PLC acts as an intermediary that receives commands from multiple control function publishers on the same PubSub topic, identifies the primary/active version through version markers, and selectively passes only authorized commands to actuators, thereby maintaining parallel execution clarity

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent uses version identification markers analogous to color coding to distinguish between different control function versions. The PLC identifies the active version through these markers and selects commands based on version state, making command selection clear despite multiple publishers

Inventive Principle:
Principle #32Color changes

Data Source

PatentUS12591427B2PLC-based support for zero-downtime upgrades of control functions
Publication Date: 2026.03.31 SIEMENS AG
  • US12591427B2 patent drawing
  • US12591427B2 patent drawing

AI summary

A method and arrangement for upgrading a function performed on a technical system including a PLC and an actuator controlled by the PLC. The control function provides an output which controls the actuator. The method includes deploying at least one updated version of the control function on the system while maintaining the current version of the control function on the system, b. the updated version is prevented from controlling the actuator, whereby the current version and the updated version publish control commands in each PLC cycle to a Publish/Subscribe communication module of the PLC, c. in each PLC cycle passing the published control command, d. the information of the published control command of the updated version changes to a primary control command and the published control command of the current version to a secondary control command in a mutual agreement process between the current version and the updated version.