A route-based motion resistance differential planning method and device
By using a flight path-based motion drag differential programming method, the problem of insufficient adaptability of velocity and acceleration boundaries for UAVs during take-off and landing was solved, generating continuous motion commands and improving the stability and continuity of UAV flight planning.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- TOPXGUN (NAN JING) ROBOTICS CO LTD
- Filing Date
- 2026-02-26
- Publication Date
- 2026-06-09
AI Technical Summary
Existing UAV motion planning methods are not adaptable to arbitrary speed and acceleration boundaries at start and end points, and do not consider external load dynamics factors such as drag, resulting in discontinuous deceleration and switching processes, which reduces the stability of flight path tracking.
The motion drag differential programming method based on flight path establishes an offline model of UAV motion drag, obtains initial planning data and target flight path data, builds a planned flight path, creates a motion planning model, and outputs the planning results through time sampling. It considers the influence of drag and flight path constraints to generate continuous motion commands.
It improves the consistency between planned output and actual dynamic response, reduces the frequency of flight control corrections, and enhances the stability of route tracking and the continuity of planning results.
Smart Images

Figure CN121720489B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of unmanned aerial vehicle (UAV) flight control and trajectory planning technology, specifically to a method and apparatus for differential programming of motion resistance based on flight path. Background Technology
[0002] In tasks such as surveying, inspection, and emergency response, unmanned aerial vehicles (UAVs) typically need to fly stably along preset routes. The motion planning module needs to generate continuous motion commands under constraints such as speed, acceleration, and jerk to meet the requirements of airframe dynamics and control stability. Common planning methods in existing engineering practice include acceleration- and jerk-limited planning based on piecewise velocity curves, and online trajectory generation methods based on waypoint tracking. These methods can obtain usable velocity curves and control commands under specific operating conditions.
[0003] Existing methods lack adaptability when there are arbitrary speed and acceleration boundaries at the start and end points, and often only track the target waypoint after deviating from the flight path, lacking a regression and re-acquisition mechanism oriented towards flight path constraints. At the same time, external load dynamic factors such as drag are not included in the planning model, which makes the planning of deceleration process, switching process and short distance segment planning prone to discontinuous or uneven command changes in actual flight, thereby increasing the frequency of control correction and reducing the stability of flight path tracking.
[0004] Therefore, existing technologies have shortcomings and need to be improved and developed. Summary of the Invention
[0005] The present invention provides a method and apparatus for differential programming of motion resistance based on flight path, which is used to solve the problems in the prior art.
[0006] In a first aspect, the present invention provides a method for differential programming of motion resistance based on flight path, comprising:
[0007] Acquire drone motion parameters to establish an offline model of drone motion drag;
[0008] Obtain initial planning data and target route data, and construct the planned route;
[0009] Based on the offline model of UAV motion drag and the planned flight path, a motion planning model for the flight path is created.
[0010] The motion planning model based on time sampling outputs the planning results.
[0011] Furthermore, the acquisition of UAV motion parameters to establish an offline model of UAV motion drag includes:
[0012] In a windless environment, the drone is set to fly at a constant speed, and the attitude angle of the drone under this state is obtained.
[0013] Experiments were conducted at different speeds to obtain several sets of drone attitude angles;
[0014] An offline model of drone motion drag is established based on the attitude angles of several drones, including: calculating the drag acceleration modulus based on the attitude angular modulus. ,in, For attitude angular modulus, The drag acceleration modulus is used to calculate the drag acceleration modulus based on the attitude angular modulus. This is the mapping function from attitude angular modulus to drag acceleration modulus. The acceleration due to gravity is 9.8, and the unit is... Linear regression was used to fit the drag acceleration modulus to obtain a mapping model between the velocity modulus and the drag acceleration modulus. ,in, For velocity modulus, For dynamic resistance parameters, These are static resistance parameters. To calculate the drag acceleration modulus based on the velocity modulus, It is a mapping function from velocity modulus to wind resistance acceleration modulus.
[0015] Furthermore, the step of obtaining initial planning data and target route data, and constructing the planned route, includes:
[0016] Obtain the initial planning position G and the initial planning velocity. Initial planning acceleration, obtaining the starting position A, ending position B, ending velocity, and ending acceleration of the target route;
[0017] Based on the initial planned position and the starting position, determine the mapping point M of the initial planned position on the target route: define B' at the vertical height of the ending position B, where the height of B' is equal to the height of the starting position A; take the direction of the straight line AB' as the normal direction, and simultaneously pass through the initial planned position G to obtain the plane P1; take the intersection point of the plane P1 and the straight line AB as the mapping point M;
[0018] Based on the geometric relationship between the mapping point and the initial planning position, an insertion point H is determined: the insertion point H is defined at the vertical height of the initial planning position G, where the height of the insertion point H is equal to the height of the mapping point M.
[0019] Based on the initial planned position, insertion point, mapping point, and termination position, construct up to three planned routes, including: the first route L1, where the starting position of L1 is the initial planned position G, and the termination position of L1 is the insertion point H; the second route L2, where the starting position of L2 is the insertion point H, and the termination position of L2 is the mapping point M; and the third route L3, where the starting position of L3 is the mapping point M, and the termination position of L3 is the termination position B of the route.
[0020] Determine the initial and final states of the three routes: Obtain the initial planned velocity vector. Define the initial velocity vector of route L3. , used to represent the initial planning velocity vector Mapping vector on route L3;
[0021] Define the residual velocity vector For the initial planning velocity vector Subtract the initial velocity vector of flight path L3 Then the initial velocity vector of route L2 Remaining velocity vector The horizontal portion, the initial velocity vector of route L1 Remaining velocity vector The vertical part;
[0022] The initial velocity vectors on the three routes are converted into velocity scalars for use in one-dimensional programming: the initial velocity of route L3 is the initial velocity vector of route L3. The modulus, the initial velocity vector of route L3 If the direction is the same as the direction of route L3, it is positive; otherwise, it is negative. The starting velocities of routes L1 and L2 are obtained similarly. The ending velocity of route L3 is the ending velocity of the target route, while the ending velocities of routes L1 and L2 are both 0. The starting acceleration of route L3 is the modulus of its starting acceleration vector. If the direction of the starting acceleration vector of route L3 is the same as the direction of route L3, it is positive; otherwise, it is negative. The starting accelerations of routes L1 and L2 are obtained similarly. The ending acceleration of route L3 is the ending acceleration of the target route, while the ending accelerations of routes L1 and L2 are both 0.
[0023] Obtain the length of the route based on route L1, route L2, and route L3. Initial velocity Initial acceleration Termination speed Terminate acceleration Establish three one-dimensional planned routes.
[0024] Furthermore, the step of creating a motion planning model for the flight path based on the offline model of UAV motion drag and the planned flight path includes:
[0025] Get initial velocity initial acceleration End position Termination speed Termination acceleration Speed limit Limiting acceleration Limit the degree of rapid movement Static resistance parameters Dynamic resistance parameters And calculate the negative acceleration: And positive acceleration: Among them, speed is limited. Limiting acceleration Limiting the degree of rapid movement The maximum value parameter set based on the performance of the drone;
[0026] Establish a differential model of drag dynamics, including: defining the initial acceleration as during a certain period of motion. The initial velocity is The jerkiness is constant. Then at time t, the drag acceleration for: Planning angular velocity for: Planning speed for: Planning location for: Derivation of the general solution: ;
[0027] Converging the excessive acceleration to within the limit includes: when At that time, the degree of agitation was The duration is ;when At that time, the degree of agitation was The duration is Substituting the jerk and duration into the drag dynamics differential model, we obtain the planning process for the convergence of the first segment of the out-of-limit acceleration: when the running time is At that time, the acceleration was calculated as The speed is The displacement is ;
[0028] Reverse the direction of routes that are too short, including: using acceleration. ,speed As initial conditions, to terminate acceleration Termination speed To determine the termination condition, a minimum time programming scheme for switching between two states is designed. The resulting displacement is calculated based on this scheme and compared with a reference displacement, where the reference displacement is... , The value is equal to the ending position. If the displacement generated in the shortest running time is greater than the reference displacement If the distance is too short, then the flight path direction is reversed, and... ,Right now , , , , Invert all values, and at the same time Pick , Pick This process will continue until the plan is completed, at which point the reverse will be restored.
[0029] Limit speed Using the target velocity as the target velocity, track the target velocity to obtain the first displacement;
[0030] Termination speed Using the target velocity as the target velocity, track the target velocity to obtain the second displacement;
[0031] Based on the first and second displacements, the timing of the switching is calculated using an optimization method.
[0032] Furthermore, the minimum time planning scheme for switching between the two states includes:
[0033] Define the initial acceleration as The initial velocity is The final acceleration is The termination speed is ;
[0034] Without considering velocity and displacement, calculate from Transferred to The fastest approach divides the planning process into one phase: defining urgency as... The duration is Substituting into the differential model of drag dynamics, we can obtain the velocity at the end. ;
[0035] Considering the termination velocity but not the acceleration limit, determine the two state transition schemes, dividing the planning process into two phases: If Then the degree of urgency is defined. , Otherwise, define swiftness. , Let the speed at the end of the first stage be... acceleration is ;
[0036] System of simultaneous equations: Solving for ;
[0037] make: ,based on Calculate using the quadratic formula The end time of the first phase for: ;
[0038] According to time nodes Substituting into the equations and the differential model of drag dynamics, the jerky motion, acceleration, velocity, and displacement at the end of the first stage can be calculated as follows: , , , The jerkiness, duration, and displacement at the end of the second stage were respectively... , , ;
[0039] Considering the termination velocity and the limiting angular velocity, we determine the two state transition schemes and divide the planning process into three stages: If Then let Otherwise, if Then let , , , Substituting this into the differential model of drag dynamics, we obtain: ,
[0040] The calculated time taken to complete the three stages The urgency at the end of the three stages Acceleration at the end of the three stages The speed at which the three stages end The displacement at the end of the three stages The displacement generated by the shortest time required for state transition is obtained. .
[0041] Furthermore, the speed will be limited. As the target velocity, track the target velocity to obtain the first displacement, including:
[0042] With initial acceleration initial velocity As initial conditions, to limit speed Corresponding drag acceleration Speed limit As a termination condition, where, Substituting this into the minimum time planning scheme for switching between the two states in the design, when the input time is greater than the total duration of the minimum time planning scheme for switching between the two states, the jerk is 0 and the acceleration is... The speed is Substituting this into the differential model of drag dynamics, we perform uniform motion planning, setting the termination time of the first step as... The final acceleration is calculated as follows: The termination speed is The termination position is The termination position is Use the displacement as the first displacement; otherwise, use the displacement generated in the minimum time planning scheme for switching between the two states as the second displacement.
[0043] Furthermore, the termination speed will be... As the target velocity, track the target velocity to obtain the second displacement, including:
[0044] With acceleration ,speed As initial conditions, with acceleration ,speed As a termination condition, substituting it into the minimum time planning scheme for switching between the two states, if the input time is greater than the total duration of the minimum time planning scheme for switching between the two states, then the jerk is 0 and the acceleration is... The speed is Substituting this into the differential model of drag dynamics, we perform uniform motion planning, setting the termination time of the first step as... The final acceleration is calculated as follows: The termination speed is The termination position is The termination position is Use the displacement as the second displacement; otherwise, use the displacement generated in the minimum time planning scheme for switching between the two states as the second displacement.
[0045] Furthermore, the step of calculating the switching timing using an optimization method based on the first and second displacements includes:
[0046] Using the median optimization method, calculate when hour, The value, in As the time for switching.
[0047] Furthermore, the time-sampling-based motion planning model outputs planning results, including:
[0048] Based on time, the one-dimensional planning models of the three routes are sampled to obtain the sampled accelerations of routes L1, L2, and L3 respectively. , , And the sampling rates of routes L1, L2, and L3 respectively. , , and the sampling displacements of routes L1, L2, and L3 respectively. , , ;
[0049] Multiply the scalar result Displacement plus They are mapped into vectors on each flight path. , , , , , , , , Then the superimposed acceleration, superimposed velocity, and superimposed position planning vector outputs for routes L1, L2, and L3 are respectively: , , ,in, The location of point G is the initial planned location.
[0050] A second aspect of the present invention provides a motion resistance differential programming device based on a flight path, comprising:
[0051] The first acquisition module is used to acquire the motion parameters of the UAV in order to establish an offline model of the UAV's motion drag.
[0052] The second data acquisition module is used to acquire initial planning data and target route data, and to build the planned route.
[0053] Create a module to generate a motion planning model for a flight path based on the offline model of the drone's motion drag and the planned flight path.
[0054] The output module is used for time-sampling-based motion planning models to output planning results.
[0055] Beneficial effects:
[0056] As can be seen from the above technical solutions, the present invention provides a method and apparatus for differential programming of motion resistance based on flight path, which has the following beneficial effects:
[0057] 1. By introducing offline resistance identification and resistance differential model, the planning calculation can explicitly consider the influence of velocity-related external loads, thereby improving the consistency between the planning output and the actual dynamic response.
[0058] 2. This application changes the regression target from a single target waypoint to the target route itself, so that the planning process is always subject to the geometric constraints of the route during the regression phase. It can generate a route-oriented recapture path and complete the alignment along the route after deviating from the route. Compared with the planning method that only uses waypoints as targets, this application avoids the problems of uncontrollable line-hugging degree caused by ending when the waypoint is reached, fluctuation of the regression path with the current deviation and waypoint selection, and the need for secondary correction during the flight phase along the route. This application is more in line with the actual application scenario of flight along the route and reduces the correction frequency and trajectory deviation risk of flight control during the tracking phase along the route.
[0059] 3. By using a unified interface for switching operators and displacement operators in the shortest time, the splicing of the restricted velocity segment and the termination velocity segment can be transformed into a displacement matching problem, thereby improving the computability and stability of the inter-segment connection.
[0060] 4. By employing strategies for over-limit convergence and short-distance feasibility correction, executable planning sequences can still be generated even under complex boundary conditions and conflicts with short-distance constraints, thereby reducing the probability of planning failure.
[0061] 5. By using time sampling and scalar-to-vector mapping output, the planning results can form a continuous sequence of vector commands, which helps to reduce abrupt changes in control commands and improve flight smoothness.
[0062] It should be understood that all combinations of the foregoing concepts and the additional concepts described in more detail below can be considered part of the inventive subject matter of this disclosure, provided that such concepts do not contradict each other.
[0063] The foregoing and other aspects, embodiments, and features of the teachings of the present invention will be more fully understood from the following description in conjunction with the accompanying drawings. Other additional aspects of the invention, such as features and / or beneficial effects of exemplary embodiments, will become apparent from the following description or may be learned through practice of specific embodiments according to the teachings of the present invention. Attached Figure Description
[0064] The accompanying drawings are not drawn to scale. In the drawings, each identical or nearly identical component shown in the various figures may be denoted by the same reference numeral. For clarity, not every component is labeled in each figure. Embodiments of various aspects of the invention will now be described by way of example and with reference to the accompanying drawings, wherein:
[0065] Figure 1 This is a flowchart illustrating a motion resistance differential programming method based on a flight path in an embodiment of this application.
[0066] Figure 2 This is a flowchart of step S102 of the motion resistance differential programming method based on the flight path in this application embodiment.
[0067] Figure 3 This is a flowchart of step S104 of the motion resistance differential programming method based on the flight path in this application embodiment.
[0068] Figure 4 This is a flowchart of step S106 of the motion resistance differential programming method based on flight path in this application embodiment.
[0069] Figure 5 This is a flowchart of step S108 of a motion resistance differential programming method based on a flight path in an embodiment of this application.
[0070] Figure 6 This is a schematic diagram of an electronic device according to an embodiment of this application. Detailed Implementation
[0071] 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, not all, of the embodiments of the present invention. All other embodiments obtained by those skilled in the art based on the described embodiments of the present invention without creative effort are within the scope of protection of the present invention. Unless otherwise defined, the technical or scientific terms used herein should have the ordinary meaning understood by those skilled in the art to which this invention pertains.
[0072] The terms "first," "second," and similar words used in the specification and claims of this patent application do not indicate any order, quantity, or importance, but are merely used to distinguish different components. Similarly, unless the context clearly indicates otherwise, the singular forms of "an," "a," or "the," etc., do not indicate a quantity limitation, but rather indicate the presence of at least one. Terms such as "comprising" or "including" mean that the element or object preceding "comprising" encompasses the features, integrals, steps, operations, elements, and / or components listed following "comprising" or "including," and do not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components, and / or collections thereof. Terms such as "upper," "lower," "left," and "right" are used only to indicate relative positional relationships; these relative positional relationships may change accordingly when the absolute position of the described object changes.
[0073] Existing methods lack adaptability when there are arbitrary speed and acceleration boundaries at the start and end points, and often only track the target waypoint after deviating from the flight path, lacking a regression and re-acquisition mechanism oriented towards flight path constraints. At the same time, external load dynamic factors such as drag are not included in the planning model, which makes the planning of deceleration process, switching process and short distance segment planning prone to discontinuous or uneven command changes in actual flight, thereby increasing the frequency of control correction and reducing the stability of flight path tracking.
[0074] Therefore, embodiments of the present invention provide a method for differential programming of motion resistance based on flight path, referring to... Figure 1 ,include:
[0075] Step S102: Obtain UAV motion parameters to establish an offline model of UAV motion drag.
[0076] Step S104: Obtain initial planning data and target route data, and build the planned route.
[0077] Step S106: Based on the offline model of UAV motion resistance and the planned flight path, create a motion planning model for the flight path.
[0078] Step S108: Based on the time sampling motion planning model, output the planning results.
[0079] First, an offline drag model is constructed based on the UAV's motion parameters. Then, the initial planning data and the target flight path data are fused to obtain the planned flight path. Next, a motion planning model is established based on the offline drag model and the planned flight path. Finally, the motion planning model is sampled over time and the planning results are output for execution by the flight control system.
[0080] By incorporating route-based planning and resistance dynamics modeling into the same planning chain, the planning object is not just a sequence of waypoints, but a route with geometric constraints; the planning model is not just kinematic amplitude limit, but introduces resistance-related dynamic terms, thereby providing a unified modeling entry and data interface for subsequent smooth handover and feasible time sampling output.
[0081] By incorporating drag effects into the planning model and using the flight path as a constraint, it helps to improve the consistency between the planning output and the actual flight dynamics response, and provides a calculable basis for subsequent speed switching, short-distance segment processing, and flight path regression.
[0082] In some embodiments, drone motion parameters are acquired to establish an offline model of drone motion drag, referring to... Figure 2 ,include:
[0083] Step S1021: In a windless environment, set the drone to fly at a constant speed and obtain the attitude angle of the drone in this state.
[0084] Step S1022: Input different speeds to conduct experiments and obtain several sets of UAV attitude angles.
[0085] Step S1023: Establish an offline model of UAV motion drag based on several sets of UAV attitude angles, including: calculating the drag acceleration modulus based on the attitude angular modulus. ,in, For attitude angular modulus, The drag acceleration modulus is used to calculate the drag acceleration modulus based on the attitude angular modulus. This is the mapping function from attitude angular modulus to drag acceleration modulus. The acceleration due to gravity is 9.8, and the unit is... Linear regression was used to fit the drag acceleration modulus to obtain a mapping model between the velocity modulus and the drag acceleration modulus. ,in, For velocity modulus, For dynamic resistance parameters, These are static resistance parameters. To calculate the drag acceleration modulus based on the velocity modulus, It is a mapping function from velocity modulus to wind resistance acceleration modulus.
[0086] Attitude angle data were collected through constant speed flight tests at multiple speed levels under windless conditions, and a mapping relationship was established between attitude tilt and equivalent drag acceleration. Furthermore, regression fitting was performed on the velocity modulus and drag acceleration modulus to obtain a model that includes static drag parameters and dynamic drag parameters.
[0087] By using flight attitude tilt as an observable measure of drag equivalent acceleration, we avoid directly relying on complex wind tunnels or external force measurement devices, and construct a feasible drag parameter identification path from an engineering perspective. At the same time, by using parameterization, we compress the drag influence into a small number of parameters, creating conditions for rapid calculation in the online planning stage.
[0088] Offline modeling helps obtain drag parameters related to the aircraft model at a lower system modification cost, enabling subsequent planning phases to estimate drag acceleration based on speed changes, thereby reducing the deviation between planning commands and actual aircraft response.
[0089] In some embodiments, initial planning data and target route data are obtained, a planned route is constructed, and reference is made. Figure 3 ,include:
[0090] Step S1041: Obtain the initial planning position G and the initial planning velocity. Initial planning acceleration, obtaining the starting position A, ending position B, ending speed, and ending acceleration of the target route.
[0091] Step S1042: Based on the initial planned position and the starting position, determine the mapping point M of the initial planned position on the target route: Define B' at the vertical height of the ending position B, where the height of B' is equal to the height of the starting position A; take the direction of the straight line AB' as the normal direction, and simultaneously pass through the initial planned position G to obtain the plane P1; take the intersection point of the plane P1 and the straight line AB as the mapping point M.
[0092] Step S1043: Determine an insertion point H based on the geometric relationship between the mapping point and the initial planning position: Define the insertion point H at the vertical height of the initial planning position G, where the height of the insertion point H is equal to the height of the mapping point M.
[0093] Step S1044: Based on the initial planned position, insertion point, mapping point, and termination position, construct up to three planned routes, including: the first route L1, where the starting position of L1 is the initial planned position G, and the termination position of L1 is the insertion point H; the second route L2, where the starting position of L2 is the insertion point H, and the termination position of L2 is the mapping point M; and the third route L3, where the starting position of L3 is the mapping point M, and the termination position of L3 is the termination position B of the route.
[0094] Step S1045: Determine the initial and final states of the three routes: Obtain the initial planned velocity vector. Define the initial velocity vector of route L3. , used to represent the initial planning velocity vector Mapping vector on route L3.
[0095] Step S1046: Define the remaining velocity vector For the initial planning velocity vector Subtract the initial velocity vector of flight path L3 Then the initial velocity vector of route L2 Remaining velocity vector The horizontal portion, the initial velocity vector of route L1 Remaining velocity vector The vertical part.
[0096] Step S1047: Convert the initial velocity vectors on the above three routes into velocity scalars for application in one-dimensional planning: the initial velocity of route L3 is the initial velocity vector of route L3. The modulus, the initial velocity vector of route L3 If the direction is the same as the direction of route L3, it is positive; otherwise, it is negative. Similarly, the starting velocities of routes L1 and L2 are obtained. The ending velocity of route L3 is the ending velocity of the target route, and the ending velocities of routes L1 and L2 are both 0. The starting acceleration of route L3 is the modulus of the starting acceleration vector of route L3. If the direction of the starting acceleration vector of route L3 is the same as the direction of route L3, it is positive; otherwise, it is negative. Similarly, the starting accelerations of routes L1 and L2 are obtained. The ending acceleration of route L3 is the ending acceleration of the target route, and the ending accelerations of routes L1 and L2 are both 0.
[0097] Step S1048: Obtain the length of the route based on route L1, route L2, and route L3. Initial velocity Initial acceleration Termination speed Terminate acceleration Establish three one-dimensional planned routes.
[0098] The initial planned position is geometrically mapped relative to the target route, and mapping points and insertion points are constructed. At most three route segments are formed based on the initial position, insertion point, mapping point, and termination position. Then, the initial velocity and acceleration are decomposed and mapped according to the route direction, and the vector state is converted into one-dimensional scalar boundary conditions, thereby establishing a one-dimensional planning problem for each route segment.
[0099] By segmenting the route, the deviation from the route is transformed into a planarable regression path. Furthermore, by using directional projection and symbol conventions, the three-dimensional velocity and acceleration are transformed into one-dimensional boundary conditions for each segment. This allows subsequent differential programming to be solved in one-dimensional space while still returning to the three-dimensional execution space.
[0100] This segmented route and state mapping method helps to form a clear regression path and calculable boundary conditions when the UAV deviates from the target route, thereby reducing the regression uncertainty caused by relying solely on waypoint tracking and improving the continuity and executability of the planning output.
[0101] In some embodiments, a motion planning model for the flight path is created based on the offline model of UAV motion drag and the planned flight path, with reference to... Figure 4 ,include:
[0102] Step S1061: Obtain the initial velocity initial acceleration End position Termination speed Termination acceleration Speed limit Limiting acceleration Limit the degree of rapid movement Static resistance parameters Dynamic resistance parameters And calculate the negative acceleration: And positive acceleration: Among them, speed is limited. Limiting acceleration Limiting the degree of rapid movement The maximum value parameter set based on the performance of the drone.
[0103] Step S1062: Establish a differential model of drag dynamics, including: defining the initial acceleration as during a certain period of motion. The initial velocity is The urgency is constant. Then at time t, the drag acceleration for: Planning angular velocity for: Planning speed for: Planning location for: Derivation of the general solution: .
[0104] Step S1063: Converge the excessive acceleration to within the limit, including: when At that time, the degree of agitation was The duration is ;when At that time, the degree of agitation was The duration is Substituting the jerk and duration into the drag dynamics differential model, we obtain the planning process for the convergence of the first segment of the out-of-limit acceleration: when the running time is At that time, the acceleration was calculated as The speed is The displacement is .
[0105] Step S1064: Reverse the direction of routes with excessively short distances, including: using acceleration ,speed As initial conditions, to terminate acceleration Termination speed To determine the termination condition, a minimum time programming scheme for switching between two states is designed. The resulting displacement is calculated based on this scheme and compared with a reference displacement, where the reference displacement is... , The value is equal to the ending position. If the displacement generated in the shortest running time is greater than the reference displacement If the distance is too short, then the flight path direction is reversed, and... ,Right now , , , , Invert all values, and at the same time Pick , Pick This process will continue until the plan is completed, at which point the reverse will be restored.
[0106] Step S1065: Limit the speed As the target velocity, track the target velocity to obtain the first displacement.
[0107] Step S1066: Set the termination speed Using the target velocity as the target velocity, track the target velocity to obtain the second displacement.
[0108] Step S1067: Based on the first displacement and the second displacement, use an optimization method to calculate the timing of the switching.
[0109] After obtaining the one-dimensional boundary conditions and constraint parameters, a dynamic differential model including the resistance term is established, and analytical expressions of acceleration, velocity and displacement are given under the condition that the jerk is constant. Based on this, several planning strategies are proposed, including convergence processing for acceleration exceeding the limit, direction reversal processing for short-distance segments, two-segment tracking displacement calculation with the limit velocity and termination velocity as the objectives, and determining the switching timing through optimization.
[0110] By directly embedding the resistance term into the planning differential model and using analytical form for state propagation, the planning process can remain computationally fast even when considering velocity-related resistance. At the same time, through two types of feasibility correction strategies—over-limit convergence and short-distance inversion—common infeasible boundary conditions and short-distance constraint conflicts in engineering are incorporated into the same planning framework, forming an implementable online planning path.
[0111] By using a drag differential model and a feasibility correction strategy, it is possible to generate an executable planning sequence even when the start and end speed and acceleration boundaries are complex, the route segment distance is short, or the direction is specially agreed upon, and to reduce abrupt changes during deceleration and switching processes, thereby improving control smoothness.
[0112] In some embodiments, a minimum time planning scheme for switching between two states is designed, including:
[0113] Define the initial acceleration as The initial velocity is The final acceleration is The termination speed is .
[0114] Without considering velocity and displacement, calculate from Transferred to The fastest approach divides the planning process into one phase: defining urgency as... The duration is Substituting into the differential model of drag dynamics, we can obtain the velocity at the end. .
[0115] Considering the termination velocity but not the acceleration limit, determine the two state transition schemes, dividing the planning process into two phases: If Then the degree of urgency is defined. , Otherwise, define swiftness. , Let the speed at the end of the first stage be... acceleration is .
[0116] System of simultaneous equations: Solving for .
[0117] make: ,based on Calculate using the quadratic formula The end time of the first phase for: .
[0118] According to time nodes Substituting into the equations and the differential model of drag dynamics, the jerky motion, acceleration, velocity, and displacement at the end of the first stage can be calculated as follows: , , , The jerkiness, duration, and displacement at the end of the second stage were respectively... , , .
[0119] Considering the termination velocity and the limiting angular velocity, we determine the two state transition schemes and divide the planning process into three stages: If Then let Otherwise, if Then let , , , Substituting this into the differential model of drag dynamics, we obtain: .
[0120] The calculated time taken to complete the three stages The urgency at the end of the three stages Acceleration at the end of the three stages The speed at which the three stages end The displacement at the end of the three stages The displacement generated by the shortest time required for state transition is obtained. .
[0121] The direction and duration of jerkiness are determined by considering only acceleration switching; then, a termination velocity constraint is introduced to form a two-stage switching, and the stage boundary time is solved by a system of equations; further, considering acceleration constraints, the switching is extended to a three-stage switching, and the displacement calculation method corresponding to the shortest time scheme is obtained.
[0122] By presenting a phased shortest-time switching solution framework for the drag differential model, this approach enables the determination of phase duration and final state variables for acceleration boundary constraints, velocity boundary constraints, and acceleration amplitude constraints within a unified solution chain. This provides a reusable basic operator for subsequent displacement comparison and switching timing optimization. This shortest-time switching operator facilitates the rapid calculation of feasible switching processes under different boundary condition combinations and outputs displacements for judging short-distance feasibility and subsequent optimization, thereby improving the stability and consistency of online planning.
[0123] In some embodiments, the speed will be limited. As the target velocity, track the target velocity to obtain the first displacement, including:
[0124] With initial acceleration initial velocity As initial conditions, to limit speed Corresponding drag acceleration Speed limit As a termination condition, where, Substituting this into the minimum time planning scheme for switching between the two states in the design, when the input time is greater than the total duration of the minimum time planning scheme for switching between the two states, the jerk is 0 and the acceleration is... The speed is Substituting this into the differential model of drag dynamics, we perform uniform motion planning, setting the termination time of the first step as... The final acceleration is calculated as follows: The termination speed is The termination position is The termination position is Use the displacement as the first displacement; otherwise, use the displacement generated in the minimum time planning scheme for switching between the two states as the second displacement.
[0125] Starting from the initial velocity and initial acceleration, and ending at the limit velocity and its corresponding drag acceleration, the shortest time switching operator is called. If the candidate duration is longer than the total switching duration, the uniform velocity segment is entered at the endpoint and the displacement is calculated; otherwise, the displacement of the switching operator is used as the output displacement.
[0126] The shortest time switching and the uniform speed segment extension are combined into a unified displacement operator, which covers both the boundary convergence process in the short time and the steady-state tracking process in the long time, so that subsequent optimization can be based on the same displacement operator to build the objective equation.
[0127] This displacement operator enables the planning process to stably calculate the displacement to reach the target speed limit based on the candidate switching time, providing a calculable basis for the subsequent splicing of the final speed segment and reducing the risk of discontinuity between segments caused by pure speed curve tracking.
[0128] In some embodiments, the termination speed is... As the target velocity, track the target velocity to obtain the second displacement, including:
[0129] With acceleration ,speed As initial conditions, with acceleration ,speed As a termination condition, substituting it into the minimum time planning scheme for switching between the two states, if the input time is greater than the total duration of the minimum time planning scheme for switching between the two states, then the jerk is 0 and the acceleration is... The speed is Substituting this into the differential model of drag dynamics, we perform uniform motion planning, setting the termination time of the first step as... The final acceleration is calculated as follows: The termination speed is The termination position is The termination position is Use the displacement as the second displacement; otherwise, use the displacement generated in the minimum time planning scheme for switching between the two states as the second displacement.
[0130] Starting from the end state of the previous stage and ending at the termination velocity and termination acceleration, the shortest time switching operator is called. If the candidate duration is greater than the total switching duration, the uniform speed segment is entered and the displacement is calculated; otherwise, the displacement of the switching operator is output as the second displacement.
[0131] A second displacement operator is constructed in a manner symmetrical to the first displacement, allowing the limiting velocity segment and the terminating velocity segment to share the same solution operator and a consistent drag differential model. This establishes a unified mathematical interface for the splicing of the two segments and the matching of the total displacement. This helps to smoothly connect the preceding segments while satisfying the termination boundary conditions, reduces abrupt transitions when the terminating velocity is higher or lower than the current velocity, and improves the executability of the planning results.
[0132] In some embodiments, based on the first displacement and the second displacement, an optimization method is used to calculate the timing of the switching, including: using a median optimization method to calculate when... hour, The value, in As the time for switching.
[0133] A median-iterative approach is employed to ensure that the reference displacement is equal to the sum of the first and second displacements, thereby obtaining the time variable used for switching. The solution for the switching timing is transformed into a numerical problem of solving a univariate equation, and the objective equation is constructed using displacement conservation relations, forming a programmable search flow. This approach, coupled with the aforementioned displacement operator, ensures that the switching time under complex boundary conditions can still be obtained through a stable iterative method. By iteratively solving for the switching timing, displacement matching and inter-segment connection can be achieved under different constraints and boundary conditions, contributing to improved planning stability and adaptability.
[0134] In some embodiments, the motion planning model based on time sampling outputs planning results, referring to... Figure 5 ,include:
[0135] Step S1081: Sample the one-dimensional planning model of the three routes based on time to obtain the sampled accelerations of routes L1, L2, and L3 respectively. , , And the sampling rates of routes L1, L2, and L3 respectively. , , and the sampling displacements of routes L1, L2, and L3 respectively. , , .
[0136] Step S1082: Multiply the scalar result by Displacement plus They are mapped into vectors on each flight path. , , , , , , , , Then the superimposed acceleration, superimposed velocity, and superimposed position planning vector outputs for routes L1, L2, and L3 are respectively: , , ,in, The location of point G is the initial planned location.
[0137] The acceleration, velocity, and displacement scalar sequences of each segment are obtained by sampling the three-segment one-dimensional programming model over time. Then, by combining the flight path direction, sign factor, and inter-segment translation rules, the scalars are mapped into vector sequences, and the results of the three segments are superimposed to obtain the final acceleration, velocity, and position output sequences.
[0138] The one-dimensional drag differential programming and the three-dimensional flight path execution output are connected in a closed loop through a sampling mapping mechanism. This retains the computational efficiency of the one-dimensional solution and restores a vector command sequence that can be directly used by the controller through direction mapping and superposition, thus forming a complete and implementable link. This output mechanism helps generate continuous control reference quantities with a uniform sampling period, reduces inter-segment jumps, and facilitates interfaceing with the velocity loop, attitude loop, or position loop of the flight control system.
[0139] Another embodiment of the present invention provides a motion resistance differential programming device based on flight path, characterized in that it comprises:
[0140] The first acquisition module is used to acquire the motion parameters of the UAV in order to establish an offline model of the UAV's motion drag.
[0141] The second data acquisition module is used to acquire initial planning data and target route data, and to build the planned route.
[0142] Create a module to generate a motion planning model for the flight path based on the offline model of the drone's motion drag and the planned flight path.
[0143] The output module is used for time-sampling-based motion planning models to output planning results.
[0144] It should be noted that although several units or sub-units of the device have been mentioned in the detailed description above, this division is merely exemplary and not mandatory. In fact, according to embodiments of this application, the features and functions of two or more units described above can be embodied in one unit. Conversely, the features and functions of one unit described above can be further divided and embodied by multiple units.
[0145] Based on the same inventive concept as the above method embodiments, this application also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it enables the electronic device to implement the control method described in the above embodiments.
[0146] In one embodiment, the electronic device may be a server, and in this embodiment, the structure of the electronic device may be as follows: Figure 6 As shown, it includes a memory, a communication module, and one or more processors.
[0147] Memory is used to store computer programs executed by the processor. Memory can be mainly divided into a program storage area and a data storage area. The program storage area can store the operating system and programs required to run instant messaging functions, etc.; the data storage area can store various instant messaging information and operation instruction sets, etc.
[0148] Memory can be volatile memory, such as random access memory (RAM); memory can also be non-volatile memory, such as read-only memory, flash memory, hard disk drive (HDD), or solid-state drive (SSD); or memory can be any other medium capable of carrying or storing a desired computer program having the form of instructions or data structures and accessible by a computer, but is not limited thereto. Memory can be a combination of the above-mentioned types of memory.
[0149] A processor may include one or more central processing units (CPUs) or digital processing units, etc. The processor is used to implement the aforementioned audio data processing methods when it invokes computer programs stored in memory.
[0150] The communication module is used to communicate with terminal devices and other servers.
[0151] This application embodiment does not limit the specific connection medium between the above-described memory, communication module, and processor. This application embodiment... Figure 6 The memory and processor are connected via a bus, and the bus is in... Figure 6 The connections between other components are illustrated with arrows and are for illustrative purposes only, not as limiting information. Buses can be categorized as address buses, data buses, control buses, etc. For ease of description, Figure 6 The text uses only one arrow to describe it, but does not indicate that there is only one bus or one type of bus.
[0152] Based on the same inventive concept as the above-described method embodiments, embodiments of the present invention also provide a computer-readable storage medium for storing a computer program. When the computer program is run on a computer, it enables an electronic device to implement the control methods described in the above embodiments. The computer-readable storage medium can be a readable signal medium or a readable storage medium. A readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof.
[0153] Based on the same inventive concept as the above-described method embodiments, embodiments of the present invention also provide a computer program product. The computer program product includes a computer program that, when run on an electronic device, causes the electronic device to perform the steps of the control methods described above according to various exemplary embodiments of this application. The program product may take the form of any combination of one or more readable media. These computer program commands can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing device to produce a machine, such that the commands executed by the processor of the computer or other programmable data processing device generate a process for implementing... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0154] While the present invention has been disclosed above with reference to preferred embodiments, it is not intended to limit the invention. Those skilled in the art can make various modifications and refinements without departing from the spirit and scope of the invention. Therefore, the scope of protection of the present invention shall be determined by the claims.
Claims
1. A differential programming method for motion resistance based on flight path, characterized in that, include: Acquire drone motion parameters to establish an offline model of drone motion drag; Obtain initial planning data and target route data, and construct the planned route; Based on the offline model of UAV motion drag and the planned flight path, a motion planning model for the flight path is created, including: Get initial velocity initial acceleration End position Termination speed Termination acceleration Speed limit Limiting acceleration Limit the degree of rapid movement Static resistance parameters Dynamic resistance parameters And calculate the negative acceleration: And positive acceleration: Among them, speed is limited. Limiting acceleration Limiting the degree of rapid movement The maximum value parameter set based on the performance of the drone; Establish a differential model of drag dynamics, including: defining the initial acceleration as during a certain period of motion. The initial velocity is The urgency is constant. Then at time t, the drag acceleration for: Planning angular velocity for: Planning speed for: Planning location for: Derivation of the general solution: ; Converging the excessive acceleration to within the limit includes: when At that time, the degree of agitation was The duration is ;when At that time, the degree of agitation was The duration is Substituting the jerk and duration into the drag dynamics differential model, we obtain the planning process for the convergence of the first segment of the out-of-limit acceleration: when the running time is At that time, the acceleration was calculated as The speed is The displacement is ; Reverse the direction of routes that are too short, including: using acceleration ,speed As initial conditions, to terminate acceleration Termination speed To determine the termination condition, a minimum time programming scheme for switching between two states is designed. The resulting displacement is calculated based on this scheme and compared with a reference displacement, where the reference displacement is... , The value is equal to the ending position. If the displacement generated in the shortest running time is greater than the reference displacement If the distance is too short, then the flight path direction is reversed, and... ,Right now , , , , Invert all values, and at the same time Pick , Pick This process will continue until the plan is completed, at which point the reverse will be restored. Limit speed Using the target velocity as the target velocity, track the target velocity to obtain the first displacement; Termination speed Using the target velocity as the target velocity, track the target velocity to obtain the second displacement; Based on the first and second displacements, the timing of the switching is calculated using an optimization method; The motion planning model based on time sampling outputs the planning results.
2. The method for differential programming of motion resistance based on flight path according to claim 1, characterized in that, The acquisition of UAV motion parameters to establish an offline model of UAV motion drag includes: In a windless environment, the drone is set to fly at a constant speed, and the attitude angle of the drone under this state is obtained. Experiments were conducted at different speeds to obtain several sets of drone attitude angles; An offline model of drone motion drag is established based on the attitude angles of several drones, including: calculating the drag acceleration modulus based on the attitude angular modulus. ,in, For attitude angular modulus, The drag acceleration modulus is used to calculate the drag acceleration modulus based on the attitude angular modulus. This is the mapping function from attitude angular modulus to drag acceleration modulus. The acceleration due to gravity is 9.8, and the unit is... Linear regression was used to fit the drag acceleration modulus to obtain a mapping model between the velocity modulus and the drag acceleration modulus. ,in, For velocity modulus, For dynamic resistance parameters, These are static resistance parameters. To calculate the drag acceleration modulus based on the velocity modulus, It is a mapping function from velocity modulus to wind resistance acceleration modulus.
3. The method for differential programming of motion resistance based on flight path according to claim 2, characterized in that, The process of obtaining initial planning data and target route data, and constructing the planned route, includes: Obtain the initial planning position G and the initial planning velocity. Initial planning acceleration, obtaining the starting position A, ending position B, ending velocity, and ending acceleration of the target route; Based on the initial planned position and the starting position, determine the mapping point M of the initial planned position on the target route: define B' at the vertical height of the ending position B, where the height of B' is equal to the height of the starting position A; take the direction of the straight line AB' as the normal direction, and simultaneously pass through the initial planned position G to obtain the plane P1; take the intersection point of the plane P1 and the straight line AB as the mapping point M; Based on the geometric relationship between the mapping point and the initial planning position, an insertion point H is determined: the insertion point H is defined at the vertical height of the initial planning position G, where the height of the insertion point H is equal to the height of the mapping point M. Based on the initial planned position, insertion point, mapping point, and termination position, construct up to three planned routes, including: the first route L1, where the starting position of L1 is the initial planned position G, and the termination position of L1 is the insertion point H; the second route L2, where the starting position of L2 is the insertion point H, and the termination position of L2 is the mapping point M; and the third route L3, where the starting position of L3 is the mapping point M, and the termination position of L3 is the termination position B of the route. Determine the initial and final states of the three routes: Obtain the initial planned velocity vector. Define the initial velocity vector of route L3. , used to represent the initial planning velocity vector Mapping vector on route L3; Define the residual velocity vector For the initial planning velocity vector Subtract the initial velocity vector of flight path L3 Then the initial velocity vector of route L2 Remaining velocity vector The horizontal portion, the initial velocity vector of route L1 Remaining velocity vector The vertical part; The initial velocity vectors on the three routes are converted into velocity scalars for use in one-dimensional programming: the initial velocity of route L3 is the initial velocity vector of route L3. The modulus, the initial velocity vector of route L3 If the direction is the same as the direction of route L3, it is positive; otherwise, it is negative. The starting velocities of routes L1 and L2 are obtained similarly. The ending velocity of route L3 is the ending velocity of the target route, while the ending velocities of routes L1 and L2 are both 0. The starting acceleration of route L3 is the modulus of its starting acceleration vector. If the direction of the starting acceleration vector of route L3 is the same as the direction of route L3, it is positive; otherwise, it is negative. The starting accelerations of routes L1 and L2 are obtained similarly. The ending acceleration of route L3 is the ending acceleration of the target route, while the ending accelerations of routes L1 and L2 are both 0. Obtain the length of the route based on route L1, route L2, and route L3. Initial velocity Initial acceleration Termination speed Terminate acceleration Establish three one-dimensional planned routes.
4. The method for differential programming of motion resistance based on flight path according to claim 1, characterized in that, The design of the minimum time planning scheme for switching between two states includes: Define the initial acceleration as The initial velocity is The final acceleration is The termination speed is ; Without considering velocity and displacement, calculate from Transferred to The fastest approach divides the planning process into one phase: defining urgency as... The duration is Substituting into the differential model of drag dynamics, we obtain the velocity at the end. ; Considering the termination velocity but not the acceleration limit, determine the two state transition schemes, dividing the planning process into two phases: If Then the degree of urgency is defined. , Otherwise, define swiftness. , Let the speed at the end of the first stage be... acceleration is ; System of simultaneous equations: Solving for ; make: ,based on Calculate using the quadratic formula The end time of the first phase for: ; According to time nodes Substituting the equations and the differential model of drag dynamics, the jerky motion, acceleration, velocity, and displacement at the end of the first stage were calculated as follows: , , , The jerkiness, duration, and displacement at the end of the second stage were respectively... , , ; Considering the termination velocity and the limiting angular velocity, we determine the two state transition schemes and divide the planning process into three stages: If Then let Otherwise, if Then let , , , Substituting this into the differential model of drag dynamics, we obtain: , The calculated time taken to complete the three stages The urgency at the end of the three stages Acceleration at the end of the three stages The speed at which the three stages end The displacement at the end of the three stages The displacement generated by the shortest time required for state transition is obtained. .
5. The method for differential programming of motion resistance based on flight path according to claim 4, characterized in that, The speed will be limited. As the target velocity, track the target velocity to obtain the first displacement, including: With initial acceleration initial velocity As initial conditions, to limit speed Corresponding drag acceleration Speed limit As a termination condition, where, Substituting this into the minimum time planning scheme for switching between the two states in the design, when the input time is greater than the total duration of the minimum time planning scheme for switching between the two states, the jerk is 0 and the acceleration is... The speed is Substituting this into the differential model of drag dynamics, we perform uniform motion planning, setting the termination time of the first step as... The final acceleration is calculated as follows: The termination speed is The termination position is The termination position is Use the displacement as the first displacement; otherwise, use the displacement generated in the minimum time planning scheme for switching between the two states as the second displacement.
6. The method for differential programming of motion resistance based on flight path according to claim 5, characterized in that, The termination speed As the target velocity, track the target velocity to obtain the second displacement, including: With acceleration ,speed As initial conditions, with acceleration ,speed As a termination condition, substituting it into the minimum time planning scheme for switching between the two states, if the input time is greater than the total duration of the minimum time planning scheme for switching between the two states, then the jerk is 0 and the acceleration is... The speed is Substituting this into the differential model of drag dynamics, we perform uniform motion planning, setting the termination time of the first step as... The final acceleration is calculated as follows: The termination speed is The termination position is The termination position is Use the displacement as the second displacement; otherwise, use the displacement generated in the minimum time planning scheme for switching between the two states as the second displacement.
7. The method for differential programming of motion resistance based on flight path according to claim 6, characterized in that, The step of calculating the switching timing using an optimization method based on the first and second displacements includes: Using the median optimization method, calculate when hour, The value, in As the time for switching.
8. The method for differential programming of motion resistance based on flight path according to claim 7, characterized in that, The time-sampling-based motion planning model outputs planning results, including: Based on time, the one-dimensional planning models of the three routes are sampled to obtain the sampled accelerations of routes L1, L2, and L3 respectively. , , And the sampling rates of routes L1, L2, and L3 respectively. , , and the sampling displacements of routes L1, L2, and L3 respectively. , , ; Multiply the scalar result Displacement plus They are mapped into vectors on each flight path. , , , , , , , , Then the superimposed acceleration, superimposed velocity, and superimposed position planning vector outputs for routes L1, L2, and L3 are respectively: , , ,in, The location of point G is the initial planned location.
9. A motion resistance differential programming device based on flight path, characterized in that, include: The first acquisition module is used to acquire the motion parameters of the UAV in order to establish an offline model of the UAV's motion drag. The second data acquisition module is used to acquire initial planning data and target route data, and to build the planned route. The creation module is used to create a motion planning model for a flight path based on an offline model of the drone's motion drag and the planned flight path. This includes: Get initial velocity initial acceleration End position Termination speed Termination acceleration Speed limit Limiting acceleration Limit the degree of rapid movement Static resistance parameters Dynamic resistance parameters And calculate the negative acceleration: And positive acceleration: Among them, speed is limited. Limiting acceleration Limiting the degree of rapid movement The maximum value parameter set based on the performance of the drone; Establish a differential model of drag dynamics, including: defining the initial acceleration as during a certain period of motion. The initial velocity is The urgency is constant. Then at time t, the drag acceleration for: Planning angular velocity for: Planning speed for: Planning location for: Derivation of the general solution: ; Converging the excessive acceleration to within the limit includes: when At that time, the degree of agitation was The duration is ;when At that time, the degree of agitation was The duration is Substituting the jerk and duration into the drag dynamics differential model, we obtain the planning process for the convergence of the first segment of the out-of-limit acceleration: when the running time is At that time, the acceleration was calculated as The speed is The displacement is ; Reverse the direction of routes that are too short, including: using acceleration ,speed As initial conditions, to terminate acceleration Termination speed To determine the termination condition, a minimum time programming scheme for switching between two states is designed. The resulting displacement is calculated based on this scheme and compared with a reference displacement, where the reference displacement is... , The value is equal to the ending position. If the displacement generated in the shortest running time is greater than the reference displacement If the distance is too short, then the flight path direction is reversed, and... ,Right now , , , , Invert all values, and at the same time Pick , Pick This process will continue until the plan is completed, at which point the reverse will be restored. Limit speed Using the target velocity as the target velocity, track the target velocity to obtain the first displacement; Termination speed Using the target velocity as the target velocity, track the target velocity to obtain the second displacement; Based on the first and second displacements, the timing of the switching is calculated using an optimization method; The output module is used for time-sampling-based motion planning models to output planning results.