Shared Data Space Connectors for Real-Time Module Interchange

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current automation systems face challenges in efficiently interchanging real-time data between program modules, particularly in industrial environments with time-critical processes, due to limitations in flexibility, reliability, and maintenance capabilities, especially as they transition from conventional IEC 61131-3 programming to modern high-level languages.

Innovation Solution

A method and device for interchanging real-time data between program modules using a data storage device that stores meta-information, configures connectors, and provides a global data space, allowing program modules written in different languages to access and share variables through a real-time operating system, with features like dynamic connector generation and type conversion, enabling seamless communication and system expansion without interrupting operation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If program modules are created using different programming languages to increase flexibility, then adaptability is improved, but system complexity increases

Engineering Contradiction:
Improveprogramming language flexibilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a data storage device as an intermediary component that mediates between program modules written in different programming languages. This mediator provides a standardized interface and data exchange protocol, allowing modules in languages like IEC 61131-3, C++, C#, Java, or Python to communicate without direct complex interdependencies, thus maintaining flexibility while managing system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The data storage device is designed with universal functionality to support multiple programming languages and data exchange formats simultaneously. It provides language-agnostic data storage and retrieval capabilities, enabling a single component to serve diverse program modules regardless of their programming language, thereby improving adaptability without proportionally increasing complexity.

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

2Productivity

If real-time data interchange is implemented between program modules, then productivity is improved, but data consistency challenges increase

Engineering Contradiction:
Improvereal-time data interchange capabilityVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements feedback mechanisms where the data storage device continuously monitors and manages data exchange between program modules. It provides real-time validation, type checking, and consistency verification of exchanged variables, ensuring that data integrity is maintained while enabling high-speed real-time communication between modules in different languages.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The data storage device performs preliminary actions by pre-defining data structures, variable types, and exchange protocols before runtime data interchange occurs. This preliminary configuration ensures that all program modules agree on data formats and constraints in advance, preventing consistency issues during real-time operations while maintaining high productivity.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If system expansion is allowed without restarting, then ease of operation is improved, but reliability risks increase

Engineering Contradiction:
Improvesystem expansion capabilityVSAvoidoperational stability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The data storage device is designed with dynamic capabilities that allow it to adapt its structure and content during runtime without requiring system restart. New data variables, modules, or connections can be dynamically added, modified, or removed while the system continues to operate, providing ease of expansion while maintaining operational stability through controlled dynamic updates.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10977099B2Interchanging real-time data between program modules
Publication Date: 2021.04.13 PHOENIX CONTACT GMBH & CO KG
  • US10977099B2 patent drawing
  • US10977099B2 patent drawing
  • US10977099B2 patent drawing

AI summary

A method for interchanging real-time data between program modules, includes providing a data storage device and storing meta information in the data storage device, wherein the meta information has at least one variable. The method also provides for at least one description file to be provided and for the data storage device to be configured with the description file. The method also includes providing at least one connector, wherein a connection can be established between program modules via the data storage device using the connector on the basis of a request in the description file, and wherein the program modules are created using identical or different programming languages and can be executed by a real-time operating system. The method also includes interchanging at least one variable between one of the program modules and the data storage device via the connector.