Multi-robot path planning method for electric arc additive manufacturing system

By optimizing the multi-robot path planning method in the area segmentation and path planning stages, the problems of slow iterative convergence and many path turns in arc additive manufacturing are solved, and efficient and seamless multi-robot collaborative additive manufacturing is achieved, improving manufacturing quality and efficiency.

CN120606384APending Publication Date: 2025-09-09NANJING UNIV OF SCI & TECH
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510683412.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-26
Publication Date
2025-09-09

AI Technical Summary

Technical Problem

The existing multi-robot full-coverage path planning method in arc additive manufacturing has problems such as slow iterative convergence, easy to fall into local oscillation, and multiple path turning points leading to additive defects. In addition, the existing method fails to effectively consider the process requirements of additive manufacturing, resulting in insufficient manufacturing quality and efficiency.

Method used

By optimizing the two-stage method of area segmentation and path planning, introducing environmental factors, welding robot movement speed and load capacity parameters, and adopting the Manhattan distance compensation evaluation matrix and multiple spanning tree weight strategies, the task volume and path planning are dynamically adjusted to achieve asynchronous execution and reduce path turns and obstacle conflicts.

Benefits of technology

It improves the quality and efficiency of additive manufacturing, reduces the occurrence of additive defects, achieves efficient coverage and seamless connection of multi-robot collaboration, and shortens the manufacturing cycle.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120606384A_ABST
    Figure CN120606384A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-robot path planning method for an electric arc additive manufacturing system. The multi-robot path planning method comprises the specific steps that a three-dimensional model is obtained, slicing and layering are conducted, environment information is obtained, and environment modeling is conducted; determining an ideal task load; performing matrix iteration, and optimizing the current task load; constructing a minimum spanning tree, and generating a two-dimensional optimal task path of each robot; and performing three-dimensional conversion and asynchronous execution. Compared with the prior art, the method has the advantages that the form requirement of an actual additive manufacturing path is fully considered, the process defects of air holes, insufficient fusion, slag inclusion and the like in the manufacturing process are effectively reduced, and the problems of region segmentation and deposition path planning in an electric arc additive manufacturing (WAAM) task cooperatively executed by multiple robots are successfully solved; and therefore, high-quality additive manufacturing of the component is realized. Meanwhile, the path design strategy proposed in the method avoids the start-stop operation of the welding gun, ensures the parallelism and independence of each robot path in the three-dimensional space, and further improves the operation efficiency and stability of the system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical fields of robot path planning, additive manufacturing (AM) and intelligent manufacturing, and particularly relates to a multi-robot path planning method for a wire arc additive manufacturing (WAAM) system. Background Art

[0002] With the rapid development of robotics, the use of robots to replace manual labor in production operations has become a future trend in industrial automation. In the additive manufacturing industry, in particular, additive robots, as representatives of intelligent industrial robots, are widely used in various additive operations. To improve the quality and efficiency of additive operations, the additive manufacturing industry is deeply integrating artificial intelligence technology to promote the transformation and upgrading of the industry. Multi-robot collaborative operation is an effective solution that can further improve the production efficiency of additive operations.

[0003] Wire Arc Additive Manufacturing (WAAM) is a metal additive manufacturing process that uses an electric arc as the primary heat source to heat and melt a metal wire material, depositing the metal material layer by layer to create complex three-dimensional metal components. In this process, each robot is assigned a specific work area, which must accurately cover the entire target structure to ensure the continuity and seamlessness of the additive process. Through precise path planning, the robot can move along a predetermined trajectory, depositing the molten metal layer by layer along a specified route, and ultimately completing the construction of the target structure.

[0004] During the deposition of each layer, it is a very challenging problem to properly assign tasks to the additive robot and schedule the deposition path. Path allocation and scheduling need to comprehensively consider multiple factors such as time efficiency, workload distribution, and operational safety. In specific implementation, the path should be kept continuous and non-repetitive, unnecessary start-stop operations should be avoided, and time wasted due to tool changes should be reduced to ensure the efficiency and stability of the manufacturing process. In addition, the particularity of the additive process determines that path turns are prone to additive defects such as porosity, insufficient fusion, and slag inclusions. In contrast, long and straight paths can significantly reduce the probability of defects. Therefore, in full-coverage path planning, the number of path turns should also be minimized to improve the quality of additive forming and achieve efficient path planning.

[0005] The Multi-Robot Coverage Path Planning (MCPP) problem has been proven to be NP-Hard, and no general method has yet been developed to obtain an optimal solution within a reasonable time. Existing research generally categorizes MCPP solutions into two types: holistic and step-by-step. The step-by-step approach reduces the complexity of the MCPP problem by dividing it into two phases: region segmentation and path planning.

[0006] For the region segmentation stage, scholars have proposed the DivideAreas based on Robots' Initial Positions (DARP) method. This method uses the Euclidean distance between cells and robots to divide the space. In each iteration, it introduces task balance constraints and region connectivity constraints to gradually optimize the partitioning results, ultimately achieving approximately equal regions with each robot contained within its task area. However, in the actual application of additive manufacturing, the traditional DARP algorithm has the following two limitations:

[0007] (1) In the traditional iterative process, a fixed adjustment coefficient is used to correct the evaluation matrix, which results in the robot's attraction and repulsion of each cell being uniform. This lacks effective convergence of neighboring cells and appropriate abandonment of distant cells, resulting in slow iterative convergence and the tendency to fall into local oscillation.

[0008] (2) The initialization evaluation matrix of the traditional method is based only on the Euclidean distance between the cell and the robot, ignoring the morphological requirements of the additive path. This can easily lead to the final segmented area being circular or partially convex, which does not meet the process requirements of long straight paths in additive manufacturing. It increases the number of path turning points, which in turn causes additive defects such as pores, insufficient fusion, and slag inclusions.

[0009] For the path planning stage, existing technologies primarily fall into three categories: direct coverage methods, spanning tree-based methods, and reinforcement learning-based methods. Spanning tree-based methods, with their advantages of closed paths and no repeated paths, are well-suited for additive manufacturing tasks. However, spanning trees with different structures will form different paths. Therefore, when constructing a spanning tree, it is necessary to optimize the structure to meet the additive manufacturing process requirements for path continuity, number of turning points, path length, and overall coverage efficiency.

