Editing method and control method, system and electronic device of automation process

CN117970843BActive Publication Date: 2026-09-04MEGAROBO TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311791054.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-12-22
Publication Date
2026-09-04
Estimated Expiration
2043-12-22

AI Technical Summary

Technical Problem

这种导出导入的数据处理方式,需要花费大量的人力成本和一定的时间成本

Benefits of technology

[0046]As mentioned earlier, in the field of automation technology, data processing is often required in automated processes. In some scenarios, data processing is primarily performed under confidential conditions. Existing technologies typically employ manual data import/export methods, which not only incur significant manpower and time costs but are also prone to errors and still pose a risk of data leakage. Furthermore, in other scenarios, even in non-confidential environments, it is necessary to extract operational data from equipment during experiments in real time and save this data to user-accessible files for subsequent process optimization and management. Existing import/export data processing methods are also ill-suited to addressing the real-time data processing challenges during automated process execution. However, the automated process editing method described in this application provides a user interface displaying a flowchart. Based on user interaction with the interface, variable nodes can be added before and after target nodes in the automated process, and the script information for application call instructions corresponding to these variable nodes can be determined. Thus, during the execution of the automated process, the script for the application call instruction can be executed before and after the target device performs its main operation, automatically and in real-time calling the corresponding third-party application to process the variable-related data. This approach, through user interaction, adds variable nodes containing instruction scripts that call third-party applications before and after the experimental nodes in the automated process where the user expects to acquire data. When the automated process reaches the experimental node, the instruction script is automatically executed to achieve real-time and accurate data processing. This not only achieves automatic, real-time, and accurate data processing while effectively ensuring the confidentiality of data and algorithms, but also reduces the manpower and time costs of manually importing and exporting data. Furthermore, this approach can meet the data processing needs of various scenarios, including those requiring data confidentiality and real-time processing, as well as those with high throughput and variable experimental procedures. Therefore, this approach offers better scalability and a superior user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117970843B_ABST
    Figure CN117970843B_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide an editing method and a control method, system and electronic equipment of an automatic process. The editing method comprises: displaying a first user interface, the first user interface comprising a flowchart of an automatic process composed of a plurality of device nodes, each device node corresponding to a master device in the automatic process; adding a variable node at a first position in the flowchart based on operation information of a first operation of a user on a target node, the first position being before or after the target node, the variable node corresponding to a variable involved in the execution of a main operation by a target device, the target device being a master device corresponding to the target node; determining script information of an application program calling instruction corresponding to the variable node to call a corresponding application program to perform a processing operation on data associated with the variable according to the script information when the variable node is executed. The automatic, real-time and accurate processing of data in the automatic process is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of automation technology, specifically to an automated process editing method, an automated process control method, an automated process editing system, an automated process control system, an electronic device, and a storage medium. Background Technology

[0002] In the field of automation technology, data processing within automated processes is frequently involved. In some cases, data processing also involves confidentiality issues. Take laboratory automation processes as an example. With the development of information technology in life science experiments, laboratories apply experimental data to complex data applications such as data mining and complex statistical analysis. However, the specific methods of use and processing are confidential information within the laboratory and need to be protected from unauthorized access and disclosure. Therefore, how to process experimental data while maintaining confidentiality has become a crucial problem for laboratories to solve.

[0003] In existing technologies, experimental data from automated processes typically needs to be manually exported and then manually imported into the data processing program used by researchers. This export-import data processing method requires significant manpower and time, is prone to errors, and still carries the risk of data leakage. Summary of the Invention

[0004] To at least partially address the problems existing in the prior art, according to the first aspect of this application, a method for editing an automated process is provided, comprising:

[0005] The first user interface is displayed, which includes a flowchart of an automated process consisting of multiple device nodes, each device node corresponding to a master device in the automated process;

[0006] Based on the user's first operation information on the target node, a variable node is added at the first position in the flowchart. The target node is any one of multiple device nodes. The first position is either before or after the target node. The variable node corresponds to the variables involved in the main operation performed by the target device, which is the main device corresponding to the target node.

[0007] Determine the script information of the application call instruction corresponding to the variable node, so that when the variable node is executed, the corresponding application is called according to the script information to perform processing operations on the data associated with the variable. The processing operations correspond to the functions of the application.

[0008] For example, the variable node includes a first node preceding the target node, and the application includes a first application with data template creation capabilities. The script information determining the application call instructions corresponding to the variable node includes:

[0009] Determine the script information of the first instruction executed at the first node, so as to call the first application to create a data writing template for variables before the target device performs the main operation, and write the data associated with the variables into the template when the target device performs the main operation;

[0010] The first instruction is the instruction to invoke the first application.

[0011] For example, the variable node includes a second node following the target node, and the application includes a second application with data statistics functionality. The script information determining the application call instructions corresponding to the variable node includes:

[0012] Determine the script information of the second instruction executed on the second node, so that the second application can be invoked to perform statistics on the data associated with the variables after the main operation is performed on the target device;

[0013] The second instruction is a command to invoke the second application.

[0014] For example, determining the script information for the application invocation instruction corresponding to the variable node further includes:

[0015] The first storage address of the data associated with the variable is determined so that it can be used as the application's startup parameter when the application is launched, so that the application can retrieve the data associated with the variable from the first storage address and perform processing operations.

[0016] For example, determining the first storage address of the data associated with the variable includes:

[0017] Get the name of the expression that gets the variable; and

[0018] The names of the expressions are concatenated to determine the first storage address of the data associated with the variables.

[0019] For example, determining the script information of the application invocation instruction corresponding to the variable node includes:

[0020] Determine the application's storage path and storage name so that when a variable node is executed, the application with that storage name is invoked from the storage path to perform processing operations on the data associated with the variable.

[0021] For example, determining the script information for the application invocation instruction corresponding to the variable node further includes:

[0022] Determine the execution timing information of the next operation associated with the variable node. The execution timing information includes first execution information and second execution information. The first execution information indicates that the next operation will be executed after the application has completed its processing operation. The second execution information indicates that the next operation will be executed in parallel with the application's processing operation.

[0023] For example, determining the script information for the application invocation instruction corresponding to the variable node further includes:

[0024] Determine whether to save the application's execution results.

[0025] For example, determining the script information for the application invocation instruction corresponding to the variable node further includes:

[0026] Determine the information for the second storage address, where the second storage address is the storage address of the application's execution result.

[0027] For example, determining the script information of the application invocation instruction corresponding to the variable node includes:

[0028] In response to the first operation, a second user interface is displayed, wherein the second user interface includes a first control, the first control being used to provide the user with an input interface or a selection interface for adding script steps to invoke the application; and

[0029] Based on the user's operation information on the second operation of the first control, determine the script information of the application call instruction corresponding to the variable node.

[0030] For example, based on the user's operation information on the second operation of the first control, the script information of the application call instruction corresponding to the variable node is determined, including:

[0031] In response to the second operation, a third user interface is displayed, wherein the third user interface includes at least one second control, the second control being used to provide the user with an input interface or a selection interface for setting parameters of the script steps;

[0032] In response to a third user action on the second control, retrieve parameters; and

[0033] Based on the parameters, determine the script information of the application call instructions corresponding to the variable node.

[0034] According to another aspect of this application, a method for controlling an automated process is also provided, comprising:

[0035] Before executing the automated process, use the aforementioned automated process editing methods to add a variable node at the first position in the flowchart, and determine the script information of the application call instructions corresponding to the variable node; and

[0036] During the execution of automated processes, when executing variable nodes, the application is invoked based on script information to perform processing operations on the data associated with the variables.

