Scheduling method, control method and device of automation system

By removing the first branch step of the first flux in the automation system and retaining the scheduling results of other fluxes, the automation system is rescheduled, and the problem of long-term branch switching scheduling is solved, achieving fast and efficient scheduling.

CN119806084APending Publication Date: 2025-04-11MEGAROBO TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411943919.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

In the prior art, the scheduling of branch switching in an automation system is difficult to make effective choices in time and scheduling content, resulting in a long time in large throughput and complex scenarios.

Method used

By removing the steps corresponding to the first branch in the first flux based on the pre-completed first scheduling result, and retaining the scheduling results corresponding to the other fluxes other than the first flux, rescheduling is performed to obtain the second scheduling result.

Benefits of technology

This method can quickly realize the scheduling of automated processes, especially in large throughput and complex scenarios, greatly shorten the scheduling time, improve the efficiency of the process, and is suitable for use scenarios of various automated processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119806084A_ABST
    Figure CN119806084A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a scheduling method and device of an automatic system, a control method and device, electronic equipment and a storage medium. The method comprises the following steps: based on a pre-completed first scheduling result, removing a step corresponding to a first branch in a first flux in the first scheduling result, and reserving scheduling results corresponding to other fluxes except the first flux; and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result and the step corresponding to the second branch in the first flux, re-scheduling the automatic system to obtain a second scheduling result, so as to complete the operation of each flux based on the new scheduling result. According to the scheme, during branch switching, scheduling of the automatic process can be rapidly achieved, especially, scheduling time can be greatly shortened in large-flux and complex scenes, and the efficiency of the process can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of automation, and more specifically to a scheduling method for an automation system, a control method for an automation system, a scheduling device for an automation system, a control device for an automation system, an electronic device, and a storage medium. Background Art

[0002] In recent years, business processes and business logic in the field of automation have become increasingly complex. Fixed, single processes are difficult to meet the ever-changing user needs and application scenarios. Whether it can quickly and flexibly respond to changing business needs has become the core competitiveness of automation process control software.

[0003] In an automation system, multiple fluxes may be included, each of which may correspond to the same or different automation processes. During the operation of each flux of the automation system, it is necessary to switch branches of the process according to the actual situation. The so-called branch switching can be understood as executing different branches under different conditions. Before the operation of each flux of the automation system, each step will be scheduled based on a branch in advance (the automation process can be parsed to obtain multiple steps), and during the actual operation, another branch will be run according to the judgment condition. In this case, it can be understood as the branch switching referred to in the present invention. Among them, step scheduling can be understood as the time sorting of each step involved in the automation process.

[0004] In the prior art, scheduling branch switching is a difficult problem, which requires a trade-off between time and scheduling content. Currently, branch switching in the process adopts full-flux scheduling, that is, all steps in each flux are rescheduled, which takes a long time in large-flux and complex scenarios. Summary of the invention

[0005] The present application is proposed in view of the above problems. According to the first aspect of the present application, a scheduling method for an automated process is provided, comprising: based on a pre-completed first scheduling result, removing the steps corresponding to the first branch in the first flux in the first scheduling result and retaining the scheduling results corresponding to other fluxes except the first flux, wherein the first flux is the flux that currently requires branch switching, the automated process includes at least one branch switching process, each branch switching process includes a first branch and a second branch, one of the first branch and the second branch is a branch corresponding to when a branch switching condition is met, and the other of the first branch and the second branch is a branch corresponding to when the branch switching condition is not met, the first scheduling result is a step schedule completed for each flux before each flux in the automated system runs, and the first scheduling result is completed based on the first branch in the branch switching process; based on the steps corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, the automated system is rescheduled to obtain a second scheduling result, so as to complete the operation of each flux based on the new scheduling result.

[0006] Exemplarily, the rescheduling of the automation system to obtain a second scheduling result based on the step corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes except the first flux in the first scheduling result includes: when rescheduling the automation system, determining whether there is a resource conflict, if there is no resource conflict, retaining the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, arranging the step corresponding to the second branch in the first flux at an allowed position, and obtaining the second scheduling result.

[0007] Exemplarily, the rescheduling of the automation system to obtain a second scheduling result based on the step corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes except the first flux in the first scheduling result includes: when rescheduling the automation system, determining whether there is a resource conflict, and if there is a resource occupancy conflict, arranging the step corresponding to the second branch in the first flux and the newly inserted step at allowed positions according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, to obtain the second scheduling result; wherein the newly inserted step includes a step of removing consumables from a current position to a buffer position and a step of returning consumables from the buffer position to the current position; and the first device includes a device corresponding to the step of removing consumables from a current position to a buffer position.

[0008] Exemplarily, in the case of resource conflict, according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, the steps corresponding to the second branch in the first flux and the newly inserted steps are arranged at allowed positions to obtain the second scheduling result, including: according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, the step of removing the consumable from the current position to the buffer position is arranged before the unexecuted steps corresponding to other fluxes except the first flux, the step of returning the consumable from the buffer position to the current position, and the step corresponding to the second branch in the first flux.

[0009] Exemplarily, according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, the step of moving the consumable from the current position to the buffer position is arranged before the unexecuted steps corresponding to other fluxes except the first flux, the step of returning the consumable from the buffer position to the current position, and the step corresponding to the second branch in the first flux, including: determining the start time of the step of moving the consumable from the current position to the buffer position by the following method:

[0010] Determining a latest release time of the first device based on scheduling results corresponding to other fluxes except the first flux in the first scheduling result;

[0011] Based on the latest release time of the first device, the start time corresponding to the step of moving the consumables from the current position to the buffer position is determined.

[0012] Exemplarily, determining the latest release time of the first device based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result includes:

[0013] Based on the scheduling results corresponding to the other fluxes except the first flux in the first scheduling result, determining the latest end time at which the steps in the other fluxes except the first flux are occupying the first device or have completed occupying the first device;

[0014] The latest end time is determined as the latest release time of the first device.

[0015] Exemplarily, in the case where there is a resource occupation conflict, according to the occupation status of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, the steps corresponding to the second branch in the first flux and the newly inserted steps are arranged at allowed positions to obtain the second scheduling result, which includes:

[0016] According to the newly inserted step, determining a first device corresponding to the newly inserted step;