[0010] In summary, there is an urgent need to develop a MCPP solution method that is both general and adaptable to address the multi-robot path planning problem in the additive manufacturing process, ensure the rationality of process scheduling, thereby improving manufacturing quality, shortening the manufacturing cycle, and effectively reducing the incidence of manufacturing defects. Summary of the Invention

[0011] The purpose of this invention is to provide a multi-robot collaborative path planning method for arc additive manufacturing systems. This method abstractly transforms the additive manufacturing task into a multi-robot coverage path planning problem. By optimizing the two steps of region segmentation and path planning, it reduces the operation time of multi-robot collaboration and improves manufacturing quality. In particular, in multi-layer deposition path planning, a two-stage planning method can realize an asynchronous execution of a three-dimensional path parallel system, thereby effectively improving the efficiency and forming quality of additive manufacturing.

[0012] The technical solution to achieve the purpose of the present invention is: a multi-robot path planning method for an arc additive manufacturing system, comprising the following steps:

[0013] Step 1, environmental modeling: obtain the computer-aided design model data of the component to be formed, build a three-dimensional model, slice and layer it, discretize the environment into grids using the grid method, and assign different information to each cell to represent the current cell occupancy status. All cells construct the entire environmental information; then proceed to step 2,

[0014] Step 2: Determine the ideal task volume based on the allocation weight: Introduce environmental factors, welding robot movement speed and load capacity parameters in the task allocation process, and set different area allocation ratios based on the comprehensive performance scoring indicators to obtain the ideal task volume assigned to each robot; proceed to step 3,

[0015] Step 3: Use matrix iteration to optimize the current task volume: Initialize the task allocation matrix and the evaluation matrix, use the weight matrix and the connectivity matrix to modify the evaluation matrix, and update the task allocation matrix to determine the current task volume. Through continuous iterative optimization, the current task volume is updated in the direction of gradient descent until the objective function value is minimized; then go to step 4

[0016] Step 4: Generate the robot's two-dimensional optimal task path based on the segmented area: construct a minimum spanning tree in each segmented area according to different weight strategies, convert the spanning tree into an actual path sequence, and select the optimal path; go to step 5; Step 5: Asynchronous execution of three-dimensional conversion: perform inter-layer coordinate conversion, add inter-layer vertical paths, track the progress of the plane execution path status, and each robot completes the asynchronous execution of the additive path in three-dimensional space.

[0017] Furthermore, in step 2, the ideal amount of tasks assigned to each robot is expressed as:

[0018]

[0019] Where r is the robot serial number r={1,2,...q}, q is the number of additive robots, n rrepresents the ideal amount of tasks assigned to the rth robot, π r is the comprehensive performance score index of the rth robot, and N represents the area to be manufactured The number of cells;

[0020] Among them, the comprehensive performance scoring index π r The robot's moving speed ν r , load capacity L r and environmental factors∈ r The weighted scoring model of , and the final ideal task volume of each robot should satisfy the following relationship;

[0021] n1∪n2∪...∪n q =N

[0022] Furthermore, the specific steps in step 3 include:

[0023] Step 3.1: Initialization and iterative optimization of the task allocation matrix A: At the beginning of the algorithm, since all cells in the area to be manufactured have not yet been assigned robots, all elements of the task allocation matrix A are initialized to 0; through the evaluation matrix E r , iteratively optimize the task allocation matrix A; in each iteration, a suitable robot will be reselected for each task cell in the map, and the selection rule is the evaluation matrix E of all robots r The robot with the smallest element value at the corresponding position in ;

[0024] Step 3.2: Evaluation Matrix E r Initialization and iterative optimization of the evaluation matrix E r The iterative optimization form is as follows:

[0025]

[0026] Where, is the evaluation matrix before updating, k r is the current task volume of the rth robot, n r represents the ideal amount of tasks assigned to the rth robot, C r,xy Weighted connectivity matrix, h is the decay function, where The symbol represents the multiplication of corresponding elements in two matrices; r1 k r <n r The weight matrix when r2 k r >n r The weight matrix when ;

[0027] Furthermore, in step 3.2, in the calculation of the weight matrix, Manhattan distance compensation is used to initialize the evaluation matrix to consider only the singleness of the Euclidean distance;

[0028] Then the weight matrix λ r1 The calculation formula is:

[0029]

[0030] Where x max 、y max They represent the maximum difference between the horizontal row index and vertical column index of the grid map boundary of the robot's current position and the area to be manufactured, respectively. Δx and Δy are the differences between the row index and column index of the cell to be allocated in the area to be manufactured and the robot's initial position.

[0031] From the above formula, we can get r1 Between [0,1], the evaluation matrix E r The corresponding value decreases, the cell has a stronger attraction to the robot, and the task amount increases; take the most extreme case into consideration, when the cell is farthest from the robot, λ r1 Take the maximum 1, the evaluation matrix E r If the corresponding value does not decrease, the robot has no attraction to the cell, so it will not be assigned to the farthest cell when the task amount increases;

[0032] Weight matrix λ r2 The calculation formula is;

[0033]

[0034] According to the formula, we should make λ r2 Greater than 1, evaluation matrix E r The corresponding value increases, so that when the task allocation matrix A is calculated next time, the attraction of the cell to the robot decreases, and the task amount decreases; in the extreme case, when the cell is closest to the robot, λ r1 The minimum value is 1, so the probability of being discarded from the allocation matrix is ​​the lowest.

[0035] Furthermore, in step 3.2, the weighted connectivity matrix C r,xy The formula is:

[0036]

[0037] Where C r,xy Represents the overall unit set from the rth robot to the area to be manufactured The connectivity of cells at any point in R r represents the set of cell locations in the region assigned to robot r and connected to the initial position, Then it is region R r Any point within; Q r represents the set of cell locations in the region assigned to robot r but not connected to the initial location, Then it is region Q r Any point within The entire set of cells representing the area to be manufactured The position of any point in the region R is connected to the robot's initial position and is assigned to the robot. r The minimum Euclidean distance between any cells in the The entire set of cells representing the area to be manufactured The position of any point in the robot is connected to the area Q assigned to the robot but not connected to the robot's initial position r The minimum Euclidean distance between any cells in the .

[0038] Furthermore, in step 3.2, the calculation formula of the attenuation function h is:

[0039]

