Braking control method, unmanned aerial vehicle, and computer-readable storage medium

CN122984696APending Publication Date: 2026-10-27GUANGZHOU XAIRCRAFT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510442181.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-09
Publication Date
2026-10-27

AI Technical Summary

Technical Problem

[0005]本申请的目的在于,针对上述现有技术中的不足,提供一种刹停控制方法、无人飞行器以及计算机可读存储介质,以解决现有技术中刹停时可能出现刹停时碰撞到场景中障碍物、难以保证刹停时的安全性的问题

Benefits of technology

[0095]本申请所提供的刹停控制方法、无人飞行器以及计算机可读存储介质,首先从剩余任务路径中裁剪出刹停路径,在此基础上,在刹停路径上规划速度分配的初始刹停轨迹。由于刹停路径是从剩余任务路径中裁剪出的,因此,使得刹停路径是沿着剩余任务路径行进的。由于剩余任务路径是行驶设备正常行驶的能够避开各种障碍物的安全路径,而刹停路径沿剩余任务路径行进,因此,基于刹停路径执行刹停时可以避开各种障碍物。同时,通过为刹停路径进行速度规划得到初始刹停轨迹,使得可以根据初始刹停轨迹完成刹停。从而实现行驶设备在各种行驶环境中的安全刹停。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122984696A_ABST
    Figure CN122984696A_ABST
Patent Text Reader

Abstract

The application provides a stopping control method, an unmanned aerial vehicle and a computer readable storage medium. The method comprises: acquiring a remaining task path of a running device; cutting out a stopping path from the remaining task path; planning an initial stopping trajectory with speed distribution on the stopping path, each initial path point in the initial stopping trajectory having corresponding speed information, and each initial path point being located on the stopping path; and controlling the running device to perform stopping according to the initial stopping trajectory. Safe stopping of the running device in various running environments can be achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of unmanned aerial vehicle (UAV) technology, and more specifically, to a braking control method, an UAV, and a computer-readable storage medium. Background Technology

[0002] Braking trajectory optimization is a key technology in the field of autonomous driving, designed to ensure that vehicles and other driving devices such as drones can safely and smoothly decelerate to a stop in emergency situations.

[0003] In existing technologies, the braking trajectory planner primarily uses the current pose data to perform dynamic and kinematic calculations to predict the stopping position in the current velocity vector direction. The set of path points between the current position and the predicted stopping position is then used as the braking path. The braking trajectory is planned using this path, and the driving equipment is then controlled to complete the braking process according to the braking trajectory.

[0004] However, using existing technologies to brake in scenarios with limited safe passage space may result in collisions with obstacles during braking, making it difficult to guarantee safety during braking. Summary of the Invention

[0005] The purpose of this application is to address the shortcomings of the prior art by providing a braking control method, an unmanned aerial vehicle, and a computer-readable storage medium to solve the problems in the prior art where collisions with obstacles in the scene may occur during braking, making it difficult to guarantee the safety of braking.

[0006] To achieve the above objectives, the technical solution adopted in this application is as follows:

[0007] Firstly, this application provides a braking control method, including:

[0008] Obtain the remaining task path for the driving equipment;

[0009] Cut out the braking path from the remaining task paths;

[0010] An initial braking trajectory with speed allocation is planned on the braking path. Each initial path point in the initial braking trajectory has corresponding speed information, and each initial path point is located on the braking path.

[0011] Based on the initial braking trajectory, the driving device is controlled to perform braking.

[0012] As one possible implementation, the length of the braking path is the length required for the driving device to come to a stop under extreme operating conditions.

[0013] As one possible implementation, the step of pruning the braking path from the remaining task paths includes:

[0014] A braking path is generated based on the starting braking position of the driving device, the remaining task path, the estimated braking distance of the driving device, and the velocity vector direction of the driving device at the starting braking position. The braking path includes at least one task travel point on the remaining task path. The estimated braking distance is estimated based on the mechanical parameters of the driving device under extreme operating conditions.

[0015] As one possible implementation, generating a braking path based on the starting braking position of the driving device, the remaining task path, the estimated braking distance of the driving device, and the velocity vector direction of the driving device at the starting braking position includes:

[0016] Obtain the current sampling points on the remaining task paths;

[0017] Based on the current sampling point, the starting braking position, the estimated braking distance, and the velocity vector direction, determine whether the current sampling point is the braking end point;

[0018] If so, the braking path is generated based on the task travel points between the current sampling point and the starting braking position.

[0019] As one possible implementation, determining whether the current sampling point is the braking endpoint based on the current sampling point, the starting braking position, the estimated braking distance, and the velocity vector direction includes:

[0020] Obtain the vector line obtained by connecting the current sampling point with the starting braking position;

[0021] Determine the projection distance of the vector line in the direction of the velocity vector;

[0022] If the projected distance is greater than or equal to the estimated braking distance, then the current sampling point is determined as the braking endpoint.

[0023] As one possible implementation, the initial braking trajectory for speed allocation on the braking path includes:

[0024] The initial braking trajectory is generated based on the starting point information and the ending point information of the braking path. The starting point information includes the position coordinates of the starting braking position and the speed and acceleration of the driving device at the starting braking position. The ending point information includes the position coordinates of the last path point on the braking path and the speed and acceleration of the last path point.

[0025] As one possible implementation, generating the initial braking trajectory based on the start-point and end-point information of the braking path includes:

[0026] Obtain the braking speed threshold and braking acceleration threshold;

[0027] Set the velocity of the last path point to the braking speed threshold, and set the acceleration of the last path point to the braking acceleration threshold;

[0028] Based on the velocity and acceleration at the starting braking position, and the velocity and acceleration at the last path point, velocity information is assigned to each path point on the braking path to obtain the initial braking trajectory.

[0029] As one possible implementation, the step of assigning velocity information to each path point on the braking path based on the velocity and acceleration at the starting braking position and the velocity and acceleration at the last path point to obtain the initial braking trajectory includes:

[0030] Based on the velocity and acceleration at the starting braking position, and the velocity and acceleration at the last path point, the initial braking trajectory is obtained by assigning velocity information to each path point on the braking path using a double S-curve planning algorithm.

[0031] As one possible implementation, controlling the driving device to perform braking based on the initial braking trajectory includes:

[0032] The initial braking trajectory is sampled to generate a reference path point set, which includes multiple reference path points, each of which is an initial path point in the initial braking trajectory.

[0033] Based on the reference path point set, the target braking trajectory is generated iteratively and dynamically, and the driving device is controlled to brake according to the target braking trajectory.

[0034] As one possible implementation, sampling the initial braking trajectory to generate a reference path point set includes:

[0035] At preset time intervals, the initial path points on the initial braking trajectory are sampled, and each sampled initial path point is used as a reference path point in the reference path point set.

[0036] As one possible implementation, the step of iteratively and dynamically generating a target braking trajectory based on the reference path point set, and controlling the driving device to perform braking according to the target braking trajectory, includes:

[0037] A. Obtain the current position of the driving device;

[0038] B. Obtain multiple target reference path points located after the current position from the set of reference path points;

[0039] C. Generate a candidate braking trajectory based on the current position and the multiple target reference path points;

[0040] D. Optimize the candidate braking trajectory according to the preset optimization constraint information to obtain the target braking trajectory, wherein the optimization constraint information includes at least: speed penalty weight and time penalty weight;

