Real-Time Module Data Exchange via Global Data Space Connectors
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current automation systems face challenges in achieving real-time data exchange between program modules, particularly in industrial environments with time-critical processes, where existing solutions lack flexibility, security, and maintainability, especially as they transition from classic IEC 61131-3 programming to modern high-level languages.
Innovation Solution
A computer program is designed as part of a firmware for a control device in an automation system, providing a global data space and meta-information configuration, enabling program modules written in different programming languages to access and exchange variables through a connector, which establishes connections and handles data type conversions, allowing for dynamic and real-time data exchange.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If program modules are written in different programming languages to enhance flexibility and modernization, then adaptability and versatility improve, but device complexity and difficulty of data exchange increase
Solution Approach 1:
The patent introduces a global data space as an intermediary layer between program modules written in different programming languages. This global data space provides standardized data storage and access mechanisms that mediate between modules using different languages (e.g., IEC 61131-3 languages like Ladder Diagram and high-level languages like C++), enabling seamless data exchange without requiring complex language-specific integration code.
Solution Approach 2:
The global data space is designed as a universal data exchange mechanism that serves multiple programming languages and paradigms simultaneously. It provides language-agnostic data structures, variable declarations, and access methods that work consistently across different programming languages, eliminating the need for separate data exchange implementations for each language pair.
2Productivity
If real-time data exchange is implemented across distributed program modules, then productivity and processing speed improve, but reliability and data consistency become more difficult to maintain
Solution Approach 1:
The patent segments the data exchange system into distinct components: global data space for centralized data storage, variable declarations for type safety, and connector mechanisms for controlled access. This segmentation allows real-time data exchange to proceed efficiently through dedicated pathways while maintaining data consistency through structured access rules and centralized management of the global data space.
Solution Approach 2:
The system implements feedback mechanisms through the standardized variable declaration system and global data space access protocols. When program modules access or modify data in the global data space, the structured variable declarations ensure type consistency and data integrity are maintained, providing immediate feedback on data access validity and preventing inconsistent states.
3Ease of operation
If a global data space is provided for all program modules to access, then ease of operation and data sharing improve, but device complexity and security risks increase
Solution Approach 1:
The patent applies parameter changes by introducing structured variable declarations with explicit data types, sizes, and access attributes in the global data space. Instead of providing unrestricted access to raw memory, the system manages memory through parameterized variable definitions that specify data characteristics and access rules, simplifying memory management while maintaining data accessibility.
4Ease of manufacture
If metainformation and description files are used to configure data exchange, then ease of manufacture and system integration improve, but device complexity increases
Solution Approach 1:
The patent implements preliminary action by using description files that pre-define the structure, data types, and access rules for the global data space before program modules are deployed. Variable declarations and metainformation are configured in advance, allowing program modules to be manufactured and integrated more easily since the data exchange framework is already established and standardized.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The present invention relates to a method for exchanging real-time data between program modules 11, 12, and 13. The method comprises providing a data storage device 20 and storing metadata 21-31 in the data storage device 20, wherein the metadata 21-31 comprises at least one variable. Furthermore, the method provides for providing at least one description file and configuring the data storage device 20 with the description file. The method also includes providing at least one connector 14, wherein a connection between program modules 11, 12, and 13 can be established via the data storage device 20 using the connector 14, depending on a request in the description file, and wherein the program modules 11, 12, and 13 are created using the same or different programming languages and are executable by a real-time operating system.Furthermore, the procedure involves the exchange of at least one variable 21-31 between one of the program modules 11, 12, 13 and the data storage device 20 via the connector 14.