Multi-obstacle obstacle avoidance path generation method and device, electronic equipment and medium

By generating obstacle avoidance paths with multiple obstacles, the boundary of the obstacle avoidance path is determined by the minimum convex hull point set and the vehicle turning radius. This solves the problems of land waste and path planning failure in agricultural machinery operations and achieves safe and efficient obstacle avoidance path generation.

CN117170385BActive Publication Date: 2026-11-06BEIJING UNISTRONG SCI & TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311313038.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2023-09-08
Filing Date
2023-10-11
Publication Date
2026-11-06
Estimated Expiration
2043-10-11

AI Technical Summary

Technical Problem

Existing technologies cannot effectively avoid multiple obstacles in agricultural machinery operations, leading to land waste and path planning failures, especially when obstacles are too close and reasonable obstacle avoidance paths cannot be generated.

Method used

By obtaining the coordinates of the outline points of obstacles, a minimum convex hull set is generated. The obstacle avoidance path boundary is determined based on the working width and the minimum turning radius of the vehicle. The optimal obstacle avoidance path is generated by judging and adjusting the intersection of the path boundaries.

Benefits of technology

It enables the reduction of land waste in multi-obstacle environments, the generation of reasonable obstacle avoidance paths, and the fulfillment of the safety and resource utilization requirements of agricultural machinery operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117170385B_ABST
    Figure CN117170385B_ABST
Patent Text Reader

Abstract

This disclosure relates to the field of obstacle avoidance path generation, providing a method, apparatus, electronic device, and medium for generating obstacle avoidance paths for multiple obstacles. The method includes: acquiring the contour point coordinates of each obstacle; determining the minimum convex hull point set of each obstacle; determining the obstacle avoidance path boundary corresponding to each obstacle; determining whether the obstacle avoidance path boundaries intersect; if so, generating new obstacle avoidance path boundaries according to a first preset rule; determining whether the original planned driving path collides with each obstacle avoidance path boundary for each operation; if a collision occurs, generating multiple obstacle avoidance planned path segments; determining whether the obstacle avoidance planned path segments intersect; if they intersect, generating new obstacle avoidance planned path segments according to a second preset rule; if they do not intersect, generating an obstacle avoidance driving path; if no collision occurs, executing the original planned driving path. This disclosure can meet the obstacle avoidance needs of agricultural machinery vehicles, achieving minimal area loss while generating multi-obstacle obstacle avoidance paths under specific operational tasks and environments.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of obstacle avoidance path generation technology, and in particular to a method, apparatus, electronic device, and medium for generating obstacle avoidance paths for multiple obstacles. Background Technology

[0002] Agricultural automation typically requires following pre-set paths, but actual operating environments are often complex and varied. For example, the work site may contain various obstacles such as trees, self-built water storage tanks, and rocks. Therefore, to ensure the smooth operation of automated work, obstacle avoidance path design is necessary. Simultaneously, during automated operations, agricultural machinery must not only ensure driving safety but also maximize resource utilization, that is, guarantee the maximum working area with minimal resource loss.

[0003] In existing technologies, Huo Yinghui and Zhang Lianming's "shortest tangent obstacle avoidance method" treats the obstacle boundary as a circle and then uses a combination of two straight line segments and one circular arc segment for obstacle avoidance. However, this method cannot meet the requirement of agricultural machinery operations having a minimum turning radius for its travel path. Yi Sheng and Fan Xiaoping use graph theory and Dijkstra's algorithm for obstacle avoidance path planning. Their method can find the shortest obstacle avoidance path, but it cannot meet the requirement of standardized operation lines in agricultural machinery operations. Liu Yufeng uses the total length of four circular arc segments as the obstacle avoidance cost and judges whether the path can be planned based on the distance attributes between multiple obstacles. However, this method will fail to plan and stop the operation when two obstacles are too close. There are other obstacle avoidance path planning methods in the existing technology, but they are basically improvements on the above methods to achieve the obstacle avoidance purpose.

[0004] In general, most existing technologies do not distinguish between obstacle types and uniformly set the obstacle boundary as a circle. They also rarely consider obstacle avoidance scenarios with multiple obstacles. Therefore, these existing technologies have the following problems: On the one hand, using the circumscribed circle as the obstacle avoidance boundary will cause land waste, especially when the length of the obstacle along the working direction is large, its circumscribed circle radius is too large, resulting in a lot of waste of land resources; on the other hand, if there are multiple obstacles, especially if the obstacles are too close together, it is impossible to generate a reasonable drivable obstacle avoidance path. Summary of the Invention

[0005] This disclosure aims to address at least one of the problems existing in the prior art by providing a method, apparatus, electronic device, or medium for generating obstacle avoidance paths for multiple obstacles.

[0006] One aspect of this disclosure provides a method for generating obstacle avoidance paths for multiple obstacles, the method comprising:

[0007] Obtain the coordinates of the outline points of each obstacle;

[0008] The step of generating the minimum convex hull is as follows: Based on the coordinates of the contour points, determine the minimum convex hull point set for each obstacle.

[0009] The step of generating obstacle avoidance path boundaries is as follows: Based on the minimum convex hull point set, the preset working width, and the minimum turning radius of the vehicle, the obstacle avoidance path boundary corresponding to each obstacle is determined.

[0010] Step to determine whether the obstacle avoidance path boundaries intersect: Determine whether the boundaries of each obstacle avoidance path intersect. If so, generate a new obstacle avoidance path boundary according to the first preset rule.

[0011] Determine whether the original planned driving path will collide with the boundaries of each of the aforementioned obstacle avoidance paths for each operation:

[0012] If so, then based on the original planned driving path and the obstacle avoidance path boundary, multiple obstacle avoidance planning path segments are generated, and it is determined whether each obstacle avoidance planning path segment intersects: if so, a new obstacle avoidance planning path segment is generated according to the second preset rule; if not, an obstacle avoidance driving path is generated based on each obstacle avoidance planning path segment.

[0013] If not, it means that the corresponding work line does not need to generate an obstacle avoidance path, and the corresponding original planned driving path will be executed.

[0014] Optionally, generating a new obstacle avoidance path boundary according to a first preset rule includes:

[0015] The minimum convex hull points of each obstacle intersecting the boundary of the obstacle avoidance path are combined into a convex polygon obstacle;

[0016] Based on the step of generating the minimum convex hull and the step of generating the obstacle avoidance path boundary, the obstacle avoidance path boundary corresponding to the convex polygon obstacle is determined.

[0017] Repeat the step of determining whether the obstacle avoidance path boundaries intersect until all the obstacle avoidance path boundaries do not intersect each other.

[0018] Optionally, generating a new obstacle avoidance path boundary according to a first preset rule includes:

[0019] The curvature circle with the minimum turning radius of the vehicle is tangent to each of the intersecting obstacle avoidance path boundaries, and the arcs of the curvature circle between each tangent point are combined with each of the intersecting obstacle avoidance path boundaries to form a new obstacle avoidance path boundary.

[0020] Optionally, generating a new obstacle avoidance planning path segment according to the second preset rule includes:

[0021] The obstacles corresponding to the intersecting obstacle avoidance planning path segments are merged into a new obstacle;

[0022] Based on the steps of generating the minimum convex hull and generating the obstacle avoidance path boundary, the obstacle avoidance path boundary corresponding to the new obstacle is determined, and the step of determining whether the obstacle avoidance path boundaries intersect is re-executed.

[0023] Optionally, generating a new obstacle avoidance planning path segment according to the second preset rule includes:

[0024] The curvature circle with the minimum turning radius of the vehicle is tangent to the obstacle avoidance path boundary connected by each of the intersecting obstacle avoidance planning path segments. The arcs of the curvature circle between each tangent point are then combined with the obstacle avoidance path boundary connected by each of the intersecting obstacle avoidance planning path segments to form a new obstacle avoidance planning path segment.

[0025] Optionally, the generation method further includes:

[0026] When there are multiple obstacle avoidance driving paths, calculate the total path length of each obstacle avoidance driving path.

[0027] The obstacle avoidance path with the shortest total length and that meets the preset conditions is taken as the final obstacle avoidance path; wherein, the preset conditions include that the angle between the planned path heading and the vehicle's operating direction does not exceed 90 degrees.

[0028] Optionally, the generation method further includes:

[0029] When the original planned driving path includes multiple work rows, at least one obstacle avoidance driving path is generated for each work row.

[0030] Based on the requirements of the working environment, determine the final obstacle avoidance driving path corresponding to each of the work lines;

[0031] Connect the final obstacle avoidance paths corresponding to each of the aforementioned work rows end to end to generate a global obstacle avoidance path.

[0032] Another aspect of this disclosure provides a multi-obstacle path avoidance generation device, the generation device comprising:

[0033] The acquisition module is used to acquire the coordinates of the outline points of each obstacle.

[0034] The first generation module is used to determine the minimum convex hull point set of each obstacle based on the coordinates of the contour points;

[0035] The second generation module is used to determine the obstacle avoidance path boundary corresponding to each obstacle based on the minimum convex hull point set, the preset working width, and the minimum turning radius of the vehicle.

[0036] The first judgment module is used to perform the step of judging whether the obstacle avoidance path boundaries intersect: judging whether the boundaries of each obstacle avoidance path intersect; if so, generating a new obstacle avoidance path boundary according to the first preset rule.

[0037] The second judgment module is used to determine, on a per-operation basis, whether the original planned driving path will collide with the boundaries of each obstacle avoidance path:

[0038] If so, then based on the original planned driving path and the obstacle avoidance path boundary, multiple obstacle avoidance planning path segments are generated, and it is determined whether each obstacle avoidance planning path segment intersects: if so, a new obstacle avoidance planning path segment is generated according to the second preset rule; if not, an obstacle avoidance driving path is generated based on each obstacle avoidance planning path segment.

[0039] If not, it means that the corresponding work line does not need to generate an obstacle avoidance path, and the corresponding original planned driving path will be executed.

[0040] Optionally, the first judgment module is used to generate a new obstacle avoidance path boundary according to a first preset rule, including:

[0041] The first judgment module is specifically used for:

[0042] The minimum convex hull points of each obstacle intersecting the boundary of the obstacle avoidance path are combined into a convex polygon obstacle;

[0043] Using the first generation module and the second generation module, the obstacle avoidance path boundary corresponding to the convex polygon obstacle is determined;

[0044] Repeat the step of determining whether the obstacle avoidance path boundaries intersect until the boundaries of each obstacle avoidance path no longer intersect.

[0045] Optionally, the first judgment module is used to generate a new obstacle avoidance path boundary according to a first preset rule, including:

[0046] The first judgment module is specifically used for:

[0047] The curvature circle with the minimum turning radius of the vehicle is tangent to each of the intersecting obstacle avoidance path boundaries, and the arcs of the curvature circle between each tangent point are combined with each of the intersecting obstacle avoidance path boundaries to form a new obstacle avoidance path boundary.

[0048] Optionally, the second judgment module is used to generate a new obstacle avoidance planning path segment according to a second preset rule, including:

[0049] The second judgment module is specifically used for:

[0050] The obstacles corresponding to the intersecting obstacle avoidance planning path segments are merged into a new obstacle;

[0051] Using the first generation module and the second generation module, the obstacle avoidance path boundary corresponding to the new obstacle is determined, and the first judgment module is used again to perform the step of judging whether the obstacle avoidance path boundaries intersect.

[0052] Optionally, the second judgment module is used to generate a new obstacle avoidance planning path segment according to a second preset rule, including:

[0053] The second judgment module is specifically used for:

[0054] The curvature circle with the minimum turning radius of the vehicle is tangent to the obstacle avoidance path boundary connected by each of the intersecting obstacle avoidance planning path segments. The arcs of the curvature circle between each tangent point are then combined with the obstacle avoidance path boundary connected by each of the intersecting obstacle avoidance planning path segments to form a new obstacle avoidance planning path segment.

[0055] Optionally, the generating apparatus further includes:

[0056] The final path generation module is used to calculate the total path length of each obstacle avoidance path when there are multiple obstacle avoidance paths; and to take the obstacle avoidance path with the smallest total path length and that meets preset conditions as the final obstacle avoidance path; wherein, the preset conditions include that the angle between the planned path heading and the vehicle operation direction of the obstacle avoidance path does not exceed 90 degrees.

[0057] Optionally, the generating apparatus further includes:

[0058] The global path generation module is used to generate at least one obstacle avoidance driving path corresponding to each of the work lines when the original planned driving path includes multiple work lines; determine the final obstacle avoidance driving path corresponding to each work line according to the requirements of the working environment; and connect the final obstacle avoidance driving paths corresponding to each work line end to end to generate a global obstacle avoidance driving path.

[0059] Another aspect of this disclosure provides an electronic device comprising:

[0060] At least one processor; and,

[0061] A memory that is communicatively connected to at least one processor; wherein,

[0062] The memory stores instructions that can be executed by at least one processor, which enables the at least one processor to perform the multi-obstacle path generation method described above.

[0063] Another aspect of this disclosure provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the obstacle avoidance path generation method for multiple obstacles described above.

[0064] Compared with the prior art, this disclosure can not only meet the obstacle avoidance requirements of agricultural machinery vehicles, but also achieve minimal area loss while generating multiple obstacle avoidance paths for specific tasks and environments. Attached Figure Description

[0065] One or more embodiments are illustrated by way of example with the corresponding pictures in the accompanying drawings. These illustrations do not constitute a limitation on the embodiments. Elements with the same reference numerals in the drawings are denoted as similar elements. Unless otherwise stated, the figures in the drawings are not to be limited by scale.

[0066] Figure 1 A flowchart of a method for generating obstacle avoidance paths for multiple obstacles provided in one embodiment of this disclosure;

[0067] Figure 2 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0068] Figure 3 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0069] Figure 4 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0070] Figure 5 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0071] Figure 6 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0072] Figure 7 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0073] Figure 8 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0074] Figure 9 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0075] Figure 10 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0076] Figure 11 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0077] Figure 12 A schematic diagram of an obstacle avoidance path provided for another embodiment of this disclosure;

