Periodic Control Program Invocation of Non-Periodic Function Modules
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
There is a challenge in invoking a non-periodic-execution function module from a periodic-execution control program, as the execution cycles and timing are not synchronized, making it difficult to integrate and execute functions written in different programming languages within a control system.
Innovation Solution
A control system is designed with a first control part that executes a periodic-execution control program and a second control part that executes a non-periodic-execution function module, where the first control part reflects input variables and outputs execution commands to the second control part, allowing for synchronization or asynchronous execution based on data type conversions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a periodic-execution control program invokes a non-periodic-execution function module, then the functionality and versatility of the control system is improved, but the execution timing and synchronization becomes difficult to control
Solution Approach 1:
The patent introduces an intermediary mechanism (the invocation management unit) that mediates between the periodic-execution control program and the non-periodic-execution function module. This intermediary handles the timing coordination by managing when the non-periodic function is invoked during the periodic execution cycle, thus resolving the synchronization conflict between different execution types.
Solution Approach 2:
The system dynamically adjusts the execution timing of the non-periodic function module based on the periodic execution cycle. The invocation timing is not fixed but is dynamically determined by the control program's execution state, allowing flexible integration of non-periodic functions within the periodic framework while maintaining timing control.
2Adaptability or versatility
If different programming languages are integrated in the control system, then the adaptability and versatility are improved, but the system complexity increases
Solution Approach 1:
The control system is designed with universal interfaces and a unified execution environment that can handle multiple programming languages (periodic-execution languages like Ladder Diagram and non-periodic-execution languages like C/C++). The invocation mechanism provides a universal method for calling functions across different language types, reducing the need for separate handling mechanisms for each language and thereby managing complexity.
3Productivity
If the control program executes continuously without stopping for function module execution, then the productivity is improved, but the execution precision and reliability decreases
Solution Approach 1:
The system uses periodic execution cycles as the foundation, where the control program executes in defined cycles. Within each cycle, there are designated periods or phases where non-periodic function modules can be invoked. This periodic structure ensures that continuous execution is maintained at the cycle level while allowing controlled interruptions for function execution, thus balancing productivity and reliability.
Data Source
AI summary
The present invention provides a technology for invoking a non-periodic-execution function module from a periodic-execution control program. A control system that comprises first and second control parts (C1, C2) and a storage device that stores control programs (210,211) for a controller. The control programs (210, 211) include a periodic-execution function module (55B) that invokes a non-periodic-execution function module (55A). The first control part (C1) reflects the value of an input variable for the periodic-execution function module (55B) in an argument for the non-periodic-execution function module (55A) and outputs an execution start command for the function modules to the second control part (C2). The second control part (C2) outputs a return value for the non-periodic-execution function module (55A) to the first control part (C1). The first control part (C1) reflects the return value in an output variable for the periodic-execution function module (55B).