[0040] Where a is the attenuation speed coefficient, which controls the speed of change of the attenuation function h, and e is the natural exponent. The attenuation function h controls the evaluation matrix E of each robot. r The amplitude of change, taking the extreme value case, when the ideal task volume is equal to the current task volume, the attenuation function h is 1, and the evaluation matrix no longer changes.

[0041] Step 3.3: Gradient descent solution; the optimization goal of multi-robot task allocation is: the current task amount k of each robot in the system r Infinitely close to the target value n r , and finally minimize the objective function value J;

[0042]

[0043] Use the weight matrix and connectivity matrix to modify the evaluation matrix and update the task allocation matrix to adjust the current task quantity k r , continuously iteratively optimizes and updates the current task amount in the direction of gradient descent until the objective function value is minimized.

[0044] Furthermore, in step 4, the steps for constructing the spanning tree under different weight strategies are:

[0045] (1) After the region is segmented, the minimum spanning tree algorithm Kruskal algorithm is used to construct the minimum spanning tree in the region, and the weighted graph G is defined as;

[0046] G=(V,E)

[0047] Where V represents the location set of each robot task node in DARP region segmentation, and E is the set of edges between task nodes;

[0048] Among them, the set E of edges between task nodes is defined as:

[0049]

[0050] In the formula, each side There is a corresponding weight Represents the connection cost between task nodes, and edges are sorted by weight in order from smallest to largest; where p is the total number of edges contained in the weighted graph selected by G = (V, E) in the figure;

[0051] (2) Corresponding weight Four methods are used to assign values ​​so that the robot can choose different movement methods within the area, where rows and cols are the number of rows and columns after the discretization of the workspace; x corresponds to the horizontal row index in the grid map before expansion, and y corresponds to the horizontal column index in the grid map before expansion:

[0052]

[0053] (3) After completing the weight assignment of the edges, the Kruskal algorithm uses the Union-Find structure to manage the connectivity between nodes. Initially, each node is an independent set. Then, the algorithm traverses the sorted edge set E in turn and selects a set of edges connecting all nodes and with the smallest total weight from the set E of edges between task nodes. This is the minimum spanning tree.

[0054] Furthermore, in step 4, the actual path generation steps for different robots are as follows:

[0055] (1) Converting the minimum spanning tree into an actual path sequence: The minimum spanning tree (MST) is converted into an actual path. The expanded grid map ensures the effective loop space formed by the actual path, thereby obtaining a path that can cover the entire area starting from the initial position. For the same area, different spanning trees with different structures will be formed under different weight strategies, and the loop closure will also be different. Therefore, for each robot, four actual paths should correspond to the four weight strategies of the Kruskal algorithm.

[0056] (2) Selection of the optimal path: For each robot, select the total number of turns num_turns in the actual path among the four weighted strategies of the Kruskal algorithm. r Minimal path sequence;

[0057] k represents the sequence number of any node in the path, and the calculation formula for the movement direction of the robot at the kth node in the corresponding path is:

[0058]

[0059] Where f(k) represents the motion direction of the robot at the kth node in the actual path, x′ k is the path index of the kth node in the actual path, x′ k-1 is the row index of the k-1th node in the actual path, y′ k is the column index of the kth node in the actual path, y′ k-1 is the column index of the k-1th node in the actual path;

[0060] When f(k) is horizontal, it means that the robot moves in the horizontal direction at the kth position in the path; when f(k) is vertical, it means that the robot moves in the vertical direction at the kth position in the path.

[0061] Furthermore, in step 4, the total number of turns in the actual path is num_turns r Expressed as:

[0062]

[0063] Where t is a Boolean variable, f(k-1) represents the movement direction of the robot at the k-1th node in the actual path,

[0064] Total number of turns num_turns r The initial value is 0. Starting from the starting point itself is not considered a turn, so the accumulation starts from the third node. When the condition in the brackets is met and the robot's moving direction at the current node is inconsistent with that at the previous node, t is 1, otherwise t is 0.

[0065] Furthermore, in step 5, in each layer of two-dimensional path planning, for each robot r, the progress tracking formula of the execution path is

[0066]

[0067] Where, The path planning progress of the current layer, I r,l is the indicator function, l is the layer number, ρ is the path segment number, s represents the total number of nodes in the actual path, then the total number of segments in the actual closed path is s-1;

[0068] when θ is the preset progress threshold. When the robot's execution progress exceeds this threshold, the planning of the next layer is started.

[0069] Compared with the prior art, the present invention has the following significant advantages:

[0070] (1) The present invention supports multi-layer obstacle configuration. Different obstacles can be set independently on each layer, thereby constraining the shape of the current layer and ultimately completing the construction of the target structure. At the same time, the robot can adapt to the changing environment and adjust the path in real time to ensure that the robot's path does not conflict with obstacles, ensuring the smooth progress of the additive process;

[0071] (2) The present invention supports setting the regional allocation ratio. During actual operation, the ideal task volume of each robot can be dynamically adjusted according to environmental factors, the moving speed of the welding robot, and the load capacity parameters, so as to make the task scheduling more reasonable and improve the overall efficiency of the system.

[0072] (3) During the additive process, path turns often become inducing points for additive defects, such as pores, insufficient fusion, and slag inclusions. However, traditional path planning methods generally fail to fully consider this factor. To this end, the present invention introduces Manhattan distance in the region segmentation stage to compensate for the limitation of the traditional evaluation matrix being initialized only based on Euclidean distance. The cell importance matrix that takes into account real-time task requirements is reconstructed to replace the fixed coefficients of the traditional method, thereby dynamically adjusting the evaluation matrix.

[0073] (4) In the path planning stage, by evaluating four different minimum spanning tree (MST) weight modes, the path with the least number of turns is finally selected. This further effectively reduces unnecessary turns in the path, reduces the risk of additive defects, and thus significantly improves the quality of additive manufacturing.

[0074] (5) This invention achieves asynchronous execution by determining the starting and ending points. It can enter the planning of the next layer in advance when 75% of the road section of the current layer is completed, greatly reducing the system's waiting time and achieving seamless connection between layers. This innovative design effectively improves the overall efficiency of WAAM additive manufacturing and reduces non-working time in the production process.