[0017] The occupancy status of the first device at the current moment is determined according to the scheduling results corresponding to other fluxes except the first flux in the first scheduling results.

[0018] Exemplarily, the step of moving the consumables from the current position to the buffer position includes a plurality of sub-steps, and the method further includes arranging the plurality of sub-steps in succession.

[0019] According to another aspect of the present application, a method for controlling an automated process is also provided, comprising: controlling the operation of the automated process based on the scheduling method.

[0020] Exemplarily, the control method further includes:

[0021] Determine whether there is a resource conflict in the rescheduling according to the second scheduling result;

[0022] In the event of resource conflicts, steps are constructed to move consumables from the current location to the buffer and from the buffer back to the current location, so as to reschedule and control the automated process based on the construction steps.

[0023] According to another aspect of the present application, there is also provided a scheduling device for an automated process, comprising:

[0024] A removal module, configured to remove the steps corresponding to the first branch in the first flux in the first scheduling result based on a pre-completed first scheduling result, and retain the scheduling results corresponding to other fluxes except the first flux, wherein the first flux is the flux that currently requires branch switching, the automation process includes at least one branch switching process, each branch switching process includes a first branch and a second branch, one of the first branch and the second branch is a branch corresponding to when a branch switching condition is met, and the other of the first branch and the second branch is a branch corresponding to when the branch switching condition is not met, the first scheduling result is a step schedule completed for each flux before each flux in the automation system runs, and the first scheduling result is completed based on the first branch in the branch switching process;

[0025] The scheduling module reschedules the automation system to obtain a second scheduling result based on the steps corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes in the first scheduling result except the first flux, so as to complete the operation of each flux based on the new scheduling result.

[0026] According to another aspect of the present application, there is also provided a control device for an automated process, comprising: a control module, which controls the operation of the automated process based on the control method.

[0027] According to another aspect of the present application, an electronic device is also provided, including a processor and a memory, wherein the memory stores computer program instructions, and when the computer program instructions are executed by the processor, the scheduling method of the automation process and the control method of executing the automation process are used.

[0028] According to another aspect of the present application, a storage medium is provided, on which program instructions are stored, and the program instructions are used to execute the scheduling method of the automation process and the control method of the automation process when running.

[0029] In the above scheme, by eliminating the steps corresponding to the first branch in the first flux in the first scheduling result, and rescheduling the automation system based on the steps corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, a new scheduling result can be obtained. In this scheme, the automation system is rescheduled using the scheduling results corresponding to other fluxes except the first flux in the first scheduling result and in combination with the steps corresponding to the second branch in the first flux. That is to say, for fluxes that do not need to switch branches, it is not necessary to disrupt their execution order and reschedule each step, but to retain the scheduling results corresponding to other fluxes except the first flux in the first scheduling result. On this basis, the automation system is rescheduled in combination with the steps corresponding to the second branch in the first flux. It can also be understood that based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, each step corresponding to the second branch in the first flux is inserted into a suitable position without changing the order of the steps corresponding to other fluxes except the first flux in the first scheduling result. Therefore, this solution can quickly realize the scheduling of automated processes when switching branches, especially in large-volume and complex scenarios, which can greatly shorten the scheduling time and improve the efficiency of the process. In addition, it can be applied to various scenarios of automated processes, so as to fully meet the personalized needs of users and provide better user experience.

[0030] 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

[0031] By describing the embodiments of the present application in more detail in conjunction with the accompanying drawings, the above and other purposes, features and advantages of the present application will become more apparent. The accompanying drawings are used 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 accompanying drawings, the same reference numerals generally represent the same components or steps.

[0032] Figure 1 A schematic diagram showing an automated process according to an embodiment of the present application;

[0033] Figure 2 A flowchart showing a scheduling method for an automation system according to an embodiment of the present application;

[0034] Figure 3 Show according to Figure 1 Gantt charts of the two fluxes corresponding to the automation process shown;

[0035] Figure 4 Shows Figure 3 The case where the step corresponding to the first branch in the first flux is eliminated;

[0036] Figure 5 A Gantt chart corresponding to a scheduling method of an automation system according to an embodiment of the present application when there is no resource conflict is shown;

[0037] Figure 6 A Gantt chart corresponding to a scheduling method of an automation system according to an embodiment of the present application when there is a resource conflict is shown;

[0038] Figure 7a A schematic diagram showing the equipment occupancy status before a new step is inserted in a scheduling method of an automation system according to an embodiment of the present application is shown. Figure 7b A schematic diagram showing the equipment occupancy status after a new step is inserted into a scheduling method of an automation system according to an embodiment of the present application;

[0039] Figure 8 A schematic block diagram showing a scheduling device for an automated process according to an embodiment of the present application; and

[0040] Fig. 9 A schematic block diagram of an electronic device according to an embodiment of the present application is shown. DETAILED DESCRIPTION

[0041] In order to make the purpose, technical solutions and advantages of the present application more obvious, the example embodiments according to the present application will be described in detail 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 the present application, all other embodiments obtained by those skilled in the art without creative work should fall within the scope of protection of the present application.

[0042] In the present invention, the automation process is constructed by multiple nodes, such as Figure 1 As shown, it is an automated process, including consumable nodes, device node 1, decision nodes, device node 2 and device node 3. Before the automated process runs, it needs to be parsed based on the automated process to obtain a series of steps, so as to schedule each step and form a timetable for step execution, which can be presented to the user in the form of a Gantt chart, for example. In one embodiment, the device corresponding to device node 1 may be a dispenser, the device corresponding to device node 2 may be a plate station for incubation (may include multiple plate positions), and the device corresponding to device node 3 may be a plate washer. In this way, in this automated process, after analysis, the following steps are mainly included (there may be other steps, which are only used for understanding and not limited here): 1) The consumables are transported by a robotic arm into the device corresponding to device node 1, such as a dispenser; 2) The dispenser corresponding to device node 1 performs a dispense action; 3) The robotic arm moves the consumables away from the dispenser and into the plate station for incubation or into the plate washer for plate washing. Whether to enter the plate station or the plate washer is determined by a decision node. The decision node corresponds to a judgment condition. If the judgment result is "true", the consumables enter the plate station for incubation, which can also be understood as the automated process executing a true branch. If the judgment result is "false", the consumables enter the plate washer for plate washing, which can also be understood as the automated process executing a false branch. Among them, the consumables referred to in the present invention include various containers carrying samples, and a description similar to "the consumables enter the plate station for incubation" actually refers to incubating the samples.