[0037] According to another aspect of this application, an automated workflow editing system is also provided, characterized in that it includes:

[0038] The display module is used to display the first user interface, which includes a flowchart of an automated process consisting of multiple device nodes, each device node corresponding to a master device in the automated process;

[0039] The node adding module is used to add a variable node at the first position in the flowchart based on the user's first operation information on the target node. The target node can be any one of multiple device nodes. The first position is either before or after the target node. The variable node corresponds to the variables involved in the main operation performed by the target device, which is the main device corresponding to the target node.

[0040] The determination module is used to determine the script information of the application call instruction corresponding to the variable node, so that when the variable node is executed, the corresponding application is called according to the script information to perform processing operations on the data associated with the variable. The processing operations correspond to the functions of the application.

[0041] According to another aspect of this application, a control system for an automated process is also provided, characterized in that it comprises:

[0042] The editing module is used to add variable nodes at the first position in the flowchart using the aforementioned editing methods before executing the automated process, and to determine the script information of the application call instructions corresponding to the variable nodes; and

[0043] The processing module is used to call the application to perform processing operations on the data associated with the variables based on the script information when executing variable nodes during the execution of automated processes.

[0044] According to another aspect of this application, an electronic device is also provided, including a processor and a memory, characterized in that the memory stores computer program instructions, which, when executed by the processor, are used to perform the editing method and / or the control method of the aforementioned automated process.

[0045] According to another aspect of this application, a storage medium is also provided, on which program instructions are stored, which, when run, are used to execute the editing method and / or the control method of the above-described automated process.

[0046] As mentioned earlier, in the field of automation technology, data processing is often required in automated processes. In some scenarios, data processing is primarily performed under confidential conditions. Existing technologies typically employ manual data import / export methods, which not only incur significant manpower and time costs but are also prone to errors and still pose a risk of data leakage. Furthermore, in other scenarios, even in non-confidential environments, it is necessary to extract operational data from equipment during experiments in real time and save this data to user-accessible files for subsequent process optimization and management. Existing import / export data processing methods are also ill-suited to addressing the real-time data processing challenges during automated process execution. However, the automated process editing method described in this application provides a user interface displaying a flowchart. Based on user interaction with the interface, variable nodes can be added before and after target nodes in the automated process, and the script information for application call instructions corresponding to these variable nodes can be determined. Thus, during the execution of the automated process, the script for the application call instruction can be executed before and after the target device performs its main operation, automatically and in real-time calling the corresponding third-party application to process the variable-related data. This approach, through user interaction, adds variable nodes containing instruction scripts that call third-party applications before and after the experimental nodes in the automated process where the user expects to acquire data. When the automated process reaches the experimental node, the instruction script is automatically executed to achieve real-time and accurate data processing. This not only achieves automatic, real-time, and accurate data processing while effectively ensuring the confidentiality of data and algorithms, but also reduces the manpower and time costs of manually importing and exporting data. Furthermore, this approach can meet the data processing needs of various scenarios, including those requiring data confidentiality and real-time processing, as well as those with high throughput and variable experimental procedures. Therefore, this approach offers better scalability and a superior user experience.

[0047] The invention description introduces a series of simplified concepts, which will be further explained in detail in the detailed description section. This description is not intended to limit the key features and essential technical features of the claimed technical solution, nor is it intended to determine the scope of protection of the claimed technical solution.

[0048] The advantages and features of this application are described in detail below with reference to the accompanying drawings. Attached Figure Description

[0049] The following drawings, which are incorporated herein by reference and are used to understand this application, illustrate embodiments of the invention and their descriptions to explain the principles of the invention. In the drawings,

[0050] Figure 1 A schematic flowchart illustrating an automated workflow editing method according to an embodiment of this application is shown.

[0051] Figure 2 A partial flowchart of an automated process according to an embodiment of this application is shown;

[0052] Figure 3 A schematic flowchart of a control method for an automated process according to an embodiment of this application is shown;

[0053] Figure 4 A flowchart of an editing system with an automated workflow according to an embodiment of this application is shown;

[0054] Figure 5 A flowchart of a control system for an automated process according to an embodiment of this application is shown; and

[0055] Figure 6 A schematic block diagram of an electronic device according to an embodiment of this application is shown. Detailed Implementation

[0056] In the following description, numerous details are provided to enable a thorough understanding of this application. However, those skilled in the art will appreciate that the following description merely illustrates preferred embodiments of the application, and that the application can be implemented without one or more of these details. Furthermore, to avoid confusion with this application, some technical features well-known in the art have not been described in detail.

[0057] As mentioned above, in the field of automation technology, data processing is often required within automated processes. In some scenarios, data processing is primarily performed under confidential conditions. For example, in laboratory automation processes, it is necessary to extract and analyze data from experiments under confidentiality, and generate mathematical models as research results. Current technologies typically employ manual data import / export methods, which not only incurs significant manpower and time costs but is also prone to errors and still carries the risk of data leakage.

[0058] To at least partially address the aforementioned technical problems, according to one aspect of this application, a method for editing automated workflows is provided. This approach allows users to interact with the automated workflow by adding variable nodes containing instruction scripts that call third-party applications before and after the nodes corresponding to the data the user expects to obtain. When the automated workflow reaches these variable nodes, the instruction scripts are automatically executed to achieve real-time and accurate data processing. This not only achieves automatic, real-time, and accurate data processing while effectively ensuring the confidentiality of data and algorithms, but also reduces the manpower and time costs associated with manually importing and exporting data. Furthermore, this approach can meet the data processing needs of various scenarios, including data confidentiality and real-time data processing, as well as high-throughput scenarios with variable experimental procedures. Therefore, this approach offers better scalability and a better user experience.

[0059] The editing method according to the embodiments of this application can be applied to automated processes in various fields for various suitable objectives. For simplicity, the following explanation will focus on an automated process in an automated system in the field of biochemistry.

[0060] Figure 1 A schematic flowchart illustrating an automated workflow editing method 100 according to an embodiment of this application is shown. As shown, the method 100 includes steps S120, S140, and S160.

[0061] Step S120: Display the first user interface. The first user interface includes a flowchart of an automated process consisting of multiple device nodes, where each device node corresponds to a master device in the automated process.

[0062] According to embodiments of this application, before executing an automated process, the user can edit the automated process according to actual needs. For example, the user can use any suitable human-computer interaction device to edit the automated process. For example, the human-computer interaction device may include a control unit and an input device and a display device connected to the control unit. For example, the control unit is a host computer, and the host computer's operating system may have pre-installed automated process editing software. For example, in response to the user's input operation using the input device, a first user interface can be displayed using the display device. This first user interface can have any suitable display format, and this application does not limit it.

[0063] The first user interface includes at least a flowchart. This flowchart can be a complete flowchart of the entire automated process or a partial flowchart. Exemplarily, and not limitingly, the first user interface may default to displaying the complete flowchart of the entire automated process. The default flowchart can be zoomed in or out in response to different user actions using the input device, i.e., displayed in a magnified form. For example, after being zoomed in to a certain scale, the flowchart displayed in the first user interface may be a partial flowchart.

[0064] A flowchart can be a process flow consisting of multiple nodes connected in a specific order. Each node can correspond to at least one task, and different nodes correspond to different tasks. Furthermore, these multiple nodes can include nodes of different types, with different types of nodes corresponding to different types of tasks. For example, in the flowchart displayed on the first user interface, different types of nodes can have different display styles. For instance, nodes can be represented by icons, and the shape, fill color, border color, border thickness, and border size of icons for different types of nodes can vary.