[0041] E. Control the movement of the driving equipment according to the target braking trajectory, and after moving according to the target braking trajectory, determine whether the speed of the driving equipment is less than or equal to the braking speed threshold. If so, stop the loop; otherwise, repeat step A.

[0042] As one possible implementation, obtaining multiple target reference path points located after the current position from the set of reference path points includes:

[0043] The last target reference path point is obtained from the set of reference path points that is after the current position and differs from the current position by a preset time.

[0044] Each of the unvisited reference path points before the last target reference path point is taken as a target reference path point.

[0045] As one possible implementation, generating candidate braking trajectories based on the current position and the plurality of target reference path points includes:

[0046] Set the velocity of the last target reference path point to the braking velocity threshold, and set the acceleration of the last target reference path point to the braking acceleration threshold;

[0047] Based on the velocity and acceleration of the current position, and the velocity and acceleration of the last target reference path point, velocity information is assigned to each of the target reference path points to obtain the candidate braking trajectory.

[0048] As one possible implementation, obtaining the remaining task path of the driving device includes:

[0049] If the driving device is currently executing a task path and the driving device is in a preset emergency state, then the remaining task path is obtained.

[0050] Secondly, this application provides a braking control device, comprising:

[0051] The acquisition module is used to acquire the remaining task paths of the driving equipment;

[0052] The trimming module is used to trim the braking path from the remaining task path;

[0053] The planning module is used to plan an initial braking trajectory with speed distribution on the braking path. Each initial path point in the initial braking trajectory has corresponding speed information, and each initial path point is located on the braking path.

[0054] The control module is used to control the driving device to perform braking based on the initial braking trajectory.

[0055] As one possible implementation, the length of the braking path is the length required for the driving device to come to a stop under extreme operating conditions.

[0056] As one possible implementation, the cropping module is specifically used for:

[0057] A braking path is generated based on the starting braking position of the driving device, the remaining task path, the estimated braking distance of the driving device, and the velocity vector direction of the driving device at the starting braking position. The braking path includes at least one task travel point on the remaining task path. The estimated braking distance is estimated based on the mechanical parameters of the driving device under extreme operating conditions.

[0058] As one possible implementation, the cropping module is specifically used for:

[0059] Obtain the current sampling points on the remaining task paths;

[0060] Based on the current sampling point, the starting braking position, the estimated braking distance, and the velocity vector direction, determine whether the current sampling point is the braking end point;

[0061] If so, the braking path is generated based on the task travel points between the current sampling point and the starting braking position.

[0062] As one possible implementation, the cropping module is specifically used for:

[0063] Obtain the vector line obtained by connecting the current sampling point with the starting braking position;

[0064] Determine the projection distance of the vector line in the direction of the velocity vector;

[0065] If the projected distance is greater than or equal to the estimated braking distance, then the current sampling point is determined as the braking endpoint.

[0066] As one possible implementation, the planning module is specifically used for:

[0067] The initial braking trajectory is generated based on the starting point information and the ending point information of the braking path. The starting point information includes the position coordinates of the starting braking position and the speed and acceleration of the driving device at the starting braking position. The ending point information includes the position coordinates of the last path point on the braking path and the speed and acceleration of the last path point.

[0068] As one possible implementation, the planning module is specifically used for:

[0069] Obtain the braking speed threshold and braking acceleration threshold;

[0070] Set the velocity of the last path point to the braking speed threshold, and set the acceleration of the last path point to the braking acceleration threshold;

[0071] Based on the velocity and acceleration at the starting braking position, and the velocity and acceleration at the last path point, velocity information is assigned to each path point on the braking path to obtain the initial braking trajectory.

[0072] As one possible implementation, the planning module is specifically used for:

[0073] Based on the velocity and acceleration at the starting braking position, and the velocity and acceleration at the last path point, the initial braking trajectory is obtained by assigning velocity information to each path point on the braking path using a double S-curve planning algorithm.

[0074] As one possible implementation, the control module is specifically used for:

[0075] The initial braking trajectory is sampled to generate a reference path point set, which includes multiple reference path points, each of which is an initial path point in the initial braking trajectory.

[0076] Based on the reference path point set, the target braking trajectory is generated iteratively and dynamically, and the driving device is controlled to brake according to the target braking trajectory.

[0077] As one possible implementation, the control module is specifically used for:

[0078] At preset time intervals, the initial path points on the initial braking trajectory are sampled, and each sampled initial path point is used as a reference path point in the reference path point set.

[0079] As one possible implementation, the control module is specifically used for:

[0080] A. Obtain the current position of the driving device;

[0081] B. Obtain multiple target reference path points located after the current position from the set of reference path points;

[0082] C. Generate a candidate braking trajectory based on the current position and the multiple target reference path points;

[0083] D. Optimize the candidate braking trajectory according to the preset optimization constraint information to obtain the target braking trajectory, wherein the optimization constraint information includes at least: speed penalty weight and time penalty weight;

[0084] E. Control the movement of the driving equipment according to the target braking trajectory, and after moving according to the target braking trajectory, determine whether the speed of the driving equipment is less than or equal to the braking speed threshold. If so, stop the loop; otherwise, repeat step A.

[0085] As one possible implementation, the control module is specifically used for:

[0086] The last target reference path point is obtained from the set of reference path points that is after the current position and differs from the current position by a preset time.

[0087] Each of the unvisited reference path points before the last target reference path point is taken as a target reference path point.

[0088] As one possible implementation, the control module is specifically used for:

[0089] Set the velocity of the last target reference path point to the braking velocity threshold, and set the acceleration of the last target reference path point to the braking acceleration threshold;

[0090] Based on the velocity and acceleration of the current position, and the velocity and acceleration of the last target reference path point, velocity information is assigned to each of the target reference path points to obtain the candidate braking trajectory.

[0091] As one possible implementation, the acquisition module is specifically used for:

[0092] If the driving device is currently executing a task path and the driving device is in a preset emergency state, then the remaining task path is obtained.

[0093] Thirdly, this application provides an unmanned aerial vehicle, including: a processor and a memory, wherein the memory stores machine-readable instructions executable by the processor, and when the unmanned aerial vehicle is running, the processor executes the machine-readable instructions to perform the steps of the braking control method as described in the first aspect above.

[0094] Fourthly, this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, performs the steps of the braking control method described in the first aspect above.

[0095] The braking control method, unmanned aerial vehicle, and computer-readable storage medium provided in this application first extract a braking path from the remaining task path. Based on this, an initial braking trajectory with speed allocation is planned along the braking path. Since the braking path is extracted from the remaining task path, it travels along the remaining task path. Because the remaining task path is a safe path for the vehicle to travel normally and avoid various obstacles, and the braking path travels along the remaining task path, various obstacles can be avoided when braking is performed based on the braking path. Simultaneously, by planning the speed for the braking path to obtain the initial braking trajectory, braking can be completed according to the initial braking trajectory. This enables the vehicle to safely stop in various driving environments. Attached Figure Description

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

[0097] Figure 1 This is a schematic diagram of a vehicle traveling in a narrow space filled with obstacles.

[0098] Figure 2 A schematic flowchart illustrating the braking control method provided in an embodiment of this application;