[0043] An automation system may include multiple automation processes or multiple fluxes. It should be noted that different fluxes may correspond to different automation processes, and one automation process may correspond to multiple fluxes. In an automation system, all fluxes in the automation system need to be scheduled before the automation process runs. In simple terms, all fluxes are treated as a whole, and each step in each flux needs to be time-sequenced. As mentioned above, in the prior art, full-flux scheduling is used for branch switching scenarios. Since all steps of all fluxes need to be planned, it takes a long time in large-flux and complex scenarios. For example, for Figure 1In the illustrated embodiment, when branch switching is required, full flux scheduling is adopted, and all steps in each flux need to be disrupted and rescheduled, for example Figure 1 The embodiment shown includes 5 fluxes, each flux corresponds to 5 steps. If branch switching is required, all steps in the 5 fluxes need to be rescheduled, that is, full flux scheduling. Obviously, this scheduling method takes a long time in large flux and complex scenarios because all steps of all fluxes need to be replanned.

[0044] In order to at least partially solve the above technical problems, according to the first aspect of the present application, a scheduling method for an automation system is provided. The scheduling method according to the embodiment of the present application can be applied to automation processes for various suitable targets in various fields. For simplicity, the automation process in the automation system in the field of biochemistry is used as an example for explanation.

[0045] Figure 2 FIG. 1 is a schematic flow chart of a scheduling method 100 for an automation system according to an embodiment of the present application. Figure 2 As shown, the scheduling method 100 may include step S110 and step S120.

[0046] Step S110, based on the first scheduling result completed in advance, the steps corresponding to the first branch in the first flux in the first scheduling result are eliminated and the scheduling results corresponding to other fluxes except the first flux are retained. The first flux is the flux that currently needs branch switching, the automation process includes at least one branch switching process, each branch switching process includes a first branch and a second branch, one of the first branch and the second branch is a branch corresponding to when the branch switching condition is met, and the other of the first branch and the second branch is a branch corresponding to when the branch switching condition is not met, the first scheduling result is a step schedule completed for each flux before each flux in the automation system runs, and the first scheduling result is completed based on the first branch in the branch switching process;

[0047] As described above, before each flux in the automation system runs, it is necessary to schedule each step in the automation process corresponding to each flux to complete the operation of each flux. In the present invention, the scheduling result before each flux runs is recorded as the first scheduling result. The present invention is for scheduling when the automation system encounters branch switching during operation, so the scheduling before running is understood as being completed in advance.

[0048] In combination with the above description, the first branch can be a true branch or a false branch. In one embodiment, the first branch is a true branch, and the first scheduling result is a schedule completed based on the true branch. Therefore, during the operation, when it is necessary to switch to the false branch, rescheduling is required, which can be achieved by using the scheduling method of the automation system of the present invention.

[0049] When rescheduling, based on the first scheduling result completed in advance, the step corresponding to the first branch in the first flux in the first scheduling result is eliminated. In this step, the first flux is the flux that currently needs branch switching. Figure 1 Taking the automation process shown in the figure as an example, in an automation system, two fluxes (a first flux and a second flux) are included, each of which corresponds to Figure 1 The automated process shown, Figure 3 The Gantt chart corresponding to the first scheduling result of the first flux and the second flux is shown. In the Gantt chart, the first column corresponds to the first flux, the second column corresponds to the second flux, and the third column corresponds to the equipment or resource occupancy of the automation system. It can be understood that the first column, the second column and the third column are all displayed based on the timeline. Taking the first column as an example, the areas corresponding to the time periods t1-t2, t3-t4 and t5-t6 all represent the robot arm handling (only the starting point and end point of the robot arm handling are different). Specifically, t1-t2 corresponds to the step of carrying the consumables to the dispenser, t3-t4 corresponds to the step of carrying the consumables from the dispenser to the board station (recorded as step a), the area corresponding to the time period t2-t3 represents the step of dispensing by the dispenser, the area corresponding to the time period t4-t5 represents the step of incubation in the board station (recorded as step b), and t5-t6 corresponds to the step of moving the consumables out of the board station (recorded as step c); since the Gantt chart is a common display method in the prior art, it is not described in detail here.

[0050] In the above step S110, the first flux is the flux that currently needs to be branch-switched. Therefore, based on Figure 3 The first scheduling result shown in FIG. 1 is to remove the steps corresponding to the first branch in the first flux, that is, to remove the steps corresponding to the time period t3-t6 in the first column of the Gantt chart (because Figure 1 It can be seen that the steps corresponding to the first branch in the first flux include steps a to c). Figure 4 The steps enclosed by the dashed lines are the steps for elimination. It can be understood that the steps corresponding to eliminating the first branch in the first flux include the steps of eliminating the steps of moving out from the previous device before the branch switching, such as Figure 4 As shown, in this embodiment, the step corresponding to removing the first branch in the first flux includes the step of transporting the consumables from the dispenser to the plate station corresponding to the time period t3-t4.

[0051] S120, based on the steps corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes in the first scheduling result except the first flux, reschedule the automation system to obtain a second scheduling result, so as to complete the operation of each flux based on the new scheduling result.

[0052] Continue with Figure 3 Taking the Gantt chart shown as an example, in this embodiment, the other fluxes except the first flux in the first scheduling result are specifically the second flux, that is, the scheduling result based on the second flux in the first scheduling result can also be understood as, without disrupting the sequence (execution time) of each step in the second flux, or it can be understood as, under the resource occupation of each step in the original second flux, and in combination with the step corresponding to the second branch in the first flux, the automation process is rescheduled. Here, "combining the step corresponding to the second branch in the first flux" not only refers to the step itself, but also includes information associated with the step, that is, this information is also included in the step, for example, "combining the step corresponding to the second branch in the first flux" can actually include the specific step corresponding to the second branch in the first flux, the running time corresponding to each step, the equipment occupied by each step, and all other information used in scheduling. This embodiment lists the case where the automation system includes 2 fluxes. It can be understood that no matter how many fluxes there are, the scheduling method of the automation system provided by the present invention is applicable. The “resources” referred to in the present invention may be understood as hardware devices used to execute corresponding steps, such as a robotic arm, a dispenser, a plate station, a plate washer, and the like.

