PLC App Container Architecture for Runtime Function Extension

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional programmable logic controllers (PLCs) are inflexible, making it difficult to modify or extend their functionality without requiring costly redesigns and system downtime, as they are not easily customizable once installed.

Innovation Solution

The implementation of an App Runtime Environment with an App Container and Real-time Data Backbone (RTDB) allows for modular processes, enabling apps to be added, replaced, or removed without affecting other apps, providing a 'Plug-n-Play' functionality by decoupling apps from the PLC operating environment and using a common data repository for interactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional PLC software is redesigned to modify functionality, then the desired functionality is achieved, but the PLC must be stopped and restarted causing operational downtime

Engineering Contradiction:
Improvefunctionality customizationVSAvoidoperational downtime
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system segments PLC functionality into modular apps that can be independently loaded and executed. The PLC program is divided into a base program and multiple selectable app programs, allowing individual apps to be modified, added, or removed without affecting the entire system operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements dynamic app selection where the PLC can switch between different app programs based on operational needs. The app selection mechanism allows runtime changes in functionality without requiring system restart, enabling flexible adaptation to changing requirements.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If conventional PLC software is redesigned to extend functionality, then new functionality is added, but the redesign and installation process is costly and requires system shutdown

Engineering Contradiction:
Improvefunctionality extensionVSAvoidsoftware modification cost
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The system creates a universal app framework that can accommodate multiple different app programs with a single PLC hardware platform. The standardized app interface and selection mechanism allow the same PLC to perform various functions by loading different apps, eliminating the need for custom redesigns for each functionality extension.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system uses app programs as copyable, replaceable software modules that can be deployed without modifying the core PLC system. Apps can be copied, stored, and loaded into the PLC memory, allowing functionality extension through software replication rather than expensive custom development.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If PLC functionality is made more customizable, then flexibility is improved, but system complexity increases

Engineering Contradiction:
Improvecustomization flexibilityVSAvoidsystem structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system implements a nested structure where multiple app programs are contained within a single PLC system framework. The app programs are nested within the PLC memory and execution environment, allowing multiple layers of functionality to be organized hierarchically with a standardized interface layer managing the complexity.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentEP3256915B1Extending a programmable logic controller with apps
Publication Date: 2021.04.28 SIEMENS AG
  • EP3256915B1 patent drawingFigure 1
  • EP3256915B1 patent drawingFigure 2
  • EP3256915B1 patent drawingFigure 3

AI summary

A programmable logic controller comprises a processor, a PLC operating environment, a device memory, and an app container. The PLC operating environment is configured to execute a controller automation program providing a plurality of skill functions. The device memory comprises a plurality of apps which are configured to perform a discrete set of automation functions using the plurality of skill functions. The app container is logically separate from the PLC operating environment and configured to provide a runtime environment for the apps.