Aircraft dynamic obstacle avoidance method and system, aircraft and storage medium

By calculating gradient speed obstacles in real time and adjusting the aircraft speed, combining the A* algorithm and B-spline curve to optimize the trajectory, the problem of low obstacle avoidance accuracy in complex environments is solved, and the success rate and robustness of the aircraft are improved. .

CN119247971APending Publication Date: 2025-01-03GUANGDONG LAB OF ARTIFICIAL INTELLIGENCE & DIGITAL ECONOMY (SZ)
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411278879.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-12
Publication Date
2025-01-03

AI Technical Summary

Technical Problem

Traditional aircraft dynamic obstacle avoidance methods are low in accuracy and limited adaptability when denoting irregular-shaped obstacles, resulting in a low success rate of obstacle avoidance, especially in complex dynamic environments, which is difficult to accurately predict and avoid obstacles.

Method used

By obtaining the speed of the aircraft, boundary radius and the position and speed of dynamic obstacles in real time, calculate the gradient speed obstacles, adjust the speed of the aircraft to avoid obstacles, and use the A* algorithm and B-spline to optimize the trajectory to generate an optimized flight path To improve the success rate of obstacle avoidance.

Benefits of technology

It improves the success rate of aircraft obstacle avoidance, ensures that a safe distance from obstacles is maintained in a dynamic environment, and enhances the robustness and safety of aircraft.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119247971A_ABST
    Figure CN119247971A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of aircrafts. The invention discloses an aircraft dynamic obstacle avoidance method and system, an aircraft and a storage medium, which can improve the success rate of obstacle avoidance. The aircraft dynamic obstacle avoidance method comprises the following steps: acquiring the current speed of an aircraft, the boundary radius of the aircraft, the position of each dynamic obstacle in a plurality of dynamic obstacles, the speed of each dynamic obstacle and the boundary radius of each dynamic obstacle in real time; based on the current speed, the boundary radius of the aircraft, the position of a target dynamic obstacle, the speed of the target dynamic obstacle and the boundary radius of the target dynamic obstacle, a gradient velocity obstacle is obtained, and the target dynamic obstacle is any one of a plurality of dynamic obstacles; obtaining an anti-collision speed based on the gradient speed obstacle; and modifying the current speed into the anti-collision speed so as to avoid the dynamic obstacle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of aircraft technology, and more specifically, to an aircraft dynamic obstacle avoidance method, system, aircraft and storage medium. Background Art

[0002] Traditional methods for dynamic obstacle avoidance of aircraft usually combine environmental representation and trajectory planning to plan flight trajectories. Specifically, in terms of environmental representation, mainstream research uses methods such as DATMO to describe obstacles as regular shapes such as ellipsoids or cylinders. In terms of trajectory planning, model predictive control (MPC), MPC methods that increase the uncertainty of quadrotor self-positioning, and Euclidean signed distance field (ESDF) with time information are usually used to achieve trajectory planning. However, this method of environmental representation has low accuracy when representing irregularly shaped obstacles and has limited adaptability to unknown environments, making these trajectory planning methods inaccurate in predicting dynamic obstacles during the planning process, resulting in a low obstacle avoidance success rate. As a result, traditional methods for dynamic obstacle avoidance of aircraft are difficult to adapt to dynamic and complex environments. Summary of the invention

[0003] The purpose of the embodiments of the present application is to provide a method, system, aircraft and storage medium for dynamic obstacle avoidance of an aircraft, which can improve the success rate of obstacle avoidance. The embodiments of the present application are mainly implemented through the following technical solutions:

[0004] A first aspect of an embodiment of the present application provides a method for dynamic obstacle avoidance of an aircraft, comprising:

[0005] Acquire the current speed of the aircraft, the boundary radius of the aircraft, the position of each dynamic obstacle among multiple dynamic obstacles, the speed of each dynamic obstacle and the boundary radius of each dynamic obstacle in real time;

[0006] Obtaining a gradient speed obstacle based on the current speed, the boundary radius of the aircraft, the position of a target dynamic obstacle, the speed of the target dynamic obstacle, and the boundary radius of the target dynamic obstacle, wherein the target dynamic obstacle is any one of a plurality of dynamic obstacles;

[0007] Obtaining a collision avoidance speed based on the gradient speed barrier;

[0008] The current speed is modified to the collision avoidance speed to avoid the dynamic obstacle.

[0009] According to one embodiment of the present application, the step of obtaining a gradient speed obstacle based on the current speed, the boundary radius of the aircraft, the position of the target dynamic obstacle, the speed of the target dynamic obstacle, and the boundary radius of the target dynamic obstacle includes:

[0010] Obtaining a speed obstacle corresponding to the target dynamic obstacle based on the current speed, the boundary radius of the aircraft, the position of the target dynamic obstacle, the speed of the target dynamic obstacle, and the boundary radius of the target dynamic obstacle;

[0011] rasterizing the speed space of the aircraft to obtain a grid plane, and constructing a speed grid map by combining the grid plane and the speed obstacle;

[0012] The velocity grid map is processed based on a signed distance field to obtain the gradient velocity barrier.

[0013] According to one embodiment of the present application, the step of constructing a speed grid map by combining the grid plane and the speed obstacle includes:

[0014] Assigning a first value to a grid cell occupied by the speed obstacle in the grid plane;

[0015] Assigning a second value to the grid cells in the grid plane that are not occupied by the speed obstacle;

[0016] The velocity grid map is generated based on all grids and their corresponding first values ​​or second values.

[0017] According to one embodiment of the present application, the step of obtaining the collision avoidance speed based on the gradient speed barrier includes:

[0018] Uniformly sampling in the velocity space to obtain a plurality of random points;

[0019] Setting predetermined safety thresholds;

[0020] When the speed of the random point is greater than the predetermined safety threshold, adding the random point to a candidate list;

[0021] The gradient speed obstacle is used to select a target point from the candidate list, and the speed corresponding to the target point is used as the guiding speed;

[0022] The collision avoidance speed is obtained based on the guidance speed and the speed of the target dynamic obstacle.

[0023] According to one embodiment of the present application, the aircraft dynamic obstacle avoidance method further includes:

[0024] Obtaining the current position node of the aircraft;

[0025] Using the A* algorithm to search for the target location node of the aircraft with the current location node as the starting point;

[0026] After the A* algorithm searches for the target location node, searching for the parent node of the current location node in reverse order;

[0027] When the visual relationship between the parent node and the current position node is a target visual relationship, adding the current position node to a path set;

[0028] Taking the current position node as a new starting point, continue traversing in reverse order until the current position node is the target position node, and add the target position node to the path set;

[0029] planning a flight path according to each point in the path set;

[0030] The flight attitude of the aircraft is adjusted based on the flight path.

[0031] According to one embodiment of the present application, after the step of planning a flight path according to each point in the path set, the aircraft dynamic obstacle avoidance method further includes:

[0032] The flight path is optimized using a B-spline curve to generate a reference trajectory;

[0033] The reference trajectory is optimized by using the optimization model to obtain the optimized trajectory;

[0034] The flight attitude of the aircraft is adjusted based on the optimized trajectory.

[0035] According to one embodiment of the present application, the optimization model is constructed in the following manner:

[0036] Determining a control point to be optimized in the reference trajectory;

[0037] Determining a smoothness cost item, a collision cost item, and a feasibility cost item based on the control point to be optimized;

[0038] Setting a first weight of the smoothness cost item, a second weight of the collision cost item, and a third weight of the feasibility cost item;

[0039] The optimization model is constructed based on the smoothness cost item, the collision cost item, the feasibility cost item, the first weight, the second weight, and the third weight.

[0040] A second aspect of an embodiment of the present application provides an aircraft dynamic obstacle avoidance system, comprising:

[0041] An acquisition module, used for acquiring in real time the current speed of the aircraft, the boundary radius of the aircraft, the position of each dynamic obstacle among multiple dynamic obstacles, the speed of each dynamic obstacle and the boundary radius of each dynamic obstacle;

[0042] a gradient speed obstacle obtaining module, configured to obtain a gradient speed obstacle based on the current speed, the boundary radius of the aircraft, the position of a target dynamic obstacle, the speed of the target dynamic obstacle, and the boundary radius of the target dynamic obstacle, wherein the target dynamic obstacle is any one of a plurality of dynamic obstacles;

[0043] An anti-collision speed obtaining module, used for obtaining an anti-collision speed based on the gradient speed obstacle;

[0044] The modification module is used to modify the current speed to the anti-collision speed to avoid the dynamic obstacle.

[0045] According to a third aspect of an embodiment of the present application, an aircraft is provided, comprising a processor and a memory, wherein the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to execute the steps of the aircraft dynamic obstacle avoidance method provided in the first aspect of the embodiment of the present application.

[0046] In a fourth aspect of an embodiment of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium is used to store a computer program, wherein the computer program enables a computer to execute the steps of the aircraft dynamic obstacle avoidance method provided in the first aspect of the embodiment of the present application.

[0047] The beneficial effects of the embodiments of the present application include at least:

[0048] The embodiment of the present application changes the current speed of the aircraft in real time so that the aircraft can avoid collision with dynamic obstacles. Specifically, the present application obtains the current speed of the aircraft, the boundary radius of the aircraft, the position of each dynamic obstacle among multiple dynamic obstacles, the speed of each dynamic obstacle and the boundary radius of each dynamic obstacle in real time; based on the current speed, the boundary radius of the aircraft, the position of the target dynamic obstacle, the speed of the target dynamic obstacle and the boundary radius of the target dynamic obstacle, a gradient speed obstacle is obtained, wherein the target dynamic obstacle is any one of the multiple dynamic obstacles; based on the gradient speed obstacle, an anti-collision speed is obtained; and the current speed is modified to the anti-collision speed to avoid the dynamic obstacle. The modification of the current speed enables the aircraft to maintain an appropriate safety distance from the dynamic obstacle. Therefore, compared with the prior art, the embodiment of the present application can improve the success rate of obstacle avoidance.

[0049] Secondly, after modifying the current speed, the present application will generate an optimized trajectory to adjust the flight posture of the aircraft, thereby further improving the success rate of obstacle avoidance and ensuring the safety of the aircraft. BRIEF DESCRIPTION OF THE DRAWINGS

[0050] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the conventional technology, the drawings required for use in the embodiments or the conventional technology descriptions are briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0051] Figure 1 A flowchart of the aircraft dynamic obstacle avoidance method of the present invention in some embodiments;

[0052] Figure 2 A flowchart of the aircraft dynamic obstacle avoidance method of the present invention in some embodiments;

[0053] Figure 3a is the obstacle environment map;

[0054] Figure 3b For Figure 3a The obstacle map observed in

[0055] Figure 3c For Figure 3b The velocity grid corresponding to the observed obstacles in ;

[0056] Figure 3d For Figure 3c The corresponding gradient speed obstacle map;

[0057] Figure 4a A reference diagram for the initial stage of aircraft collision avoidance;

[0058] Figure 4b A reference map for aircraft to avoid obstacles;