[0078] Figure 13 A flowchart of a method for generating obstacle avoidance paths for multiple obstacles provided in another embodiment of this disclosure;

[0079] Figure 14 A schematic diagram of a multi-obstacle path generation device provided for another embodiment of this disclosure;

[0080] Figure 15 A schematic diagram of the structure of an electronic device provided in another embodiment of this disclosure. Detailed Implementation

[0081] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the various embodiments of this disclosure will be described in detail below with reference to the accompanying drawings. However, those skilled in the art will understand that many technical details have been provided in the various embodiments of this disclosure to facilitate a better understanding of the disclosure. However, the technical solutions claimed in this disclosure can be implemented even without these technical details and with various variations and modifications based on the following embodiments. The division of the various embodiments below is for ease of description and should not constitute any limitation on the specific implementation of this disclosure. The various embodiments can be combined with and referenced by each other without contradiction.

[0082] One embodiment of this disclosure relates to a method for generating obstacle avoidance paths for multiple obstacles, the process of which is as follows: Figure 1 As shown, it includes:

[0083] Step S110: Obtain the coordinates of the outline points of each obstacle.

[0084] Specifically, step S110 can obtain the contour point coordinates of each obstacle through laser scanning, manual measurement, or other methods. Of course, those skilled in the art can also obtain the contour point coordinates of each obstacle through other methods, and this embodiment is not limited in this regard. The obstacles can form a set O, where each element in set O corresponds to one obstacle, and the number of elements in set O is the number of obstacles.

[0085] It should be noted that each obstacle has more than one outline point, so the outline point coordinates refer to the set of coordinates of all outline points corresponding to each obstacle.

[0086] Step S120, generating the minimum convex hull: Based on the coordinates of the contour points, determine the minimum convex hull point set for each obstacle.

[0087] Specifically, step S120 can determine the minimum convex hull set of each obstacle based on the coordinates of its contour points, according to the different shapes of each obstacle.

[0088] For example, if the obstacle is circular, step S120 can determine the minimum convex hull set of the obstacle based on the coordinates of the contour points and a preset interval angle. If the obstacle is polygonal and has no concave edges, step S120 can use its contour point coordinates as the minimum convex hull set. If the obstacle is polygonal and has concave edges, step S120 can use the Graham algorithm to calculate the minimum convex hull set of the obstacle based on the contour point coordinates.

[0089] It should be noted that the minimum convex hull of an obstacle includes more than one point. Therefore, the minimum convex hull point set refers to the set of all points included in the minimum convex hull of each obstacle.

[0090] Let the obstacle parameter set, i.e. the coordinates of the contour points, be P = {P0, P1, P2, ..., P}. k For example, if k = 2, and P0 represents the obstacle number, P1 represents the coordinate value, and P2 represents the length value, then the obstacle is considered to be circular; otherwise, the obstacle is considered to be polygonal.

[0091] Assume the minimum convex hull set of the obstacle is T. If the obstacle is circular, then points are uniformly selected along the outline of the obstacle at preset intervals (e.g., 5°) to obtain the point set T = {T0, T1, T2, ..., T}. k}, where T0 represents the obstacle number, T1 to T k Let T represent the contour points of obstacle T0 respectively. The polygon formed by the point set T can be approximated as the minimum convex hull of the circular obstacle.

[0092] If the obstacle is a polygon, determine whether it has a concave edge: if there is no concave edge, the polygon formed by the coordinates P of its contour points is the minimum convex hull of the obstacle, and in this case, the set of points T of the minimum convex hull is equal to the set of points P; if there is a concave edge, calculate the set of points of the minimum convex hull of the obstacle based on the coordinates P of the contour points using the Graham algorithm, which may include the following steps:

[0093] (1) As shown in equation (1), sort P according to the y-coordinate value, find the point miny(P) with the smallest y-coordinate value. If there are multiple points with the smallest y-coordinate value, sort the points with the smallest y-coordinate value according to the x-coordinate value, select the point with the smallest x-coordinate value, and remove duplicate points to obtain the base point O:

[0094]

[0095] (2) Calculate the angle between the vector formed by any point in the base point O and P and the x-axis. Obtain the set of points with the angle θ using the following formula (2), and sort them to obtain the set of points L sorted by the size of the angle:

[0096]

[0097] Where, θ i Let x(P) be the value of the i-th angle point in the set of angle points θ. o ), y(P o ) are the x and y coordinates of the base point O, respectively, x(P) i ), y(P i ) are the x-coordinate and y-coordinate of the i-th point in P, respectively.

[0098] (3) L o L1, L2 are selected as the initial three points of the convex hull, and are assigned a new number T. i Then T0 and T1 must be two points on the convex hull, and T0 = L. o T1 = L1, and using T1 as the base point, determine the direction of T1, T2, and L3, i.e., Point. i =T1, Point j =T2, Point k =L3 performs the following judgment as shown in equation (3), where x(Point) i ), y(Point) i Points are respectively. i x and y coordinates, x(Point) j ), y(Point) j Points are respectively. j x and y coordinates, x(Point) k ), y(Point) k Points are respectively. k x and y coordinates:

[0099] (x(Point j )-x(Point i ))*(y(Point k )-y(Point i ))>(x(Point k )-x(Point i ))*(y(Point j )-y(Point i (3)

[0100] If equation (3) holds true, then the direction formed by the three points is counterclockwise, and T3 = L3. Using T2 as the base point, determine the direction of T2, T3, and L4. If it is counterclockwise, then T4 = L4. Repeat this process using T3 as the base point. If it is clockwise, then T3 = L4. In this case, using T2 as the base point, determine the direction of T2, T3, and L5. After traversing all the points in L according to the above rules, the resulting T is the coordinate of the minimum convex hull of the polygon.

[0101] Step S130, Obstacle Avoidance Path Boundary Generation: Based on the minimum convex hull point set, the preset working width, and the vehicle's minimum turning radius, determine the obstacle avoidance path boundary corresponding to each obstacle.

[0102] Specifically, assuming that the vehicle must be at least half the preset working width W when it is driving and the turning radius is not less than the vehicle's minimum turning radius R, the determination of the obstacle avoidance path boundary can be divided into two cases.

[0103] In the first case, R < W / 2, step S130 may include: setting the distance from the obstacle avoidance boundary to the obstacle, i.e., the obstacle avoidance boundary distance; obtaining vertex coordinates from the set of minimum convex hull points; generating an arc with the vertex coordinates as the center and the obstacle avoidance boundary distance as the radius; determining the tangent coordinates and arc length of the arc based on the vertex coordinates and the obstacle avoidance boundary distance; obtaining the turning obstacle avoidance boundary coordinates on the arc based on the preset first interval distance; obtaining the straight obstacle avoidance boundary coordinates of the line connecting the tangent coordinates based on the preset second interval distance; determining the obstacle avoidance path boundary coordinates corresponding to the obstacle based on the turning obstacle avoidance boundary coordinates and the straight obstacle avoidance boundary coordinates; and obtaining the corresponding obstacle avoidance path boundary.

[0104] Specifically, assuming the obstacle avoidance boundary distance is d, if R < W / 2, such as W being 10m and R being 2.7336m, then the obstacle avoidance boundary distance can be taken as d = W / 2, i.e., d = 5m. At the corner point, which is the vertex of the minimum convex hull, i.e., the point set T, let T... i Draw an arc with d as the center and d as the radius to achieve the purpose of turning and avoiding obstacles.

[0105] by Figure 2 Taking the situation shown as an example, the minimum convex hull of the obstacle is a polygon composed of T0, T1, T2, and T3, where T0, T1, T2, and T3 are the coordinates of the four vertices of the polygon. Based on these four vertex coordinates and the obstacle avoidance boundary distance d, the coordinates of each tangent point of the arc can be determined by the following formulas (4) to (9):

[0106]

[0107] x(T 01 )=x(T0)+d*sin(α1),y(T 01)=y(T0)-d*cos(α1) (5)

[0108] x(T 11 )=x(T1)+d*sin(α1),y(T 11 )=y(T i )-d*cos(α1) (6)

[0109]

[0110] x(T 12 )=x(T1)+d*sin(α2),y(T 12 )=y(T1)-d*cos(α2) (8)

[0111] x(T 22 )=x(T2)+d*sin(α2),y(T 22 )=y(T2)-d*cos(α2) (9)

[0112] Where α1 is the angle between line segment T0T1 and the x-axis, x(T0) and y(T0) are the x-coordinate and y-coordinate of vertex T0, respectively, and x(T1) and y(T1) are the x-coordinate and y-coordinate of vertex T1, respectively. 01 ), y(T) 01 Tangent points T 01 x(T) is the x-coordinate and y-coordinate. 11 ), y(T) 11 Tangent points T 11 The x and y coordinates of line segment T1T2 are given, α2 is the angle between line segment T1T2 and the x-axis, and x(T2) and y(T2) are the x and y coordinates of vertex T2, respectively. 12 ), y(T) 12 Tangent points T 12 x(T) is the x-coordinate and y-coordinate. 22 ), y(T) 22 Tangent points T 22 The x and y coordinates.

[0113] Based on this, the arc length arc_len can be determined by the following formulas (10) to (12):

[0114]

[0115]

[0116] arc_len=|θ1-θ2|*π*|d| (12)

[0117] Where θ1 and θ2 are T 11 T12 The angle between T1 and arc_len is the corresponding arc length.

[0118] Based on this, the coordinates of the turning obstacle avoidance boundary corresponding to T1 can be obtained according to the following formula (13):

[0119]

[0120] In other words, after obtaining the arc length arc_len, divide the arc length arc_len into n points at 0.2m intervals (the preset first interval distance). This will give you the coordinates of the n turning obstacle avoidance boundaries on the arc. 11 T1T 12 Let the included angle be β, then β is also divided into n equal intervals, x(t) i ), y(t) i ), β i These represent the x-coordinate, y-coordinate, and included angle of the i-th point on the arc length arc_len, respectively. Therefore, the boundary combination formed by points T0, T1, and T2 is line segment T. 01 T 11 Circular arc segment t and line segment T 12 T 22 Wherein, the arc segment t is the arc T. 11 T 12 The set consists of n points. Similarly, the coordinates of the turning obstacle avoidance boundaries corresponding to T0, T2, and T3 can be obtained respectively.

[0121] like Figure 2 As shown, the line connecting the coordinates of the tangent points is T. 01 T 11 T 12 T 22 T 23 T 33 And T 30 T 00 Set a second interval distance, such as 1m, according to actual needs, and obtain line segment T according to the second interval distance. 01 T 11 T 12 T 22 T 23 T 33 And T 30 T 00 The coordinates of the straight obstacle avoidance boundary are obtained from the coordinates of the turning obstacle avoidance boundary and the straight obstacle avoidance boundary. Then, the obstacle avoidance path boundary corresponding to the obstacle can be obtained from the coordinates of the turning obstacle avoidance boundary and the straight obstacle avoidance boundary. Figure 2 The dark blue path in the image, compared to the black path (obstacle avoidance boundary) obtained by the circumscribed circle method in existing technologies, occupies a smaller land area, thus achieving the goal of saving land resources. Specifically, for example... Figure 3As shown, in a scenario where the obstacle has a relatively large length, the dark blue obstacle avoidance path boundary obtained by the steps of this embodiment occupies a smaller land area compared with the black obstacle avoidance boundary obtained by the circumscribed circle method in the prior art.

[0122] In the second case, where R>W / 2, when calculating the obstacle avoidance boundary with reference to the method for R<W / 2, d=R, in this case Figure 4 the result as shown is obtained.

[0123] When the working width W / 2<R, d=R. At this time, compared with the minimum circumscribed circle method, the obstacle avoidance effect for small obstacles is not very good, and the effect for large obstacles is mediocre. It is necessary to further find a more general method, instead of using different processing methods according to the size of the obstacle and the working width.

[0124] Considering that the minimum turning radius is a key constraint, the driving of the vehicle must meet the requirement of the turning radius. Therefore, for operations with a small working width and small obstacles, the turning radius at the vertex reaches the minimum turning radius value, and the closest distance to the vertex is only W / 2.

[0125] As shown Figure 5 in the left diagram in the figure, the polygon formed by T0, T1, and T2 is the original obstacle boundary, and the radii of the red circles O0, O1, and O2 are all R. The closest distance from the points on circles O0, O1, and O2 to the three vertices T0, T1, and T2 is all W / 2. By finding the tangent lines connecting the three circles, the boundary range formed by their combination is the obstacle avoidance boundary we seek. In consideration of the balance of the obstacle avoidance boundary, the centers of the three circles should lie on the respective angle bisectors of the triangle formed by T0, T1, and T2, so that the distance to both sides is equal, and the formed polygon is also the optimal solution.

[0126]

[0127]

[0128]

[0129]

[0130]

[0131] From the above equations (14) to (18), the abscissa x(O1) and ordinate y(O1) of the center O1 corresponding to the vertex T1 can be obtained, where respectively represent the vector from T1 to T0 and the vector from T1 to T2. Then the boundary of the polygon can be calculated with reference to the above equations (4) to (13), as shown in Figure 5As shown in the right figure in the figure, the dark blue path is the obstacle avoidance path of the polygon. At this time, the obstacle avoidance boundary distance d changes dynamically, and its value range is R>d≥W / 2. For the straight-line obstacle avoidance path segment with an excessively large distance, points can be taken uniformly with 1m as the threshold to obtain the corresponding straight-line obstacle avoidance boundary coordinates.

[0132] In summary, the final calculation strategy for the obstacle avoidance path boundary is: when W / 2>R, take d=W / 2, and calculate the relevant boundary range of the obstacle; when W / 2<R, take R>d≥W / 2, find the center of the circle on the angle bisector to obtain the dynamic boundary distance, and then calculate the obstacle avoidance path boundary.

