A sampling-based dubins curve obstacle avoidance method

CN117590846BActive Publication Date: 2026-08-21SOUTHWEST CHINA RES INST OF ELECTRONICS EQUIP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202311507818.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-11-10
Publication Date
2026-08-21
Estimated Expiration
2043-11-10

AI Technical Summary

Technical Problem

[0004]本发明旨在提供一种基于采样的杜宾斯曲线避障方法,以解决杜宾斯曲线很难与全局路径规划结合进行避障的问题

Benefits of technology

[0047] 1. This invention takes into account the dynamic and mechanical characteristics of the UAV itself, so that the constructed Dobbins curve meets the constraint of the UAV's minimum turning radius. By optimizing the path through dynamic programming, the trajectory is guaranteed to be smooth and can effectively avoid obstacles, thus solving the problem that the Dobbins curve is difficult to combine with global path planning for obstacle avoidance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117590846B_ABST
    Figure CN117590846B_ABST
Patent Text Reader

Abstract

The application provides a Dubins curve obstacle avoidance method based on sampling, comprising the following steps: step 1, sampling is performed between a starting point and an ending point to obtain N-stage sampling points, each sampling point has position information and heading information, and sampling points in a forbidden flight area need to be removed from the obtained N-stage sampling points; step 2, Dubins curves are generated for adjacent-stage sampling points; the Dubins curve is composed of a circular arc segment and a straight line segment; step 3, collision detection is performed on each Dubins curve; and step 4, a path is dynamically planned based on each Dubins curve and the collision detection result of the Dubins curve. The application considers the dynamic characteristics and mechanical characteristics of the unmanned aerial vehicle, so that the constructed Dubins curve satisfies the constraint of the minimum turning radius of the unmanned aerial vehicle, the path is optimized through dynamic planning, the trajectory is smooth and the obstacles can be effectively avoided, and the problem that the Dubins curve is difficult to be combined with global path planning for obstacle avoidance is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of unmanned aerial vehicle (UAV) application technology, and more specifically, to a sampling-based Durbins curve obstacle avoidance method. Background Technology

[0002] Drones have demonstrated outstanding performance in various fields, especially in military reconnaissance, where they have shown unparalleled advantages. Before carrying out a reconnaissance mission, drones often plan a suitable path in advance, and how to plan the path is the most important part of the entire mission.

[0003] Obstacle avoidance, a core component of path planning, is integrated throughout both global and local path planning. Existing global path planning algorithms, such as A*, D*, and RRT, possess strong obstacle avoidance capabilities. However, because they do not consider the dynamic and mechanical characteristics of the UAV itself, the resulting paths cannot be directly used on the UAV. Therefore, local path planning is needed for further optimization. Local path planning algorithms, such as Dobbins curves, Bézier curves, and B-spline curves, do not inherently possess obstacle avoidance properties. When using these algorithms for local path planning, collisions are still possible. In particular, for Dobbins curves, since their trajectory consists of circular arcs and straight line segments, the final generated path may completely deviate from the result generated by global path planning. Therefore, the traditional approach of global + local path planning is not suitable for Dobbins curve obstacle avoidance. Summary of the Invention

[0004] The present invention aims to provide a sampling-based Durbins curve obstacle avoidance method to solve the problem that Durbins curves are difficult to combine with global path planning for obstacle avoidance.

[0005] This invention provides a sampling-based obstacle avoidance method using the Durbin curve, comprising the following steps:

[0006] Step 1: Scatter sampling points between the starting point and the ending point to obtain N stages of sampling points. Each sampling point has location information and heading information. Furthermore, among the obtained N stages of sampling points, sampling points located in no-fly zones need to be removed.

[0007] Step 2: The sampling points of adjacent stages generate a Durbins curve; the Durbins curve is composed of circular arc segments and straight line segments;

[0008] Step 3: Perform collision detection on each Durbins curve one by one;

[0009] Step 4: Dynamically plan the path based on each Dubins curve and its collision detection results.

[0010] Furthermore, the entire sampling process of the point-sampling is divided into longitudinal sampling and lateral sampling; wherein:

[0011] Longitudinal sampling involves selecting N longitudinal sampling points at fixed sampling intervals along the line connecting the start and end points.

