WO2023142076A1 - 工作流控制方法、装置、系统、介质及程序产品 - Google Patents
工作流控制方法、装置、系统、介质及程序产品 Download PDFInfo
- Publication number
- WO2023142076A1 WO2023142076A1 PCT/CN2022/075083 CN2022075083W WO2023142076A1 WO 2023142076 A1 WO2023142076 A1 WO 2023142076A1 CN 2022075083 W CN2022075083 W CN 2022075083W WO 2023142076 A1 WO2023142076 A1 WO 2023142076A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- workflow
- synthesizer
- working
- behavior tree
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Program-control systems
- G05B19/02—Program-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
- G05B19/4188—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by CIM planning or realisation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0633—Workflow analysis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04803—Split screen, i.e. subdividing the display area or the window area into separate subareas
Definitions
- the embodiments of the present application relate to the field of industrial technology, and in particular to a workflow control method, device, system, computer-readable storage medium, and computer program product.
- Workflow can be simply defined as a description of a series of operations. Workflow is widely used in automation systems, artificial intelligence, robotics and other fields. For example, the workflow of a product sorting line in an automated system can be simply described as starting, taking pictures, sorting and moving the products to the target location.
- the model deployment workflow in the field of artificial intelligence can be described as data collection, data labeling, model training, and model deployment.
- Embodiments of the present application provide a workflow control method, system, computer-readable storage medium, and computer program product.
- the embodiment of the present invention proposes a workflow control method, including:
- a synthesizer node comprising a start block adapted to begin execution of the synthesizer node, an end block adapted to end execution of the synthesizer node based on user operations on the graphical user interface and a plurality of working links arranged between the start block and the end block; based on the type of the combiner node, determining a target working link from the plurality of working links; based on the purpose
- the work link controls the logic of the workflow, wherein the workflow is generated based on the behavior tree containing the synthesizer node.
- the embodiment of the present invention introduces multiple types of synthesizer nodes, which are suitable for flexible control of the workflow.
- At least one working link of the plurality of working links includes a function block node, and the function block node is used to realize the service operation in the workflow.
- the working link of the combiner node may include the function block node, so as to improve the control ability of the function block node.
- the determining the type of the synthesizer node based on the user's operation on the graphical user interface includes:
- synthesizer node Determining the type of synthesizer node based on said manipulation by the user on said graphical user interface comprising a node library comprising: synthesizer nodes that identify types in a semantic manner or that identify types in a presentation style The identified synthesizer node.
- the embodiment of the present invention can identify the type of the synthesizer node in a semantic way or presentation style, which can reduce the difficulty of identifying the synthesizer node and save canvas resources.
- it also includes: receiving the user's construction operation of the behavior tree on the graphical user interface; wherein, the construction operation includes the addition and connection operation of the behavior tree node, and the behavior tree node Including the synthesizer node and the function block node; the behavior tree is used to characterize the workflow, and the workflow is used to define the operation to be performed by a work unit; the function block node includes: a logical node, each Each logical node corresponds to an operation template, and each operation template predefines at least one type of operation that can be performed by a device, and the operation includes: action, method or skill; in response to the construction operation of the behavior tree, generate a corresponding workflow The behavior tree, wherein the logical nodes in the behavior tree are instantiated as the operation of the corresponding device; the behavior tree is parsed to obtain the workflow; the workflow is deployed to the corresponding work unit At runtime, each device in the work unit performs operations according to the workflow; wherein the workflow is an OT domain workflow; and the device
- synthesizer node in the embodiment of the present invention can be applied to the workflow control method of the OT domain.
- the method further includes: generating a microservice based on the behavior tree, so that the IT device triggers the runtime of the main controller of the work unit to execute the OT domain workflow by invoking the microservice.
- the embodiment of the present invention can realize the integration of the IT domain and the OT domain through the microservice.
- the type of the synthesizer node is parallel selection; the determining the target working link from the plurality of working links includes: combining each working link in the plurality of working links All roads are determined as the destination working link; the method also includes: receiving an end logic value through the input terminal of the end block; wherein when the end logic value is a logic AND, the plurality of working links When all executions are completed, the execution of the synthesizer node is terminated via the end block; when the end logic value is logical or, at least one of the plurality of working links appears to be executed, via the end block The end block ends execution of the synthesizer node.
- the embodiment of the present invention proposes a combiner node with parallel selection capability.
- the type of the synthesizer node is multi-branch selection
- the method further includes: receiving a preset synthesis expression through the input terminal of the start block; Determining the destination working link includes: determining the data value block when each working link is selected; based on the calculation result of the composite expression, selecting the corresponding data value block from the plurality of working links The destination working link.
- the embodiment of the present invention proposes a combiner node with multi-branch selection capability.
- the type of the synthesizer node is conditional judgment
- the method further includes: receiving a preset synthesized expression via the input terminal of the start block, the result of the synthesized expression includes logical true value or a logical false value; said determining the target working link from the plurality of working links includes: based on the result of the composite expression being a logical true value or a logical false value, from the plurality of working links Determine the corresponding destination working link.
- the embodiment of the present invention proposes a synthesizer node capable of judging whether or not conditions.
- the type of the synthesizer node is priority
- the method further includes: receiving a preset synthesis expression through the input terminal of the start block; Determining the target working link includes: calculating the data value block of each working link based on the composite expression; based on the sorting result of the data value block of each working link, determining the priority of the plurality of working links Sequence: determining the target working link from the plurality of working links based on the priority order.
- the embodiment of the present invention proposes a combiner node with priority capability.
- the type of the synthesizer node is reactive priority
- the method further comprises: receiving a first synthesized expression and a second synthesized expression via an input of the start block; Determining the target working link among the plurality of working links includes: calculating the first data value block of each working link based on the first composite expression; calculating the first data value block of each working link based on the second composite expression The second data value block; based on the sorting result of the first data value block of the plurality of working links, determine the priority order of the plurality of working links; based on the priority order and each working link The second data value block is used to determine the target working link from the plurality of working links.
- the embodiment of the present invention proposes a synthesizer node with reactive priority capability.
- the method includes: displaying the synthesizer node in a folded manner in a folding frame on the graphical user interface, wherein the folding frame includes a first display area, and the first display area is adapted to Displaying currently displayed working links of the synthesizer node and hiding working links other than the currently displayed working links.
- the embodiment of the present invention proposes a compositor node with a folding structure, which can save canvas resources.
- the folding box further includes a second display area, a third display area, and a switching control; wherein the second display area is adapted to display the data value blocks of the currently displayed working link; the The third display area is adapted to display the label of the currently displayed working link; the switching control is adapted to switch the currently displayed working link among the plurality of working links.
- the embodiment of the present invention has a synthesizer node with a folded structure, which can also flexibly switch the label of the currently displayed working link and the flexibly displayed working link.
- the embodiment of the present invention proposes a workflow control device, including:
- the first determination module is configured to determine the type of the synthesizer node based on the user's operation on the graphical user interface, the synthesizer node includes a start block adapted to start executing the synthesizer node, adapted to end execution an end block of the combiner node and a plurality of working links arranged between the start block and the end block;
- the second determination module is configured to determine a target working link from the plurality of working links based on the type of the combiner node;
- the control module is configured to control the logic of the workflow based on the target working link, wherein the workflow is generated based on the behavior tree including the synthesizer node.
- the embodiment of the present invention introduces multiple types of synthesizer nodes, which are suitable for flexible control of the workflow.
- the first determination module is configured to determine the type of synthesizer node based on the user's selection operation on the graphical user interface containing a node library, wherein the node library contains: in a semantic manner A compositor node that identifies a type or a compositor node that identifies a type in rendering style.
- the embodiment of the present invention can identify the type of the synthesizer node in a semantic way or presentation style, which can reduce the difficulty of identifying the synthesizer node and save canvas resources.
- At least one of the plurality of working links includes a function block node, and the function block node is used to realize the business operation in the workflow;
- the first determination module is configured to receive a construction operation of the behavior tree performed by the user on the graphical user interface; wherein the construction operation includes adding behavior tree nodes and connecting operations, and the behavior tree
- the nodes include the synthesizer node and the function block node; the behavior tree is used to represent the workflow, and the workflow is used to define the operation to be performed by a work unit;
- the function block node includes: a logic node, Each logical node corresponds to an operation template, and each operation template predefines at least one type of operation that can be performed by equipment, and the operation includes: action, method or skill; in response to the construction operation of the behavior tree, generate the corresponding work
- the behavior tree of the flow wherein the logical nodes in the behavior tree are instantiated as the operation of the corresponding device; the behavior tree is parsed to obtain the workflow; the workflow is deployed to the corresponding work unit In the runtime, each device in the work unit executes operations according to the workflow; wherein the workflow is an OT domain workflow; and the
- synthesizer node in the embodiment of the present invention can be applied to the workflow control process of the OT domain.
- the embodiment of the present invention proposes a workflow control system, including: at least one memory configured to store computer-readable codes; at least one processor configured to call the computer-readable codes to execute the above-mentioned A step in the workflow control method.
- the embodiment of the present invention provides a computer-readable medium, where computer-readable instructions are stored on the computer-readable medium, and when the computer-readable instructions are executed by a processor, the processor executes the following: Steps in any one of the workflow control methods described above.
- the embodiment of the present invention proposes a computer program product, the computer program product is tangibly stored on a computer-readable medium and includes computer-readable instructions, and when executed, the computer-readable instructions cause at least one The processor executes the steps in any one of the workflow control methods described above.
- FIG. 1A is an exemplary flow chart of workflow creation methods provided by various embodiments of the present application.
- FIG. 1B is an example diagram of a resource knowledge graph in an example of the present application.
- FIG. 1C is an example diagram in which resource nodes are associated with function block nodes in an example of the present application.
- FIG. 2A is a schematic diagram of a behavior tree created in an example of the present application.
- FIG. 2B to FIG. 2S are respectively schematic diagrams of partial behavior trees created in an example of the present application.
- Fig. 3 is an exemplary structural diagram of a workflow creation system provided by an embodiment of the present application.
- 4A-4D are schematic diagrams of workflow creation systems provided by various embodiments of the present application.
- FIG. 4E is a diagram of an application scenario of the OT domain low-code development platform 100 in the field of industrial automation.
- FIG. 5 is a schematic diagram of hardware implementation of the workflow creation system provided by the embodiment of the present application.
- FIG. 6 is an exemplary flowchart of a workflow control method provided by various embodiments of the present application.
- FIG. 7A is a first schematic diagram of a low-code example of an FBTD logic synthesizer provided by various embodiments of the present application.
- FIG. 7B is a second schematic diagram of a low-code example of the FBTD logic synthesizer provided by various embodiments of the present application.
- FIG. 7C is a schematic diagram of a low-code example of a folded FBTD logic synthesizer provided by various embodiments of the present application.
- FIG. 8 is an exemplary structural diagram of a workflow control device provided by various embodiments of the present application.
- microservice 50 third party device 200 Knowledge Center 300 Code development platform for IT domain 301 Code Development Tools for the IT Domain 51 at least one memory 52 at least one processor 53 at least one monitor 54 bus 600 workflow control method 601 ⁇ 603 step 70 synthesizer node 71 start block 72 end block 73 ⁇ 75 function block node 76 composite expression 77 end boolean 78 ⁇ 80 data value block 81 The third display area 82 Type designation for folding synthesizers 83 Second display area 84 toggle control 85 ⁇ 86 function block node 87 composite expression 88 The first display area 90 folding box 800 workflow control device 801 first determination module 802 The second determination module 803 control module
- the term “comprising” and its variants represent open terms meaning “including but not limited to”.
- the term “based on” means “based at least in part on”.
- the terms “one embodiment” and “an embodiment” mean “at least one embodiment.”
- the term “another embodiment” means “at least one other embodiment.”
- the terms “first”, “second”, etc. may refer to different or the same object. The following may include other definitions, either express or implied. Unless the context clearly indicates otherwise, the definition of a term is consistent throughout the specification.
- FIG. 1A shows an exemplary flow chart of a method for creating a workflow provided by an embodiment of the present application. As shown in Figure 1A, the method may include the following steps:
- Step S11 receiving a behavior tree construction operation performed by the user on the graphical user interface based on the preset behavior tree nodes.
- a behavior tree is used to represent a workflow, and the workflow is used to define operations to be performed by a work unit, for example, it may represent a distributed process within a work unit.
- the workflow here can also be subdivided into main workflow and sub-workflow.
- the main workflow is used to define the start, end, and other flow controls that trigger the flow of the entire unit of work.
- the main workflow is the entry point of the entire process, which is linked to at least one sub-workflow.
- Sub-workflows are usually main workflows, and each sub-workflow corresponds to a sub-process for implementing specific business operations.
- a work cell may be a combination of resources such as systems or devices capable of implementing a relatively complete and independent control process and operation.
- the workflow is created with the work unit as the basic unit, which is more in line with the characteristics of industrial control, can improve the integration degree of development, and reduce the complexity of development.
- the work unit can be defined according to the actual industrial scene, for example: you can define a process corresponding to a work unit, or you can define a work station in the process as a work unit, or you can also define A station in the workstation corresponds to a work unit, etc. Different work units have different technological processes.
- Behavior trees are a formalized graphical modeling approach. Behavior trees are widely used for intelligent decision-making in various artificial types. Since most of the logic is set according to the rules, the judgment of behavior is like a tree with many judgment branches. The behavior of the behavior tree is on the leaf node, which is the behavior logic to be executed. Through the behavior tree approach, well-defined symbols can be used to clearly express the relevant requirements of the software integration system. The structure of the behavior tree is organized in the form of a tree, each node has a corresponding node type, and carries different functions with related parameters. You can use the component editor to provide users with an intuitive and visual behavior tree editor. With the Behavior Tree Editor, users can quickly edit behavior trees. For example, after starting the Behavior Tree Editor, you can create a new Behavior Tree, and then select the Behavior Tree node type to enter the Behavior Tree, where you can also edit the properties of the Behavior Tree nodes that make up the Behavior Tree.
- the behavior tree nodes may include: flow control nodes, function block nodes, and so on. Each of them will be described in detail below.
- Flow control nodes are used to implement logical control in workflows, which are usually independent of specific business operations in work units. Through flow control nodes, users can create various workflows according to their needs.
- the flow control node may include: a main control node, a compositor node (also called an aggregator node or a logic control node), and a condition node.
- the flow control node may also include: one or any combination of a main control node, a synthesizer node and a condition node. They are briefly described below.
- the main control node may include: some or all of a Start node, an End node, a Goto node, an Anchor node, a Stop node, and an Abort node.
- the main control nodes in this embodiment are not standard behavior tree elements, but in this embodiment they can be used to control the main flow of the workflow and can be linked to the state machine of the workflow.
- the start node is mandatory, and one of the end node or the go-to node can also be mandatory.
- the main control node is mainly used to define the start and end of the workflow.
- other element nodes can control the state machine (such as abort and stop) or mark the key process steps that can be jumped (such as critical nodes).
- the synthesizer node can include: sequence (Se, Sequence) node, reactive sequence (RSe, Reactive Sequence) node, parallel (Pa, Parallel) node, process quality control (IPQ, In-Process QC) node, priority ( Pr, Priority (Fallback)) node, reactive priority (RPr, Reactive Priority (Fallback)) node, whether conditional judgment (ITE, If-Then-Else) node, and multi-branch selection (Sw, Switch) node some or all.
- Compositor nodes define how branches are executed in the Behavior Tree, are used to implement branching logic control in workflows, and more. For example, a brief description of a typical synthesizer node follows:
- Sequence node which can have one or more sub-nodes, and will trigger routing to each sub-node in sequence according to the workflow sequence.
- Reactive sequence node which has the same function as the sequence node, but will continuously check the trigger conditions.
- Parallel node which can have one or more sub-nodes, starts up sequentially from top to bottom, and executes all sub-nodes in multi-process or multi-thread simultaneously.
- the quality control node in the process is that the quality engineer performs quality inspection on a part of the process steps. If the inspection fails, the exception handling process will be executed, and if it succeeds, it will continue.
- Priority node Execute each sub-branch in order according to the priority. If the previous execution fails, the next one will be executed, and any branch will pass if the execution is successful.
- Reactive priority node The function is the same as the priority node, but the trigger condition will be continuously checked.
- condition judgment node check the trigger expression, if it is true, execute the true branch, if it is false, execute the false branch.
- Multi-branch selection node check the trigger expression, and execute different branches according to different conditions, all of which are not satisfied to execute the default (default) branch.
- condition node is usually the basic logical element of the check expression in the behavior tree, which is used to execute the condition judgment and return the judgment result. It returns success or failure depending on whether the condition is true.
- Conditional nodes never return a running state.
- conditional node may also be included in a function block node.
- conditional nodes can also be used as a single type of node.
- Function block nodes are used to execute commands and implement business operations in the workflow. Typically, success is returned if the operation completed correctly, and failure is returned if the operation failed. Returns running while the operation is in progress.
- the function block nodes include logic nodes, and may also include some specific types of function block nodes, such as manual (Manual) nodes, dynamic (Dynamic) nodes, delay (Delay) nodes, and idle (Empty ( idle)) some or all of the nodes.
- dynamic node is used to dynamically inject node instance at runtime.
- the manual node represents a manual step, stop at the current node before obtaining the confirmation signal, and exit after obtaining the confirmation signal.
- Delay node means to exit the current node after a specified time delay.
- An idle node means no operation is performed, a placeholder, and can be replaced by any function block node.
- each logical node may correspond to an operation template
- each operation template predefines operations that at least one type of resource (such as a collaborative robot or a device such as a PLC) can perform.
- the operations may include: actions, methods or skills.
- each operation template may consist of an interface part and an implementation part.
- the implementation part can be an application (for example, a containerized application) that contains functional code and runtime dependencies.
- the application program can run independently and be exposed to the outside world through a specific network communication interface.
- the interface part may be a logical node presented as a graphical element, that is, it can be dragged and dropped, connected and configured in a graphical user interface like other behavior tree nodes.
- each logical node may have a parameter panel for configuring parameters of the logical node, such as input and output parameters. Of course, these input and output parameters can also be preset with default values.
- Each logical node can be configured and executed individually.
- the user-configured input for the logical node is read and transferred to the implementation part of the action template, the corresponding application.
- the result of the operation such as the transformed model will be converted back to the output of the logical node.
- the interface part and implementation part of each operation template can be stored separately.
- the interface part that is, the logical node
- its implementation part may be stored in a node service module, which may be called a runtime (Runtime) in this embodiment.
- the node service module can be located in a server or locally.
- the above-mentioned logical nodes follow an information model for runtime interaction with the main controller.
- the standardization of communication between the OT domain workflow and the main controllers of various OT devices is realized.
- these physical devices, personnel, and virtualized noun resources are collectively referred to as resources in this article, and these resources usually refer to resources that can execute workflows on site as the main body of each operation.
- the resource as the main body of operation can be used as a common configuration parameter of the function block node to configure the corresponding resource for the required function block node when creating the behavior tree; or, when creating the function block node, set the function Block nodes are configured with resources as the subject of operation execution, so that when creating a behavior tree, it is not necessary to configure resources for the required function block nodes.
- these resources can also be represented in the form of resource nodes, and these resource nodes can be stored in the form of resource knowledge graphs.
- the resource knowledge graph includes: various resource nodes, and connections representing relationships among resource nodes. For example, an example diagram of a resource knowledge graph in an example is shown in FIG. 1B . As shown in FIG.
- the resource knowledge graph is a factory resource knowledge graph, which describes the real system configuration of a factory.
- the factory (F, Factory) node has an industrial computer (IPC) node
- the industrial computer (IPC) node has a collaborative robot (CR, Cooperative Robot) node, a PLC node and a bar code scanner (BCS, Bar Code Scanner) node.
- the collaborative robot (CR, Cooperative Robot) node has a gripper (CJ, Clamping Jaw) node, a torque wrench (TW, Torque Wrench) node and a camera (CA, Camera) node
- the PLC node has a button (B, Button) node and LED warning light nodes.
- there may be more than one type of equipment such as a collaborative robot, and each equipment of this type of equipment can be distinguished by a label or model, which will not be repeated here.
- Each function block node can be associated with a resource node, and the function block node can be instantiated as an operation of the corresponding resource.
- a logical node can be instantiated as an operation of a corresponding device by associating a device resource node.
- a resource header may be set for the function block node, and resources associated with the function block node will be displayed in the resource header.
- each resource node can be associated with a corresponding function block node in advance, so that when creating a behavior tree, the function block node associated with the corresponding resource can be directly pulled, and there is no need for temporary configuration.
- FIG. 1C shows an example diagram in which each resource node is associated with a function block node. As shown in FIG. 1C , for the resources shown in the resource knowledge graph shown in FIG. 1B , corresponding function block nodes are respectively associated.
- the industrial computer (IPC) node is associated with a button (PB, Press Button) node and a dialog box (DDB, Display Dialog Box on Screen) node;
- the collaborative robot (CR, Cooperative Robot) node is associated with a linear movement (LM, Linear Move) nodes and joint movement (SM, Shutdown Mobile) nodes;
- PLC nodes are associated with read I/O (RIO, Read I/O) nodes and write I/O (WIO, Write I/O) nodes;
- the bar code scanner (BCS, Bar Code Scanner) node is associated with the scanning bar code (SBC, Scan Bar Code) node;
- the clamping jaw (CJ, Clamping Jaw) node is associated with the open (O, Open) node and the grabbing (Gr, Grab) node Node;
- torque wrench (TW, Torque Wrench) node is associated with twist (T, Twist) node;
- camera (CA, Camera) node is associated with registration (R
- resource nodes may not be pre-associated with function block nodes, but corresponding resource nodes may be associated with required function block nodes when the behavior tree is created.
- function block nodes associated with resource nodes (which may be called dedicated function block nodes) and function block nodes not associated with resource nodes (which may be called general function block nodes).
- resource nodes which may be called dedicated function block nodes
- function block nodes not associated with resource nodes which may be called general function block nodes.
- this embodiment may further include the following decorator nodes:
- Decorator nodes are mainly used to decorate function block nodes driven by compositor nodes, for example, can be used to decide whether a branch or even a single node in a behavior tree can be executed.
- Negative node which can have a child node, used to negate the child node. If the child node fails, it returns success; if the child node succeeds, it returns failure.
- a mandatory failure node which can have a child node (such as a function block node), regardless of whether its child node is successful or not, the node will always return failure.
- a repeated node which may have a child node (such as a function block node), can repeatedly execute its child node for a fixed number of times.
- a retry node which can have a child node (such as a function block node), can trigger its child node up to N times, if its child node returns failure, retry and the number of times will be reduced by one, when the number of retries is zero , returns success; if the child node returns success, break the loop and also return success.
- N is a positive integer.
- a one-time node which may have a child node, means that its child node is only executed once in the workflow, and will not be executed until the workflow is restarted.
- a timeout node which may have a child node, which is used to time the execution time of its child nodes (such as function block nodes), and exit execution when the specified time exceeds (even if the execution is not completed).
- a timer node which may have a child node, executes its child node (such as a function block node) after the specified time is reached.
- a monitoring node which may have at least one child node, and is used to monitor the status of all its child nodes. When any child node executes incorrectly, an error will be reported. When all child nodes are normal, it returns normal.
- a decorator node may also be contained within a flow control node. That is, flow control nodes may include: all or part of main control nodes, synthesizer nodes, and decorator nodes.
- each behavior tree node can be listed on the graphical user interface in the form of an icon, and the user can determine the node needed to create a workflow by selecting and dragging the icon to add to the canvas.
- the node performs necessary parameter configuration, such as resource configuration and/or input and output parameter configuration.
- the behavior tree corresponding to the workflow can include multiple function block nodes.
- the behavior tree of the corresponding workflow is finally generated by performing corresponding discharge connections on the dragged nodes. That is, the behavior tree construction operation includes adding and connecting the nodes of the behavior tree.
- an operation of associating resources for the added function block nodes may also be included. In addition, it may also include: configuration operations on the input and output parameters of the behavior tree nodes.
- Step S12 in response to the construction operation of the behavior tree, generate a behavior tree corresponding to a workflow, and the logical nodes in the behavior tree are instantiated as operations of corresponding equipment.
- each behavior tree node may be instantiated in response to the construction operation of the behavior tree, and a connection relationship between each instantiated behavior tree node may be established. For example, by performing this step, the added logical node can be instantiated as an operation of the corresponding device. Then, based on the connection relationship between the instantiated behavior tree nodes, a behavior tree corresponding to a workflow is generated.
- the aforementioned behavior tree nodes may be stored in a node library.
- the node library may further include a workflow (WF, WorkFlow) node and a sub-workflow (SWF, SubWorkFlow) node.
- FIG. 2A shows a schematic diagram of constructing a behavior tree of a work unit of a quality inspection production line in an example.
- FIG. 2B to FIG. 2S respectively show schematic diagrams of partial behavior trees constructed in an example.
- this embodiment may further include the following step S13 as shown by the dotted line in FIG. 1 .
- Step S13 analyzing the behavior tree, and deploying the workflow corresponding to the behavior tree to the runtime of the corresponding work unit, so that each resource in the work unit performs operations according to the workflow.
- the work unit may have a main controller, and in this case, the runtime may be located on the work unit's main controller.
- the equipment resources in the resources can be connected to the main controller, and the main controller can control the equipment resources connected to it to perform corresponding operations according to the runtime workflow; the human resources in the resources can be directly based on the running The workflow at the time prompts you to perform the appropriate action.
- the behavior tree can be stored in a Markup markup language such as XML (Extensible Markup Language), and can be verified by an XML Schema (XSD) prototype to verify that the XML format of the behavior tree is correct.
- XML Extensible Markup Language
- XSD XML Schema
- the OT domain usually refers to operational technology (Operational Technology, OT), which integrates hardware and software, and detects or triggers processes in the enterprise by directly monitoring and/or controlling physical devices (called OT devices). changes or events.
- OT utilizes computers to monitor or change physical conditions such as industrial control systems (Industrial Control System, ICS).
- ICS Industrial Control System
- the industrial control system is based on computer-implemented facilities, systems, and equipment for remote monitoring and/or control of key industrial processes to achieve physical functions.
- the word "OT” is used to distinguish industrial control systems from traditional information technology (Information Technology, IT) systems in terms of technical implementation and functions.
- the above workflow creation method in this embodiment can be used in this OT domain as a low-code development method in the OT domain.
- the workflow creation method shown in FIG. 1A can be implemented in an OT domain, such as an OT domain low-code development platform.
- the workflow can be an OT domain workflow; the work unit can be an OT domain workflow.
- a working unit; the device may be an OT device.
- OT devices may include, but are not limited to: Internet of Things (IoT) devices, Programmable Logic Controllers (PLC), Robotics, Manual Process, Industrial Computers (Industrial Personal Computer, IPC) and so on.
- the above-mentioned workflow creation method in this embodiment can be used in this ITOT system as a low-code development method in the OT domain that can be integrated with the IT domain.
- the workflow creation method shown in Figure 1A can be implemented on an OT domain such as an OT domain low-code development platform, and correspondingly, the workflow can be an OT domain workflow; the work unit can be a work in the OT domain unit.
- it may further include: generating a microservice based on the behavior tree, so that an IT device can call the microservice
- the runtime execution of the master controller of the work unit is triggered to execute the OT domain workflow.
- the IT equipment can call the microservice directly or through a knowledge center.
- an API of the microservice may be generated based on the behavior tree.
- the processing procedure in the API includes each operation in the OT domain workflow
- the input parameter of the API is the parameter obtained from the input port of the OT domain workflow
- the output parameter of the API is the Parameters output by the output port of the OT domain workflow.
- the specific implementation methods include but are not limited to the following two:
- the code developers in the OT domain can notify the code developers in the IT domain of the names and IP addresses of the generated microservices. In this way, the code developers in the IT domain can directly assign the The information is written into the code, so that the IT equipment can call the microservice.
- Method 1 is more suitable for scenarios with a small number of microservices.
- each microservice is registered on the knowledge center platform, so that an IT domain code development tool realizes that IT equipment discovers the connected microservices through the knowledge center platform.
- an IT domain code development tool can be used to realize the connected microservices discovered by the IT domain equipment through the knowledge center through code development.
- the device that completes microservice registration can be an OT domain microservice generator or a third-party device.
- the third-party device can be regarded as a part of the OT domain low-code development platform, or implemented in the knowledge center platform.
- Method 2 is more suitable for scenarios with a large number of microservices.
- IT equipment may include, but not limited to: Manufacturing Operation Management (MOM) system, Manufacturing Execution System (MES), Enterprise Resource Planning (Enterprise Resource Planning, ERP) system, enterprise service Bus (Enterprise Service Bus, ERP), Product Lifecycle Management (Product Lifecycle Management, PLM) system, etc.
- MOM Manufacturing Operation Management
- MES Manufacturing Execution System
- ERP Enterprise Resource Planning
- ERP enterprise Resource Planning
- ERP enterprise Service Bus
- PLM Product Lifecycle Management
- the IT domain code development tool can be programmed to realize that IT equipment invokes microservices through a knowledge platform to trigger the runtime execution of the OT domain workflow of the main controller of the work unit, thereby realizing the code development of the IT domain
- the platform controls the process of the OT domain, which realizes the integration of the IT domain and the OT domain.
- the microservice is automatically generated by the OT domain microservice generator based on the OT domain behavior tree. It is not necessary for the code development tools of the IT domain to understand the details of the OT domain workflow. It only needs to obtain the identification (such as: name) and IP address of the microservice That is, developers in the IT domain do not need to understand OT domain devices and control processes, and are easy to implement and understand.
- the applicable fields of the embodiments of the present application include but are not limited to: Industrial Automation, Logistics, Laboratory, Maritime, Smart Grid, Electric Vehicle Infrastructure Vehicle Infrastructure), Electric Vehicle, Building Automation, Smart City, Water Treatment, Garbage Recycling and Smart Farm, etc.
- the workflow creation method in the embodiment of the present application has been described in detail above, and the workflow creation system in the embodiment of the present application will be described in detail below.
- the workflow creation system in the embodiment of the present application can be used to implement the workflow creation method in the embodiment of the present application.
- For the details not disclosed in the system embodiment of the present invention please refer to the corresponding description in the method embodiment of the present invention, here I won't repeat them one by one.
- Fig. 3 shows a schematic structural diagram of a workflow creation system in the embodiment of the present application.
- the system may include: a node library 110, a graphical interface module 120 and an editing processing module 130.
- the node library 110 is provided with behavior tree nodes for constructing behavior trees; the behavior tree nodes may include: flow control nodes and function block nodes.
- a behavior tree is used to represent a workflow, and the workflow is used to define an operation to be performed by a work unit.
- the flow control node is used to realize the logic control in the workflow;
- the function block node is used to realize the business operation in the workflow, and
- the function block node may include: logic nodes, each logic node corresponds to an operation template, each The operation template predefines at least one type of operations that can be performed by resources such as equipment, and the operations include actions, methods or skills.
- the resources are represented in the form of resource nodes, and all resource nodes are associated and stored in the form of a resource knowledge graph; the resource knowledge graph includes: each resource node, and a connection representing the relationship between the resource nodes.
- this embodiment may further include: a resource library 150, configured to store various resources in the form of a resource knowledge graph, and each resource can perform at least one business operation.
- the flow control node may include: some or all of the main control node, logical control node and condition node; the main control node may include: a start node, an end node, a go node, a key node , stop node, abort some or all of the nodes.
- the logic control nodes include: some or all of sequence nodes, reactive sequence nodes, parallel nodes, intra-process quality control nodes, priority nodes, reactive priority nodes, condition judgment nodes, and multi-branch selection nodes.
- the function block nodes may further include: some or all of manual nodes, dynamic nodes, delay nodes, and idle nodes.
- the behavior tree node further includes: a decorator node, which may include: a repeat node, a retry node, a one-off node, a timeout node, a timer node, a negate node, a forced run node, and a forced success Some or all of nodes, force-fail nodes, and monitor nodes.
- a decorator node which may include: a repeat node, a retry node, a one-off node, a timeout node, a timer node, a negate node, a forced run node, and a forced success
- some or all of the function block nodes in the node library 110 are respectively bound with resources for executing the service operations corresponding to the function block nodes.
- the graphical interface module 120 is configured to provide a graphical user interface GUI for the user to construct a behavior tree based on the behavior tree nodes in the node library.
- each behavior tree node can be listed on the graphical user interface GUI in the form of an icon.
- the editing processing module 130 is configured to generate a behavior tree corresponding to a workflow in response to the construction operation of the behavior tree, and the logical nodes in the behavior tree are instantiated as operations corresponding to resources such as equipment.
- the editing processing module 130 can respond to the construction operation of the behavior tree, instantiate each behavior tree node, and establish the connection relationship between each instantiated behavior tree node; based on the instantiated behavior tree
- the connection relationship between nodes generates a behavior tree corresponding to a workflow.
- some or all of the instantiated function block nodes are associated with resources for executing corresponding business operations. For example, through this operation, a logical node is instantiated as an operation corresponding to a resource such as a device.
- each behavior tree node can be listed on the graphical user interface in the form of an icon, and the user can determine the node needed to create a workflow by selecting and dragging the icon onto the canvas, and further, the node can also be Perform necessary parameter configuration, such as resource configuration and/or input/output parameter configuration.
- the behavior tree corresponding to the workflow can include multiple logical nodes, and the corresponding The flow control node, through the corresponding discharge connection of the dragged nodes, finally generates the behavior tree corresponding to the workflow.
- the construction operation may include: an operation of adding a function block node and an operation of associating resources with the added function block node.
- the workflow creation system in this embodiment may further include: a parsing and deployment module 140 configured to parse the behavior tree, and deploy the workflow corresponding to the behavior tree to the corresponding The running time of the main controller of the work unit, so that each resource in the work unit connected to the main controller performs operations according to the workflow.
- a parsing and deployment module 140 configured to parse the behavior tree, and deploy the workflow corresponding to the behavior tree to the corresponding The running time of the main controller of the work unit, so that each resource in the work unit connected to the main controller performs operations according to the workflow.
- FIG. 4A shows an OT domain low-code development platform 100 provided by an embodiment of the present application, and the platform 100 can be used to implement the workflow creation system shown in FIG. 3 .
- the OT domain low-code development platform 100 may include:
- An OT domain low-code development tool 10 the OT domain low-code development tool 10 can be configured to implement the graphical interface module 120 and the editing processing module 130 in the workflow creation system shown in FIG.
- the parse deployment module 140 in the workflow creation system is shown.
- the node library 110 in the workflow creation system shown in FIG. 3 can be stored in a memory.
- the OT domain low-code development platform 100 may also include the runtime 30 of the main controller of the above-mentioned working unit.
- the OT domain low-code development tool 10 can deploy the OT domain workflow corresponding to the generated behavior tree to the runtime 30 of the main controller of the work unit, so that each OT in the work unit connected to the main controller The device performs operations according to the OT domain workflow.
- the composition of the OT domain low-code development platform 100 shown in FIG. 4A and FIG. 4B only involves the OT domain.
- the integration of the IT domain and the OT domain has become increasingly important for the digital transformation of enterprises. What needs to be realized is how the enterprise can control the processes in the OT domain in an understandable and non-IT programming way.
- the OT domain low-code development platform 100 shown in FIG. 4C solves how to control the flow of the OT domain through the code development platform 300 of the IT domain.
- the OT domain low-code development platform 100 may further include an OT domain microservice generator 20 , which can generate microservices 40 based on the OT domain behavior tree.
- the IT domain code development tool 301 can be programmed to enable the IT device to call the microservice 40 through a knowledge center 200 to trigger the runtime 30 of the main controller of the work unit to execute the OT domain workflow.
- the code development platform 300 of the IT domain can control the process of the OT domain, that is, the integration of the IT domain and the OT domain is realized.
- the microservice 40 is automatically generated by the OT domain microservice generator 20 based on the OT domain behavior tree. It is not necessary for the code development tool 301 in the IT domain to understand the details of the OT domain workflow. It only needs to obtain the identification of the microservice 40 (for example: name ) and IP address, it is not necessary for IT domain developers to understand OT domain devices and control processes, and it is easy to implement and understand.
- the code developers in the OT domain can notify the code developers in the IT domain of the names and IP addresses of the generated microservices 40, so that the code developers in the IT domain can directly assign the microservices 40 to The information of 40 is written into the code, so as to implement the call of the IT equipment to the microservice 40.
- Method 1 is more suitable for scenarios with a small number of microservices.
- each microservice 40 can be registered on the knowledge center 200 , so that the IT domain code development tool 301 can realize the connected microservice 40 through the knowledge center 200 by the IT domain equipment through code development.
- the device for completing the registration of the microservice 40 may be the OT domain microservice generator 20 or a third-party device 50 as shown in FIG. 4D .
- the third-party device 50 can be regarded as a part of the low-code development platform 100 in the OT domain, or implemented in the knowledge center 200 .
- Method 2 is more suitable for scenarios with a large number of microservices. By registering microservices on the knowledge center platform, it is more effective to realize the calling of microservices by IT equipment, and strengthen the integration of OT domain and IT domain.
- the OT domain microservice generator 20 can generate the API of the microservice 40 based on the OT domain behavior tree, wherein, the processing procedure in the API can include the operation of each functional block in the OT domain workflow, and the input parameter of the API is OT
- the parameters obtained by the input port of the domain workflow, and the output parameters of the API are the parameters output by the output port of the OT domain workflow.
- FIG. 4E An application scenario of the OT domain low-code development platform 100 provided in the embodiment of the present application in the field of industrial automation is shown in FIG. 4E .
- the low-code development tool 10 generates a behavior tree corresponding to the OT domain workflow under the operation of the user, and the OT domain workflow defines the operations to be performed by the production line as a work unit shown on the right side of FIG. 4E .
- the corresponding workflow is generated and published to the runtime 30, so that the runtime 30 controls the completion of the production line operation of the work unit; at the same time, the corresponding microservice can be generated by the microservice generator 20 based on the behavior tree and registered in The knowledge center 200, so that the code development tool 301 in the IT domain can call the corresponding microservice through the knowledge center 200.
- the user can edit each node including the function block node by dragging and dropping to edit the behavior tree of the OT domain. Data (for example: workpiece processing parameters), control the operation of the entire work unit.
- the working unit here is a production line, which includes machines, conveyor belts, robotic arms, people, PLC, AGB, etc.
- the code development tool 301 of the IT domain can also be located on the same hardware device as the low-code development tool 10 , for example, on the same computer.
- FIG. 5 shows a schematic structural diagram of another workflow creation system provided by the embodiment of the present application.
- the system can be used to implement the method shown in Fig. 1A, or realize the workflow creation system shown in Fig. 3, or realize the workflow creation system described in any one of Fig. 4A to Fig. 4D , that is, the low-code development platform 100 in the OT domain.
- the aforementioned OT domain low-code development tool 10, OT domain microservice generator 20, runtime 30, and third-party device 60 can all be implemented as individual hardware devices, such as servers, workstations, single-chip microcomputers or processing chips.
- these devices are implemented on the same hardware device, which is stored in at least one memory as a software program, and is called by at least one processor to implement the aforementioned OT domain low-code development method.
- the node library 110 and each generated microservice 40 may be stored in at least one memory.
- the system may include: at least one memory 51 , at least one processor 52 and at least one display 53 .
- some other components may also be included, such as a communication port (not shown in FIG. 5 ) and the like. These components communicate via bus 54 .
- At least one memory 51 is used to store computer programs.
- At least one memory 51 may include computer readable media such as random access memory (RAM).
- at least one memory 51 can also store an operating system and the like.
- the operating system includes but is not limited to: Android operating system, Symbian operating system, Windows operating system, Linux operating system and so on.
- the above computer stored program may include the following program modules: node library 110, graphical interface module 120, editing and processing module 130, parsing and deployment module 140, optionally, may also include OT domain microservice generator 20, runtime 30, third-party device 50.
- At least one processor 52 is configured to invoke a computer program stored in at least one memory 51 to execute the workflow creation method described in the embodiment of the present application.
- At least one processor 52 may be a microprocessor, an application specific integrated circuit (ASIC), a digital signal processor (DSP), a central processing unit (CPU), a graphics processing unit (GPU), a state machine, or the like. It can receive and send data through the communication port.
- ASIC application specific integrated circuit
- DSP digital signal processor
- CPU central processing unit
- GPU graphics processing unit
- state machine or the like. It can receive and send data through the communication port.
- At least one display 53 is used to display a graphical user interface.
- At least one processor 52 is configured to invoke a computer program stored in at least one memory 51 to enable the system to execute the operations in the workflow creation method in any of the foregoing implementation manners.
- the communication interface is used to implement communication with other devices, such as communication with the knowledge center 200 .
- the OT domain low-code development tool 10 used to implement the graphical interface module 120, the editing processing module 130, and the parsing and deployment module 140 can be a lightweight web-based application program, which can be used in industrial sites (such as edge device or local server), or in the cloud (public cloud such as AWS or private cloud such as OpenStack). Its visual engineering paradigm is derived from the Function Block Typed Diagram (FBTD).
- FBTD Function Block Typed Diagram
- the OT domain microservice generator 20 can use modern translation programming languages to generate standard APIs such as RESTful or RPC.
- Runtime 30 can easily implement OT domain workflow and provide openness based on the ecosystem of open source communities (such as Python).
- the runtime 30 can be deployed on an embedded IoT device such as a single board computer (Single Board Computer, SBC).
- the embodiment of the present application may include an apparatus having an architecture different from that shown in FIG. 5 .
- the above architecture is only exemplary, and is used to explain the workflow construction method provided by the embodiment of the present application.
- the embodiment of the present application also provides an IT domain OT domain integration system, that is, an ITOT system, which may include IT equipment and the workflow creation system in any implementation manner of the present application.
- an ITOT system which may include IT equipment and the workflow creation system in any implementation manner of the present application.
- it may further include: a code development platform 300 in the IT domain as shown in FIG. 4C and FIG. 4D .
- FIG. 6 is an exemplary flowchart of a workflow control method provided by various embodiments of the present application.
- the method 600 includes:
- Step 601 Determine the type of synthesizer node based on the user's operation on the graphical user interface.
- the synthesizer node includes a start block adapted to start executing the synthesizer node, an end block adapted to end the execution of the synthesizer node, and arranged in A plurality of working links between the start block and the end block.
- Step 602 Based on the type of the combiner node, determine the target working link from the plurality of working links.
- Step 603 Based on the purpose work link, control the logic of the workflow, wherein the workflow is generated based on the behavior tree including the combiner node.
- Synthesizer nodes are always paired with a start block and an end block.
- the start block has an optional input port to provide a synthesizer expression so that the target working link can be selected based on the synthesizer expression. For example, the target working link is selected according to the value of the combiner expression, or the target working link is selected based on the working link selection rule defined by the combiner expression.
- the end block has an optional input port called the end logical value, which is used by parallel type synthesizer nodes to determine whether it is a logical AND (AND) or a logical OR (OR).
- a set of synthesizer pair blocks can contain two or more working links (ie branches).
- a Data Value Block (DVB, Data Value Block) is attached before each working link in the synthesizer pair block, representing the trigger value of the synthesizer expression of the corresponding working link.
- the data value block may be a value generated by the corresponding working link based on a synthesizer expression and used to select the corresponding working link.
- a block of data values may also be a condition for selecting a corresponding working link, wherein the condition is related to a value generated based on a synthesizer expression.
- At least one working link in the plurality of working links includes a function block node, and the function block node is used to realize the service operation in the workflow.
- the determining the type of the synthesizer node based on the user's operation on the graphical user interface includes: determining the type of the synthesizer node based on the user's selection operation on the graphical user interface containing the node library,
- the node library includes: a synthesizer node that identifies types in a semantic manner or a synthesizer node that identifies types in a presentation style.
- the type of the synthesizer node is directly identified in a textual manner in the icon of the synthesizer node that has a visual effect.
- different presentation styles are used to identify the type of the synthesizer node accordingly, for example, in the icon of the synthesizer node, different line types (for example, Solid line, dotted line, spaced line, etc.) to identify the type of synthesizer node accordingly.
- it also includes: receiving the user's construction operation of the behavior tree on the graphical user interface; wherein, the construction operation includes the addition and connection operation of the behavior tree node, and the behavior tree node Including the synthesizer node and the function block node; the behavior tree is used to characterize the workflow, and the workflow is used to define the operation to be performed by a work unit; the function block node includes: a logic node, each Each logical node corresponds to an operation template, and each operation template predefines at least one type of operation that can be performed by a device, and the operation includes: action, method or skill; in response to the construction operation of the behavior tree, generate a corresponding workflow The behavior tree, wherein the logical nodes in the behavior tree are instantiated as the operation of the corresponding device; the behavior tree is parsed to obtain the workflow; the workflow is deployed to the corresponding work unit At runtime, each device in the work unit performs operations according to the workflow; wherein the workflow is an OT domain workflow; and the device is
- the method further includes: generating a microservice based on the behavior tree, so that the IT device triggers the runtime of the main controller of the work unit to execute the OT domain workflow by invoking the microservice .
- FIG. 7A is a first schematic diagram of a low-code example of an FBTD logic synthesizer provided by various embodiments of the present application.
- the synthesizer node 70 includes a start block 71 , an end block 72 and 3 working links arranged between the start block 71 and the end block 72 .
- the first working link includes the executive function block node 73
- the second working link includes the executive function block node 74
- the third working link includes the executive function block node 75 .
- the start block 71 may contain an input for providing a composite expression 76
- the end block 72 may contain an input for providing an end logical value 77 .
- Each function block node 73 , function block node 74 and function block node 75 has its own data value block.
- the data value block 78 of the function block node 73, the data value block 79 of the function block node 74 and the data value block 80 of the function block node 75 may be arranged before the respective corresponding function block nodes.
- the type of combiner node 70 is parallel selection (Pa, Parallel); Determining the destination working link from the plurality of working links includes: combining each working link in the plurality of working links All roads are determined as the target working link, and start to execute the target working link; the method also includes: receiving the end logic value through the input terminal of the end block; wherein when the end logic value is logic and, the plurality of working links When all executions are completed, the execution of the synthesizer node is terminated through the end block; when the end logic value is logical or, when at least one of the multiple working links appears to be executed, the execution of the synthesis is terminated through the end block server node.
- the synthesizer node 70 when the type of synthesizer node 70 is parallel selection, there is no need to provide the synthesizer node 70 with a synthesized expression 76, correspondingly there is no need to generate synthesized data value blocks 78-80, and it is necessary for the synthesizer node 70 provides an end logical value 77 .
- the first working link, the second working link and the third working link are all determined as the target working links.
- the first working link, the second working link and the third working link are executed respectively (i.e.
- the value of 77 determines when to stop executing the compositor node 70.
- the value of the end logical value 77 provided is logic AND, when the first working link, the second working link and the third working link are all executed, the execution of the synthesis is ended via the ending block 72 Device node 70; when the value of the end logic value 77 is logical or, at least one working link in the first working link, the second working link and the third working link occurs when the execution is completed, via the end Block 72 ends execution of combiner node 70 .
- the type of the synthesizer node is multi-branch selection (SW, Switch), and the method further includes: receiving a preset synthesis expression through the input terminal of the start block; Determining the target working link in the working link includes: determining the data value block when each working link is selected; based on the calculation result of the composite expression, selecting the corresponding data value from the plurality of working links The destination working link of the value block.
- SW multi-branch selection
- a combined expression 76 needs to be provided, and correspondingly, the combined data value blocks 78-80 need to be generated or manually provided based on the combined expression 76, but there is no need to An end logical value of 77 is provided.
- the data value block is a condition for selecting a corresponding working link, wherein the data value block 78 is: "the temperature is greater than 30 degrees and less than 50 degrees"; the data value block 79 is: “the temperature is greater than 50 degrees”; the data The value block 80 is: “the temperature is 30 degrees lower”. Then, based on the specific temperature generated by the composite expression, the specific branch corresponding to the numerical block can be selected. For example, when the generated temperature is 20 degrees, the third working link corresponding to the data value block 80 is selected.
- the type of the synthesizer node is a conditional judgment (ITE, If-Then-Else)
- the method further includes: receiving a preset synthesis expression via the input terminal of the start block, the synthesis The result of the expression contains a logical true value or a logical false value; the determining the target working link from the plurality of working links includes: based on the result of the composite expression being a logical true value or a logical false value, from A corresponding destination working link is determined among the plurality of working links.
- a preset working link corresponding to the logical value is selected.
- the method further includes: receiving a preset synthesis expression via the input terminal of the start block; Determining the target working link among the plurality of working links includes: calculating the data value block of each working link based on the composite expression; based on the sorting result of the data value block of each working link, determining the A priority order of the plurality of working links; based on the priority order, the target working link is determined from the plurality of working links.
- the data value block may be a value generated by the corresponding working link based on the synthesizer expression and used to select the corresponding working link.
- the data value block 78, data value block 79, and data value block 80 generated based on the synthesizer expression may be different (for example, the parameter difference of each execution link), at this time based on the data of each working link
- the priority order of the plurality of working links is determined; based on the priority order, the target working link is determined from the plurality of working links, wherein based on the preset, the data
- the sorting result of the value block can be sorted from largest to smallest or from smallest to largest, and so on. For example, in FIG. 7A , when the type of the combiner node 70 is priority, a combination expression 76 needs to be provided.
- the data value block generated by the first link based on the composite expression 76 is 15; assume that the data value block 78 generated by the first link based on the composite expression 76 is 18, and the second link is based on the composite expression The data value block 79 generated by the expression 76 is 20; the data value block 80 generated by the third link based on the composite expression 76 is 25.
- the type of the synthesizer node is Reactive Priority (RPr, Reactive Priority (Fallback)
- the method further includes: receiving the first synthesized expression and the second synthesized expression via the input of the start block Composite expression; determining the target working link from the plurality of working links includes: calculating the first data value block of each working link based on the first composite expression; based on the second composite The expression calculates the second data value block of each working link; based on the sorting result of the first data value block of the plurality of working links, the priority order of the plurality of working links is determined; based on the priority determining the target working link from the plurality of working links according to the level order and the second data value block of each working link.
- RPr Reactive Priority
- Fallback Reactive Priority
- FIG. 7A in the icon with visual effects of the synthesizer node, the type of the synthesizer node can be directly identified by text (for example, in the box of the start block 71 and the end block 72, the type of the synthesizer node can be identified in text form type).
- FIG. 7B is a second schematic diagram of a low-code example of the FBTD logic synthesizer provided by various embodiments of the present application.
- the start block 71 and the end block 72 are briefly identified by spaced lines with specific shapes, so that the types of synthesizer nodes can be visually identified and the display resources of the canvas can be saved.
- the synthesizer node described above is easy to understand, but only works with a limited number of branches. Therefore, the embodiment of the present invention also introduces a new synthesizer node paradigm, which can support a large number of branches.
- the folded synthesizer has similar functionality to the normal synthesizer, but supports folding.
- the synthesizer node is displayed in a folded manner in a collapsible box on the graphical user interface, wherein the collapsible frame includes a first display area adapted to display the The currently displayed working links of the above-mentioned synthesizer nodes and hide the working links except the currently displayed working links.
- the folding box further includes a second display area, a third display area, and a switching control; wherein the second display area is adapted to display the data value blocks of the currently displayed working link; the The third display area is adapted to display the label of the currently displayed working link; the switching control is adapted to switch the currently displayed working link among the plurality of working links.
- FIG. 7C is a schematic diagram of a low-code example of a synthesizer with folded FBTD logic provided by various embodiments of the present application.
- the first display area 88, the second display area 83, and the third display area 81 are included in the folding frame 90, wherein the first display area 88 displays a current display working link, and the current display working link includes Function block node 85 and function block node 86 .
- the data value blocks of the currently displayed working link are displayed in the second display area 83 .
- the label of the currently displayed working link is displayed in the third display area 81 .
- the folding box 90 also includes a switching control 84 (for example, in the shape of an arrow) for switching the currently displayed working link among the plurality of working links.
- the first display area 88 is preferably stretchable based on the length of the currently displayed active link contained therein.
- folding synthesizers are another type of low-code paradigm for FBTD synthesizers.
- Data value blocks for synthesizer expression results can be in a new column in the header row. Also, there are left and right arrow buttons to switch between different branches.
- the data value block for the current branch is displayed in the Data Value Block column.
- the current label of the current branch of the compositor will be displayed in the work order label index block.
- the size of the folded synthesizer can be stretched for different numbers of functional blocks, and this paradigm provides a convenient way to display complex logic in a limited area of the low-code canvas.
- FIG. 8 is an exemplary structural diagram of a workflow control device provided by various embodiments of the present application.
- the workflow control apparatus 800 includes: a first determining module 801 configured to determine the type of a synthesizer node based on the user's operation on the graphical user interface, and the synthesizer node includes a function adapted to start executing the synthesizer node.
- the first determination module 801 is configured to determine the type of the synthesizer node based on the user's selection operation on the graphical user interface containing the node library, wherein the node library contains: semantically A synthesizer node that identifies a type or a synthesizer node that identifies a type with a rendering style.
- At least one working link in the plurality of working links includes a function block node, and the function block node is used to realize the business operation in the workflow;
- the first determining module 801 It is configured to receive the construction operation of the behavior tree performed by the user on the graphical user interface; wherein the construction operation includes the addition and connection operation of the behavior tree node, and the behavior tree node includes the synthesizer node and the function block node; the behavior tree is used to represent the workflow, and the workflow is used to define the operation to be performed by a work unit;
- the function block node includes: logical nodes, each logical node corresponds to an operation A template, each operation template predefines at least one type of operations that can be performed by equipment, and the operations include: actions, methods or skills; in response to the construction operation of the behavior tree, generating the behavior tree corresponding to the workflow, Wherein the logical node in the behavior tree is instantiated as the operation of the corresponding device; the behavior tree is parsed to obtain the workflow; the workflow is
- the embodiment of the present application also provides a computer-readable storage medium, the computer-readable storage medium stores computer-readable codes, and when the computer-readable codes are executed by the processor, the processor executes the aforementioned workflow construction methods and workflow control methods.
- an embodiment of the present application further provides a computer program product, the computer program product is tangibly stored on a computer-readable medium and includes computer-readable instructions, and when executed, the computer-readable instructions cause at least one processing The controller executes the steps in the workflow creation method and the workflow control method in the embodiment of the present application.
- the embodiment of the present application also proposes a workflow creation system, which has a system structure similar to that described in FIG.
- the system may include: at least one memory 51 , at least one processor 52 and at least one display 53 .
- At least one processor 52 is configured to invoke a computer program stored in at least one memory 51 to execute the workflow control method described in the embodiment of the present application.
- a system or device equipped with a storage medium may be provided, on which computer-readable codes for realizing the functions of any implementation manner in the above-mentioned embodiments are stored, and the computer (or CPU or The MPU) reads and executes the computer readable codes stored in the storage medium.
- the computer or CPU or The MPU
- some or all of the actual operations can also be completed by an operating system or the like operating on the computer through instructions based on computer readable codes.
- examples of computer-readable media include but are not limited to floppy disks, CD-ROMs, magnetic disks, optical disks (such as CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-RAM, DVD-RW , DVD+RW), memory chips, ROM, RAM, ASIC, configured processor, all-optical media, all tape or other magnetic media, or any other media from which a computer processor can read instructions.
- various other forms of computer-readable media can transmit or carry instructions to the computer, including routers, private or public networks, or other wired and wireless transmission devices or channels, such as downloading from a server computer or cloud by a communication network computer readable instructions. Instructions may include code in any computer programming language, including C, C++, C++, Visual Basic, java, and JavaScript.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Human Resources & Organizations (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Development Economics (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Automation & Control Theory (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
| S11~S13 | 工作流创建方法中的步骤 |
| 110 | 节点库 |
| 120 | 图形界面模块 |
| 130 | 编辑处理模块 |
| 140 | 解析部署模块 |
| 100 | OT域低代码开发平台 |
| 10 | OT域低代码开发工具 |
| 20 | OT域微服务生成器 |
| 30 | 工作单元的主控制器上的运行时 |
| 40 | 微服务 |
| 50 | 第三方装置 |
| 200 | 知识中台 |
| 300 | IT域的代码开发平台 |
| 301 | IT域的代码开发工具 |
| 51 | 至少一个存储器 |
| 52 | 至少一个处理器 |
| 53 | 至少一个显示器 |
| 54 | 总线 |
| 600 | 工作流控制方法 |
| 601~603 | 步骤 |
| 70 | 合成器节点 |
| 71 | 开始块 |
| 72 | 结束块 |
| 73~75 | 功能块节点 |
| 76 | 合成表达式 |
| 77 | 结束逻辑值 |
| 78~80 | 数据值块 |
| 81 | 第三展示区域 |
| 82 | 折叠合成器的类型标识 |
| 83 | 第二展示区域 |
| 84 | 切换控件 |
| 85~86 | 功能块节点 |
| 87 | 合成表达式 |
| 88 | 第一展示区域 |
| 90 | 折叠框 |
| 800 | 工作流控制装置 |
| 801 | 第一确定模块 |
| 802 | 第二确定模块 |
| 803 | 控制模块 |
Claims (18)
- 工作流控制方法(600),其特征在于,包括:基于用户在图形用户界面上的操作,确定合成器节点的类型,所述合成器节点包含适配于开始执行所述合成器节点的开始块、适配于结束执行所述合成器节点的结束块以及布置在所述开始块和所述结束块之间的复数条工作链路(601);基于所述合成器节点的类型,从所述复数条工作链路中确定出目的工作链路(602);基于所述目的工作链路,控制工作流的逻辑,其中所述工作流是基于包含所述合成器节点的行为树生成的(603)。
- 根据权利要求1所述的工作流控制方法(600),其特征在于,所述复数条工作链路中的至少一条工作链路包含功能块节点,所述功能块节点用于实现所述工作流中的业务操作。
- 根据权利要求1所述的工作流控制方法(600),其特征在于,所述基于用户在图形用户界面上的操作,确定合成器节点的类型(602)包括:基于用户在包含节点库的所述图形用户界面上的选择操作,确定合成器节点的类型,其中所述节点库包含:以语义方式对类型进行标识的合成器节点或以呈现样式对类型进行标识的合成器节点。
- 根据权利要求2所述的工作流控制方法(600),其特征在于,还包括:接收用户在所述图形用户界面上进行的所述行为树的构建操作;其中,所述构建操作包括行为树节点的添加及连线操作,所述行为树节点包括所述合成器节点和所述功能块节点;所述行为树用于表征所述工作流,所述工作流用于定义一个工作单元要执行的操作;所述功能块节点包括:逻辑节点,每个逻辑节点对应一个操作模板,每个操作模板预先定义至少一类设备能够执行的操作,所述操作包括:动作、方法或技能;响应于所述行为树的构建操作,生成对应所述工作流的所述行为树,其中所述行为树中的逻辑节点被实例化为对应设备的操作;对所述行为树进行解析以获取所述工作流;将所述工作流部署到对应的工作单元的运行时上,以使得所述工作单元中的各个设备按照所述工作流执行操作;其中所述工作流为OT域工作流;所述设备为OT设备。
- 根据权利要求4所述的工作流控制方法(600),其特征在于,还包括:基于所述行为树生成微服务,以使得IT设备通过调用所述微服务而触发所述工作单元的主控制器的运行时执行所述OT域工作流。
- 根据权利要求1-5中任一项所述的工作流控制方法(600),其特征在于,所述合成器节点的类型为并行选择;所述从所述复数条工作链路中确定出目的工作链路(602)包括:将所述复数条工作链路中的每条工作链路,都确定为所述目的工作链路;该方法还包括:经由所述结束块的输入端接收结束逻辑值;其中当所述结束逻辑值为逻辑与时,在所述复数条工作链路都执行完毕时,经由所述结束块结束执行所述合成器节点;当所述结束逻辑值为逻辑或时,在所述复数条工作链路中出现至少一条工作链路执行完毕时,经由所述结束块结束执行所述合成器节点。
- 根据权利要求1-5中任一项所述的工作流控制方法(600),其特征在于,所述合成器节点的类型为多分支选择,该方法还包括:经由所述开始块的输入端接收预先设定的合成表达式;所述从所述复数条工作链路中确定出目的工作链路(602)包括:确定每条工作链路被选中时的数据值块;基于所述合成表达式的计算结果,从所述复数条工作链路中选择符合对应的数据值块的目的工作链路。
- 根据权利要求1-5中任一项所述的工作流控制方法(600),其特征在于,所述合成器节点的类型为是否条件判断,该方法还包括:经由所述开始块的输入端接收预先设定的合成表达式,所述合成表达式的结果包含逻辑真值或逻辑假值;所述从所述复数条工作链路中确定出目的工作链路(602)包括:基于所述合成表达式的结果为逻辑真值或逻辑假值,从所述复数条工作链路中确定对应的目的工作链路。
- 根据权利要求1-5中任一项所述的工作流控制方法(600),其特征在于,所述合成器节点的类型为优先级,该方法还包括:经由所述开始块的输入端接收预先设定的合成表达式;所述从所述复数条工作链路中确定出目的工作链路(602)包括:基于所述合成表达式计算每条工作链路的数据值块;基于每条工作链路的数据值块的排序结果,确定所述复数条工作链路的优先级顺序;基于所述优先级顺序,从所述复数条工作链路中确定所述目的工作链路。
- 根据权利要求1-5中任一项所述的工作流控制方法(600),其特征在于,所述合成器节点的类型为反应性优先级,该方法还包括:经由所述开始块的输入端接收第一合成表达式和第二合成表达式;所述从所述复数条工作链路中确定出目的工作链路(602)包括:基于所述第一合成表达式计算每条工作链路的第一数据值块;基于所述第二合成表达式计算每条工作链路的第二数据值块;基于所述复数条工作链路的第一数据值块的排序结果,确定所述复数条工作链路的优先级顺序;基于所述优先级顺序和每条工作链路的第二数据值块,从所述复数条工作链路中确定所述目的工作链路。
- 根据权利要求1-5中任一项所述的工作流控制方法(600),其特征在于,包括:在所述图形用户界面上的折叠框(90)中,以折叠方式展示所述合成器节点,其中所述折叠框(90)包括第一展示区域(88),所述第一展示区域(88)适配于展示所述合成器节点的当前展示工作链路以及隐藏除当前展示工作链路之外的工作链路。
- 根据权利要求11中所述的工作流控制方法(600),其特征在于,所述折叠框(90)还包括第二展示区域(83)、第三展示区域(81)和切换控件(84);其中所述第二展示区域(83)适配于展示所述当前展示工作链路的数据值块;所述第三展示区域(81)适配于展示所述当前展示工作链路的标签;所述切换控件(84)适配于在所述复数条工作链路中切换所述当前展示工作链路。
- 工作流控制装置(800),其特征在于,包括:第一确定模块(801),被配置为基于用户在图形用户界面上的操作,确定合成器节点的类型,所述合成器节点包含适配于开始执行所述合成器节点的开始块、适配于结束执行所述合成器节点的结束块以及布置在所述开始块和所述结束块之间的复数条工作链路;第二确定模块(802),被配置为基于所述合成器节点的类型,从所述复数条工作链路中确定出目的工作链路;控制模块(803),被配置为基于所述目的工作链路,控制工作流的逻辑,其中所述工作流是基于包含所述合成器节点的行为树生成的。
- 根据权利要求13所述的工作流控制装置(800),其特征在于,所述第一确定模块(801),被配置为基于用户在包含节点库的所述图形用户界面上的选择操作,确定合成器节点的类型,其中所述节点库包含:以语义方式对类型进行标识的合成器节点或以呈现样式对类型进行标识的合成器节点。
- 根据权利要求13所述的工作流控制装置(800),其特征在于,所述复数条工作链路中的至少一条工作链路包含功能块节点,所述功能块节点用于实现所述工作流中的业务操作;所述第一确定模块(801),被配置为接收用户在所述图形用户界面上进行的所述行为树的构建操作;其中,所述构建操作包括行为树节点的添加及连线操作,所述行为树节点包括 所述合成器节点和所述功能块节点;所述行为树用于表征所述工作流,所述工作流用于定义一个工作单元要执行的操作;所述功能块节点包括:逻辑节点,每个逻辑节点对应一个操作模板,每个操作模板预先定义至少一类设备能够执行的操作,所述操作包括:动作、方法或技能;响应于所述行为树的构建操作,生成对应所述工作流的所述行为树,其中所述行为树中的逻辑节点被实例化为对应设备的操作;对所述行为树进行解析以获取所述工作流;将所述工作流部署到对应的工作单元的运行时上,以使得所述工作单元中的各个设备按照所述工作流执行操作;其中所述工作流为OT域工作流;所述设备为OT设备。
- 一种工作流控制系统,其特征在于,包括:至少一个存储器(51),被配置为存储计算机可读代码;至少一个处理器(52),被配置为调用所述计算机可读代码,执行如权利要求1~12中任一项所述的工作流控制方法(600)中的步骤。
- 一种计算机可读介质,其特征在于,所述计算机可读介质上存储有计算机可读指令,所述计算机可读指令在被处理器执行时,使所述处理器执行如权利要求1~12中任一项所述的工作流控制方法(600)中的步骤。
- 一种计算机程序产品,其特征在于,所述计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可读指令,所述计算机可读指令在被执行时使至少一个处理器执行根据如权利要求1~12中任一项所述的工作流控制方法(600)中的步骤。
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US18/834,082 US20250103189A1 (en) | 2022-01-29 | 2022-01-29 | Workflow Control Method, Apparatus and System, and Medium and Program Product |
| PCT/CN2022/075083 WO2023142076A1 (zh) | 2022-01-29 | 2022-01-29 | 工作流控制方法、装置、系统、介质及程序产品 |
| CN202280089265.6A CN118556215A (zh) | 2022-01-29 | 2022-01-29 | 工作流控制方法、装置、系统、介质及程序产品 |
| EP22922906.7A EP4455814A4 (en) | 2022-01-29 | 2022-01-29 | METHOD, APPARATUS AND WORKFLOW CONTROL SYSTEM, AND PROGRAM SUPPORT AND PRODUCT |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2022/075083 WO2023142076A1 (zh) | 2022-01-29 | 2022-01-29 | 工作流控制方法、装置、系统、介质及程序产品 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2023142076A1 true WO2023142076A1 (zh) | 2023-08-03 |
Family
ID=87470193
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2022/075083 Ceased WO2023142076A1 (zh) | 2022-01-29 | 2022-01-29 | 工作流控制方法、装置、系统、介质及程序产品 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20250103189A1 (zh) |
| EP (1) | EP4455814A4 (zh) |
| CN (1) | CN118556215A (zh) |
| WO (1) | WO2023142076A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117669710A (zh) * | 2024-02-01 | 2024-03-08 | 中国人民解放军军事科学院国防科技创新研究院 | 面向博弈对抗任务的多行为树决策方案聚合方法和装置 |
| CN119512525A (zh) * | 2025-01-15 | 2025-02-25 | 神州灵云(北京)科技有限公司 | 一种参数管道传输方法、系统及设备 |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030172371A1 (en) * | 2000-10-20 | 2003-09-11 | Werner Offenmuller | System and method for managing software applications, particularly manufacturing execution system (MES) applications |
| US20190171989A1 (en) * | 2017-12-06 | 2019-06-06 | Bank Of America Corporation | Dynamic Workflow Control Based on Database Logic |
| CN109933018A (zh) * | 2017-12-18 | 2019-06-25 | 中国科学院沈阳自动化研究所 | 一种基于服务组合的动态可重构产线控制系统 |
| CN109933010A (zh) * | 2017-12-15 | 2019-06-25 | 中国科学院沈阳自动化研究所 | 一种面向个性化定制的工业cps系统和实现方法 |
| CN112256248A (zh) * | 2020-10-10 | 2021-01-22 | 合肥青谷信息科技有限公司 | 一种启效智慧云低代码平台 |
| CN112835560A (zh) * | 2021-03-04 | 2021-05-25 | 广州图创计算机软件开发有限公司 | Web多终端低代码智能软件开发平台 |
| CN113535836A (zh) * | 2021-07-16 | 2021-10-22 | 成都融微软件服务有限公司 | 智能流程引擎服务系统及方法 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8571745B2 (en) * | 2008-04-10 | 2013-10-29 | Robert Todd Pack | Advanced behavior engine |
| EP3214510B1 (en) * | 2016-03-03 | 2021-06-30 | Magazino GmbH | Controlling process of robots having a behavior tree architecture |
| CN111079244B (zh) * | 2019-06-20 | 2022-11-25 | 中国航天系统科学与工程研究院 | 一种基于行为树的分布式仿真平台 |
-
2022
- 2022-01-29 WO PCT/CN2022/075083 patent/WO2023142076A1/zh not_active Ceased
- 2022-01-29 US US18/834,082 patent/US20250103189A1/en active Pending
- 2022-01-29 CN CN202280089265.6A patent/CN118556215A/zh active Pending
- 2022-01-29 EP EP22922906.7A patent/EP4455814A4/en active Pending
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030172371A1 (en) * | 2000-10-20 | 2003-09-11 | Werner Offenmuller | System and method for managing software applications, particularly manufacturing execution system (MES) applications |
| US20190171989A1 (en) * | 2017-12-06 | 2019-06-06 | Bank Of America Corporation | Dynamic Workflow Control Based on Database Logic |
| CN109933010A (zh) * | 2017-12-15 | 2019-06-25 | 中国科学院沈阳自动化研究所 | 一种面向个性化定制的工业cps系统和实现方法 |
| CN109933018A (zh) * | 2017-12-18 | 2019-06-25 | 中国科学院沈阳自动化研究所 | 一种基于服务组合的动态可重构产线控制系统 |
| CN112256248A (zh) * | 2020-10-10 | 2021-01-22 | 合肥青谷信息科技有限公司 | 一种启效智慧云低代码平台 |
| CN112835560A (zh) * | 2021-03-04 | 2021-05-25 | 广州图创计算机软件开发有限公司 | Web多终端低代码智能软件开发平台 |
| CN113535836A (zh) * | 2021-07-16 | 2021-10-22 | 成都融微软件服务有限公司 | 智能流程引擎服务系统及方法 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP4455814A4 * |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117669710A (zh) * | 2024-02-01 | 2024-03-08 | 中国人民解放军军事科学院国防科技创新研究院 | 面向博弈对抗任务的多行为树决策方案聚合方法和装置 |
| CN117669710B (zh) * | 2024-02-01 | 2024-05-10 | 中国人民解放军军事科学院国防科技创新研究院 | 面向博弈对抗任务的多行为树决策方案聚合方法和装置 |
| CN119512525A (zh) * | 2025-01-15 | 2025-02-25 | 神州灵云(北京)科技有限公司 | 一种参数管道传输方法、系统及设备 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP4455814A1 (en) | 2024-10-30 |
| US20250103189A1 (en) | 2025-03-27 |
| EP4455814A4 (en) | 2025-10-29 |
| CN118556215A (zh) | 2024-08-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20250165305A1 (en) | Workflow Generation Method and System | |
| WO2023164841A1 (zh) | 工作流执行方法、装置、存储介质及程序产品 | |
| WO2023142076A1 (zh) | 工作流控制方法、装置、系统、介质及程序产品 | |
| WO2023142061A1 (zh) | 工作流生成方法、装置、系统、介质及程序产品 | |
| CN116009844B (zh) | 支持可视化拖拽进行车联网数据融合分析的产学研一体化平台 | |
| US20250130545A1 (en) | Workflow Construction Methods and Systems | |
| WO2023142079A1 (zh) | 工作流创建方法、系统、介质及程序产品 | |
| US20250190909A1 (en) | Dynamic Workflow Implementation Methods and Systems | |
| CN116107730A (zh) | 流程控制方法、装置及设备 | |
| WO2023142077A1 (zh) | 工作流生成方法、装置、系统、介质及程序产品 | |
| WO2023142066A1 (zh) | 工作流构建及监控方法、系统、介质及程序产品 | |
| WO2023164835A1 (zh) | 工作流执行方法、装置、存储介质及程序产品 | |
| US20250181402A1 (en) | Workflow Execution Methods and Systems | |
| US20250130556A1 (en) | Workflow Creation Method, Apparatus and Platform | |
| US20250292034A1 (en) | Conversion Method and Apparatus for Natural Language Sentence | |
| Yu et al. | The implementation of IEC60870-5-104 based on UML statechart and Qt state machine framework | |
| CN119127226A (zh) | 一种基于容器的云边融合模型自动化封装部署方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22922906 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 202280089265.6 Country of ref document: CN |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 18834082 Country of ref document: US |
|
| ENP | Entry into the national phase |
Ref document number: 2022922906 Country of ref document: EP Effective date: 20240726 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| WWP | Wipo information: published in national office |
Ref document number: 18834082 Country of ref document: US |