Controller-Agnostic IDE Program Export for Multi-Controller Reuse
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current industrial control program development platforms require initial binding to a specific industrial controller, limiting flexibility and scalability, as they support a one-to-one relationship between a control project and its associated controller, making it difficult to implement common control functionality across multiple controllers.
Innovation Solution
An industrial integrated development environment (IDE) system that allows for decoupled development of industrial control programs by defining and storing them as smart objects, which can be assigned to multiple controllers, enabling a one-to-many relationship and facilitating reuse across different automation systems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a control project is bound to a single industrial controller, then the project structure is simple and manageable, but the flexibility and scalability to implement common control functionality across multiple controllers is limited
Solution Approach 1:
The control project is segmented into modular components: controller definitions (representing target controllers) and smart object definitions (representing reusable control functionality). This segmentation allows the project to be composed of multiple independent elements that can be selectively assembled, enabling common control functionality to be implemented across multiple controllers without creating a monolithic complex structure.
Solution Approach 2:
Smart object definitions are designed as universal, reusable components that can be allocated to multiple controller definitions. A single smart object definition can serve multiple controllers simultaneously, providing multi-functionality and eliminating the need to recreate control functionality for each controller, thereby improving flexibility while maintaining manageable project structure through reuse.
2Productivity
If control programs are developed specifically for each controller, then the control functionality is optimized for each specific controller, but the development time and effort increase significantly when multiple controllers need similar functionality
Solution Approach 1:
Smart object definitions serve as reusable templates or copies of control functionality. Once a control program is developed and encapsulated as a smart object definition, it can be copied and allocated to multiple controller definitions without requiring redevelopment. This copying mechanism dramatically reduces development time and effort when implementing similar control functionality across multiple controllers.
Solution Approach 2:
Control functionality is developed and validated in advance as smart object definitions before being allocated to specific controllers. This preliminary action allows the control logic to be perfected once and then rapidly deployed to multiple controllers through allocation, eliminating the need to repeat the development process for each controller and significantly improving productivity.
3Adaptability or versatility
If a one-to-one relationship is maintained between control projects and controllers, then the project-controller mapping is straightforward, but the ability to scale and reuse control functionality across multiple controllers is hindered
Solution Approach 1:
The traditional monolithic control project is segmented into controller definitions and smart object definitions as separate, manageable components. This segmentation enables scalable project structures where multiple controller definitions can be associated with multiple smart object definitions in various configurations, allowing easy scaling to multiple controllers while maintaining operational simplicity through modular organization.
Solution Approach 2:
The project structure transitions from a one-dimensional one-to-one mapping to a multi-dimensional many-to-many relationship space. Controller definitions and smart object definitions can be selectively associated through allocation relationships, creating flexible project configurations that scale to multiple controllers while maintaining ease of operation through explicit allocation management rather than implicit one-to-one binding.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
An industrial integrated development environment (IDE) supports decoupled development of industrial control programs without requiring the programs to be initially bound to a specific industrial controller. The IDE system allows industrial control programs to be defined as smart objects within an industrial control project. These smart objects can be created without an initial binding to an industrial controller, and can subsequently be assigned to selected industrial controllers after development of the control programs is complete, or while program development is in progress. The IDE system can export executable content allocated to a selected controller definition as a project file formatted to be compatible with a configuration application specific to the controller type of the selected controller definition.