Adaptive Simplex Control for Reliable CPPS Code Switching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cyber-Physical Production Systems (CPPS) face challenges in achieving high security, resilience, and maintainability due to increased software complexity from integrating complex machine learning and statistical libraries, which can lead to non-deterministic behavior and high maintenance costs, especially under agile development processes.
Innovation Solution
The adaptive simplex architecture uses a statistical emulator to dynamically switch between high-assurance and high-performance program codes based on verification parameters, employing machine learning algorithms to detect errors and adapt execution, ensuring fault-tolerant operation and reducing complexity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If complex machine learning and statistical libraries are integrated into CPPS software to achieve high adaptability and autonomous functions, then the adaptability and productivity of the system are improved, but the software complexity and device complexity increase, leading to non-deterministic behavior and high maintenance costs
Solution Approach 1:
The system is segmented into multiple independent computing devices (first computing device, second computing device, test device, control device) that can be developed, tested, and maintained separately. This modular architecture reduces overall software complexity while maintaining adaptability through the coordinated operation of specialized components.
Solution Approach 2:
A test device acts as an intermediary between the second computing device and the control device. It verifies program code before execution, serving as a mediator that ensures quality without requiring the control device to directly handle complex verification logic, thus reducing control device complexity.
2Productivity
If complex third-party ML libraries are integrated into embedded CPPS software to enable autonomous functions, then the productivity and adaptability improve, but the reliability decreases due to potential software bugs and non-deterministic behavior
Solution Approach 1:
The test device performs preliminary verification of program code generated by the second computing device before it is executed by the control device. This advance checking catches potential bugs and reliability issues before they affect system operation, enabling the use of complex ML libraries while maintaining reliability.
Solution Approach 2:
The system implements a safety mechanism where the first computing device provides a fallback program code that can be used if the second computing device's code fails verification or produces unreliable results. This cushioning approach protects the system from reliability issues while allowing aggressive optimization in the second computing device.
3Device complexity
If externally hosted ML algorithms are used to reduce system complexity, then the device complexity is reduced, but the autonomy decreases due to dependency on remote services and communication delays
Solution Approach 1:
The control device is designed to execute multiple types of program code (from both the first and second computing devices) and can operate in different modes depending on verification results. This multi-functionality allows the system to maintain autonomy by making local decisions about which code to execute, rather than relying on external services.
4Reliability
If rigorous software development processes and methodologies are used to ensure security and reliability, then the reliability and security improve, but the ease of manufacture and maintenance worsen due to rigid and expensive processes
Solution Approach 1:
The system implements automated verification and testing through the test device, which automatically checks program code without requiring manual inspection. This self-service approach maintains reliability through rigorous checking while reducing the burden on developers and simplifying the manufacturing process.
Solution Approach 2:
The system allows flexible configuration of verification parameters and criteria through the emulation platform, enabling the verification process to be adapted to different requirements. This parameter flexibility makes the rigorous verification process more adaptable and easier to implement across different projects.
Data Source
Figure 1~2
Figure 3~4
AI summary
A method for controlling a technical system (1) based on an adaptive simplex architecture, wherein, starting from a control command (10), a first safe computing device (11) provides a first program code (21) and a second fast computing device (12) provides a second program code (22) by means of a statistical emulator (70) comprising a trained model (61). The model (61) is trained or generated by an emulation platform (60). A test device (30) is provided, which executes the second program code (22) and determines a verification parameter (31), e.g., "Test (failed)", for the second program code (22). A program code selector (35) decides at runtime, based on the verification parameter (31), which program code (21, 22) is supplied to the control device (40) for execution.The control device (40) generates a control instruction (41) for controlling the technical system (1) and records an operating parameter (42), e.g., vibrations, temperature and/or energy consumption, of the technical system (1). A monitoring device (50) determines a monitoring parameter (51) which is supplied to the emulation platform (60) and on the basis of which the model (61) is trained or generated.