Collaborative Industrial IDE for Parallel Automation Code Commits
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Industrial automation systems face challenges in collaborative development, with existing platforms lacking the ability to support multiple developers working on a project in parallel while maintaining project consistency, and requiring separate configuration tools for disparate system aspects, leading to piecemeal design and significant testing efforts.
Innovation Solution
An integrated development environment (IDE) system that provides a cloud-based platform for collaborative development, allowing multiple developers to work on a common automation system project, with features like brokering between design inputs, notification of modifications, and version control to ensure consistency, using a common design environment and data model, and supporting features across the automation lifecycle.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple developers work on a project in parallel using existing platforms, then development productivity is improved, but project consistency deteriorates due to lack of collaborative control mechanisms
Solution Approach 1:
The server acts as an intermediary between multiple client devices, receiving design inputs from different developers, brokering conflicts, and managing version control. This mediator coordinate s collaborative development while maintaining project consistency through centralized control of the common data model.
Solution Approach 2:
The system implements feedback mechanisms where the server sends notifications to clients about project data changes, conflicts, and synchronization status. This feedback loop enables developers to understand the current state of the project and adjust their work accordingly, maintaining consistency while allowing parallel development.
2Ease of operation
If separate configuration tools are used for disparate system aspects, then ease of operation is improved for specific tasks, but device complexity increases and testing efforts multiply
Solution Approach 1:
The system merges previously separate configuration tools into a single integrated development environment. The common data model unifies control code, visualization, and device configuration into one cohesive system, allowing developers to work with all system aspects through a single interface rather than multiple disparate tools.
Solution Approach 2:
The common data model serves multiple functions simultaneously - it stores control code, visualization data, device configurations, and project metadata in a unified structure. This multi-functional approach eliminates the need for separate configuration tools while maintaining ease of operation through a single integrated interface.
3Stability of the object's composition
If a common design environment and data model are implemented, then project consistency is improved, but device complexity increases due to integration requirements
Solution Approach 1:
The system segments the complexity by separating the common data model (stored on the server) from the client interface. The heavy integration work is performed once on the server side, while client devices receive simplified interactions through the standardized interface, reducing the perceived complexity for individual developers.
Solution Approach 2:
The server maintains a master copy of the common data model and distributes synchronized copies to client devices. This copying mechanism allows multiple developers to work with local copies while the server ensures consistency, reducing the complexity of real-time synchronization for each client.
4Productivity
If cloud-based platform is used for collaborative development, then productivity is improved through remote access, but loss of information may increase due to network dependencies
Solution Approach 1:
The system implements beforehand cushioning by maintaining local copies of project data on client devices and implementing conflict resolution mechanisms in advance. If network connectivity is lost, developers can continue working with their local copies, and the system is prepared to handle synchronization when connectivity is restored, preventing information loss.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
An industrial integrated development environment (IDE) supports collaborative tools that allow multiple designers and programmers to remotely submit design input to the same automation system project in parallel while maintaining project consistency. The industrial IDE also permits localized development of system projects, and provides an infrastructure for sharing and selectively synchronizing project edits among multiple locally stored versions of the system project.