[0012] Horizontal sampling is to take each vertical sampling point as the origin and extend outwards to both sides of the line connecting the start and end points at a fixed sampling interval to obtain M horizontal sampling points.

[0013] Each stage of sampling points includes one vertical sampling point and M corresponding horizontal sampling points.

[0014] Preferably, the longitudinal sampling interval is set to n times the minimum turning radius; the lateral sampling interval is set to 1 to 3 km; and the number of lateral sampling points does not exceed 10.

[0015] Furthermore, the heading of each sampling point is the direction pointing to the sampling point of its adjacent stage and aligned with it, and the heading of the sampling points in the Nth stage is the direction pointing to the endpoint.

[0016] Furthermore, when performing collision detection between a straight line segment in the Dubins curve and a no-fly zone of a polygon, given the equation of the straight line segment (line) and its endpoints P1 and P2, and the vertex set of the polygon (vertex_set), step 3 includes the following sub-steps:

[0017] Step 3-1-1: Obtain the set of line equations for each side of the polygon from the set of polygon vertices vertex_set;

[0018] Step 3-1-2: Determine whether the line segment line intersects with any edge in the set of line equations edge_set of the polygon. If it does, the line segment line collides with the polygon, and the collision detection ends; otherwise, jump to step 3-1-3.

[0019] Step 3-1-3: Determine whether the endpoints P1 and P2 of the line segment are not inside the polygon. If they are, the line segment collides with the polygon; otherwise, there is no collision, and the collision detection ends.

[0020] Furthermore, when performing collision detection between the arc segment in the Dubins curve and the no-fly zone of the polygon, given the endpoints P1 and P2 of the arc segment arc, the center O of the arc segment arc, and the vertex set of the polygon vertex set, step 3 includes the following sub-steps:

[0021] Step 3-2-1: Obtain the set of line equations for each side of the polygon from the set of polygon vertices vertex_set;

[0022] Step 3-2-2: Determine whether the arc segment arc intersects with any edge in edge_set. If it does, the arc segment arc collides with the polygon; otherwise, there is no collision, and the collision detection ends.

[0023] Furthermore, when a collision detection is performed between a straight line segment in the Dubins curve and a circular no-fly zone, given the equation of the straight line segment and its endpoints P1 and P2, as well as the center O and radius R of the circle, step 3 includes the following sub-steps:

[0024] Step 3-3-1: Determine whether neither endpoint P1 nor P2 of the line segment is inside the circle. If so, skip to step 3-3-2; otherwise, the line segment collides with the circle, and the collision detection ends.

[0025] Step 3-3-2: Calculate the distance d between the center O of the circle and the line segment line;

[0026] Step 3-3-3: Determine if d>R is true. If yes, the line segment and the circle do not collide, and the collision detection ends; otherwise, jump to step 3-3-4.

[0027] Step 3-3-4: Calculate the projection point proj_point from the center O of the circle onto the line segment line;

[0028] Step 3-3-5: Determine whether the projection point proj_point is on the line segment line. If it is, the line segment line collides with the circle; otherwise, there is no collision, and the collision detection ends.

[0029] Furthermore, when performing collision detection between the arc segment in the Dubins curve and the circular no-fly zone, the endpoints P1 and P2 of the arc segment, the center O1, and the radius R1 are known; the center O2 and radius R2 of the circle are also known. Step 3 includes the following sub-steps:

[0030] Step 3-4-1: Determine whether neither endpoint P1 nor P2 of the arc segment is inside the circle. If so, skip to step 3-4-2; otherwise, it means that the arc segment arc has collided with the circle, and the collision detection ends.

[0031] Step 3-4-2: Calculate the distance d from the center O1 of the arc segment arc to the center O2 of the circle;

[0032] Step 3-4-3: Determine if d≤(R1+R2) is true. If yes, skip to step 3-4-4; otherwise, it means that the arc segment arc and the circle do not collide, and the collision detection ends.

[0033] Step 3-4-4: Obtain the equation of the line connecting the center O1 of the arc segment arc and the center O2 of the circle.

