Automation System Module Assignment via Call Specification Data Record

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing methods for assigning software modules to subprograms in automation systems are complex, error-prone, and difficult to manage, especially when handling changes, moving, dividing, and merging charts and modules, leading to insecure data access in multi-user engineering environments.

Innovation Solution

A call specification data record is introduced to encode the predetermined call order of software modules, allowing subprograms to access this record for calling modules based on a permanently configured sequence, reducing the complexity of module assignment and ensuring consistent call sequences across subprograms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If software modules are manually assigned to subprograms using a control flow editor, then the assignment can be performed in a task-oriented manner, but the method becomes very complex and error-prone, especially when changing, moving, dividing and merging charts and software modules

Engineering Contradiction:
Improveflexibility in assigning software modules to tasksVSAvoidcomplexity of module assignment management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the monolithic control flow editor into separate functional components: a data flow editor for creating and organizing software modules independently, and a task editor for assigning modules to tasks. This segmentation allows each editor to handle specific aspects of module management, reducing overall system complexity while maintaining flexibility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary data structure (module assignment record) that mediates between the data flow editor and task editor. This intermediary stores the assignments independently, allowing changes in one editor to be reflected in the other without direct coupling, thereby reducing complexity and errors during modifications.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If software modules are strongly interwoven with regard to control flow per task, then task-oriented assignment is achieved, but plans cannot be secured as granular units for respective developers in multiuser engineering environments

Engineering Contradiction:
Improvetask-oriented module assignmentVSAvoiddata access security in multiuser environments
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the control flow into separate data flow definitions and task-specific assignments. Software modules are defined independently in the data flow editor with their own data interfaces, then assigned to tasks in the task editor. This segmentation allows developers to work on individual modules or plans as granular units without affecting other parts of the system, improving both ease of operation and reliability in multiuser environments.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the control flow assignment from the module definitions themselves and stores it separately in task-specific assignment records. This extraction allows modules to be defined once and reused across multiple tasks without being tightly coupled to any single task's control flow, enabling secure granular access control in multiuser environments.

Inventive Principle:
Principle #2Taking out (Extraction)

3Adaptability or versatility

If the same software module is assigned to different tasks, then module reuse is achieved, but the assignment method becomes very complex and difficult for users to understand

Engineering Contradiction:
Improvemodule reuse capabilityVSAvoiduser understanding of task assignment
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The patent segments the module assignment process into two independent steps: first defining modules in the data flow editor, then assigning them to tasks in the task editor. This segmentation allows a single module definition to be referenced by multiple tasks through the assignment records, making module reuse straightforward and easy to understand rather than complex.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses a copying mechanism where software module definitions are created once and then referenced (copied) by multiple tasks through assignment records. Rather than manually reassigning the same module to different tasks in a complex manner, the system automatically manages the references, simplifying the user experience while enabling extensive module reuse.

Inventive Principle:
Principle #26Copying

Data Source

PatentEP2216695B1Method for operating an automation system, corresponding computer program and system or device working according to the method
Publication Date: 2013.03.27 SIEMENS AG
  • EP2216695B1 patent drawingFigure 1
  • EP2216695B1 patent drawingFigure 2

AI summary

A method for operating an automation system, a corresponding computer program for implementing the method, and a system or device that operates according to the method are specified, wherein a control program as an automation solution for a technical process (18) comprises a plurality of software modules (30, 32) and subroutines (24-28), wherein the software modules (30, 32) are called by individual subroutines (24, 28) according to a predefined call sequence, wherein a call sequence fixed for the software modules (30, 32) is stored in a call vector (42) in a call specification data set (38, 40), and wherein the call specification data set (38, 40) is available for the subroutine or subroutines (24-28) for a call of the software modules (30, 32) according to the call specification data set (38, 40).