Reconfigurable Automation Runtime With Reusable Function Stitching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current automation runtime systems are monolithic and inflexible, requiring extensive re-engineering or redevelopment to adapt to new requirements, leading to long development cycles and high costs, with existing approaches like Brownfield and Greenfield development failing to facilitate easy modifications.
Innovation Solution
A reconfigurable runtime system using reusable runtime functions (RRFs) is constructed through a configuration programming language, allowing adaptation via specialization, stitching, and stacking operations, enabling seamless integration and modification without downtime.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a monolithic runtime system is used, then system stability and reliability are improved, but adaptability to new requirements deteriorates
Solution Approach 1:
The runtime system is divided into modular runtime functions (RRFs) that can be independently selected, configured, and combined. Each RRF represents a discrete functional unit that can be stitched together to form the complete runtime system, enabling both stability through proven modules and adaptability through flexible composition.
Solution Approach 2:
The system transitions from a static monolithic structure to a dynamic configurable architecture where the runtime behavior can be changed by reconfiguring which RRFs are active and how they are connected. This allows the system to adapt to new requirements without rewriting the entire runtime program.
2Manufacturing precision
If the runtime system is configured for real-time operation, then timing precision is improved, but flexibility to change operational modes deteriorates
Solution Approach 1:
The runtime system allows dynamic switching between real-time and non-real-time operational modes by reconfiguring the selected RRFs and their connections. The same hardware platform can support different timing requirements by changing the software configuration rather than requiring dedicated hardware for each mode.
3Ease of manufacture
If Brownfield development is used to modify existing runtime systems, then development costs are reduced, but development time increases
Solution Approach 1:
By segmenting the runtime system into reusable RRFs, developers can modify only the specific modules needed for new requirements rather than re-engineering the entire system. This reduces both the scope of work required (time) and leverages existing proven modules (cost).
Solution Approach 2:
The system allows selective replacement of individual RRFs while retaining and reusing the majority of existing runtime functions. This enables incremental updates where only necessary components are changed, minimizing development effort and time.
4Adaptability or versatility
If Greenfield development is used to create new runtime systems, then system customization is improved, but development effort and cost increase
Solution Approach 1:
The runtime system is composed of pre-built, proven RRFs that can be selected and combined to create customized solutions. This approach provides the customization benefits of Greenfield development while reducing the development effort by reusing existing functional modules rather than building everything from scratch.
Solution Approach 2:
The RRFs are designed to be universal building blocks that can be applied across different runtime configurations and application domains. This universality reduces development effort by allowing the same core functions to be reused in multiple contexts while still enabling extensive customization through different combinations.
Data Source
AI summary
A system and method for constructing a reconfigurable runtime system used in an automation system using reusable runtime functions (RRFs) is disclosed. A specialization module executes a specialization operation to configure or customize at least one RRF to satisfy functional requirements of the automation system. A stitching module executes a stitching operation that connects output of at least one RRF to input of one or more other RRFs. A stacking module executes a stacking operation that stacks RRFs as layers to create new abstractions, functionality and services. The specialization operation, the stitching operation, and the stacking operation are performed according to a runtime specification language.