[0075] (6) The present invention adopts a high-coverage path planning method based on multi-robot collaboration. By optimizing the two stages of area segmentation and path planning, it ensures that each robot can efficiently cover the area to be manufactured and passes through each area only once, avoiding uneven material deposition. At the same time, the continuous deposition path avoids unnecessary start and stop operations, reducing the time waste caused by tool replacement. BRIEF DESCRIPTION OF THE DRAWINGS

[0076] In order to more clearly illustrate the cases of the present invention and its advantages compared with the prior art, the following is a brief introduction to the drawings required for use in the cases or the prior art descriptions. Obviously, the drawings described below are only some cases of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0077] Figure 1 This is a flow chart of a multi-robot path planning method for an arc additive manufacturing system according to the present invention.

[0078] Figure 2 This is a diagram of the task node distribution before and after grid map expansion;

[0079] Figure 3 Schematic diagram of the sedimentary layer area division and the two-dimensional path of each robot in the example.

[0080] Figure 4 Schematic diagram of the final three-dimensional path of each robot in the example. DETAILED DESCRIPTION

[0081] The terms used in the present invention are only for the purpose of illustrating the embodiments of the present invention and are not intended to limit the present invention. Figure 2 、 3 , 4, some embodiments of the present invention are described in detail.

[0082] Step 1: Environment Modeling

[0083] Obtain the computer-aided design model data of the component to be formed, build a three-dimensional model, slice and layer it, discretize the environment (sediment layer) using the grid method, and assign different information to each cell to represent the current cell occupancy. All cells construct the entire environment information. Represents the set of all cell location points under the current grid map;

[0084]

[0085] Where rows and cols are the number of rows and columns after the workspace is discretized. is the horizontal row index in the grid map (before expansion), Index of the horizontal columns in the grid map (before expansion).

[0086] The cell granularity is determined by the size of the welding gun of the additive robot. Assuming that the discretized row×cols is n×n, the side length of the cell in the grid map should be set to twice the side length of the welding gun coverage range. Because in the path planning stage, the area coverage path planning method based on the spanning tree requires the use of 2×2 cells, so the original map is expanded (not to expand the map boundary, but to achieve finer spatial discretization by dividing the original map into higher resolution grid cells), as shown in the following example. Figure 2 As shown, Positions are represented as row indices of the (before dilation) raster map. Column index (i.e. the position of the blue dot in the figure); in the path generation stage, the minimum spanning tree is converted into an actual path sequence and generated in a 2n×2n grid map, where Positions are expressed as inflated raster map row indices Column index (i.e. the position of the red dot in the figure); the actual path ensures that each small cell (excluding cells containing obstacles) is completely covered and only covered once.

[0087] There are obstacles in the , which are used to constrain the shape of the sedimentary layer. Then the set of unknown obstacles B is expressed as, where The horizontal row index corresponding to the obstacle, The horizontal column index corresponding to the obstacle;

[0088]

[0089] Since the robot cannot traverse obstacles, the overall set of units to be allocated in the final manufacturing area is expressed as

[0090]

[0091] In the formula, \ is the difference operator, which means from the set Remove all elements contained in B, where x is the horizontal row index of the cell to be allocated in the grid map, and y is the horizontal column index of the cell to be allocated in the grid map;

[0092] Step 2: Determine the ideal workload based on the assigned weights

[0093] The termination condition of the traditional DARP algorithm is that the number of cells in each sub-area is close to equal. This assumption is based on the premise that the robots are isomorphic and have the same execution capabilities. However, the present invention takes into account the differences in the properties of each robot, including the robot's movement speed and load capacity. In addition, the working environment of the robot's manufacturing area (i.e., the complexity of the workpiece, etc.) should also be taken into consideration. Therefore, the present invention proposes to introduce environmental factor parameters in the task allocation process, and set different area allocation ratios according to the comprehensive performance scoring index, so as to improve the overall efficiency;

[0094] The ideal amount of tasks assigned to each robot is calculated as follows:

[0095]

[0096] Where r is the robot serial number r={1,2,...q}, q is the number of additive robots, n r represents the ideal amount of tasks assigned to the rth robot, π r is the comprehensive performance score index of the rth robot, and N represents the area to be manufactured The number of cells;

[0097] Among them, the comprehensive performance scoring index π r The robot's moving speed ν r , load capacity L r and environmental factors∈ r The weighted scoring model of r The calculation formula is:

[0098] π=ω1ν r +ω2L r +ω3∈ r (1-6)

[0099] Where ω1 represents the weight coefficient of moving speed, ω2 represents the weight coefficient of load capacity, and ω3 represents the weight coefficient of environmental factors, which are adjusted according to the actual application scenario.

[0100] And the final ideal task volume of each robot should satisfy the following relationship;

[0101] n1∪n2∪...∪n q =N(1-7)

[0102] Step 3: Use matrix iteration to optimize the current task volume

[0103] Step 3.1, initialization and iterative optimization of task allocation matrix A;

[0104] (1) The task allocation matrix A is used to describe the robot allocation status of each cell in the grid map. The number of rows and columns of the task allocation matrix A is consistent with the number of rows and columns of the grid map cells (before expansion). According to the modeling method of the grid map described in step 1, the size of the task allocation matrix should be n×n, where n is the number of rows and columns after the workspace is discretized. The elements in the matrix A represent the robot serial number selected for the cell (excluding cells containing obstacles). At the beginning of the algorithm, since all cells in the area to be manufactured have not yet been assigned a robot, all elements of the task allocation matrix A are initialized to 0 (excluding cells containing obstacles);

[0105] (2) Through the evaluation matrix E r , iteratively optimize the task allocation matrix A; in each iteration, a suitable robot will be reselected for each task cell in the map, and the selection rule is the evaluation matrix E of all robots r The robot with the smallest element value at the corresponding position in the matrix is ​​finally assigned the robot number r after multiple iterative calculations. Each element in the matrix A (excluding cells containing obstacles) is finally assigned to the cell.

[0106] 3.2 Evaluation Matrix E r Initialization and iterative optimization;

[0107] There are several key factors involved in the evaluation matrix update process, including the weight matrix λ r , attenuation function h and weighted connectivity matrix C r,xy , where the design of the weight matrix fully considers the relative relationship between the robot's current task volume and its target task volume. In the actual system, when the actual task volume exceeds or falls below the target task volume, the k r Different adjustment requirements lead to different λ settings r ,λ r1 k r <n r The weight matrix when r1 k r >n r The weight matrix, evaluation matrix E r The iterative form is expressed as;