[0034] Steps 3-4-5: Determine whether the line equation (line) intersects with the arc segment (arc). If they do, the arc segment (arc) collides with the circle; otherwise, there is no collision, and the collision detection ends.

[0035] Furthermore, step 4 includes the following sub-steps:

[0036] Step 4-1, calculate the cost of each Durbins curve:

[0037] C total =C path +C collision

[0038] in;

[0039] C total For the total cost;

[0040] C path The path cost, specifically the length of the Durbins curve;

[0041] C collision The collision cost is represented as:

[0042]

[0043] That is, if there is no collision and the Dubins curve can be successfully generated, the collision cost is 0; otherwise, it is infinity.

[0044] Step 4-2: Select the Durbins curve with the lowest cost in each stage and connect them to form the final trajectory.

[0045] Furthermore, if a collision still occurs in the final trajectory, the sampling interval for point sampling is increased, and steps 1 to 4 are executed again.

[0046] In summary, due to the adoption of the above technical solution, the beneficial effects of the present invention are:

[0047] 1. This invention takes into account the dynamic and mechanical characteristics of the UAV itself, so that the constructed Dobbins curve meets the constraint of the UAV's minimum turning radius. By optimizing the path through dynamic programming, the trajectory is guaranteed to be smooth and can effectively avoid obstacles, thus solving the problem that the Dobbins curve is difficult to combine with global path planning for obstacle avoidance.

[0048] 2. This invention eliminates the global path planning step, simplifying the path planning process.

[0049] 3. In the dynamic programming process, designing a cost function based on the Durbins curve is beneficial for selecting the optimal trajectory. Attached Figure Description

[0050] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings in the embodiments will be briefly described below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0051] Figure 1 This is a flowchart of the sampling-based Durbins curve obstacle avoidance method in an embodiment of the present invention.

[0052] Figure 2 This is a schematic diagram of point sampling in an embodiment of the present invention. Figure 1 .

[0053] Figure 3 This is a schematic diagram of point sampling in an embodiment of the present invention. Figure 2 .

[0054] Figure 4 This is a schematic diagram of point sampling in an embodiment of the present invention. Figure 3 .

[0055] Figure 5 This is a schematic diagram of the Durbins curve in an embodiment of the present invention.

[0056] Figure 6 This is a schematic diagram of the RSL-type Durbins curve in an embodiment of the present invention.

[0057] Figure 7 This is a schematic diagram showing that the sampling points are aligned in the same direction in an embodiment of the present invention.

[0058] Figure 8 This is a schematic diagram illustrating the generation of a Durbins curve with consistent sampling point directions in an embodiment of the present invention.

[0059] Figure 9 This is a flowchart of the collision detection process in an embodiment of the present invention.

[0060] Figure 10 This is a flowchart illustrating the collision detection process between a straight line segment in the Durbins curve and a polygonal no-fly zone in an embodiment of the present invention.

[0061] Figure 11 This is a flowchart illustrating the collision detection process between the circular arc segment of the Durbins curve and the polygonal no-fly zone in an embodiment of the present invention.

[0062] Figure 12 This is a flowchart illustrating the collision detection process between a straight line segment of the Durbins curve and a circular no-fly zone in an embodiment of the present invention.

[0063] Figure 13 This is a flowchart illustrating the collision detection process between the circular arc segment of the Durbins curve and the circular no-fly zone in an embodiment of the present invention.

[0064] Figure 14 This is a schematic diagram illustrating how the trajectories generated by the starting point and ending point under the current flight direction in this embodiment of the invention will always collide with the no-fly zone.

[0065] Figure 15 This is a diagram illustrating the obstacle avoidance effect of the sampling-based Dubins curve obstacle avoidance method in this embodiment of the invention, which only considers circular no-fly zones.

[0066] Figure 16 The diagram shows the obstacle avoidance effect of the sampling-based Dubins curve obstacle avoidance method in this embodiment of the invention, considering circular / polygonal no-fly zones.

[0067] Figure 17 This is a diagram illustrating the effect of the sampling-based Dubins curve obstacle avoidance method in this embodiment of the invention when performing a surface area reconnaissance task.