[0053] In this solution, when branch process switching is required, the steps corresponding to the first branch in the first flux in the first scheduling result can be eliminated based on the pre-completed first scheduling result, and the automation system can be rescheduled based on the scheduling results corresponding to the other fluxes except the first flux in the first scheduling result and the steps corresponding to the second branch in the first flux to obtain the second scheduling result. In this way, the automation system is rescheduled using the scheduling results corresponding to the other fluxes except the first flux in the first scheduling result and in combination with the steps corresponding to the second branch in the first flux. That is to say, for the fluxes that do not need to switch branches, it is not necessary to disrupt their execution order and reschedule each step, but to retain the scheduling results corresponding to the other fluxes except the first flux in the first scheduling result. On this basis, the automation system is rescheduled in combination with the steps corresponding to the second branch in the first flux. It can also be understood that based on the scheduling results corresponding to the other fluxes except the first flux in the first scheduling result, each step corresponding to the second branch in the first flux is inserted into a suitable position without changing the order of the steps corresponding to the other fluxes except the first flux in the first scheduling result. Therefore, this solution can quickly realize the scheduling of automated processes when switching branches, especially in large-volume and complex scenarios, which can greatly shorten the scheduling time and improve the efficiency of the process. In addition, it can be applied to various scenarios of automated processes, so as to fully meet the personalized needs of users and provide better user experience.

[0054] Exemplarily, step S120, based on the steps corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes in the first scheduling result except the first flux, rescheduling the automation system to obtain a second scheduling result, includes: step S121.

[0055] Step S121, when rescheduling the automation system, determine whether there is a resource conflict. If there is no resource conflict, retain the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, arrange the steps corresponding to the second branch in the first flux at the allowed position, and obtain the second scheduling result.

[0056] In one embodiment, when performing branch switching, that is, during the operation of the automated process, according to the condition, it is necessary to run the second branch instead of the first branch. At this time, branch switching is required, that is, rescheduling is required. When rescheduling, it is necessary to consider which resources (equipment) are used to complete the steps corresponding to the second branch, and whether these resources conflict (for example, whether they are occupied by other steps). Figure 5The example shown is an embodiment in which there is no resource conflict. In this embodiment, a certain device (robot arm) is required to complete the step corresponding to the second branch. If the device is in an idle state, that is, not occupied, when the branch is switched (recorded as time t3), and there is no other resource conflict, then step 1 corresponding to the second branch can be directly arranged at the position corresponding to time t3' after time t3, and this position can be understood as an allowed position. Therefore, the position allowed to be arranged can be understood as when the corresponding step is arranged at the time corresponding to this position, there is no resource conflict. It can be understood that the other steps corresponding to the second branch are arranged one by one in a similar manner to step 1.

[0057] In one embodiment, the step corresponding to the second branch in the first flux is arranged at an allowed position, which can be understood as: the first step corresponding to the second branch in the first flux (for example, the robot moves the consumables from the device corresponding to device node 1 to the device corresponding to device node 3), if the time occupied by the first step is less than or equal to the time occupied by the first step corresponding to the first branch in the original first scheduling result (for example, the robot moves the consumables from the device corresponding to device node 1 to the device corresponding to device node 2), then the position occupied by the first step corresponding to the first branch in the Gantt chart is an allowed position. Therefore, when rescheduling the automation system, it is determined whether there is a resource conflict. If there is no resource conflict, the scheduling results corresponding to other fluxes except the first flux in the first scheduling result are retained, and the step corresponding to the second branch in the first flux is arranged in the gap left after the step corresponding to the first branch in the first flux is removed from the first scheduling result, to obtain the second scheduling result. Of course, it can be understood that the gap here actually corresponds to a time period.

[0058] In another embodiment, in the case where there is no resource conflict, the flux of the branch switch is X, and the information of flux X in the original Gantt chart (first scheduling result) needs to be extracted (eliminated or eliminated), and the retained part is recorded as Gantt-correct. For example, for flux X, there are 2 steps before the branch switch and 3 steps after the switch. There are 0 steps before the branch switch of flux X in other fluxes, and there are 5 steps after the switch. After the elimination is completed, the steps before the branch switch remain unchanged, and only 5 steps of other fluxes are retained after the branch switch. On the basis of Gantt-correct, only flux X is replanned. For example, other fluxes only retained 5 steps before, and the allowed schedules of these steps (part of the schedule corresponding to the first scheduling result) remain unchanged (the order of precedence remains unchanged). Under this resource occupation condition, the second branch step of flux X (the branch corresponding to flase) is rescheduled. In fact, it is to arrange the second branch step of flux X at the allowed position, and the allowed position here includes the position where there is no resource conflict when the corresponding step is arranged at the corresponding position.

[0059] In the above technical solution, since the resource conflict situation is determined in advance, the scheduling accuracy and efficiency can be improved when rescheduling is performed. In addition, when there is no resource conflict, some scheduling results in the first scheduling result are retained, which can further improve the scheduling efficiency.

[0060] Exemplarily, step S120, based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result and the steps corresponding to the second branch in the first flux, rescheduling the automation system to obtain a second scheduling result includes: step S122.

[0061] Step S122, when rescheduling the automation system, determine whether there is a resource conflict. If there is a resource occupancy conflict, according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, arrange the steps corresponding to the second branch in the first flux and the newly inserted steps at allowed positions to obtain a second scheduling result; wherein the newly inserted steps include the step of removing the consumables from the current position to the buffer position and the step of returning the consumables from the buffer position to the current position; the first device includes a device corresponding to the step of executing the step of removing the consumables from the current position to the buffer position.

[0062] In one embodiment, a certain device is required to complete the steps corresponding to the second branch. If device 1 is completing steps of other fluxes when the branch is switched, if step 1 corresponding to the second branch is directly arranged at the time corresponding to the branch switching, a resource conflict will occur, that is, the device is occupied and step 1 corresponding to the second branch cannot be started at the time corresponding to the branch switching.

