Programmable Logic Controller Data Update Method
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Updating control program data in a programmable logic controller while it is active poses challenges, particularly when large amounts of data need to be copied, as it can cause the control program to timeout and malfunction, especially with fast tasks that allow only short cycle breaks.
Innovation Solution
The method involves dividing control program data into data areas with separate availability statuses, allowing for incremental copying during control program breaks, and delaying the copying of unchanged data until the new control program is switched, ensuring that only required data is copied when accessed, thus avoiding timeouts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If control program data is updated while the control program is running, then updates can be made without interrupting the control program, but the copying process can cause the control program to timeout and malfunction
Solution Approach 1:
The control program data is divided into multiple data areas, each with its own availability status. This segmentation allows the copying process to be broken down into smaller, manageable units that can be copied individually during control program breaks, preventing timeout errors while enabling continuous operation.
Solution Approach 2:
A new data area is created and initialized with new parameters before the old data area is discarded. The availability status is set to 'not available' in advance, and the copying process is prepared beforehand, ensuring that data is ready for use once the copy is complete without causing interruptions or timeouts.
2Manufacturing precision
If large amounts of control program data are copied during a single control program break, then the data structure can be updated completely, but the copying process causes timeout and control malfunction
Solution Approach 1:
The large data copying task is segmented into smaller copies corresponding to individual data areas. Each data area is copied separately during different control program breaks, distributing the total copying time across multiple intervals and preventing any single break from exceeding timeout thresholds.
Solution Approach 2:
The copying process is performed periodically during control program breaks rather than in a single continuous operation. The configuration unit monitors the availability status and performs copying at appropriate intervals, ensuring that each copying operation completes within the allowed time frame while progressively updating the entire data structure.
3Stability of the object's composition
If the availability status is set to not available during the copying process, then data consistency is maintained, but the control program must be stopped until copying is complete
Solution Approach 1:
By segmenting data into separate data areas with individual availability statuses, the system can maintain data consistency for each area independently. When one data area is being copied, only that specific area is marked as unavailable, while other data areas remain accessible, allowing partial control program operation to continue.
Solution Approach 2:
The new data area is created and initialized in advance with the correct structure and new parameters. This preliminary preparation ensures that when copying is complete and the availability status is changed to 'available', the data is immediately ready for use without requiring additional processing or stopping the control program.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
The data of a control program executed on a programmable logic controller are divided into data regions, wherein an availability status is assigned to each data region, wherein said availability status is stored in an availability table. In order to execute a change in a data region, a further data region having a change is generated on the programmable logic controller, an availability status is entered in the availability table for the further data region having the change, and data of the data region to be changed that are not to be changed are transferred to the further data region having the change, wherein the availability status assigned to the further data region having the change is set to unavailable in the availability table until the transfer progress has been completed. Before the control program accesses a data region, the availability status assigned to the data region is checked in the availability table, wherein the control program is stopped if a data region that is marked as unavailable is detected until the assigned availability status has been set to available in the availability table.