[0068] Figure 18a This is a diagram illustrating the effect of using only the path generated by dynamic programming in an embodiment of the present invention, without considering the mechanical characteristics of the drone.

[0069] Figure 18b This is a diagram showing the optimized effect of the sampling-based Dubins curve obstacle avoidance method in an embodiment of the present invention. Detailed Implementation

[0070] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. The components of the embodiments of the present invention described and shown in the accompanying drawings can generally be arranged and designed in various different configurations.

[0071] Therefore, the following detailed description of the embodiments of the invention provided in the accompanying drawings is not intended to limit the scope of the claimed invention, but merely to illustrate selected embodiments of the invention. All other embodiments obtained by those skilled in the art based on the embodiments of the invention without inventive effort are within the scope of protection of the invention.

[0072] Example

[0073] Design Principle: Considering the dynamic and mechanical characteristics of the UAV, the constructed Dobbins curve satisfies the constraint of the UAV's minimum turning radius. Dynamic programming is used to optimize the path, ensuring a smooth trajectory and effective obstacle avoidance, thus solving the problem of combining the Dobbins curve with global path planning for obstacle avoidance. Figure 1 As shown, this embodiment proposes a sampling-based Durbins curve obstacle avoidance method, which includes the following steps:

[0074] Step 1, Sampling: Sampling is performed between the starting point and the ending point to obtain N sampling points. For example... Figure 2 As shown, the entire sampling process of the point-scattering sampling is divided into longitudinal sampling and lateral sampling. Longitudinal sampling involves selecting N longitudinal sampling points at fixed sampling intervals along the line connecting the start and end points. Lateral sampling involves extending M lateral sampling points outwards from each longitudinal sampling point as the origin, at fixed sampling intervals to both sides of the line connecting the start and end points. Each stage of sampling includes one longitudinal sampling point and the corresponding M lateral sampling points. This method completes the longitudinal and lateral point-scattering sampling.

[0075] It is worth considering that in dynamic programming, if the sampling interval is too large, a high-quality trajectory cannot be obtained; however, if the sampling interval is too small, the overall computational load will increase significantly, thus compromising the real-time performance of the planning. Considering the size of the UAV combat scenario, in order to ensure that a satisfactory trajectory is output, this embodiment sets the longitudinal sampling interval to n times the minimum turning radius and the lateral sampling interval to 1–3 km. Furthermore, the number of lateral sampling points is preferably kept to no more than 10; otherwise, the entire dynamic programming process will consume significantly more computation time.

[0076] Since the trajectory between points in this embodiment is a Dobbins curve, given the characteristics of the Dobbins curve, each sampling point needs to have not only position information but also heading information. Specifically, the heading of each sampling point is the direction pointing to the sampling point in its adjacent stage and aligned with it, and the headings of the sampling points in the Nth stage are all pointing to the endpoint.

[0077] Another point to note is that during the sampling process, sampling points may be scattered into no-fly zones, such as... Figure 3 As shown in the diagram. In this case, any Durbins curve that starts or ends at these sampling points will inevitably collide with the no-fly zone, and these Durbins curves will certainly not meet the requirements. Therefore, sampling points in the no-fly zone need to be removed from the obtained N-stage sampling points. This reduces the traversal space in the dynamic programming and improves the solution speed. The filtered sampling points are shown in the diagram. Figure 4 As shown.

[0078] Step 2, Generate the Dobbins curve: Generate the Dobbins curve from the sampling points of adjacent stages. For example... Figure 5 As shown, the Dobins curve is the shortest path connecting a starting point and a terminal point, considering the direction, while satisfying curvature constraints. Depending on the position and direction of the starting and terminal points, multiple Dobins curves are feasible between the two points. Through permutation and combination, all possible generated Dobins curves can be integrated into a set:

[0079] D = {LSL, RSR, RSL, LSR, RLR, LRL}

[0080] Where L represents a circular motion in the counterclockwise direction, R represents a circular motion in the clockwise direction, and S represents a linear motion.

[0081] Compared to the typical Dubins curve composition of arc + straight line + arc (referred to as "CSC"), both RLR and LRL are composed of three arc segments (referred to as "CCC"). Considering the same turning radius, the distance produced by the CCC curve is longer than that of the CSC. Therefore, in this embodiment, only the implementation and application of the CSC Dubins curve are considered. That is to say, the Dubins curve described in this embodiment is composed of arc segments and straight line segments.