[0099] Figure 3 A schematic flowchart illustrating the generation of a braking path in the braking control method provided in this application embodiment;

[0100] Figure 4 Example diagram of generating braking path;

[0101] Figure 5 A schematic flowchart illustrating the process of determining the braking endpoint in the braking control method provided in this application embodiment;

[0102] Figure 6 A schematic diagram illustrating the process of generating an initial braking trajectory for the braking control method provided in this application embodiment;

[0103] Figure 7 A schematic diagram illustrating the dynamic iterative generation of braking trajectory for the braking control method provided in this application embodiment;

[0104] Figure 8 Another flowchart illustrating the dynamic iterative generation of braking trajectory for the braking control method provided in this application embodiment;

[0105] Figure 9 A modular structure diagram of a braking control device provided in an embodiment of this application;

[0106] Figure 10 The structural schematic of the unmanned aerial vehicle 100 provided in the embodiments of this application. Detailed Implementation

[0107] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the accompanying drawings in this application are for illustrative and descriptive purposes only and are not intended to limit the scope of protection of this application. Furthermore, it should be understood that the schematic drawings are not drawn to scale. The flowcharts used in this application illustrate operations implemented according to some embodiments of this application. It should be understood that the operations in the flowcharts may not be implemented in sequence, and steps without logical contextual relationships may be reversed or implemented simultaneously. In addition, those skilled in the art, guided by the content of this application, may add one or more other operations to the flowcharts, or remove one or more operations from the flowcharts.

[0108] Furthermore, the described embodiments are merely some, not all, of the embodiments of this application. The components of the embodiments of this application described and illustrated herein can typically be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of this application provided in the accompanying drawings is not intended to limit the scope of the claimed application, but merely to illustrate selected embodiments of the application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.

[0109] It should be noted that the term "comprising" will be used in the embodiments of this application to indicate the presence of the features declared thereafter, but does not exclude the addition of other features.

[0110] Currently, braking trajectory planning primarily relies on dynamics and kinematic calculations to predict the stopping position in the current velocity vector direction, and then uses the set of path points between the current position and the predicted stopping position as the braking path. This method may encounter obstacles in scenarios with limited safe passage space. Specifically, Figure 1 This diagram illustrates a vehicle navigating a confined space filled with obstacles. When navigating this space, the vehicle needs to brake suddenly. The estimated stopping position is located in the direction of the vehicle's velocity vector, and the braking path follows this direction. If the vehicle is currently at position A, and its velocity vector at position A is pointing towards building 1, then because the estimated stopping position is in the direction of the velocity vector, the stopping position may be close to or on building 1, and the braking path will follow the velocity vector, resulting in a collision with building 1 upon braking. If the vehicle is currently at position B, and its velocity vector at position B is pointing towards building 2, then because the estimated stopping position is in the direction of the velocity vector, the stopping position may be close to or on building 2, and the braking path will follow the velocity vector, resulting in a collision with building 2 upon braking. In summary, since the estimated stopping position is directly located in the direction of the velocity vector, the braking path will travel along the direction of the velocity vector. Therefore, when braking in a scenario with limited safe passage space, there is a possibility of colliding with obstacles in the scene, making it difficult to guarantee the safety of braking.

[0111] Based on the above-mentioned problems, this application proposes a braking control method. This method cuts out the braking path from the remaining task path and plans the braking trajectory, so that the braking path no longer travels along the velocity vector direction, but travels along the task path of the driving device, thereby avoiding the driving device from colliding with obstacles in the scene when braking and ensuring safety when braking.

[0112] In addition, the current braking trajectory planning scheme has the following problems:

[0113] After determining the braking path, a braking trajectory is planned using that path, and the braking process is consistently executed according to this trajectory. However, due to functional limitations or other reasons, the vehicle may not be able to successfully stop according to this braking trajectory. Alternatively, in emergency situations such as when the vehicle malfunctions, consistently following this braking trajectory may result in braking failure due to equipment abnormalities, preventing emergency stopping.

[0114] To address this issue, this application no longer executes braking according to a fixed braking trajectory, but instead dynamically generates braking trajectories iteratively, enabling the driving equipment to reduce its speed and stop as quickly as possible along the task path, thereby achieving braking as early as possible in some emergency situations.

[0115] This application's embodiments can be applied to braking scenarios for driving equipment. These braking scenarios can be normal, such as when the driving equipment is about to reach its destination and needs to stop. Alternatively, they can be abnormal, such as when the driving equipment needs to stop urgently due to a system malfunction. System malfunctions can include, for example, sensor status abnormalities, actuator malfunctions or aging, or system resource scheduling abnormalities. The driving equipment described in this application's embodiments can be any driving equipment with path planning capabilities, such as vehicles, unmanned aerial vehicles (UAVs), and so on. An UAV can be, for example, a drone.

[0116] Figure 2 This is a flowchart illustrating the braking control method provided in an embodiment of this application. The executing entity of this method can be the aforementioned driving device. Figure 2 As shown, the method may include:

[0117] S201. Obtain the remaining task path of the driving equipment.

[0118] Optionally, before braking begins, the driving device travels along a pre-planned mission path. Taking an unmanned aerial vehicle (UAV) as an example, assuming the UAV needs to perform an inspection mission, the mission path could be an inspection path. Furthermore, this mission path is one that avoids various obstacles, allowing the driving device to travel safely. The aforementioned remaining mission path refers to the sub-paths within the mission path that the driving device has not yet traversed at the start of braking. Since the remaining mission path is a sub-path within the driving device's mission path, it is also a path that avoids various obstacles.

[0119] In one possible approach, when the driving device needs to come to a normal stop, it can obtain the remaining task path mentioned above and execute subsequent steps to complete the stop.

[0120] In another possible approach, when the driving device determines that an emergency stop is necessary, it can obtain the remaining task path mentioned above. For example, if the driving device is currently executing a task path and is in a preset emergency state, it can obtain the remaining task path and execute subsequent steps to complete the emergency stop. This emergency state could be, for example, a system malfunction of the driving device itself or an external anomaly such as severe weather.

[0121] S202. Cut out the braking path from the remaining task paths mentioned above.

[0122] The braking path is extracted from the remaining task path; therefore, the braking path may be a sub-path of the remaining task path. Since the braking path is a sub-path of the remaining task path, it travels along the remaining task path. Because the remaining task path is a safe path for the vehicle to travel normally, avoiding various obstacles, and the braking path travels along the remaining task path, various obstacles can be avoided when braking is performed based on the braking path.

[0123] It is worth noting that, since the braking path in this embodiment travels along the remaining task path, the braking path is not limited to a straight line, but can be a straight line, a curve, or a line with an angle.

[0124] S203. Plan an initial braking trajectory with speed distribution on the above braking path. Each initial path point in the initial braking trajectory has corresponding speed information, and each initial path point is located on the above braking path.

[0125] The initial braking trajectory planned for speed allocation on the aforementioned braking path can be understood as speed planning for the braking path. Through speed planning, speed information at multiple path points along the braking path can be obtained. The initial braking trajectory can be viewed as a trajectory obtained after assigning speed information to the braking path. Therefore, each initial path point in the initial braking trajectory is a path point on the braking path, and because speed planning has been completed, each initial path point in the initial braking trajectory contains speed information.