[0065] Step S140: Based on the user's first operation information on the target node, add a variable node at the first position in the flowchart. The target node can be any one of multiple device nodes, and the first position can be either before or after the target node. The variable node corresponds to the variables involved in the main operation performed by the target device. The target device is the master device corresponding to the target node.

[0066] According to embodiments of this application, the node types of the multiple nodes in the flowchart include at least device nodes. Exemplarily, the multiple nodes in the flowchart may also include other node types such as consumable nodes and loop nodes, and this application does not limit them.

[0067] Each device node corresponds to a task that includes device operations performed at that node. Each device node corresponds to one or more devices. The devices corresponding to a device node include at least a primary device. The device operations performed at a device node include at least the primary operations performed by the primary device. For example, taking a centrifuge as an example, the primary operation of the centrifuge is the centrifugation operation. In some examples, the devices corresponding to a device node may also include auxiliary devices. Auxiliary devices are used to perform auxiliary operations, which include pre-operations performed before the primary operation and / or post-operations performed after the primary operation. Auxiliary devices may include transfer devices such as robotic arms, and auxiliary primary operation devices such as cap-opening and cap-closing devices. It is understood that a transfer device can transfer consumables used to carry samples from a previous device node to the current device node, enabling the primary device of the current device node to operate on the samples carried by the consumables. The transfer device can also transfer consumables from the current device node to the next device node. Furthermore, each device node is associated with at least one consumable; different device nodes may be associated with the same or different consumables.

[0068] The target node can be any of the multiple device nodes included in the flowchart displayed on the first user interface, and the user can select it according to the actual data processing needs. For example, if the user wants to perform statistics on data related to a certain device node, such as equipment, operations, samples, and consumables, they can operate on that device node to add the corresponding variable node to the process. Thus, the device node operated on by the user is the target node.

[0069] The first operation can be any suitable human-computer interaction operation, and this application does not restrict it. Figure 2A partial flowchart of an automated process according to an embodiment of this application is shown. The flowchart includes two device nodes. The task expressed by the flowchart is that consumable 1 first enters the device corresponding to device node 1 for a corresponding operation, and then enters the device corresponding to device node 2 for a corresponding operation. The two variable nodes in the flowchart can be determined based on the user's operation information for the first operation on the two device nodes. Exemplarily, the first user interface may also include a process editing control. The user can edit the flowchart using the process editing control. The process editing control may at least include a variable node adding control. The first operation may include the operation performed by the user using the variable node adding control. Optionally, the first operation may be the user dragging the variable node adding control to the target node. Specifically, the flowchart can be displayed in the middle of the interface, and menu bars including variable node adding controls can be provided on both the left and right sides of the flowchart. For example, if the user wants to add a variable node before "device node 1", they can drag the variable node adding control from the left menu bar to the right to "device node 1". For example, if a user also wants to add a variable node after "Device Node 2", they can drag the variable node addition control from the right-hand menu to the left to "Device Node 2". Figure 2 As shown, after the user completes the drag operation, "Variable Node 1" will appear before "Device Node 1" in the flowchart, and "Variable Node 2" will appear after "Device Node 2". Alternatively, this first operation can also be an operation where the user adds a control by double-clicking the variable node. For example, after the user double-clicks the variable node to add a control, it can be displayed... Figure 2 A floating "Variable Node 3" (not shown) is displayed at any point in the flowchart shown. Exemplarily, the flowchart editing interface may also include a directed line control. Exemplarily, after receiving user input via mouse clicks on the directed line control, "Device Node 2," and "Variable Node 3," "Device Node 2" and "Variable Node 3" can be connected by a directed line, and a new flowchart can be displayed. In the new flowchart, "Device Node 2" is connected to "Variable Node 3." Alternatively, in other examples, variable nodes can be added to the flowchart based on the user's first operation using multiple input devices. Exemplarily, but not limitingly, after the user selects any device node with a mouse click, a variable node can be added before or after the device node using keyboard shortcuts. For example, a variable node can be added before a device node after detecting the user pressing the keyboard shortcut "shift" + "←," and after a device node is added after detecting the user pressing the keyboard shortcut "shift" + "→."

[0070] In this embodiment, the task corresponding to a variable node includes data processing instructions executed at that node. Each variable node corresponds to at least one variable. This variable is a variable concerning data about equipment operation in the automated process. This data can be of various types, including but not limited to attribute data such as name, QR code, and category of the sample and / or consumable operated by the target equipment; time involved in various operations of the target equipment, such as main operation, pre-operation, and post-operation; number of times the equipment operation is executed; and numerical data such as sample volume, quantity, and content. It may also include a directory of data associated with the variable, etc., which this application does not limit. The type of data processing instructions executed at the variable node can include various types. The type of data processing instructions can at least include application call instructions. It is easy to understand that an application call instruction is an instruction to call a third-party application to perform processing operations on the data associated with the variable. This processing operation can be any suitable data processing operation, including but not limited to data template creation, data summary and statistics, etc. In some other examples, the type of data processing instructions can also include variable export instructions, variable modification instructions, variable assignment instructions, and other variable-related data processing instructions.

[0071] As described above, the first position is either before or after the target node. The variable node can be before the target node; for example, based on the operation information of the first operation described above, "variable node 1" can be connected to the front end of "device node 1". The variable node can also be after the target node; for example, based on the operation information of the first operation described above, "variable node 2" can be connected to the back end of "device node 2". Exemplarily, if the variable node is connected to the front end of the target node, the data processing instructions corresponding to the variable node can be executed before the main operation of the target device (the master device corresponding to the target node) begins. Specifically, the data processing instructions corresponding to the variable node (e.g., application call instructions) can be completed between the main operation and the preceding operation of the target device, or can be completed in parallel with the preceding operation. Similarly, if the variable node is connected to the back end of the target node, the data processing instructions corresponding to the variable node can be executed after the main operation of the device node; specifically, they can be completed between the main operation and the following operation of the target device, or can be completed in parallel with the following operation.

[0072] Understandably, in this step, users can freely add variable nodes through the first user interface according to their actual needs, enabling the addition of application call instructions to any device node in the automated process. Thus, when the automated process is executed, the corresponding application call instruction can be executed when the corresponding node is reached. Therefore, the timing of calling third-party applications to perform data processing operations in this solution can be freely set, thus fully meeting the personalized needs of users.

[0073] Step S160: Determine the script information of the application call instruction corresponding to the variable node, so that when the variable node is executed, the corresponding application is called according to the script information to perform processing operations on the data associated with the variable. The processing operations correspond to the functions of the application.

[0074] For example, the variable node can be executed at the first moment, which can be before or after the target device performs the main operation.

[0075] In this step, various methods can be used to determine the script information of the application call instruction corresponding to the variable node. For example, in this step, the script of the application call instruction can be added to the variable node through human-computer interaction. In this way, during the execution of the automated process, at the first moment when the variable node is reached, the script of the application call instruction can be executed to perform processing operations on the data associated with the variable.

[0076] In one example, a parameter configuration interface can be displayed in response to any suitable user action performed on a variable node, to determine the script information for the application invocation instruction. For example, the parameter configuration interface may include input text boxes or various suitable operation controls, and the script information for the application invocation instruction to be executed at that script execution node can be further determined based on the user's actions on the input text boxes and / or operation controls.

