Industrial Controller Online Firmware Update via Program Space Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Industrial controllers face challenges in updating their firmware without disrupting ongoing industrial processes, leading to costly downtime and limited updates restricted to user logic.
Innovation Solution
The solution involves storing a replacement machine-readable component in an allocated program space, modifying dependent components to depend on it, re-linking the control program, and redirecting execution to the updated program space, allowing for online updates of instructions, libraries, or subroutines without halting the industrial process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If firmware update is performed by traditional re-flashing method, then the control program can be updated with new functionality or bug fixes, but the industrial process must be halted causing costly downtime
Solution Approach 1:
The patent segments the control program into multiple image files stored in different memory locations. Instead of updating the entire firmware at once, individual image files can be updated independently. This allows the controller to load updated segments without halting the industrial process, maintaining productivity while enabling reliable updates.
Solution Approach 2:
The patent implements preliminary action by downloading and storing updated image files in available memory space before they are needed. The controller prepares update images in advance during idle memory periods, then switches to the updated version without interrupting the running process. This eliminates downtime by performing update preparation beforehand.
2Ease of manufacture
If the industrial controller is taken down for firmware update, then the control program can be fully updated, but production loss occurs due to assembly line downtime
Solution Approach 1:
The patent enables continuity of useful action by allowing the industrial controller to perform firmware updates without stopping the industrial process. The controller continuously runs the current control program while downloading and preparing updated image files in the background, then seamlessly transitions to the updated version without interruption to production.
Solution Approach 2:
The patent uses copying by creating duplicate image files of the control program. The original image files continue to support the running industrial process, while copied updated versions are prepared in parallel. This allows the system to switch between original and updated copies without downtime, eliminating production loss.
3Ease of operation
If online editing or partial import online is used, then user logic can be updated without downtime, but system instructions and libraries cannot be updated
Solution Approach 1:
The patent implements universality by creating a single image file structure that can represent both user logic and system instructions/libraries. The controller can update any type of content (user-created or vendor-supplied) through the same online image file mechanism, eliminating the limitation that restricted online updates to only user logic while maintaining ease of operation.
Data Source
Figure 1
Figure 2
Figure 3A~3D
AI summary
The inventor has recognized that industrial controllers may be updated after they are deployed in the field, while actively controlling an industrial process and without costly downtime, by storing a replacement machine-readable component in an allocated program space, locating and modifying one or more dependent machine-readable components copied in the allocated program space to instead depend on the replacement machine-readable component, re-linking a copy of the control program in the allocated program space, and redirecting execution to the control program in the allocated program space. Replacement machine-readable components could be instructions, libraries, or subroutines of the control program, and are not limited to user logic. The control program in the allocated program space may optimally be tested by verifying an operation before redirecting execution to the control program in the allocated program space.