[0059] Figure 4c A reference map for the aircraft to reach the target location node;

[0060] Figure 5a A reference image for the aircraft's obstacle avoidance process;

[0061] Figure 5b A reference image for the aircraft's obstacle avoidance process;

[0062] Figure 5c A reference image for the aircraft's obstacle avoidance process;

[0063] Figure 6 A reference image for the aircraft's obstacle avoidance process;

[0064] Figure 7 A block diagram of the aircraft dynamic obstacle avoidance system of the present invention in some embodiments;

[0065] Figure 8FIG. 5 is a block diagram of an aircraft of the present invention in some embodiments. DETAILED DESCRIPTION

[0066] In order to make the above-mentioned purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are described in detail below in conjunction with the accompanying drawings. In the following description, many specific details are set forth to facilitate a full understanding of the present application. However, the present application can be implemented in many other ways different from those described herein, and those skilled in the art can make similar improvements without violating the connotation of the present application, so the present application is not limited by the specific embodiments disclosed below.

[0067] It should be noted that the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of this application, the meaning of "plurality" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined.

[0068] The terms "exemplary" or "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.

[0069] The terms "comprises," "includes," or any other variations thereof are intended to cover a non-exclusive inclusion, for example, a process, method, system, product, or apparatus that comprises a series of steps or elements is not necessarily limited to those steps or elements explicitly listed but may include other steps or elements not explicitly listed or inherent to such process, method, product, or apparatus.

[0070] The term "velocity obstacle (VO)" refers to the set of speeds at which an aircraft will collide with other objects (such as other aircraft or obstacles) if it maintains its current speed or a specific speed range within a certain period of time in the future.

[0071] Unless otherwise defined, all technical and scientific terms used in the specification of this application have the same meaning as those commonly understood by those skilled in the art to which this application belongs. The terms used in the specification of this application are only for the purpose of describing specific embodiments and are not intended to limit this application. The term "and / or" used in the specification of this application includes any and all combinations of one or more related listed items.

[0072] The specific implementation of the present application is further described below in conjunction with the accompanying drawings.

[0073] <Aircraft dynamic obstacle avoidance method>

[0074] like Figure 1 FIG. 1 is a flow chart of a method for dynamic obstacle avoidance of an aircraft provided in an embodiment of the present application. Figure 1 In the method, the aircraft dynamic obstacle avoidance method includes:

[0075] S1. Acquire in real time the current speed of the aircraft, the boundary radius of the aircraft, the position of each dynamic obstacle among multiple dynamic obstacles, the speed of each dynamic obstacle, and the boundary radius of each dynamic obstacle.

[0076] In the embodiment of the present application, the aircraft is a quad-rotor aircraft (quad-rotor drone). The aircraft senses the surrounding environment through onboard sensors, that is, the current speed, the boundary radius of the aircraft, the position of each dynamic obstacle, the speed of each dynamic obstacle, and the boundary radius of each dynamic obstacle are obtained through onboard sensors.

[0077] Furthermore, the present application utilizes the framework of the particle map and adopts the density-based spatial clustering of applications with noise (DBSCAN) algorithm to extract the position and velocity of each dynamic obstacle in the environment, which can reduce the impact of noise on the method.

[0078] S2. Obtain a gradient speed obstacle based on the current speed, the boundary radius of the aircraft, the position of a target dynamic obstacle, the speed of the target dynamic obstacle, and the boundary radius of the target dynamic obstacle, wherein the target dynamic obstacle is any one of a plurality of dynamic obstacles.

[0079] Furthermore, the S2 step includes:

[0080] S21. Obtain a speed obstacle corresponding to the target dynamic obstacle based on the current speed, the boundary radius of the aircraft, the position of the target dynamic obstacle, the speed of the target dynamic obstacle, and the boundary radius of the target dynamic obstacle.

[0081] In the embodiment of the present application, the speed barrier corresponding to the target dynamic obstacle is defined as follows: Among them, VO i represents the speed obstacle corresponding to the target dynamic obstacle, that is, the speed obstacle of the ith dynamic obstacle; v represents the speed of the target dynamic obstacle, that is, the speed of the ith dynamic obstacle; Indicates the existence of a mathematical term; t represents time, and the value of t is t 0 and t fD represents the abbreviation of dynamic obstacle, which is used to distinguish the speed of the target dynamic obstacle from the current speed; represents the position of the target dynamic obstacle, that is, the position of the ith dynamic obstacle; p m represents the current speed, that is, the speed of the aircraft; represents the boundary radius of the target dynamic obstacle, that is, the boundary radius of the ith dynamic obstacle; r m represents the boundary radius of the aircraft; is a three-dimensional vector set, each element of which is a real number; and R is a real number set.

[0082] The form D(p,r) represents an open disk with center p and radius r.

[0083] Furthermore, in the embodiment of the present application, the boundary equation of the speed obstacle corresponding to the target dynamic obstacle is defined as follows:

[0084] Av = b; where

[0085]

[0086] v is the speed of the target dynamic obstacle, that is, the speed of the ith dynamic obstacle; k 1 , k 2 and k 3 is the slope of the boundary equation; b 1 and b 2 is the intercept of the boundary equation on the velocity plane; a, b, c, d and Δ are parameter representations for simplifying calculation; represents the position of the target dynamic obstacle on the x-axis, that is, the position of the ith dynamic obstacle on the x-axis; represents the position of the target dynamic obstacle on the y-axis, that is, the position of the ith dynamic obstacle on the y-axis; t 0 and t f The meaning is the same as above, so it will not be repeated here.