[0077] In another example, an instruction setting interface can be displayed before the parameter setting interface described above. The instruction setting interface may include an instruction type setting area. As mentioned earlier, there can be multiple types of data processing instructions, and an application call instruction can be one of them. In this step, the instruction setting interface can be displayed first in response to the user's operation on the variable node. For example, the instruction setting interface may include multiple instruction type selection controls, including a first instruction type selection control corresponding to the application call instruction. The parameter setting interface can be displayed only in response to the user's selection operation on the first instruction type selection control. Furthermore, the script information of the application call instruction can be determined based on the user's operations on the various controls and text boxes in the parameter setting interface.

[0078] For example, the variable node corresponds to a variable that is a data variable related to the operation of equipment in the automated process. In this step, the data associated with the variable can be various suitable data related to the target equipment, including but not limited to attribute data such as name, QR code, and category of the samples and / or consumables operated by the target equipment, the time involved in various operations of the target equipment such as main operation, pre-operation, and post-operation, the number of times the equipment operation is executed, and numerical data such as the volume, quantity, and content of the samples, or it may also include a directory of data associated with the variable.

[0079] As mentioned earlier, in the field of automation technology, data processing is often required in automated processes. In some scenarios, data processing is primarily performed under confidential conditions. Existing technologies typically employ manual data import / export methods, which not only incur significant manpower and time costs but are also prone to errors and still pose a risk of data leakage. Furthermore, in other scenarios, even in non-confidential environments, it is necessary to extract operational data from equipment during experiments in real time and save this data to user-accessible files for subsequent process optimization and management. Existing import / export data processing methods are also ill-suited to addressing the real-time data processing challenges during automated process execution. However, the automated process editing method described in this application provides a user interface displaying a flowchart. Based on user interaction with the interface, variable nodes can be added before and after target nodes in the automated process, and the script information for application call instructions corresponding to these variable nodes can be determined. Thus, during the execution of the automated process, the script for the application call instruction can be executed before and after the target device performs its main operation, automatically and in real-time calling the corresponding third-party application to process the variable-related data. This approach, through user interaction, adds variable nodes containing instruction scripts that call third-party applications before and after the experimental nodes in the automated process where the user expects to acquire data. When the automated process reaches the experimental node, the instruction script is automatically executed to achieve real-time and accurate data processing. This not only achieves automatic, real-time, and accurate data processing while effectively ensuring the confidentiality of data and algorithms, but also reduces the manpower and time costs of manually importing and exporting data. Furthermore, this approach can meet the data processing needs of various scenarios, including those requiring data confidentiality and real-time processing, as well as those with high throughput and variable experimental procedures. Therefore, this approach offers better scalability and a superior user experience.

[0080] For example, the variable node may include a first node, which precedes the target node. The application includes a first application with data template creation functionality. Determining the script information of the application invocation instruction corresponding to the variable node includes: determining the script information of the first instruction corresponding to the first node, to invoke the first application to create a data writing template for the variable before the target device performs the main operation, and to write the data associated with the variable into the template when the target device performs the main operation. Here, the first instruction is a call instruction to the first application.

[0081] Data templates may be templates developed based on user habits or regulations. They may include storage areas for raw data, storage areas for processed data, data about variables, and formulas such as data addition and subtraction, which can be set by the user in advance.

[0082] Continue to refer to Figure 2 For example, variable node 1 is the first node. The application may include a first application with data template creation capabilities. The data template is, for example, an Excel-formatted template file, and the first application may be a third-party application capable of creating Excel-formatted template files.

[0083] For example, the script information for the first instruction can be determined based on the user's human-computer interaction. For instance, the user can use a parameter configuration interface to configure the third-party application to be called as one with data template creation capabilities. Thus, at the first moment when the automated process reaches the first node (which can also be understood as when executing the variable node), the first instruction can be executed, thereby calling the third-party application with data template creation capabilities to create a data template at the specified path. For example, the path can be a default path in the program, or it can be set by the user in the script, as described below.

[0084] For example, taking a microplate reader as the target device, after the data template is created, a data writing template as shown in Table 1 can be obtained. The data associated with variables can be a directory of variable-related data, such as a directory of variable names, like the number of samples, optical density values, and concentration values. For example, since the main operation of the microplate reader has not yet been executed, the value column in the data template shown in Table 1 may be empty or have a default value. For example, when the target device executes the main operation, the host computer of the target device can write the variable-related data, i.e., the acquired values, into the template group by group. For example, the optical density value and concentration value of sample 1 are written into the template, then the optical density value and concentration value of sample 2 are written into the data template, until all sample data are written into the template. The host computer of the target device can also write all the values ​​into the template after acquiring all sample values.

[0085] Table 1

[0086]

[0087] Understandably, in existing technologies, the host computer of a device may generate a certain type of file format and save it in a fixed folder. Saving data to an Excel template file usually requires the operator to locate this folder, open the data file using software, and transfer its contents into the Excel template. This process is prone to errors or leaks due to human negligence. Other data processing software faces similar challenges. Therefore, existing automated process management systems cannot directly launch the corresponding software and automatically import data into it.

[0088] In the editing method described in this application embodiment, the user-set variable nodes are associated with the target node during the editing of the automated process, and the variable nodes are bound to the script executing the first instruction. Therefore, during the execution of the automated process, the script of the first instruction can be executed before and after the main operation is performed on the target device, automatically calling the first application with data template creation function, automatically generating a data template, and automatically storing the data related to the main operation into the data template.

[0089] It should be noted that multiple scripts can be set for each first node to call the first instruction, and different scripts can be used to create different data templates.

[0090] It is understandable that the data in the data template facilitates subsequent processing, and after the script is edited, the generation of the data template and the storage of experimental data do not require human intervention, which reduces the workload of personnel and reduces the risk of leakage.

[0091] For example, the variable node may further include a second node, which follows the target node. The application includes a second application with data statistics capabilities, which determines script information of the application invocation instruction corresponding to the variable node, including script information of the second instruction corresponding to the second node, to invoke the second application to perform statistics on the data associated with the variable after the target device performs the main operation.

[0092] like Figure 2As shown, the second node is, for example, variable node 2, and the target node is, for example, device node 2. Variable node 2 is located after device node 2. For example, as described above, a script for the first instruction can be executed at variable node 1 to call the first application to create a data template, and then the main operation of device node 1 is executed. Data related to device node 1 is written into the created data template. Subsequently, the operation corresponding to device node 2 is executed. Since device node 2 is also connected to variable node 2, variable node 2 includes a script for executing the second instruction. The second instruction is a call instruction for a second application with data statistics functionality. Therefore, after the main operation of device node 2 is completed, this call can be executed to start the second application for data statistics processing. For example, the data statistically analyzed by the second application can be data written into the data template created by variable node 1, or data from other data templates. For example, the second device node itself has a data template creation function; after the main device is executed, the data associated with the variable has already been written into the data template created on the device node. Therefore, the data in the desired data template can be automatically imported into the second application for statistical processing. The second application can store the processed data in other local files after processing it, or it can write the processed data into the data template according to the settings.

[0093] It should be noted that multiple scripts can be set for each second node to call the second instruction. Different scripts can be used to process different experimental data or to call third-party applications with different data statistics functions to perform different statistical processing on the data.

[0094] Similar to the function of the first node, during the execution of the automated process, the second application can be automatically invoked to perform data statistical processing operations based on the application call instruction script of the variable node set by the user. Similarly, no human intervention is required in the execution process, which reduces the workload of personnel and lowers the risk of leakage.

[0095] For example, step S160 may include step S161. Step S161 involves determining a first storage address for the data associated with the variable, so that the first storage address is used as a startup parameter of the application when the application is launched, so that the application retrieves the data associated with the variable from the first storage address and performs processing operations.