[0063] In one embodiment, the second branch corresponds to step 1 of 15 seconds, which is less than or equal to the gap left by removing the previous step in the Gantt chart (corresponding to Figure 1 The gap here refers to the transportation time from the dispenser to the plate station corresponding to the true branch), so the step 1 corresponding to the second branch can be arranged at the position corresponding to the original step from the dispenser to the plate station, which also shows that there is no resource conflict; correspondingly, if the step 1 corresponding to the second branch (from the dispenser to the plate washer) is 30 seconds, which is greater than the gap left by the previous step removal (corresponding to Figure 1 The gap here refers to the transportation time from the dispenser to the board station corresponding to the true branch). After the insertion, there is a resource occupation conflict. It should be noted that the resource conflict situation not only includes the situation where the equipment corresponding to the step of the second branch is occupied, but also includes other situations where the arrangement of the steps corresponding to the second branch and the steps that are not running in other fluxes cause resource conflicts. Figure 1 In the embodiment, before the branch switching, the consumables occupy the dispenser. If other fluxes use the dispenser, although there are gaps in the Gantt chart, the "step of moving the consumables from the dispenser" is also eliminated when the steps are eliminated, and the newly inserted step cannot move the consumables from the dispenser in time, so it will affect the consumables corresponding to other fluxes. The step of entering the dispenser will also occur. At this time, there is also a resource conflict.

[0064] In step S122, the current position can be understood as the position of the consumables corresponding to the flux when the branch is switched. Figure 1 Taking the automation process shown as an example, the current position is inside the dispenser, because branch switching is required only after the dispensing action of the dispenser is completed.

[0065] It can be understood that if a step is completed within a certain time period (denoted as tt), the device corresponding to the step within the time period tt needs to be in an available state. In other words, if the device is or is about to complete other steps, the device is in an occupied state, and other steps cannot be arranged within the time period tt, otherwise a resource conflict will occur.

[0066] In step S122, when rescheduling, if a resource conflict occurs, a new step needs to be inserted, that is, the consumables are first moved to the buffer position to resolve the current resource conflict. Specifically, based on the scheduling results corresponding to the other fluxes except the first flux in the first scheduling result, the steps corresponding to the second branch in the first flux and the newly inserted steps are arranged at the allowed position to obtain the second scheduling result. In step S122, the resource conflict problem is solved by using the buffer position, so that when the automation system is rescheduled, the scheduling can be performed for the steps corresponding to the second branch in the first flux and the newly inserted steps based on the scheduling results corresponding to the other fluxes except the first flux in the first scheduling result. Specifically, for each step, without destroying the sequence of each step in the other fluxes except the first flux in the first scheduling result, the corresponding step is inserted into the allowed position. The allowed position referred to here can be understood as inserting the corresponding step into the corresponding time period without the problem of resource conflict. In one embodiment, corresponding to step A, the corresponding device is the first device. If the first device is not occupied within a certain time period, step A can be inserted or arranged within the time period.

[0067] Among them, the consumables in the present invention refer to containers containing or not containing samples; the buffer position mentioned above refers to a specially reserved position on a certain device in the automation system, which is used to provide a temporary placement for consumables in specific occasions to resolve resource conflicts.

[0068] In the above technical solution, the problem of resource conflict is taken into consideration, and in the case of resource conflict, the buffer position is utilized without disrupting and rescheduling the various steps in the entire flux. Therefore, the scheduling time is short and the operating efficiency of the automation system can be improved.

[0069] Exemplarily, in the presence of a resource conflict, step S122, according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, arrange the steps corresponding to the second branch in the first flux and the newly inserted steps at allowed positions to obtain a second scheduling result, including: step S122a.

[0070] Step S122a, according to the occupancy status of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, the step of moving the consumables from the current position to the buffer position is arranged before the unexecuted steps corresponding to other fluxes except the first flux, the step of returning the consumables from the buffer position to the current position, and the step corresponding to the second branch in the first flux.

[0071] In step S122a, the step of moving the consumables from the current position to the buffer has the highest priority in the rescheduling, that is, the step of moving the consumables from the current position to the buffer is scheduled first, and then other steps are scheduled.

[0072] In one embodiment, continue to refer to Figure 1 The automated process shown in the figure and reference Figure 6 The scheduling results shown are Figure 6 The step corresponding to the time period t3'-t4' indicates that the robot arm moves the consumables from the dispenser to the buffer position. This step is arranged before the unexecuted step of the second flux (in this embodiment, none of the steps of the second flux has started to be executed), and is arranged before the step of returning the consumables from the buffer position to the current position (corresponding to the time period t5'-t6') and the step corresponding to the second branch in the first flux (corresponding to the time periods t6'-t7', t7'-t8', t8'-t9'), wherein t6'-t7' corresponds to the operation from device 1 to device 3, t7'-t8' corresponds to the operation of device 3, and t8'-t9' corresponds to the operation of moving the consumables away from device 3.

[0073] In another embodiment, in step S122a, the step of removing the consumable from the current position to the buffer position in the newly inserted step is taken as a high priority step, and the Gantt chart Gantt-correct is inserted to obtain the following: Figure 6 The new Gantt chart is shown. The newly inserted step will only mutually exclude the same resources and will not prevent the parallel operation of different resources. That is to say, for example, if the newly inserted step needs to be completed by device F, and device F is completing other steps, there will be a resource conflict. At this moment, device F cannot complete the newly inserted step, but device G that does not need to complete the newly inserted step can complete other steps in parallel without being affected by the newly inserted step.

[0074] In the above technical solution, by making the step of removing the consumable from the current position to the buffer position in the newly inserted step a high priority step, the problem of resource conflict can be solved and the scheduling efficiency can be improved.

[0075] Exemplarily, in step S122a, according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, the step of moving the consumable from the current position to the buffer position is arranged before the unexecuted steps corresponding to other fluxes except the first flux, the step of returning the consumable from the buffer position to the current position, and the step corresponding to the second branch in the first flux, including: determining the start time of the step of moving the consumable from the current position to the buffer position by the following method:

[0076] Step S122a-1, determining the latest release time of the first device based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result;

[0077] Step S122a-2: Based on the latest release time of the first device, determine the start time corresponding to the step of moving the consumables from the current position to the buffer position.

[0078] The step of moving the consumables from the current position to the buffer position requires the use of the first device. Therefore, after the first device is released, the step of moving the consumables from the current position to the buffer position can be completed by the first device. Therefore, the start time corresponding to the step of moving the consumables from the current position to the buffer position can be determined based on the latest release time of the first device.