[0087] The embodiment of the present application calculates each dynamic obstacle and obtains the speed barrier of each dynamic obstacle.

[0088] S22, rasterizing the speed space of the aircraft to obtain a grid plane, and constructing a speed grid map by combining the grid plane and the speed obstacle.

[0089] In the embodiment of the present application, the step of rasterizing the velocity space of the aircraft can be understood as mapping the velocity space to a grid space, and this step can be achieved by a method based on an occupied grid.

[0090] The velocity space is used to calculate the collision-free velocity (also known as the collision-avoiding velocity). In practical applications, the velocity space can be transformed into a coordinate plane. There are many points on the coordinate plane, and each point has a corresponding coordinate, which represents a velocity vector. For an aircraft, the values ​​of these points correspond to the velocity magnitude of the aircraft on the X-axis and the Y-axis.

[0091] The velocity grid map is used for environment representation.

[0092] Furthermore, the step of constructing a speed grid map by combining the grid plane and the speed obstacle comprises:

[0093] S221. Assign a first value to the grid occupied by the speed obstacle in the grid plane.

[0094] The first value is set to 1. In other implementations, the value of the first value may be determined by those skilled in the art according to actual needs.

[0095] The grid occupied by the speed barrier can be referenced Figure 3c Part number a in the middle.

[0096] S222: Assign a second value to the grid cells in the grid plane that are not occupied by the speed obstacle.

[0097] The second value is set to 0. In other implementations, the value of the first value may be determined by those skilled in the art according to actual needs.

[0098] Grids not occupied by the speed barrier can be referenced Figure 3c Part b in the label.

[0099] S223: Generate the velocity grid map based on all grids and their corresponding first values ​​or second values.

[0100] Furthermore, the velocity grid diagram is represented as VOgrid, which can be expressed as the following formula:

[0101]

[0102] Wherein, i is the horizontal coordinate of the grid plane, j is the vertical coordinate of the grid plane, and VO is the speed obstacle corresponding to the target dynamic obstacle.

[0103] S23. Process the velocity grid map based on the signed distance field to obtain the gradient velocity barrier.

[0104] The Signed Distance Field (SDF) is an implicit geometric representation method used to describe the distance from a point in space to the boundary of a geometric shape.

[0105] The embodiment of the present application maps the distance information in the symbolic distance field to each grid cell of the velocity grid map to determine the distance from each grid cell to the nearest dynamic obstacle. That is, the value of each grid cell represents its distance to the nearest dynamic obstacle. Specifically, for grid cells located outside the dynamic obstacle, the distance is positive, and its size increases as the grid (i.e., the grid cell) approaches the dynamic obstacle. On the contrary, for grid cells within the dynamic obstacle, the distance is negative and decreases as the grid (i.e., the grid cell) approaches the center of the dynamic obstacle.

[0106] In the embodiment of the present application, the formula for the distance from the grid occupied by the speed obstacle to the nearest obstacle can be expressed as:

[0107]

[0108] Among them, d(x,y) represents the distance from the grid occupied by the speed obstacle to the nearest obstacle; x represents the horizontal coordinate of the grid occupied by the speed obstacle; y represents the vertical coordinate of the grid occupied by the speed obstacle; min means minimization; i and j are the coordinate indexes of the grid space, that is, the coordinate indexes of the grid in the grid plane; VOgrid is the speed grid map.

[0109] The application of the gradient speed barrier can solve the short-sightedness of the speed barrier, thereby effectively avoiding static obstacles and dynamic obstacles.

[0110] Further, the construction process of the gradient speed barrier can refer to Figure 3a , Figure 3b , Figure 3c and Figure 3d As shown, specifically, Figure 3a is the obstacle environment map, Figure 3a Each columnar structure in is an obstacle; Figure 3b For Figure 3a The observed obstacle map in Figure 3b The structure pointed to by the number 1 is the observed obstacle; Figure 3c For Figure 3b The velocity grid corresponding to the observed obstacle in , Figure 3cThe grid numbered 2 is occupied by the speed barrier, the grid numbered 3 is not occupied by the speed barrier; the grid numbered 4 is a dynamic obstacle, and the grid numbered 5 is an aircraft; Figure 3d For Figure 3c The gradient velocity obstacle map obtained by processing the medium velocity grid map is Figure 3d In the figure, number 6 is the inside of the gradient velocity barrier, number 7 is the outside of the gradient velocity barrier, number 8 is the velocity grid space (ie, the grid plane), number 9 is the dynamic obstacle, and number 10 is the aircraft.

[0111] In other embodiments, the steps of generating the speed barrier, the speed grid map and the gradient speed barrier may also refer to Figure 2 The dynamic obstacle avoidance part.

[0112] S3. Obtaining a collision avoidance speed based on the gradient speed barrier.

[0113] The anti-collision speed refers to the speed that the aircraft should take during the obstacle avoidance process, which is intended to safely avoid dynamic obstacles and maintain a safe distance from dynamic obstacles, while minimizing the deviation from the current speed and staying as close as possible to the aircraft's predetermined flight path.

[0114] Furthermore, the S3 step includes:

[0115] S31. Uniformly sample in the velocity space to obtain a plurality of random points.

[0116] S32, set a predetermined safety threshold. The predetermined safety threshold can be expressed as a v_safe parameter. The predetermined safety threshold is the value of the safe speed. Those skilled in the art can set the predetermined safety threshold according to actual needs.

[0117] It should be understood that the safe distance of the aircraft is controlled by the parameter v_safe.

[0118] S33, when the speed of the random point is greater than the predetermined safety threshold, adding the random point to a candidate list. The candidate list can be represented as GPoints, and GPoints give priority to points in the forward direction to ensure that the aircraft moves towards the target.