[0096] For example, after the device performs its main operation, its host computer software typically has a built-in data storage function, which records the raw data in a file in a default path or a user-specified path. For instance, if the user sets the data storage path to the data folder on drive D, the host computer will save the raw data file to the D:\data path after each experiment. In other words, the path can usually refer to the location of the folder.

[0097] Taking an Excel spreadsheet application as an example, the raw data stored on the host computer in the specified path might be in XML format. Files in this format can be directly imported into the Excel spreadsheet. Therefore, the script can determine the primary storage location, such as the path D:\data mentioned above. When the Excel application starts, the import file command in the script can automatically import the XML file into the Excel spreadsheet. This enables third-party applications to automatically acquire experimental data, and the acquired data is less prone to errors.

[0098] For example, the application may include not only data processing and storage programs like Excel spreadsheets, but also programs for statistical processing of data. Variable nodes can be edited with script instructions, which may include launching the corresponding application and automatically importing data into the appropriate application. Figure 2 Taking variable node 1 as an example, its script information corresponds to an Excel spreadsheet application, which is connected to the front end of device node 1. Therefore, when execution reaches variable node 1, at the first moment, before the main device operation of device node 1 begins, the Excel spreadsheet is invoked to start and perform processing operations on the data associated with the variable, such as creating a data template. Taking variable node 2 as an example, its connection is to the back end of device node 2. Therefore, at the second moment, when the main device operation of device node 2 ends, the second application is invoked to start and perform processing operations on the data, such as merging and statistically analyzing the data.

[0099] For example, in step S161, determining the first storage address of the data associated with the variable further includes: obtaining the name of the expression of the variable; and concatenating the name of the expression to determine the first storage address of the data associated with the variable.

[0100] For example, the first storage address can be understood as a parameter required by the third-party application, with the operation taking a string type variable as an example. All data related to the third-party application can rely on the variable module; that is, corresponding expressions are set through variables, and these variables are predefined. For the control of automated processes, such as those involving a host computer, device control terminal, and device, the variable-related content is implemented through the PMS terminal. This can also be understood as the PMS terminal setting up a variable module to call the third-party application and to store the data address related to the third-party application. During the execution of the experimental process, all device-related data can be stored on the host computer of the device, while the variable module simply transmits the address of the stored data to the third-party application. This address is given as input parameter data to the third-party application when the variable module calls it. The parameters of the first storage address support constants, variables, and variable expressions.

[0101] Preferably, an editing window for variable expressions can also be provided for users to edit variable expressions. For example, the name of the variable expression can be set by the user through a human-computer interaction interface, including but not limited to inputting using a text box or selecting using a selection control. In one example, the aforementioned parameter configuration interface can also include expression editing controls. In response to the user clicking the expression editing control, a variable expression editing window can pop up, which can include multiple expression editing controls. These controls can correspond to setting controls for, for example, variable range, variable list, set variable index, expression operators (+, -, *, \), conditional expressions, internal variables, built-in methods, built-in method parameters, method consumables, and method consumable attributes. Thus, after the user sets the variable expression using these setting controls, the information of the variable's expression can be determined. This facilitates the system calculating the value of the variable's expression based on the expression and storing it in a file of the appropriate format at the corresponding address. In this way, when executing the current application call instruction, the expression execution result can be passed as an input parameter to the third-party application. The result of an expression execution can be the storage address of data of a specified type, or the storage address of a data file in a specified data format (including but not limited to XML, Excel, JSON, DB, etc.). It can be understood that when executing the current application call instruction, in order to obtain the data associated with the variable (such as the expression execution result mentioned above), the name of the variable expression can be determined based on the user's editing of the expression. Then, according to preset rules, the storage address of the data associated with the variable is obtained by concatenating the expression names. These preset rules are based on the system's rules for calculating and storing the values ​​of variable expressions. Therefore, the storage address obtained by concatenating the expression names is the system's storage address for the data associated with the variable.

[0102] For example, to avoid duplicate filenames for different data, which could lead to new data overwriting older data, the host computer software automatically adds the date to the path of the original data for differentiation. For instance, for experimental data completed on January 1, 2021, the host computer can create a folder named 20210101 under the path and store the files there. For experimental data completed on January 2, 2021, the host computer can create a folder named 20210102 under the path and store the files there. This way, experimental data completed at different times will not be confused or overwritten. Of course, the actual host computer may create folders based on timestamps accurate to the second, and the folder naming format may also differ. For example, for experimental data completed at 10:00:00 on January 1, 2021, the host computer could create a folder named 2021.0101.10.00.00 under the path and store the files there.

[0103] Therefore, for the first storage address of the relevant data, in addition to the storage path of all data files, i.e., D:\data mentioned above, it is also necessary to concatenate the name of the variable expression to obtain a path such as D:\data\20210101, in which the application can find the required original data file.

[0104] This method, which automatically concatenates variable names to determine the storage address of associated data, reduces the difficulty for users in setting storage addresses and also allows for quick differentiation and processing of data with different throughputs within the same step. This results in a better user experience.

[0105] For example, step S160, which determines the script information of the application call instruction corresponding to the variable node, further includes: determining the storage path and storage name of the application, so that when the variable node is executed, the application with the storage name is called from the storage path to perform processing operations on the data associated with the variable.

[0106] Taking the creation of an Excel-formatted data template as an example, the script calls the application, which needs to be located where the application capable of creating Excel-formatted data templates is located. Assuming the application is located in the C:\excel folder, analogous to a user manually launching an Excel spreadsheet: the user needs to open the C: drive, open the excel folder, find excel.exe, and execute this executable file. The script execution is similar; the script obtains the path to excel.exe, C:\excel, which is equivalent to opening the excel folder. Then, based on the application's storage name, excel.exe, it launches it via instructions when executing the variable node. The application's storage path and storage name can be determined through the human-computer interaction described below, such as the user inputting the application's storage path and name using the operation controls of the second user interface. Alternatively, the storage path and storage name can be disregarded; for example, the user can simply enter C:\excel\excel.exe. The application's storage path and storage name can also be determined by the user clicking the path control, meaning the user can manually select the path and the application within that path.

[0107] For example, determining the script information of the application call instruction corresponding to the variable node also includes determining the execution timing information of the next operation associated with the variable node. The execution timing information includes first execution information and second execution information. The first execution information indicates that the next operation will be executed only after the application has completed its processing operation, and the second execution information indicates that the next operation will be executed in parallel with the application's processing operation.

[0108] The first and second execution information can be determined based on the user's human-computer interaction. For example, the parameter configuration interface may include a selection control followed by "Wait for the application to finish executing." For example, if the user clicks the selection control to check it, the determined execution timing information corresponds to the first execution information, meaning that subsequent steps will only be executed after the application has completed its processing operations. Otherwise, if it is not checked, the determined execution timing information of the current application's call instruction corresponds to the second execution information, meaning that subsequent steps do not need to wait for the application to complete its processing operations and can be executed in parallel with the application's data processing operations.

[0109] by Figure 2Taking variable node 2 as an example, if the execution timing information in the script is determined to be the first execution information, then when variable node 2 is executed, the second instruction controls the second application to start and acquire data, and then processes the data. The second application needs a certain amount of time to process the data, and the automated process must wait for the second application to finish processing the data and return or save the results before continuing subsequent operations. This allows the user to perform subsequent operations based on the processed data. For example, the data merging and statistics of the second application can determine which samples are qualified and which are unqualified. Subsequent operations include sorting the samples to separate qualified and unqualified products. This operation obviously depends on the statistical results of the second application; if the second application has not finished executing and returned results, the sorting operation cannot be performed.