[0108]

[0109] Where, is the evaluation matrix before updating, k r is the current task volume of the rth robot, n r represents the ideal amount of tasks assigned to the rth robot, C r,xy Weighted connectivity matrix, h is the decay function, where The symbols represent the multiplication of corresponding elements in two matrices;

[0110] (1) Initialize the evaluation matrix E r ;

[0111] The evaluation matrix E corresponding to each robot r They are all n×n matrices. The value of each element in the matrix represents the weight of the task cell in the corresponding grid map to the robot. The larger the cell weight, the smaller the value, which means that the cell has a higher priority assigned to the robot.

[0112] The original evaluation matrix E r Determined by the Euclidean distance between the robot and the cell to be assigned, the Euclidean distance dis between the cell to be assigned and the robot's initial position r,xy The calculation formula is;

[0113]

[0114] Where x is the horizontal row index of the cell to be allocated in the grid map, y is the horizontal column index of the cell to be allocated in the grid map, and x r is the horizontal row index of the robot r’s initial position in the grid map, y r is the horizontal index of the initial position of robot r in the grid map;

[0115] E(i,j) is standardized and the calculation formula is:

[0116]

[0117] Where E(i,j) is the evaluation matrix E r The element value in, where i is the row index in the evaluation matrix, j is the column index in the evaluation matrix, E normalized (i, j) is the evaluation matrix E after standardization r The element value in is between 0 and 1, E min is the evaluation matrix E r The minimum value of the elements in E max is the evaluation matrix E r The maximum value of the elements in .

[0118] (2) Weight matrix λ r set up;

[0119] The present invention improves the basic DARP algorithm and proposes an innovative weight matrix λ r Replace the fixed adjustment coefficient m in the existing technology rUsed to update the evaluation matrix; in order to meet the requirement of a long and straight additive path, the area finally allocated by DARP should be as rectangular as possible rather than circular. Therefore, in the calculation of the weight matrix, Manhattan distance compensation is used to initialize the evaluation matrix, considering only the singleness of the Euclidean distance;

[0120] Then the weight matrix λ r1 The calculation formula is;

[0121]

[0122] Where x max 、y max They represent the maximum difference between the robot's current position and the horizontal row index and horizontal column index of the grid map boundary, respectively. Δx and Δy represent the row index difference and column index difference between the cell to be assigned and the robot's initial position, respectively.

[0123] From the above formula (1-9), λ r1 Between [0,1], the evaluation matrix E r The corresponding value decreases, the cell has a stronger attraction to the robot, and the task amount increases; take the most extreme case of formula (1-9) into consideration, when the cell is farthest from the robot, λ r1 Take the maximum 1, the evaluation matrix E r If the corresponding value does not decrease, the robot has no attraction to the cell, so it will not be assigned to the farthest cell when the task amount increases;

[0124] Weight matrix λ r2 The calculation formula is;

[0125]

[0126] According to the above formula (1-10), λ should be r2 Greater than 1, evaluation matrix E r The corresponding value increases, so that when the task allocation matrix A is calculated next time, the attraction of the cell to the robot decreases, and the task amount decreases; in the extreme case, when the cell is closest to the robot, λ r1 The minimum value is 1, so the probability of being discarded from the allocation matrix is ​​the lowest;

[0127] (3) Connectivity matrix C r,xy set up;

[0128] In the process of allocating cells of the area to be manufactured to each robot, the present invention designs a weighted connectivity matrix C r,xy ,Ensure that the division of the task area enables the robot to access its own area and that the assigned area is connected, thus ensuring the continuity of the subsequent deposition path;

[0129] The constraints of the connected regions are expressed as;

[0130] C={(x,y)∈U∣(x,y)is connected to(x r ,y r )};(1-13)

[0131] Where C represents a connected region, and the above constraints indicate that the robot can search from the initial position (x r ,y r ) All cells in the allocated area are accessed in the up, down, left, and right (4-connected) directions and form a connected area C.

[0132] To satisfy the above constraints, a weighted connectivity matrix C is constructed r,xy , and its calculation formula is;

[0133]

[0134] Where C r,xy Represents the overall unit set from the rth robot to the area to be manufactured The connectivity of cells at any point (x, y) in R (excluding cells containing obstacles). r represents the set of cell locations in the region assigned to robot r and connected to the initial position, is any point in the area; Q r represents the set of cell locations in the region assigned to robot r but not connected to the initial location, is any point in the area. The entire set of cells representing the area to be manufactured The position of any point (x, y) in the region R assigned to the robot and connected to the robot's initial position r The minimum Euclidean distance between any cells in the The entire set of cells representing the area to be manufactured The position of any point (x, y) in the robot is connected to the region Q assigned to the robot but not connected to the robot's initial position r The minimum Euclidean distance between any cells in the cell. Therefore, the cell C close to the initial position of the robot r,xy The smaller the E r The smaller the value, the greater the possibility that the robot will obtain the cell in the next iteration calculation; the cell C far away from the initial position of the robot r,xy The larger the E r The larger it is, the more likely the robot will abandon the cell in the next iterative calculation; thus, the robot's final assigned task area is a connected area;

[0135] (4) Setting of decay function h;

[0136] At the same time, the present invention uses the exponential decay function h to control the evaluation matrix E r The adjustment range of each cell value in is such that the adjustment speed gradually decreases when approaching the target task amount. The evaluation matrix E of each robot is r The amplitude of change is reduced to prevent over-adjustment and ensure the smooth convergence of the task volume; the calculation formula of the attenuation function h is:

[0137]

[0138] Among them, a is the attenuation speed coefficient, which controls the speed of change of the attenuation function h. In the extreme case, when the ideal task volume is equal to the current task volume, the attenuation function h is 1, the evaluation matrix no longer changes, and e is a constant;

[0139] 3.3 Gradient descent solution;

[0140] The optimization goal of multi-robot task allocation is: the current task amount k of each robot in the system r Infinitely close to the target value n r (ideal task volume), and finally the objective function value J converges to the minimum;

[0141]

[0142] In each iterative calculation, each task of the multi-robot system is adjusted in turn. Generally, the gradient descent method is used to calculate the derivative of the objective function and gradually adjust the variable k. r , so that the objective function is minimized, where η is the step size;