[0079] In step S122a-1, the first device may include one device or multiple devices. In the case where the first device includes one device, the release time of the first device is the latest release time of the first device. The latest release time of the first device can be understood as the latest time when the first device is not occupied. In one embodiment, the completion time of the step corresponding to the first device is T5, and the latest release time of the first device is T5; in the case where the first device includes multiple devices, the latest release time of the first device is the maximum value of the time when all devices complete the corresponding steps. For example, the first device corresponds to 3 devices, the completion time of the step corresponding to one device is T6, the completion time of the step corresponding to another device is T7, and the completion time of the step corresponding to another device is T8, wherein T6<T7<T8, so the latest release time of the first device is T8. It can be understood that the case where the first device corresponds to multiple devices can also be understood as the step of consumables going from the current position to the buffer position corresponding to multiple devices, for example, the step of consumables going from the current position to the buffer position needs to be completed by three devices, namely, robot arm 1, robot arm 2 and robot arm 3.

[0080] In the above technical solution, by determining the latest release time of the first device, the start time corresponding to the step of moving the consumables from the current position to the buffer position is determined based on the latest release time of the first device. In this way, once the first device is released, the step of moving the consumables from the current position to the buffer position is executed. Therefore, the operating efficiency of the automated process can be improved, and the scheduling of the automated process can also be completed accurately and efficiently.

[0081] Exemplarily, step S122a-1, based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, determines the latest release time of the first device, including: step S122a-11 and step S122a-12.

[0082] Step S122a-11, based on the scheduling results corresponding to the other fluxes except the first flux in the first scheduling result, determine the latest end time at which the steps in the other fluxes except the first flux are occupying the first device or have completed the occupation of the first device.

[0083] In an automation system, when the first flux needs to perform branch switching, other fluxes are also running normally, and the first device may also be occupied or has completed occupation (not occupied) at the current moment. In this way, in order to ensure that the first devices are all released, it is necessary to determine the latest end time when the steps in other fluxes except the first flux are occupying the first device or have completed occupation of the first device.

[0084] Step S122a-12, the latest end time is determined as the latest release time of the first device, so that the first device can be released and other steps related to the first device can be scheduled.

[0085] like Figure 7a and 7b In the corresponding embodiment, the horizontal direction in the figure can be understood as a time axis, and each row in the figure represents the occupancy status of each device at each moment. Figure 7a is the device occupancy before the new step is inserted, Figure 7b is based on Figure 7a The device occupancy after the new step is inserted. The dotted line in the figure is the branch switching moment. Step 1 and step 2 are the newly inserted steps. The first device corresponds to device 2 and device 1. Figure 7a In the figure, before the branch switch, the latest end time of device 1 is the boundary time T1 (step end time) corresponding to the third thin-line rectangular block from left to right; the latest end time of device 2 is the boundary time T2 (step end time) of the second thick-line rectangular block from left to right. Therefore, the newly inserted step 1 needs to be inserted after the end of the second thick-line rectangular block, and step 2 depends on the completion of step 1, and the latest end time T1 of device 1 is also earlier than the end time of step 1. Therefore, step 2 is arranged after the end of step 1, as shown in Figure 7b It should be noted that the above descriptions of “bold lines” and “thin lines” are only for the convenience of description and do not represent other meanings or limit the present invention.

[0086] In this solution, by considering the latest end time of each step corresponding to the first device that is in operation and completed, the earliest start time of the newly inserted step is determined, thereby improving scheduling efficiency and further improving the operating efficiency of the automated process.

[0087] Exemplarily, in step S122, in the presence of a resource occupancy conflict, according to the occupancy status of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, the steps corresponding to the second branch in the first flux and the newly inserted steps are arranged at allowed positions to obtain a second scheduling result, which includes: determining the first device corresponding to the newly inserted step according to the newly inserted step; and determining the occupancy status of the first device at the current moment according to the scheduling results corresponding to other fluxes except the first flux in the first scheduling result.

[0088] Continue to refer Figure 7a and Figure 7b , in the corresponding embodiment in the figure, Figure 7a It can also be understood as the occupancy status of each device. In this embodiment, the newly inserted steps are step 1 and step 2, and the devices corresponding to step 1 and step 2 are device 2 and device 1, respectively. According to the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, at the branch switching moment, the occupancy status of device 1 and device 2 is that device 2 is being occupied, device 1 has completed the corresponding steps, and there is no running step, so the occupancy status of device 1 and device 2 can be determined.

[0089] In this solution, by first determining the first device corresponding to the newly inserted step and then determining the occupancy status of the first device, the steps corresponding to the second branch in the first flux and the newly inserted steps can be quickly rescheduled, with high scheduling efficiency and good user experience.

[0090] Exemplarily, the step of moving the consumables from the current position to the buffer position includes a plurality of sub-steps, and the method further includes arranging the plurality of sub-steps in succession.

[0091] In an automated process, the step of moving consumables from the current position to the buffer position includes multiple sub-steps, for example, it may include step 3 and step 4, where step 3 represents moving from the current position to the position where robot arm 1 is located, and step 4 represents moving from the position where robot arm 2 is located to the buffer position (from the current position to the buffer position, the trajectory of one robot arm cannot cover it, so two robots are required). It can also be understood that in this case, two robots are required to complete the step of moving consumables from the current position to the buffer position. In this embodiment, it is necessary to arrange step 1 and step 2 continuously, which can simplify the arrangement method on the one hand, and improve the scheduling efficiency on the other hand.

[0092] In the above technical solution, since the step of moving the consumables from the current position to the buffer position includes multiple sub-steps, the multiple sub-steps are arranged continuously, thereby simplifying the arrangement method and improving the scheduling efficiency and the operating efficiency of the automated process.

[0093] According to another aspect of the present application, a method for controlling an automated process is also provided, comprising: controlling the operation of the automated process based on the above-mentioned scheduling method.

[0094] In one embodiment, by eliminating the steps corresponding to the first branch in the first flux in the first scheduling result, and rescheduling the automation system based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result and the steps corresponding to the second branch in the first flux, a new scheduling result can be obtained, so that the operation of the automation process can be controlled based on the new scheduling result, thereby shortening the scheduling time and improving the operation efficiency of the process.