[0082] The Dopins curve is subject to a minimum turning radius constraint; if the distance between the start and end points is too close, the specified Dopins curve may not be generated. Figure 6 As shown, in ΔP1O1M, the length of line segment O1M, acting as the hypotenuse, must be greater than the right-angled side O1P1. However, the closer the starting point of the curve is to the ending point, the closer point M will be to point P1, until |O1M|=|O1P1|. At this point, the Dobins curve is in a critical generation state, meaning that if the distance between the starting and ending points becomes too close, this type of Dobins curve will not be generated. Therefore, it can be deduced that the condition for generating a Dobins curve is: |O1M|≥|O1P1|, that is, half the distance between the centers of the arc segments is greater than or equal to the minimum turning radius. Generally, to ensure the successful generation of a Dobins curve, a sufficiently long distance needs to be reserved between the starting and ending points. Based on engineering experience, 2.5 times the minimum turning radius is generally sufficient.

[0083] In practical applications, the optimal path between two vector points is not necessarily the Dobbins curve in certain specific situations. For example... Figure 7 As shown, when the starting direction and the ending direction are the same, if you still want to generate the Dubins curve, the result is as follows. Figure 8 As shown. Clearly, the generated Durbins curve in this case completely deviates from the requirement of the shortest path; the optimal path between the two points is a straight line segment. Therefore, in some special cases, step 2 considers generating the optimal path for sampling points in adjacent stages:

[0084] When the sampling points in adjacent stages are not aligned, a Dubins curve is generated as the optimal path.

[0085] When the sampling points in adjacent stages are in the same direction, the straight line segment directly connecting the sampling points is the optimal path.

[0086] Step 3, Collision Detection: Collision detection is performed on each Dobbins curve individually. Before performing obstacle avoidance, collision detection must be performed using obstacle information. The trajectory of a Dobbins curve consists of circular arc segments and straight line segments, while the shape of a no-fly zone (i.e., an obstacle) is either circular or polygonal. Therefore, collision detection essentially determines whether the circular arc segments and straight line segments intersect with circular or polygonal shapes. If they intersect, a collision has occurred; otherwise, no collision has occurred. To more intuitively illustrate the entire collision detection process, the following is given: Figure 9 The flowchart shown.

[0087] (1) When a line segment in the Dobbins curve is used for collision detection with a no-fly zone of a polygon, the equation of the line segment and the endpoints P1 and P2 of the line segment are known, as well as the vertex set of the polygon; for example Figure 10 As shown, step 3 includes the following sub-steps:

[0088] Step 3-1-1: Obtain the set of line equations for each side of the polygon from the set of polygon vertices vertex_set;

[0089] Step 3-1-2: Determine whether the line segment line intersects with any edge in the set of line equations edge_set of the polygon. If it does, the line segment line collides with the polygon, and the collision detection ends; otherwise, jump to step 3-1-3.

[0090] Step 3-1-3: Determine whether neither endpoint P1 nor P2 of the line segment is inside the polygon. If so, the line segment collides with the polygon; otherwise, there is no collision, and the collision detection ends.

[0091] (2) When performing collision detection between the circular arc segment in the Dubins curve and the no-fly zone of the polygon, the endpoints P1 and P2 of the circular arc segment arc, the center O of the circular arc segment arc, and the vertex set of the polygon are known; for example Figure 11 As shown, step 3 includes the following sub-steps:

[0092] Step 3-2-1: Obtain the set of line equations for each side of the polygon from the set of polygon vertices vertex_set;

[0093] Step 3-2-2: Determine whether the arc segment arc intersects with any edge in edge_set. If it does, the arc segment arc collides with the polygon; otherwise, there is no collision, and the collision detection ends.

[0094] (3) When a straight line segment in the Dobbins curve is used for collision detection with a circular no-fly zone, the equation of the straight line segment and its two endpoints P1 and P2, as well as the center O and radius R of the circle, are known; Figure 12 As shown, step 3 includes the following sub-steps:

[0095] Step 3-3-1: Determine whether neither endpoint P1 nor P2 of the line segment is inside the circle. If so, skip to step 3-3-2; otherwise, the line segment collides with the circle, and the collision detection ends.

[0096] Step 3-3-2: Calculate the distance d between the center O of the circle and the line segment line;

[0097] Step 3-3-3: Determine if d>R is true. If yes, the line segment and the circle do not collide, and the collision detection ends; otherwise, jump to step 3-3-4.

[0098] Step 3-3-4: Calculate the projection point proj_point from the center O of the circle onto the line segment line;

[0099] Step 3-3-5: Determine whether the projection point proj_point is on the line segment line. If it is, the line segment line collides with the circle; otherwise, there is no collision, and the collision detection ends.

[0100] (4) When the circular arc segment in the Dubins curve is used for collision detection with the circular no-fly zone, the endpoints P1 and P2 of the circular arc segment, the center O1, and the radius R1 are known; the center O2 and radius R2 of the circular circle are also known. Figure 13 As shown, step 3 includes the following sub-steps:

[0101] Step 3-4-1: Determine whether neither endpoint P1 nor P2 of the arc segment is inside the circle. If so, skip to step 3-4-2; otherwise, it means that the arc segment arc has collided with the circle, and the collision detection ends.

[0102] Step 3-4-2: Calculate the distance d from the center O1 of the arc segment arc to the center O2 of the circle;

[0103] Step 3-4-3: Determine if d≤(R1+R2) is true. If yes, skip to step 3-4-4; otherwise, it means that the arc segment arc and the circle do not collide, and the collision detection ends.

[0104] Step 3-4-4: Obtain the equation of the line connecting the center O1 of the arc segment arc and the center O2 of the circle.

[0105] Steps 3-4-5: Determine whether the line equation (line) intersects with the arc segment (arc). If they do, the arc segment (arc) collides with the circle; otherwise, there is no collision, and the collision detection ends.

[0106] In practical engineering applications, the starting and ending points of a trajectory are calculated based on the actual scenario. In this case, it cannot be guaranteed that the two points will be in reasonable positions to generate a collision-free circular trajectory. For example... Figure 14 As shown, the calculated trajectory generated by the start and end points under the current flight direction will always collide with the no-fly zone. Therefore, in order to avoid collisions, the positions of the start and end points should be dynamically adjusted, that is, the start point should move in the opposite direction of its travel and the end point should move along the current travel direction until no collision trajectory is generated.

[0107] Step 4, Dynamic Programming: Dynamically plan the path based on each Dobbins curve and its collision detection results. Dynamic programming is an optimization process that breaks down a whole problem into several sub-problems and is widely used in path planning. In this embodiment, dynamic programming is combined with Dobbins curves to ultimately output a trajectory that satisfies the mechanical characteristics of the UAV. Specifically, sampling points in adjacent stages are connected by Dobbins curves, and collision detection is performed on each Dobbins curve one by one. Candidate trajectories that collide or cannot generate Dobbins curves are eliminated through brute-force filtering, ultimately outputting a trajectory with the lowest cost.

[0108] Step 4 includes the following sub-steps:

[0109] Step 4-1, calculate the cost of each Durbins curve: The setting of the cost function is particularly important in the dynamic programming process. In this embodiment, the dynamic programming cost function is designed as follows:

[0110] C total =C path +C collision

[0111] in:

[0112] C total For the total cost;

[0113] C path The path cost, specifically the length of the Durbins curve;

[0114] C collisionThis represents the collision cost. The collision cost function is related to the collision detection results and the generation of the Durbins curve; therefore, the specific expression of the function is as follows:

[0115]

[0116] That is, if there is no collision and the Dubins curve can be successfully generated, the collision cost is 0; otherwise, it is infinity.

[0117] Step 4-2: During the dynamic programming process, trajectories that meet the requirements can be selected based on the cost function. The Durbins curve with the minimum cost in each stage is then connected to form the final trajectory.

[0118] If certain task scenarios are set too harshly, or the sampling points are not dense enough, the final trajectory selected by dynamic programming may still collide. In this case, it is necessary to increase the lateral sampling interval, repeat steps 1 to 4, re-sampling points, and then perform dynamic programming again until a trajectory that meets the requirements is obtained.

