Control method and apparatus for automated process, electronic device, and storage medium
By grouping the main and auxiliary operations of the automated process into operation sets, the inefficiency problem in the existing technology in scenarios such as process termination is solved, and more efficient process control is achieved.
Patent Information
- Application Number
- PCT/CN2024/141047
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-22
- Filing Date
- 2024-12-20
- Publication Date
- 2025-06-26
AI Technical Summary
Existing automated process control methods are inefficient in handling special scenarios such as process termination, especially in complex processes, where steps need to be deleted and re-added, resulting in inefficiency.
By obtaining an ordered operation group of automated processes, the correspondence between the main operation and the auxiliary operation is determined, and grouped into an operation set, and processed as a whole to improve the efficiency of process control.
This method significantly improves processing efficiency in special scenarios such as process termination, avoids the inefficiency of deleting and re-adding steps, and is especially suitable for complex automated processes.
Smart Images

Figure CN2024141047_26062025_PF_FP_ABST
Abstract
Description
Automation process control method, device, electronic device and storage medium
[0001] This application claims priority to the Chinese patent application with application number 202311778360.X filed with the Chinese Patent Office on December 22, 2023, and application name “Control method, device, electronic device and storage medium for automated process”, and claims priority to the Chinese patent application with application number 202311778741.8 filed with the Chinese Patent Office on December 22, 2023, and application name “Grouping method, control method and device for sub-operations in automated process”, the entire contents of which are incorporated by reference into this application. Technical Field
[0002] The present application relates to the field of automation, and more specifically to a control method for an automation process, a control device for an automation process, an electronic device, and a storage medium. Background Art
[0003] Currently, many fields are continuously implementing automation transformations to achieve the goals of freeing up manpower and improving efficiency. Whether it is automated manufacturing, automated testing, or automated testing / experiments, automated systems are widely used. Taking laboratory automation systems as an example, the automation system can include multiple devices. Users use the automation system to build corresponding automated processes to achieve the purpose of testing / experiments. Specifically, the automated process can be composed of multiple process nodes, each process node corresponding to a device, and a device generally corresponding to multiple operations. For example, the automated process can be composed of the following nodes: consumables (such as well plates) node (corresponding to a starting location) → first device node (such as a pipetting workstation) → second device node (such as an incubator) → end node (the final destination of the consumables, corresponding to an end location). For example, the first device node corresponds to a device, namely a pipetting workstation, and multiple operations, namely, opening the door, transferring within the pipetting workstation, closing the door, and pipetting.
[0004] Before the automation system is running, the automation process needs to be parsed into an operation sequence. Usually, a node may be parsed into multiple operations, and these operations are defined as pre-operation, main operation and post-operation according to the main function of the equipment. As the name suggests, the main operation is the main operation performed by the equipment. For example, the main function of the pipetting workstation is pipetting, so the pipetting operation is the main operation, and the operation before the pipetting operation can be defined as the pre-operation. Similarly, the operation after the pipetting operation can be defined as the post-operation. During the operation of the automation process, the pre-operation, main operation and post-operation are usually processed separately. In some cases, it is necessary to implement related functions as a whole for these operations. For example, if the process needs to be terminated during operation, it is necessary to plan the path for the consumables to the specified location. The usual practice is to directly delete the remaining unexecuted steps and add the steps to the specified location. This method is inefficient because it needs to be deleted and then added again. This disadvantage is particularly obvious for complex automation processes. Summary of the Invention
[0005] The present application is proposed in view of the above problems. In a first aspect, the present application provides a method for controlling an automated process, wherein the automated process includes a start node, an intermediate node, and an end node connected in sequence, wherein the start node represents the position of a sample before the start of the automated process, the end node represents the position of the sample after the end of the automated process, and the intermediate node includes a device node, which is used to represent the position corresponding to the sample when performing related operations between the start position and the end position; the method includes: obtaining an ordered operation group of the automated process, wherein the ordered operation group is obtained according to the connection relationship between each node in the automated process, wherein the ordered operation group includes a plurality of ordered sub-operations, wherein the types of sub-operations include a main operation and an auxiliary operation other than the main operation, wherein the main operation is an operation corresponding to the main function of the device corresponding to the device node; determining all main operations in the ordered operation group; determining the auxiliary operation corresponding to each main operation based on the ordered operation group, and treating the main operation and the corresponding auxiliary operation as an operation set; wherein the correspondence between the main operation and the auxiliary operation is determined according to the device attribute corresponding to the main operation; and controlling the execution of the automated process based on the determined operation set.
[0006] In one possible embodiment, the auxiliary operation includes a front operation performed before the corresponding main operation and a back operation performed after the corresponding main operation, wherein the front operation or the back operation includes a transport operation between devices and / or a reversing operation for adjusting the direction of a consumable, wherein the consumable is a container for holding a sample;
[0007] In the case where there are multiple main operations in the ordered operation group, before controlling the execution of the automation process based on the determined operation set, the method further includes:
[0008] For two adjacent operation sets, all reversing operations and transfer operations between devices are determined in the second operation set; when the transfer operation and the reversing operation are the previous operations, the transfer operation and the reversing operation are used as shared operations of the first operation set and the second operation set, and the execution time of the first operation set is earlier than the execution time of the second operation set.
[0009] In a possible implementation, determining the auxiliary operation corresponding to each main operation based on the ordered operation group, and treating the main operation and the corresponding auxiliary operation as an operation set, includes:
[0010] Based on the ordered operation group, determining the execution order of each main operation in the ordered operation group to obtain an ordered main operation;
[0011] Based on each main operation, the sub-operations in the ordered operation group are grouped to form a corresponding operation group;
[0012] Traversing each operation group, and determining the intersection of the sub-operations contained in the operation group and the ordered main operation;
[0013] When the intersection is not empty, determine whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation based on the position of the main operation in the ordered main operations in the intersection and the corresponding relationship between each sub-operation in the corresponding operation group and the main operation. The corresponding relationship is the corresponding relationship between the main operation and the auxiliary operation.
[0014] In a possible implementation, the sub-operations in the ordered operation group are grouped based on each main operation to form a corresponding operation group, including:
[0015] Based on the ordered operation group, the sub-operations of the first main operation that are executed earlier than the main operation and the main operation are taken as one operation group, the sub-operations between two adjacent main operations in the ordered operation group and the main operation executed later than the two adjacent main operations are taken as another operation group, and the sub-operations of the last main operation that are executed later than the main operation are taken as yet another operation group.
[0016] In a possible implementation, the method of combining the sub-operations of the first main operation that are executed earlier than the main operation and the main operation as one operation group, combining the sub-operations between two adjacent main operations in the ordered operation group and the main operation that is executed later than the two adjacent main operations as another operation group, and combining the sub-operations of the last main operation that are executed later than the main operation as yet another operation group based on the ordered operation group includes:
[0017] Deleting the sequential relationship of the next sub-operation connected to all main operations in the ordered operation group;
[0018] Setting an initial operation number for each sub-operation in the ordered operation group, and setting the operation group number of the current operation group to the initial value;
[0019] Create a new stack and initialize it to empty;
[0020] Traverse each sub-operation in the ordered operation group, and if the operation number of the sub-operation is the initial operation number, perform the following steps:
[0021] Modify the operation group number of the current operation group to the target value; and push the sub-operation into the stack;
[0022] If the stack is not empty, perform the following steps:
[0023] Taking out the sub-operation at the top of the stack, and if the operation number of the sub-operation is the initial operation number, setting the operation number of the sub-operation to the target value, which is recorded as the taking step;
[0024] Obtaining an adjacent sub-operation of the sub-operation, and if the operation number of the adjacent sub-operation is the initial operation number, pushing the adjacent sub-operation into a stack, which is recorded as a stacking step;
[0025] Determine again whether the stack is empty. If the stack is not empty, continue to loop the above steps of taking out and pushing;
[0026] When it is determined that the stack is empty, it is determined whether the traversal is completed. If not, the traversal continues to the next sub-operation in the ordered operation group until all sub-operations belong to the corresponding operation group.
[0027] In a possible implementation, when the intersection is not empty, determining whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation based on the position of the main operation in the ordered main operations in the intersection and the corresponding relationship between each sub-operation in the corresponding operation group and the main operation, wherein the corresponding relationship is the corresponding relationship between the main operation and the auxiliary operations, includes:
[0028] When the main operation in the intersection is the first main operation in the ordered main operations, all sub-operations in the current operation group belong to the same operation set;
[0029] When the main operation in the intersection is not the first main operation in the ordered main operations, determine whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation according to the following method:
[0030] In the case where a sub-operation in the corresponding operation group is the main operation, the main operation belongs to another operation set;
[0031] In the case where the sub-operation in the corresponding operation group is an auxiliary operation, based on the corresponding relationship between the auxiliary operation and the previous main operation, it is determined whether the auxiliary operation belongs to the same operation set as the main operation.
[0032] In one possible implementation, for the case where the sub-operation in the operation group is an auxiliary operation, when the auxiliary operation and the main operation do not belong to the same operation set, it is determined whether the auxiliary operation and the subsequent main operation belong to the same operation set based on the correspondence between the auxiliary operation and the subsequent main operation.
[0033] In a possible implementation, when the intersection is empty, all sub-operations in the corresponding operation group belong to the last operation set.
[0034] In a possible implementation, the starting node corresponds to multiple samples, and before determining all main operations in the ordered operation group for the ordered operation group, the method includes: determining, based on the ordered operation group and taking the sample as a unit, an ordered operation group corresponding to the sample;
[0035] The determining all main operations in the ordered operation group for the ordered operation group includes: determining all main operations in the ordered operation group based on the determined ordered operation group corresponding to the sample.
[0036] In a possible implementation, when there is one main operation in the ordered operation group, all operations in the ordered operation group belong to the same operation set.
[0037] According to the second aspect of the present application, a control device for an automated process is also provided, wherein the automated process includes a starting node, an intermediate node, and an end node connected in sequence, wherein the starting node indicates the position of the sample before the start of the automated process, the end node indicates the position of the sample after the end of the automated process, and the intermediate node includes a device node for indicating the position corresponding to the sample when performing related operations between the starting position and the end position; the method includes: an acquisition module for acquiring an ordered operation group of the automated process, wherein the ordered operation group is obtained according to the connection relationship between the nodes in the automated process, and the ordered operation group The ordered operation group includes multiple ordered sub-operations, and the types of sub-operations include main operations and auxiliary operations other than the main operations. The main operation is an operation corresponding to the main function of the device corresponding to the device node; a first determination module is used to determine all main operations in the ordered operation group for the ordered operation group; a second determination module is used to determine the auxiliary operations corresponding to each main operation based on the ordered operation group, and regard the main operation and the corresponding auxiliary operations as an operation set; wherein the correspondence between the main operation and the auxiliary operation is determined according to the device attribute corresponding to the main operation; a control module is used to control the execution of the automation process based on the determined operation set.
[0038] According to a third aspect of the present application, an electronic device is also provided, comprising a processor and a memory, wherein the memory stores computer program instructions, and the computer program instructions are used by the processor to execute the control method of the above automation process when the processor is running.
[0039] According to a fourth aspect of the present application, a storage medium is further provided, on which program instructions are stored. The program instructions are used to execute the control method of the above automation process when running.
[0040] In the above technical solution, in actual application scenarios (such as process termination scenarios), the process is processed and controlled by the control method of the automated process provided by this application, which can effectively improve the processing efficiency. Specifically, during the operation of the automated process, it is necessary to execute the "terminate" command on the automated process. At this time, the control method of the automated process provided by this application is used to first group the sub-operations to form multiple operation sets (it can be understood that one operation set corresponds to one group), and then the corresponding operation sets are regarded as a whole to consider subsequent related issues or steps. Compared with the method of deleting the remaining unexecuted sub-operations and adding them to the specified location, the control method of the automated process provided by this application is more efficient in processing some special application scenarios (such as process termination) and has strong reusability. This advantage is particularly obvious for complex automated processes.
[0041] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0042] The above and other purposes, features, and advantages of the present application will become more apparent through a more detailed description of the embodiments of the present application in conjunction with the accompanying drawings. The accompanying drawings are intended to provide a further understanding of the embodiments of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the present application and do not constitute a limitation of the present application. In the drawings, the same reference numerals generally represent the same components or steps.
[0043] FIG1 shows a schematic flow chart of an automation process according to an embodiment of the present application;
[0044] FIG2 shows a schematic flow chart of a method for controlling an automated process according to an embodiment of the present application;
[0045] FIG3 is a schematic diagram showing an ordered operation group obtained according to the connection relationship between the nodes in the automation process of the embodiment corresponding to FIG1 of the present application;
[0046] FIG4 is a schematic diagram showing a grouping result based on the ordered operation group shown in FIG3 ;
[0047] FIG5 shows a flowchart of determining an ordered main operation according to an embodiment of the present application;
[0048] FIG6 shows a logic diagram of a method for controlling an automated process according to an embodiment of the present application;
[0049] FIG7 is a schematic diagram of an ordered operation group obtained by connecting nodes in an automation process according to another embodiment of the present application;
[0050] FIG8 shows a schematic block diagram of a device for grouping sub-operations in an automated process according to an embodiment of the present application; and
[0051] FIG9 shows a schematic block diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0052] In order to make the purpose, technical solutions and advantages of the present application more apparent, the following is a detailed description of example embodiments of the present application with reference to the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments of the present application, and it should be understood that the present application is not limited to the example embodiments described herein. Based on the embodiments of the present application described in this application, all other embodiments obtained by those skilled in the art without creative work should fall within the scope of protection of this application.
[0053] In order to at least partially solve the above problems, an embodiment of the present application provides a control method for an automated process. The control method for an automated process can be applied in a control device for an automated process. The automated process includes a starting node, an intermediate node, and an end node connected in sequence. In other words, the automated process is connected by a plurality of nodes. For example, a schematic flow chart of an automated process according to an embodiment of the present application is shown in FIG1 . In FIG1 , reference numeral 10 represents a starting node, and reference numeral 20 represents an intermediate node. When building an automated process, the end node is generally omitted, so the end node is not shown in FIG1 . The starting node indicates the position of the sample before the start of the automated process, and the ending node indicates the position of the sample after the end of the automated process. The intermediate nodes include device nodes, which are used to indicate the positions corresponding to the samples when performing relevant operations between the starting position and the ending position. It can be understood that there can be multiple intermediate nodes. For example, the centrifuge (device node) and incubator (device node) in Figure 1 can be considered as intermediate nodes. When the sample flows to the device corresponding to the centrifuge node, the relevant centrifugation operation will be performed. Similarly, when the sample flows to the incubator, the incubation operation will be performed. The connection between nodes can be understood as a transport operation. For example, the connection from the starting node to the node corresponding to the centrifuge indicates that the sample needs to be transported from the starting position to the centrifuge.
[0054] Fig. 2 shows a schematic flow chart of a method 100 for controlling an automated process according to an embodiment of the present application. As shown in Fig. 2 , the method 100 may include steps S110, S120, S130, and S140.
[0055] Step S110, obtaining an ordered operation group of the automated process. The ordered operation group is obtained based on the connection relationship between each node in the automated process. The ordered operation group includes multiple ordered sub-operations. The types of sub-operations are main operations and auxiliary operations other than the main operation. The main operation is an operation corresponding to the main function of the device corresponding to the device node.
[0056] As the name suggests, the operations in the ordered operation group are ordered. More specifically, the execution time of these sub-operations is ordered. Specifically, after the user builds the automated process as shown in Figure 1, the process will be parsed according to the connection relationship between each node in the automated process to obtain an ordered operation group. The ordered operation group includes multiple sub-operations, and these sub-operations are in order. The sub-operations in the front are executed first, and the sub-operations in the back are executed later. As shown in Figure 3, this is an ordered operation group obtained according to the connection relationship between each node in the automated process in Figure 1. The execution order of the sub-operations is indicated by the direction of the arrows and the front and back positions of the sub-operations. It can be understood that the sub-operations in the ordered operation group are the smallest units of operations.
[0057] For example, for some application scenarios, the ordered operation group can also be obtained based on the connection relationship between each node and some special needs that arise during the operation process. For example, during the process operation, there is a lack of pipette tips when pipetting at the pipetting workstation. At this time, it is necessary to insert the pipette tip for loading operations, thereby obtaining an ordered operation group.
[0058] In step S110, the types of sub-operations include main operations and auxiliary operations other than the main operations. The main operation is an operation corresponding to the main function of the device corresponding to the corresponding node (device node). It can be understood that in an ordered operation group, there are two types of sub-operations, one is the main operation and the other is the auxiliary operation, and the main operation is the main function of the device corresponding to the device node. For example, the main function of the centrifuge is centrifugation, so the centrifugation operation is the main operation. For example, referring to Figure 3, the ordered operation group in Figure 3 corresponds to the automated process shown in Figure 1. The main function is that the sample first enters the centrifuge for centrifugation and then enters the incubator for incubation. In the ordered operation group shown in Figure 3, since the flowchart in Figure 1 corresponds to two device nodes, there are two main operations in the corresponding ordered operation group, namely, sub-operation 42 and sub-operation 49. Sub-operation 42 is a centrifugation operation and sub-operation 49 is an incubation operation. As for sub-operation 37 (centrifuge rotation operation, it is required before centrifugation), The following operations are auxiliary operations: sub-operation 38 (centrifuge door opening operation), sub-operation 39 (robotic arm 1 moves the sample to the middle position), sub-operation 40 (robotic arm 2 moves the sample from the middle position into the centrifuge), sub-operation 41 (centrifuge door closing operation), sub-operation 43 (centrifuge rotation operation, which needs to be rotated into place after centrifugation), sub-operation 44 (centrifuge door opening operation), sub-operation 45 (robotic arm 2 handling operation, specifically the robotic arm moves the sample from the centrifuge to the middle position), sub-operation 46 (robotic arm 1 moves the sample from the middle position into the incubator), sub-operation 47 (centrifuge door closing operation), sub-operation 48 (transferring the sample from the incubator to the incubation station), sub-operation 50 (transferring the sample from the incubator to the incubator outlet), and sub-operation 51 (robotic arm 1 moves the sample out of the incubator).
[0059] Exemplarily, auxiliary operations may include pre-operations performed before the corresponding main operation and post-operations performed after the corresponding main operation. Pre-operations or post-operations include transfer operations between devices (robotic arm handling). Continuing to refer to Figure 3, sub-operation 42 is the main operation, and sub-operations 37, 38, 39, 40, and 41 before the main operation are all pre-operations of the main operation 42; similarly, sub-operations 43, 44, and 47 after sub-operation 42 (main operation) are post-operations of the main operation. Sub-operation 49 is the main operation, and sub-operations 45, 46, and 48 before the main operation are all pre-operations of the main operation 49; sub-operations 50 and 51 after the main operation are post-operations of the main operation. It should be noted that the correspondence between primary and secondary operations is determined based on the device attributes corresponding to the primary operation. Not all sub-operations preceding a primary operation are secondary operations. For example, sub-operation 47, which closes the centrifuge door, is a subsequent operation to the primary operation corresponding to sub-operation 42, rather than a preceding operation to the primary operation corresponding to sub-operation 49. The correspondence between primary and secondary operations will be discussed in detail below.
[0060] For example, in certain application scenarios, since there are requirements for the direction of the consumables before and after transportation, the direction of the consumables will be adjusted by the diverter during the transportation process (the consumables are containers for holding samples). Specifically, for example, the sample is first transported to the diverter by the robot 1. After the commutator rotates and reverses, the robot 2 transports the sample to the designated position. Of course, if the distance is appropriate, the robot 2 may not be needed, and the sample can be directly transported to the designated position by the robot 1. Therefore, the reversing operation is also an auxiliary operation. At the same time, according to the position of the reversing operation in the ordered operation group and the corresponding relationship between the reversing operation and the main operation, the reversing operation may be a front operation or a rear operation. Similarly, the robot arm transportation, that is, the transfer operation may be a front operation or a rear operation according to the position of the transfer operation in the ordered operation group.
[0061] Step S120: determining all main operations in the ordered operation group.
[0062] For example, before setting up the automated process, the user will configure the corresponding device properties, which will configure the main operation of the device and the corresponding front and back operations (for example, for a centrifuge, according to its device properties, it needs to be rotated into place before centrifugation and the door needs to be opened, so it is necessary to configure the front operation of the centrifugation operation, such as sub-operation 37 and sub-operation 38 above). In this way, for example, matching can be performed by ID number (of course, matching can also be performed in other ways). In this way, it is possible to determine which operation is the main operation and which sub-operations are the corresponding front and back operations based on the corresponding ID number. In this way, the correspondence between the main operation and the corresponding auxiliary operation (front operation and / or back operation) can be established. Specifically, each device has a main instruction and several front and back operation instructions. The main instruction is identified by the IsMainCommand attribute, and the front and back operations are associated with the main instruction to which they belong through the MainDeviceCommandId attribute. This information will be attached to the process when it is built. During process parsing, each sub-operation will be assigned an ID number (for example, an integer ID number). The corresponding relationship between the main operation and its preceding and following operations can then be determined based on the MainDeviceCommandId property of each sub-operation. Specifically, taking the incubator as an example, during process parsing, the main operation Incubate, the preceding operation PlateIn, and the following operation PlateOut will be assigned an ID number (for example, 2). In this way, the MainDeviceCommandId can be used to determine the corresponding relationship between the main operation Incubate, the preceding operation PlateIn, and the following operation PlateOut.
[0063] Step S130: Based on the ordered operation group, determine the auxiliary operation corresponding to each main operation, and take the main operation and the corresponding auxiliary operation as an operation set. The correspondence between the main operation and the auxiliary operation is determined according to the device attribute corresponding to the main operation.
[0064] For example, as shown in FIG3 and combined with the above description, it can be seen that according to the pre-established correspondence between the main operation and the auxiliary operations, the corresponding auxiliary operations of the main operation 42 can be determined as sub-operations 37, 38, 39, 40, and sub-operations 41, 43, 44, and 47, respectively. In this way, sub-operations 37, 38, 39, 40, and sub-operations 41, 42, 43, 44, and 47 can be regarded as one operation set. Similarly, the main operation 49 and its corresponding auxiliary operations, namely, sub-operations 45, 46, 48, 49, 50, and 51, can be regarded as another operation set.
[0065] Step S140: Control the execution of the automation process based on the determined operation set.
[0066] For example, in the embodiment corresponding to FIG3 , two operation sets are determined, so that when applied to corresponding scenarios or requirements, each operation set can be used as a whole based on the determined operation set to control the execution of the automation process.
[0067] In the above technical solution, in actual application scenarios (such as process termination scenarios), the process is processed and controlled by the control method of the automated process provided by the present application, which can effectively improve processing efficiency. Specifically, during the operation of the automated process, it is necessary to execute the "terminate" command on the automated process. At this time, the control method of the automated process provided by the present application is first used to group the sub-operations to form multiple operation sets (it can be understood that one operation set corresponds to one group), and then the corresponding operation set is regarded as a whole to consider subsequent related issues or steps. Exemplarily, with reference to the embodiment corresponding to Figure 3, it is assumed that the automated process needs to be terminated during the incubator incubation process. In this way, since the incubator incubation operation corresponds to the second operation set, the second operation set is considered as a whole. Due to the termination during the incubation operation, it is necessary to transfer the sample to the outlet (sub-operation 50) and the robot arm transport (sub-operation 51) after the incubator operation is completed, so that the sample can be transported to the specified location (the placement position of the sample when the process is terminated is pre-set). On the contrary, when the incubation operation is terminated, if the control method of the automation process provided by the present application is not adopted to first group the sub-operations, but the method of directly deleting the remaining unexecuted sub-operations and adding them to the specified position is adopted, it is obvious that this method is time-consuming on the one hand (because it is necessary to delete and then re-add), and especially for some more complex automation processes, this time-consuming and inefficient defect is particularly obvious. Therefore, it is more efficient to use the control method of the automation process provided by the present application to handle some special application scenarios (such as process termination), and it has strong reusability. This advantage is particularly obvious for complex automation processes. In addition, the present application can ensure the accuracy and continuity of sub-operations. If the method of deleting and re-adding is adopted, some auxiliary sub-operations will be deleted, which will break the continuity of the process operation.
[0068] For example, in the case where there are multiple main operations in the ordered operation group, before controlling the execution of the automation process based on the determined operation set, the method further includes:
[0069] Step S150: For two adjacent operation sets, determine all reversing operations and transfer operations between devices in the second operation set; when the transfer operation and the reversing operation are the previous operations, the transfer operation and the reversing operation are used as shared operations of the first operation set and the second operation set, and the execution time of the first operation set is earlier than the execution time of the second operation set.
[0070] As mentioned above, the reversing operation and the transfer operation can be either the front operation or the back operation, and the determination of the front operation and the back operation can be determined based on the pre-configured ID number, and the ID number will contain information identifying which specific front operation or back operation it is. For example, the transfer operation is determined by the IsMoveLabware attribute, and the reversing operation is determined by the Regrip attribute. These two attributes are inherent attributes of the device instructions and are determined when the device is created. The determination of the front operation and the back operation is edited in the front and back operation editing page of the device node when the process is set up. The process parser will then create a sub-operation based on this information when the process is set up. If the sub-operation is set to the front operation, the value of IsPreAction is assigned. If the sub-operation is set to the back operation, the value of IsPostAction is assigned.
[0071] In step 150, when the transfer operation and the reversing operation are the previous operations, the transfer operation and the reversing operation are used as shared operations of the first operation set and the second operation set in the two adjacent operation sets, that is, based on the grouping result of step S130, the transfer operation and the reversing operation in the second operation set are added to the first operation set, so that the transfer operation and the reversing operation belong to both the first operation set and the second operation set, and are therefore considered to be shared operations of the two operation sets. This is because the transfer operation and the reversing operation (in some cases, the reversing operation is not required, only the transfer sub-operation is required) are used to transfer the sample from the device corresponding to the previous main operation to the device corresponding to the next main operation. Therefore, they can be regarded as serving both the previous main operation and the next main operation, and therefore belong to the operation set (first operation set) where the previous main operation is located and the operation set (second operation set) where the next main operation is located. In an ordered operation group, because the sub-operations are in order, the ones with earlier orders are executed first, and the ones with later orders are executed later. Therefore, the corresponding grouped operation sets are also in order, and each sub-operation in the operation set is also in order. Therefore, the operation sets with earlier orders are executed first, and the operation sets with later orders are executed later. It can be understood that the order of the operation sets is determined by the order of the sub-operations that make up the operation set.
[0072] For example, continuing to refer to Figure 3, in the embodiment corresponding to Figure 3, since sub-operation 45 and sub-operation 46 are transfer operations between sub-operation 42 (main operation) 42 and sub-operation 49 (main operation) 49, sub-operation 45 and sub-operation 46 are shared operations, and both belong to the operation set to which sub-operation 42 (main operation) and sub-operation 49 (main operation) belong.
[0073] In the above technical solution, since the situation of shared operations is taken into consideration, grouping can be performed more accurately, thereby effectively solving specific needs when executing specific processes.
[0074] Exemplarily, step S130 determines the auxiliary operation corresponding to each main operation based on the ordered operation group, and regards the main operation and the corresponding auxiliary operation as an operation set. This step may include steps 131, 132, 133, and 134:
[0075] Step S131: Based on the ordered operation group, determining the execution order of each main operation in the ordered operation group to obtain the ordered main operation;
[0076] In an ordered operation group, each sub-operation is in order, and the main operation is also a sub-operation in the ordered operation group. Therefore, the order of each main operation can be determined based on the ordered operation group.
[0077] Exemplarily, in the embodiment corresponding to FIG3 , the order of the main operations determined according to the ordered operation group is sub-operation 42 (main operation) → sub-operation 49 (main operation), that is, the main operation corresponding to sub-operation 42 comes first, and the main operation corresponding to sub-operation 49 comes later.
[0078] For example, in combination with FIG3 and the flowchart of the main operation path calculation (i.e., determining the ordered main operation) in the embodiment shown in FIG5, for the embodiment shown in FIG3, the ordered main operation is determined as follows: first, the sub-operations that are not the main operation are deleted, leaving only the main operation, i.e., sub-operation 42 and sub-operation 49 (sub-operation 42→sub-operation 49); a new stack is created and initialized to be empty (the stack will be described in detail below); sub-operation 42 is pushed into the stack, and it is determined whether the stack is empty. If the stack is not empty, the sub-operation at the top of the stack, i.e., sub-operation 42, is obtained; it is determined whether the sub-operation at the top of the stack is the end point. If not, the first unvisited edge is obtained. (It can also be understood as obtaining the sequential relationship between the sub-operation and the next sub-operation. If it is not obtained, it means that the sub-operation has no next sub-operation. If it can be obtained, it means that the sub-operation has a corresponding next sub-operation). If the edge is not empty, the sub-operation corresponding to the edge is pushed into the stack, that is, sub-operation 49 is pushed into the stack; continue to judge whether the stack is empty. When the stack is not empty (from top to bottom in the stack: 49, 42), obtain the vertex at the top of the stack, that is, sub-operation 49; judge whether the sub-operation 49 at the top of the stack is the end point. If not, obtain the first unvisited edge again and continue the loop; if so, output the main operation path sub-operation 42 → sub-operation 49;
[0079] The top vertex 49 is popped from the stack. If the stack is not empty, the top vertex, i.e., vertex 42, is obtained. Since vertex 42 is not the end vertex, the first unvisited edge is obtained. If there is none, backtrack (pop vertex 42 and keep backtracking until a new edge is obtained. If no new edge is obtained until the stack is empty, the backtracking ends). It is determined again whether the stack is empty. If the stack is empty, the result is output. This embodiment has only one path.
[0080] Step S132: based on each main operation, group the sub-operations in the ordered operation group to form a corresponding operation group;
[0081] Exemplarily, step S132 may include step S132a, specifically:
[0082] Step S132a: Based on the ordered operation group, the sub-operations of the first main operation that are executed earlier than the main operation and the main operation are taken as one operation group, the sub-operations between two adjacent main operations in the ordered operation group and the main operation executed later than the two adjacent main operations are taken as another operation group, and the sub-operations of the last main operation that are executed later than the main operation are taken as yet another operation group.
[0083] Exemplarily, an ordered operation group may include one main operation or multiple main operations. For the case of one main operation, all sub-operations in the ordered operation group are directly regarded as an operation group, which can also be considered as an operation set; that is, for the case of one main operation in the ordered operation group, all operations of the ordered operation group belong to the same operation set; for the case of multiple main operations, the grouping result can be regarded as three parts, one part is the first operation group, one part is the middle operation group, and the other part is the last operation group. The sub-operations in the first operation group are composed of the sub-operations of the first main operation that are executed earlier than the main operation and the main operation. The middle operation group is composed of the sub-operations between two adjacent main operations and the main operation that is executed later than the two adjacent main operations. The last operation group is composed of the sub-operations of the last main operation that are executed later than the main operation. It is understandable that when there are more than three main operations, there are also multiple intermediate operation groups. For example, if there are four main operations, there are two intermediate operation groups, one of which is composed of the sub-operations between the first and second main operations and the second main operation (the second main operation is executed later than the first main operation), and the other is composed of the sub-operations between the second and third main operations and the third main operation (the third main operation is executed later than the second main operation). Figure 4 shows the grouping result based on the ordered operation groups shown in Figure 3. Figure numerals 61, 62, and 63 represent the first operation group, the second operation group, and the third operation group, respectively.
[0084] In the above technical solution, the sub-operations in the ordered operation group are first grouped by adopting step S132, and then the sub-operations in the ordered operation are further grouped based on the grouping results. It can also be understood as fine-tuning the grouping results of S132, so that the sub-operations in the ordered operation group can be accurately grouped, and each group can be considered as a whole in actual application, thereby effectively improving the execution efficiency of the automation process.
[0085] Exemplarily, step S132a includes: step S132a-1, step S132a-2, step S132a-3, and step S132a-4. Specifically:
[0086] Step S132a-1: Delete the sequence relationship of the next sub-operation connected to all main operations in the ordered operation group;
[0087] Exemplarily, a sequential relationship means that, in an ordered operation group, for a sub-operation, it includes a sequential relationship with the previous sub-operation and a sequential relationship with the next sub-operation. For example, if the sequential relationship between the sub-operation and the next sub-operation is deleted, the order of the sub-operation and the next sub-operation is deleted. For ease of understanding, it can also be illustrated with the help of a diagram. For example, as shown in FIG3 , the sequential relationship is represented by a directional arrow. For sub-operation 42 (main operation), the sequential relationship with the next sub-operation is deleted. Intuitively, it can be considered that the edge (arrow) starting from the sub-operation 42 in FIG3 is deleted. It can be understood that after deleting the sequential relationship between the main operation and the next sub-operation of the main operation, the next sub-operation of the main operation cannot be obtained based on the ordered operation group.
[0088] Step S132a-2: setting an initial operation number for each sub-operation in the ordered operation group, and setting the operation group number of the current operation group to the initial value;
[0089] For example, each sub-operation in the ordered operation group can be set with a corresponding initial operation number, for example, it can be set to 0; similarly, the operation group number of the current operation group can also be set to an initial value, for example, the initial value can also be 0. It can be understood that the operation number represents the sub-operation, while the operation group number represents the operation group composed of one or more sub-operations. For example, sub-operations 37 to sub-operations 51 in Figure 3 can each have an initial operation number of 0; and after grouping, multiple operation groups are formed, each operation group has its own operation group number, that is, sub-operation 37 → sub-operation 38 (sub-operation 39) → sub-operation 40 → sub-operation 41 → sub-operation 42 in Figure 3 can be considered as an operation group.
[0090] Step S132a-3: Create a new stack and initialize it to empty;
[0091] As you can understand, a stack, also known as a stack, is a linear list with restricted operations. It is a linear list that is limited to insertion and removal (deletion) operations at the end of the list. This end is called the top of the stack, and the other end is called the bottom of the stack. Inserting a new element into a stack is also called pushing, which is to place the new element on top of the stack element, making it the new top element; removing an element from a stack is to remove the top element from the stack, making its adjacent element the new top element. The elements here can be understood as sub-operations in an ordered operation group.
[0092] Step S132a-4: traverse each sub-operation in the ordered operation group, and if the operation number of the sub-operation is the initial operation number, perform the following steps:
[0093] Step S132a-4a: Modify the operation group number of the current operation group to the target value; and push the sub-operation into the stack;
[0094] For example, in the ordered operation group shown in FIG3 , the first sub-operation 37 is traversed. Since the operation number of sub-operation 37 is the initial operation number (set in step S132a-2), the operation group number of the current operation group can be modified to the target value, that is, the operation group number of the current operation group is modified from the initial value (e.g., 0) to the target value, e.g., the target value is 1. Correspondingly, sub-operation 37 is pushed onto the stack. Since the stack is empty before sub-operation 37 is pushed onto the stack, sub-operation 37 is now at the top of the stack.
[0095] In step S132a-4, when the operation number of the sub-operation is the initial operation number, the operation group number of the current operation group is modified to the target value. It should be noted that only when the operation number of the sub-operation (which can be understood as the current sub-operation) is the initial operation number when traversing the sub-operation, the operation group number of the current operation group needs to be modified to the target value; based on this situation, there may be multiple cases where the operation group number of the current operation group is modified. It can be understood that the target value is a general concept, and it does not mean that the operation group number of the current operation group needs to be modified to the same value every time. In this case, the grouping is meaningless. Therefore, it can be understood that each time the operation number of the current operation group needs to be modified, the target value is different. For example, when the operation group number of the current operation group needs to be modified, the operation group number of the current operation group can be increased by 1. As mentioned above, when the operation group number of the current operation group is the initial value 0, if the operation group number of the current operation group needs to be modified, For the operation group number, the operation group number of the current operation group can be increased by 1 based on the initial value (for example, 0), that is, the operation group number of the current operation group is modified to the target value 1. Specifically, in the embodiments shown in Figures 3 and 4, when traversing sub-operation 37, since the operation number of sub-operation 37 is the initial operation number (for example, 0), the operation group number of the current operation group is modified (in this embodiment, the operation group number of the current operation group is 0) to the target value, which is recorded as the first target value; and when traversing sub-operation 43, since the operation number of sub-operation 43 is the initial operation number (for example, 0), the operation group number of the current operation group needs to be modified to the second target value. It can be understood that the first target value and the second target value are different, for example, the first target value is 1 and the second target value is 2; that is, when the operation group number of the current operation group needs to be modified for the second time, the operation group number of the current operation group is 1, so 1 can be added to the operation group number of the current operation group. After the modification, the operation group number of the current operation group can be 2.
[0096] Step S132a-4b: If the stack is not empty, perform the following steps:
[0097] Take out the sub-operation at the top of the stack. If the operation number of the sub-operation is the initial operation number, set the operation number of the sub-operation to the target value, which is recorded as the take-out step.
[0098] Obtaining an adjacent sub-operation of the sub-operation, and if the operation number of the adjacent sub-operation is the initial operation number, pushing the adjacent sub-operation into a stack, which is recorded as a stacking step;
[0099] For example, for a sub-operation, its adjacent sub-operations may be one or more. In one embodiment, sub-operation 37 has only one adjacent sub-operation, namely, sub-operation 38, while sub-operation 40 has three adjacent sub-operations, namely, sub-operation 39, sub-operation 38, and sub-operation 41. Sub-operation 38 has two adjacent sub-operations, namely, sub-operation 37 and sub-operation 40. Of course, for some more complex automation processes, there may be four, five, or even more sub-operations for a single sub-operation, which is well understood by those skilled in the art and will not be elaborated on here.
[0100] Exemplarily, as described above, since there is sub-operation 37 in the stack, the stack is not empty, so the taking out step and the pushing step continue to be executed. Specifically, continue to refer to Figure 3 to take out the sub-operation 37 at the top of the stack. Since the operation number of the sub-operation is the initial operation number 0, the operation number of the sub-operation 37 is set to the above-mentioned target value, that is, the operation group number of the current operation group, that is, 1; for the pushing step, the adjacent sub-operation 38 of the sub-operation 37 is obtained. Since the operation number of the adjacent sub-operation 38 is 0, the adjacent sub-operation 38 is pushed into the stack. Since the sub-operation 37 has been taken out of the stack, there is only sub-operation 38 in the stack at this time, and the sub-operation 38 is at the top of the stack.
[0101] Step S132a-4c: Determine again whether the stack is empty. If the stack is not empty, continue looping the above steps of taking out and pushing.
[0102] Exemplarily, as described above, since the stack now contains sub-operation 38, the stack is not empty, and thus the above-mentioned steps of removing and pushing are continued. Specifically, referring to FIG3 , sub-operation 38 at the top of the stack is removed. Since the operation number of sub-operation 38 is the initial operation number 0, the operation number of sub-operation 38 is set to the target value, i.e., the operation group number of the current operation group, i.e., 1. The adjacent sub-operations of sub-operation 38, i.e., sub-operation 37 and sub-operation 40, are obtained. Since the operation number of adjacent sub-operation 40 is 0, adjacent sub-operation 40 is pushed onto the stack. Since sub-operation 38 has already been removed from the stack, only sub-operation 40 remains on the stack at this time, and sub-operation 40 is at the top of the stack, while the operation number of sub-operation 37 is 1 (the operation number of sub-operation 37 has been set to 1 in steps S132a-4b), which is not the initial operation number, and therefore, there is no need to push onto the stack. It is further determined that the stack is not empty, and the above-mentioned steps of removing and pushing are continued until the stack is empty. It should be noted that since the sequential relationship between sub-operation 42 (main operation) and its next sub-operation (sub-operation 43) has been deleted in the previous step, sub-operation 43 will not be obtained when obtaining the adjacent sub-operation of sub-operation 42.
[0103] In one embodiment, adjacent sub-operations may be obtained simultaneously or sequentially. For example, the sub-operation before a sub-operation may be defined as the source sub-operation, and the sub-operation after the sub-operation may be defined as the adjacent sub-operation. For example, for sub-operation 40, the source sub-operations of sub-operation 40, i.e., sub-operation 38 and sub-operation 39, may be obtained first. Since the operation number of sub-operation 39 is the initial operation number 0, sub-operation 39 is pushed onto the stack. At this time, only sub-operation 39 remains on the stack (sub-operation 38 has been removed). , located at the top of the stack, continue to obtain the adjacent sub-operation of sub-operation 40, that is, sub-operation 41. Since the operation number of sub-operation 41 is the initial operation number 0, sub-operation 41 is pushed into the stack. At this time, there are sub-operation 41 and sub-operation 39 from top to bottom in the stack. Since sub-operation 39 is overwritten when sub-operation 41 is pushed into the stack, sub-operation 41 is at the top of the stack at this time. In this way, after continuing to judge whether the stack is not empty, when taking out the sub-operation at the top of the stack, the sub-operation taken out is 41. In the subsequent stacking step, the adjacent sub-operation obtained is 42.
[0104] Step S132a-4d: If the stack is empty, determine whether the traversal is complete. If not, continue traversing the next sub-operation in the ordered operation group until all sub-operations belong to the corresponding operation group.
[0105] For example, as described above, after processing the six sub-operations of sub-operation 37 to sub-operation 42, the stack is empty. At this time, it is obvious that the traversal has not ended (only sub-operation 37 has been traversed), so the traversal continues to sub-operation 38. For sub-operation 38, the process returns to step S132a-4. Since the operation number of sub-operation 38 at this time is not the initial operation number (as can be seen from the above, the operation number of sub-operation 38 is 1 at this time), there is no need to continue to execute steps S132a-4a to step S132a-4c (at this time the stack is still empty), and the above traversal is continued to be judged. Obviously, it has not ended. Sub-operation 38-sub-operation 42 is the same as sub-operation 37. There is no need to continue executing steps S132a-4a-step S132a-4c (the stack is still empty at this time). Continue to traverse sub-operation 43. Since the operation number of sub-operation 43 is the initial operation number, it is necessary to continue executing steps S132a-4a-step S132a-4c, modify the operation group number of the current operation group to the target value (for example, modify it to 2); and push the sub-operation into the stack. The details of steps S132a-4a-step S132a-4c are similar to the other steps introduced above and will not be repeated here.
[0106] Therefore, the above method can be used to group the sub-operations in the automation process. For example, the ordered operation group in Figure 3 is grouped, and the grouping result is sub-operation 37, sub-operation 38, sub-operation 39, sub-operation 40, sub-operation 41, and sub-operation 42. The operation numbers corresponding to these sub-operations are all 1, so they belong to the same operation group (the first operation group, that is, the sub-operations of the first main operation that are executed earlier than the main operation and the main operation are regarded as an operation group. The first main operation is 42. In the ordered operation group, the sub-operations before the sub-operation are all executed earlier than the main operation 42). Sub-operation 43, sub-operation 44, sub-operation 45, sub-operation 46, sub-operation 47, sub-operation 48, and sub-operation 49 all have operation numbers corresponding to them. Therefore, they belong to the same operation group (the second operation group, that is, the sub-operations between the two adjacent main operations in the ordered operation group and the main operation executed later of the two adjacent main operations are another operation group, sub-operations 43 to sub-operation 48 are all executed between main operation 42 and main operation 49, and main operation 49 is obviously executed later than main operation 42. It can be understood that according to the number of main operations, there can be two or more second operation groups, and the operation numbers corresponding to sub-operation 50 and sub-operation 51 are both 3, so they belong to the same operation group (the third operation group, that is, the sub-operations of the last main operation executed later than the main operation are another operation group, the last main operation is 49, and the sub-operations executed later than the main operation are 50 and 51).
[0107] Step S133: traverse each operation group to determine the intersection of the sub-operations contained in the operation group and the ordered main operations;
[0108] Traversing each operation group in step S133, for example, referring to FIG4 , traversing the first operation group 61, the sub-operations contained in this operation group are sub-operation 37 - sub-operation 42, and the ordered main operation determined in step S131 is sub-operation 42 (main operation) → sub-operation 49 (main operation), so the intersection of the two is sub-operation 42 (main operation). When traversing the second operation group 62, the sub-operations contained in this operation group 42 are sub-operation 43 - sub-operation 49, and the ordered main operation determined in step S131 is sub-operation 42 (main operation) → sub-operation 49 (main operation), so the intersection of the two is sub-operation 49 (main operation). For the third operation group 63, it is obvious that its intersection with the ordered main operation is empty.
[0109] Step S134: When the intersection is not empty, determine whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation based on the position of the main operation in the ordered main operations in the intersection and the corresponding relationship between each sub-operation in the corresponding operation group and the main operation. The corresponding relationship is the corresponding relationship between the main operation and the auxiliary operation.
[0110] Exemplarily, the position of the main operation in the intersection in the ordered main operations includes whether the main operation is the first main operation in the ordered main operations. If it is the first main operation, all sub-operations in the operation group belong to the first operation set; if it is not the first main operation, the operation set to which it belongs is determined based on the correspondence between each sub-operation and the main operation. The correspondence between the main operation and the auxiliary operations (sub-operations other than the main operation) has been introduced above and will not be repeated here.
[0111] Exemplarily, each operation group is traversed to determine the intersection of the sub-operations contained in the operation group and the ordered main operations. If the intersection is empty, all sub-operations in the corresponding operation group are included in the last operation set.
[0112] For example, when traversing an operation group, if the intersection of the sub-operations in the operation group and the ordered main operations is empty, then the entire operation group is the same as the last operation set. In the embodiment shown in Figure 4, the intersection of the third operation group 63 (sub-operations 50 and 51) and the ordered main operations (sub-operations 42 and 49) is empty, so all sub-operations in the third operation group 63 (sub-operations 50 and 51) belong to the last operation set.
[0113] In the above technical solution, the stack method is used to group the sub-operations, so that the sub-operations in the ordered operation group can be accurately grouped, and each group is considered as a whole in practical applications, thereby effectively improving the execution efficiency of the automation process.
[0114] Exemplarily, step S134 includes: step S134a and step S134b, specifically:
[0115] Step S134a: When the main operation in the intersection is the first main operation in the ordered main operations, all sub-operations in the current operation group are assigned to the same operation set;
[0116] Exemplarily, referring to the embodiments shown in Figures 3 and 4, for the first operation group 61 (including sub-operations 37-sub-operation 42), the intersection of this operation group and the ordered main operation (including sub-operation 42 and sub-operation 49) is sub-operation 42, which is the first main operation. Therefore, all sub-operations in the first operation group 61 belong to the same operation set, which is also the first operation set in this embodiment.
[0117] Step S134b: When the main operation in the intersection is not the first main operation in the ordered main operations, determine whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation according to the following method:
[0118] Step S134b-1: For a case where a sub-operation in an operation group is a main operation, the main operation belongs to another operation set;
[0119] Step S134b-2: In the case where the sub-operation in the corresponding operation group is an auxiliary operation, based on the correspondence between the auxiliary operation and the previous main operation, determine whether the auxiliary operation belongs to the same operation set as the main operation.
[0120] Exemplarily, in step S134b-2, for the case where the sub-operation in the operation group is an auxiliary operation, and the auxiliary operation and the main operation do not belong to the same operation set, it is determined whether the auxiliary operation and the subsequent main operation belong to the same operation set based on the correspondence between the auxiliary operation and the subsequent main operation.
[0121] Continuing to refer to the embodiment shown in Figure 3, for the second operation group 42 (including sub-operations 43-sub-operations 49), the intersection of this operation group and the ordered main operation (including sub-operations 42 and sub-operations 49) is sub-operation 49, which is not the first main operation. Therefore, it is necessary to traverse each sub-operation in the second operation group 42 to determine whether all sub-operations in the second operation group 42 belong to the first operation set or the next operation set. Specifically, for sub-operation 43, since this sub-operation 43 is not a main operation but an auxiliary operation, and this sub-operation 43 is the post-operation of the previous main operation (sub-operation 42) (the correspondence between the main operation and the auxiliary operation), this sub-operation 43 and the main operation (sub-operation 42) belong to the same operation set. As mentioned above, sub-operation 42 already belongs to the first operation set (the previous operation set), so sub-operation 43 also belongs to the first operation set; similarly, sub-operation 44 and sub-operation 47 also belong to the first operation set. For sub-operation 45, since this sub-operation 45 is not a main operation but an auxiliary operation, and this sub-operation 45 is the previous operation of the subsequent main operation (sub-operation 49) (the correspondence between the main operation and the auxiliary operation), this sub-operation 45 and the subsequent main operation (sub-operation 49) belong to the same operation set.
[0122] In the above technical solution, combined with the logical diagram shown in Figure 6, the sub-operations can be grouped in actual application scenarios (such as process termination scenarios), and on this basis, the corresponding operation set can be considered as a whole to determine which steps need to be retained and how to create new sub-operations, thereby effectively improving processing efficiency. This technical solution can also be applied to other scenarios, such as calculation of candidate sets to be scheduled, planning parameter construction, equipment allocation, resource locks, etc. Specifically, 1) Calculation of candidate sets to be scheduled: After the process starts running, each sub-operation must be added to the list to be scheduled before it starts execution. When a sub-operation should be added to the list to be scheduled, it is necessary to determine the dependency between the sub-operations and meet the conditions such as the equipment resource occupancy relationship, board position occupancy relationship, cover position occupancy relationship, and planning time. When judging these conditions, it is not possible to do so by simply looking at a single sub-operation. It is necessary to consider the set to which the sub-operation belongs as a whole according to this application. 2) Planning Parameter Construction: Planning requires not only information about each sub-operation, but also information about device resources, board slot occupancy, cover slot occupancy, time constraints, and more. Some of this information, such as the preceding and following operations associated with the main operation, must be calculated using this application. This information is passed as parameters to the planning process. 3) Equipment Allocation: A system may contain more than one device of the same type, hence the concept of a device pool. Therefore, the device type selected during process design will change during process execution based on the number of devices in the pool and the device pool usage strategy. Specifically, the final device to be used must be determined in the first step of planning, which involves assigning a device to each sub-operation. Since a main operation and its associated preceding and following operations generally belong to the same device, they must also be considered as a whole, according to the set determined in this application. 4) Resource Locking: A device can be considered a resource, and several sub-operations can use the same device resource. As soon as any sub-operation begins executing, the corresponding device resource enters a locked state, making it unavailable to other flows. Furthermore, during process execution, dynamic planning may occur due to scenarios such as device online and offline or branch switching. Therefore, the locked state of device resources must be used to determine when sub-operations of other fluxes can use locked devices. Therefore, in this case, the operation set corresponding to the sub-operation must also be considered as a whole.
[0123] Exemplarily, the starting node corresponds to multiple samples, and before step S120, the process includes: determining, based on the ordered operation group, an ordered operation group corresponding to the sample. In this case, step S120 includes: determining, based on the determined ordered operation group corresponding to the sample, all main operations in the ordered operation group.
[0124] It can be understood that the above technical solution is mainly applicable to situations where there are multiple samples in an automated process. That is to say, there is a corresponding relationship between the ordered operation group and the sample. Therefore, the essence of the ordered operation group is related to the sample, or it is centered on the sample. For example, whether it is the main operation or the previous operation or the subsequent operation, some operations are performed on the sample.
[0125] According to the above technical solution, when there are multiple samples, the sample can be used as the core, and a series of ordered operation groups can be obtained based on the correspondence between the pre-set sample and each node in the automated process. These ordered operation groups can also determine the correspondence between the sample and the ordered operation group based on the previous connection relationship between each node, so that accurate grouping can be performed from the perspective of the sample, and then some specific application scenarios can be efficiently processed or executed, which is more applicable and easier to promote.
[0126] For example, for some application scenarios, the ordered operation group can also be obtained based on the connection relationship of each node and some special needs that arise during the operation process. For example, the dynamic tip-requiring scenario is that when the pipette workstation lacks a pipette tip during the process operation, it is necessary to insert the pipette tip to load the material, thereby obtaining an ordered operation group. As shown in Figure 7, this is a schematic diagram of the ordered operation group obtained by the connection relationship of each node in the automation process of another embodiment of the present application, specifically a schematic diagram of the ordered operation group for dynamic tip-requiring, wherein sub-operation 6-sub-operation 10 is the inserted pipette tip loading, specifically, sub-operation 6 is the transfer of the empty material tray of the pipette tip out of the pipette workstation, sub-operation 7 and sub-operation 8 are the robot arm transporting the material tray into the pipette workstation, sub-operation 9 is the transfer of the pipette tip material tray inside the pipette workstation, and sub-operation 10 is the newly inserted main operation (because the main operation corresponding to sub-operation 3 cannot be performed due to the lack of a pipette tip, so the main operation needs to be reinserted). Through the above technical solution, sub-operation 1, sub-operation 2, and sub-operation 3 (main operation) belong to an operation group, and sub-operation 6-sub-operation 10 are the newly inserted main operation (because the main operation corresponding to sub-operation 3 cannot be performed due to the lack of a pipette tip, so the main operation needs to be reinserted). Operation 10 belongs to the second operation group, sub-operation 4 and sub-operation 5 belong to the third operation group. The first, second and third operation groups are traversed respectively through the above technical solution. Since sub-operation 6 is the post-operation of sub-operation 3 (main operation), sub-operation 9 is the pre-operation of sub-operation 10 (main operation), and sub-operations 6, 7, 8, and 9 are steps for transferring the gun tip from sub-operation 3 (main operation) to sub-operation 10 (main operation), they can be regarded as serving sub-operation 3 (main operation) as well as serving sub-operation 10 (main operation). Therefore, sub-operations 6, 7, 8, and 9 are shared operations. Therefore, sub-operations 1-sub-operation 3 and sub-operations 6-9 (6 sub-operations) belong to the same operation set, and sub-operation 4-sub-operation 10 belong to another operation set. Therefore, shared operations can include not only transfer operations and reversing operations, but also other operations. Whether a sub-operation is a shared operation depends on the relationship between the sub-operation and the previous main operation and the next main operation, or whether the sub-operation serves the devices corresponding to the two main operations at the same time. For example, corresponding to a door opening sub-operation, since it only serves the device corresponding to one main operation, the door opening sub-operation will not be a shared operation. The transport operation and reversing operation are used when transporting samples between two devices. Therefore, they serve the devices corresponding to the two main operations and are therefore shared operations.
[0127] The above technical solution can also be applied to special scenarios such as dynamic gun head, and can also quickly and effectively handle these application scenarios and control the execution of corresponding processes.
[0128] According to a second aspect of the present application, a control device for an automated process is also provided. FIG8 shows a schematic block diagram of a control device 800 for an automated process according to one embodiment of the present application. As shown in FIG8 , the device 800 may include an acquisition module 810 , a first determination module 820 , a second determination module 830 , and a control module 840 .
[0129] The acquisition module 810 can be used to obtain an ordered operation group of an automated process. The ordered operation group is obtained based on the connection relationship between each node in the automated process. The ordered operation group includes multiple ordered sub-operations. The types of sub-operations include main operations and auxiliary operations other than the main operations. The main operation is an operation corresponding to the main function of the device corresponding to the device node.
[0130] The first determining module 820 may be configured to determine all main operations in the ordered operation group.
[0131] The second determination module 830 can be used to determine the auxiliary operation corresponding to each main operation based on the ordered operation group, and regard the main operation and the corresponding auxiliary operation as an operation set; wherein the correspondence between the main operation and the auxiliary operation is determined according to the device attribute corresponding to the main operation.
[0132] The control module 840 may be configured to control the execution of the automation process based on the determined operation set.
[0133] According to a third aspect of the present application, an electronic device is also provided. Figure 9 shows a schematic block diagram of an electronic device 900 according to one embodiment of the present application. As shown in Figure 9, the electronic device 900 includes a processor 910 and a memory 920. The memory 920 stores computer program instructions, which, when executed by the processor 910, are used to execute the control method 100 for the automation process described above.
[0134] According to a fourth aspect of the present application, a storage medium is also provided. Program instructions are stored on the storage medium, and the program instructions are used to execute the control method 100 of the above-mentioned automated process when running. The storage medium may include, for example, a storage component of a tablet computer, a hard disk of a personal computer, a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a portable compact disc read-only memory (CD-ROM), a USB memory, or any combination of the above storage media. The computer-readable storage medium may be any combination of one or more computer-readable storage media.
[0135] A person skilled in the art can understand the specific implementation scheme of the control device, electronic device and storage medium of the above-mentioned automation process by reading the above-mentioned description of the control method of the automation process. For the sake of brevity, it will not be repeated here.
[0136] Example
[0137] Embodiment 1. A method for controlling an automated process, wherein the automated process includes a start node, an intermediate node, and an end node connected in sequence, wherein the start node indicates the location of a sample before the start of the automated process, the end node indicates the location of the sample after the end of the automated process, and the intermediate node includes a device node, which is used to indicate the location of the sample when performing related operations between the start position and the end position; the method includes:
[0138] Obtaining an ordered operation group of the automated process, the ordered operation group being obtained based on a connection relationship between nodes in the automated process, the ordered operation group including a plurality of ordered sub-operations, the sub-operations including a main operation and auxiliary operations other than the main operation, the main operation being an operation corresponding to a main function of a device corresponding to a device node;
[0139] Determine, for the ordered operation group, all main operations in the ordered operation group;
[0140] Based on the ordered operation group, determining a secondary operation corresponding to each primary operation, and treating the primary operation and the corresponding secondary operation as an operation set; wherein the correspondence between the primary operation and the secondary operation is determined according to the device attribute corresponding to the primary operation;
[0141] Based on the determined operation set, the execution of the automation process is controlled.
[0142] Embodiment 2. The method of embodiment 1, wherein the auxiliary operation comprises a front operation performed before the corresponding main operation and a back operation performed after the corresponding main operation, wherein the front operation or the back operation comprises a transport operation between devices and / or a reversing operation for adjusting the direction of a consumable, wherein the consumable is a container for holding a sample;
[0143] In the case where there are multiple main operations in the ordered operation group, before controlling the execution of the automation process based on the determined operation set, the method further includes:
[0144] For two adjacent operation sets, all reversing operations and transfer operations between devices are determined in the second operation set; when the transfer operation and the reversing operation are the previous operations, the transfer operation and the reversing operation are used as shared operations of the first operation set and the second operation set, and the execution time of the first operation set is earlier than the execution time of the second operation set.
[0145] Embodiment 3. The method of embodiment 1 or 2, wherein determining a secondary operation corresponding to each primary operation based on the ordered operation group, and treating the primary operation and the corresponding secondary operation as an operation set, comprises:
[0146] Based on the ordered operation group, determining the execution order of each main operation in the ordered operation group to obtain an ordered main operation;
[0147] Based on each main operation, the sub-operations in the ordered operation group are grouped to form a corresponding operation group;
[0148] Traversing each operation group, and determining the intersection of the sub-operations contained in the operation group and the ordered main operation;
[0149] When the intersection is not empty, determine whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation based on the position of the main operation in the ordered main operations in the intersection and the corresponding relationship between each sub-operation in the corresponding operation group and the main operation. The corresponding relationship is the corresponding relationship between the main operation and the auxiliary operation.
[0150] Embodiment 4. The method according to any one of embodiments 1 to 3, wherein the sub-operations in the ordered operation group are grouped based on each main operation to form a corresponding operation group, comprising:
[0151] Based on the ordered operation group, the sub-operations of the first main operation that are executed earlier than the main operation and the main operation are taken as one operation group, the sub-operations between two adjacent main operations in the ordered operation group and the main operation executed later than the two adjacent main operations are taken as another operation group, and the sub-operations of the last main operation that are executed later than the main operation are taken as yet another operation group.
[0152] Embodiment 5. The method according to any one of embodiments 1 to 4, wherein, based on the ordered operation group, the sub-operations of the first main operation that are executed earlier than the main operation and the main operation are taken as one operation group, the sub-operations between two adjacent main operations in the ordered operation group and the main operation that is executed later than the two adjacent main operations are taken as another operation group, and the sub-operations of the last main operation that are executed later than the main operation are taken as yet another operation group, including:
[0153] Deleting the sequential relationship of the next sub-operation connected to all main operations in the ordered operation group;
[0154] Setting an initial operation number for each sub-operation in the ordered operation group, and setting the operation group number of the current operation group to the initial value;
[0155] Create a new stack and initialize it to empty;
[0156] Traverse each sub-operation in the ordered operation group, and if the operation number of the sub-operation is the initial operation number, perform the following steps:
[0157] Modify the operation group number of the current operation group to the target value; and push the sub-operation into the stack;
[0158] If the stack is not empty, perform the following steps:
[0159] Taking out the sub-operation at the top of the stack, and if the operation number of the sub-operation is the initial operation number, setting the operation number of the sub-operation to the target value, which is recorded as the taking step;
[0160] Obtaining an adjacent sub-operation of the sub-operation, and if the operation number of the adjacent sub-operation is the initial operation number, pushing the adjacent sub-operation into a stack, which is recorded as a stacking step;
[0161] Determine again whether the stack is empty. If the stack is not empty, continue to loop the above steps of taking out and pushing;
[0162] When it is determined that the stack is empty, it is determined whether the traversal is completed. If not, the traversal continues to the next sub-operation in the ordered operation group until all sub-operations belong to the corresponding operation group.
[0163] Embodiment 6. The method of any one of Embodiments 1 to 5, wherein, when the intersection is not empty, determining whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation based on the position of the main operation in the ordered main operations in the intersection and the corresponding relationship between each sub-operation in the corresponding operation group and the main operation, wherein the corresponding relationship is the corresponding relationship between the main operation and the auxiliary operations, including:
[0164] When the main operation in the intersection is the first main operation in the ordered main operations, all sub-operations in the current operation group belong to the same operation set;
[0165] When the main operation in the intersection is not the first main operation in the ordered main operations, determine whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation according to the following method:
[0166] In the case where a sub-operation in the corresponding operation group is the main operation, the main operation belongs to another operation set;
[0167] In the case where the sub-operation in the corresponding operation group is an auxiliary operation, based on the corresponding relationship between the auxiliary operation and the previous main operation, it is determined whether the auxiliary operation belongs to the same operation set as the main operation.
[0168] Example 7. A method as described in any one of Examples 1 to 6, wherein, for the case where the sub-operation in the operation group is an auxiliary operation, when the auxiliary operation and the main operation do not belong to the same operation set, it is determined whether the auxiliary operation and the subsequent main operation belong to the same operation set based on the corresponding relationship between the auxiliary operation and the subsequent main operation.
[0169] Embodiment 8. The method as described in any one of embodiments 1 to 7, wherein, when the intersection is empty, all sub-operations in the corresponding operation group belong to the last operation set.
[0170] Embodiment 9. The method of any one of embodiments 1 to 8, wherein the starting node corresponds to a plurality of samples, and before determining all main operations in the ordered operation group for the ordered operation group, the method includes: determining, based on the ordered operation group and in units of samples, an ordered operation group corresponding to the sample;
[0171] The determining all main operations in the ordered operation group for the ordered operation group includes: determining all main operations in the ordered operation group based on the determined ordered operation group corresponding to the sample.
[0172] Embodiment 10. The method according to any one of embodiments 1 to 9, wherein, for the case where there is one main operation in the ordered operation group, all operations in the ordered operation group belong to the same operation set.
[0173] Embodiment 11. A control device for an automated process, wherein the automated process includes a start node, an intermediate node, and an end node connected in sequence, the start node indicating the location of a sample before the start of the automated process, the end node indicating the location of the sample after the end of the automated process, and the intermediate node including a device node indicating the location of the sample when performing related operations between the start and end locations; the method comprising:
[0174] an acquisition module, configured to acquire an ordered operation group of the automated process, the ordered operation group being obtained based on a connection relationship between nodes in the automated process, the ordered operation group including a plurality of ordered sub-operations, the sub-operations including a main operation and auxiliary operations other than the main operation, the main operation being an operation corresponding to a main function of a device corresponding to a device node;
[0175] A first determining module is configured to determine, for the ordered operation group, all main operations in the ordered operation group;
[0176] A second determining module is configured to determine, based on the ordered operation group, a secondary operation corresponding to each primary operation, and to treat the primary operation and the corresponding secondary operation as an operation set; wherein the correspondence between the primary operation and the secondary operation is determined based on a device attribute corresponding to the primary operation;
[0177] A control module is used to control the execution of the automation process based on the determined operation set.
[0178] Embodiment 12. An electronic device comprises a processor and a memory, wherein the memory stores computer program instructions, and the computer program instructions are used by the processor to execute the control method of the automation process as described in any one of embodiments 1 to 10 when the processor is running.
[0179] Embodiment 13. A storage medium having program instructions stored thereon, wherein the program instructions are used to execute the control method for the automation process as described in any one of embodiments 1 to 10 when running.
[0180] Although example embodiments have been described herein with reference to the accompanying drawings, it should be understood that the above example embodiments are merely illustrative and are not intended to limit the scope of the present application. Various changes and modifications may be made therein by those skilled in the art without departing from the scope and spirit of the present application. All such changes and modifications are intended to be included within the scope of the present application as required by the appended claims.
[0181] Those skilled in the art will appreciate that the units and algorithm steps of each example 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 performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel 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.
[0182] 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 example, the division of the units described is merely a logical function division. In actual implementation, other division methods may be used, such as combining or integrating multiple units or components into another device, or ignoring or not performing some features.
[0183] In the description provided herein, a large number of specific details are described. However, it is understood that the embodiments of the present application can be practiced without these specific details. In some instances, well-known methods, structures, and techniques are not shown in detail so as not to obscure the understanding of this description.
[0184] Similarly, it should be understood that in order to streamline the present application and aid in understanding one or more of the various inventive aspects, in the description of the exemplary embodiments of the present application, the various features of the present application are sometimes grouped together into a single embodiment, figure, or description thereof. However, this approach of the present application should not be interpreted as reflecting the intention that the application claimed for protection requires more features than those explicitly recited in each claim. More precisely, as reflected in the corresponding claims, the inventive point is that the corresponding technical problem can be solved with fewer features than all the features of a single disclosed embodiment. Therefore, the claims following the detailed description are hereby expressly incorporated into the detailed description, with each claim itself serving as a separate embodiment of the present application.
[0185] It will be understood by those skilled in the art that, except where mutually exclusive, all features disclosed in this specification (including the accompanying claims, abstract, and drawings) and all processes or units of any method or apparatus disclosed herein may be combined in any combination. Unless expressly stated otherwise, each feature disclosed in this specification (including the accompanying claims, abstract, and drawings) may be replaced by an alternative feature providing the same, equivalent, or similar purpose.
[0186] Furthermore, those skilled in the art will appreciate that although some embodiments described herein include certain features included in other embodiments but not other features, combinations of features from different embodiments are intended to be within the scope of this application and to form different embodiments. For example, in the claims, any of the claimed embodiments may be used in any combination.
[0187] The various component embodiments of the present application can be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. Those skilled in the art will appreciate that a microprocessor or digital signal processor (DSP) can be used in practice to implement some or all of the functions of some modules in the panel detection device according to the embodiment of the present application. The present application can also be implemented as a device program (e.g., a computer program and a computer program product) for executing part or all of the methods described herein. Such a program implementing the present application can be stored on a computer-readable medium, or can have the form of one or more signals. Such a signal can be downloaded from an Internet website, or provided on a carrier signal, or provided in any other form.
[0188] It should be noted that the above embodiments illustrate rather than limit the present application, and that a person skilled in the art may devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference symbols placed between brackets 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. The present application may be implemented by means of hardware comprising several different elements and by means of appropriately programmed computers. In a unit claim 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 may be interpreted as names.
[0189] The above description is merely a specific embodiment or illustration of a specific embodiment of the present application, and the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present application should be included in the scope of protection of the present application. The scope of protection of the present application should be based on the scope of protection of the claims.
Claims
1. A control method for an automated process, characterized in that: The automation process includes a start node, an intermediate node and an end node connected in sequence, the start node indicates the position of the sample before the start of the automation process, the end node indicates the position of the sample after the end of the automation process, and the intermediate node includes a device node for indicating the position corresponding to the sample when performing related operations between the start position and the end position; the method includes: Acquire an ordered operation group of the automation process, wherein the ordered operation group is obtained according to the connection relationship between the nodes in the automation process, and the ordered operation group includes a plurality of ordered sub-operations, wherein the sub-operations include a main operation and auxiliary operations other than the main operation, and the main operation is an operation corresponding to a main function of a device corresponding to the device node; Determine, for the ordered operation group, all main operations in the ordered operation group; Based on the ordered operation group, determine the auxiliary operation corresponding to each main operation, and take the main operation and the corresponding auxiliary operation as an operation set; wherein the correspondence between the main operation and the auxiliary operation is determined according to the device attribute corresponding to the main operation; Based on the determined operation set, the execution of the automation process is controlled.
2. The method according to claim 1, characterized in that The auxiliary operation includes a front operation performed before the corresponding main operation and a rear operation performed after the corresponding main operation, wherein the front operation or the rear operation includes a transfer operation between devices and / or a reversing operation for adjusting the direction of a consumable, wherein the consumable is a container for holding a sample; In the case where there are multiple main operations in the ordered operation group, before controlling the execution of the automation process based on the determined operation set, the method further includes: For two adjacent operation sets, all reversing operations and transfer operations between devices are determined in the second operation set; In the case where the transfer operation and the reversing operation are the front operations, the transfer operation and the reversing operation are used as shared operations of the first operation set and the second operation set, and the execution time of the first operation set is earlier than the execution time of the second operation set.
3. The method according to claim 1 or 2, characterized in that The determining, based on the ordered operation group, an auxiliary operation corresponding to each main operation, and treating the main operation and the corresponding auxiliary operation as an operation set, includes: Based on the ordered operation group, determining the execution order of each main operation in the ordered operation group to obtain the ordered main operation; Based on each main operation, the sub-operations in the ordered operation group are grouped to form a corresponding operation group; Traversing each operation group, and determining the intersection of the sub-operations contained in the operation group and the ordered main operation; When the intersection is not empty, determine whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation based on the position of the main operation in the ordered main operations in the intersection and the corresponding relationship between each sub-operation in the corresponding operation group and the main operation, and the corresponding relationship is the corresponding relationship between the main operation and the auxiliary operation.
4. The method according to claim 3, characterized in that The sub-operations in the ordered operation group are grouped based on each main operation to form a corresponding operation group, including: Based on the ordered operation group, the sub-operation of the first main operation that is executed earlier than the main operation and the main operation are taken as one operation group, the sub-operation between two adjacent main operations in the ordered operation group and the main operation that is executed later than the two adjacent main operations are taken as another operation group, and the sub-operation of the last main operation that is executed later than the main operation is taken as yet another operation group.
5. The method according to claim 4, characterized in that The method of taking the sub-operations of the first main operation that are executed earlier than the main operation and the main operation as one operation group based on the ordered operation group, taking the sub-operations between two adjacent main operations in the ordered operation group and the main operation that is executed later than the two adjacent main operations as another operation group, and taking the sub-operations of the last main operation that are executed later than the main operation as yet another operation group includes: Deleting the sequential relationship of the next sub-operation connected to all main operations in the ordered operation group; Setting an initial operation number for each sub-operation in the ordered operation group, and setting the operation group number of the current operation group to the initial value; Create a new stack and initialize it to empty; Traverse each sub-operation in the ordered operation group, and when the operation number of the sub-operation is the initial operation number, perform the following steps: Modify the operation group number of the current operation group to the target value; and push the sub-operation into the stack; If the stack is not empty, perform the following steps: Taking out the sub-operation at the top of the stack, if the operation number of the sub-operation is the initial operation number, setting the operation number of the sub-operation to the target value, which is recorded as the taking out step; Obtaining an adjacent sub-operation of the sub-operation, and when the operation number of the adjacent sub-operation is the initial operation number, pushing the adjacent sub-operation into a stack, which is recorded as a stacking step; Determine again whether the stack is empty. If the stack is not empty, continue to loop the above-mentioned steps of taking out and pushing; When it is determined that the stack is empty, it is determined whether the above traversal is completed. If it is not completed, the next sub-operation in the ordered operation group is continuously traversed until all sub-operations belong to the corresponding operation group.
6. The method according to claim 3, characterized in that In the case where the intersection is not empty, determining whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation according to the position of the main operation in the ordered main operation in the intersection and the corresponding relationship between each sub-operation in the corresponding operation group and the main operation, wherein the corresponding relationship is the corresponding relationship between the main operation and the auxiliary operation, including: When the main operation in the intersection is the first main operation in the ordered main operations, all sub-operations in the current operation group belong to the same operation set; When the main operation in the intersection is not the first main operation in the ordered main operations, determine whether each sub-operation in the corresponding operation group belongs to the same operation set as the main operation according to the following method: For the case where a sub-operation in the corresponding operation group is a main operation, the main operation belongs to another operation set; In the case where the sub-operation in the corresponding operation group is an auxiliary operation, based on the corresponding relationship between the auxiliary operation and the previous main operation, it is determined whether the auxiliary operation belongs to the same operation set as the main operation.
7. The method according to claim 6, characterized in that For the case where the sub-operation in the operation group is an auxiliary operation, when the auxiliary operation and the main operation do not belong to the same operation set, it is determined whether the auxiliary operation and the subsequent main operation belong to the same operation set based on the corresponding relationship between the auxiliary operation and the subsequent main operation.
8. The method according to claim 3, characterized in that When the intersection is empty, all sub-operations in the corresponding operation group belong to the last operation set.
9. The method according to any one of claims 1 to 8, characterized in that The starting node corresponds to a plurality of samples, and before determining all main operations in the ordered operation group for the ordered operation group, the method includes: taking samples as units and based on the ordered operation group, determining an ordered operation group corresponding to the sample; The determining all the main operations in the ordered operation group for the ordered operation group includes: determining all the main operations in the ordered operation group based on the determined ordered operation group corresponding to the sample.
10. The method according to any one of claims 1 to 9, characterized in that In the case where there is one main operation in the ordered operation group, all operations in the ordered operation group belong to the same operation set.
11. A control device for an automated process, characterized in that: The automation process includes a start node, an intermediate node and an end node connected in sequence, the start node indicates the position of the sample before the start of the automation process, the end node indicates the position of the sample after the end of the automation process, and the intermediate node includes a device node for indicating the position corresponding to the sample when performing related operations between the start position and the end position; the method includes: an acquisition module, configured to acquire an ordered operation group of the automation process, wherein the ordered operation group is obtained according to a connection relationship between nodes in the automation process, wherein the ordered operation group includes a plurality of ordered sub-operations, wherein the sub-operations include a main operation and auxiliary operations other than the main operation, wherein the main operation is an operation corresponding to a main function of a device corresponding to a device node; A first determining module, configured to determine, for the ordered operation group, all main operations in the ordered operation group; A second determination module is used to determine the auxiliary operation corresponding to each main operation based on the ordered operation group, and take the main operation and the corresponding auxiliary operation as an operation set; wherein the correspondence between the main operation and the auxiliary operation is determined according to the device attribute corresponding to the main operation; A control module is used to control the execution of the automation process based on the determined operation set.
12. An electronic device comprising a processor and a memory, wherein: The memory stores computer program instructions, which are used by the processor to execute the control method for an automated process according to any one of claims 1 to 10 when the processor is running the computer program instructions.
13. A storage medium having program instructions stored thereon, wherein the program instructions are used to execute the control method for an automated process according to any one of claims 1 to 10 when run.
Citation Information
Patent Citations
Grouping method, control method and device for sub-operation in automatic process
CN120353517A
Automated process management method and device, electronic equipment and storage medium
CN115755790A
Control method and device for automation system, electronic equipment and storage medium
CN115903692A
Test process analysis method and device, electronic equipment and storage medium
CN115903694A
Automatic process control method and device, electronic equipment and storage medium
CN117827323A