[0095] Exemplarily, the control method also includes: determining whether there is a resource conflict in the rescheduling based on the second scheduling result; if there is a resource conflict, constructing the steps of moving the consumables from the current position to the buffer position and from the buffer position back to the current position, so as to reschedule and control the automated process based on the constructed steps.

[0096] After the automation system is rescheduled to obtain a second scheduling result based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result and the steps corresponding to the second branch in the first flux, if a resource conflict occurs, the rescheduling will fail due to the resource conflict. In this way, it is necessary to consider the resource conflict situation, by constructing the steps of moving the consumables from the current position to the buffer position and from the buffer position back to the current position, so as to reschedule and control the automation process based on the constructed steps.

[0097] In the automation system, a host computer module and a driver module may be included. The driver module is used to control hardware equipment (such as a plate washer, a liquid transfer workstation, etc.), and the host computer module is used to communicate with the driver module to indirectly complete the operation of each hardware device. The host computer module also includes a planning module and a scheduling module. The planning module is mainly used to arrange the timetable (i.e., scheduling) according to the existing resources (equipment), the start and end time of each step, etc. The scheduling module is mainly used to obtain the information required by the planning module and transmit it to the planning module. The planning module returns the arrangement result to the scheduling module. When rescheduling, if a resource conflict occurs, the planning returns the result (including which specific step has a conflict) to the scheduling module. The scheduling module inserts new steps according to the results returned by the planning module (such as building consumables from the current position to the buffer and from the buffer back to the current position). Then the planning module re-schedules according to the newly inserted steps of the scheduling module and returns the scheduling results, so that the operation of the automation process can be controlled based on the scheduling results.

[0098] In this solution, the control method can take into account the problem of resource conflicts when switching branches, and rescheduling is performed when resource conflicts occur, shortening the scheduling time, thereby improving operating efficiency.

[0099] According to another aspect of the present application, a scheduling device for an automated process is also provided. Figure 8 FIG. 8 is a schematic block diagram of a scheduling device 800 for an automated process according to an embodiment of the present application. Figure 8 As shown, including:

[0100] The elimination module 810 is used to eliminate the steps corresponding to the first branch in the first flux in the first scheduling result based on the first scheduling result completed in advance, and retain the scheduling results corresponding to other fluxes except the first flux, wherein the first flux is the flux that currently needs branch switching, the automation process includes at least one branch switching process, each branch switching process includes a first branch and a second branch, one of the first branch and the second branch is a branch corresponding to when the branch switching condition is met, and the other of the first branch and the second branch is a branch corresponding to when the branch switching condition is not met, the first scheduling result is a step scheduling completed for each flux before each flux in the automation system runs, and the first scheduling result is completed based on the first branch in the branch switching process.

[0101] The scheduling module 820 reschedules the automation system to obtain a second scheduling result based on the steps corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes in the first scheduling result except the first flux, so as to complete the operation of each flux based on the new scheduling result.

[0102] According to another aspect of the present application, there is also provided a control device for an automated process, comprising: a control module, which controls the operation of the automated process based on the above-mentioned scheduling method.

[0103] According to another aspect of the present application, an electronic device is provided. Fig. 9 A schematic block diagram of an electronic device 900 according to an embodiment of the present application is shown. As shown in the figure, the electronic device 900 includes a processor 910 and a memory 920. The memory 920 stores computer program instructions, which are used by the processor 910 to execute the scheduling method 100 and control method of the above-mentioned automation process when the computer program instructions are executed.

[0104] According to another 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 scheduling method 100 and control method of the above-mentioned automation process when running. The storage medium may include, for example, an erasable programmable read-only memory (EPROM), a portable read-only memory (CD-ROM), a USB memory, or any combination of the above storage media. The storage medium may be any combination of one or more computer-readable storage media.

[0105] A person skilled in the art can understand the specific implementation scheme and beneficial effects of the scheduling device, control device, electronic device and storage medium of the above-mentioned automated process by reading the above-mentioned description of the scheduling method and control method of the automated process. For the sake of brevity, they will not be elaborated here.

[0106] Although example embodiments have been described herein with reference to the accompanying drawings, it should be understood that the above example embodiments are merely exemplary and are not intended to limit the scope of the present application to this. Those of ordinary skill in the art may make various changes and modifications therein without departing from the scope and spirit of the present application. All these changes and modifications are intended to be included within the scope of the present application as required by the appended claims.

[0107] Those of ordinary skill 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 to be beyond the scope of this application.

[0108] 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 only schematic, for example, the division of the units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed.

[0109] 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.

[0110] Similarly, it should be understood that in order to streamline the present application and help understand 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, the method of the present application should not be interpreted as reflecting the following intention: the claimed application requires more features than the features clearly stated in each claim. More specifically, as reflected in the corresponding claims, the inventive point is that the corresponding technical problem can be solved with features less than all the features of a single disclosed embodiment. Therefore, the claims following the specific embodiment are hereby explicitly incorporated into the specific embodiment, wherein each claim itself serves as a separate embodiment of the present application.

[0111] It will be understood by those skilled in the art that, except for mutually exclusive features, all features disclosed in this specification (including the accompanying claims, abstracts and drawings) and all processes or units of any method or device disclosed in this specification may be combined in any combination. Unless otherwise expressly stated, each feature disclosed in this specification (including the accompanying claims, abstracts and drawings) may be replaced by an alternative feature that provides the same, equivalent or similar purpose.

[0112] In addition, those skilled in the art will appreciate that, although some embodiments described herein include certain features included in other embodiments but not other features, the combination of features of different embodiments is meant to be within the scope of the present application and form different embodiments. For example, in the claims, any one of the claimed embodiments can be used in any combination.

