PLC Shared-Memory Control for Stable Mixed Program Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional distributed monitoring control systems and motion controllers face issues with scalability and compatibility due to dedicated appliances, and they do not effectively utilize general-purpose appliances, while also limiting the ability of ladder language applications to call C language applications as functions, restricting the flexibility of program usage in control apparatuses.
Innovation Solution
A control apparatus that accesses I/O ports to control object apparatuses, featuring a processor unit executing multiple programs, including control and information programs, with a storage unit providing shared areas for both, allowing flexible program changes without affecting scan operations or stability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If dedicated appliances are used for control systems, then control stability is improved, but scalability and compatibility deteriorate
Solution Approach 1:
The patent applies universality by enabling the programmable logic controller to execute both traditional control programs and information processing programs on the same platform. The controller can load and run C language programs, Python programs, or other information processing programs in addition to conventional control programs, making it compatible with multiple software environments and applications while maintaining control stability through the shared memory architecture.
2Adaptability or versatility
If complicated processing is performed in the programmable logic controller, then functionality is improved, but control stability deteriorates
Solution Approach 1:
The patent applies segmentation by dividing the program execution into separate memory areas: a first storage area for control programs and a second storage area for information processing programs. This segmentation allows complicated information processing to occur in the second area without interfering with the stable execution of control programs in the first area, thus maintaining control stability while enhancing functionality.
Solution Approach 2:
The patent uses an intermediary mechanism through the shared memory architecture and program loading system. The controller loads information processing programs from external storage into the second storage area, acting as an intermediary between external information processing capabilities and the core control system. This allows complex processing without directly compromising control stability.
3Adaptability or versatility
If general-purpose appliances are used, then scalability is improved, but control stability deteriorates
Solution Approach 1:
The patent applies segmentation by creating distinct execution environments within the controller: control programs execute in a dedicated first storage area while information processing programs execute in a second storage area. This segmentation allows the use of general-purpose programming languages and flexible software while maintaining the stability required for control operations, thus achieving scalability without compromising control stability.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A control apparatus that accesses at least one I/O port of one or more I/O ports coupled to one or more control object apparatuses to control operation of a control object apparatus coupled to the I/O port includes a processor unit that executes a plurality of programs, and a storage unit that stores information on the one or more I/O ports and serves as a base of one or more shared areas each of the plurality of programs can access. The plurality of programs include one or more information programs in addition to one or more control programs. Each of the one or more control programs is a program that performs a scan process to output control information on the control object apparatus coupled to the I/O port. Each of the one or more information programs is a program that performs information processing different from scan operation.