[0126] During speed planning, the speed of the last path point on the braking path can be planned as the braking speed threshold. When the speed of the traveling equipment reaches this braking speed threshold, it indicates that the traveling equipment is in a stopped state and will no longer travel. Through speed planning, the speed can be reduced to the braking speed threshold along each initial path point in the initial braking trajectory.

[0127] S204. Based on the initial braking trajectory described above, control the driving equipment to perform braking.

[0128] By following each initial path point in the initial braking trajectory, the speed can eventually be reduced to the braking speed threshold. Therefore, the braking of the vehicle can be completed based on the initial braking trajectory.

[0129] One possible approach is to directly control the vehicle to travel along the aforementioned initial braking trajectory to achieve braking. In this approach, the vehicle travels sequentially along each initial path point in the initial braking trajectory, and the speed at each initial path point is the speed planned above.

[0130] As another possible approach, a braking trajectory can be generated iteratively and dynamically based on the initial braking trajectory described above. This allows the vehicle to reduce its speed and stop as quickly as possible along the mission path, thereby achieving early braking in certain emergency situations. The specific implementation of this approach will be described in detail in the following embodiments.

[0131] In this embodiment, a braking path is first extracted from the remaining task path. Based on this, an initial braking trajectory with speed allocation is planned on the braking path. Since the braking path is extracted from the remaining task path, it travels along the remaining task path. Because the remaining task path is a safe path for the vehicle to travel normally and avoid various obstacles, and the braking path travels along the remaining task path, various obstacles can be avoided when braking is performed based on the braking path. At the same time, by planning the speed for the braking path to obtain the initial braking trajectory, braking can be completed according to the initial braking trajectory. Thus, safe braking of the vehicle is achieved in various driving environments.

[0132] As one possible implementation, the length of the aforementioned braking path is the length required for the traveling device to come to a stop under extreme operating conditions.

[0133] Among these extreme operating conditions, examples include the driving equipment encountering severe weather or the driving equipment's load exceeding 20%.

[0134] The mechanical parameters of the driving equipment under extreme working conditions can be preset, and the braking path can be cut from the remaining task path according to these preset mechanical parameters, so that the length of the braking path is the length required for the driving equipment to stop under extreme working conditions.

[0135] Optionally, the mechanical parameters of the driving equipment under extreme operating conditions are compared with those under normal operating conditions, resulting in a slower braking speed and a longer braking path than required under normal operating conditions. Specifically, the braking deceleration under extreme operating conditions can be set to be 50% slower than that under non-extreme operating conditions.

[0136] In this embodiment, since the length of the braking path is the length required for the driving equipment to stop under extreme conditions, and the length required to stop under extreme conditions is longer than the length required to stop under normal conditions, more length can be reserved for stopping, thereby ensuring safe stopping under various conditions.

[0137] The following describes one implementation of the method for trimming the braking path in step S202.

[0138] As an optional implementation, step S202 above may include:

[0139] A braking path is generated based on the starting braking position of the driving equipment, the remaining task path of the driving equipment, the estimated braking distance of the driving equipment, and the velocity vector direction of the driving equipment at the starting braking position. The braking path includes at least one task travel point on the remaining task path. The estimated braking distance is estimated based on the mechanical parameters of the driving equipment under extreme operating conditions.

[0140] Optionally, the aforementioned starting braking position may refer to the position where the driving equipment begins to brake. The starting braking position may be, for example, the moment when the driving equipment receives the braking command input by the user, or the moment when the driving equipment detects a system abnormality and determines to initiate emergency braking.

[0141] Optionally, the remaining mission path includes multiple mission waypoints in sequence. The driving device needs to pass through these mission waypoints as it travels along the remaining mission path. Taking a drone as an example, a mission waypoint can refer to a mission waypoint on the drone's mission path.

[0142] Optionally, before executing step S201, the estimated braking distance can be determined first. This estimated braking distance can refer to the distance the traveling device may travel from the start of braking to a complete stop, and it can be estimated based on the mechanical parameters of the traveling device braking under extreme conditions. For example, the mechanical parameters of the traveling device braking under extreme conditions may include, for instance, a 50% reduction in braking deceleration compared to non-extreme conditions. As a possible approach, the estimated braking distance can be determined by: calculating the stopping position in the current velocity vector direction using dynamics and kinematics, and using the set of path points between the starting braking position and the estimated stopping position as the braking path. Based on the braking path and the mechanical parameters of the traveling device braking under extreme conditions, a braking trajectory is planned, and the estimated braking distance is estimated based on the distance between adjacent path points in the braking trajectory. In this process, the braking path can be a straight line. However, when planning the braking trajectory based on the braking path and mechanical parameters, an S-shaped velocity curve planning method can be used to distribute the velocity, so that the acceleration or force presents an S-shaped distribution during the braking process.

[0143] Optionally, the velocity vector direction of the driving device at the initial braking position can refer to the tangential direction of the task path at the initial braking position. For example, refer to... Figure 1 Assuming the starting braking position is position A, the velocity vector direction of the driving device at position A is the tangent direction of the task path at position A.

[0144] Based on the aforementioned starting braking position, remaining task path, estimated braking distance, and velocity vector direction, the driving device can plan the aforementioned braking path. The braking path includes at least one task travel point on the remaining task path, thus ensuring that the braking path travels along the remaining task path. Since the remaining task path is a safe path for the driving device to travel normally and avoid various obstacles, and the braking path travels along the remaining task path, various obstacles can be avoided when braking based on the braking path. Furthermore, this embodiment pre-determines the aforementioned estimated braking distance when planning the braking path. By considering this estimated braking distance when planning the braking path, the length of the planned braking path can meet the requirements of various operating conditions, including extreme operating conditions.

[0145] Figure 3 This is a schematic flowchart illustrating the generation of the braking path in the braking control method provided in the embodiments of this application, as shown below. Figure 3 As shown, as an optional implementation, the braking path is generated based on the starting braking position of the driving device, the remaining task path of the driving device, the estimated braking distance of the driving device, and the velocity vector direction of the driving device at the starting braking position. Specifically, this may include:

[0146] S301. Obtain the current sampling points on the remaining task path.

[0147] Optionally, before executing this embodiment, multiple sampling points can be set on the remaining task path. As one possible approach, sampling points can be set at preset equal intervals between two adjacent task travel points on the remaining task path. Figure 4 Example diagram of generating braking path, see below. Figure 4 There are three task travel points on the remaining task path: waypoint 1, waypoint 2, and waypoint 3. Therefore, three sampling points can be set at equal intervals between waypoint 1 and waypoint 2: sampling point 1, sampling point 2, and sampling point 3. Additionally, multiple sampling points can also be set at equal intervals between waypoint 2 and waypoint 3. Figure 4 (Not shown in the image).

[0148] It is worth noting that each task travel point on the remaining task path can be used as a sampling point. When executing this embodiment, the current sampling point can refer to the sampling point determined through the above process or the task travel point.

[0149] Based on setting multiple sampling points, the sampling points can be traversed sequentially according to their order on the remaining task path. The current sampling point mentioned above can refer to the sampling point currently being traversed.

[0150] S302. Based on the current sampling point, the starting braking position, the estimated braking distance, and the velocity vector direction, determine whether the current sampling point is the braking endpoint.

