Controller Software Module Conditional Chaining

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cyclically operating controllers, such as programmable logic controllers, face challenges in efficiently integrating and managing software modules during runtime, particularly when changes are needed in the functional sequence, as unconditional chaining does not account for process-specific conditions or current status, leading to difficulties in coordinating program changes and data transitions.

Innovation Solution

A one-chain operation module with a user program allows controlled linking of software modules into the controller's functional sequence, enabling chaining to be dependent on conditions such as current process parameters or status, with the user program managing the integration process, including data transfer and module activation or deactivation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If software modules are chained into the functional sequence unconditionally at the cycle control point, then all program sections are completed and dependencies are resolved, but process-specific conditions and current status are not taken into account

Engineering Contradiction:
Improveprogram completionVSAvoidprocess condition adaptation
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces a dynamic chaining mechanism where the chain-in command includes a condition parameter that allows the software module to be chained conditionally rather than unconditionally. This enables the system to adapt to different process conditions and current status, resolving the contradiction between ensuring program completion and adapting to process conditions.

Inventive Principle:
Principle #15Dynamics

2Ease of manufacture

If software modules are loaded into load memory and chained into main memory, then module integration is achieved, but coordination of program changes and data transitions becomes complex

Engineering Contradiction:
Improvemodule integrationVSAvoidchange coordination
Core Design Contradiction:
Ease of manufactureVSDevice complexity

Solution Approach 1:

The patent implements a preliminary action by executing a user program in the chain-in operation module before actually chaining the software module into the functional sequence. This user program can prepare data transitions, coordinate program changes, and ensure all prerequisites are met before the module is integrated, thereby simplifying the overall coordination complexity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The chain-in operation module serves as an intermediary between the load memory and the main memory integration process. It provides a buffer zone where user programs can prepare and coordinate all necessary changes before the actual module chaining occurs, reducing the complexity of direct integration.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If the controller continues cyclical operation without interruption, then productivity is maintained, but smooth transition during program changes cannot be ensured

Engineering Contradiction:
Improvecyclical operationVSAvoidtransition smoothness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent utilizes the periodic nature of the controller's cyclical operation by allowing the chain-in operation to occur at specific points in the cycle without completely interrupting it. The user program in the chain-in operation module can be executed periodically when conditions are met, enabling smooth transitions while maintaining overall productivity.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentEP1998240B1Control system with cyclical operation and method for incorporating software building blocks in the functional process of a control system
Publication Date: 2013.05.15 SIEMENS AG
  • EP1998240B1 patent drawingFigure 1

AI summary

The controller (1) has a main memory (1b) storing software components (2-4, 3', 3'') that contain a user program. The software components are loaded in the memory during an operation sequence of the controller by a loading command (a) and linkable in the operation sequence of the controller according to loading by a linking command (c). Linking of the software component (3'') is controlled in an operation sequence of the controller by a link operation component (9) containing the user program, where the link operation component is started by the linking command. Independent claims are also included for the following: (1) a method for linking software components with a user program (2) a computer program product for operating a controller.