Robot task allocation method and system based on auction algorithm
Through the robot task allocation method based on bidding algorithm, the problems of low efficiency and matching errors in the assembly process of complex control valves are solved, efficient assembly resource utilization and system stability are achieved, and are suitable for assembly tasks of multiple types of valves.
Patent Information
- Application Number
- CN202411291559.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-14
- Publication Date
- 2024-12-27
AI Technical Summary
The existing technology is common in the assembly process of complex control valves, matching errors and system downtime, and the lack of effective robot assembly task decision-making mechanisms and data sets, resulting in low utilization of assembly resources.
Using a robot task allocation method based on bidding algorithm, the task set and priority weight algorithm of the subassembly are constructed, and the assembly tasks are assigned dynamically and independently and collaboratively, and the task bidding algorithm is used to improve assembly efficiency and resource utilization.
It realizes efficient assembly of complex control valves, improves assembly efficiency and resource utilization, reduces the risk of matching errors and system downtime, and facilitates expansion and upgrades.
Smart Images

Figure CN119188739A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of robot control technology, and in particular to a robot task allocation method and system based on an auction algorithm. Background Art
[0002] Robotics is a disruptive technology that revolutionizes human production and lifestyle, and has become a hotly contested technology in the world's science and technology field today.
[0003] Complex control valve components usually have the characteristics of multiple varieties, small batches, and non-standard designs. There are thousands of assembly schemes, and the assembly interfaces and methods are complex and changeable. Currently, they are mainly assembled manually, relying on the experience of craftsmen, with low efficiency and quality risks such as wrong installation and missing installation. A digital model of the multi-variety valve process based on robot assembly and the assembly task decision-making mechanism corresponding to the digital model have not been established.
[0004] The automatic assembly process and equipment for DN15 ball valves of a certain university are only applicable to DN15 ball valves and have limited versatility. A certain company established a valve assembly mechanics model for spring elements, but only considered the adaptive valve assembly of elastic elements in specific applications. The assembly information integrated management system of a certain university is to carry out process planning and operation simulation of the assembly process for the parts to be assembled. However, there are many assembly parts for valves. One part will appear in different products, and parts in the same product will also appear in various modules. Therefore, in terms of correspondence, a large number of assembly processes are locked by the parts to be assembled. Although there are running simulations, there are still problems such as low matching efficiency, matching errors, and system crashes.
[0005] The collaborative robot developed by a foreign research institute is equipped with advanced sensors and vision systems. The robot can adaptively adjust its operating strategy based on real-time feedback during the assembly process. However, a data set for robot assembly of valves and an autonomous coordination and allocation system for the corresponding tasks have not yet been established. Summary of the invention
[0006] In view of the shortcomings of the existing methods, the present invention is based on a task bidding algorithm. Through a robot bidding task decision-making mechanism, it can meet the needs of each robot assembly environment, efficiently produce and assemble different control valves, and realize dynamic and autonomous collaborative allocation of tasks.
[0007] The technical solution adopted by the present invention is: a robot task allocation method based on an auction algorithm comprises the following steps:
[0008] Step 1: Construct a task set of subassemblies of several assemblies;
[0009] As a preferred embodiment of the present invention, the assembly is a control valve.
[0010] As a preferred embodiment of the present invention, the subassembly of the control valve includes: an assembled valve body, an assembled valve cover, a combined valve body and valve cover, and a combined body reassembly.
[0011] Step 2: Send assembly tasks to the Robot according to the priority weight of the subassembly;
[0012] As a preferred implementation of the present invention, the calculation formula of the priority weight is:
[0013]
[0014] Among them, P i It is the principle priority of the task; Q i is the normal priority of the task; f i is a time influence function. As a preferred embodiment of the present invention, the formula of the time influence function is:
[0015] fi(t)=α·(t0-ti)
[0016] Among them, α is the correction coefficient, which is used to control the influence of time difference; t i is the time when the task enters the task auction; t0 is the current time.
[0017] As a preferred embodiment of the present invention, the prerequisite is the relationship between the tasks of the sub-assemblies; the relationship between the tasks of the sub-assemblies includes: the first relationship that the assembling of the valve body and the assembling of the valve cover are executed simultaneously by different Robots; the second relationship that merging the valve body and the valve cover can only be executed after the tasks of assembling the valve body and assembling the valve cover have been completed, and the re-assembly of the merging body needs to be carried out after the completed merging of the valve body and the valve cover.
[0018] Step 3: Construct a task bidding algorithm. The Robot determines the task to accept the subassembly according to the task bidding value.
[0019] As a preferred embodiment of the present invention, step three specifically includes:
[0020] Step 31, confirm whether there are any unfinished control valve assembly tasks. If there are any unfinished control valve assembly tasks, the Robot must first complete the assembly of the remaining tasks;
[0021] Step 32: The Robot receives the new control valve assembly task, determines the number of sub-assembly tasks according to the number of control valve assembly tasks, and determines the Robot for the sub-assembly task according to the task bidding value.
[0022] As a preferred embodiment of the present invention, step 32 specifically includes:
[0023] Step 321, when the task time T=0, the valve body assembly task is assigned to a number of Robots according to the task bidding value, assuming a first group of Robots; after the valve body assembly task is assigned, if there is a second group of Robots, the valve cover assembly task is assigned to the second group of Robots according to the task bidding value; wherein the sum of the first group of Robots and the second group of Robots is the total Robot;
[0024] Step 322: When the task time T=T2, if there are remaining valve cover assembly tasks, the remaining valve cover assembly tasks are allocated to the second group of Robots according to the task bidding value;
[0025] Step 333: When the task time T=2*T2, if the valve cover assembly task is completed, the second group of Robots is waiting to receive the valve body and valve cover merging task, and the valve body and valve cover merging task is assigned to the second group of Robots according to the task bidding value;
[0026] Step 334: When the task time T=T1, the remaining combined valve body and valve cover tasks are assigned to the first group of Robots according to the task bidding value;
[0027] Step 335, when the task time T=T1+T3+T4, the sub-assembly task is completed; wherein, the time for assembling the valve body task is T1, the time for assembling the valve cover task in this example is T2, the time for merging the valve body and valve cover tasks is T3, and the time for merging the body and reassembling the task is T4.
[0028] As a preferred implementation of the present invention, the formula for the task bidding value is:
[0029]
[0030] Among them, T r The remaining time for the current task; is the weight factor; T n The estimated time required for the next task; W t is the weight of the task; F s is the time order priority factor.
[0031] As a preferred embodiment of the present invention, the robot task allocation system based on the auction algorithm includes: a user login module, a control valve assembly process database management module, a task parsing and matching module, a task auction module and a robot execution unit; wherein,
[0032] User login module, control valve assembly process database management module, task analysis and matching module, task bidding module and robot execution unit; among them,
[0033] The user login module is responsible for checking the assembly plan for the day, determining the execution of the assembly plan for the day, and checking the execution of the assembly process and the equipment status through a visual interface;
[0034] The control valve assembly process database management module is used to establish an assembly process parameter database;
[0035] The task analysis and matching module uses BIM technology to form a combination code based on the parameters of the valve type, matches it with the database, and sends the assembly process parameters to the task bidding module;
[0036] The task bidding module sends tasks to the Robot according to the Robot's assembly status; the Robot calculates the bidding value and obtains the task of the sub-assembly;
[0037] The robot execution unit retrieves instructions to perform assembly tasks.
[0038] Beneficial effects of the present invention:
[0039] 1. Use the priority weight algorithm to build sub-assemblies and assign assembly tasks to robots based on the priority weights;
[0040] 2. Construct a task bidding algorithm. Different robots use the task bidding algorithm to calculate the bidding value of the sub-assembly tasks, and determine the assignment of sub-assembly tasks based on the bidding value; realize dynamic autonomous allocation of assembly tasks, improve the utilization rate of assembly resources, and improve assembly efficiency;
[0041] 3. Use the Newtonsoft.Json library of Visual Studio to extract five parameters from the json file sent by the MES system, and generate a unique combination code based on the BIM coding rules; match the combination code with the table name in the process database to accurately lock the full set of assembly process parameters of the corresponding valve;
[0042] 4. Database data storage is composed of robot assembly unit instruction sets of specified processes, which can directly call data to communicate with equipment and complete the rapid issuance of instructions;
[0043] 5. The designed process database has the ability to store hundreds of assembly process parameters, allowing the robot to efficiently call the required data and handle complex assembly tasks; this architectural design facilitates system expansion and upgrading. BRIEF DESCRIPTION OF THE DRAWINGS
[0044] Figure 1 is a flow chart of a robot task allocation method based on an auction algorithm of the present invention;
[0045] Figure 2 It is a logic diagram of the robot task allocation system based on the auction algorithm of the present invention;
[0046] Figure 3 It is the workflow diagram of the task parsing and matching module of the present invention;
[0047] Figure 4 is a flowchart of the task bidding algorithm of the present invention;
[0048] Figure 5 is an example diagram of the task bidding algorithm of the present invention;
[0049] Figure 6 It is an overall system architecture diagram of the valve assembly of the present invention. DETAILED DESCRIPTION
[0050] The present invention is further described below in conjunction with the accompanying drawings and embodiments. This figure is a simplified schematic diagram, which only illustrates the basic structure of the present invention in a schematic manner, and therefore it only shows the components related to the present invention.
[0051] A robot task allocation method based on an auction algorithm, comprising:
[0052] Step 1: Construct a task set of subassemblies of several assemblies;
[0053] In this embodiment, the assembly is a control valve; the subassembly of the control valve includes: an assembled valve body, an assembled valve cover, a combined valve body and valve cover, and a combined body assembly;
[0054] Among them, the time for assembling the valve body task is T1, the time for assembling the valve cover task is T2, the time for merging the valve body and valve cover task is T3, and the time for merging the valve body and valve cover task is T4.
[0055] In this embodiment, T1=38s, T2=15s, T3=20s, and T4=10.
[0056] Combined body reassembly refers to the assembly of auxiliary structures after the control valve is combined with the valve body and bonnet, such as installation of internal parts, packing and gaskets, fastening bolts, etc.
[0057] The task set of the subassembly of an assembly refers to the tasks required to assemble several control valves; for example, assembling two control valves includes: 2 assembled valve bodies, 2 assembled valve covers, 2 combined valve body and valve cover, and 2 combined body reassembly tasks, which is a set of 8 subassembly tasks.
[0058] The relationships between the tasks of the four subassemblies include:
[0059] First relationship: the assembly of the valve body and the assembly of the valve cover can be performed simultaneously by different robots (Robots); for example, the valve body is assembled by Robot1, and the valve cover is assembled by Robot3.
[0060] Second relationship: The task of merging valve body and valve cover can only be executed after there are completed tasks of assembling valve body and valve cover. For example, if 2 valve body assemblies and 1 valve cover assemblies have been completed among the completed tasks, then a Robot can execute the task of merging valve body and valve cover when it is idle; conversely, if 2 valve body assemblies and 0 valve cover assemblies have been completed among the completed tasks, then the task of merging valve body and valve cover cannot be executed.
[0061] The reassembly of the combined body needs to be carried out after the completed combined valve body and valve cover, and then the entire assembly task is completed; for example, if a Robot has completed the task of merging a valve body and valve cover, the Robot will continue to perform the task of reassembly of the combined body.
[0062] Step 2: The host computer stores the control valve subassembly task set, and calculates the time before and after the subassembly enters the host computer, that is, calculates the priority weight S and sends the assembly task to the Robot;
[0063] Priorities include: principle priority and ordinary priority. Principle priority is not affected by time and has a higher priority when the preconditions are not met; ordinary priority is affected by time and is reduced to ordinary priority when the preconditions are met.
[0064] Preconditions refer to the relationships between tasks in a subassembly;
[0065] Priority rules:
[0066] Principle priority: assemble valve body > assemble valve cover > combine valve body and valve cover > reassemble the combined body; when two assembly tasks are not completed, reassembly of the combined valve body and valve cover and the combined body has the lowest priority.
[0067] The corresponding priority values of the four subassembly tasks are: 90>85>70>65;
[0068] Normal priority:
[0069] Assemble valve body > assemble valve cover > combine body and reassemble > combine valve body and valve cover;
[0070] The corresponding priority values of the four subassembly tasks are: 80>75>60>55;
[0071] The priority weight S formula is:
[0072] The priority weight formula should be able to distinguish between principle priority and common priority, and make adjustments based on time impact:
[0073]
[0074] in,
[0075] P i It is the principle priority of tasks;
[0076] Q i is the normal priority of the task;
[0077] f i is the time impact function, which indicates the time priority adjustment of the task, fi(t) = α·(t0-ti), where α is the correction coefficient used to control the impact of the time difference; t i is the time when the task enters the task auction; t0 is the current time;
[0078] 2 control valve assembly tasks according to priority:
[0079] 1. Two assembly valve bodies of two control valves Tasks:
[0080] Preconditions do not need to be met, just use the principle priority: p 11 =p 21 =90; Since this is the principle priority, there is no need to consider the time impact, score S 11 =S 21 =90;
[0081] 2. Two assembly bonnet tasks for two control valves:
[0082] The precondition does not need to be met, and the principle priority p is used directly 12 =p 22 =85;
[0083] Since this is a priority principle, no time impact is considered, score S 12 =S 22 =85;
[0084] Under normal priority conditions for 2 control valves with combined valve body and bonnet tasks:
[0085] 1. You need to complete the assembly of the valve body and the valve cover first. After the preconditions are met, use the normal priority, S 13 =S 23 =min(70+0,60+0)=60;
[0086] Under normal priority conditions for the reassembly task of combining two control valves:
[0087] The valve body and bonnet need to be merged first. After the preconditions are met, the normal priority is used. 14 =S 24 =min(65+0,55+0)=55;
[0088] Among them, the first digit of the subscript represents the i-th control valve; the second digit of the subscript represents the i-th subassembly task, and 1-4 represent assembling the valve body, assembling the valve cover, merging the valve body and the valve cover, and merging the body and then assembling it; for example: 11 represents the task of assembling the valve body of the first control valve, 21 represents the task of assembling the valve body of the second control valve, and so on.
[0089] Step 3: Send the tasks of several subassemblies to the task bidding algorithm, and several Robots determine to accept the tasks of the subassemblies according to their respective task bidding values;
[0090] The priorities that affect the auction in the task bidding algorithm mainly include time priority and task type priority; time priority means that the robot prioritizes bidding for tasks that can be completed in the shortest time; task type gives priority to the dependencies between tasks, and subsequent tasks can only be carried out after the predecessor tasks are completed; by balancing utilization, the robot's idle time is avoided as much as possible and tasks are allocated reasonably.
[0091] The calculation formula for the bid value is:
[0092]
[0093] Among them, T r The remaining time of the current task, in seconds. The smaller this value is, the larger the bid value is, which means the robot can take over the new task faster.
[0094] is a weight factor used to balance the impact between the remaining time of the current task and the estimated time of the next task. The default value is 0.5;
[0095] T n The estimated time required for the next task, in seconds. This value can be estimated based on the complexity of the task or historical data. The default value is 15s.
[0096] W t is the weight of the task. As the time interval from the last subassembly increases, the weight of the subassembly task will increase, that is, the robot will bid a high price for the task first.
[0097] F s is the time priority factor. If the predecessor task is not completed when the current task is executed, F s If the current task is a predecessor task or the predecessor task has been completed, F s A positive value increases the auction priority, and the default value is 1.
[0098] The calculation process of the existing control valve assembly time is as follows:
[0099] For example, two control valves are assembled by three robots Robot1, Robot2, and Robot3. In the assembly, two complete control valves are selected to be completed normally. Assuming that the assembly of the valve body and the assembly of the valve cover are performed at the same time, the total assembly time of the two control valves is:
[0100] T y =2·(38+10+20)=136(s) (2)
[0101] The present invention uses the auction algorithm to execute the assembly logic as follows:
[0102] When bidding through the task bidding algorithm, the two control valves will be divided into 8 subtasks based on two relationships, namely, assembling the valve body and assembling the valve cover can be executed at the same time, and merging the valve body and valve cover must be performed after the assembly of the valve body and the assembly of the valve cover is completed, and the merging of the body needs to be performed after the merging of the valve body and valve cover is completed.
[0103] like Figure 4 ,The process of adopting the task bidding algorithm is divided into two parts. ,The first part confirms whether there are any remaining unfinished control valve ,assembly tasks. When there are unfinished control valve ,assembly tasks, the Robot must first complete the assembly of the remaining ,tasks;
[0104] For example, if there are both remaining assembled valve bodies and assembled valve covers, the Robot first performs the task of merging the valve body and valve cover, and then performs the task of merging the body and reassembling;
[0105] For example, if there are remaining merged valve bodies and valve covers, the Robot executes the merged body and then executes the new assembly task, that is, after completing the remaining tasks, it receives the new control valve assembly task from the host computer.
[0106] like Figure 4 and 5 As shown, three robots are used to perform two control valve assembly tasks, that is, the total number of robots is 3;
[0107] When the task time T = 0, first configure the Robot initial parameters, including: T r , T n , W t ;
[0108] The initial parameters of Robot1, Robot2, and Robot3 are equal; T r =0, W t =1.0, T n =15,
[0109] Calculate the bidding value of the valve body assembly task of the three robots, the formula is:
[0110]
[0111] Among them, the first digit of the bid subscript represents the i-th control valve, the second digit of the subscript represents the i-th subassembly task, and the superscript is the robot serial number;
[0112] For example: 1,1 represents the task of assembling the valve body of the first control valve; when T=0, the bidding values of the three Robots for the task of assembling the valve body of the first control valve are the same, which is 1.05; that is, any Robot can receive the task of assembling the valve body.
[0113] Calculate the bidding value of the valve cover assembly task of the three robots, the formula is:
[0114] Initial parameters: T r =0, T n =15,W t =1.0
[0115]
[0116] 1,2 represents the valve cover assembly task of the first control valve; the bidding values of the valve cover assembly task of the three Robots are the same when T=0, which is 1.13; that is, any Robot can receive the valve cover assembly task.
[0117] In the first task allocation, the valve body assembly of the first control valve is first allocated to two robots, namely the first group of robots; and the valve cover assembly task is allocated to the third robot, namely the second group of robots;
[0118] For example, Robot1 and Robot3 respectively perform the valve body assembly tasks corresponding to two control valves; Robot2 performs the valve cover assembly task; of course, Robot1 and Robot2 can also assemble the valve body task, and Robot3 can assemble the valve cover task.
[0119] When the task time T = T2 = 15s:
[0120] Robot2 has completed the task of assembling the valve cover of the first control valve and is in an idle state. At this time, the bidding values of Robot1, Robot2, and Robot3 are calculated. Since Robot1 and Robot3 are still in the process of assembling the valve body when T=15s, the three Robots are bid for the task of assembling the valve cover of the second control valve.
[0121] Initial parameter T r =0, T n =15,W t =1.5,W t =T / a, in this example a=10; calculate the bid value of Robot2, the formula is:
[0122]
[0123] The bidding value for Robot2's task of assembling the valve cover for the second control valve is 1.2.
[0124] Calculate the bidding value of Robot1 and Robot3. Since T1 is 38s, T r =T1-T=23s, then the bidding value of Robot1 and Robot3 is:
[0125] T r =23, T n =15,W t =1.5
[0126]
[0127] The bidding values of Robot1 and Robot3 are both 1.04, which is less than 1.2 of Robot2, so Robot2 performs the task of assembling the valve cover of the second control valve, which is the second task allocation.
[0128] When the task time T = 2*T2 = 30s:
[0129] Robot2 has completed the task of assembling the valve cover of the second control valve and is idle; the three Robots continue to calculate the bidding value; the current status is: it is performing two combined valve body tasks (the combined valve body task takes 38 seconds, and the current task time is 30 seconds) and has completed two assembling valve cover tasks. The three Robots are bidding on the combined valve body and valve cover task of the first control valve.
[0130] Calculate the bid value of Robot2 using the formula:
[0131] T r =0, T n =15,W t =3.0; W t =T / a;
[0132]
[0133] Among them, 1,3 represents the combined valve body and bonnet tasks of the first control valve.
[0134] The remaining time of the current task of Robot1 and Robot3 is 8s (T1-T=38-30), and the bidding values of the two Robots will be reduced. The formula for the bidding values of Robot1 and Robot3 is:
[0135] T r =8, T n =15,W t =3.0
[0136]
[0137] If 1.13 is less than 1.4, Robot2 will perform the task of combining the valve body and bonnet of the first control valve, which is the third task allocation. Since the combined valve body task of Robot1 and Robot3 has not been completed, Robot2 is in the waiting state for assembly.
[0138] When the task time T = T1 = 38s:
[0139] Robot1 and Robot3 are in idle state, and are calculating the bidding value for the combined valve body and bonnet task of the second control valve.
[0140] Since Robot2 has completed the third task assignment, the remaining time of Robot2's current task is 30s (T3+T4=20+10), and the bid value will be reduced. The formula for Robot2's bid value is:
[0141] T r =30, T n =15,W t =3.8,W t =T / a;
[0142]
[0143] While Robot1 and Robot3 are in idle state, the bidding value is:
[0144] T r =0, T n =15,W t =3.8
[0145]
[0146] Either Robot1 or Robot3 performs the task of merging the valve body and valve cover of the second control valve and the task of reassembling the combined body, that is, the fourth task allocation; the other Robot is idle; for example, Robot1 performs the task of merging the valve body and valve cover of the second control valve and the task of reassembling the combined body.
[0147] When the task time T = T1 + T3 + T4 = 68s:
[0148] Robot1 completes the reassembly task of the second combined body; Robot2 completes the reassembly task of the combined body of the first control valve; and with an extra 30 seconds, Robot3 can be used for the valve body assembly task of the third control valve; the number of control valves and the number of Robots can be customized and the assembly task is performed according to the above logic.
[0149] Compared with the existing control valve assembly time, the efficiency of the task bidding algorithm is significantly improved, with an improvement rate of:
[0150]
[0151] like Figure 2 As shown, the robot task allocation system based on the auction algorithm includes:
[0152] User login module, control valve assembly process database management module, task analysis and matching module, task bidding module, robot execution unit, execution feedback module, log module and exception handling module; among them,
[0153] The user login module includes: ordinary user and administrator login. Ordinary users log in to the system and are responsible for checking the assembly plan for the day, determining the execution of the assembly plan for the day, and checking the execution of the assembly process and the equipment status through the visual interface. They are also responsible for checking the operation log and fault statistics, and doing a good job in the next step of system improvement and optimization. Administrator users enter the system and are responsible for debugging the assembly process data, testing and adjusting the parameters of abnormal operation, and checking, editing, and modifying the control valve assembly process database management module, which is centrally applied in the equipment debugging stage and the new process digital model entry stage.
[0154] Ordinary users and administrators log in using multiple types of usernames and passwords matching, the mathematical model is as follows:
[0155] U i represents the i-th user name; P i represents the i-th password; I U Indicates the user name entered by the user; P Indicates the password entered by the user;
[0156] The matching logic is expressed as:
[0157] ifI U ==U i and I p = =P i Login successful
[0158] The login password uses a regular expression to match a specific string pattern; the length is at least 8 characters; contains at least one uppercase letter; contains at least one lowercase letter; contains at least one number
[0159] ; Contains at least one special character (such as @$!%*?&); The corresponding regular expression is:
[0160] (?=.*[az])(?=.*[AZ])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$! %*? &]{8,}.
[0161] The control valve assembly process database management module establishes an assembly process parameter database, locks parts by process (process_code), and uses the database to find the workpiece code ID (part_id) required for a certain process, as well as the part tray position (part_position) to guide the robot to accurately complete each task. Each process code (process_code) will store all the complete process equipment instruction parameters to guide the robot assembly. The following is the SQL statement of the assembly process parameter table.
[0162] CREATE TABLE Q641Y6121(
[0163] process_code(process code)VARCHAR(50)PRIMARYKEY,
[0164] process_Robotcode(robot number)VARCHAR(50),
[0165] process_des (process description, process visualization) VARCHAR(255),
[0166] part_name (workpiece name) VARCHAR(255),
[0167] part_id (workpiece code) VARCHAR(50),
[0168] part_position (part tray position) VARCHAR(50),
[0169] Number (number of workpieces) INT,
[0170] N50_ord (LuoShi robot instruction number) VARCHAR(50),
[0171] position_1st (first positioner instruction) VARCHAR(50),
[0172] clam1_1st (first gripper command) INT,
[0173] clamping1_force6 (first six-dimensional force control) VARCHAR (50),
[0174] Zu18_1act (first section card robot) VARCHAR(50),
[0175] clam2_1st (second gripper command) INT,
[0176] clamping2_force6 (second sixth dimension force control) VARCHAR(50),
[0177] Zu18_2act (Second Section Card Robot) VARCHAR(50),
[0178] clam3_1st (third gripper command) INT,
[0179] clamping3_force6 (third and sixth dimension force control) VARCHAR(50),
[0180] positioner1_deg (first positioner instruction) VARCHAR(50),
[0181] positioner2_deg (second positioner instruction) VARCHAR(50),
[0182] tightening1_mechine(first tightening machine)VARCHAR(50),
[0183] tightening2_mechine (Second tightening machine) VARCHAR (50) );
[0185] INSERT INTO Q641Y6121(process_code,manual_Robot_work,process_Robotcode,process_des,part_name,part_id,number,N50_ord,position_1st,clam1_1st,clamping1_force6,Z u18_1act,clam2_1st,clamping2_force6,Zu18_2act,clam3_1st,clamping3_force6,positioner1_deg,positioner2_deg,tightening1_mechine,tightening2_mechine)
[0186] VALUES
[0187] ('Q641Y61211',1,'Q641Y61211','Place valve body','Valve body','DN50-Q041Y-01',(113,32,32,143,43,21),1,'Q641Y61211','(12,32,32,43,43,21)',12,14.5,'Q641Y61211',12,14.5,NULL,NULL,NULL,'0,0','0,0',NULL,NULL),
[0188] ('Q641Y61212',1,'Q641Y61212','Valve body installation packing gasket','Packing gasket','DN50-Q041Y-07',(1,312,32,143,43,21),1,'Q641Y61212','(12,32,32,43,43,22)',11,12,'Q641Y61212',11,12,NULL,NULL,NULL,NULL,NULL,NULL,NULL).
[0189] like Figure 3 As shown in the figure, the task analysis and matching module is aimed at the high price of MES for robot operation. Currently, the MES system for manual assembly is widely used. The task analysis and matching module parses the PDF file for manual assembly into a json file, extracts 5 groups of parameters to identify the valve type, and uses the BIM technology used in engineering to reform the combination code. It successfully matches the database and enters the plan, including the entry of multiple varieties and multiple plans; and sends it to the task auction module through the host computer.
[0190] Visual studio software installs Newtonsoft.Json library and MySql.Data.MySqlClient library, and generates combination codes for the parsed parameters according to the corresponding relationship. The five groups of parameters of the combination code include: model, caliber size (15 / 25 / 30 / 32 / 40 / 50 corresponds to code 1 / 2 / 3 / 4 / 5 / 6), pressure level (16 / 40 / 64 corresponds to code 1 / 2 / 3), sealing form (soft seal / hard seal corresponds to code 1 / 2) and flange form (RP corresponds to code 1); for example, the assembly of a control valve can be expressed by G15206121, which means model G1520-caliber 50-pressure level 16-hard seal-flange form RP expression. The generated combination code is compared with the MySQL database, and the corresponding Robot assembly process parameter table is retrieved, loaded into the UI interface, and sent to the task auction module as process parameters. The robot assembles according to the assembly process parameters and the task auction value.
[0191] When the system starts, it will first select and download the task list (json file) from the MES system. If the task list file does not exist, the system will switch to the MES system, obtain the maintenance task list from it, and then return to execute the above steps; when the file exists, the MES system will read and parse the task list in the json file, extract 5 key parameters, determine the corresponding control valve, determine the valve type and display it on the UI interface; after obtaining the key parameters, the MES system uses BIM coding technology to re-encode the key parameters and generate a combination code; the MES system matches the combination code with the corresponding control valve assembly table name through the database and loads the process parameters.
[0192] The task bidding module is the core of multi-device collaborative assembly. In the assembly process of the control valve, the tasks of each robot are different. For example, in an assembly cycle of a control valve, Robot1 is responsible for assembling the main valve body assembly, Robot2 is responsible for installing the auxiliary valve body assembly, and Robot3 is responsible for merging the main and auxiliary valve bodies and then assembling them to form a complete control valve product. Robot3 must wait for Robot1 and Robot2 to complete the assembly tasks before it can execute the action. At the same time, the time for assembling the main valve body assembly and installing the auxiliary valve body assembly is also different, ranging from 4:6 to 2:8. The purpose of the task bidding module is to assign tasks to the optimal robot to perform tasks in real time according to the assembly status of the Robot; task bidding can be used for the assembly process of different types of valves.
[0193] The robot execution unit includes a parts library, an assembly process instruction unit library, a positioner instruction library, etc.; the robot execution unit is the corresponding equipment end, for example, it includes three robotic arms, three peripheral cameras, three robot end cameras, three positioners fixed on the workbench, three sets of gripper libraries, and the robot execution unit is used to connect and communicate with each device, retrieve instructions, and send them to the robot.
[0194] The execution feedback module executes the feedback mechanism, which is used to monitor and evaluate various operations and tasks during the execution process to ensure that they proceed as expected; when anomalies or errors occur, the feedback mechanism can capture and report the problems in a timely manner, thereby performing self-adjustment and optimization to ensure the stability and reliability of the overall performance.
[0195] The log module is used to record various information generated during the operation process, including operation records, error logs, system status, etc.; log data provides a detailed basis for subsequent troubleshooting, system maintenance and performance analysis, and can help developers gain an in-depth understanding of the system's operation and optimize system design.
[0196] The exception handling module is based on the solution measures after the failure occurs in the actual operation of the assembly task. It dynamically establishes relevant solutions according to the problems in the actual operation process, displays the error code and calls the corresponding solution, or feeds back to manual resolution.
[0197] like Figure 6 This is the overall system architecture diagram for valve assembly, including the cloud layer, host computer software and execution end; the cloud has an MES system and cloud database, which is the highest-level management layer and has a shared database with the local database. Local modification of assembly process parameters requires cloud permissions.
[0198] As the actual control layer of the assembly project, the host computer is responsible for accepting tasks, dynamically allocating tasks through the task bidding algorithm, and collaboratively controlling the actions of the following equipment to greatly improve assembly efficiency.
[0199] The underlying control logic of the camera is in the Mech-Vision software, the underlying control logic of the robotic arm is in the JAKAZU software, and PLC control is implemented through the BoTu software.
[0200] As the actual executor of the assembly action, the execution end's action timing is affected by the allocation results of the task bidding algorithm. The task bidding algorithm will mark the core tasks according to their priority, and the corresponding execution end devices will also form a master-slave relationship, that is, coordinate with the main robot to complete the action.
[0201] Based on the above ideal embodiments of the present invention, the relevant staff can make various changes and modifications without departing from the technical concept of the present invention through the above description. The technical scope of the present invention is not limited to the contents of the specification, and its technical scope must be determined according to the scope of the claims.
Claims
1. A robot task allocation method based on an auction algorithm, characterized in that: The following steps are involved: Step 1: Construct a task set of subassemblies of several assemblies; Step 2: Send assembly tasks to the Robot according to the priority weight of the subassembly; Step 3: Construct a task bidding algorithm. The Robot determines the task to accept the sub-assembly based on the respective task bidding value.
2. The robot task allocation method based on the auction algorithm according to claim 1 is characterized in that: The calculation formula of priority weight is: Among them, P i It is the principle priority of the task; Q i is the normal priority of the task; f i is the time-dependent function.
3. The robot task allocation method based on the auction algorithm according to claim 2 is characterized in that: The formula for the time impact function is: fi(t)=α·(t0-ti) Where α is the correction factor; t i is the time when the task enters the task auction; t0 is the current time.
4. The robot task allocation method based on the auction algorithm according to claim 2 is characterized in that: The prerequisite is the relationship between the tasks of the sub-assemblies, including: the first relationship that the valve body and valve cover assembly are performed simultaneously by different Robots; the second relationship that the valve body and valve cover merging can only be performed after the valve body and valve cover assembling tasks have been completed, and the merging and reassembling of the body needs to be performed after the valve body and valve cover merging are completed.
5. The robot task allocation method based on the auction algorithm according to claim 2 is characterized in that: Step three specifically includes: Step 31, confirm whether there are any unfinished control valve assembly tasks. If there are any unfinished control valve assembly tasks, the Robot must first complete the assembly of the remaining tasks; Step 32: The Robot receives the new control valve assembly task, determines the number of sub-assembly tasks according to the number of control valve assembly tasks, and determines the Robot for the sub-assembly task according to the task bidding value.
6. The robot task allocation method based on the auction algorithm according to claim 5 is characterized in that: Step 32 specifically includes: Step 321, when the task time T=0, the valve body assembly task is assigned to a number of Robots according to the task bidding value, assuming a first group of Robots; after the valve body assembly task is assigned, if there is a second group of Robots, the valve cover assembly task is assigned to the second group of Robots according to the task bidding value; wherein the sum of the first group of Robots and the second group of Robots is the total Robot; Step 322: When the task time T=T2, if there are remaining valve cover assembly tasks, the remaining valve cover assembly tasks are allocated to the second group of Robots according to the task bidding value; Step 333: When the task time T=2*T2, if the valve cover assembly task is completed, the second group of Robots is waiting to receive the valve body and valve cover merging task, and the valve body and valve cover merging task is assigned to the second group of Robots according to the task bidding value; Step 334: When the task time T=T1, the remaining combined valve body and valve cover tasks are assigned to the first group of Robots according to the task bidding value; Step 335, when the task time T=T1+T3+T4, the subassembly task is completed; wherein, the time for assembling the valve body task is T1, the time for merging the valve body and valve cover task is T3, and the time for merging the body and reassembling the task is T4.
7. The robot task allocation method based on the auction algorithm according to claim 6 is characterized in that: The formula for the task auction value is: Among them, T r The remaining time for the current task; is the weight factor; T n The estimated time required for the next task; W t is the weight of the task; F s is the time order priority factor.
8. The robot task allocation method based on the auction algorithm according to claim 1 is characterized in that: The assembly is a control valve.
9. The robot task allocation method based on the auction algorithm according to claim 1 is characterized in that: The subassembly of the control valve includes: assembled valve body, assembled valve cover, combined valve body and valve cover, and combined body reassembly.
10. A system using the robot task allocation method based on the auction algorithm according to any one of claims 1 to 9, characterized in that: include: User login module, control valve assembly process database management module, task analysis and matching module, task bidding module and robot execution unit; among them, The user login module is responsible for checking the assembly plan for the day, determining the execution of the assembly plan for the day, and checking the execution of the assembly process and the equipment status through a visual interface; The control valve assembly process database management module is used to establish an assembly process parameter database; The task analysis and matching module uses BIM technology to form a combination code based on the parameters of the valve type, matches it with the database, and sends the assembly process parameters to the task bidding module; The task bidding module sends tasks to the Robot according to the Robot's assembly status; the Robot calculates the bidding value and obtains the task of the sub-assembly; The robot execution unit retrieves instructions to perform assembly tasks.
