Runtime Interpreter for Automation Control Program Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing automation devices face challenges in reconciling runtime efficiency and change management, particularly in continuous process engineering, where conventional systems either support change management poorly due to low runtime efficiency or sacrifice it for optimal efficiency.
Innovation Solution
A hybrid runtime system is implemented, using a runtime interpreter to evaluate and convert sequence descriptions into machine code, enabling 'hot swapping' of control programs without interrupting technical processes, by storing affected program elements in memory and using an updated sequence description for quick switching.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If interpretive code is executed to support change management during operation, then change management capability is improved, but runtime efficiency deteriorates
Solution Approach 1:
The control program is segmented into individual automation functions that can be independently compiled into machine code. The sequence description is separated as a control structure that orchestrates these functions. This segmentation allows the runtime system to execute compiled functions efficiently while the sequence description enables flexible control flow and change management.
Solution Approach 2:
Automation functions are pre-compiled into machine code before runtime execution. This preliminary compilation action ensures optimal runtime efficiency for the function execution while the sequence description, which is interpreted, provides the flexible control structure for change management during operation.
2Productivity
If machine code is executed to achieve optimal runtime efficiency, then runtime efficiency is improved, but change management capability deteriorates
Solution Approach 1:
The sequence description acts as an intermediary between the control program logic and the executed automation functions. It provides a flexible, interpretable control structure that enables change management during operation, while the individual automation functions are compiled into efficient machine code for optimal runtime execution.
Solution Approach 2:
Different parts of the control program have different execution characteristics: automation functions are compiled into machine code for efficient local execution, while the sequence description remains as an interpretable control structure that provides global flexibility and enables change management. Each part optimizes for its specific purpose.
3Adaptability or versatility
If control programs are changed during operation in continuous process engineering, then adaptability is improved, but process interruption risk increases
Solution Approach 1:
The control program is divided into separate automation functions and a sequence description. When changes are needed during operation, only the sequence description needs to be updated and re-interpreted, while the compiled automation functions remain unchanged. This segmentation isolates the change impact and prevents process interruption.
Solution Approach 2:
The runtime system performs preliminary validation and preparation of the updated sequence description before activating it. Affected automation functions are identified and prepared in advance, ensuring that the switchover can occur without interrupting the continuous process.
Data Source
Figure 1~2
AI summary
The method involves occurring of evaluation and conversion of the operational sequence instructions (36) in a processable form by a run time interpreter (40) for a processing unit (38) of the automation unit (10). An accessible storage (14) is provided in connection with a variation of the control program (16) related to the varied program elements (32) in addition to the existing program elements in an automation unit. Independent claims are also included for the following: (1) a computer program with a computer executing program code instructions for executing the method (2) a computer program product, particularly storage medium.