Automation App Interfaces With Runtime Dependency Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing app-based development models for industrial automation face challenges in complexity, requiring standardization of interfaces which limits innovation and is time-consuming, making it difficult for small companies to participate effectively.
Innovation Solution
The system allows apps to communicate through user-created interfaces, enabling dynamic workflow modification and capability sharing using a Capability Router, reducing the need for initial standardization and allowing small companies to define standards through market success.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a standardization heavy approach is used to define interfaces between apps, then system reliability and coordination are improved, but device complexity and development time increase significantly
Solution Approach 1:
The system enables apps to automatically discover and connect to each other through self-described interfaces. Each app publishes its own interface definition (capabilities and requirements) in a machine-readable format, allowing other apps to find and connect to compatible interfaces without manual standardization configuration. This self-service mechanism resolves the contradiction by achieving reliable app-to-app coordination through automatic interface matching rather than complex pre-defined standards.
Solution Approach 2:
The patent introduces an interface description language and app store infrastructure as intermediaries between apps. These intermediaries facilitate automatic interface matching, dependency resolution, and connection establishment. The intermediary layer handles the complexity of interface coordination, allowing apps to interact reliably without each app needing to implement complex standardization logic directly.
2Stability of the object's composition
If extensive standardization work is performed to define app interfaces, then system stability is improved, but productivity and innovation speed decrease
Solution Approach 1:
The system dynamically generates interface connections based on runtime app capabilities and requirements rather than relying on static pre-defined standards. Apps can publish new interfaces and connect to new apps without requiring updates to standardized interface definitions. This dynamic approach maintains system stability through automatic compatibility checking while enabling rapid development and deployment of new apps.
Solution Approach 2:
The patent segments the interface definition into separate capability descriptions and requirement specifications that can be independently developed and combined. This segmentation allows apps to define their own modular interfaces without being constrained by comprehensive standardized frameworks, enabling faster development while maintaining system stability through structured interface composition.
3Adaptability or versatility
If standardized interfaces are mandated for all apps, then interoperability is improved, but adaptability and versatility of small companies decrease
Solution Approach 1:
Each app independently describes its own interfaces through machine-readable definitions published in the app store. Small companies can define custom interfaces that match their specific app capabilities without needing to conform to comprehensive standardized frameworks. The system automatically matches these custom interfaces with compatible apps, achieving interoperability through self-description rather than mandatory standardization.
Solution Approach 2:
The interface definition language allows apps to specify parameters such as data types, communication protocols, and interaction patterns in a flexible manner. Small companies can adjust these parameters to match their specific needs while maintaining compatibility with the overall system. This parameter-based approach enables adaptability without requiring complex standardized structures.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method of executing apps on a production device in an automation environment includes storing a plurality of apps in a runtime environment of the production device. A metadata file is stored for each respective app included in the plurality of apps. The metadata file comprises an indication of a network interface that may be used for communication with the respective app by other apps, and an indication of one or more interface dependencies to other network interfaces corresponding to other apps. Prior to executing a particular app on the production device, an operation is performed to verify that each interface dependency associated with the particular app can be fulfilled by the plurality of apps.