[0151] The current sampling point is located on the remaining task path and has position coordinates. Therefore, by combining the current sampling point, the starting braking position, the estimated braking distance, and the direction of the velocity vector, it can be determined whether the current sampling point is the end point that satisfies the estimated braking distance, i.e., the braking end point.

[0152] S303. If so, then generate the braking path based on the task travel point between the current sampling point and the starting braking position.

[0153] If the current sampling point is determined as the braking endpoint, it means the braking path ends at the current sampling point. The braking path can be generated based on the task travel points between the current sampling point and the starting braking position. In one example, the starting braking position can be used as the starting point of the braking path, the current sampling point as the ending point, and each task travel point between the starting braking position and the current sampling point as a path point on the braking path. In another example, the starting braking position can be used as the starting point of the braking path, the current sampling point as the ending point, and each task travel point between the starting braking position and the current sampling point, as well as each sampling point between adjacent task travel points, as a path point on the braking path.

[0154] If it is determined that the current sampling point is not the braking endpoint, it means that the braking path cannot end at the current sampling point, and it is necessary to continue searching for the braking endpoint. Therefore, the next sampling point can be taken as the new current sampling point, and steps S301-S303 can be re-executed until a sampling point that can serve as the braking endpoint is found.

[0155] In this embodiment, multiple sampling points are set on the remaining task path. By combining the current sampling point, the starting braking position, the estimated braking distance, and the velocity vector direction, it is determined whether the current sampling point can be the end point that meets the estimated braking distance. Since the current sampling point, which is the braking end point, is located on the remaining path and meets the estimated braking distance, the braking path determined based on the current sampling point and the starting braking position can meet both safety and the distance required for braking.

[0156] Figure 5 This is a flowchart illustrating the process of determining the braking endpoint in the braking control method provided in this application embodiment, as shown below. Figure 5 As shown, as an optional implementation, step S302 may include:

[0157] S501. Obtain the vector line obtained by connecting the current sampling point and the starting braking position.

[0158] Optionally, the vector line is a line with directional properties; it can be a straight line or a curve. Both the current sampling point and the starting braking position have position coordinates. Connecting the current sampling point and the starting braking position yields a vector line from the starting braking position towards the current sampling point.

[0159] It should be understood that the connection between the current sampling point and the starting braking position described in this step is not a direct connection between the two points, but rather a connection along the remaining task path. Therefore, the vector line will pass through at least one path point on the remaining task path.

[0160] S502. Determine the projection distance of the above vector line in the direction of the above velocity vector.

[0161] Continue to refer to Figure 4 Assuming the current sampling point is sampling point 3, and the velocity vector direction is vertically upward, projecting the vector line obtained in step S502 onto the velocity vector direction yields a projected line. The length of this projected line is the aforementioned projection distance.

[0162] Optionally, the angle between a segment of the vector line that is not in the same direction as the velocity vector and the velocity vector direction can be calculated. Based on the angle and the length of the segment of the vector line, the projected distance of the segment of the vector line in the velocity vector direction can be calculated. The projected distance can be obtained by adding the projected distance to the length of the segment of the vector line that is in the same direction as the velocity vector.

[0163] S503. If the above-mentioned projected distance is greater than or equal to the above-mentioned estimated braking distance, then the above-mentioned current sampling point is determined as the braking end point.

[0164] If the projected distance is greater than or equal to the estimated braking distance, it indicates that the length of the path from the starting braking position along the remaining task path to the current sampling point is sufficient to meet the distance requirement for the driving device to complete braking.

[0165] In this embodiment, by obtaining the vector line between the current sampling point and the starting braking position, and determining the projection distance of the vector line in the direction of the velocity vector, when the projection distance meets the estimated braking distance, the current sampling point is taken as the braking end point, which can ensure that the final determined braking path meets the distance requirements for the driving equipment to complete braking.

[0166] As an optional implementation, step S203 above may include:

[0167] Based on the starting point and ending point information of the braking path, the initial braking trajectory is generated.

[0168] The starting point of the braking path is the initial braking position. Accordingly, the starting point information includes the coordinates of the initial braking position and the speed and acceleration of the vehicle at that position. The ending point information includes the coordinates of the last path point on the braking path and the speed and acceleration of that last path point. This last path point on the braking path could be, for example, a sampling point as described above, or a task travel point on the remaining task path.

[0169] Since the starting point information includes the position coordinates, velocity, and acceleration of the initial braking position, and the ending point information includes the position coordinates, velocity, and acceleration of the last path point, the velocities of each path point on the braking path can be flexibly planned by combining this information from the starting point and the ending point, thus obtaining the aforementioned initial braking trajectory.

[0170] Figure 6 This is a schematic flowchart illustrating the generation of the initial braking trajectory in the braking control method provided in this application embodiment, as shown below. Figure 6 As shown, as an optional implementation, the above steps generate the initial braking trajectory based on the starting point and ending point information of the braking path, which may specifically include:

[0171] S601, Obtain the braking speed threshold and braking acceleration threshold.

[0172] Optionally, as mentioned above, when the speed of the traveling device reaches the braking speed threshold, it indicates that the traveling device is in a stopped state and will no longer travel. The braking speed threshold can be preset. For example, the braking speed threshold can be 0.5 m / s or 0 m / s.

[0173] Optionally, the braking acceleration threshold can also be preset, which is the acceleration of the driving device when it is stationary. For example, the braking acceleration threshold can be 0 m / s.

[0174] S602. Set the speed of the last path point to the braking speed threshold and set the acceleration of the last path point to the braking acceleration threshold.

[0175] Optionally, the speed at the last path point is set to the braking speed threshold, and the acceleration at the last path point is set to the braking acceleration threshold, so that in the subsequent braking process, the driving device can complete braking and stop at the last path point at the latest.

[0176] S603. Based on the speed and acceleration at the starting braking position and the speed and acceleration at the last path point, assign speed information to each path point on the braking path to obtain the initial braking trajectory.

[0177] Optionally, the aforementioned starting braking position is the position where the traveling equipment is located when braking begins. The traveling equipment has speed and acceleration at the starting braking position, so the speed and acceleration at the starting braking position can be obtained in real time.

[0178] The starting point of the braking path is designated as the initial braking position, and the last path point is designated as the final braking position. Based on the speed and acceleration at both the starting and final points, speed information is sequentially planned for each path point along the braking path. This speed information includes both velocity and acceleration. By sequentially planning the speed information for each path point on the braking path, the vehicle gradually decelerates to the aforementioned braking speed threshold after starting to brake from the initial point, thus achieving a complete stop.

[0179] As an optional implementation, speed information can be allocated to each path point on the braking path using an S-curve planning method. This S-curve planning method can be, for example, a double-S speed curve planning algorithm. Specifically, based on the speed and acceleration at the starting braking position, and the speed and acceleration of the last path point, speed information can be allocated to each path point on the braking path using a double-S speed curve planning algorithm to obtain the initial braking trajectory.

[0180] Among them, the dual-S speed curve planning algorithm divides the speed curve into two stages: acceleration and deceleration. In each stage, an S-shaped curve is used to optimize motion control, so that the acceleration or force presents an S-distribution during braking, thereby making the motion smoother and improving the stability of the driving equipment when braking.