[0113] 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. It should be understood by those skilled in the art that a microprocessor or digital signal processor (DSP) can be used in practice to implement some or all functions of some modules in the control system of the automation process according to the embodiment of the present application. The present application can also be implemented as a device program (e.g., computer program and 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.

[0114] It should be noted that the above embodiments illustrate the present application rather than limit the present application, and that those skilled in the art may design alternative embodiments without departing from the scope of the appended claims. In the claims, any reference symbol between brackets should not be constructed as a limitation to the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "one" or "an" preceding an element does not exclude the presence of multiple such elements. The present application may be implemented by means of hardware including several different elements and by means of a suitably programmed computer. In a unit claim that lists several devices, several of these devices may be embodied by the same hardware item. The use of the words first, second, and third, etc. does not indicate any order. These words may be interpreted as names.

[0115] The above is only a specific implementation or description of a specific implementation of the present application, and the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. The protection scope of the present application shall be based on the protection scope of the claims.

Claims

1. A scheduling method for an automation system, characterized in that: include: Based on a first scheduling result completed in advance, the steps corresponding to the first branch in the first flux in the first scheduling result are eliminated and the scheduling results corresponding to other fluxes except the first flux are retained, wherein the first flux is the flux that currently requires branch switching, the automation process includes at least one branch switching process, each branch switching process includes a first branch and a second branch, one of the first branch and the second branch is a branch corresponding to when a branch switching condition is met, and the other of the first branch and the second branch is a branch corresponding to when the branch switching condition is not met, the first scheduling result is a step scheduling completed for each flux before each flux in the automation system runs, and the first scheduling result is completed based on the first branch in the branch switching process; Based on the steps corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes in the first scheduling result except the first flux, the automation system is rescheduled to obtain a second scheduling result, so as to complete the operation of each flux based on the new scheduling result.

2. The scheduling method according to claim 1, wherein: The step corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes in the first scheduling result except the first flux, rescheduling the automation system to obtain a second scheduling result, comprises: When rescheduling the automation system, determine whether there is a resource conflict. If there is no resource conflict, retain the scheduling results corresponding to other fluxes in the first scheduling result except the first flux, arrange the steps corresponding to the second branch in the first flux at an allowed position, and obtain a second scheduling result.

3. The scheduling method according to claim 1, wherein: The step corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes in the first scheduling result except the first flux, rescheduling the automation system to obtain a second scheduling result, comprises: When rescheduling the automation system, determine whether there is a resource conflict. If there is a resource occupancy conflict, according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, arrange the steps corresponding to the second branch in the first flux and the newly inserted steps at allowed positions to obtain a second scheduling result; wherein the newly inserted steps include the step of removing the consumables from the current position to the buffer position and the step of returning the consumables from the buffer position to the current position; the first device includes a device corresponding to the step of executing the step of removing the consumables from the current position to the buffer position.

4. The scheduling method according to claim 3, wherein: The method comprises: according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, arranging the steps corresponding to the second branch in the first flux and the newly inserted steps at allowed positions to obtain the second scheduling result in the presence of a resource conflict, including: according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, arranging the step of removing the consumable from the current position to the buffer position before the unexecuted steps corresponding to other fluxes except the first flux, the step of returning the consumable from the buffer position to the current position, and the step corresponding to the second branch in the first flux.

5. The scheduling method according to claim 4, wherein: The step of arranging, according to the occupancy of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, the step of moving the consumable from the current position to the buffer position before the unexecuted steps corresponding to other fluxes except the first flux, the step of returning the consumable from the buffer position to the current position, and the step corresponding to the second branch in the first flux, comprises: determining the start time of the step of moving the consumable from the current position to the buffer position by the following method: Determining a latest release time of the first device based on scheduling results corresponding to other fluxes except the first flux in the first scheduling result; Based on the latest release time of the first device, the start time corresponding to the step of moving the consumables from the current position to the buffer position is determined.

6. The scheduling method according to claim 5, wherein: The determining the latest release time of the first device based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result includes: Based on the scheduling results corresponding to the other fluxes except the first flux in the first scheduling result, determining the latest end time at which the steps in the other fluxes except the first flux are occupying the first device or have completed occupying the first device; The latest end time is determined as the latest release time of the first device.

7. The scheduling method according to claim 3, wherein: In the case where there is a resource occupation conflict, according to the occupation status of the first device and based on the scheduling results corresponding to other fluxes except the first flux in the first scheduling result, the steps corresponding to the second branch in the first flux and the newly inserted steps are arranged at allowed positions to obtain a second scheduling result, which includes: According to the newly inserted step, determining a first device corresponding to the newly inserted step; The occupancy status of the first device at the current moment is determined according to the scheduling results corresponding to other fluxes except the first flux in the first scheduling results.

8. The scheduling method according to claim 3, wherein: The step of moving the consumables from the current position to the buffer position includes a plurality of sub-steps, and the method further includes arranging the plurality of sub-steps in succession.

9. A method for controlling an automated process, characterized in that: include: Based on the scheduling method described in any one of claims 1 to 8, the operation of the automated process is controlled.

10. The control method according to claim 9, characterized in that: The control method further comprises: Determine whether there is a resource conflict in the rescheduling according to the second scheduling result; In the event of resource conflicts, steps are constructed to move consumables from the current location to the buffer and from the buffer back to the current location, so as to reschedule and control the automated process based on the construction steps.

11. A scheduling device for an automated process, characterized in that: include: A removal module, configured to remove the steps corresponding to the first branch in the first flux in the first scheduling result based on a pre-completed first scheduling result, and retain the scheduling results corresponding to other fluxes except the first flux, wherein the first flux is the flux that currently requires branch switching, the automation process includes at least one branch switching process, each branch switching process includes a first branch and a second branch, one of the first branch and the second branch is a branch corresponding to when a branch switching condition is met, and the other of the first branch and the second branch is a branch corresponding to when the branch switching condition is not met, the first scheduling result is a step schedule completed for each flux before each flux in the automation system runs, and the first scheduling result is completed based on the first branch in the branch switching process; The scheduling module reschedules the automation system to obtain a second scheduling result based on the steps corresponding to the second branch in the first flux and the scheduling results corresponding to other fluxes in the first scheduling result except the first flux, so as to complete the operation of each flux based on the new scheduling result.

12. A control device for an automated process, characterized in that: include: The control module controls the operation of the automation process based on the control method described in claim 9 or 10.

13. 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 scheduling method for the automation process as claimed in any one of claims 1 to 8 and to execute the control method for the automation process as claimed in claim 9 or 10 when the processor runs the computer program instructions.

14. A storage medium having program instructions stored thereon, wherein the program instructions are used to execute the scheduling method for an automated process as claimed in any one of claims 1 to 8 and to execute the control method for an automated process as claimed in claim 9 or 10 when run.

Citation Information

Cited By

  • Scheduling method and apparatus for automatic process, and control method and apparatus for automatic process

    WO2026138029A1