[0110] When the execution timing information in the script is determined to be the second execution information, when executing variable node 2, the second instruction controls the second application to start and acquire data, and then processes the data. The processing result of the second application does not affect subsequent operations; for example, if it is only used to collect information such as the working time of the device, there is no need to wait for the execution of the second application to complete, and the consumables can continue to the next operation.

[0111] Therefore, users can configure in the script whether to wait for the application to return data according to actual production needs. This configuration is more convenient and flexible and can meet different types of data processing needs.

[0112] For example, determining the script information of the application call instruction corresponding to the variable node also includes: determining whether to save the execution result of the application.

[0113] For some applications, the execution results do not need to be saved. For example, when plotting images and curves from data, the results can be displayed in real time, allowing operators to adjust the equipment and system promptly. This data occupies a large amount of space, and some of it does not need to be saved in real time. Alternatively, the execution results calculated by the application may only be intermediate data, which will be imported into other programs or used to control devices to perform operations in real time, without needing to be saved.

[0114] For example, the parameter configuration interface may include a selection control followed by "Save results?". In this case, if the user selects the control, for example, by using the mouse, it is determined that the application's execution results will be saved; if the user does not ultimately select the control, for example, by using the mouse, it is determined that the application's execution results will not be saved.

[0115] Therefore, users can configure whether to save the application execution results in the script of the application call command according to actual production needs. This configuration is more convenient and flexible and can meet different types of data processing needs.

[0116] For example, determining the script information of the application invocation instruction corresponding to the variable node also includes determining information about a second storage address. The second storage address is the storage address of the application's execution result.

[0117] As described above, users can choose whether to save the application's execution results. When choosing to save the results, users can select a storage location for the data. For example, the storage location can be the path described above. After the application finishes execution, the instructions in the script will automatically save the execution results to the set storage location. This allows the application's execution results to be stored in a suitable location for easy viewing by users or system access.

[0118] For example, determining the script information of the application invocation instruction corresponding to the variable node includes displaying a second user interface in response to a first operation, wherein the second user interface includes a first control, the first control being used to provide the user with an input interface or selection interface for adding a script step to invoke the application; and determining the script information of the application invocation instruction corresponding to the variable node based on the operation information of the user's second operation on the first control.

[0119] The user's first operation may include connecting the variable node to the target node. Upon completion of the connection, a second user interface may be displayed. The user can then perform a second operation on the first control; the second user interface may be a command setting interface. The command setting interface may include a command type setting area. As mentioned earlier, there can be multiple types of data processing commands, and an application call command may be one of them. In this step, the command setting interface may be displayed first in response to the user's operation on the variable node. For example, the command setting interface may include multiple command type selection controls. This includes a first command type selection control corresponding to the application call command. The first control may be a first command type selection control. The script information of the application call command corresponding to the variable node can be determined based on the user's selection operation on the first command type selection control.

[0120] In one example, the parameter setting interface may be displayed only in response to the user's selection of the first instruction type selection control. Then, the script information of the application invocation instruction can be determined based on the user's actions on the various controls and text boxes in the parameter setting interface. In another example, the instruction setting interface may also include a parameter configuration area for the application invocation instruction. After the user selects the first instruction type selection control using the mouse, the various parameter configuration controls in the parameter configuration area for the application invocation instruction become operable, allowing the user to directly manipulate these controls and configure the script information of the application invocation instruction. In other words, these parameter configuration controls are used to configure the parameters of the script steps of the application invocation instruction. Parameter configuration controls may include the input text boxes mentioned above, allowing the user to input the application's storage path and storage name via the keyboard or by copying and pasting. Parameter configuration controls may include drop-down selection boxes, allowing the user to select the storage path and storage name. Parameter configuration controls may include variable expression editing controls. For example, after a user clicks the variable expression editing control with the mouse, a variable expression editing window can pop up. This window can include controls such as variable range controls, variable list controls, and set variable index controls. These controls can be in the form of selectable lists or input fields. The user can input some or all of the required parameters, thereby configuring the input parameters (i.e., the storage address of variable-related data) called by the application. The parameter configuration control can also include a checkbox displaying "Save execution results?". After the user checks the checkbox, they can confirm that the data processing results obtained from executing the current application call command will be saved... thus, the script configuration for the application call command can be completed.

[0121] For example, in this step, the user can also add multiple application call instruction script steps to the variable node by repeatedly manipulating the first control. For instance, if the user wants to add three application call instructions to the current variable node to process different data, they can manipulate the first control three times consecutively. For example, the instruction setting interface can also include an instruction list area. After the user manipulates the first control once, a script step of an application call instruction can be displayed in the instruction list area. After the user manipulates the first control three times, three script steps of application call instructions can be displayed in the instruction list area, and the user can also drag the mouse to change the order of these script steps. Thus, during the execution of the automated process, when the variable node is reached, these three steps can be executed sequentially.

[0122] The aforementioned human-computer interaction logic is more reasonable. Based on human-computer interaction, the parameters for processing data in the application are configured according to the user's personalized needs, thereby making the scripts for determining application call instructions more accurate. Furthermore, scripts are automatically generated only when the user performs simple operations; complex script code is invisible to the user, significantly simplifying the operation process, reducing the difficulty of operation, and lowering the technical requirements for the user.

[0123] For example, determining the script information of the application invocation instruction corresponding to the variable node based on the operation information of the user's second operation on the first control further includes: displaying a third user interface in response to the second operation; wherein the third user interface includes at least one second control, the second control being used to provide the user with an input interface or selection interface for setting parameters of the script steps; obtaining parameters in response to the user's third operation on the second control; and determining the script information of the application invocation instruction corresponding to the variable node based on the parameters.

[0124] For example, as described above, after the user operation instruction setting interface, a step to call the application instruction can be added to the variable node. A third user interface can also be displayed simultaneously. Alternatively, the third user interface can be displayed in response to a user clicking a control on the instruction setting interface (for example, a configuration control named "Configuration" is placed near each step in the instruction list area of ​​the instruction setting interface). Thus, the third user interface can be the same as the second user interface, or it can be a new interface. The second control can be the parameter configuration control in the aforementioned example. There are various ways to configure the parameters of the script steps through the parameter configuration control, and this application does not limit them.

[0125] By using the parameters configured by the user through the second control for the script steps, the system can automatically generate executable script execution parameters based on these parameters. Therefore, during the execution of the automated process, when the current variable node is reached, the script can be executed based on these execution parameters, thereby achieving the goal of real-time data processing using third-party applications.

[0126] The aforementioned human-computer interaction logic is more reasonable. Based on human-computer interaction, the parameters for processing data in the application are configured according to the user's personalized needs, thereby making the scripts for determining application call instructions more accurate. Furthermore, scripts are automatically generated only when the user performs simple operations; complex script code is invisible to the user, significantly simplifying the operation process, reducing the difficulty of operation, and lowering the technical requirements for the user.

[0127] According to another aspect of this application, a method for controlling an automated process is also provided. Figure 3A schematic flowchart of a control method 300 for an automated process according to an embodiment of this application is shown. As shown, the control method 300 includes:

[0128] Step S310: Before executing the automated process, add a variable node at the first position in the flowchart using the above-mentioned automated process editing method, and determine the script information of the application call instruction corresponding to the variable node.

[0129] Step S320: During the execution of the automated process, when executing the variable node, the application is called to perform processing operations on the data associated with the variable based on the script information.