[0119] Example:

[0120] Set the initial and final coordinates of the drone and establish multiple no-fly zones (obstacles) along its flight path. Utilize the sampling-based Durbins curve obstacle avoidance method described above to plan the path.

[0121] like Figure 15 , Figure 16 As shown, considering both circular and polygonal no-fly zones, the sampling-based Durbins curve obstacle avoidance method is used to perform obstacle avoidance operations, resulting in a collision-free route that satisfies the minimum turning radius constraint for the UAV. The asterisks (*) represent sampling points; dynamic programming will search for an optimal route among these sampling points. Considering that the dynamic programming search space increases with the number of sampling points, leading to excessively long algorithm execution times and compromising real-time path planning, the method of removing sampling points falling within the no-fly zone and retaining valid sampling points significantly reduces the dynamic programming search space, improves algorithm efficiency, and ensures real-time planning.

[0122] like Figure 17 The image shows a scenario where a UAV performs obstacle avoidance during a reconnaissance mission over a surface area. The rectangular area represents the reconnaissance area, the circular area represents a no-fly zone, the S-curve represents the UAV's actual flight path, and the asterisks (*) represent local waypoints. During a surface reconnaissance mission, the UAV needs to fly the entire area using the shortest path and ensure its payload covers the entire area. However, due to the presence of no-fly zones within the reconnaissance area, the UAV prioritizes obstacle avoidance when approaching these zones. Utilizing a sampling-based Durbins curve obstacle avoidance method ensures the real-time generation of obstacle avoidance paths, thereby guaranteeing the successful completion of the reconnaissance mission.

[0123] like Figure 18a As shown, before optimization, the path generated solely using dynamic programming did not consider the mechanical characteristics of the drone, resulting in multiple corners and making it unusable as a direct path for the drone. Figure 18b As shown, after combining and optimizing the sampling-based Durbins curve obstacle avoidance method, the planned result is significantly more consistent with the actual flight path of the UAV. Therefore, the sampling-based Durbins curve obstacle avoidance method proposed in this invention has a more obvious advantage in path planning compared with simple dynamic planning.

[0124] The above description is merely a preferred embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A sampling-based obstacle avoidance method using the Dubins curve, characterized in that, Includes the following steps: Step 1: Scatter sampling points between the starting point and the ending point to obtain N stages of sampling points. Each sampling point has location information and heading information. Furthermore, among the obtained N stages of sampling points, sampling points located in no-fly zones need to be removed. Step 2: The sampling points of adjacent stages generate a Durbins curve; the Durbins curve is composed of circular arc segments and straight line segments; Step 3: Perform collision detection on each Durbins curve one by one; Step 4: Dynamically plan the path based on each Durbins curve and its collision detection results; The entire sampling process of the point-sampling is divided into longitudinal sampling and lateral sampling; wherein: Longitudinal sampling involves selecting N longitudinal sampling points at fixed sampling intervals along the line connecting the start and end points. Horizontal sampling is to take each vertical sampling point as the origin and extend outwards to both sides of the line connecting the start and end points at a fixed sampling interval to obtain M horizontal sampling points. Each stage of sampling points includes one vertical sampling point and M corresponding horizontal sampling points.

2. The sampling-based Durbins curve obstacle avoidance method according to claim 1, characterized in that, The longitudinal sampling interval is set to n times the minimum turning radius; the lateral sampling interval is set to 1~3km; and the number of lateral sampling points does not exceed 10.

3. The sampling-based Durbins curve obstacle avoidance method according to claim 1, characterized in that, The heading of each sampling point is the direction pointing to the sampling point in its adjacent stage and aligned with it. The headings of the sampling points in the Nth stage are all pointing to the end point.