[0181] In this embodiment, by setting a braking speed threshold and a braking acceleration threshold for the last path point on the braking path, and by planning the speed for each path point on the braking path based on the speed and acceleration at the starting braking position and the speed and acceleration of the last path point on the braking path, the driving device can gradually decelerate to the braking speed threshold when braking according to the initial braking trajectory, thereby achieving braking.

[0182] The following is a detailed explanation of the second method mentioned in step S204 above, namely the method of iteratively and dynamically generating braking trajectories.

[0183] As mentioned earlier, the initial braking trajectory is obtained by speed planning along the braking path, and the length of the braking path is the length required for braking under extreme conditions, which is a length that takes into account safety redundancy. However, when the driving equipment is in the aforementioned emergency state, it may be unable to complete the braking according to the initial braking trajectory due to system functional limitations. In this case, the braking trajectory can be dynamically generated iteratively as described below, allowing the driving equipment to reduce its speed as quickly as possible along the task path until it stops, thereby achieving braking as early as possible in some emergency situations.

[0184] Figure 7 This is a schematic diagram illustrating the dynamic iterative generation of braking trajectories in the braking control method provided in this application embodiment, as shown below. Figure 7 As shown, the second method of step S204 above specifically includes:

[0185] S701. Sample the above-mentioned initial braking trajectory to generate a reference path point set. The reference path point set includes multiple reference path points, each of which is an initial path point in the above-mentioned initial braking trajectory.

[0186] Optionally, the initial braking trajectory includes multiple initial path points. In cases where the initial braking trajectory is long, the number of initial path points may be large. Therefore, the initial braking trajectory can be simplified by sampling. After sampling, the aforementioned reference path point set can be obtained. Sampling ensures that the subsequently generated target braking trajectory still follows the remaining task path, while also reducing subsequent computational complexity.

[0187] As an optional implementation, the initial path points on the initial braking trajectory can be sampled at preset time intervals, and each sampled initial path point can be used as a reference path point in the reference path point set in turn.

[0188] Each initial waypoint contains speed information. Therefore, the time required to travel from each initial waypoint to a subsequent waypoint can be calculated using this speed information. Furthermore, starting from the beginning of braking, the next initial waypoint can be selected as a reference waypoint at preset time intervals. Thus, in the resulting set of reference waypoints, the travel time between any two adjacent reference waypoints is the aforementioned preset time interval. By selecting initial waypoints with the same time interval as reference waypoints, the speed distribution during subsequent planning of the target braking trajectory becomes more stable.

[0189] S702. Based on the above reference path point set, iteratively and dynamically generate the target braking trajectory, and control the driving equipment to perform braking according to the target braking trajectory.

[0190] Iterative dynamic generation of the target braking trajectory refers to the ability to iteratively generate the target braking trajectory multiple times, with the goal of achieving a complete stop within each iteration. To achieve this, for example, the speed at the end of the target braking trajectory can be set to a predetermined braking speed threshold, and the acceleration can be set to a braking acceleration threshold, with speed planning based on these parameters. It should be understood that speed planning is re-performed in each iteration to generate a new target braking trajectory, and braking is performed according to this new trajectory. At the end of each iteration, the actual speed information of the vehicle is used to determine whether it has achieved a complete stop.

[0191] In this embodiment, sampling the initial braking trajectory can reduce computational complexity. By iteratively and dynamically generating the target braking trajectory, the driving device can reduce its speed as quickly as possible along the task path until it stops, thereby achieving braking as early as possible in some emergency situations.

[0192] Figure 8 Another flowchart illustrating the dynamic iterative generation of braking trajectory for the braking control method provided in this application embodiment is shown below. Figure 8 As shown, step S702 above may include:

[0193] S801, Obtain the current position of the driving equipment.

[0194] Optionally, at the beginning of each iteration cycle, the current position of the driving device is obtained. For example, in the first iteration cycle, the current position of the driving device is the aforementioned starting braking position. In the second iteration cycle, the current position of the driving device is the position reached after the driving device has traveled along the target braking trajectory generated in the first iteration cycle.

[0195] S802. Obtain multiple target reference path points located after the current position from the above reference path point set.

[0196] The reference path points in the reference path point set that are after the current position refer to the path points in the reference path point set that have not yet been traveled by the driving equipment. The above-mentioned multiple target reference path points can be all or part of the reference path points in the reference path point set that are after the current position.

[0197] When multiple target reference path points are part of the reference path point set located after the current position, these target reference path points can be obtained in the following way.

[0198] The reference path point that is after the current position and is separated from the current position by a preset time is obtained from the reference path point set as the last target reference path point; each unvisited reference path point before the last target reference path point is taken as a target reference path point.

[0199] Since the reference path point set is obtained by sampling the initial path points on the initial braking trajectory at preset time intervals, the travel time required between any two adjacent reference path points in the reference path point set is the aforementioned preset time interval. Therefore, the preset time interval can be divided by the preset time interval to calculate the number of reference path points between the last target reference path point set and the current position. Then, starting from the current position, this number of reference path points is skipped to determine the last target reference path. Based on this, each untraveled reference path point before the last target reference path point is considered as a target reference path point. It should be understood that an untraveled reference path point refers to a path point that has not yet been traversed by the driving equipment.

[0200] For example, the preset duration could be a value in seconds.

[0201] By selecting a reference path point that differs from the current position by a preset time as the last target reference path point, and selecting each previously unvisited reference path point as a target reference path point, that is, selecting a portion of reference path points after the current position as target reference path points, each iteration can choose the shortest possible path to plan the speed, thereby achieving the earliest possible braking in emergency situations.

[0202] S803. Based on the current position and the multiple target reference path points mentioned above, generate a candidate braking trajectory.

[0203] The current position and the aforementioned target reference path points together constitute the path to be traveled in this iteration. Based on this, speed planning can be performed on this path to obtain the aforementioned candidate braking trajectory. As mentioned earlier, the goal of each iteration is to complete the braking and reach a stop within the current iteration. To achieve this goal, for example, the speed of the endpoint of the target braking trajectory can be set to the aforementioned braking speed threshold, and the acceleration can be set to the braking acceleration threshold in each iteration, and speed planning can be performed accordingly.

[0204] Specifically, in this step, the candidate braking trajectory can be generated through the following process.

[0205] The velocity of the last target reference path point is set as the braking velocity threshold, and the acceleration of the last target reference path point is set as the braking acceleration threshold. Based on the velocity and acceleration of the current position, and the velocity and acceleration of the last target reference path point, velocity information is assigned to each target reference path point to obtain the above-mentioned candidate braking trajectories.

[0206] The specific process of obtaining the above-mentioned candidate braking trajectory is the same as the process of generating the initial braking trajectory in step S603 above, and can be referred to the description of step S603 above, which will not be repeated here.

[0207] By setting the velocity of the last target reference path point as the braking velocity threshold and the acceleration of the last target reference path point as the braking acceleration threshold, the goal of this iteration loop is to complete the braking and reach a stopped state within this iteration loop as much as possible, thereby achieving braking as early as possible in emergency situations.

[0208] S804. Based on the preset optimization constraint information, optimize the above-mentioned candidate braking trajectory to obtain the above-mentioned target braking trajectory. The optimization constraint information includes at least: speed penalty weight and time penalty weight.

