Double-robot cooperation electroplating production line optimized production scheduling system and method
By designing a dual-robot collaborative electroplating production line optimization production system, the problem of low collaboration efficiency of dual-robot collaborative operations in the existing technology is solved, and efficient production schedule optimization and flexibility and safety of the production process are achieved.
Patent Information
- Application Number
- CN202510490306.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-18
- Publication Date
- 2025-05-16
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
The existing production scheduling system has low collaboration efficiency when dealing with dual robot collaboration operations on the electroplating production line, and lacks production efficiency and accuracy when dealing with complex process flows.
A dual-robot collaborative electroplating production line optimization scheduling system is designed, including a data input module, a scheduling calculation module, a conflict detection module and a result output module. The system generates an initial production schedule by receiving and analyzing various types of process flow and production task data, and performs time conflicts, resource conflicts and process conflict detection on the plan. Through robust algorithm optimization, iterative optimization of production scheduling plans can ensure the feasibility and stability of production scheduling plans.
It realizes efficient production scheduling of dual-robot collaborative electroplating production lines, improves production efficiency, can respond to production changes in real time, and has real-time adjustment functions of order insertion and order deletion, ensuring production safety and system flexibility.
Smart Images

Figure CN120013210A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of electroplating production management, and in particular to a dual-robot collaborative electroplating production line optimization scheduling system and method. Background Art
[0002] With the rapid development of intelligent manufacturing technology, automated and intelligent production scheduling systems have gradually become key technologies for improving production efficiency and reducing costs. These systems can improve production scheduling efficiency to a certain extent through algorithm optimization. However, the existing production scheduling systems still have the following shortcomings: In electroplating production lines, dual-robot collaborative operation has become an important means to improve production efficiency. However, the existing production scheduling system fails to fully consider the characteristics and requirements of dual-robot collaboration, resulting in low collaboration efficiency. Electroplating production involves multiple process flows, and there are complex dependencies between these processes. When dealing with such complex process flows, the existing production scheduling system often shows problems of insufficient scheduling efficiency and accuracy. Summary of the invention
[0003] The purpose of the present invention is to provide a dual-robot collaborative electroplating production line optimization scheduling system and method, aiming to solve the problem of low collaborative efficiency of existing scheduling systems.
[0004] To achieve the above-mentioned purpose, in a first aspect, the present invention provides a dual-robot collaborative electroplating production line optimization scheduling system, comprising a data input module, a scheduling calculation module, a conflict detection module and a result output module, wherein the data input module, the scheduling calculation module, the conflict detection module and the result output module are connected in sequence; The data input module is used to receive and analyze various types of process flow and production task data; The scheduling calculation module generates an initial production scheduling plan based on the process flow and production task data; The conflict detection module is used to detect time conflicts, resource conflicts and process conflicts in the initial production scheduling plan; The result output module is used to output the optimized production scheduling plan including process time and resource allocation in the form of charts, timetables, and text files, and generate a real-time scheduling log to record the execution progress and system status changes.
[0005] Wherein, the data input module includes a reading unit and a processing unit, and the reading unit is connected to the processing unit; The reading unit is used to read the processing task product list and process parameters; The processing unit performs standardization processing on the read data based on a predetermined format to generate a data tuple including a product number, a process number, an operation time, an error time, a production quantity and a loading time.
[0006] Wherein, the scheduling calculation module includes a process time calculation unit and a robust algorithm optimization unit, and the process time calculation unit and the robust algorithm optimization unit are connected; The process time calculation unit generates an initial production scheduling plan based on the processing time requirements and process requirements in the process flow; The robust algorithm optimization unit iteratively optimizes the production scheduling plan by integrating the dynamic optimization algorithm of the heuristic algorithm, Monte Carlo simulation, and elite solution database.
[0007] Wherein, the conflict detection module includes a time conflict detection unit, a resource conflict detection unit and a process conflict detection unit; The time conflict detection unit determines whether the production scheduling scheme has a time conflict based on the time series data of the process; The resource conflict detection unit determines whether the resources are simultaneously competed by multiple tasks according to the dynamic occupation of slots and robotic arm resources during monitoring and scheduling; The process conflict detection unit verifies the correctness of the production scheduling plan by checking whether the execution order of the tasks meets the constraint conditions based on the logical constraint relationship between the processes.
[0008] The result output module includes a scheduling result formatting unit, a real-time log recording unit, a conflict information prompting unit and a scheduling result storage unit, and the scheduling result formatting unit, the real-time log recording unit, the conflict information prompting unit and the scheduling result storage unit are connected in sequence; The scheduling result formatting unit is used to organize the production scheduling plan in a structured manner and generate a standardized scheduling result structure; The real-time log recording unit generates a real-time updated scheduling log during the task execution process, recording the time node and execution status of the task; The conflict information prompting unit is used to generate a conflict record and prompt the user when a time conflict or a resource conflict is detected; The scheduling result storage unit stores the scheduling result in a memory data structure through a dynamic storage mechanism.
[0009] In a second aspect, a dual-robot collaborative electroplating production line optimization scheduling method is applied to the dual-robot collaborative electroplating production line optimization scheduling system described in the first aspect, comprising the following steps: Receive and analyze various types of process and production task data; Generate initial production scheduling plan based on process flow and production task data; Detect time conflicts, resource conflicts and process conflicts in the initial production scheduling plan; The production scheduling plan is judged based on the elite solution database. If it is the optimal solution, the database is updated and the current optimal solution is adopted; if not, the production scheduling plan in the elite solution database is adopted; Output the optimized production schedule including process time and resource allocation in the form of charts, timetables, and text files, and generate real-time scheduling logs to record execution progress and system status changes; Determine whether there is any order insertion or cancellation. If so, enter the process flow and production task data of the order insertion or cancellation into the first step. If not, end the process.
[0010] A dual-robot collaborative electroplating production line optimization scheduling system of the present invention comprises a data input module, a scheduling calculation module, a conflict detection module and a result output module, wherein the data input module, the scheduling calculation module, the conflict detection module and the result output module are connected in sequence; the data input module is used to receive and parse various types of process flow and production task data; the scheduling calculation module generates an initial scheduling plan based on the process flow and production task data; the conflict detection module is used to detect time conflicts, resource conflicts and process conflicts for the initial scheduling plan; the result output module is used to output the optimized scheduling plan including process time and resource allocation in the form of a chart, a timetable and a text file, and generate a real-time scheduling log to record the execution progress and system state changes. The present invention can respond to production changes in real time, has a real-time adjustment function of inserting and deleting orders, can quickly adjust the scheduling plan, and improve production efficiency. By accumulating an elite solution database, the search cost is reduced, and the global optimal solution is automatically iterated with application superposition. It can effectively detect and avoid conflicts between electrolytic cells and robots to ensure production safety. It supports users to define special constraints to improve the flexibility and adaptability of the system. This solves the problem of low collaboration efficiency in the existing production scheduling system. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0012] Figure 1 It is a schematic diagram of a dual-robot collaborative electroplating production line optimization scheduling system provided by the present invention.
[0013] Figure 2 is a schematic diagram of the data input module.
[0014] Figure 3 It is a schematic diagram of the scheduling calculation module.
[0015] Figure 4 is a schematic diagram of the conflict detection module.
[0016] Figure 5 It is a schematic diagram of the result output module.
[0017] Figure 6 It is a flow chart of a method for optimizing production scheduling of a dual-robot collaborative electroplating production line provided by the present invention.
[0018] In the figure: 1-data input module, 2-scheduling calculation module, 3-conflict detection module, 4-result output module, 11-reading unit, 12-processing unit, 21-process time calculation unit, 22-robust algorithm optimization unit, 31-time conflict detection unit, 32-resource conflict detection unit, 33-process conflict detection unit, 41-scheduling result formatting unit, 42-real-time log recording unit, 43-conflict information prompt unit, 44-scheduling result storage unit. DETAILED DESCRIPTION
[0019] Embodiments of the present invention are described in detail below, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to be used to explain the present invention, and should not be construed as limiting the present invention.
[0020] See also Figures 1 to 5 In the first aspect, the present invention provides a dual-robot collaborative electroplating production line optimization scheduling system, comprising a data input module 1, a scheduling calculation module 2, a conflict detection module 3 and a result output module 4, wherein the data input module 1, the scheduling calculation module 2, the conflict detection module 3 and the result output module 4 are connected in sequence; The data input module 1 is used to receive and analyze various types of process flow and production task data; The scheduling calculation module 2 generates an initial production scheduling plan based on the process flow and production task data; The conflict detection module 3 is used to detect time conflicts, resource conflicts and process conflicts in the initial production scheduling plan; The result output module 4 is used to output the optimized production scheduling plan including process time and resource allocation in the form of charts, timetables, and text files, and generate a real-time scheduling log to record the execution progress and system status changes.
[0021] In this embodiment, the data input module 1 is used to receive and parse various types of process flow and production task data; the scheduling calculation module 2 generates an initial production scheduling plan based on the process flow and production task data; the conflict detection module 3 is used to detect time conflicts, resource conflicts and process conflicts in the initial production scheduling plan; the result output module 4 is used to output the optimized production scheduling plan including process time and resource allocation in the form of charts, timetables, and text files, and generate a real-time scheduling log to record the execution progress and system status changes. The present invention can respond to production changes in real time, has real-time adjustment functions for inserting and deleting orders, can quickly adjust the production scheduling plan, and improve production efficiency. By accumulating the elite solution database, the search cost is reduced, and it automatically iterates to the global optimal solution with application superposition. It can effectively detect and avoid conflicts between electrolytic cells and robots to ensure production safety. It supports users to define special constraints to improve the flexibility and adaptability of the system. Thereby solving the problem of low collaboration efficiency of the existing production scheduling system.
[0022] Further, the data input module 1 includes a reading unit 11 and a processing unit 12, and the reading unit 11 and the processing unit 12 are connected; The reading unit 11 is used to read the processing task product list and process parameters; The processing unit 12 performs standardization processing on the read data based on a predetermined format to generate a data tuple including a product number, a process number, an operation time, an error time, a production quantity and a loading time.
[0023] In this embodiment, various types of process flow and production task data are received and parsed, product process parameters are extracted, special constraints are supported to be defined by users, and a data structure suitable for scheduling is generated to meet the use requirements of the subsequent scheduling calculation module 2. By checking that the task quantity is non-negative, the process time meets the processing time limit, and the tank heating speed is greater than the cooling speed, the read data is standardized according to a predetermined format to generate a data tuple containing product number, process number, operation time, error time, production quantity and loading time. . Indexed by a unique identifier (ID) to support efficient calling of the scheduling calculation module 2, specifically by Query the corresponding standardized input data .
[0024] Further, the scheduling calculation module 2 includes a process time calculation unit 21 and a robust algorithm optimization unit 22, and the process time calculation unit 21 and the robust algorithm optimization unit 22 are connected; The process time calculation unit 21 generates an initial production scheduling plan based on the processing time requirements and process requirements in the process flow; The robust algorithm optimization unit 22 iteratively optimizes the production scheduling plan by integrating the heuristic algorithm, Monte Carlo simulation, and the dynamic optimization algorithm of the elite solution database.
[0025] In this embodiment, the process time calculation unit 21 extracts the process sequence of the product and its corresponding execution time parameters, defines the process sequence of the product The set of processes is: ,in, Indicates The execution time of a process is determined by the operation time. and error time Composition, the calculation formula is: ,in, : Standard operating time, determined by the standard operating procedure (SOP) in the mission plan, : The error time is set as the process standard; define the cumulative process execution time: in, : The execution time of the first process, :forward The cumulative time of each process; considering the movement time of the robot arm: in, : The physical distance between process slots, : Robot arm moving speed, and : Standard time for loading and unloading; Update cumulative time: The robust algorithm optimization unit 22, that is, a dynamic optimization algorithm that integrates heuristic algorithms, Monte Carlo simulations, and elite solution databases, enables the search for the optimal solution to break through the local optimum and continuously iterate to the global optimum during the system application process; at the same time, it also greatly shortens the production scheduling optimization calculation time; the elite solution database means that in each production scheduling optimization calculation, the optimal production scheduling plan is retained and stored in the elite solution database together with the corresponding production task parameters; after each new production task is issued, the system calculates the current optimal solution and compares it with the elite solution database; for the same production task parameters, if the current solution is better than the elite solution in the database, the original elite solution is replaced; if the current solution is worse than the elite solution in the database, the elite solution is selected as the production scheduling plan; and it has the characteristics of responding to sudden task changes during the scheduling process, such as real-time production scheduling optimization under the scenarios of inserting orders (new tasks are added) and withdrawing orders (task cancellation).
[0026] The robust algorithm optimization unit 22 randomly generates multiple product processing schedules as the initial population through the Monte Carlo method (required for the subsequent heuristic algorithm), and the dual-robot collaborative electroplating production line process and robot arm constraints are realized through the simulation system, and the scheduling scheme is iteratively optimized in the direction of minimum optimization of processing time that meets the production constraints; and through the accumulation of the elite solution database, the optimal solution achieved with a limited number of iterations is compared with the elite database, and the process of updating and iterating the optimal schedule is continuously performed.
[0027] Further, the conflict detection module 3 includes a time conflict detection unit 31, a resource conflict detection unit 32 and a process conflict detection unit 33; The time conflict detection unit 31 determines whether the production scheduling scheme has a time conflict based on the time series data of the process; The resource conflict detection unit 32 determines whether the resources are simultaneously competed by multiple tasks according to the dynamic occupation of the slot and the manipulator resources during the monitoring and scheduling process; The process conflict detection unit 33 verifies the correctness of the production scheduling plan by checking whether the execution order of the tasks meets the constraint conditions based on the logical constraint relationship between the processes.
[0028] In this embodiment, the conflict detection module 3 performs multi-level conflict analysis on the production scheduling plan generated by the scheduling calculation module 2 to ensure the feasibility and stability of the production scheduling plan.
[0029] Time conflict detection unit 31: Time conflict detection based on the time series data of the process ,in Indicates The start time of each process, Indicates the end time of the process; By comparing whether the time intervals of different processes overlap, determine whether there is a conflict; when any two processes and The following conditions are met: , it is determined as a time conflict; Resource conflict detection unit 32: This unit determines whether resources are simultaneously competed by multiple tasks by monitoring the dynamic occupancy of key resources such as slots and robotic arms during the scheduling process; the slot set is defined as , the robotic arm resource collection is , the occupancy status of each resource is determined by the function describe: For any resource or , if at any time , the following conditions are met: It is determined to be a resource conflict; Process conflict detection unit 33: Process conflict detection is based on the logical constraint relationship between processes. It verifies the correctness of the scheduling plan by checking whether the execution order of tasks meets the constraint conditions; defines the logical constraint set ,in Indicates the process Must be in process Completed before; if there is a process and , so that: It is determined to be a process conflict; Further, the result output module 4 includes a scheduling result formatting unit 41, a real-time log recording unit 42, a conflict information prompting unit 43 and a scheduling result storage unit 44, and the scheduling result formatting unit 41, the real-time log recording unit 42, the conflict information prompting unit 43 and the scheduling result storage unit 44 are connected in sequence; The scheduling result formatting unit 41 is used to structure the production scheduling plan and generate a standardized scheduling result structure; The real-time log recording unit 42 generates a real-time updated scheduling log during the task execution process, recording the time node and execution status of the task; The conflict information prompting unit 43 is used to generate a conflict record and prompt the user when a time conflict or a resource conflict is detected; The scheduling result storage unit 44 stores the scheduling result in a memory data structure through a dynamic storage mechanism.
[0030] In this embodiment, the data generated by the scheduling calculation module 2 is subjected to standard processing, dynamic log recording and data output to achieve accurate presentation of task execution status and conflict information; Scheduling result formatting unit 41: This unit receives the process time and slot allocation data generated by the scheduling calculation module 2, and organizes them into a structured format to generate a standardized scheduling result structure. , defined as: in, Indicates the product number, Indicates products No. Process number, and The start time and end time of the process are respectively; during the formatting process, a unified data structure is used to facilitate subsequent log recording and user visual analysis; time data and Generated directly from the task time series in the scheduling calculation module 2.
[0031] Real-time log recording unit 42: generates real-time updated scheduling logs during task execution , record the time node and execution status of the task; define the log structure as: in, Indicates a time node. and Represents the product number and process number respectively. Indicates the task execution status, including three states (Completed: The task is InProgress: The task is completed before Pending: the task has not started yet); Conflict information prompting unit 43: When a time conflict or a resource conflict is detected, the result output module 4 generates a conflict record and prompts the user; the storage structure of the conflict information is defined as: in, Indicates the type of conflict, including time conflict or resource conflict, Indicates the time point when the conflict occurs. and Respectively represent the products and processes involved in the conflict, Indicates the correction suggestions automatically generated by the system; Scheduling result storage unit 44: through a dynamic storage mechanism, the scheduling result is stored in a memory data structure for subsequent use; the storage data structure is defined as: , the storage mechanism is implemented in the form of function return value.
[0032] See also Figure 6 In a second aspect, a dual-robot collaborative electroplating production line optimization scheduling method is applied to the dual-robot collaborative electroplating production line optimization scheduling system described in the first aspect, comprising the following steps: S1 receives and analyzes various types of process and production task data; Specifically, by checking that the task quantity is non-negative, the process time meets the processing time limit, and the tank body heating speed is greater than the cooling speed, the read data is standardized according to the predetermined format to generate a data tuple containing product number, process number, operation time, error time, production quantity and loading time. . Indexed by a unique identifier (ID) to support efficient calling of the scheduling calculation module 2, specifically by Query the corresponding standardized input data .
[0033] S2 generates an initial production schedule based on process flow and production task data; Specifically, extract the product process sequence and its corresponding execution time parameters, and define the product The set of processes is: ,in, Indicates The execution time of a process is determined by the operation time. and error time Composition, the calculation formula is: ,in, : Standard operating time, determined by the standard operating procedure (SOP) in the mission plan, : The error time is set as the process standard; define the cumulative process execution time: in, : The execution time of the first process, :forward The cumulative time of each process; considering the movement time of the robot arm: in, : The physical distance between process slots, : Robot arm moving speed, and : Standard time for loading and unloading; Update cumulative time: S3 detects time conflicts, resource conflicts, and process conflicts on the initial production scheduling plan; Specifically, the time conflict detection unit 31: time conflict detection is based on the time series data of the process ,in Indicates The start time of each process, Indicates the end time of the process; By comparing whether the time intervals of different processes overlap, determine whether there is a conflict; when any two processes and The following conditions are met: , it is determined as a time conflict; Resource conflict detection unit 32: This unit determines whether resources are simultaneously competed by multiple tasks by monitoring the dynamic occupancy of key resources such as slots and robotic arms during the scheduling process; the slot set is defined as , the robotic arm resource collection is , the occupancy status of each resource is determined by the function describe: For any resource or , if at any time , the following conditions are met: It is determined to be a resource conflict; Process conflict detection unit 33: Process conflict detection is based on the logical constraint relationship between processes. It verifies the correctness of the scheduling plan by checking whether the execution order of tasks meets the constraint conditions; defines the logical constraint set ,in Indicates the process Must be in process Completed before; if there is a process and , so that: It is determined to be a process conflict; S4 judges the production scheduling plan based on the elite solution database. If it is the optimal solution, the database is updated and the current optimal solution is adopted; if not, the production scheduling plan in the elite solution database is adopted; Specifically, the robust algorithm optimization unit 22, that is, the dynamic optimization algorithm of the elite solution database, which integrates the heuristic algorithm, Monte Carlo simulation, and the elite solution database, enables the search for the optimal solution to break through the local optimum and continuously iterate to the global optimum during the system application process; at the same time, it also greatly shortens the production scheduling optimization calculation time; the elite solution database means that in each production scheduling optimization calculation, the optimal production scheduling plan is retained and stored in the elite solution database together with the corresponding production task parameters; after each new production task is issued, the system calculates the current optimal solution and compares it with the elite solution database; for the same production task parameters, if the current solution is better than the elite solution in the database, the original elite solution is replaced; if the current solution is worse than the elite solution in the database, the elite solution is selected as the production scheduling plan.
[0034] S5 outputs the optimized production schedule including process time and resource allocation in the form of charts, timetables, and text files, and generates a real-time scheduling log to record the execution progress and system status changes; Specifically, the scheduling result formatting unit 41 receives the process time and slot allocation data generated by the scheduling calculation module 2, and organizes them in a structured manner to generate a standardized scheduling result structure. , defined as: in, Indicates the product number, Indicates products No. Process number, and The start time and end time of the process are respectively; during the formatting process, a unified data structure is used to facilitate subsequent log recording and user visual analysis; time data and Generated directly from the task time series in the scheduling calculation module 2.
[0035] Real-time log recording unit 42: generates real-time updated scheduling logs during task execution , record the time node and execution status of the task; define the log structure as: in, Indicates a time node. and Represents the product number and process number respectively. Indicates the task execution status, including three states (Completed: The task is InProgress: The task is completed before Pending: the task has not started yet); Conflict information prompting unit 43: When a time conflict or a resource conflict is detected, the result output module 4 generates a conflict record and prompts the user; the storage structure of the conflict information is defined as: in, Indicates the type of conflict, including time conflict or resource conflict, Indicates the time point when the conflict occurs. and Respectively represent the products and processes involved in the conflict, Indicates the correction suggestions automatically generated by the system; Scheduling result storage unit 44: through a dynamic storage mechanism, the scheduling result is stored in a memory data structure for subsequent use; the storage data structure is defined as: , the storage mechanism is implemented in the form of function return value.
[0036] S6 determines whether there is any order insertion or cancellation. If yes, the process flow and production task data of the order insertion or cancellation are input into the first step. If no, the process ends.
[0037] Specifically, the robust algorithm optimization unit 22 has the feature of coping with sudden task changes during the scheduling process, such as real-time scheduling optimization under the scenarios of inserting orders (addition of new tasks) and canceling orders (cancellation of tasks).
[0038] Example: Application example: Assume that the product processing list is as follows: {'67B-TY6-2': 1, '67B-TY6-1-D': 1, '67B-TY9': 2, '67B-TY7': 2, 'Nickel seal': 1, '67B-TY6-2-D': 1, '67B-TY6-1': 1, 'Water seal': 1}. Among them, '67B-TY6-2': 1 means that product '67B-TY6-2' has 1 processing task, '67B-TY9': 2 means that product '67B-TY9' has 2 processing tasks, and so on.
[0039] For the given production task list input_name_list = ['67B-TY6-2','67B-TY6-1-D','67B-TY9','67B-TY9','67B-TY7','67B-TY7','Nickel seal','67B-TY6-2-D','67B-TY6-1','Water seal'], connect the data structure file "Process flow of different products.xlsx" suitable for scheduling in the data input module, and generate a standard data structure according to the requirements of the data input module.
[0040] Process time calculation The specific process time is calculated for each product through the process time calculation unit in the scheduling calculation module. The processing time of each process is determined by the pre-set standard process flow. For example: Process time series = {'67B-TY6-2':[(2,10),(3,60),(4,60),...,(19,60),(20,240)]} Each tuple (process number, time) represents the processing time of the process in seconds.
[0041] Calculation of unloading time The system generates a preliminary unloading time list based on the pre-set unloading time: initial_load_times=[50,3000,50,592,50,2064,50,3000,50] Scheduling calculation steps Combining initial_load_times and the respective process times, the scheduling calculation module generates a specific task sequence for each product. The final generated task sequence is as follows: sorted_tuples=[ (1,2,10,23),(2,2,60,73),(1,3,83,96),(2,3,133,146),..., (9,20,13838,13868),(10,19,14730,14743),(10,20,14983,15013)] Each tuple (product ID, process ID, robot start time, robot end time) represents the start and end time of a product in a certain process.
[0042] Conflict Detection Steps The system performs conflict detection on the generated task sequence to detect possible slot operation conflicts and robot arm movement conflicts.
[0043] Example of slot operation conflict: slot_conflict=[(2,15,4,15),(3,15,5,15),(3,15,6,15),(4,15,6,15),(5,15,8,15),(3,10,4,10),(5,10,6,10)] (Product 1 ID, Slot 1, Product 2 ID, Slot 2) means that two products occupy the same slot at the same time, resulting in a conflict.
[0044] Robotic arm movement conflict example: robot_conflict=[(4,6,10),(3,13,15),(2,20,20),(7,8,9),(3,15,16),(4,16,19),(5,15,16),(7,17,18)] (Product ID, Slot A, Slot B) indicates that a conflict occurred while the robot was moving the product from slot A to slot B and that adjustments were required.
[0045] Conflict Resolution Steps Use the adjust_conflict() function to adjust the detected conflicts and optimize the unloading schedule until the conflict pool is empty.
[0046] The adjust conflict function treats the process of each product entering a task slot as a minimum simulation unit. Each minimum unit is divided into detection conflict and adjustment conflict. The adjustment conflict is adjusted in logical order, first adjusting the robot movement conflict, then adjusting the slot operation conflict. The robot movement conflict is mainly divided into two parts. The first is the robot use conflict, that is, the robot cannot meet the robot use requirements of any two products at the same time, so it is necessary to ensure that the robot is not required at the same time throughout the process; the second is the robot collision conflict. Since different robots work at the same position when entering and exiting the main electroplating slot, the two robots cannot overlap on the timeline, otherwise there will be a robot collision. There are also two main situations of slot operation conflict. The first is to solve the slot occupancy problem. When the slot is not enough to support more products to enter but there are new products that need to enter the slot, there will be product redundancy in the slot; the second is the slot method conflict. When the slot position is sufficient, if two products appear in the same slot but have different methods in the slot, there will be a slot method conflict.
[0047] The adjustment is divided into the following steps: Slot operation conflict adjustment: slot_conflict_adjustment=[(4,15,285),(5,15,78),(6,15,28),(6,15,78),(8,15,186),(4,10,1803),(6,10,1785)] (Product ID, Slot ID, Delay Time) indicates the time delay of a slot after the slot operation conflict is adjusted.
[0048] Robotic arm movement conflict adjustment: robot_conflict_adjustment=[(4,6,17),(5,8,11),(8,5,9),(7,8,7),(6,13,12),(7,9,7),(7,13,31),(8,19,8)] (Product ID, Slot A, Delay Time) indicates the delay time required for a product during the movement of the robot arm.
[0049] Summary adjustment time Summarize the postponed time of the same product ID to get the total adjustment time list: slot_conflict_adjustment_time={4:2088,5:78,6:1891,8:186} robot_conflict_adjustment_time={4:17,5:11,8:17,7:45,6:12} Integration adjustment time Combine the slot operation conflict adjustment time and the robot movement conflict adjustment time to get the final adjustment time list: total_adjustment_time={4:2105,5:89,6:1903,7:45,8:203} Update unloading time Update the preliminary unloading time list according to the adjustment time list: updated_load_times=[50,3000,2155,681,1953,2109,253,3000,50] Scheduling plan optimization After the above steps 1-9, by calling the optimization algorithm, further iteratively adjust the material unloading time, generate the task sequence, and perform conflict detection until the conflict pool is empty, and finally generate the optimal production scheduling plan.
[0050] The final unloading time, processing time and task sequence will be returned for production scheduling.
[0051] Optimal unloading time list: [50,3000,2380,1176,2574,2625,1314,3614,282] Optimal processing time: 23122 seconds Optimal task sequence: [(1,2,10,23),(2,2,60,73),(1,3,83,96),....,(9,20,21715,21745),(10,19,22839,22852),(10,20,23092,23122)] Each tuple (product ID, process ID, robot start time, robot end time) represents the start and end time of a product in a certain process.
[0052] The result output module outputs the operation records of the dual robots. For example, the first ten lines of the robot operation table are as follows: Product Number Robotic Arm Start using time End of use time Current location Pick-up location Target location No-load moving time Load moving time Total moving time 1 1 10 23 1 2 3 3 13 16 2 1 60 73 3 2 3 3 13 16 1 1 83 96 3 3 4 0 13 13 2 1 133 146 4 3 4 3 13 16 1 1 156 169 4 4 5 0 13 13 1 1 187 200 5 5 6 0 13 13 2 1 206 219 6 4 5 6 13 19 2 1 237 250 5 5 6 0 13 13 1 1 320 348 6 6 12 0 28 28 2 1 370 395 12 6 11 18 25 43 At the same time, the system records the real-time scheduling log, as shown below: Task sequence and scheduling related data The task sequence (name_list) records the preliminary task sequence of the product, and each element represents a specific process task: name_list=[ '67B-TY6-2','67B-TY6-1-D','67B-TY9','67B-TY9', '67B-TY7','67B-TY7','Nickel seal','67B-TY6-2-D', '67B-TY6-1','Water Seal' ] The insert task sequence (total_append_name_list) records the new tasks temporarily inserted during the scheduling process: total_append_name_list=[] The cancellation task sequence (total_remove_name_list) records the tasks that are cancelled during the scheduling process: total_remove_name_list=[] Process execution status The completed process list (finish_list) records the completed task information. Each task contains product ID, process ID, start time, and end time: finish_list=[ (1,2,10,23),(2,2,60,73),(1,3,83,96), (2,3,133,146),(1,4,156,169),(1,5,187,200), (2,4,206,219),(2,5,237,250),(1,6,320,348),] Scheduling time related data System elapsed time (elapsed_time) Indicates the time the system has been running since it was started, in seconds: elapsed_time=300.000 The total task sequence (sorted_tuples) records the task sequence of all products, including the start and end time of each task: sorted_tuples=[(1,2,10,23),(2,2,60,73),(1,3,83,96),...(9,20,21715,21745),(10,19,22839,22852),(10,20,23092,23122)] Data related to unloading time The unloading time list (load_time_list) records the unloading time of each product: load_time_list=[50,3000,2380,1176,2574,2625,1314,3614,282] Schedule process end element The last element of the task sequence (last_element) records the last task in the task sequence, including the product ID, process ID, start time and end time: last_element=(10,20,23092,23122) Insert order example: Application example: Assume that the product processing list is as follows: {'67B-TY6-2': 1,'67B-TY6-1-D': 1,'67B-TY9': 2,'67B-TY7': 2,'Nickel seal': 1,'67B-TY6-2-D': 1,'67B-TY6-1': 1,'Water seal': 1}. Among them, '67B-TY6-2': 1 means that product '67B-TY6-2' has 1 processing task, '67B-TY9': 2 means that product '67B-TY9' has 2 processing tasks, and so on.
[0053] For the given production task list input_name_list=['67B-TY6-2','67B-TY6-1-D','67B-TY9','67B-TY9','67B-TY7','67B-TY7','Nickel seal','67B-TY6-2-D','67B-TY6-1','Water seal'], connect the data structure file "Process flow of different products.xlsx" suitable for scheduling in the data input module, and generate a standard data structure according to the requirements of the data input module.
[0054] This insertion case inserts two new products, namely ['67B-TY6-1', '67B-TY6-1-D'], at the end of the task sequence after the system has been running for 300 seconds. Finally, the data input module, scheduling calculation module, conflict detection module, and result output module of the basic operation output the data structure suitable for task scheduling.
[0055] The following material time list is [50,3000,2380,1176,2574,2625,1314,3615,281,2518,2505] At this time, the total insertion task sequence is updated to total_append_name_list=['67B-TY6-1','67B-TY6-1-D'], The task order sequence is updated to name_list=['67B-TY6-2','67B-TY6-1-D','67B-TY9','67B-TY9','67B-TY7','67B-TY7','Nickel seal','67B-TY6-2-D','67B-TY6-1','Water seal','67B-TY6-1','67B-TY6-1-D'], The task sequence is updated to sorted_tuples=[(1,2,10,23),(2,2,60,73),(1,3,83,96),...,(12,16,27708,27727),(12,19,27787,27800),(12,20,28040,28070)], The last element is updated to last_element=(12,20,28040,28070) Example of order cancellation: Application example: Assume that the product processing list is as follows: {'67B-TY6-2': 1,'67B-TY6-1-D': 1,'67B-TY9': 2,'67B-TY7': 2,'Nickel seal': 1,'67B-TY6-2-D': 1,'67B-TY6-1': 1,'Water seal': 1}. Among them, '67B-TY6-2': 1 means that product '67B-TY6-2' has 1 processing task, '67B-TY9': 2 means that product '67B-TY9' has 2 processing tasks, and so on.
[0056] For the given production task list input_name_list=['67B-TY6-2','67B-TY6-1-D','67B-TY9','67B-TY9','67B-TY7','67B-TY7','Nickel seal','67B-TY6-2-D','67B-TY6-1','Water seal'], connect the data structure file "Process flow of different products.xlsx" suitable for scheduling in the data input module, and generate a standard data structure according to the requirements of the data input module.
[0057] When canceling an order, the system will consider the processes that are currently running, and will keep all the products on the production line, and cancel the orders for the products that have not been unloaded. In this cancellation case, the system has been running for 300 seconds, and the order for the unprocessed products is canceled. At this time, the processes that the system has completed and is currently running are: finish_list=[(1,2,10,23),(1,3,83,96),(1,4,156,169),(1,5,187,200),(1,6,320,342)] At this time, the products on the production line are [1,2], so only products between 3-10 can be cancelled. This time, product 10 is selected to be cancelled, that is, ['water seal'] is cancelled. After the basic operation of the data input module, scheduling calculation module, conflict detection module, and result output module, the data structure suitable for task scheduling is output. For example, the time list load_time_list=[50,3000,2380,1176,2574,2625,1314,3597] At this time, the total order cancellation task sequence is: total_remove_name_list=['water seal'] The task sequence is updated to name_list=['67B-TY6-2','67B-TY6-1-D','67B-TY9','67B-TY9','67B-TY7','67B-TY7','Nickel seal','67B-TY6-2-D','67B-TY6-1'] The task sequence is updated to sorted_tuples=[(1,2,10,23),(2,2,60,73),(1,3,83,96),...,(9,16,21366,21385),(9,19,21445,21458),(9,20,21698,21728)] The last element is updated to last_element=(9,20,21698,21728).
[0058] The data input module receives and parses various types of process flow and production task data to generate data structures suitable for scheduling. These data structures support the scheduling requirements of dual robot collaboration, such as the movement speed of the robot arm, the grasping speed, and the processing time of different products. The data tuples generated by standardization processing (product number, process number, operation time, etc.) can support the efficient calling of dual robot collaboration. The process time calculation unit in the scheduling calculation module takes into account the preset movement speed and grasping speed of the robot arm, and calculates the processing time for different products. This shows that the system has fully considered the characteristics of dual robot collaboration when generating the task queue. By adjusting the movement time of the robot arm (such as the standard time for loading and unloading), the task sequence can be optimized to ensure that the dual robots operate efficiently during the collaboration process.
[0059] The conflict detection module ensures the feasibility and stability of the production schedule through multi-level conflict analysis (time conflict, resource conflict, process conflict). The resource conflict detection unit specifically monitors the dynamic occupancy of key resources such as slots and robotic arms to avoid resources being competed for by multiple tasks at the same time. This shows that the system can effectively avoid resource conflicts that may occur during the collaboration of dual robots.
[0060] The result output module processes the data generated by the scheduling calculation module in a standardized manner and generates a scheduling plan containing key information such as process time and resource allocation. The system can output the operation records of the dual robots, including the start time and end time of the robotic arms, the current position, the position of the objects picked up, the target position, etc. This information reflects the collaborative process of the dual robots in task execution.
[0061] The system supports real-time adjustment of order insertion and order cancellation, and can quickly respond to production changes. The document mentions that when the task sequence changes (such as order insertion or order cancellation), the system will regenerate the task sequence and ensure the efficiency and safety of dual robot collaboration. For example, when inserting an order, the system will recalculate the movement time and task sequence of the robot arm according to the new task list to ensure that the dual robots can collaborate seamlessly.
[0062] The robust algorithm optimization unit can dynamically optimize the production schedule by integrating heuristic algorithms, Monte Carlo simulation and elite solution database. This optimization algorithm can break through the local optimal solution and ensure the global optimality of dual robot collaboration. When responding to sudden task changes (such as inserting or canceling orders), the system can adjust the production schedule in real time to ensure the efficiency and flexibility of dual robot collaboration.
[0063] Beneficial effects of the present invention: 1. Robustness: The system can respond to production changes in real time, has the real-time adjustment function of inserting and deleting orders, can quickly adjust the production schedule and improve production efficiency.
[0064] 2. Efficiency: Reduce search costs by accumulating a database of elite solutions, and automatically iterate to the global optimal solution as applications are added.
[0065] 3. Safety: The system can effectively detect and avoid conflicts between electrolytic cells and robots to ensure production safety.
[0066] 4. Flexibility: Support users to customize special constraints to improve the flexibility and adaptability of the system.
[0067] What is disclosed above is only a preferred embodiment of a dual-robot collaborative electroplating production line optimization scheduling system and method of the present invention. Of course, this cannot be used to limit the scope of rights of the present invention. Ordinary technicians in this field can understand that all or part of the processes of the above-mentioned embodiments and equivalent changes made in accordance with the claims of the present invention still fall within the scope of the invention.
Claims
1. A dual-robot collaborative electroplating production line optimization scheduling system, characterized by: It includes a data input module, a scheduling calculation module, a conflict detection module and a result output module, wherein the data input module, the scheduling calculation module, the conflict detection module and the result output module are connected in sequence; The data input module is used to receive and analyze various types of process flow and production task data; The scheduling calculation module generates an initial production scheduling plan based on the process flow and production task data; The conflict detection module is used to detect time conflicts, resource conflicts and process conflicts in the initial production scheduling plan; The result output module is used to output the optimized production scheduling plan including process time and resource allocation in the form of charts, timetables, and text files, and generate a real-time scheduling log to record the execution progress and system status changes.
2. The dual-robot collaborative electroplating production line optimization scheduling system according to claim 1, characterized in that: The data input module includes a reading unit and a processing unit, and the reading unit is connected to the processing unit; The reading unit is used to read the processing task product list and process parameters; The processing unit performs standardization processing on the read data based on a predetermined format to generate a data tuple including a product number, a process number, an operation time, an error time, a production quantity and a loading time.
3. The dual-robot collaborative electroplating production line optimization scheduling system according to claim 1, characterized in that: The scheduling calculation module includes a process time calculation unit and a robust algorithm optimization unit, and the process time calculation unit and the robust algorithm optimization unit are connected; The process time calculation unit generates an initial production scheduling plan based on the processing time requirements and process requirements in the process flow; The robust algorithm optimization unit iteratively optimizes the production scheduling plan by integrating the dynamic optimization algorithm of the heuristic algorithm, Monte Carlo simulation, and elite solution database.
4. The dual-robot collaborative electroplating production line optimization scheduling system according to claim 1, characterized in that: The conflict detection module includes a time conflict detection unit, a resource conflict detection unit and a process conflict detection unit; The time conflict detection unit determines whether the production scheduling scheme has a time conflict based on the time series data of the process; The resource conflict detection unit determines whether the resources are simultaneously competed by multiple tasks according to the dynamic occupation of slots and robotic arm resources during monitoring and scheduling; The process conflict detection unit verifies the correctness of the production scheduling plan by checking whether the execution order of the tasks meets the constraint conditions based on the logical constraint relationship between the processes.
5. The dual-robot collaborative electroplating production line optimization scheduling system according to claim 1, characterized in that: The result output module includes a scheduling result formatting unit, a real-time log recording unit, a conflict information prompting unit and a scheduling result storage unit, wherein the scheduling result formatting unit, the real-time log recording unit, the conflict information prompting unit and the scheduling result storage unit are connected in sequence; The scheduling result formatting unit is used to organize the production scheduling plan in a structured manner and generate a standardized scheduling result structure; The real-time log recording unit generates a real-time updated scheduling log during the task execution process, recording the time node and execution status of the task; The conflict information prompting unit is used to generate a conflict record and prompt the user when a time conflict or a resource conflict is detected; The scheduling result storage unit stores the scheduling result in a memory data structure through a dynamic storage mechanism.
6. A dual-robot collaborative electroplating production line optimization scheduling method, applied to the dual-robot collaborative electroplating production line optimization scheduling system according to any one of claims 1 to 5, characterized in that: The following steps are involved: Receive and analyze various types of process and production task data; Generate initial production scheduling plan based on process flow and production task data; Detect time conflicts, resource conflicts and process conflicts in the initial production scheduling plan; The production scheduling plan is judged based on the elite solution database. If it is the optimal solution, the database is updated and the current optimal solution is adopted; if not, the production scheduling plan in the elite solution database is adopted; Output the optimized production schedule including process time and resource allocation in the form of charts, timetables, and text files, and generate real-time scheduling logs to record execution progress and system status changes; Determine whether there is any order insertion or cancellation. If so, enter the process flow and production task data of the order insertion or cancellation into the first step. If not, end the process.
Citation Information
Patent Citations
Method and device for solving multi-process job scheduling problem considering collaborative robot
CN117057551A
Production scheduling scheme generation method and system considering workshop complex production requirements
CN118428634A
Single-module follow-up control method and system
CN118818992A
Distributed intelligent production scheduling decision-making system based on cloud computing
CN119443346A
Multi-task collaborative robot scheduling method and system for intelligent factory
CN119596882A