Ancillary Data Area for Industrial Control Code Testing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Industrial control programs running on controller units often require modifications while operational, posing risks of disrupting controlled machinery or processes, and existing methods for online editing are complex and prone to errors.
Innovation Solution
A method and system that create a sandbox environment by providing an ancillary data area separate from the program data area, allowing code modifications to be tested without immediate impact on the industrial process, using a code handler unit to insert code portions and a monitoring unit to assess performance, ensuring safe implementation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If online editing of industrial control programs is performed using traditional methods, then code modifications can be made while the program is running, but the complexity of safety measures and the risk of errors increase significantly
Solution Approach 1:
The patent segments the data access mechanism by introducing an ancillary data area that is separated from the main program data area. The code portion accesses data through this isolated ancillary area rather than directly accessing the main program data, creating a segmented architecture that reduces complexity of safety measures while enabling online modification.
Solution Approach 2:
The patent introduces an intermediary mechanism by copying selected data from the main program data area into the ancillary data area before the code portion accesses it. This copying step acts as an intermediary that isolates the main program from direct modification risks, simplifying the overall safety architecture while enabling online code changes.
2Productivity
If traditional online editing methods are used, then code changes can be implemented without pausing the industrial control program, but programming errors can still affect the industrial process
Solution Approach 1:
The patent segments data access by creating an ancillary data area that is distinct from the main program data area. The code portion accesses only the ancillary data area, which contains copies of selected data from the main area. This segmentation isolates potential errors to the ancillary area, preventing them from affecting the main industrial process while maintaining execution continuity.
Solution Approach 2:
The patent implements beforehand cushioning by copying selected data from the main program data area into the ancillary data area before the code portion executes. This pre-copying creates a protective buffer that absorbs potential errors, ensuring that even if the code portion introduces programming errors, they cannot directly affect the main industrial process.
3Productivity
If code modifications are made while the industrial control program is running, then production continuity is maintained, but extensive safety measures and personnel expertise are required
Solution Approach 1:
The patent segments the data architecture into a main program data area and an ancillary data area. The code portion is configured to access only the ancillary data area, which contains copies of necessary data. This segmentation simplifies the modification process by providing a isolated testing environment, reducing the need for extensive safety measures and specialized personnel expertise while maintaining production continuity.
Solution Approach 2:
The patent uses copying by creating an ancillary data area that contains copies of selected data from the main program data area. The code portion accesses these copies rather than the original data, allowing modifications to be tested safely without affecting the main industrial process. This copying mechanism reduces operational complexity and personnel requirements.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for modifying code for an industrial control program comprises providing or receiving a code portion for an industrial control program; providing an ancillary data area pertaining to data to be accessed by the code portion, wherein the ancillary data area is distinct and/or separated from the program data area pertaining to the industrial control program; copying selected data from the program data area into the ancillary data area; and inserting the code portion into the industrial control program at a predetermined code position of the industrial control program.