Industrial Controller Source Code Distribution Without Central Repository
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In industrial control environments, the limited storage space on industrial controller units poses challenges for storing entire source code, especially during installation or maintenance, where multiple users need to work on the same code simultaneously, and there is often no central source code management system available, leading to difficulties in maintaining code consistency and efficient exchange.
Innovation Solution
An industrial controller unit that stores characteristics of source code objects, such as location, timestamp, and checksum, rather than the source code itself, allowing for efficient distribution and updating of source code objects among connected programming units via a network, enabling the unit to act as a file sharing server even without a central management system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If source code is stored on the industrial controller unit, then source code availability is improved, but storage space is consumed
Solution Approach 1:
The patent extracts only the essential characteristics (metadata) of source code objects from the full source code files. The controller storage element stores compressed representations including compilation timestamps, version identifiers, and checksums rather than complete source code, enabling verification of code integrity while minimizing storage consumption.
Solution Approach 2:
The system creates lightweight copies of source code information in the form of characteristic data structures. These copies contain sufficient information to verify source code integrity and track versions without requiring storage of the actual source code files, which remain primarily on programming units.
2Volume of stationary object
If source code is compressed to save storage space, then storage efficiency is improved, but access speed deteriorates
Solution Approach 1:
The system performs preliminary processing by extracting and storing key characteristics (compilation timestamps, version IDs, checksums) of source code objects before any access occurs. This pre-computed metadata enables rapid verification and comparison operations without requiring decompression or full loading of source code files during access operations.
3Productivity
If multiple users work on the same source code simultaneously, then collaborative efficiency is improved, but code consistency deteriorates
Solution Approach 1:
The controller storage element maintains a centralized repository of source code characteristics including version identifiers and checksums. When users access or modify source code, the system provides feedback by comparing local characteristics against the centralized repository, enabling users to detect and resolve inconsistencies. This feedback mechanism ensures all users work from consistent versions while maintaining collaborative efficiency.
Solution Approach 2:
The controller storage element serves multiple functions simultaneously: it acts as a centralized registry for source code characteristics, a verification system for code integrity, and a coordination point for multiple users. This multi-functional approach enables collaborative work while maintaining code consistency through its characteristic storage and comparison capabilities.
Data Source
Figure 1
Figure 2~4
Figure 5
AI summary
An industrial controller unit is adapted to be coupled to a plurality of programming units via a network. The industrial controller unit comprises a controller storage element adapted to store a plurality of characteristics associated with a plurality of source code objects of the source code pertaining to an industrial control program, wherein each source code object has at least one characteristic and wherein the at least one characteristic comprises data pertaining to a location of the source code object and at least one of the plurality of programming units. The industrial controller unit further comprises a distribution element adapted to receive an inquiry for a source code object from a first programming unit among the plurality of programming units, to retrieve from the controller storage element data pertaining to a corresponding location of the source code object in a second programming unit among the plurality of programming units, the second programming unit being different from the first programming unit, and to cause the source code object to be transferred from the second programming unit to the first programming unit.