[0119] S34, using the gradient speed barrier to select a target point from the candidate list, and using the speed corresponding to the target point as the guiding speed.

[0120] Specifically, the present application uses the gradient speed obstacle to select the point closest to the current speed in the candidate list as the target point.

[0121] S35. Obtain the collision avoidance speed based on the guidance speed and the speed of the target dynamic obstacle.

[0122] Furthermore, the calculation formula of the anti-collision speed is:

[0123] v opt =argmin‖vv g ‖;

[0124] Among them, v opt represents the anti-collision speed, i.e., the collision-free speed or the optimal anti-collision speed; v represents the speed of the aircraft itself; v g represents the guiding velocity; argmin represents the search function ‖vv g ‖ is the parameter value that obtains the minimum value; ‖‖ represents the norm sign.

[0125] The calculation formula of the anti-collision speed is a cost function, and the gradient can be calculated by taking the derivative of the cost function. Exemplarily, the result of the cost function can be obtained through a closed-form solution.

[0126] The process of aircraft avoiding collision can refer to Figure 4a , Figure 4b and Figure 4c ,in, Figure 4a This is a reference diagram for the initial stage of the aircraft avoiding collision. Figure 4a Reference numeral 11 is an aircraft, reference numeral 12 is a dynamic obstacle, reference numeral 13 is the interior of the gradient velocity obstacle, and reference numeral 14 is the exterior of the gradient velocity obstacle; Figure 4b It is a reference map for aircraft to avoid obstacles. Figure 4b In the figure, reference numeral 15 is an aircraft, reference numeral 16 is a velocity sampling point (i.e., the random point), reference numeral 17 is a dynamic obstacle, reference numeral 18 is the interior of the gradient velocity obstacle, and reference numeral 19 is the exterior of the gradient velocity obstacle. Figure 4b The arrow in is the obstacle avoidance movement direction of the aircraft; Figure 4c is the reference map of the aircraft reaching the target location node. Figure 4c In the figure, reference numeral 20 is a dynamic obstacle, reference numeral 21 is an aircraft, reference numeral 22 is the outside of the gradient velocity obstacle, reference numeral 23 is a velocity sampling point (i.e., the random point), and reference numeral 24 is the inside of the gradient velocity obstacle. Figure 4c The arrow in is the obstacle avoidance movement direction of the aircraft.

[0127] S4. Modify the current speed to the anti-collision speed to avoid the dynamic obstacle.

[0128] Through the above technical solution, the embodiment of the present application changes the current speed of the aircraft in real time so that the aircraft can avoid collision with dynamic obstacles and maintain an appropriate safety distance from dynamic obstacles. Therefore, compared with the prior art, the embodiment of the present application can not only improve the success rate of obstacle avoidance, but also reduce the impact of perceived uncertainty, thereby improving the robustness of the aircraft.

[0129] In some embodiments, the aircraft dynamic obstacle avoidance method further includes:

[0130] S51. Obtain the current location node of the aircraft.

[0131] S52, using the A* algorithm to search for the target position node of the aircraft with the current position node as the starting point.

[0132] S53: After the A* algorithm searches for the target location node, search for the parent node of the current location node in reverse order.

[0133] S54: When the visual relationship between the parent node and the current position node is a target visual relationship, add the current position node to a path set.

[0134] The target visual relationship refers to the visual relationship of the longest visual path principle. Specifically, the discrete straight line generated by the A* algorithm does not collide with a dynamic obstacle, so it is considered that the current position node meets the longest visual path principle.

[0135] S55, taking the current position node as a new starting point and continuing to traverse in reverse order until the current position node is the target position node, and adding the target position node to the path set.

[0136] S56: Plan a flight path according to each point in the path set.

[0137] S57: Adjust the flight posture of the aircraft based on the flight path.

[0138] In the above process, the flight path generated by the A* algorithm is simplified to several key nodes, which improves the quality of the initial solution. At the same time, in order to ensure the safety of the aircraft, the generated flight path is checked in real time. If the target position node is located between dynamic obstacles, the flight path is truncated to ensure that the aircraft can remain in a safe position to perform the flight mission.

[0139] In some implementations, after step S56, the aircraft dynamic obstacle avoidance method further includes:

[0140] S61, optimizing the flight path using a B-spline curve to generate a reference trajectory.

[0141] It should be understood that the B-spline curve is a cubic B-spline curve.

[0142] In the embodiment of the present application, the B-spline curve is defined as:

[0143]

[0144] Where N is the number of control points. represents the basis function, u(t) represents the node vector, C i represents the i-th control point, Let Δt = Δu / β, where Δt represents the time variation, Δu represents the B-spline node variation, and β represents a mapping ratio between the spline parameters and the real time.

[0145] The embodiment of the present application defines the speed of the i-th control point as Among them, C i+1 represents the i+1th control point, C i represents the i-th control point, and Δt represents the time change.

[0146] The embodiment of the present application defines the acceleration of the i-th control point as Among them, V i+1 represents the velocity of the i+1th control point, V i represents the velocity of the ith control point, and Δt represents the time change.

[0147] The embodiment of the present application defines the acceleration of the i-th control point as: Among them, A i+1 represents the acceleration of the i+1th control point, A i represents the acceleration of the ith control point, and Δt represents the time change.

[0148] S62: Optimize the reference trajectory using the optimization model to obtain an optimized trajectory.

[0149] Furthermore, the optimization model is constructed by:

[0150] S621: Determine a control point to be optimized in the reference trajectory.