[0209] Optionally, in step S803 above, a candidate braking trajectory is generated with the goal of completing the braking and reaching a stopped state within the current iteration loop. However, the actual braking is subject to constraints such as the system capability of the driving equipment and the requirements for driving stability. Therefore, the braking cannot be performed directly according to the candidate braking trajectory. Instead, the candidate braking trajectory needs to be optimized based on the above-mentioned optimization constraint information so that the driving equipment can achieve braking as early as possible while satisfying various constraint information.

[0210] The aforementioned optimization constraints include at least velocity penalty weights and time penalty weights. In addition, they may include smoothness penalty weights, dynamic penalty weights, and kinematic penalty weights. The values ​​of the velocity penalty weights and time penalty weights can be greater than the weights of other optimization constraints to reduce the velocity in the current iteration as quickly as possible. Furthermore, the smoothness penalty weight can be used to constrain the rate of change of acceleration and force, while the dynamic penalty weight can be used to constrain the system's maximum output. Taking a drone as an example, the system's maximum output may include the drone's maximum thrust and maximum tilt angle. The kinematic penalty weight can be used to constrain the target's braking trajectory to pass through a reference path point.

[0211] As an example, the above-mentioned candidate braking trajectories can be optimized using a convex optimization algorithm based on preset optimization constraint information.

[0212] S805. Control the movement of the driving equipment according to the above-mentioned target braking trajectory.

[0213] S806. After moving along the target braking trajectory, determine whether the speed of the driving equipment is less than or equal to the braking speed threshold. If so, stop the loop; otherwise, repeat step S801.

[0214] After obtaining the target braking trajectory, the target braking trajectory can be published to the actuator on the driving equipment. The actuator controls the driving equipment to move according to the target braking trajectory. After the movement of the target braking trajectory is completed, it is determined whether the speed of the driving equipment is less than or equal to the braking speed threshold. If so, it indicates that the driving equipment has completed braking and reached a stopped state in this iteration cycle, so the iteration cycle can be ended. Otherwise, a new round of iteration cycle is executed in order to complete braking and reach a stopped state as much as possible in the new round of iteration cycle.

[0215] In this embodiment, multiple target reference path points are obtained from the reference path point set during each iteration. By performing speed planning on the multiple target reference path points, a candidate braking trajectory can be generated. The candidate braking trajectory aims to complete the braking as early as possible in this iteration. Based on this, the candidate braking trajectory is optimized according to the preset optimization constraint information, so that the driving device can achieve braking as early as possible and meet various constraint information.

[0216] Based on the same inventive concept, this application also provides a braking control device corresponding to the braking control method. Since the principle of the device in this application is similar to the braking control method described above in this application, the implementation of the device can refer to the implementation of the method, and the repeated parts will not be described again.

[0217] Figure 9 A modular structure diagram of a braking control device provided in an embodiment of this application is shown below. Figure 9 As shown, the device includes:

[0218] The acquisition module 901 is used to acquire the remaining task path of the driving equipment.

[0219] The trimming module 902 is used to trim the braking path from the remaining task path.

[0220] The planning module 903 is used to plan an initial braking trajectory with speed distribution on the braking path. Each initial path point in the initial braking trajectory has corresponding speed information, and each initial path point is located on the braking path.

[0221] The control module 904 is used to control the driving device to perform braking based on the initial braking trajectory.

[0222] As one possible implementation, the length of the braking path is the length required for the driving device to come to a stop under extreme operating conditions.

[0223] As one possible implementation, the trimming module 902 is specifically used for:

[0224] A braking path is generated based on the starting braking position of the driving device, the remaining task path, the estimated braking distance of the driving device, and the velocity vector direction of the driving device at the starting braking position. The braking path includes at least one task travel point on the remaining task path. The estimated braking distance is estimated based on the mechanical parameters of the driving device under extreme operating conditions.

[0225] As one possible implementation, the trimming module 902 is specifically used for:

[0226] Obtain the current sampling points on the remaining task paths;

[0227] Based on the current sampling point, the starting braking position, the estimated braking distance, and the velocity vector direction, determine whether the current sampling point is the braking end point;

[0228] If so, the braking path is generated based on the task travel points between the current sampling point and the starting braking position.

[0229] As one possible implementation, the trimming module 902 is specifically used for:

[0230] Obtain the vector line obtained by connecting the current sampling point with the starting braking position;

[0231] Determine the projection distance of the vector line in the direction of the velocity vector;

[0232] If the projected distance is greater than or equal to the estimated braking distance, then the current sampling point is determined as the braking endpoint.

[0233] As one possible implementation, the planning module 903 is specifically used for:

[0234] The initial braking trajectory is generated based on the starting point information and the ending point information of the braking path. The starting point information includes the position coordinates of the starting braking position and the speed and acceleration of the driving device at the starting braking position. The ending point information includes the position coordinates of the last path point on the braking path and the speed and acceleration of the last path point.

[0235] As one possible implementation, the planning module 903 is specifically used for:

[0236] Obtain the braking speed threshold and braking acceleration threshold;

[0237] Set the velocity of the last path point to the braking speed threshold, and set the acceleration of the last path point to the braking acceleration threshold;

[0238] Based on the velocity and acceleration at the starting braking position, and the velocity and acceleration at the last path point, velocity information is assigned to each path point on the braking path to obtain the initial braking trajectory.

[0239] As one possible implementation, the planning module 903 is specifically used for:

[0240] Based on the velocity and acceleration at the starting braking position, and the velocity and acceleration at the last path point, velocity information is assigned to each path point on the braking path using a double S-curve planning algorithm to obtain the initial braking trajectory.

[0241] In one possible implementation, the control module 904 is specifically used for:

[0242] The initial braking trajectory is sampled to generate a reference path point set, which includes multiple reference path points, each of which is an initial path point in the initial braking trajectory.

[0243] Based on the reference path point set, the target braking trajectory is generated iteratively and dynamically, and the driving device is controlled to brake according to the target braking trajectory.

[0244] In one possible implementation, the control module 904 is specifically used for:

[0245] At preset time intervals, the initial path points on the initial braking trajectory are sampled, and each sampled initial path point is used as a reference path point in the reference path point set.

[0246] In one possible implementation, the control module 904 is specifically used for:

[0247] A. Obtain the current position of the driving device;

[0248] B. Obtain multiple target reference path points located after the current position from the set of reference path points;

[0249] C. Generate a candidate braking trajectory based on the current position and the multiple target reference path points;

[0250] D. Optimize the candidate braking trajectory according to the preset optimization constraint information to obtain the target braking trajectory, wherein the optimization constraint information includes at least: speed penalty weight and time penalty weight.

[0251] E. Control the movement of the driving equipment according to the target braking trajectory, and after moving according to the target braking trajectory, determine whether the speed of the driving equipment is less than or equal to the braking speed threshold. If so, stop the loop; otherwise, repeat step A.

[0252] In one possible implementation, the control module 904 is specifically used for:

[0253] The last target reference path point is obtained from the set of reference path points that is after the current position and differs from the current position by a preset time.

[0254] Each of the unvisited reference path points before the last target reference path point is taken as a target reference path point.

[0255] In one possible implementation, the control module 904 is specifically used for:

[0256] Set the velocity of the last target reference path point to the braking velocity threshold, and set the acceleration of the last target reference path point to the braking acceleration threshold;