[0143]

[0144] Since the task volume k r The increase or decrease is affected only by the evaluation matrix E r The influence of r The iterative formula can update the task allocation matrix to determine the current task amount. Through continuous iteration, the current task amount is updated in the direction of gradient descent until the objective function value is minimized.

[0145] Therefore, the complete process of the DARP algorithm of the present invention can be described as follows: first, the task allocation matrix and the evaluation matrix are initialized, then the evaluation matrix is ​​iterated and optimized, and the task allocation matrix is ​​gradually updated. The task allocation matrix can be used to calculate the current task amount of each robot, and the objective function value J of each robot can be calculated accordingly. r,When the total objective function value J converges to 0 and the task areas of all robots meet the connectivity conditions, the algorithm terminates and exits the DARP algorithm process.

[0146] Step 4: Generate the robot's two-dimensional optimal task path based on the segmented area

[0147] 4.1 Construction of spanning trees under different weight strategies

[0148] (1) After the region is segmented, the minimum spanning tree algorithm Kruskal is used to construct a minimum spanning tree within the region. The Kruskal algorithm generates a minimum spanning tree (MST). The spanning tree uses the center point of the large cell as the node of the spanning tree. The minimum spanning tree (MST) covering each task node (center point of the large cell) is obtained, and the weighted graph G is defined as;

[0149] G=(V,E);(1-18)

[0150] Where V represents the location set of each robot task node in DARP region segmentation, and E is the set of edges between task nodes;

[0151] Among them, the set E of edges between task nodes is defined as:

[0152]

[0153] Where p is the total number of edges in the weighted graph selected by G = (V, E) in the figure, and each edge There is a corresponding weight Represents the connection cost between task nodes, and the edges are sorted in order of weight from smallest to largest;

[0154] (2) Corresponding weight Four methods are used to assign values, allowing the robot to choose different movement methods within the area, where rows and cols are the number of rows and columns after the workspace is discretized. x corresponds to the horizontal row index of the cell in the grid map, and y corresponds to the horizontal column index of the cell in the grid map:

[0155]

[0156] (3) The Kruskal algorithm uses the Union-Find structure to manage the connectivity between nodes. Initially, each node is an independent set. Then, the algorithm traverses the sorted edge set E in sequence, starting from the edge with the smallest weight, and determines whether the nodes at both ends belong to different sets. If they belong to different sets, it means that the edge will not form a loop, and it can be added to the minimum spanning tree and the corresponding node sets can be merged; if the two ends are connected, the edge is skipped. This process continues, and finally a set of edges that connect all nodes and have the smallest total weight is selected. Construct a spanning tree that connects all nodes and has the smallest total weight.

[0157] 4.2 Generation of optimal paths for different robots;

[0158] (1) Minimum spanning tree is converted into actual path sequence

[0159] The minimum spanning tree (MST) is converted into a sequence of actual paths. The tree itself lacks a path, but a circular search along one side of the tree can form a feasible path. The expanded grid map ensures the effective loop space formed by the actual path, thereby obtaining a path that can cover the entire area starting from the initial position. Furthermore, this path is continuous and non-repeated, avoiding unnecessary time waste caused by frequent starting and stopping of the welding gun. For the same area, different spanning trees with different structures are formed under different weighting strategies, and the loop closure is also different. Therefore, four corresponding actual paths are generated for each robot under the four weighting strategies of the Kruskal algorithm.

[0160] (2) Selection of the optimal path

[0161] For different actual paths under different weight strategies, the number of turns in different paths is different. Therefore, for each robot, the total number of turns num_turns should be selected from the four weight strategies of the Kruskal algorithm. r Minimum path sequence to reduce turning costs and reduce the risk of additive defects.

[0162] Defining paths r ={(x1',y1'),(x'2,y'2)...,(x' k ,y' k ),...,(x' s ,y' s )} represents the actual path sequence of robot r, s represents the total number of nodes in the actual path, k represents the sequence number of any node in the path, (x' k ,y' k ) represents the cell position after the grid map is expanded, then the motion direction formula of the robot's corresponding path at the kth node is;

[0163]

[0164] Where f(k) represents the motion direction of the robot at the kth node in the actual path, x′ k is the path index of the kth node in the actual path, x′ k-1 is the row index of the k-1th node in the actual path, y′ k is the column index of the kth node in the actual path, y′ k-1 is the column index of the k-1th node in the actual path.

[0165] When f(k) is horizontal, it means that the robot moves in the horizontal direction at the kth position in the path; when f(k) is vertical, it means that the robot moves in the vertical direction at the kth position in the path;

[0166] The total number of turns in the actual path is num_turns r Expressed as;

[0167]

