Containerized Process Control Architecture for Modular Custom Calculations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional process control systems lack modularity, leading to complex software interdependencies that hinder the deployment of new functionality and maintenance, and require unreliable external interfaces for custom calculations, complicating validation and integration with regulatory agencies.
Innovation Solution
Implement a micro-service architecture with containerized control system services that are independently deployable and communicate via a service message bus, using a service message router for message forwarding and encapsulating custom calculation engines through shadow function blocks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional process control systems are used with integrated software architecture, then system stability is maintained, but software interdependencies increase and modularity decreases
Solution Approach 1:
The patent segments the process control system into independent containerized services, each encapsulating specific control functions. This segmentation eliminates software interdependencies while maintaining system stability, as each container operates independently with its own runtime environment and can be deployed, modified, and scaled without affecting other components.
Solution Approach 2:
The patent introduces a service message bus as an intermediary communication mechanism between containerized services. This mediator enables loose coupling between services, allowing them to exchange messages without direct software interdependencies, thus improving modularity while maintaining system coherence through standardized communication protocols.
2Adaptability or versatility
If external interfaces are used for custom calculations, then functionality is extended, but reliability decreases and validation becomes complicated
Solution Approach 1:
The patent extracts custom calculation engines from external interfaces and integrates them into containerized services within the control system. This extraction eliminates the need for unreliable external interfaces while maintaining custom calculation capabilities, as the calculation engines now run within the controlled containerized environment with guaranteed execution reliability and simplified regulatory validation.
3Productivity
If monolithic software architecture is used, then system stability is maintained, but deployment of new functionality becomes complex
Solution Approach 1:
The patent implements a dynamic architecture where containerized services can be independently deployed, scaled, and modified at runtime. This dynamic approach enables flexible deployment of new functionality without requiring system-wide changes, as individual containers can be added, removed, or updated independently while the system continues to operate with maintained stability.
4Adaptability or versatility
If containerized micro-service architecture is implemented, then modularity and design flexibility are enhanced, but system complexity increases
Solution Approach 1:
The patent implements universal containerized service components that can perform multiple functions across different control scenarios. These standardized containers with common interfaces and communication protocols reduce architecture complexity despite the distributed nature of the system, as the same container types can be reused and composed to create various control functionalities.
Data Source
AI summary
In one aspect, a micro-service control architecture provides a modular, flexible platform for designing, diagnosing, updating and/or expanding process control systems. Each service is containerized to provide portability and isolation from other components of the process control system. In another aspect, a function block diagram includes a “shadow” block that acts as an interface to an external, custom calculation engine, thereby enabling the custom calculation engine to operate synchronously with respect to other function blocks of the function block diagram.