[0130] In one example, refer again Figure 2 Taking device node 1, which corresponds to the ELISA reader, as an example, variable node 1 is configured with a script for the first instruction. The first instruction is a call instruction for the first application, which has a data template creation function. For example, when running to device node 1, the pre-operation of the ELISA reader is executed first. Since the ELISA reader door needs to be opened before handling consumables, the ELISA reader door opening operation needs to be executed first. Then, the robotic arm handling operation is executed, that is, the consumables are moved into the ELISA reader. Afterwards, the various instruction scripts in variable node 1 are executed. If multiple instruction scripts are configured in variable node 1, they are executed sequentially. Specifically, when the script for the first instruction is executed, the first application is automatically started. At this time, the five parameters configured by the user through the instruction setting interface and parameter configuration interface are used. Parameter 1: Application path and filename. Parameter 2: Parameters for calling the third-party program. Parameter 3: Whether to wait for the application to finish execution. Parameter 4: Whether to save the execution result of the first application. Parameter 5: The address for storing the execution result of the first application; specifically, it can be a variable name, that is, the result can be used as the value of a variable. First, the first application configured in the process can be located and its filename can be entered based on parameter 1. When the first application is started, parameter 2 will be used as the startup parameter required by the first application. The first application reads parameters from the corresponding address based on the startup parameters (such as data storage address). For example, for data from the ELISA reader (Gen51), the corresponding data needs to be read from the host computer corresponding to the ELISA reader (Gen51) for subsequent data merging. After the first application is started, parameter 3 is used to determine whether to continue the experimental process. When the first application ends, parameter 4 determines whether to store the execution results of the first application and store the results in the variable specified by parameter 5. Next, the main operation of the ELISA reader, i.e., the ELISA operation, can be executed. When performing the ELISA operation, the ELISA data can be written to the data template (e.g., an Excel file) generated by the first application.

[0131] In another example, refer again Figure 2Taking device node 1, which corresponds to the ELISA reader, as an example, variable node 1 contains a script for the first instruction. Between device node 1 and device node 2, there may also be a variable node 3 (not shown in the figure). Variable node 3 may contain a script for the second instruction. The second instruction is a call instruction to a second application that performs data merging and statistics. For example, after the above ELISA operation is completed, the script for the second instruction can be executed. Similar to executing the script for the first instruction, the second instruction can be executed based on the five parameters configured by the user through the instruction setting interface and parameter configuration interface. That is, the second application can be called to perform merging and statistics on the ELISA data stored in the data template, and the statistical results can be stored in the corresponding variables.

[0132] In the above solution, by providing a user interface displaying a flowchart, and based on user interaction with the interface, variable nodes can be added before and after target nodes in the automated process, and the script information of the application call instructions corresponding to the variable nodes can be determined. During the execution of the automated process, before and after the target device performs the main operation, the script of the application call instruction is executed to automatically and in real time call the corresponding third-party application to process the variable-related data. This solution, through user interaction, adds variable nodes containing instruction scripts for calling third-party applications before and after the experimental nodes in the automated process where the user expects to obtain data. When the automated process reaches the experimental node, the instruction script is automatically executed to achieve real-time and accurate data processing. This not only achieves automatic, real-time, and accurate data processing while effectively ensuring the confidentiality of data and algorithms, but also reduces the manpower and time costs consumed by manually importing and exporting data. In addition, this solution can meet the data processing needs in various scenarios, not only in data confidentiality scenarios and real-time data scenarios, but also in high-throughput scenarios with variable experimental processes, achieving accurate data processing. Therefore, this solution has better scalability and a better user experience.

[0133] According to another aspect of this application, an automated workflow editing system is also provided. Figure 4 A flowchart of an automated workflow editing system 400 according to an embodiment of this application is shown. As shown, it includes:

[0134] Display module 410 is used to display a first user interface, wherein the first user interface includes a flowchart of an automated process consisting of multiple device nodes, and each device node corresponds to a master device in the automated process;

[0135] The node adding module 420 is used to add a variable node at the first position in the flowchart based on the user's first operation information on the target node. The target node is any one of multiple device nodes, and the first position is either before or after the target node. The variable node corresponds to the variables involved in the main operation performed by the target device, which is the main device corresponding to the target node.

[0136] The determination module 430 is used to determine the script information of the application call instruction corresponding to the variable node, so that when the variable node is executed, the corresponding application is called according to the script information to perform processing operations on the data associated with the variable, wherein the processing operations correspond to the functions of the application.

[0137] According to another aspect of this application, a control system for an automated process is also provided. Figure 5 A flowchart of a control system 500 for an automated process according to an embodiment of this application is shown. As shown, it includes:

[0138] The editing module 510 is used to add a variable node at the first position in the flowchart using the above-mentioned automated process editing method before executing the automated process, and to determine the script information of the application call instruction corresponding to the variable node.

[0139] The processing module 520 is used to call the application to perform processing operations on the data associated with the variable based on the script information when executing the variable node during the execution of the automated process.

[0140] According to another aspect of this application, an electronic device is also provided. Figure 6 A schematic block diagram of an electronic device 600 according to an embodiment of this application is shown. As shown, the electronic device 600 includes a processor 610 and a memory 620. The memory 620 stores computer program instructions, which, when executed by the processor 610, are used to perform the editing method 100 and / or the control method 300 of the aforementioned automated process.

[0141] According to another aspect of this application, a storage medium is also provided. Program instructions are stored on the storage medium, which, when executed, are used to perform the editing method 100 and / or the control method 300 of the aforementioned automated process. The storage medium may, for example, include an erasable programmable read-only memory (EPROM), a portable read-only memory (CD-ROM), a USB memory, or any combination of the above storage media. The storage medium may be any combination of one or more computer-readable storage media.

[0142] Those skilled in the art can understand the specific implementation schemes and beneficial effects of the above-mentioned automated process editing system, automated process control system, electronic equipment and storage medium by reading the relevant descriptions of the automated process editing method and automated process control method. For the sake of brevity, they will not be described in detail here.

[0143] Although exemplary embodiments have been described herein with reference to the accompanying drawings, it should be understood that the above exemplary embodiments are merely illustrative and are not intended to limit the scope of this application. Various changes and modifications can be made therein by those skilled in the art without departing from the scope and spirit of this application. All such changes and modifications are intended to be included within the scope of this application as claimed in the appended claims.

[0144] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0145] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed.

[0146] Numerous specific details are set forth in the specification provided herein. However, it will be understood that embodiments of this application may be practiced without these specific details. In some instances, well-known methods, structures, and techniques have not been shown in detail so as not to obscure the understanding of this specification.

[0147] Similarly, it should be understood that, in order to simplify this application and aid in understanding one or more of the various inventive aspects, features of this application are sometimes grouped together in a single embodiment, figure, or description thereof in the description of exemplary embodiments of this application. However, this approach should not be construed as reflecting an intention that the claimed application requires more features than are expressly recited in each claim. Rather, as reflected in the corresponding claims, the inventive point lies in solving the corresponding technical problem with fewer features than all of those in a single disclosed embodiment. Therefore, the claims following the detailed description are hereby expressly incorporated into that detailed description, wherein each claim itself is a separate embodiment of this application.

[0148] Those skilled in the art will understand that, apart from the mutual exclusion of features, all features disclosed in this specification (including the accompanying claims, abstract, and drawings) and all processes or units of any method or apparatus so disclosed can be combined in any combination. Unless otherwise expressly stated, each feature disclosed in this specification (including the accompanying claims, abstract, and drawings) may be replaced by an alternative feature that serves the same, equivalent, or similar purpose.