4. The sampling-based Durbins curve obstacle avoidance method according to claim 1, characterized in that, When performing collision detection between a straight line segment in the Dubins curve and a no-fly zone of a polygon, given the equation of the straight line segment (line) and its endpoints P1 and P2, and the vertex set of the polygon (vertex_set), step 3 includes the following sub-steps: Step 3-1-1: Obtain the set of line equations for each side of the polygon from the set of polygon vertices vertex_set; Step 3-1-2: Determine whether the line segment line intersects with any edge in the set of line equations edge_set of the polygon. If it does, the line segment line collides with the polygon, and the collision detection ends; otherwise, jump to step 3-1-3. Step 3-1-3: Determine whether the endpoints P1 and P2 of the line segment are not inside the polygon. If they are, the line segment collides with the polygon; otherwise, there is no collision, and the collision detection ends.

5. The sampling-based Durbins curve obstacle avoidance method according to claim 1, characterized in that, When performing collision detection between the circular arc segment in the Dubins curve and the no-fly zone of the polygon, given the endpoints P1 and P2 of the circular arc segment arc, the center O of the circular arc segment arc, and the vertex set of the polygon vertex set, step 3 includes the following sub-steps: Step 3-2-1: Obtain the set of line equations for each side of the polygon from the set of polygon vertices vertex_set; Step 3-2-2: Determine whether the arc segment arc intersects with any edge in edge_set. If it does, the arc segment arc collides with the polygon; otherwise, there is no collision, and the collision detection ends.

6. The sampling-based Durbins curve obstacle avoidance method according to claim 1, characterized in that, When a straight line segment in the Dubins curve is used for collision detection with a circular no-fly zone, given the equation of the straight line segment and its endpoints P1 and P2, as well as the center O and radius R of the circle, step 3 includes the following sub-steps: Step 3-3-1: Determine whether neither endpoint P1 nor P2 of the line segment is inside the circle. If so, skip to step 3-3-2; otherwise, the line segment collides with the circle, and the collision detection ends. Step 3-3-2: Calculate the distance d between the center O of the circle and the line segment line; Step 3-3-3: Determine if d>R is true. If yes, the line segment and the circle do not collide, and the collision detection ends; otherwise, jump to step 3-3-4. Step 3-3-4: Calculate the projection point proj_point from the center O of the circle onto the line segment line; Step 3-3-5: Determine whether the projection point proj_point is on the line segment line. If it is, the line segment line collides with the circle; otherwise, there is no collision, and the collision detection ends.

7. The sampling-based Durbins curve obstacle avoidance method according to claim 1, characterized in that, When the arc segment in the Dubins curve is used for collision detection with the circular no-fly zone, the endpoints P1 and P2 of the arc segment, the center O1, and the radius R1 are known; the center O2 and radius R2 of the circle are also known. Step 3 includes the following sub-steps: Step 3-4-1: Determine whether neither endpoint P1 nor P2 of the arc segment is inside the circle. If so, skip to step 3-4-2; otherwise, it means that the arc segment arc has collided with the circle, and the collision detection ends. Step 3-4-2: Calculate the distance d from the center O1 of the arc segment arc to the center O2 of the circle; Step 3-4-3: Determine if d≤(R1 + R2) is true. If yes, skip to step 3-4-4; otherwise, it means that the arc segment arc and the circle do not collide, and the collision detection ends. Step 3-4-4: Obtain the equation of the line connecting the center O1 of the arc segment arc and the center O2 of the circle. Steps 3-4-5: Determine whether the line equation (line) intersects with the arc segment (arc). If they do, the arc segment (arc) collides with the circle; otherwise, there is no collision, and the collision detection ends.

8. The sampling-based Durbins curve obstacle avoidance method according to claim 1, characterized in that, Step 4 includes the following sub-steps: Step 4-1, calculate the cost of each Durbins curve: in; For the total cost; The path cost, specifically the length of the Durbins curve; The collision cost is represented as: That is, if there is no collision and the Dubins curve can be successfully generated, the collision cost is 0; otherwise, it is infinity. Step 4-2: Select the Durbins curve with the lowest cost in each stage and connect them to form the final trajectory.

9. The sampling-based Durbins curve obstacle avoidance method according to claim 8, characterized in that, If the final trajectory still results in a collision, increase the sampling interval of the sampling points and then re-execute steps 1 to 4.

Citation Information

Patent Citations

  • Unmanned vehicle obstacle avoidance method based on rapid expansion random tree

    CN109579854A