Wall-climbing robot cylindrical tank space surface weld path planning method
By converting the 2D map of the cylindrical tank into an undirected connection map and using the virtual edge method and Fluery algorithm, the problem of complex path planning of the cylindrical tank welds is solved, efficient and accurate weld detection and maintenance is achieved, and robot detection is improved Efficiency and equipment safety.
Patent Information
- Application Number
- CN202411380122.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-30
- Publication Date
- 2024-12-31
- Estimated Expiration
- 2044-09-30
AI Technical Summary
The prior art is difficult to effectively deal with the complex paths of cylindrical tank welds, especially weld crossings, which leads to low path planning efficiency and accuracy, making it difficult to achieve comprehensive weld inspection and maintenance.
By converting the 2D map of the cylindrical tank into an undirected connectivity map and using the virtual edge method to convert it into an Euler loop, combined with the improved Fluery algorithm, the shortest traversal path is obtained.
It significantly improves the efficiency and accuracy of weld detection, optimizes the robot workflow, reduces repeated paths and energy consumption, and ensures the safe operation of special equipment such as cylindrical tanks.
Smart Images

Figure CN119217363A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the field of weld detection of high-risk chemical storage tanks, and in particular to a weld path planning method for a cylindrical tank space surface of a wall-climbing robot. Background Art
[0002] In the petrochemical, natural gas, and electric power industries, cylindrical tanks and vertical tanks are key storage equipment and are widely used to store high-risk chemicals such as liquefied natural gas, liquid hydrocarbons, and liquid ammonia. The safety of these special equipment is directly related to the stability of production and the safety of personnel. Therefore, regular weld inspection and maintenance are particularly important. However, the internal structure of these equipment is complex and the distribution of welds is complicated, which makes the traversal and inspection of welds face great challenges.
[0003] Traditional manual inspection methods are often unsatisfactory due to their low efficiency and poor accuracy. In cylindrical tanks, due to the small space and complex welds, manual operation not only requires a lot of time and energy, but is also prone to missed or misdetected due to human factors. In addition, manual operation also faces the problem of harsh working environment, such as high temperature, corrosive gas, etc., which makes manual operation more difficult and dangerous.
[0004] With the rapid development of robotics, automated inspection has gradually become a mainstream solution. Robots can not only operate stably in complex environments, but also perform efficient and accurate inspections. However, even so, path planning for robots inside cylindrical tanks remains a very challenging problem. The complex structure of the welds inside cylindrical tanks, such as the existence of weld intersections, makes path planning even more complicated. How to find the shortest path in these complex weld structures to achieve comprehensive traversal has become the key to improving the efficiency and accuracy of robot inspection.
[0005] At present, although some path planning algorithms have been proposed, these algorithms often do not work well when dealing with complex paths of cylindrical tank welds. Existing methods cannot effectively handle the traversal problem of weld intersections, which increases the complexity and difficulty of path planning. Therefore, a new path planning method is urgently needed that can handle complex weld intersections and provide the shortest traversal path. Summary of the invention
[0006] The technical problem to be solved by the present invention is to provide a wall-climbing robot cylindrical tank space surface weld path planning method in view of the deficiencies of the above-mentioned prior art. The wall-climbing robot cylindrical tank space surface weld path planning method converts the 2D map of the cylindrical tank into an undirected connected graph, and converts the undirected connected graph into an Euler circuit by adding a virtual edge method, and finally obtains the shortest path that can traverse all paths of the Euler circuit through an improved Fluery algorithm. This method can not only significantly improve the efficiency of weld detection, but also provide a basic basis for line patrol control and weld quality assessment of automated equipment, which is of great significance to ensuring the safe operation of special equipment such as cylindrical tanks.
[0007] In order to solve the above technical problems, the technical solution adopted by the present invention is:
[0008] A method for planning a weld path on a cylindrical tank space surface of a wall-climbing robot comprises the following steps.
[0009] Step 1: Construct a 2D map: Map all welds and all weld intersections in the three-dimensional cylindrical tank to a 2D plane to form a 2D map.
[0010] Step 2: Construct an undirected connected weld graph: First, all weld intersections contained in the 2D map are grouped into a weld intersection set V, and then all welds contained in the 2D map are grouped into a weld edge set E, and an undirected connected weld graph G = [V, E, W t ()]; where W t () is the weld edge weight set, which is set according to the path length of the corresponding weld, and the weight of each weld edge is not less than 0.
[0011] Step 3, find the Euler circuit: determine the parity of the number of connecting edges connecting each weld intersection in the weld undirected connected graph G; when the number of connecting edges of each weld intersection is even, it is considered that the Euler circuit is satisfied and jump directly to step 6; otherwise, go to step 4.
[0012] Step 4, add virtual edges: set an empty set E', and use the method of adding virtual edges to make the number of connecting edges of each weld intersection an even number; then, place all the added virtual edges in the empty set E' to form a virtual edge set E'.
[0013] Step 5: Obtain the weld undirected connected graph update: Add the virtual edge set E' to the weld undirected connected graph G and t In (), a virtual edge set E' is added corresponding to the weld edge weight to form an undirected connected update graph G' of the weld.
[0014] Step 6, welding path planning: Solve to obtain the Euler circuit in the undirected connected update graph G' of the weld, which is the planned weld path of the cylindrical tank space surface of the wall-climbing robot.
[0015] In step 1, the method for constructing a 2D map includes the following steps.
[0016] Step 1-1, unfolding the side of the three-dimensional cylindrical tank: remove the upper and lower surfaces of the three-dimensional cylindrical tank, and unfold the remaining three-dimensional cylindrical tank side along the circumferential direction to form a 2D cylindrical tank side.
[0017] Step 1-2, weld parameter measurement: measure the weld parameters on the side of the 2D cylindrical tank; the weld parameters include the position coordinates of each weld intersection and the length value of each weld.
[0018] Step 1-3, weld parameter scaling: Set the scaling factor k, and scale each weld parameter obtained in step 1-2 proportionally.
[0019] Step 1-4, draw a 2D map: Draw a 2D map of the cylindrical tank weld in the 2D plane according to the scaled weld intersection position coordinates and weld length.
[0020] In step 4, the method for adding a virtual edge includes the following steps.
[0021] Step 4-1, find the weld intersections with odd number of connecting edges: find the weld intersections with only odd number of connecting edges from the weld undirected connected graph G, and save them in the point set V'.
[0022] Step 4-2, weld intersection pairing: for any welding point v" in the point set V" m , from the remaining welding points of point set V”, find the welding point v” m Straight line distance to the nearest welding point v' n ', then the welding point v" m and v' n ' is a set of weld pairing points.
[0023] Step 4-3, add virtual edge: at welding point v" m and v' n ', and add the virtual edge mn to the set E'; at the same time, delete the weld pairing point v" in the point set V". m and v' n '.
[0024] Step 4-4: Repeat steps 4-2 to 4-3 until the point set V" is an empty set.
[0025] In step 6, the improved Fluery algorithm is used to solve the Euler circuit in the undirected connected update graph G' of the weld.
[0026] In step 6, the method of improving the Fluery algorithm to solve the Euler circuit in the weld undirected connected update graph G' includes the following steps:
[0027] Step 6-1, define the adjacency matrix: define an adjacency matrix E with n rows and n columns v [n][n]; where n is the number of weld intersections in the weld undirected connected update graph G'; let E v Any element in [n][n] is E v [i][j] represents the weld intersection point v i and weld intersection v j The number of connecting edges between them; where 1≤i≤n; 1≤j≤n.
[0028] Step 6-2, define stack S: define an empty stack S to store the nodes of the path, and take k to point to the top of the current stack S. In the initial state, k = 0.
[0029] Step 6-3, select the starting point of the path: select any weld intersection point v0 from the weld intersection point set V as the starting point of the path ε; let v i represents the current node, then v i =v0; i Push into the stack, then S[k]=v i , at this time, k=0.
[0030] Step 6-4: Determine the intersection of connected welds: By determining E v [i][j] or E v Whether [j][i] is 0, so as to determine whether there are other weld intersections v j With v i If so, go to step 6-5; otherwise, jump directly to step 6-6.
[0031] Step 6-5, stacking, specifically includes the following steps.
[0032] Step 6-5A, v j Push: Add 1 to k and add it to the current node v i One of the adjacent weld intersections v j Push into the stack, S[k] = v j .
[0033] Step 6-5B, adjacency matrix update: add node v in the stack i and v j The number of connecting edges between v [i][j] and E v [j][i] are both decremented by 1 and updated to the adjacency matrix of step 6-1; that is, E v[i][j]=E v [i][j]-1,
[0034] E v [j][i]=E v [j][i]-1.
[0035] Step 6-5C, current node update: Update the current node v i Update to v j , that is, v i =v j .
[0036] Step 6-5D: Repeat steps 6-4 to 6-5 to complete the process with the current node v i Adjacent weld intersections v j Push into the stack;
[0037] Step 6-6, output the end point of the path: the current node v at the end of step 6-5 i , output as the end point of path ε:
[0038] Step 6-7, popping the stack, specifically includes the following steps.
[0039] Step 6-7A, pop the top of the stack: pop the node at the top k of the stack.
[0040] Step 6-7B, current node update: update the current node v i Update to the node popped from step 6-7A, that is, v i =S[k].
[0041] Step 6-7C, intermediate path output: output the current node updated in step 6-7B as the intermediate path node of path ε.
[0042] Step 6-7D, stack top update: subtract 1 from k, that is, k=k-1, to implement stack top update.
[0043] Step 6-7E, stack element judgment: judge whether the stack S is empty. If not, repeat steps 6-7A to 6-7D; otherwise, jump to step 6-8.
[0044] Step 6-8, obtain the shortest traversal path ε: sort in the reverse order of the pop time to obtain the shortest traversal path ε.
[0045] In step 6-5A, the weld intersection v j The search method includes the following steps:
[0046] Step 6-5A1, find adjacent points: find the points that are adjacent to the current node v iAll weld intersections that are adjacent and have at least one welded edge.
[0047] Step 6-5A2, find the bridge point: When a weld intersection point A found in step 6-5A1 intersects with the current node v i When the weld edge formed is a bridge edge, the weld intersection point A is called the bridge point.
[0048] Step 6-5A3: Find the weld intersection point v j : Eliminate the bridge point found in step 6-5A2 from all weld intersections found in step 6-5A1, and then select one of the remaining weld intersections as the weld intersection v j .
[0049] The present invention has the following beneficial effects:
[0050] 1. The present invention maps the weld path and weld intersection of a three-dimensional cylindrical tank to a 2D plane, constructs a 2D map of the weld path, and combines an undirected connected graph and a virtual edge method to achieve the shortest path planning. Through geometric relationships, proportional relationships, and coordinate system conversion, the distribution characteristics of weld intersections and weld paths are accurately obtained to ensure that the robot can efficiently traverse the weld path. Combined with the improved Fluery algorithm, the shortest Euler circuit is planned, so that the cylindrical tank wall-climbing robot can efficiently and accurately traverse the weld, improving the accuracy and efficiency of path planning.
[0051] 2. The present invention improves the intelligence level of the cylindrical tank wall-climbing robot in a complex weld environment through an improved path planning method, ensuring that the robot can complete the weld traversal in one go, providing strong support for subsequent weld detection and maintenance. This method effectively optimizes the robot workflow, reduces repeated paths and energy consumption, and significantly improves the technical level and operating efficiency of robot weld detection.
[0052] 3. The present invention converts the weld concentrated surface of the cylindrical tank - the side surface into two dimensions, then constructs an Euler circuit, and performs path planning. Compared with directly performing path planning on a three-dimensional cylindrical tank, the amount of calculation is greatly reduced, the planning speed is faster, and it is simpler.
[0053] 4. Compared with 2D plane map path planning, traditional path planning methods may require a large number of path adjustments in multiple iterations. Adding virtual edges can transform the problem into a graph traversal problem in graph theory, directly connecting two points with odd edges (the shortest distance between the two points is a straight line) to construct an Euler circuit, which can ensure that the total path of the Euler circuit is the shortest.
[0054] 5. The present invention uses an improved Fluery algorithm, which gives priority to the edge with the largest edge value, so as to obtain a path that can completely traverse all welds. The calculation amount is relatively small and the planning speed is fast. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] Figure 1 The present invention is a flow chart of a method for planning a weld path on a cylindrical tank space surface by a wall-climbing robot.
[0056] Figure 2 Construct a flow chart for a 2D map of a cylindrical tank weld.
[0057] Figure 3 To construct an Euler circuit flow chart using the method of adding virtual edges.
[0058] Figure 4 To solve the shortest traversal path flowchart using the improved Fluery algorithm.
[0059] Figure 5 This is a three-dimensional model diagram of a cylindrical tank.
[0060] Figure 6 2D map of the weld seam for a cylindrical tank.
[0061] Figure 7 This is an Euler circuit graph constructed by adding virtual edges.
[0062] Figure 8 To plan the weld path diagram of cylindrical tank using the improved Fluery method. DETAILED DESCRIPTION
[0063] The present invention will be further described in detail below in conjunction with the accompanying drawings and specific preferred embodiments.
[0064] In the description of the present invention, it should be understood that the terms "left side", "right side", "upper part", "lower part" and the like indicate the orientation or positional relationship based on the orientation or positional relationship shown in the drawings, which is only for the convenience of describing the present invention and simplifying the description, and does not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation. "First", "second" and the like do not indicate the importance of the components, and therefore cannot be understood as limiting the present invention. The specific dimensions used in this embodiment are only for illustrating the technical solution, and do not limit the scope of protection of the present invention.
[0065] like Figure 1 As shown, a method for planning the weld path of a cylindrical tank space surface by a wall-climbing robot includes the following steps.
[0066] Step 1: Construct a 2D map: Map all welds and all weld intersections in the three-dimensional cylindrical tank to a 2D plane to form a 2D map.
[0067] The structure of the three-dimensional cylindrical tank in this embodiment is as follows: Figure 5 As shown, there are preferably 12 welding intersections, which vary from 1 to 12 respectively.
[0068] like Figure 2 As shown, the above-mentioned 2D map construction method includes the following steps.
[0069] Step 1-1, unfolding the side of the three-dimensional cylindrical tank: remove the upper and lower surfaces of the three-dimensional cylindrical tank, and unfold the remaining three-dimensional cylindrical tank side along the circumferential direction to form a 2D cylindrical tank side.
[0070] Step 1-2, weld parameter measurement: measure the weld parameters on the side of the 2D cylindrical tank; the weld parameters include the position coordinates of each weld intersection and the length value of each weld.
[0071] Step 1-3, weld parameter scaling: Set the scaling factor k, and scale each weld parameter obtained in step 1-2 proportionally.
[0072] Step 1-4, draw 2D map: Draw the 2D map of the cylindrical tank weld according to the scaled weld intersection position coordinates and weld length in the 2D plane, such as Figure 6 shown.
[0073] Step 2: Construct an undirected connected weld graph: First, all weld intersections contained in the 2D map are grouped into a weld intersection set V, and then all welds contained in the 2D map are grouped into a weld edge set E, and an undirected connected weld graph G = [V, E, W t ()]; where W t () is the weld edge weight set, which is set according to the path length of the corresponding weld, and each weld edge weight is not less than 0. The weld edge weight is set in direct proportion to the weld path length.
[0074] Step 3, find the Euler circuit: determine the parity of the number of connecting edges connecting each weld intersection in the weld undirected connected graph G; when the number of connecting edges of each weld intersection is even, it is considered that the Euler circuit is satisfied and jump directly to step 6; otherwise, go to step 4.
[0075] In this embodiment, since there are weld intersections with an odd number of connecting edges, the Euler circuit is not satisfied.
[0076] Step 4, add virtual edges: set an empty set E', and use the method of adding virtual edges to make the number of connecting edges of each weld intersection an even number; then, place all the added virtual edges in the empty set E' to form a virtual edge set E'.
[0077] like Figure 3 As shown, the method for adding a virtual edge includes the following steps.
[0078] Step 4-1, find the weld intersections with odd number of connecting edges: find the weld intersections with only odd number of connecting edges from the weld undirected connected graph G, and save them in the point set V'.
[0079] In this embodiment, the weld intersections 2, 3, 4, 5, 7, 8, 9, 10, 11, and 12 are all weld intersections with an odd number of connecting edges. Figure 7 Weld intersections are shown underlined.
[0080] Step 4-2, weld intersection pairing: for any welding point v" in the point set V" m , from the remaining welding points of point set V”, find the welding point v” m Straight line distance to the nearest welding point v' n ', then the welding point v" m and v' n ' is a set of weld pairing points.
[0081] In this embodiment, five groups of welding seam pairing points are formed, namely: 2 and 5, 3 and 4, 7 and 10, 8 and 9, 11 and 12.
[0082] Step 4-3, add virtual edge: at welding point v" m and v' n ', and add the virtual edge mn to the set E'; at the same time, delete the weld pairing point v" in the point set V". m and v' n '.
[0083] In this embodiment, five virtual edges mn are formed, respectively as follows: Figure 7 As shown by the dotted line in .
[0084] Step 4-4: Repeat steps 4-2 to 4-3 until the point set V" is an empty set.
[0085] Step 5: Obtain the weld undirected connected graph update: Add the virtual edge set E' to the weld undirected connected graph G and t In (), a virtual edge set E' is added corresponding to the weld edge weight to form an undirected connected update graph G' of the weld.
[0086] Step 6, welding path planning: preferably using the improved Fluery algorithm to solve the Euler circuit in the weld undirected connected update graph G', which is the planned weld path of the cylindrical tank space surface of the wall-climbing robot.
[0087] like Figure 4As shown, the method of solving the Euler circuit in the undirected connected update graph G' of the weld by improving the Fluery algorithm preferably includes the following steps.
[0088] Step 6-1, define the adjacency matrix: define an adjacency matrix E with n rows and n columns v [n][n]; where n is the number of weld intersections in the weld undirected connected update graph G'; let E v Any element in [n][n] is E v [i][j] represents the weld intersection point v i and weld intersection v j The number of connecting edges between them; where 1≤i≤n; 1≤j≤n.
[0089] If there is no connected weld edge, then E v [i][j]=0, if there is a connected weld edge, then E v [i][j]=1, if there are two connected weld edges, then E v [i][j]=2.
[0090] Step 6-2, define stack S: define an empty stack S for storing the nodes of the path, and take k to point to the top of the current stack S, with k=0 in the initial state. The present invention defines an empty stack and uses the stack to track the traversal path of the node, which allows easy backtracking during the traversal process.
[0091] Step 6-3, select the path starting point: arbitrarily select a weld intersection point v0 from the weld intersection point set V as the starting point of the path ε; in this embodiment, Figure 8 As shown, select the weld intersection numbered 0 as the path starting point.
[0092] Let v i represents the current node, then v i =v0=0; change node v i = 0 is pushed into the stack, then S[k] = v i =0, at this time, k=0.
[0093] Step 6-4: Determine the intersection of connected welds: By determining E v [i][j] or E v Whether [j][i] is 0, so as to determine whether there are other weld intersections v j With v i If so, go to step 6-5; otherwise, jump directly to step 6-6.
[0094] At this time, due to E v [0][1] = 1, E v [1][0] = 1 and E v[0]
[11] = 1, so it is judged that there are weld intersections 1 and 11 with v i =0, therefore, proceed to step 6-5.
[0095] Step 6-5, stacking, specifically includes the following steps.
[0096] Step 6-5A, v j Push: Add 1 to k and add it to the current node v i One of the adjacent weld intersections v j Push into the stack, S[k] = v j .
[0097] The above weld intersection point v j The search method includes the following steps:
[0098] Step 6-5A1, find adjacent points: find the points that are adjacent to the current node v i All weld intersections that are adjacent and have at least one weld edge. As described in step 6-4, in this embodiment, i All adjacent weld intersections having at least one weld edge are weld intersection 1 and weld intersection 11 .
[0099] Step 6-5A2, find the bridge point: When a weld intersection point A found in step 6-5A1 intersects with the current node v i When the weld edge formed is a bridge edge, the weld intersection point A is called the bridge point.
[0100] In this embodiment, since weld edge 0-1 and weld edge 0-11 are not bridge edges, weld intersection point 1 and weld intersection point 11 are not bridge points.
[0101] In the present invention, a bridge edge means that after the self-name is removed, the undirected connected graph of the weld will not be able to achieve connectivity. For example, after the weld edge 4-6 is removed, the undirected connected graph of the weld will be disconnected, so the weld edge 4-6 is a bridge edge.
[0102] In the present invention, when a bridge is visited, the edges of the undirected connected subgraph connected to the bridge are first output in sequence, and then other undirected connected subgraphs are searched and output.
[0103] Step 6-5A3: Find the weld intersection point v j : Eliminate the bridge point found in step 6-5A2 from all weld intersections found in step 6-5A1, and then select one of the remaining weld intersections as the weld intersection v j .
[0104] In this embodiment, the weld intersection point 1 or the weld intersection point 11 can be selected. Assuming that the weld intersection point 1 is selected, k=0+1=1, S[k]=v j =1.
[0105] Step 6-5B, adjacency matrix update: add node v in the stack i and v j The number of connecting edges between v [i][j] and E v [j][i] are both decremented by 1 and updated to the adjacency matrix of step 6-1; that is, E v [i][j]=E v [i][j]-1,
[0106] E v [j][i]=E v [j][i]-1.
[0107] In this embodiment, E v [0][1] and E v The updated values of [1][0] are:
[0108] E v [0][1]=1-1=0; E v [1][0]=1-1=0
[0109] Step 6-5C, current node update: Update the current node v i Update to v j In this embodiment, v i =v j =1.
[0110] Step 6-5D: Repeat steps 6-4 to 6-5 to complete the process with the current node v i Adjacent weld intersections v j Pushed onto the stack.
[0111] In this embodiment, point 1 (weld intersection point 1 for short, the same below) can be selected to point 2, 3, 4. Assuming point 2 is selected, k = 2, S[k] = 2, Ev[1][2] = 1-1 = 0, Ev[2][1] = 1-1 = 0, v i =2.
[0112] Continue the cycle;
[0113] Point 2 can be selected to point 5. Assuming point 5 is selected, k=3, S[k]=5, Ev[2][5]=1-1=0, Ev[5][2]=1-1=0, vi=5.
[0114] Continue the cycle;
[0115] Point 5 can be selected to point 4. Assume that point 4 is selected, k=4, S[k]=4, Ev[5][4]=1-1=0, Ev[4][5]=1-1=0, vi=4;
[0116] Continue the cycle;
[0117] Point 4 can choose to go to points 1, 3, and 6. At this time, the edge from 4 to 6 is a bridge. Assuming that point 1 or 3 is selected first, point 1 is selected, k=5, S[k]=1, Ev[4][1]=1-1=0, Ev[1][4]=1-1=0, vi=1;
[0118] Continue the cycle;
[0119] Point 1 can be selected to point 3. Assume that point 3 is selected, k=6, S[k]=3, Ev[1][3]=1-1=0, Ev[3][1]=1-1=0, vi=3;
[0120] Continue the cycle;
[0121] Point 3 can be selected to point 4. Assume that point 4 is selected, k=7, S[k]=4, Ev[3][4]=1-1=0, Ev[4][3]=1-1=0, vi=4;
[0122] Continue the cycle;
[0123] Point 4 can be selected to point 6. Assuming point 6 is selected, k=8, S[k]=6, Ev[4][6]=1-1=0, Ev[6][4]=1-1=0, vi=4.
[0124] And so on, S=0\1\2\5\4\1\3\4\6\7\10\9\6\8\9\11\12\11\0.
[0125] Note: The connection state between point 11 and point 12 is 2, that is, Ev
[11]
[12] =2, Ev
[12]
[11] =2.
[0126] Step 6-6, output the end point of the path: the current node v at the end of step 6-5 i =0, and is output as the end point of path ε.
[0127] Step 6-7, popping the stack, specifically includes the following steps.
[0128] Step 6-7A, pop the top of the stack: pop the node at the top k of the stack.
[0129] Step 6-7B, current node update: update the current node v i Update to the node popped from step 6-7A, that is, v i=S[k].
[0130] In this embodiment, the node 11 at the top of the stack is popped out of the stack, and the node 11 is deleted from the stack S, so that the node 12 forms a new top of the stack.
[0131] Step 6-7C, intermediate path output: output the current node updated in step 6-7B as the intermediate path node of path ε.
[0132] Step 6-7D, stack top update: subtract 1 from k, that is, k=k-1, to implement stack top update.
[0133] Step 6-7E, stack element judgment: judge whether the stack S is empty. If not, repeat steps 6-7A to 6-7D; otherwise, jump to step 6-8.
[0134] Step 6-8, obtain the shortest traversal path ε: sort in the reverse order of the stack pop time to obtain the shortest traversal path ε, such as Figure 8 As shown, ε=0\1\2\5\4\1\3\4\6\7\10\9\6\8\9\11\12\11\0.
[0135] In the present invention, since the welds of the cylindrical tank are mainly concentrated on the side wall of the cylindrical tank, the distance between the intersection points of the welds is large. If the even-odd construction method is used to construct the Euler circuit, it may be necessary to add two existing welds to make the points of the odd-numbered sides become even-numbered, but the Euler circuit path constructed in this way is longer. The method of adding virtual edges directly takes two points with odd-numbered sides and directly generates a virtual straight line to connect the two points. The straight line between the two points is the shortest, so compared with the even-odd construction method, the total side length of the Euler circuit finally constructed is shorter.
[0136] Compared with the welds of spherical tanks, the welds of cylindrical tanks are fewer and more sparse, and are not easy to fall into the local optimal solution. The depth-first search algorithm is used for path planning, which has a large amount of calculation; while the improved Fluery algorithm has a small amount of calculation and can also obtain the robot traversal path.
[0137] The preferred embodiments of the present invention are described in detail above; however, the present invention is not limited to the specific details in the above embodiments. Within the technical concept of the present invention, various equivalent transformations can be made to the technical solutions of the present invention, and these equivalent transformations all belong to the protection scope of the present invention.
Claims
1. A method for planning a weld path on a cylindrical tank surface of a wall-climbing robot, characterized in that: The steps include: Step 1, constructing a 2D map: mapping all welds and all weld intersections in the three-dimensional cylindrical tank to a 2D plane to form a 2D map; Step 2: Construct an undirected connected weld graph: First, all weld intersections contained in the 2D map are grouped into a weld intersection set V, and then all welds contained in the 2D map are grouped into a weld edge set E, and an undirected connected weld graph G = [V, E, W t ()]; where W t () is the weld edge weight set, which is set according to the path length of the corresponding weld, and the weight of each weld edge is not less than 0; Step 3, find the Euler circuit: determine the parity of the number of connecting edges connecting each weld intersection in the weld undirected connected graph G; when the number of connecting edges of each weld intersection is even, it is considered that the Euler circuit is satisfied, and jump directly to step 6; otherwise, go to step 4; Step 4, adding virtual edges: set an empty set E', and use the method of adding virtual edges to make the number of connecting edges of each weld intersection an even number; then, place all the added virtual edges in the empty set E' to form a virtual edge set E'; Step 5: Obtain the weld undirected connected graph update: Add the virtual edge set E' to the weld undirected connected graph G and t In (), a virtual edge set E' is added to correspond to the weld edge weight to form an undirected connected update graph G' of the weld; Step 6, welding path planning: Solve to obtain the Euler circuit in the undirected connected update graph G' of the weld, which is the planned weld path of the cylindrical tank space surface of the wall-climbing robot.
2. The wall-climbing robot cylindrical tank space surface weld path planning method according to claim 1 is characterized in that: In step 1, the method for constructing a 2D map includes the following steps: Step 1-1, unfolding the side of the three-dimensional cylindrical tank: removing the upper and lower surfaces of the three-dimensional cylindrical tank, and unfolding the remaining three-dimensional cylindrical tank side along the circumferential direction to form a 2D cylindrical tank side; Step 1-2, weld parameter measurement: measure the weld parameters on the side of the 2D cylindrical tank; the weld parameters include the position coordinates of each weld intersection and the length value of each weld; Step 1-3, weld parameter scaling: set the scaling factor k, and scale each weld parameter obtained in step 1-2 in equal proportion; Step 1-4, draw a 2D map: Draw a 2D map of the cylindrical tank weld in the 2D plane according to the scaled weld intersection position coordinates and weld length.
3. The wall-climbing robot cylindrical tank space surface weld path planning method according to claim 1, characterized in that: In step 4, the method for adding a virtual edge includes the following steps: Step 4-1, find the weld intersections with odd number of connecting edges: find the weld intersections with only odd number of connecting edges from the weld undirected connected graph G, and save them in the point set V'; Step 4-2, weld intersection pairing: for any welding point v" in the point set V" m , from the remaining welding points of point set V”, find the welding point v” m Straight line distance to the nearest welding point v' n ', then the welding point v" m and v' n ' is a set of weld pairing points; Step 4-3, add virtual edge: at welding point v" m and v' n ', and add the virtual edge mn to the set E'; at the same time, delete the weld pairing point v" in the point set V". m and v' n '; Step 4-4: Repeat steps 4-2 to 4-3 until the point set V" is an empty set.
4. The wall-climbing robot cylindrical tank space surface weld path planning method according to claim 1, characterized in that: In step 6, the improved Fluery algorithm is used to solve the Euler circuit in the undirected connected update graph G' of the weld.
5. The wall-climbing robot cylindrical tank space surface weld path planning method according to claim 4 is characterized in that: In step 6, the method of improving the Fluery algorithm to solve the Euler circuit in the weld undirected connected update graph G' includes the following steps: Step 6-1, define the adjacency matrix: define an adjacency matrix E with n rows and n columns v [n][n]; where n is the number of weld intersections in the weld undirected connected update graph G'; let E v Any element in [n][n] is E v [i][j] represents the weld intersection point v i and weld intersection v j The number of connecting edges between them; where 1≤i≤n; 1≤j≤n; Step 6-2, define stack S: define an empty stack S to store the nodes of the path, and take k to point to the top of the current stack S. In the initial state, k = 0; Step 6-3, select the path starting point: select any weld intersection point v0 from the weld intersection point set V as the starting point of the path ε; let v i represents the current node, then v i =v0; i Push into the stack, then S[k]=v i , at this time, k = 0; Step 6-4, determine the intersection of connected welds: by judging E v [i][j] or E v Whether [j][i] is 0, so as to determine whether there are other weld intersections v j With v i If so, go to step 6-5; otherwise, jump directly to step 6-6; Step 6-5, stacking, specifically includes the following steps: Step 6-5A, v j Push: Add 1 to k and add it to the current node v i One of the adjacent weld intersections v j Push into the stack, S[k] = v j ; Step 6-5B, adjacency matrix update: add node v in the stack i and v j The number of connecting edges between v [i][j] and E v [j][i] are both decremented by 1 and updated to the adjacency matrix of step 6-1; that is, E v [i][j]=E v [i][j]-1, E v [j][i]=E v [j][i]-1; Step 6-5C, current node update: update the current node v i Update to v j , that is, v i =v j ; Step 6-5D: Repeat steps 6-4 to 6-5 to complete the process with the current node v i Adjacent weld intersections v j Push into the stack; Step 6-6, output the end point of the path: the current node v at the end of step 6-5 i , output as the end point of path ε: Step 6-7, pop the stack, specifically including the following steps: Step 6-7A, pop the top of the stack: pop the node at the top k of the stack; Step 6-7B, current node update: update the current node v i Update to the node popped from step 6-7A, that is, v i =S[k]; Step 6-7C, intermediate path output: output the current node updated in step 6-7B as the intermediate path node of path ε; Step 6-7D, stack top update: subtract 1 from k, i.e. k=k-1, to update the stack top; Step 6-7E, stack element judgment: judge whether the stack S is empty. If not, repeat steps 6-7A to 6-7D; otherwise, jump to step 6-8; Step 6-8, obtain the shortest traversal path ε: sort in the reverse order of the pop time to obtain the shortest traversal path ε.
6. The wall-climbing robot cylindrical tank space surface weld path planning method according to claim 5 is characterized in that: In step 6-5A, the weld intersection v j The search method includes the following steps: Step 6-5A1, find adjacent points: find the points that are adjacent to the current node v i All weld intersections that are adjacent and have at least one weld edge; Step 6-5A2, find the bridge point: when a weld intersection A found in step 6-5A1 is connected to the current node v i When the welded edge formed is a bridge edge, the weld intersection point A is called the bridge point; Step 6-5A3: Find the weld intersection point v j : Eliminate the bridge point found in step 6-5A2 from all weld intersections found in step 6-5A1, and then select one of the remaining weld intersections as the weld intersection v j .
Citation Information
Patent Citations
Welding robot path planning method
CN106557844A
Electric power inspection robot closed path planning algorithm based on Fleury and Dijkstra algorithms
CN112561116A
Path planning navigation method and device applied to parking lot and server
CN116358585A
Step-by-step optimized body-in-white multi-robot spot welding operation path planning method
CN116604244A
Shortest path planning method for mobile robot
CN118010043A
Cited By
One-way street traffic network optimization method based on compatible Euler round tour
CN120472677A
A one-way traffic network optimization method based on compatible eulerian circuit
CN120472677B