[0168] Where t is a Boolean variable, f(k-1) represents the movement direction of the robot at the k-1th node in the actual path, and the total number of turns is num_turns. r The initial value is 0. Starting from the starting point itself is not considered a turn, so the accumulation starts from the third node. When the condition in the brackets is met (the robot's moving direction at the current node is inconsistent with that at the previous node), t is 1, otherwise t is 0.

[0169] Step 5: 3D transformation is performed asynchronously;

[0170] Through the above steps, an independent 2D path planning thread can be built for each robot. Further expansion to 3D path planning requires determining the endpoint of the robot's path in the current layer and adding cross-layer connecting paths based on task requirements. The starting and ending points of this path correspond to the endpoint of the path in the previous layer and the starting point of the path in the next layer, respectively. The starting point of the next layer will serve as an important basis for the robot to perform region segmentation and path planning in subsequent layers.

[0171] In traditional offline path planning systems, all robots must wait for the completion of the tasks in the current layer and the completion of the inter-layer coordinate transformation before they can determine their starting position in the next layer and start the area segmentation of the next layer.

[0172] However, the area coverage path planning based on the spanning tree method designs deposition paths for each robot, which have the advantages of closure and no repeated paths. Therefore, for the additive manufacturing robot, its initial position is no longer a restriction, and the length of the path is only related to the number of nodes in the spanning tree. Therefore, in this method, the starting position of each layer is fixed by adding vertical lines between the layers, ensuring that the robot can enter the area segmentation stage of the next layer in advance after completing the area segmentation and path generation tasks of the current layer, thereby avoiding waiting time due to uneven workload and ensuring asynchronous execution and path parallelism of multiple robots in three-dimensional space. At the same time, this operation provides each additive robot with a standard position after the task is completed, effectively reducing unnecessary idle motion and avoiding interference and conflict between the additive robot and other equipment.

[0173] During the asynchronous execution phase, each robot can independently adjust its actions based on its task progress, avoiding waiting time and improving overall efficiency. When performing inter-layer coordinate conversions, all layers are processed uniformly, involving only the conversion of the z coordinate. Specifically, z = l × h, where l is the current layer number, which is continuously updated, and h is the layer height (the height of each layer can be adjusted based on actual conditions. In most cases, for higher additive accuracy, the layer height needs to be reduced).

[0174] In each layer l, for each robot r, the progress tracking formula of the execution path is;

[0175]

[0176] in, Indicates the path planning progress of the current layer, I r,l is the indicator function, l is the layer number, ρ is the path segment number, if the path segment ρ has been executed, the function value is 1, otherwise it is 0, s represents the total number of nodes in the actual path, and the total number of segments in the actual closed path is s-1;

[0177] when hour, represents the path planning progress of the current layer, and θ is the preset progress threshold (set to 75% in the example). When the robot's execution progress exceeds this threshold, the planning of the next layer is started to avoid idle waiting. This ensures that each robot can independently adjust its actions according to the set workload, thereby improving overall work efficiency.

[0178] Examples:

[0179] In this embodiment, the model selected is relatively special. The three-dimensional figure is a hollow irregular cylinder. Each layer of the model after slicing has the same shape. Therefore, only the deposition layer after any slice needs to be displayed. The parameter settings are shown in the table:

[0180] Table 1 Parameter Description

[0181]

[0182]

[0183] Through the multi-robot path planning method for arc additive manufacturing system in the present invention, it is obtained Figure 3 The two-dimensional plane path display diagram (expanded grid map) in the figure shows the two-dimensional plane path of robot 1, the green path is the two-dimensional plane path of robot 2, and the blue path is the two-dimensional plane path of robot 3. The result meets the regional allocation ratio requirement and the overall coverage rate is 100%; Figure 4 It demonstrates the three-dimensional path planning effect generated based on the two-dimensional path in this example, which intuitively reflects the robot's motion trajectory in three-dimensional space.

[0184] Although the embodiments of the present invention have been shown and described above, it will be understood that the above embodiments are illustrative and are not to be construed as limitations on the present invention. A person skilled in the art may change, modify, replace and modify the above embodiments within the scope of the present invention without departing from the principles and purpose of the present invention.

Claims

1. A multi-robot path planning method for an arc additive manufacturing system, characterized in that: The steps include: Step 1, environmental modeling: obtain the computer-aided design model data of the component to be formed, build a three-dimensional model, slice and layer it, discretize the environment into grids using the grid method, and assign different information to each cell to represent the current cell occupancy status. All cells construct the entire environmental information; then proceed to step 2, Step 2: Determine the ideal task volume based on the allocation weight: Introduce environmental factors, welding robot movement speed and load capacity parameters in the task allocation process, and set different area allocation ratios based on the comprehensive performance scoring indicators to obtain the ideal task volume assigned to each robot; proceed to step 3, Step 3: Use matrix iteration to optimize the current task volume: Initialize the task assignment matrix and the evaluation matrix, use the weight matrix and the connectivity matrix to modify the evaluation matrix, and update the task assignment matrix to determine the current task volume. Through continuous iterative optimization, the current task volume is updated in the direction of gradient descent until the objective function value is minimized. Go to step 4 Step 4: Generate the robot's two-dimensional optimal task path based on the segmented areas: Construct a minimum spanning tree in each segmented area according to different weight strategies, convert the spanning tree into an actual path sequence, and select the optimal path; then proceed to step 5; Step 5: Asynchronous execution of three-dimensional conversion: perform inter-layer coordinate conversion, add inter-layer vertical paths, track the progress of the plane execution path status, and each robot completes the asynchronous execution of the additive path in three-dimensional space.

2. The multi-robot path planning method for arc additive manufacturing system according to claim 1, characterized in that: In step 2, the ideal amount of tasks assigned to each robot is expressed as: Where r is the robot serial number r={1,2,...q}, q is the number of additive robots, n r represents the ideal amount of tasks assigned to the rth robot, π r is the comprehensive performance score index of the rth robot, and N represents the area to be manufactured The number of cells; Among them, the comprehensive performance scoring index π r The robot's moving speed ν r , load capacity L r and environmental factors∈ r The weighted scoring model of , and the final ideal task volume of each robot should satisfy the following relationship; n1∪n2∪...∪n q =N。 3. The multi-robot path planning method for an arc additive manufacturing system according to claim 1, characterized in that: The specific steps in step 3 include: Step 3.1: Initialization and iterative optimization of the task allocation matrix A: At the beginning of the algorithm, since all cells in the area to be manufactured have not yet been assigned robots, all elements of the task allocation matrix A are initialized to 0; through the evaluation matrix E r , iteratively optimize the task allocation matrix A; in each iteration, a suitable robot will be reselected for each task cell in the map, and the selection rule is the evaluation matrix E of all robots r The robot with the smallest element value at the corresponding position in ; Step 3.2: Evaluation Matrix E r Initialization and iterative optimization of the evaluation matrix E r The iterative optimization form is as follows: Where, is the evaluation matrix before updating, k r is the current task volume of the rth robot, n r represents the ideal amount of tasks assigned to the rth robot, C r,xy Weighted connectivity matrix, h is the decay function, where The symbol represents the multiplication of corresponding elements in two matrices; r1 k r <n r The weight matrix when r2 k r >n r The weight matrix when ; Step 3.3: Gradient descent solution; the optimization goal of multi-robot task allocation is: the current task amount k of each robot in the system r Infinitely close to the target value n r , and finally minimize the objective function value J; Use the weight matrix and connectivity matrix to modify the evaluation matrix and update the task allocation matrix to adjust the current task quantity k r , continuously iteratively optimizes and updates the current task amount in the direction of gradient descent until the objective function value is minimized.

4. The multi-robot path planning method for an arc additive manufacturing system according to claim 3, characterized in that: In step 3.2, in the calculation of the weight matrix, Manhattan distance compensation is used to initialize the evaluation matrix to consider only the singleness of the Euclidean distance; Then the weight matrix λ r1 The calculation formula is: Where x max 、y max They represent the maximum difference between the horizontal row index and vertical column index of the grid map boundary of the robot's current position and the area to be manufactured, respectively. Δx and Δy are the differences between the row index and column index of the cell to be allocated in the area to be manufactured and the robot's initial position. From the above formula, λ r1 Between [0,1], the evaluation matrix E r The corresponding value decreases, the cell has a stronger attraction to the robot, and the task amount increases; take the most extreme case into consideration, when the cell is farthest from the robot, λ r1 Take the maximum 1, the evaluation matrix E r If the corresponding value does not decrease, the robot has no attraction to the cell, so it will not be assigned to the farthest cell when the task amount increases; Weight matrix λ r2 The calculation formula is; According to the formula, we should make λ r2 Greater than 1, evaluation matrix E r The corresponding value increases, so that when the task allocation matrix A is calculated next time, the attraction of the cell to the robot decreases, and the task amount decreases; in the extreme case, when the cell is closest to the robot, λ r1 The minimum value is 1, so the probability of being discarded from the allocation matrix is ​​the lowest.

5. The multi-robot path planning method for arc additive manufacturing system according to claim 3, characterized in that: In step 3.2, the weighted connectivity matrix C r,xy The formula is; Where C r,xy Represents the overall unit set from the rth robot to the area to be manufactured The connectivity of cells at any point in the r represents the set of cell locations in the region assigned to robot r and connected to the initial position, Then it is region R r Any point within; Q r represents the set of cell locations in the region assigned to robot r but not connected to the initial location, Then it is region Q r Any point within The entire set of cells representing the area to be manufactured The position of any point in the region R is connected to the robot's initial position and is assigned to the robot. r The minimum Euclidean distance between any cells in the The entire set of cells representing the area to be manufactured The position of any point in the robot is connected to the area Q assigned to the robot but not connected to the robot's initial position r The minimum Euclidean distance between any cells in the .

6. The multi-robot path planning method for an arc additive manufacturing system according to claim 3, characterized in that: In step 3.2, the calculation formula of the attenuation function h is: Where a is the attenuation speed coefficient, which controls the speed of change of the attenuation function h, and e is the natural exponent. The attenuation function h controls the evaluation matrix E of each robot. r The amplitude of change, taking the extreme value case, when the ideal task volume is equal to the current task volume, the attenuation function h is 1, and the evaluation matrix no longer changes.

7. The multi-robot path planning method for an arc additive manufacturing system according to claim 1, characterized in that: In step 4, the steps for constructing the spanning tree under different weight strategies are: (1) After the region is segmented, the minimum spanning tree algorithm Kruskal algorithm is used to construct the minimum spanning tree in the region, and the weighted graph G is defined as; G=(V,E) Where V represents the location set of each robot task node in DARP region segmentation, and E is the set of edges between task nodes; Among them, the set E of edges between task nodes is defined as: In the formula, each side There is a corresponding weight Represents the connection cost between task nodes, and edges are sorted by weight in order from smallest to largest; where p is the total number of edges contained in the weighted graph selected by G = (V, E) in the figure; (2) Corresponding weight Four methods are used to assign values ​​so that the robot can choose different movement methods within the area, where rows and cols are the number of rows and columns after the discretization of the workspace; x corresponds to the horizontal row index in the grid map before expansion, and y corresponds to the horizontal column index in the grid map before expansion: (3) After completing the weight assignment of the edges, the Kruskal algorithm uses the Union-Find structure to manage the connectivity between nodes. Initially, each node is an independent set. Then, the algorithm traverses the sorted edge set E in turn and selects a set of edges connecting all nodes and with the smallest total weight from the set E of edges between task nodes. This is the minimum spanning tree.

8. The multi-robot path planning method for an arc additive manufacturing system according to claim 4, characterized in that: In step 4, the actual path generation steps for different robots are as follows: (1) Converting the minimum spanning tree into an actual path sequence: The minimum spanning tree (MST) is converted into an actual path. The expanded grid map ensures the effective loop space formed by the actual path, thereby obtaining a path that can cover the entire area starting from the initial position. For the same area, different spanning trees with different structures will be formed under different weight strategies, and the loop closure will also be different. Therefore, for each robot, four actual paths should correspond to the four weight strategies of the Kruskal algorithm. (2) Selection of the optimal path: For each robot, select the total number of turns num_turns in the actual path among the four weighted strategies of the Kruskal algorithm. r Minimal path sequence; k represents the sequence number of any node in the path, and the calculation formula for the movement direction of the robot at the kth node in the corresponding path is: Where f(k) represents the motion direction of the robot at the kth node in the actual path, x′ k is the path index of the kth node in the actual path, x′ k-1 is the row index of the k-1th node in the actual path, y′ k is the column index of the kth node in the actual path, y′ k-1 is the column index of the k-1th node in the actual path; When f(k) is horizontal, it means that the robot moves in the horizontal direction at the kth position in the path; when f(k) is vertical, it means that the robot moves in the vertical direction at the kth position in the path.

9. The multi-robot path planning method for an arc additive manufacturing system according to claim 5, characterized in that: In step 4, the total number of turns in the actual path is num_turns r Expressed as: Where t is a Boolean variable, f(k-1) represents the movement direction of the robot at the k-1th node in the actual path, Total number of turns num_turns r The initial value is 0. Starting from the starting point itself is not considered a turn, so the accumulation starts from the third node. When the condition in the brackets is met and the robot's moving direction at the current node is inconsistent with that at the previous node, t is 1, otherwise t is 0.

10. The multi-robot path planning method for an arc additive manufacturing system according to claim 1, characterized in that: In step 5, in each layer of two-dimensional path planning, for each robot r, the progress tracking formula of the execution path is, Where, The path planning progress of the current layer, I r,l is the indicator function, l is the layer number, ρ is the path segment number, s represents the total number of nodes in the actual path, then the total number of segments in the actual closed path is s-1; when θ is the preset progress threshold. When the robot's execution progress exceeds this threshold, the planning of the next layer is started.

Citation Information

Cited By

  • Task allocation and track cooperative control method and system for double-component glue spraying

    CN121290451A

  • Robot additive and subtractive material operation implementation method based on digital twinning

    CN121859512A