[0133] Step S140, the step of judging whether the obstacle avoidance path boundaries intersect: judge whether the respective obstacle avoidance path boundaries intersect, and if so, generate a new obstacle avoidance path boundary according to a first preset rule.

[0134] Specifically, assuming that the parameter P0 of the obstacle parameter set in the current working environment is ≤m, that is, there are m obstacles, the rapid rejection test and the straddle test can be used to quickly judge whether the obstacle avoidance path boundaries of the respective obstacles intersect. If they intersect, the convex polygon point sets generated by the relevant obstacles are merged into one convex polygon obstacle, and the obstacle avoidance path boundary is regenerated.

[0135] The rapid rejection test and the straddle test are respectively introduced below.

[0136] Rapid rejection test:

[0137] Use the following equations (19) to (21) to calculate the minimum bounding rectangle R of the obstacle avoidance boundary point set TM (excluding T0) of obstacle M TM :

[0138] minTMx=min(x(TM i )),maxTMx=max(x(TM i )) (19)

[0139] minTMy=min(y(TM i )),maxTMy=max(y(TM i )) (20)

[0140] R TM =(minTMx,minTMy,maxTMy,maxTMy) (21)

[0141] Similarly, the minimum bounding rectangle R of the obstacle avoidance boundary point set TN (excluding T0) of obstacle N TN can be expressed by the following equation (22):

[0142] R TN=(minTNx,minTNy,maxTNx,maxTNy) (22)

[0143] If R TN With R TM If they intersect, the intersection points form a new matrix R. ∩ It is expressed as the following formula (23):

[0144]

[0145] When minx > maxx || miny > maxy, R ∩ It does not form a rectangle, thus obtaining R. TM With R TN They do not intersect, otherwise R TM With R TN They may intersect; further cross-tests are needed to determine R. TM With R TN Whether they intersect.

[0146] Straddle test:

[0147] To determine whether two points TM1 and TM2 on point set TM intersect with two points TN1 and TN2 on point set TN, we can calculate the cross product of the vectors forming the points using the following formula (24):

[0148] (TM1-TN1)*(TN2-TN1)×(TN2-TN1)*(TM2-TN1)≥0 (24)

[0149] If the above formula (24) holds, then TM1TM2 is said to span TN1TN2, that is, the two line segments TM1TM2 and TN1TN2 intersect.

[0150] For example, in step S140, generating a new obstacle avoidance path boundary according to the first preset rule includes: merging the minimum convex hull points of each obstacle that intersects the obstacle avoidance path boundary into a convex polygon obstacle; determining the obstacle avoidance path boundary corresponding to the convex polygon obstacle based on the steps of generating the minimum convex hull and generating the obstacle avoidance path boundary; and repeating the step of determining whether the obstacle avoidance path boundaries intersect until each obstacle avoidance path boundary does not intersect with any other obstacle.

[0151] In other words, step S140 can quickly determine whether the obstacle avoidance path boundaries of each obstacle intersect through rapid rejection and straddle tests. If they intersect, such as the obstacle avoidance boundary of obstacle M intersecting with the obstacle avoidance boundary of obstacle N, the minimum convex hull contour point set information of obstacle N (excluding obstacle number) is added to the point set information of obstacle M, and the information of obstacle N is deleted from the obstacle set O. The obstacle avoidance boundary of obstacle M is then recalculated. This step is repeated until the obstacle avoidance boundaries generated by the obstacles in the obstacle set do not intersect pairwise. Figure 6 As shown, the black line represents the outline of the obstacle, the yellow line represents the boundary of the obstacle avoidance path, the cyan dashed line represents the outline of the new obstacle after merging the obstacles, and the red line represents the boundary of the obstacle avoidance path after merging the obstacles.

[0152] By merging obstacles when their paths intersect, multi-obstacle obstacle avoidance is simplified to single-obstacle obstacle avoidance, reducing the computational power required for planning and improving obstacle avoidance planning efficiency.

[0153] For example, in step S140, generating a new obstacle avoidance path boundary according to the first preset rule includes: using the curvature circle with the minimum turning radius of the vehicle to be tangent to each of the intersecting obstacle avoidance path boundaries, and forming a new obstacle avoidance path boundary by combining the arcs of the curvature circle between each tangent point and the intersecting obstacle avoidance path boundaries.

[0154] Specifically, such as Figure 11 As shown, when the obstacle avoidance paths intersect, the vehicle cannot pass between the two obstacles under the current circumstances. Without merging the two obstacles, there are only two path options: a transition path is obtained by using the curvature circle with the minimum turning radius tangent to the obstacle avoidance boundaries of both obstacles, as shown below. Figure 11 As shown by the medium-dark blue line, the red shaded area represents the land area lost due to merging obstacles. In this case, using the dark blue line as the new obstacle avoidance path boundary can effectively reduce the land area loss caused by merging obstacles.

[0155] Step S150: Determine whether the original planned driving path will collide with the boundaries of each obstacle avoidance path for each operation:

[0156] If so, then based on the original planned driving path and obstacle avoidance path boundary, generate multiple obstacle avoidance planned path segments, and determine whether each obstacle avoidance planned path segment intersects: if so, generate a new obstacle avoidance planned path segment according to the second preset rule; if not, generate an obstacle avoidance driving path based on each obstacle avoidance planned path segment.

[0157] If not, it means that the corresponding work line does not need to generate an obstacle avoidance path, and the corresponding original planned driving path will be executed.

[0158] Specifically, after obtaining the obstacle avoidance path boundaries, step S150 can determine whether the original planned driving path intersects with the obstacle avoidance boundaries based on the point set of the original planned driving path. For example, when the original planned driving path includes multiple work rows, the following operation can be performed: Take the i-th work row in the original planned driving path, and conduct a rapid repulsion test and a straddle test between the point set of the i-th work row and the obstacle avoidance path boundary point sets of all obstacles in the obstacle set to determine whether the i-th work row will collide with each obstacle avoidance path boundary. If the i-th work row intersects with multiple obstacle avoidance path boundaries, then the work row has multiple obstacle avoidance planned path segments.

[0159] The obstacle avoidance planning path segment for obstacle T is defined as the arc from the original planned driving path to the boundary of the obstacle avoidance path and the boundary of the obstacle avoidance path traversed. That is, the operation path can be divided into obstacle-free path segments and obstacle avoidance planning path segments. Here, the transition from the original planned driving path to the boundary of the obstacle avoidance path is achieved using an arc, but theoretically, a gentle curve or a direct tangent can also be used for the transition.