[0151] In the whole optimization process, since the basis function is constant, the embodiment of the present application optimizes the reference trajectory by optimizing the control points (that is, the control points to be optimized). The embodiment of the present application only optimizes the control points to be optimized. p ,C p+1 …,C N-p}, and ignore the other control points, that is, the first 3 control points at the beginning and the last 3 control points at the end. These six control points determine the boundary state and should not be changed during the optimization process.

[0152] S622: Determine a smoothness cost item, a collision cost item, and a feasibility cost item based on the control point to be optimized.

[0153] S623: Set a first weight of the smoothness cost item, a second weight of the collision cost item, and a third weight of the feasibility cost item.

[0154] S624: construct the optimization model based on the smoothness cost item, the collision cost item, the feasibility cost item, the first weight, the second weight, and the third weight.

[0155] Furthermore, the optimization model is defined as: minJ total =λ s J s +λ c J c +λ f J f Among them, J s represents the smoothness cost term, λ s represents the first weight, J c represents the collision cost term, λ c represents the second weight, J f represents the feasibility cost term, λ f Represents the third weight.

[0156] Furthermore, the embodiment of the present application promotes smoothness of the trajectory by focusing on minimizing the jerk (snap). Due to the inherent convex hull characteristics of B-splines, optimizing the control points is sufficient to ensure the smoothness of the entire trajectory. For simplicity, the embodiment of the present application omits the consideration of Δt, which means that the calculation method for defining the smoothness cost term is as follows:

[0157]

[0158] Among them, J s represents the smoothness cost term, N represents the number of control points, J i represents the acceleration of the ith control point, C i+3 represents the i+3th control point, C i+2 represents the i+2th control point, C i+1 represents the i+1th control point, C i represents the i-th control point, represents the partial derivative, Representation function Js About variable J i gradient.

[0159] The calculation formula of the collision cost term is as follows:

[0160]

[0161] Among them, J c represents the collision cost term, N represents the number of control points, and the function Aims to C i (i-th control point) turns from the nearby dynamic obstacle to the safe area, C i represents the i-th control point, d thr Indicates the threshold for dynamic obstacle removal, Representation function J c At control point C i The gradient at represents the partial derivative, d(C i ) means C i The distance between the reference trajectory and the nearest dynamic obstacle. The calculation formula of the collision cost term utilizes the convex hull property of the B-spline to ensure that the reference trajectory meets safety standards.

[0162] The calculation formula of the feasibility cost item is as follows:

[0163]

[0164] in, represents the maximum value comparison function, From this, we can understand express The derivative function of f represents the feasibility cost item; N represents the number of control points; represents the velocity of the i-th control point; Represents the square of the maximum velocity among all control points; represents the acceleration of the i-th control point; Represents the square of the maximum acceleration among all control points; represents the velocity gradient, The meaning and have the same meaning; represents partial derivative; and The meanings are the same as J f same, The meaning of C i same; The meaning of C i+1 same; The meaning and same; The meaning of C i+2 same; represents the acceleration gradient; Δt 2 and t 4 Indicates the time change.

[0165] The feasibility penalty cost term ensures that the trajectory meets the dynamic feasibility criteria, indicating that it does not exceed the maximum velocity and acceleration constraints.

[0166] It should be understood that the optimization model is an unconstrained gradient optimization problem, which can be solved quickly and in real time based on the quasi-Newton method.

[0167] S63: Adjust the flight posture of the aircraft based on the optimized trajectory.

[0168] Based on the optimized trajectory, the embodiment of the present application can further improve the success rate of obstacle avoidance and ensure the safety of the aircraft.

