Cross-Control Workflow Scripting Without Function Block Recompilation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing automated systems for executing workflow tasks across control objects, such as robots, face issues with poor openness, stability, and programming efficiency due to the need for re-compiling when adding new function blocks, lack of dynamic block definition, and inadequate data visualization.
Innovation Solution
A method and system that provides an interpretable and executable textual description for workflow tasks, allowing dynamic creation of function blocks without re-compiling, enhanced version control, and improved data visualization through middleware and mature script engines.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If function blocks are defined by C++ in the runtime environment, then the system can execute workflow tasks, but the programming efficiency is low and re-compiling is needed when adding new functions
Solution Approach 1:
The patent replaces the traditional C++ compilation mechanism with a script-based interpretation mechanism. Instead of requiring re-compilation when adding new function blocks, the system uses script files (e.g., XML, JSON, or Python scripts) that can be dynamically loaded and interpreted by the runtime environment, eliminating the need for re-compilation and significantly improving programming efficiency.
Solution Approach 2:
The patent introduces dynamic function block definition through script files that can be modified and loaded at runtime without system re-compilation. The runtime environment dynamically interprets these script files to create and manage function blocks, allowing the system to adapt to new functions immediately without undergoing a rigid re-compilation process.
2Adaptability or versatility
If a new standard is constructed for openness, then the system can support multiple programming tools, but the openness is poor and stability is inadequate
Solution Approach 1:
The patent creates a universal script-based interface that can be used across multiple programming tools and runtime environments. This script mechanism serves as a common language that different tools can use to define function blocks and workflow tasks, providing openness without requiring each tool to implement its own proprietary standard, thereby maintaining stability through a unified approach.
Solution Approach 2:
The patent introduces script files as an intermediary layer between programming tools and the runtime environment. This intermediary standardizes the interface for defining function blocks, allowing multiple programming tools to interact with the runtime environment through a consistent mechanism, thus improving openness while maintaining stability through standardized mediation.
3Productivity
If the execution process is collapsed by function block errors, then the system executes workflow tasks, but the stability is inadequate
Solution Approach 1:
The patent implements error handling and validation mechanisms in the script-based system that prevent function block errors from causing complete system collapse. The runtime environment can detect, isolate, and handle errors in individual function blocks defined by scripts, cushioning the impact and allowing the rest of the workflow execution to continue, thereby improving stability while maintaining productivity.
4Productivity
If the execution logic cannot be textualized, then the system can execute workflow tasks, but version control is difficult
Solution Approach 1:
The patent replaces binary executable code with text-based script files for defining function blocks and workflow logic. This textualization allows the execution logic to be stored in human-readable formats (such as XML, JSON, or Python scripts), enabling easy version control through text diff tools, version control systems like Git, and clear tracking of changes over time, while maintaining full workflow execution capability.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method and apparatus for executing a workflow task across control objects. The method comprises: receiving, from an engineering tool (110), workflow description data associated with a workflow task executed across at least one control object; extracting, from the workflow description data, a workflow task model associated with the at least one control object; on the basis of the workflow task model, generating a text-based script used for realizing the workflow task; and interpreting and executing the script by means of a script engine. By means of the method, a functional block can be dynamically created without recompilation, thereby improving the programming efficiency for a user and providing good version control.