[0160] like Figure 7 As shown, obstacle A ( Figure 7 The obstacle avoidance path planning operation segment for the rectangular obstacle on the left is represented as {arc a1a2→line a2a3→arc a3a4→line a4a5→arc a5a6}; obstacle B ( Figure 7 The obstacle avoidance path planning operation segment for the triangular obstacle on the left is represented as {arc b1b2 → line b2b3 → arc b3b4 → line b4b5 → arc b5b6 → line b6b7 → arc b7b8}. Obstacle C ( Figure 7 The obstacle avoidance path planning operation segment for the rectangular obstacle on the right is represented as {arc1c2→line c2c3→arc3c4→line c4c5→arc5c6}; obstacle D ( Figure 7 The obstacle avoidance path planning operation segment for the triangular obstacle on the right is represented as {arc d1d2→line d2d3→arc d3d4→line d4d5→arc d5d6→line d6d7→arc d7d8}.

[0161] Based on their positional relationship, they can be divided into two categories, for example Figure 7 The obstacle avoidance path segments for obstacles A and B do not intersect, while the obstacle avoidance path segments for obstacles C and D intersect at point p. cd .

[0162] (1) Obstacle avoidance path segments do not intersect: In this case, the two obstacle avoidance path segments do not affect each other, such as Figure 8 As shown in (a), the planned path of this operation is formed by superimposing the obstacle avoidance planning path segments (red and blue lines in the figure) and the barrier-free path segments (yellow lines in the figure).

[0163] (2) Intersecting obstacle avoidance path segments: In this case, the obstacle avoidance planning path segments of obstacle A and obstacle B affect each other, such as... Figure 7 As shown in the right figure.

[0164] For example, in step S150, generating a new obstacle avoidance planning path segment according to the second preset rule includes: merging the obstacles corresponding to the intersecting obstacle avoidance planning path segments into a new obstacle; determining the obstacle avoidance path boundary corresponding to the new obstacle based on the step of generating the minimum convex hull and the step of generating the obstacle avoidance path boundary, and re-executing the step of determining whether the obstacle avoidance path boundaries intersect.

[0165] At this point, to meet the specific operational requirements of agricultural machinery, namely, the distance from the obstacle must be no less than half the width of the vehicle and the radius of curvature must be no less than the minimum turning radius, obstacle A and obstacle B can be merged to form a single obstacle. Figure 8 (b) The convex polygon surrounded by the cyan line is calculated and the obstacle avoidance boundary is calculated. Figure 8 In (b), the obstacle avoidance planning path of this operation line is composed of the superposition of the barrier-free path segment (yellow line) and the obstacle avoidance path segment (red line).

[0166] The obstacle avoidance boundary of a single obstacle takes into account both the working width and the minimum turning radius of the vehicle. Therefore, the generated obstacle avoidance path meets the obstacle avoidance requirements. Obstacles intersecting the boundary of the obstacle avoidance path are merged into a single obstacle and a new obstacle avoidance boundary is generated. Therefore, the existence of obstacle avoidance boundaries in adjacent working rows does not affect the obstacle avoidance planning of the current row. The obstacle avoidance planning paths for two adjacent rows are as follows: Figure 9 As shown, the red lines represent the obstacle avoidance paths between two adjacent work rows, and the yellow lines represent the obstacle avoidance path boundaries.

[0167] For example, in step S150, generating a new obstacle avoidance planning path segment according to the second preset rule includes: using the curvature circle with the minimum turning radius of the vehicle to be tangent to the obstacle avoidance path boundary connected by each intersecting obstacle avoidance planning path segment, and forming a new obstacle avoidance planning path segment by combining the arcs of the curvature circle between each tangent point with the obstacle avoidance path boundary connected by each intersecting obstacle avoidance planning path segment.

[0168] Specifically, such as Figure 12 As shown, when the obstacle avoidance path boundary intersects with the transition curve path from the original planned driving path to the obstacle avoidance path boundary, the obstacle avoidance path segments of the two obstacles affect each other. Therefore, driving along the obstacle avoidance path segment of a single obstacle will cause constraint failure. Figure 12 As shown, the obstacle avoidance paths for the lower obstacle are indicated by the red and blue lines, while the obstacle avoidance paths for the upper obstacle are indicated by the green and yellow lines. Points P and Q in the diagram are the intersection points of the curvature circles.

[0169] Compared with the prior art, the embodiments disclosed herein can not only meet the obstacle avoidance requirements of agricultural machinery vehicles, but also achieve minimal area loss while generating multiple obstacle avoidance paths for specific tasks and environments.

[0170] For example, the obstacle avoidance path generation method for multiple obstacles further includes: when there are multiple obstacle avoidance driving paths, calculating the total path length of each obstacle avoidance driving path; taking the obstacle avoidance driving path with the smallest total path length and meeting the preset conditions as the final obstacle avoidance driving path; wherein the preset conditions include that the angle between the planned path heading of the obstacle avoidance driving path and the vehicle operation direction does not exceed 90 degrees.

[0171] Specifically, when planning obstacle avoidance paths, the direction should be selected based on the shorter total length of the obstacle avoidance path segments, such as... Figure 10 As shown, the paths to avoid obstacles on both sides of the obstacle are calculated based on the geometric relationship (the red line represents the boundary of the left obstacle avoidance path and the blue line represents the boundary of the right obstacle avoidance path). The direction of the shorter total path length is the direction in which the obstacle avoidance path is generated. At the same time, it is necessary to ensure that the angle between the planned path heading and the operation direction does not exceed 90 degrees.

[0172] Compared with existing technologies, this implementation method maximizes the utilization of land resources by using minimum obstacle avoidance distance planning to address various obstacles such as ponds and trees between plots, while meeting the safety and reliability requirements of vehicle driving. It selects the obstacle avoidance direction by using the shortest obstacle avoidance path, thereby reducing agricultural machinery energy consumption and improving operational efficiency.

[0173] For example, the obstacle avoidance path generation method for multiple obstacles further includes: when the original planned driving path includes multiple work rows, generating at least one obstacle avoidance driving path corresponding to each work row; determining the final obstacle avoidance driving path corresponding to each work row according to the requirements of the working environment; and connecting the final obstacle avoidance driving paths corresponding to each work row end to end to generate a global obstacle avoidance driving path.

[0174] Specifically, multiple work lines can be generated based on vehicle driving modes such as straight-line mode, curved mode, etc. Multiple work lines can form a work line set W = {W0, W1, ..., W...} n W n+1}, where W0 and W n+1 These are two boundary rows, W1, ..., W n These are the n work rows in the original planned driving route.

[0175] Different work environments may have different requirements. For example, in the sowing and transplanting environment, the work in the previous row is completed and cannot be damaged, so the obstacle avoidance path is chosen towards the next row to obtain the final obstacle avoidance path. In the harvesting environment, the work in the previous row is completed, but the work in the next row is incomplete and cannot be damaged, so the obstacle avoidance path is chosen towards the previous row to obtain the final obstacle avoidance path.

[0176] The generated obstacle avoidance path boundary work rows are sequentially connected end to end, with the connecting parts using a semi-circular connection generated by the minimum turning radius, ultimately producing a global obstacle avoidance path. Of course, adjacent work rows can also be connected using pear-shaped, fishtail-shaped, or other methods.

[0177] To enable those skilled in the art to better understand the above embodiments, a specific example is provided below.

[0178] like Figure 13 As shown, a method for generating obstacle avoidance paths for multiple obstacles includes the following steps:

[0179] Select the vehicle driving mode, such as straight line mode or curved mode, and generate n rows of job lines.

[0180] Input obstacle parameters: For circular obstacles, the parameters include number, center coordinates, and radius; for polygonal obstacles, the parameters include number and outline point coordinates.

[0181] The minimum convex polygon corresponding to each obstacle is generated based on the obstacle parameters. For details on the method for generating the minimum convex polygon, please refer to the above implementation method.

[0182] The minimum area obstacle avoidance algorithm is adopted, and the obstacle avoidance boundary of each obstacle is generated based on the minimum convex polygon.

[0183] Determine whether the obstacle avoidance boundaries of each obstacle intersect: if so, merge the information of the intersecting obstacles into one obstacle, generate the minimum convex polygon of the obstacle, and use the minimum area obstacle avoidance algorithm to generate the corresponding obstacle avoidance boundary until the obstacle avoidance boundaries of each obstacle do not intersect each other; if not, generate the obstacle avoidance boundary of multiple obstacles.

[0184] Select the work rows in sequence and plan obstacle avoidance for each row.

[0185] Determine whether the obstacle avoidance boundary of a multi-obstacle area collides with any of the work rows:

[0186] If yes, select the obstacle avoidance direction, generate an obstacle avoidance planning path segment, and determine whether the obstacle avoidance planning path segments intersect: if yes, merge the information of the intersecting obstacles into one obstacle, generate the minimum convex polygon of the obstacle, and use the minimum area obstacle avoidance algorithm to generate the corresponding obstacle avoidance boundary until the obstacle avoidance boundaries of each obstacle do not intersect each other; if no, generate the final driving path.

[0187] If not, then the final driving path is generated.

[0188] Another embodiment of this disclosure relates to an obstacle avoidance path generation device for multiple obstacles, such as Figure 14 As shown, it includes:

[0189] The acquisition module 1401 is used to acquire the coordinates of the outline points of each obstacle;

[0190] The first generation module 1402 is used to determine the minimum convex hull point set of each obstacle based on the coordinates of the contour points;

[0191] The second generation module 1403 is used to determine the obstacle avoidance path boundary corresponding to each obstacle based on the minimum convex hull point set, the preset working width, and the minimum turning radius of the vehicle.

[0192] The first judgment module 1404 is used to perform the step of judging whether the obstacle avoidance path boundaries intersect: judging whether the boundaries of each obstacle avoidance path intersect; if so, generating a new obstacle avoidance path boundary according to the first preset rule.

[0193] The second judgment module 1405 is used to determine, on a per-operation basis, whether the original planned driving path will collide with the boundaries of each obstacle avoidance path:

[0194] If so, then based on the original planned driving path and obstacle avoidance path boundary, generate multiple obstacle avoidance planned path segments, and determine whether each obstacle avoidance planned path segment intersects: if so, generate a new obstacle avoidance planned path segment according to the second preset rule; if not, generate an obstacle avoidance driving path based on each obstacle avoidance planned path segment.

[0195] If not, it means that the corresponding work line does not need to generate an obstacle avoidance path, and the corresponding original planned driving path will be executed.

[0196] For example, the first judgment module 1404 is used to generate a new obstacle avoidance path boundary according to a first preset rule, including:

[0197] The first judgment module 1404 is specifically used for:

[0198] The minimum convex hull points of all obstacles intersecting the boundary of the obstacle avoidance path are combined into a convex polygon obstacle.

[0199] Using the first generation module 1402 and the second generation module 1403, the obstacle avoidance path boundary corresponding to the convex polygon obstacle is determined;

[0200] Repeat the step of determining whether the boundaries of the obstacle avoidance paths intersect until the boundaries of each obstacle avoidance path no longer intersect.

[0201] For example, the first judgment module 1404 is used to generate a new obstacle avoidance path boundary according to a first preset rule, including:

[0202] The first judgment module 1404 is specifically used for:

[0203] The curvature circle with the minimum turning radius of the vehicle is tangent to each of the intersecting obstacle avoidance path boundaries. The arcs of the curvature circle between each tangent point are combined with each of the intersecting obstacle avoidance path boundaries to form a new obstacle avoidance path boundary.

[0204] For example, the second judgment module 1405 is used to generate a new obstacle avoidance planning path segment according to a second preset rule, including:

[0205] The second judgment module 1405 is specifically used for:

[0206] Merge the obstacles corresponding to the intersecting obstacle avoidance planning path segments into a new obstacle;

[0207] Using the first generation module 1402 and the second generation module 1403, the boundary of the obstacle avoidance path corresponding to the new obstacle is determined, and the first judgment module 1404 is used again to perform the step of judging whether the boundary of the obstacle avoidance path intersects.

[0208] For example, the second judgment module 1405 is used to generate a new obstacle avoidance planning path segment according to a second preset rule, including:

[0209] The second judgment module 1405 is specifically used for:

[0210] The curvature circle with the minimum turning radius of the vehicle is tangent to the boundary of the obstacle avoidance path connected by each intersecting obstacle avoidance planning path segment. The arcs of the curvature circle between each tangent point are then combined with the boundary of the obstacle avoidance path connected by each intersecting obstacle avoidance planning path segment to form a new obstacle avoidance planning path segment.

[0211] For example, such as Figure 14 As shown, the obstacle avoidance path generation device for multiple obstacles also includes:

[0212] The final path generation module 1406 is used to calculate the total path length of each obstacle avoidance path when there are multiple obstacle avoidance paths; and to take the obstacle avoidance path with the smallest total path length and that meets the preset conditions as the final obstacle avoidance path; wherein the preset conditions include that the angle between the planned path heading and the vehicle operation direction of the obstacle avoidance path does not exceed 90 degrees.

[0213] For example, such as Figure 14 As shown, the obstacle avoidance path generation device for multiple obstacles also includes:

[0214] The global path generation module 1407 is used to generate at least one obstacle avoidance driving path for each work line when the original planned driving path includes multiple work lines; determine the final obstacle avoidance driving path for each work line according to the requirements of the working environment; and connect the final obstacle avoidance driving paths for each work line end to end to generate a global obstacle avoidance driving path.

[0215] The specific implementation method of the obstacle avoidance path generation device for multiple obstacles provided in this disclosure can be found in the description of the obstacle avoidance path generation method for multiple obstacles provided in this disclosure, and will not be repeated here.

[0216] Compared with the prior art, the embodiments disclosed herein can not only meet the obstacle avoidance requirements of agricultural machinery vehicles, but also achieve minimal area loss while generating multiple obstacle avoidance paths for specific tasks and environments.

[0217] Another embodiment of this disclosure relates to an electronic device, such as Figure 15 As shown, it includes:

[0218] At least one processor 1501; and,

[0219] Memory 1502 is communicatively connected to at least one processor 1501; wherein,

[0220] The memory 1502 stores instructions that can be executed by at least one processor 1501, which enables the at least one processor 1501 to perform the obstacle avoidance path generation method for multiple obstacles described in the above embodiments.

[0221] The memory and processor are connected via a bus, which can include any number of interconnecting buses and bridges, connecting various circuits of one or more processors and memories. The bus can also connect various other circuits, such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and will not be described further herein. The bus interface provides an interface between the bus and the transceiver. The transceiver can be a single element or multiple elements, such as multiple receivers and transmitters, providing a unit for communicating with various other devices over a transmission medium. Data processed by the processor is transmitted over the wireless medium via an antenna, which further receives data and transmits it to the processor.

[0222] The processor manages the bus and general processing, and also provides various functions, including timing, peripheral interfaces, voltage regulation, power management, and other control functions. Memory is used to store data used by the processor during operation.

[0223] Another embodiment of this disclosure relates to a computer-readable storage medium storing a computer program that, when executed by a processor, implements the obstacle avoidance path generation method for multiple obstacles described in the above embodiments.

[0224] That is, those skilled in the art will understand that all or part of the steps in the methods described in the above embodiments can be implemented by a program instructing related hardware. This program is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods described in the various embodiments of this disclosure. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, a portable hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0225] Those skilled in the art will understand that the above embodiments are specific implementations of this disclosure, and in practical applications, various changes can be made to them in form and detail without departing from the spirit and scope of this disclosure.

Claims

1. A method for generating obstacle avoidance paths for multiple obstacles, characterized in that, The method for generating obstacle avoidance paths for multiple obstacles includes: Obtain the coordinates of the outline points of each obstacle; The step of generating the minimum convex hull is as follows: Based on the coordinates of the contour points, determine the minimum convex hull point set for each obstacle. The step of generating obstacle avoidance path boundaries is as follows: Based on the minimum convex hull point set, the preset working width, and the minimum turning radius of the vehicle, the obstacle avoidance path boundary corresponding to each obstacle is determined. Step to determine whether the obstacle avoidance path boundaries intersect: Determine whether the boundaries of each obstacle avoidance path intersect. If so, generate a new obstacle avoidance path boundary according to the first preset rule. Determine whether the original planned driving path will collide with the boundaries of each of the aforementioned obstacle avoidance paths for each operation: If so, then based on the original planned driving path and the obstacle avoidance path boundary, multiple obstacle avoidance planning path segments are generated, and it is determined whether each obstacle avoidance planning path segment intersects: if so, a new obstacle avoidance planning path segment is generated according to the second preset rule; if not, an obstacle avoidance driving path is generated based on each obstacle avoidance planning path segment. If not, it means that the corresponding work line does not need to generate an obstacle avoidance path, and the corresponding original planned driving path is executed; The step of generating a new obstacle avoidance path boundary according to the first preset rule includes: merging the minimum convex hull points of each obstacle intersecting the obstacle avoidance path boundary into a convex polygon obstacle; determining the obstacle avoidance path boundary corresponding to the convex polygon obstacle based on the step of generating the minimum convex hull and the step of generating the obstacle avoidance path boundary; and repeating the step of determining whether the obstacle avoidance path boundaries intersect until each of the obstacle avoidance path boundaries does not intersect with any other one or both. The step of generating a new obstacle avoidance planning path segment according to the second preset rule includes: merging the obstacles corresponding to the intersecting obstacle avoidance planning path segments into a new obstacle; determining the obstacle avoidance path boundary corresponding to the new obstacle based on the step of generating the minimum convex hull and the step of generating the obstacle avoidance path boundary, and re-executing the step of determining whether the obstacle avoidance path boundaries intersect. The generation method further includes: when there are multiple obstacle avoidance driving paths, calculating the total path length of each obstacle avoidance driving path; taking the obstacle avoidance driving path with the smallest total path length and satisfying a preset condition as the final obstacle avoidance driving path; wherein, the preset condition includes that the angle between the planned path heading of the obstacle avoidance driving path and the vehicle operation direction does not exceed 90 degrees.

2. The obstacle avoidance path generation method for multiple obstacles according to claim 1, characterized in that, The step of generating a new obstacle avoidance path boundary according to the first preset rule includes: The curvature circle with the minimum turning radius of the vehicle is tangent to each of the intersecting obstacle avoidance path boundaries, and the arcs of the curvature circle between each tangent point are combined with each of the intersecting obstacle avoidance path boundaries to form a new obstacle avoidance path boundary.

3. The obstacle avoidance path generation method for multiple obstacles according to claim 1, characterized in that, The step of generating a new obstacle avoidance planning path segment according to the second preset rule includes: The curvature circle with the minimum turning radius of the vehicle is tangent to the obstacle avoidance path boundary connected by each of the intersecting obstacle avoidance planning path segments. The arcs of the curvature circle between each tangent point are then combined with the obstacle avoidance path boundary connected by each of the intersecting obstacle avoidance planning path segments to form a new obstacle avoidance planning path segment.

4. The obstacle avoidance path generation method for multiple obstacles according to any one of claims 1 to 3, characterized in that, The obstacle avoidance path generation method for multiple obstacles also includes: When the original planned driving path includes multiple work rows, at least one obstacle avoidance driving path is generated for each work row. Based on the requirements of the working environment, determine the final obstacle avoidance driving path corresponding to each of the work lines; Connect the final obstacle avoidance paths corresponding to each of the aforementioned work rows end to end to generate a global obstacle avoidance path.

5. A multi-obstacle path avoidance generation device, characterized in that, The obstacle avoidance path generation device is used to perform the obstacle avoidance path generation method for any one of claims 1 to 4, wherein the obstacle avoidance path generation device comprises: The acquisition module is used to acquire the coordinates of the outline points of each obstacle. The first generation module is used to determine the minimum convex hull point set of each obstacle based on the coordinates of the contour points; The second generation module is used to determine the obstacle avoidance path boundary corresponding to each obstacle based on the minimum convex hull point set, the preset working width, and the minimum turning radius of the vehicle. The first judgment module is used to perform the step of judging whether the obstacle avoidance path boundaries intersect: judging whether the boundaries of each obstacle avoidance path intersect; if so, generating a new obstacle avoidance path boundary according to the first preset rule. The second judgment module is used to determine, on a per-operation basis, whether the original planned driving path will collide with the boundaries of each obstacle avoidance path: If so, then based on the original planned driving path and the obstacle avoidance path boundary, multiple obstacle avoidance planning path segments are generated, and it is determined whether each obstacle avoidance planning path segment intersects: if so, a new obstacle avoidance planning path segment is generated according to the second preset rule; if not, an obstacle avoidance driving path is generated based on each obstacle avoidance planning path segment. If not, it means that the corresponding work line does not need to generate an obstacle avoidance path, and the corresponding original planned driving path will be executed.

6. An electronic device, characterized in that, include: At least one processor; as well as, A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the obstacle avoidance path generation method for multiple obstacles as described in any one of claims 1 to 4.

7. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the obstacle avoidance path generation method for multiple obstacles as described in any one of claims 1 to 4.

Citation Information

Patent Citations

  • Optimization degree determination algorithm of automatic driving system

    CN116679713A

  • Travel route generating method for unmanned vehicle

    US20100076640A1