[0257] Based on the velocity and acceleration of the current position, and the velocity and acceleration of the last target reference path point, velocity information is assigned to each of the target reference path points to obtain the candidate braking trajectory.

[0258] As one possible implementation, the acquisition module 901 is specifically used for:

[0259] If the driving device is currently executing a task path and the driving device is in a preset emergency state, then the remaining task path is obtained.

[0260] This application also provides an unmanned aerial vehicle 100, such as Figure 10 The diagram shown is a structural schematic of an unmanned aerial vehicle 100 provided in an embodiment of this application, including: a processor 101, a memory 102, and optionally, a bus 103. The memory 102 stores machine-readable instructions executable by the processor 101 (e.g., ...). Figure 9The device includes the acquisition module, trimming module, planning module, and execution instructions corresponding to the control module. When the unmanned aerial vehicle 100 is running, the processor 101 and the memory 102 communicate through the bus 103. When the machine-readable instructions are executed by the processor 101, the steps of the method described in the aforementioned method embodiment are executed.

[0261] This application also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, performs the steps of the above-described braking control method.

[0262] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems and devices described above can be referred to the corresponding processes in the method embodiments, and will not be repeated here. In the several embodiments provided in this application, it should be understood that the disclosed systems, devices, and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. Furthermore, multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed mutual coupling or direct coupling or communication connection can be through some communication interfaces; the indirect coupling or communication connection of devices or modules can be electrical, mechanical, or other forms.

[0263] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. If the functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0264] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application.

Claims

1. A braking control method, characterized in that, include: Obtain the remaining task path for the driving equipment; Cut out the braking path from the remaining task paths; An initial braking trajectory with speed allocation is planned on the braking path. Each initial path point in the initial braking trajectory has corresponding speed information, and each initial path point is located on the braking path. Based on the initial braking trajectory, the driving device is controlled to perform braking.

2. The method according to claim 1, characterized in that, The length of the braking path is the length required for the driving device to come to a stop under extreme operating conditions.

3. The method according to claim 2, characterized in that, The step of pruning the braking path from the remaining task paths includes: A braking path is generated based on the starting braking position of the driving device, the remaining task path, the estimated braking distance of the driving device, and the velocity vector direction of the driving device at the starting braking position. The braking path includes at least one task travel point on the remaining task path. The estimated braking distance is estimated based on the mechanical parameters of the driving device under extreme operating conditions.

4. The method according to claim 3, characterized in that, The step of generating a braking path based on the starting braking position of the driving device, the remaining task path, the estimated braking distance of the driving device, and the velocity vector direction of the driving device at the starting braking position includes: Obtain the current sampling points on the remaining task paths; Based on the current sampling point, the starting braking position, the estimated braking distance, and the velocity vector direction, determine whether the current sampling point is the braking end point; If so, the braking path is generated based on the task travel points between the current sampling point and the starting braking position.

5. The method according to claim 4, characterized in that, The step of determining whether the current sampling point is the braking endpoint based on the current sampling point, the starting braking position, the estimated braking distance, and the velocity vector direction includes: Obtain the vector line obtained by connecting the current sampling point with the starting braking position; Determine the projection distance of the vector line in the direction of the velocity vector; If the projected distance is greater than or equal to the estimated braking distance, then the current sampling point is determined as the braking endpoint.

6. The method according to claim 1, characterized in that, The initial braking trajectory for planning speed distribution on the braking path includes: The initial braking trajectory is generated based on the starting point information and the ending point information of the braking path. The starting point information includes the position coordinates of the starting braking position and the speed and acceleration of the driving device at the starting braking position. The ending point information includes the position coordinates of the last path point on the braking path and the speed and acceleration of the last path point.

7. The method according to claim 6, characterized in that, The step of generating the initial braking trajectory based on the start-point and end-point information of the braking path includes: Obtain the braking speed threshold and braking acceleration threshold; Set the velocity of the last path point to the braking speed threshold, and set the acceleration of the last path point to the braking acceleration threshold; Based on the velocity and acceleration at the starting braking position, and the velocity and acceleration at the last path point, velocity information is assigned to each path point on the braking path to obtain the initial braking trajectory.

8. The method according to claim 7, characterized in that, The step of assigning velocity information to each path point on the braking path based on the velocity and acceleration at the starting braking position and the velocity and acceleration at the last path point to obtain the initial braking trajectory includes: Based on the velocity and acceleration at the starting braking position, and the velocity and acceleration at the last path point, the initial braking trajectory is obtained by assigning velocity information to each path point on the braking path using a double S-curve planning algorithm.

9. The method according to any one of claims 1-8, characterized in that, The step of controlling the driving device to perform braking based on the initial braking trajectory includes: The initial braking trajectory is sampled to generate a reference path point set, which includes multiple reference path points, each of which is an initial path point in the initial braking trajectory. Based on the reference path point set, the target braking trajectory is generated iteratively and dynamically, and the driving device is controlled to brake according to the target braking trajectory.

10. The method according to claim 9, characterized in that, The step of sampling the initial braking trajectory to generate a reference path point set includes: At preset time intervals, the initial path points on the initial braking trajectory are sampled, and each sampled initial path point is used as a reference path point in the reference path point set.

11. The method according to claim 9, characterized in that, The step of iteratively and dynamically generating a target braking trajectory based on the reference path point set, and controlling the driving device to perform braking according to the target braking trajectory, includes: A. Obtain the current position of the driving device; B. Obtain multiple target reference path points located after the current position from the set of reference path points; C. Generate a candidate braking trajectory based on the current position and the multiple target reference path points; D. Optimize the candidate braking trajectory according to the preset optimization constraint information to obtain the target braking trajectory, wherein the optimization constraint information includes at least: speed penalty weight and time penalty weight; E. Control the movement of the driving equipment according to the target braking trajectory, and after moving according to the target braking trajectory, determine whether the speed of the driving equipment is less than or equal to the braking speed threshold. If so, stop the loop; otherwise, repeat step A.

12. The method according to claim 11, characterized in that, The step of obtaining multiple target reference path points located after the current position from the reference path point set includes: The last target reference path point is obtained from the set of reference path points that is after the current position and differs from the current position by a preset time. Each of the unvisited reference path points before the last target reference path point is taken as a target reference path point.

13. The method according to claim 11, characterized in that, The step of generating a candidate braking trajectory based on the current position and the multiple target reference path points includes: Set the velocity of the last target reference path point to the braking velocity threshold, and set the acceleration of the last target reference path point to the braking acceleration threshold; Based on the velocity and acceleration of the current position, and the velocity and acceleration of the last target reference path point, velocity information is assigned to each of the target reference path points to obtain the candidate braking trajectory.

14. The method according to any one of claims 1-8, characterized in that, The process of obtaining the remaining task path of the driving device includes: If the driving device is currently executing a task path and the driving device is in a preset emergency state, then the remaining task path is obtained.

15. An unmanned aerial vehicle, characterized in that, include: The processor and memory, the memory storing machine-readable instructions executable by the processor, which, when the unmanned aerial vehicle is in operation, execute the machine-readable instructions to perform the steps of the braking control method as described in any one of claims 1 to 14.

16. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, performs the steps of the braking control method as described in any one of claims 1 to 14.