[0169] In some embodiments, the present application uses a receding horizon planning (RHP) framework for motion planning. The receding horizon planning framework is used to update environmental information in real time and adjust the planned trajectory based on the updated content. Figure 2 As shown, the embodiment of the present application includes three parts: dynamic perception, dynamic obstacle avoidance and trajectory planning. The present application uses the RHP strategy to initially regard the unknown environment as an empty environment. As the aircraft moves, the dynamic perception part of the aircraft continuously updates the environment point cloud (i.e. Figure 2 The point cloud in the dynamic occupancy grid map is combined with the distance measurement method to extract information, thereby gradually building a dynamic occupancy grid map of the environment. For the static part of the dynamic occupancy grid map, the Euclidean signed distance field is used to implement trajectory planning; for the dynamic part of the dynamic occupancy grid map, the position and speed of the current dynamic obstacle (that is, the target dynamic obstacle) are obtained by dynamic obstacle clustering for dynamic obstacle avoidance. This application uses the A* algorithm to search for paths in the static part and plan the flight path (that is, Figure 2 The A* path in the flight path is calculated, and the trajectory of the flight path is optimized so that the aircraft performs the flight mission according to the optimized trajectory. However, the flight path generated by the A* algorithm is often close to the surface of the obstacle, which is not conducive to safe flight. Therefore, in the trajectory planning process, the Euclidean signed distance field (ESDF) is used to adjust the nodes of the flight path to ensure that all nodes on the flight path maintain a safe distance from the obstacles. If there are no dynamic obstacles in the point cloud of the current environment, the control points can be calculated as follows:

[0170]

[0171] Among them, p curr is the current position of the aircraft; v curr is the speed of the aircraft; a curr is the acceleration of the aircraft; C 0 , C 1 and C 2 are the first three control points of the B-spline curve. These three control points are used to calculate the initial conditions of the trajectory, β and β 2 is the coefficient.

[0172] If a dynamic obstacle is detected in the current local map (i.e. the current environment information), then Figure 2 The dynamic obstacle avoidance part in will output the optimal avoidance speed (that is, the collision avoidance speed). Based on this, the calculation method of the initial control point is as follows:

[0173]

[0174] Among them, v opt is the optimal avoidance speed; p curr is the current position of the aircraft; curr is the acceleration of the aircraft; C 0 , C 1 and C 2 are the first three control points of the B-spline curve; β and β 2 is the coefficient.

[0175] The optimal avoidance speed v of this application opt Generated by the gradient velocity barrier GVO, this ensures that the reference trajectory can avoid observed dynamic obstacles. The present application changes the initial velocity (i.e., the current velocity) of each segment of the local trajectory, which only affects the initial state of the trajectory, thereby eliminating the necessity of compromise in back-end optimization. If there are only static obstacles in the local map, the aircraft only needs to maintain its current speed to adjust the desired trajectory. When static obstacles and dynamic obstacles appear at the same time, the aircraft will prioritize changing its speed to avoid dynamic obstacles, while adjusting the expected trajectory in the future only based on the presence of static obstacles. This strategy enables the aircraft to focus on avoiding observed dynamic obstacles, thereby significantly improving the success rate of the aircraft's obstacle avoidance.

[0176] For example, the obstacle avoidance process of the aircraft can refer to Figure 5a , Figure 5b and Figure 5c Specifically, Figure 5aIn the figure, an aircraft, two dynamic obstacles, two static obstacles and a destination are set, wherein the aircraft is a figure labeled F, the two dynamic obstacles are cuboids labeled DZ1 and DZ2, the two static obstacles are cuboids labeled JZ1 and JZ2, the destination is the dot pointed to by M, arrow S1 is the moving direction of the dynamic obstacle DZ1, and arrow S2 is the moving direction of the dynamic obstacle DZ2; Figure 5a In FIG. 1 , the aircraft F starts to move along the curved path toward the destination M. After a first preset time (e.g., 2 seconds), the aircraft moves along the curved path to Figure 5b As shown; during the movement of the aircraft F, the dynamic obstacles DZ1 and DZ2 are also moving. The specific moving positions of the dynamic obstacles DZ1 and DZ2 can be referred to Figure 5b After a second preset time (e.g., 5 seconds), the aircraft moves along the curved path to Figure 5c As shown; during the movement of the aircraft F, the dynamic obstacles DZ1 and DZ2 are also moving. The specific moving positions of the dynamic obstacles DZ1 and DZ2 can be referred to Figure 5c shown.

[0177] The aircraft's obstacle avoidance process can also be referred to Figure 6 Specifically, Figure 6 In the figure, an aircraft, two dynamic obstacles, two static obstacles and a destination are set, wherein the aircraft is a figure labeled F, the two dynamic obstacles are cuboids labeled DZ1 and DZ2, the two static obstacles are cuboids labeled JZ1 and JZ2, the destination is the dot pointed to by M, arrow S1 is the moving direction of the dynamic obstacle DZ1, and arrow S2 is the moving direction of the dynamic obstacle DZ2; Figure 6 In the example, each dynamic obstacle travels at a speed of about 1 m / s, trying to block the path of the aircraft, and the aircraft's task is to navigate toward the predetermined target (i.e., destination M) while avoiding static obstacles JZ1, static obstacles JZ2, dynamic obstacles DZ1, and dynamic obstacles DZ2, all without the need for a pre-built map. Figure 6 As shown, the vehicle successfully detects and tracks dynamic obstacles and effectively generates a trajectory that skillfully circumvents all encountered obstacles.

[0178] exist Figure 2 In the present application, a simulator is also used to develop, test or verify the dynamic obstacle avoidance part to improve the effectiveness of the dynamic obstacle avoidance method of the aircraft.

[0179] <Aircraft Dynamic Obstacle Avoidance System>

[0180] like Figure 7FIG. 1 is a block diagram of a dynamic obstacle avoidance system for an aircraft provided in the second aspect of an embodiment of the present application. Figure 7 In the embodiment, the aircraft dynamic obstacle avoidance system 700 includes:

[0181] The acquisition module 701 is used to acquire in real time the current speed of the aircraft, the boundary radius of the aircraft, the position of each dynamic obstacle among multiple dynamic obstacles, the speed of each dynamic obstacle and the boundary radius of each dynamic obstacle;

[0182] A gradient speed obstacle obtaining module 702 is used to obtain a gradient speed obstacle based on the current speed, the boundary radius of the aircraft, the position of a target dynamic obstacle, the speed of the target dynamic obstacle and the boundary radius of the target dynamic obstacle, wherein the target dynamic obstacle is any one of a plurality of dynamic obstacles;

[0183] An anti-collision speed obtaining module 703 is used to obtain an anti-collision speed based on the gradient speed obstacle;

[0184] The modification module 704 is used to modify the current speed to the anti-collision speed to avoid the dynamic obstacle.

[0185] <Aircraft>

[0186] like Figure 8 , which is a block diagram of an aircraft provided by the third aspect of the embodiment of the present application. Figure 8 In the embodiment, the aircraft 800 includes a processor 801 and a memory 802, the memory 802 is used to store computer programs, and the processor 801 is used to call and run the computer program stored in the memory 802 to execute the steps of the aircraft dynamic obstacle avoidance method provided in the first aspect of the above-mentioned embodiment of the present application.

[0187] <Computer Readable Storage Medium>

[0188] In a fourth aspect of an embodiment of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium is used to store a computer program, wherein the computer program enables a computer to execute the steps of the aircraft dynamic obstacle avoidance method provided in the first aspect of the embodiment of the present application.

[0189] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided by the present invention can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).

[0190] The technical features of the above embodiments can be combined without changing the basic principles of the present invention. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0191] The above embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the patent application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the scope of patent protection of the present application shall be subject to the attached claims.

