Program Module Sequence Control for Multi-Language Real-Time Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current real-time operating systems in automation engineering face reduced processing speed due to the use of time signal generators, which hinder flexibility and efficiency in managing program modules across different programming languages.
Innovation Solution
A method for sequence control of program modules using a control means that executes specifications from a description file, allowing program modules created in various programming languages to be initiated and managed within a real-time operating system, without addressing the description file during processing, thus enhancing flexibility and efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a time signal generator is used for sequence control, then program modules can be executed in a standardized manner, but the processing speed of the real-time operating system is reduced
Solution Approach 1:
The patent extracts the sequence control functionality from the time signal generator and implements it directly within the real-time operating system kernel. This removes the need for the separate time signal generator component while maintaining sequence control capabilities, thereby eliminating the processing speed reduction caused by the external generator.
Solution Approach 2:
The patent merges the sequence control function with the real-time operating system's task management mechanisms. By integrating sequence control into the OS kernel rather than using a separate time signal generator, the system achieves both standardized program module execution and maintained processing speed.
2Adaptability or versatility
If conventional IEC 61131 programming languages are used, then real-time capability and consistency are maintained, but flexibility and serviceability are limited
Solution Approach 1:
The patent creates a universal program module interface that can execute code from multiple programming languages (IEC 61131-3 and high-level languages like C/C++) through a common runtime environment. This universal interface maintains real-time capability while enabling flexibility by supporting diverse programming languages and development approaches.
Solution Approach 2:
The patent changes the parameter of programming language support from single-language (IEC 61131-3 only) to multi-language support by implementing a language-agnostic program module interface. This allows the system to maintain real-time guarantees while accepting code in various languages, thereby improving flexibility without sacrificing reliability.
3Adaptability or versatility
If multiple programming languages are supported, then flexibility and serviceability are improved, but system complexity increases
Solution Approach 1:
The patent introduces a language-agnostic program module interface as an intermediary layer between the diverse programming languages and the real-time operating system kernel. This mediator translates and standardizes program modules from any language into a common format that the kernel can execute, thereby supporting multiple languages without increasing kernel complexity.
Solution Approach 2:
The patent segments the system into distinct layers: the kernel layer handles real-time scheduling and execution, while a separate program module interface layer handles language-specific compilation and standardization. This segmentation allows multiple programming languages to be supported at the interface layer without complicating the core real-time kernel.
Data Source
AI summary
A method for sequence control of program modules, includes providing a control means and a description file having a configuration for controlling a program sequence. The method further includes providing a plurality of program modules which can be executed by a real-time operating system, the program modules being created using one or different programming languages. The method furthermore includes initiating selected program modules by executing specifications in the description file using the control means.