[0149] Furthermore, those skilled in the art will understand that although some embodiments described herein include certain features but not others included in other embodiments, combinations of features from different embodiments are intended to be within the scope of this application and form different embodiments. For example, in the claims, any one of the claimed embodiments can be used in any combination.

[0150] The various component embodiments of this application can be implemented in hardware, or as software modules running on one or more processors, or a combination thereof. Those skilled in the art will understand that microprocessors or digital signal processors (DSPs) can be used in practice to implement some or all of the functions of some modules in the automated process editing system or automated process control system according to the embodiments of this application. This application can also be implemented as an apparatus program (e.g., a computer program and computer program product) for performing part or all of the methods described herein. Such an implementation of this application can be stored on a computer-readable medium, or can be in the form of one or more signals. Such signals can be downloaded from an Internet website, provided on a carrier signal, or provided in any other form.

[0151] It should be noted that the above embodiments are illustrative of this application and not restrictive, and that those skilled in the art can devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses should not be construed as limiting the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. This application can be implemented by means of hardware comprising several different elements and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by the same item of hardware. The use of the words first, second, and third, etc., does not indicate any order. These words can be interpreted as names.

[0152] The above description is merely a specific embodiment or illustration of the embodiments of this application. The scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. The scope of protection of this application shall be determined by the scope of the claims.

Claims

1. A method for editing an automated workflow, characterized in that, include: Display a first user interface, wherein the first user interface includes a flowchart of an automated process consisting of multiple device nodes, and each device node corresponds to a master device in the automated process; Based on the user's first operation information on the target node, a variable node is added at a first position in the flowchart. The target node is any one of the plurality of device nodes. The first position is either before or after the target node. The variable node corresponds to the variables involved in the main operation performed by the target device, and the target device is the main device corresponding to the target node. Determine the script information of the application call instruction corresponding to the variable node, so that when the variable node is executed, the corresponding application is called according to the script information to perform processing operations on the data associated with the variable, wherein the processing operations correspond to the functions of the application.

2. The method for editing an automated workflow as described in claim 1, characterized in that, The variable node includes a first node preceding the target node. The application includes a first application with data template creation functionality. The script information determining the application call instructions corresponding to the variable node includes: Determine the script information of the first instruction corresponding to the first node, so as to call the first application to create a data writing template for the variable before the target device executes the main operation, and write the data associated with the variable into the template when the target device executes the main operation; The first instruction is a call instruction for the first application.

3. The method for editing an automated workflow as described in claim 2, characterized in that, The variable node includes a second node, which follows the target node. The application includes a second application with data statistics functionality. The script information for determining the application call instructions corresponding to the variable node includes: Determine the script information of the second instruction corresponding to the second node, so as to call the second application to perform statistics on the data associated with the variable after the target device executes the main operation; The second instruction is a command to invoke the second application.

4. The method for editing an automated process as described in any one of claims 1 to 3, characterized in that, The script information for determining the application call instruction corresponding to the variable node further includes: A first storage address for the data associated with the variable is determined, so that the first storage address is used as the startup parameter of the application when the application is launched, so that the application retrieves the data associated with the variable from the first storage address and performs the processing operation.

5. The method for editing an automated process as described in claim 4, characterized in that, Determining the first storage address of the data associated with the variable includes: Get the name of the expression for the variable; and The names of the expressions are concatenated to determine the first storage address of the data associated with the variable.

6. The method for editing an automated process as described in any one of claims 1 to 3, characterized in that, The script information for determining the application call instruction corresponding to the variable node includes: The storage path and storage name of the application are determined so that when the variable node is executed, the application with the storage name is invoked from the storage path to perform processing operations on the data associated with the variable.

7. The method for editing an automated process as described in any one of claims 1 to 3, characterized in that, The script information for determining the application call instruction corresponding to the variable node further includes: Determine the execution timing information of the next operation associated with the variable node, wherein the execution timing information includes first execution information and second execution information, the first execution information indicates that the next operation is executed only after the application has completed the processing operation, and the second execution information indicates that the next operation is executed in parallel with the application executing the processing operation.

8. The method for editing an automated process as described in any one of claims 1 to 3, characterized in that, The script information for determining the application call instruction corresponding to the variable node further includes: Determine whether to save the information regarding the execution results of the application.

9. The method for editing an automated process as described in any one of claims 1 to 3, characterized in that, The script information for determining the application call instruction corresponding to the variable node further includes: Information to determine a second storage address, wherein the second storage address is the storage address of the execution result of the application.

10. The method for editing an automated process as described in any one of claims 1 to 3, characterized in that, The script information for determining the application call instruction corresponding to the variable node includes: In response to the first operation, a second user interface is displayed, wherein the second user interface includes a first control, the first control being used to provide the user with an input interface or selection interface for adding a script step to invoke the application; and Based on the user's operation information on the second operation of the first control, the script information of the application call instruction corresponding to the variable node is determined.

11. The method for editing an automated process as described in claim 10, characterized in that, The step of determining the script information of the application call instruction corresponding to the variable node based on the user's second operation information on the first control includes: In response to the second operation, a third user interface is displayed, wherein the third user interface includes at least one second control, the second control being used to provide the user with an input interface or a selection interface for setting parameters of the script step; In response to the user's third operation on the second control, the parameters are obtained; and Based on the parameters, the script information for the application call instruction corresponding to the variable node is determined.

12. A method for controlling an automated process, characterized in that, include: Before executing the automated process, a variable node is added at a first position in the flowchart using the automated process editing method as described in any one of claims 1 to 11, and the script information of the application call instruction corresponding to the variable node is determined. as well as During the execution of the automated process, when the variable node is executed, the application is invoked to perform processing operations on the data associated with the variable based on the script information.

13. An automated workflow editing system, characterized in that, include: The display module is used to display a first user interface, wherein the first user interface includes a flowchart of an automated process consisting of multiple device nodes, and each device node corresponds to a master device in the automated process; A node adding module is used to add a variable node at a first position in the flowchart based on the user's first operation information on a target node. The target node is any one of the plurality of device nodes. The first position is either before or after the target node. The variable node corresponds to variables involved in the main operation performed by the target device, and the target device is the main device corresponding to the target node. The determination module is used to determine the script information of the application call instruction corresponding to the variable node, so as to call the corresponding application to perform processing operations on the data associated with the variable according to the script information when the variable node is executed, wherein the processing operation corresponds to the function of the application.

14. A control system for an automated process, characterized in that, include: An editing module is used to add a variable node at a first position in the flowchart using the editing method of the automated process as described in any one of claims 1 to 11 before executing the automated process, and to determine the script information of the application call instruction corresponding to the variable node; as well as The processing module is used to, during the execution of the automated process, invoke the application to perform processing operations on the data associated with the variable based on the script information when executing the variable node.

15. An electronic device comprising a processor and a memory, characterized in that, The memory stores computer program instructions, which, when executed by the processor, are used to perform the editing method of the automated process as described in any one of claims 1 to 11 and / or the control method of the automated process as described in claim 12.

16. A storage medium on which program instructions are stored, characterized in that, The program instructions, when executed, are used to perform the editing method of the automated process as described in any one of claims 1 to 11 and / or the control method of the automated process as described in claim 12.

Citation Information

Patent Citations

  • A method for expanding workflow node task executors and a flow engine

    CN109670726A

  • Configuration method and device for circulation process in automatic process and electronic equipment

    CN115640073A