Claims

1. A method for dynamic obstacle avoidance of an aircraft, characterized in that: include: Acquire the current speed of the aircraft, the boundary radius of the aircraft, the position of each dynamic obstacle among multiple dynamic obstacles, the speed of each dynamic obstacle and the boundary radius of each dynamic obstacle in real time; Obtaining a gradient speed obstacle based on the current speed, the boundary radius of the aircraft, the position of a target dynamic obstacle, the speed of the target dynamic obstacle, and the boundary radius of the target dynamic obstacle, wherein the target dynamic obstacle is any one of a plurality of dynamic obstacles; Obtaining a collision avoidance speed based on the gradient speed barrier; The current speed is modified to the collision avoidance speed to avoid the dynamic obstacle.

2. The method for dynamic obstacle avoidance of an aircraft according to claim 1, characterized in that: The step of obtaining the gradient speed obstacle based on the current speed, the boundary radius of the aircraft, the position of the target dynamic obstacle, the speed of the target dynamic obstacle and the boundary radius of the target dynamic obstacle comprises: Obtaining a speed obstacle corresponding to the target dynamic obstacle based on the current speed, the boundary radius of the aircraft, the position of the target dynamic obstacle, the speed of the target dynamic obstacle, and the boundary radius of the target dynamic obstacle; rasterizing the speed space of the aircraft to obtain a grid plane, and constructing a speed grid map by combining the grid plane and the speed obstacle; The velocity grid map is processed based on a signed distance field to obtain the gradient velocity barrier.

3. The aircraft dynamic obstacle avoidance method according to claim 2, characterized in that: The step of combining the grid plane and the speed barrier to construct a speed grid map comprises: Assigning a first value to a grid cell occupied by the speed obstacle in the grid plane; Assigning a second value to the grid cells in the grid plane that are not occupied by the speed obstacle; The velocity grid map is generated based on all grids and their corresponding first values ​​or second values.

4. The method for dynamic obstacle avoidance of an aircraft according to claim 2, characterized in that: The step of obtaining the collision avoidance speed based on the gradient speed barrier comprises: Uniformly sampling in the velocity space to obtain a plurality of random points; Setting predetermined safety thresholds; When the speed of the random point is greater than the predetermined safety threshold, adding the random point to a candidate list; The gradient speed obstacle is used to select a target point from the candidate list, and the speed corresponding to the target point is used as the guiding speed; The collision avoidance speed is obtained based on the guidance speed and the speed of the target dynamic obstacle.

5. The aircraft dynamic obstacle avoidance method according to claim 1, characterized in that: The aircraft dynamic obstacle avoidance method also includes: Obtaining the current position node of the aircraft; Using the A* algorithm to search for the target location node of the aircraft with the current location node as the starting point; After the A* algorithm searches for the target location node, searching for the parent node of the current location node in reverse order; When the visual relationship between the parent node and the current position node is a target visual relationship, adding the current position node to a path set; Taking the current position node as a new starting point, continue traversing in reverse order until the current position node is the target position node, and add the target position node to the path set; Planning a flight path according to each point in the path set; The flight attitude of the aircraft is adjusted based on the flight path.

6. The method for dynamic obstacle avoidance of an aircraft according to claim 5, characterized in that: After the step of planning a flight path according to each point in the path set, the aircraft dynamic obstacle avoidance method further includes: The flight path is optimized using a B-spline curve to generate a reference trajectory; The reference trajectory is optimized by using the optimization model to obtain the optimized trajectory; The flight attitude of the aircraft is adjusted based on the optimized trajectory.

7. The method for dynamic obstacle avoidance of an aircraft according to claim 6, characterized in that: The optimization model is constructed in the following manner: Determining a control point to be optimized in the reference trajectory; Determining a smoothness cost item, a collision cost item, and a feasibility cost item based on the control point to be optimized; Setting a first weight of the smoothness cost item, a second weight of the collision cost item, and a third weight of the feasibility cost item; The optimization model is constructed based on the smoothness cost item, the collision cost item, the feasibility cost item, the first weight, the second weight, and the third weight.

8. An aircraft dynamic obstacle avoidance system, characterized in that: include: An acquisition module, used for acquiring in real time the current speed of the aircraft, the boundary radius of the aircraft, the position of each dynamic obstacle among multiple dynamic obstacles, the speed of each dynamic obstacle and the boundary radius of each dynamic obstacle; a gradient speed obstacle obtaining module, configured to obtain a gradient speed obstacle based on the current speed, the boundary radius of the aircraft, the position of a target dynamic obstacle, the speed of the target dynamic obstacle, and the boundary radius of the target dynamic obstacle, wherein the target dynamic obstacle is any one of a plurality of dynamic obstacles; An anti-collision speed obtaining module, used for obtaining an anti-collision speed based on the gradient speed obstacle; The modification module is used to modify the current speed to the anti-collision speed to avoid the dynamic obstacle.

9. An aircraft, characterized in that: include: A processor and a memory, the memory being used to store a computer program, the processor being used to call and run the computer program stored in the memory to execute the steps of the aircraft dynamic obstacle avoidance method as described in any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: Used to store a computer program, wherein the computer program enables a computer to execute the steps of the aircraft dynamic obstacle avoidance method as described in any one of claims 1 to 7.

Citation Information

Cited By

  • Path planning method and device for charging robot, storage medium and program product

    CN119806166A