CN114527783A - Control method, device and equipment of unmanned aerial vehicle and computer storage medium - Google Patents

Control method, device and equipment of unmanned aerial vehicle and computer storage medium Download PDF

Info

Publication number
CN114527783A
CN114527783A CN202111555008.0A CN202111555008A CN114527783A CN 114527783 A CN114527783 A CN 114527783A CN 202111555008 A CN202111555008 A CN 202111555008A CN 114527783 A CN114527783 A CN 114527783A
Authority
CN
China
Prior art keywords
acceleration
determining
aerial vehicle
unmanned aerial
speed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111555008.0A
Other languages
Chinese (zh)
Inventor
杨政
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Huafei Intelligent Technology Co ltd
Original Assignee
Zhejiang Huafei Intelligent Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Huafei Intelligent Technology Co ltd filed Critical Zhejiang Huafei Intelligent Technology Co ltd
Priority to CN202111555008.0A priority Critical patent/CN114527783A/en
Publication of CN114527783A publication Critical patent/CN114527783A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/10Simultaneous control of position or course in three dimensions
    • G05D1/101Simultaneous control of position or course in three dimensions specially adapted for aircraft

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

The application discloses control method, device, equipment and computer storage medium of unmanned aerial vehicle, relates to the technical field of unmanned aerial vehicle, and is used for improving the flight safety of unmanned aerial vehicle and the real-time performance of motion planning, and the method comprises the following steps: determining the current motion state of the unmanned aerial vehicle and the obstacle information in the flight direction according to the detection data of each sensor included in the unmanned aerial vehicle; determining an obstacle avoidance flight position of the unmanned aerial vehicle according to the obstacle information and the target flight position of the unmanned aerial vehicle; determining a kinematics planning result of the unmanned aerial vehicle reaching the obstacle avoidance flight position according to the current motion state and the obstacle avoidance flight position by taking the maximum speed, the maximum acceleration and the maximum jerk of the unmanned aerial vehicle as constraints; and controlling the flight process of the unmanned aerial vehicle according to the kinematics planning result.

Description

Control method, device and equipment of unmanned aerial vehicle and computer storage medium
Technical Field
The application relates to the technical field of Unmanned Aerial vehicles (UAC), and provides a control method, a control device, control equipment and a computer storage medium for an UAV.
Background
There is extensive application in fields such as public security fire control, electric power are patrolled and examined and are rescued disaster and speedily carry out rescue work for many rotor unmanned aerial vehicle, and at unmanned aerial vehicle flight in-process, unmanned aerial vehicle can record the motion state of self in real time, and in addition, will give unmanned aerial vehicle's target state based on the flight task, the target of unmanned aerial vehicle's motion planning then calculates a track that satisfies each side demand, then unmanned aerial vehicle will carry out relevant task along this track. In addition, these flight scenes are relatively complicated, and various obstacles with different sizes exist, so that the unmanned aerial vehicle can crash once the unmanned aerial vehicle collides with the obstacles, and even smash people and objects on the ground.
Therefore, how to plan the safe flight motion of the unmanned aerial vehicle in a complex environment is very important.
Disclosure of Invention
The embodiment of the application provides a control method, a control device, control equipment and a computer storage medium for an unmanned aerial vehicle, and is used for improving the flight safety of the unmanned aerial vehicle and the real-time performance of motion planning.
In one aspect, a method for controlling a drone is provided, the method including:
determining the current motion state of the unmanned aerial vehicle and the obstacle information in the flight direction according to the detection data of each sensor included in the unmanned aerial vehicle;
determining an obstacle avoidance flight position of the unmanned aerial vehicle according to the obstacle information and the target flight position of the unmanned aerial vehicle;
determining a kinematics planning result of the unmanned aerial vehicle reaching the obstacle avoidance flight position according to the current motion state and the obstacle avoidance flight position by taking the maximum speed, the maximum acceleration and the maximum jerk of the unmanned aerial vehicle as constraints;
and controlling the flight process of the unmanned aerial vehicle according to the kinematics planning result.
In one aspect, a control device for an unmanned aerial vehicle is provided, the device comprising:
the detection unit is used for determining the current motion state of the unmanned aerial vehicle and the obstacle information in the flight direction according to detection data of each sensor included in the unmanned aerial vehicle;
the obstacle avoidance unit is used for determining an obstacle avoidance flight position of the unmanned aerial vehicle according to the obstacle information and the target flight position of the unmanned aerial vehicle;
the motion planning unit is used for determining a kinematics planning result of the unmanned aerial vehicle reaching the obstacle avoidance flight position according to the current motion state and the obstacle avoidance flight position by taking the maximum speed, the maximum acceleration and the maximum jerk of the unmanned aerial vehicle as constraints;
and the flight control unit is used for controlling the flight process of the unmanned aerial vehicle according to the kinematics planning result.
Specifically, the motion planning unit is specifically configured to:
determining the cruising speed of the unmanned aerial vehicle by taking the maximum speed, the maximum acceleration and the maximum jerk of the unmanned aerial vehicle as constraints according to the current motion state and the obstacle avoidance flight position;
according to the cruising speed, determining an acceleration section estimated time length and an acceleration section target motion state corresponding to an acceleration stage of the unmanned aerial vehicle, and a deceleration section estimated time length and a deceleration section target motion state corresponding to a deceleration stage;
when a cruise stage is determined to be needed according to a difference value between a deceleration ending moment position in the motion state of the deceleration section and the obstacle avoidance flight position, determining a cruise section time length corresponding to the cruise stage according to the difference value;
and determining the motion state of each moment according to the duration of the acceleration section, the target motion state of the acceleration section, the duration of the deceleration section, the target motion state of the deceleration section and the duration of the cruise section, and obtaining the kinematic planning result.
Specifically, the motion planning unit is specifically configured to:
determining an assumed stopping speed according to the initial speed and the initial acceleration in the current motion state, the maximum jerk and an expected acceleration when the obstacle avoidance flight position is reached;
determining the cruising acceleration of the unmanned aerial vehicle according to the comparison result between the assumed stopping speed and the expected speed when the unmanned aerial vehicle reaches the obstacle avoidance flight position;
determining an acceleration segment expected motion state based on the cruise acceleration, the initial speed and the initial acceleration;
determining an assumed stop position at the end time of the acceleration phase based on the expected motion state of the acceleration segment;
and determining the cruising speed according to the comparison result between the assumed stopping position and the obstacle avoidance flight position.
Specifically, the motion planning unit is specifically configured to:
if the assumed stopping speed is less than the expected speed, determining that the cruising acceleration is the maximum acceleration and the sign is positive;
if the assumed stopping speed is greater than the desired speed, then the cruise acceleration is determined to be the maximum acceleration with a negative sign.
Specifically, the motion planning unit is specifically configured to:
determining a first sub-duration of an acceleration sub-stage in the acceleration stage according to a difference value between the cruising acceleration and the initial acceleration;
determining the acceleration section acceleration rate of the unmanned aerial vehicle in the acceleration sub-stage according to the comparison result between the cruise acceleration rate and the initial acceleration rate;
determining the final speed of the acceleration section at the end moment of the acceleration sub-stage according to the initial speed, the initial acceleration, the first sub-time length and the acceleration section acceleration;
and determining expected motion states of a deceleration sub-stage and a cruise sub-stage in the acceleration stage according to the cruise acceleration and the maximum jerk.
Specifically, the motion planning unit is specifically configured to:
determining a second sub-duration of the deceleration sub-stage according to the cruising acceleration and the maximum acceleration;
determining the acceleration of the deceleration section of the deceleration sub-stage according to the direction of the cruising acceleration;
determining the speed variation of the deceleration section of the deceleration sub-stage according to the cruising acceleration, the second sub-time length and the acceleration of the deceleration section;
determining the cruise section speed variation of the cruise sub-stage in the acceleration stage according to the terminal speed of the acceleration section, the speed variation of the deceleration section and the expected speed;
and determining a third sub-time length of the cruise sub-stage according to the cruise section speed variation and the cruise acceleration.
Specifically, the motion planning unit is specifically configured to:
when the cruise-free stage is determined according to the difference value between the deceleration ending moment position in the deceleration section motion state and the obstacle avoidance flight position, the target time length of the acceleration section and the target time length of the deceleration section are determined again by adopting an iterative bisection method; wherein, in one iteration, the method comprises the following steps:
determining an updating time length of an acceleration section based on a first time length variable and a second time length variable input in the iteration, wherein an initial value of the first time length variable is the estimated time length of the acceleration section, and a value of the second time length variable is zero;
updating the position of the deceleration ending moment based on the updating duration of the acceleration section, and judging whether the difference value between the updated position of the deceleration ending moment and the obstacle avoidance flight position is smaller than a preset threshold value or not;
if the target time length is less than the target time length, determining the updating time length of the acceleration section as the target time length of the acceleration section, and determining the target time length of the deceleration section according to the target time length of the acceleration section;
and if not, updating the first time length variable and the second time length variable based on the difference between the updated deceleration ending time position and the obstacle avoidance flight position.
Optionally, the unmanned aerial vehicle includes a millimeter wave radar sensor disposed at a head position and facing the flight direction;
the obstacle avoidance unit is specifically configured to:
determining position information of each obstacle in the flight direction based on a sensor signal in the flight direction detected by the millimeter wave radar sensor;
determining a target obstacle closest to the unmanned aerial vehicle from the obstacles based on the position information of the obstacles;
and determining the obstacle avoidance flight position based on the position information of the target obstacle and the target flight position.
Optionally, the obstacle avoidance unit is further configured to:
determining the target flight position based on the received flight control quantity sent by the remote control device; alternatively, the first and second electrodes may be,
and determining the target flight position based on the set waypoint task information.
In one aspect, a computer device is provided, comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the steps of any of the above methods when executing the computer program.
In one aspect, a computer storage medium is provided having computer program instructions stored thereon that, when executed by a processor, implement the steps of any of the methods described above.
In one aspect, a computer program product or computer program is provided that includes computer instructions stored in a computer-readable storage medium. The computer instructions are read by a processor of a computer device from a computer-readable storage medium, and the computer instructions are executed by the processor to cause the computer device to perform the steps of any of the methods described above.
In the embodiment of the application, according to the detection data of each sensor that unmanned aerial vehicle includes, confirm the current motion state and the ascending barrier information of flight direction of unmanned aerial vehicle, and according to barrier information and unmanned aerial vehicle's target flight position, confirm unmanned aerial vehicle keep away the barrier flight position, use unmanned aerial vehicle's maximum speed, maximum acceleration and maximum acceleration as the restraint, according to current motion state and keep away barrier flight position, confirm that unmanned aerial vehicle reachs the kinematics planning result of keeping away barrier flight position, and then according to the kinematics planning result, control unmanned aerial vehicle's flight process. It is thus clear that, according to the environment of the dynamic change in the unmanned aerial vehicle flight direction, determine and keep away barrier flight position to satisfy and keep away the barrier requirement, improve the security of unmanned aerial vehicle flight, and, still utilize unmanned aerial vehicle kinematics constraint equation, establish speed, acceleration rate third order model, when promoting the planning real-time, still make the planning result more level and smooth, and satisfy time optimum, improve flight efficiency.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments or related technologies, the drawings needed to be used in the description of the embodiments or related technologies are briefly introduced below, it is obvious that the drawings in the following description are only the embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 is a schematic structural diagram of an unmanned aerial vehicle control system provided in an embodiment of the present application;
fig. 2 is a schematic structural diagram of an obstacle avoidance sensing module according to an embodiment of the present application;
fig. 3 is a schematic flowchart of a control method of an unmanned aerial vehicle according to an embodiment of the present application;
fig. 4 is a schematic view of a flight control logic of the unmanned aerial vehicle provided in the embodiment of the present application;
fig. 5 is a schematic flowchart of a motion planning process using a position setting method according to an embodiment of the present application;
FIG. 6 is a schematic flow chart illustrating a process for determining a desired motion state of an acceleration phase by using a velocity setting method according to an embodiment of the present disclosure;
FIG. 7 is a schematic flow chart of an iterative bisection method provided in an embodiment of the present application;
FIG. 8 is a graph of simulation data provided by an embodiment of the present application;
fig. 9 is a schematic structural diagram of a control device of an unmanned aerial vehicle according to an embodiment of the present application;
fig. 10 is a schematic structural diagram of a computer device according to an embodiment of the present application.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the technical solutions in the embodiments of the present application will be described clearly and completely with reference to the accompanying drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application. In the present application, the embodiments and features of the embodiments may be arbitrarily combined with each other without conflict. Also, while a logical order is shown in the flow diagrams, in some cases, the steps shown or described may be performed in an order different than here.
For the convenience of understanding the technical solutions provided by the embodiments of the present application, some key terms used in the embodiments of the present application are explained first:
unmanned aerial vehicle: as the name implies, a drone is an unmanned aircraft that is on board, has no cockpit, and is operated by a radio remote control device and self-contained program control means. The unmanned aerial vehicle is provided with an autopilot, a program control device and other equipment, and personnel on the ground, a naval vessel or a mother aircraft remote control station track, position, remotely control, telemeter and digitally transmit the equipment through radar and other equipment. Unmanned planes can include several categories, including unmanned helicopters, unmanned fixed-wing aircraft, unmanned multi-rotor aircraft, unmanned airships, and unmanned paravanes.
Take a multi-rotor unmanned aerial vehicle as an example, which is a special unmanned rotor aircraft with three or more upper rotor shafts, has strong controllability, can vertically take off, land and hover, and is mainly suitable for low-altitude, low-speed tasks with vertical take off, land and hover requirements. The rotor wing is driven by the rotation of the motor on each shaft, so that the lift thrust is generated, the total distance of the rotor wing is fixed, the total distance is not variable like a common helicopter, the single-shaft thrust can be changed by changing the relative rotating speed between different rotor wings, and the running track of an aircraft is controlled.
And (3) movement planning: the method is a process of establishing a time-related constraint relation according to a dynamics and kinematics model of the unmanned aerial vehicle, and solving an optimal trajectory curve meeting all constraint conditions by combining an environment state.
The following briefly introduces the design concept of the embodiments of the present application.
In the flight process of the unmanned aerial vehicle, how to plan the safe flight motion of the unmanned aerial vehicle in a complex environment is very important.
In view of this, an embodiment of the present application provides a method for controlling an unmanned aerial vehicle, in which a current motion state and obstacle information in a flight direction of the unmanned aerial vehicle are determined according to detection data of sensors included in the unmanned aerial vehicle, an obstacle avoidance flight position of the unmanned aerial vehicle is determined according to the obstacle information and a target flight position of the unmanned aerial vehicle, a kinematics planning result that the unmanned aerial vehicle reaches the obstacle avoidance flight position is determined according to the current motion state and the obstacle avoidance flight position with maximum speed, maximum acceleration, and maximum jerk of the unmanned aerial vehicle as constraints, and a flight process of the unmanned aerial vehicle is controlled according to the kinematics planning result. It is thus clear that, according to the environment of the dynamic change in the unmanned aerial vehicle flight direction, determine and keep away barrier flight position to satisfy and keep away the barrier requirement, improve the security of unmanned aerial vehicle flight, and, still utilize unmanned aerial vehicle kinematics constraint equation, establish speed, acceleration rate third order model, thereby make the planning result more level and smooth, and satisfy the time optimum, improve flight efficiency.
In addition, in consideration of the fact that map generation and trajectory planning are usually performed by relying on a high-performance onboard computer in the related technology, the size of the high-performance onboard computer is usually large, so that the power consumption of the unmanned aerial vehicle is more, the overall size of the unmanned aerial vehicle is large, and the applicable scene of the unmanned aerial vehicle has certain limitation. Moreover, in the related art, a large number of inequality constraints are introduced by state constraints, and the solution time of the polynomial is prolonged by using a convex optimization method, in an unknown and dynamic environment, the current trajectory may appear invalid in the execution process and needs to be re-planned, which results in a non-real-time motion planning path. Therefore, the method combining the speed setting method and the position setting method is adopted, the motion planning problem is solved by using an analytic expression, the polynomial convex optimization problem does not need to be solved, the computing resources are greatly saved, the motion trail meeting the kinematics constraint of the unmanned aerial vehicle can be computed in a very short time, and the method can be deployed in a low-computing-power flight control computer to directly operate.
In addition, the embodiment of the application also adopts the millimeter wave radar to cluster the obstacles into a single point, dense point cloud information is not needed, the real-time performance of an obstacle avoidance algorithm is improved, and the efficiency and the safety of a flight task are greatly improved.
The scheme that this application embodiment provided can be applicable to in the unmanned aerial vehicle flight scene, for example flight scenes such as automatic waypoint flight or manual flight. As shown in fig. 1, an architecture schematic diagram of an unmanned aerial vehicle control system provided in an embodiment of the present application may include an obstacle avoidance sensing module 101, a motion planning module 102, and a flight control module 103, which will be separately described below.
(1) Obstacle avoidance sensing module 101
The obstacle avoidance sensing module 101 fuses detection data of various sensors through a combined navigation algorithm, and obtains information representing the motion state and the surrounding environment of the unmanned aerial vehicle such as the position, the speed, the acceleration, the attitude angle and the obstacle distance of the unmanned aerial vehicle, so as to assist the follow-up planning track and control the flight process of the unmanned aerial vehicle. The obstacle avoidance sensing module 101 is mainly composed of various sensors, for example, as shown in fig. 2, and may include one or more of the following sensors:
1) inertial Measurement Units (IMUs) are sensors for detecting and measuring acceleration and rotational motion, and the principle of the Inertial Measurement units is implemented by using the law of inertia, and the sensors range from Micro-Electro-Mechanical systems (MEMS) sensors to laser gyroscopes, which have very high Measurement accuracy.
2) A Global Positioning System (GPS) for Positioning and outputting position information.
3) Barometer
4) Magnetometer
5) Infrared sensor
6) Millimeter wave (millimeter wave) radar sensor has characteristics small, easy integration and spatial resolution are high, and compares with optical sensor such as camera, infrared, laser, and millimeter wave radar sensor penetrates the ability reinforce of fog, cigarette, dust, and the interference killing feature is strong, can adapt to more complicated flight environment.
In the implementation process, can install millimeter wave radar sensor in unmanned aerial vehicle direction of flight's position for millimeter wave radar sensor is directional unmanned aerial vehicle forward direction of flight all the time, installs at the aircraft nose direction for example. The millimeter wave radar sensor can output points after clustering, namely only outputting obstacle information of the unmanned aerial vehicle in the advancing direction closest to the unmanned aerial vehicle.
Of course, in practical application, other possible sensors may also be provided, and the embodiment of the present application does not limit this.
(2) Motion planning module 102
The motion planning module 102 adopts a motion planning algorithm based on the kinematics and dynamic model constraints of the unmanned aerial vehicle according to the current motion state of the unmanned aerial vehicle, the distance between the obstacle and the waypoint task information obtained by the obstacle avoidance sensing module, rapidly calculates a motion track meeting all constraints in real time, and issues the motion track to the flight control module to execute a specific flight task.
(3) Flight control module 103
Flight control module 103 may include a control resolver, an electronic governor, and a power system, among others. Wherein, the control resolver is responsible for the unmanned aerial vehicle's gesture, the tracking control of motion state parameters such as speed and position, and strictly carry out the instruction that the motion planning module was assigned, make unmanned aerial vehicle can track the motion trail planned in advance better, accomplish the business target and keep away the barrier task, electronic governor and driving system provide the required pulling force of unmanned aerial vehicle flight, produce the moment of torsion, make unmanned aerial vehicle can accomplish the gesture and change, behaviors such as speed variation and position variation.
Of course, the method provided by the embodiment of the present application is not limited to be used in the architecture shown in fig. 1, and the embodiment of the present application is not limited thereto.
Referring to fig. 3, a schematic flow chart of a control method of an unmanned aerial vehicle provided in the embodiment of the present application is shown.
Step 301: and determining the current motion state of the unmanned aerial vehicle and the obstacle information in the flight direction according to the detection data of each sensor included in the unmanned aerial vehicle.
In this application embodiment, can be provided with a plurality of sensors on the unmanned aerial vehicle, like above-mentioned each sensor of keeping away barrier perception module and including for detect information such as unmanned current motion state and surrounding environment.
As introduced in the above framework, the millimeter wave radar sensor is installed at the head position of the unmanned aerial vehicle provided in the embodiment of the present application, which is different from dense point cloud information generated in the related art, and the millimeter wave radar sensor can cluster the obstacles into a single point, that is, only the nearest obstacle information in the flight direction of the unmanned aerial vehicle is output, so that the complexity of the obstacle avoidance algorithm is reduced, the real-time performance of the obstacle avoidance algorithm is improved, and the efficiency and the safety of the flight task are greatly improved.
Step 302: and determining the obstacle avoidance flight position of the unmanned aerial vehicle according to the obstacle information and the target flight position of the unmanned aerial vehicle.
In this application embodiment, when unmanned aerial vehicle flies, need give target flight position in advance to the follow-up motion planning based on this target flight position.
In one embodiment, in a manual control flight scenario, the remote control device may control the flight of the drone, and then after issuing a control command to the drone through the remote control device, the drone may determine the target flight position based on the flight control amount indicated in the received control command. For example, if the control command is to control the forward flight by 10 meters, the target flight position is 10 meters ahead of the current position, or if the control command is to give parameters such as speed and direction, the target flight position can be determined according to the parameters.
In one embodiment, in an automatic waypoint flight scenario, waypoint task information may be predefined, and a destination to which the task is to fly is specified in the waypoint task information, so that the drone automatically navigates to fly to the destination. Thus, after the waypoint task information is set, the drone may then determine a target flight position, i.e., a position corresponding to the destination, based on the set waypoint task information.
In the embodiment of the application, after the information such as the target flight position, the current motion state and the surrounding environment of the unmanned aerial vehicle is obtained, the motion planning of the unmanned aerial vehicle can be performed based on the information.
In practical applications, the motion planning process is performed in real time, and considering that there may be an obstacle in the flight direction, the planned trajectory at each time is not necessarily a trajectory directly reaching the target flight position. For example, when there is no obstacle in the flight direction, the unmanned aerial vehicle may directly fly to the target flight position, and when there is an obstacle in the flight direction, to avoid the obstacle, the unmanned aerial vehicle may first reach a position before the obstacle, and the flight direction is switched to avoid the obstacle, so that the obstacle avoidance flight position where the unmanned aerial vehicle can fly to avoid the obstacle needs to be determined first as the desired position of the current motion plan. Of course, besides considering the obstacle, other factors may also be considered comprehensively, and the embodiment of the present application does not limit this.
Specifically, can be based on the sensor signal on the flight direction that millimeter wave radar sensor detected, confirm the positional information of each barrier in the flight direction, and based on the positional information of each barrier, determine the target barrier nearest with unmanned aerial vehicle distance from each barrier, based on the positional information and the target flight position of target barrier, confirm and keep away barrier flight position, thereby, through clustering the barrier into single point, need not dense point cloud information, improve and keep away the real-time of barrier algorithm, the efficiency and the security of flight task have been improved greatly.
Step 303: and determining a kinematics planning result of the unmanned aerial vehicle reaching the obstacle avoidance flight position according to the current motion state and the obstacle avoidance flight position by taking the maximum speed, the maximum acceleration and the maximum jerk of the unmanned aerial vehicle as constraints.
In the embodiment of the application, the motion planning module adopts a motion planning algorithm based on the kinematics of the unmanned aerial vehicle and the constraint of a dynamic model according to the current motion state, the distance between the obstacle and the waypoint task information of the unmanned aerial vehicle, which are obtained by the obstacle avoidance sensing module, to quickly solve a motion track meeting all constraints in real time, and sends the motion track to the flight control module to execute a specific flight task.
In an implementation mode, in order to synchronize the track phase of the unmanned aerial vehicle, the motion state obtained by the unmanned aerial vehicle obstacle avoidance sensing module through a combined navigation calculation method can be converted into the track coordinate system of the unmanned aerial vehicle for motion planning, so that the situation that the motion is asynchronous due to the fact that the unmanned aerial vehicle is planned in different directions (such as x and y axes) respectively can not occur in the motion planning process, if the flight track of the unmanned aerial vehicle is curved and the like, the expected planning result is not met, the motion planning problem of the unmanned aerial vehicle can be simplified into a single-axis planning problem, the complexity of the algorithm is greatly reduced, and the default of the following motion planning algorithm is performed under the track coordinate system of the unmanned aerial vehicle.
The process of the movement planning will be described in detail in the following process, and therefore will not be described first.
Step 304: and controlling the flight process of the unmanned aerial vehicle according to the kinematics planning result.
Specifically, through the kinematics planning result, the motion state of the unmanned aerial vehicle at each moment can be obtained, so that the power system can be controlled to provide corresponding power, and the flight trajectory of the unmanned aerial vehicle is controlled to conform to the motion trajectory planned in advance.
It is specific, see the above-mentioned framework department few, the relevant process of flight control can be realized by flight control module, flight control module specifically can be by the control solver, the electronic governor, driving system constitutes, wherein, the control solver is responsible for unmanned aerial vehicle's gesture, speed, position tracking control, it will strictly carry out the instruction that motion planning module was assigned, make unmanned aerial vehicle can track the good motion trail of planning in advance better, accomplish the business objective and keep away the barrier task, electronic governor and driving system provide the required pulling force of unmanned aerial vehicle flight, produce the moment of torsion, make unmanned aerial vehicle can accomplish the gesture and change, behaviors such as speed variation and position variation.
Referring to fig. 4, a schematic view of a flight control logic of the drone is shown. According to the planned position in the motion planning result, the current position, the speed and the attitude angle fed back in real time, a proportional-integral-derivative (PID) controller and an active disturbance rejection controller which are included in the unmanned aerial vehicle can perform power adjustment in real time, so that a power system provides tensile force required by the unmanned aerial vehicle in flying, torque is generated, and the unmanned aerial vehicle can finish behaviors such as attitude change, speed change and position change.
The motion planning process of the unmanned aerial vehicle is described in the following with reference to the attached drawings.
In the embodiment of the present application, a combination of a position setting method and a speed setting method is used for exercise planning, wherein the speed setting method is a subsystem of the position setting method, a path is planned based on an assumed expected speed and an expected acceleration when the speed setting method is used, and the exercise planning is performed based on an expected position and an expected speed in combination with each exercise state obtained by the speed setting method when the position setting method is used.
In the embodiment of the present application, refer to fig. 5, which is a schematic flow chart of a motion planning process using a position setting method.
Step 501: exercise planning preparation data is acquired.
Specifically, the motion planning preparation data may include data of the current motion state of the unmanned aerial vehicle, the constraint condition, the obstacle avoidance flight position, and the like obtained in the above process.
Specifically, the motion state may include parameters such as a position p, a velocity v, an acceleration a, and a jerk j, and then the current motion state may include an initial position p0Initial velocity v0Initial acceleration a0And initial jerk j0Etc. which may be transmitted by each of the self-contained parametersAnd obtaining the detection data of the sensor. Of course, other parameters, such as attitude angle, etc., may also be included, which is not limited in the embodiments of the present application.
In the implementation process, the constraint conditions are updated in advance based on the maximum speed, the maximum acceleration and the maximum jerk, and the constraint conditions may include the following conditions:
(1) speed constraint conditions: -vmax<v<vmaxWherein v ismaxIs the value of the maximum speed.
(2) Acceleration constraint conditions: amax<a<amaxWherein a ismaxIs the value of the maximum acceleration.
(3) Jerk constraint: -jmax<j<jmaxWherein j ismaxIs the value of maximum jerk.
In a specific application process, the values of the maximum speed, the maximum acceleration and the maximum jerk can be set according to actual conditions, and can be limit values of the unmanned aerial vehicle, for example. In addition, the flight mode of the unmanned aerial vehicle can be set, the limit values in different flight modes can be different, such as a fast mode and a low energy consumption mode, and the values of the maximum speed, the maximum acceleration and the maximum jerk in the fast mode can be higher than those in the low energy consumption mode, so that a user can select the corresponding flight mode according to the actual situation, and further set the corresponding constraint condition according to the selected flight mode.
After the constraint condition is set, it is not necessary to reset the constraint condition when the constraint condition is not updated.
In the embodiment of the application, the obstacle avoidance flight position prefThe expected flying position can be obtained according to the input manual control quantity or the waypoint task information and the obstacle information.
Step 502: the desired motion state of the acceleration phase is determined by a velocity setting method.
Specifically, in the embodiment of the present application, the speed of the unmanned aerial vehicle when reaching the obstacle avoidance flight position is 0, so that the expected speed v of the unmanned aerial vehicle when reaching the obstacle avoidance flight position can be obtainedrefThe setting is made to be 0 and,and determining the cruising speed of the unmanned aerial vehicle by using the maximum speed, the maximum acceleration and the maximum jerk of the unmanned aerial vehicle as constraints according to the current motion state and the obstacle avoidance flight position by adopting a speed setting method.
Referring to fig. 6, a schematic flow chart of the method for determining the expected motion state of the acceleration phase by using the speed setting method is shown.
Step 5020: and determining the assumed stopping speed according to the initial speed and the initial acceleration in the current motion state, the maximum jerk and the expected acceleration when the obstacle avoidance flight position is reached.
In the embodiment of the application, the input of the speed setting method comprises the initial speed v of the unmanned aerial vehicle in the current state0And an initial acceleration a0The constraint condition comprises an acceleration constraint condition-amax<a<amaxAnd jerk constraint-jmax<j<jmax
In the flight process of the unmanned aerial vehicle, the unmanned aerial vehicle generally comprises three stages, namely an acceleration stage, a cruise stage and a deceleration stage, and generally speaking, the acceleration of the unmanned aerial vehicle when reaching the obstacle avoidance flight position is 0, so that the expected acceleration v when the unmanned aerial vehicle reaches the obstacle avoidance flight position can be obtainedrefSet to 0, and further, may be based on the initial velocity v0Initial acceleration a0And maximum jerk jmaxAnd an expected acceleration 0 upon reaching the obstacle avoidance flight position, determining an assumed stopping velocity, the assumed stopping velocity vstpCan be expressed as follows:
Figure BDA0003418846980000151
step 5021: and determining the cruising acceleration of the unmanned aerial vehicle according to the comparison result between the assumed stopping speed and the expected speed when the unmanned aerial vehicle reaches the obstacle avoidance flight position.
In particular, it will be assumed that the stopping speed vstpWith desired speed vrefMaking a comparison based on the assumed stopping velocity vstpWith desired speed vrefAnd determining the cruising acceleration of the unmanned aerial vehicle according to the comparison result.
Specifically, if the stopping speed v is assumedstpLess than desired velocity vrefI.e. vref>vstpThen the cruise acceleration is determined to be the maximum acceleration and the sign is positive, i.e. the cruise acceleration a is setcru=amaxOtherwise, if the stopping velocity v is assumedstpGreater than desired speed vrefI.e. vref<vstpThen the cruise acceleration is determined to be the maximum acceleration and the sign is negative, i.e. the cruise acceleration a can be setcru=-amax
Step 5022: and determining a first sub-time length of an acceleration sub-stage in the acceleration stage according to the difference value between the cruising acceleration and the initial acceleration.
In the embodiment of the application, the cruise acceleration a can be based oncruInitial velocity v0And an initial acceleration a0And determining the expected motion state of the unmanned aerial vehicle in the acceleration section of the acceleration phase.
In the embodiment of the present application, it may still include multiple stages for the acceleration stage, namely, an acceleration sub-stage, a cruise sub-stage, and a deceleration sub-stage, but unlike the acceleration stage, the acceleration sub-stage, the cruise sub-stage, and the deceleration sub-stage are distinguished by how fast the speed increases, i.e., in these several stages, the speed still increases, but the speed of the increase differs, in the acceleration sub-stage, the speed increases faster, in the cruise sub-stage, the speed increases at a constant speed, and in the deceleration sub-stage, the speed increase speed gradually decreases until the acceleration is 0.
In particular, it can be based on the cruising acceleration acruWith an initial acceleration a0The difference between them, to determine the first sub-period deltat of the acceleration sub-phase in the acceleration phase1,Δt1The calculation can be performed as follows:
Figure BDA0003418846980000152
step 5023: and determining the acceleration section acceleration rate of the unmanned aerial vehicle in the acceleration sub-stage according to the comparison result between the cruise acceleration rate and the initial acceleration rate.
Specifically, the initial acceleration a is compared0With cruising acceleration acruSize, if acru>a0Then the jerk is determined to be the maximum jerk and the sign is positive, i.e., the jerk j is setacc=jmaxOtherwise, if acru<a0Then the jerk of the acceleration segment is determined to be the maximum acceleration and the sign is negative, i.e. the jerk j of the acceleration segment can be setacc=-jmax
Step 5024: and determining the final speed of the acceleration section at the end moment of the acceleration sub-stage according to the initial speed, the initial acceleration, the first sub-time length and the acceleration section acceleration.
In particular, the end-of-acceleration speed v1The calculation can be performed as follows:
Figure BDA0003418846980000161
in addition, the expected motion states of the deceleration sub-phase and the cruise sub-phase in the acceleration phase can be determined according to the cruise acceleration and the maximum jerk, and the following specific description is given:
step 5025: and determining a second sub-duration of the deceleration sub-stage in the acceleration stage according to the cruising acceleration and the maximum acceleration.
In particular, the second sub-period Δ t3The calculation can be performed as follows:
Δt3
Figure BDA0003418846980000162
step 5026: and determining the acceleration of the deceleration section of the deceleration sub-stage according to the direction of the cruising acceleration.
Specifically, whether the sign of the cruise acceleration is positive or not is determined and judged, and if a is positivecruIf the sign is more than 0, namely the sign is positive, the acceleration j is added in the deceleration sectiondec=-jmaxOtherwise, if acru< 0, i.e. negative sign, jerk j of the deceleration sectiondec=jmax
Step 5027: and determining the speed variation of the deceleration section in the deceleration sub-stage according to the cruising acceleration, the second sub-time length and the acceleration of the deceleration section.
Specifically, the speed variation of the deceleration section may be calculated as follows:
Figure BDA0003418846980000163
step 5028: and determining the cruise speed variation of the cruise sub-stage in the acceleration stage according to the final speed of the acceleration stage, the speed variation of the deceleration stage and the expected speed.
In one embodiment, it is v calculated in the above step 5021stp=vrefThen a third sub-period Δ t corresponding to the cruise sub-phase2At 0, there is no cruise sub-phase.
In one embodiment, it is v calculated in step 5020stp≠vrefThen, the cruise speed variation Δ v of the cruise sub-stage may be determined according to the final speed of the acceleration stage and the speed variation of the deceleration stage obtained in the above steps 5024 and 50262The calculation can be performed as follows:
Δv2=vref-v1-Δv3
step 5029: and determining the third sub-time length of the cruise sub-stage according to the cruise speed variation and the cruise acceleration.
In particular, the third sub-period Δ t2The calculation can be performed as follows:
Figure BDA0003418846980000171
step 503: the cruise speed is determined based on the desired motion state during the acceleration phase.
Through the steps, the expected motion state of the acceleration section corresponding to the acceleration stage, namely the time length required by each sub-stage of the acceleration stage and the value of each state parameter can be obtained, so that the assumed stop position of the acceleration stage at the end moment can be determined through the obtained expected motion state of the acceleration section, and the cruising speed is determined according to the comparison result between the assumed stop position and the obstacle avoidance flight position.
Specifically, the assumed stop position p at the end of the phase may be accelerated according to the duration, speed, acceleration, jerk, etc. of each of the sub-phases described abovestpThe sign of the difference between the assumed stopping position and the obstacle avoidance flight position is calculated as follows:
dp=sign(pref-pstp)
where sign denotes a sign function, if dpCruise speed v > 0cru=vmaxOtherwise, if dp< 0, then the cruising speed vcru=-vmax
Please continue with fig. 5.
Step 504: and determining the estimated time length of an acceleration section corresponding to the acceleration stage of the unmanned aerial vehicle and the target motion state of the acceleration section according to the cruising speed.
Specifically, according to the cruising speed, the estimated time length of the acceleration section and the target motion state of the acceleration section corresponding to the acceleration stage and the estimated time length of the deceleration section and the target motion state of the deceleration section corresponding to the deceleration stage are re-determined by adopting a speed setting method.
Aiming at the acceleration stage, taking the cruise speed as the expected speed in the speed setting method, executing the process of the speed setting method again to obtain the sub-duration and the motion state of each sub-stage corresponding to the acceleration stage, and further obtaining the estimated duration t of the acceleration stage according to the sum of the sub-durations of the sub-stagesaAnd the acceleration segment ending time position p of the ending time of the acceleration segment can be accelerated according to the time length, the speed, the acceleration, the jerk and the like of each sub-segmenta
For the deceleration phase, i.e. to speed cruiseAs the initial speed, the expected speed is zero, the process of the speed setting method is executed again to obtain the sub-duration and the motion state of each sub-stage corresponding to the deceleration stage, and further, the estimated duration t of the deceleration stage is obtained according to the sum of the sub-durations of the sub-stagesbAnd an acceleration segment ending time position p capable of decelerating the ending time of the phase according to the duration, the speed, the acceleration, the jerk and the like of each sub-phaseb
Since this process is similar to the above process, it will not be described in detail here.
Step 505: it is determined whether a cruise phase is required.
Specifically, whether the cruise phase is needed or not can be determined according to the difference value between the deceleration ending time position and the obstacle avoidance flight position in the motion state of the deceleration section, that is, whether the obtained motion state can reach the obstacle avoidance flight position or not is judged, if the obtained motion state can reach the obstacle avoidance flight position, the cruise phase is not needed, and if the obtained motion state cannot reach the obstacle avoidance flight position, the cruise phase is needed.
Specifically, whether the following conditions are met or not is judged to determine whether the cruising stage is needed or not, wherein the conditions are as follows:
sign(pb-pref)·dp≤0
step 506: if the result of step 505 is yes, then the cruise segment duration is determined based on the acceleration segment end time position.
If the condition is met, determining that the cruise stage is needed, and determining that the final target time length of the acceleration section is the estimated time length t of the acceleration sectionaThe target time length of the deceleration section is the estimated time length t of the acceleration section obtained abovebAnd a cruise phase duration t corresponding to the cruise phasecruThe calculation is performed as follows:
Figure BDA0003418846980000191
step 507: if the result of step 505 is negative, determining the target time length of the acceleration section and the target time length of the deceleration section by using an iterative bisection method.
If the above condition is not satisfied, i.e., if sign (p)b-pref)·dpIf the time length is more than 0, the original obstacle avoidance flight position is exceeded, so that the cruise stage is not needed, the obtained acceleration section time length and the obtained deceleration section time length cannot be used, and the re-determination is needed.
In one embodiment, the final acceleration and deceleration segment target durations may be re-determined by employing iterative bisection. Referring to fig. 7, which is a schematic flow chart of the iterative bisection method, since each iteration process is similar, a description is specifically given here by taking an iteration as an example, and a one iteration process specifically includes the following steps:
step 5071: and determining the updating time length of the acceleration section based on a first time length variable and a second time length variable input in the iteration, wherein the initial value of the first time length variable is the estimated time length of the acceleration section, and the value of the second time length variable is zero.
Wherein the first time length variable is a larger value, the second time length variable is a smaller value, and the first time length variable t is set during initializationH=taA second duration variable tLGet 0 and get the new acceleration segment update duration
Figure BDA0003418846980000192
Step 5072: obtaining the position of the deceleration ending moment obtained by re-planning based on the updating duration of the acceleration section, namely, re-calculating the planning terminal point p by using the speed setting methodb
Step 5073: and judging whether an iteration termination condition is reached, namely whether the difference value between the updated deceleration end moment position and the obstacle avoidance flight position is smaller than a preset threshold value.
For example, a preset threshold value is set to be 0.01m, that is, an acceptable planning error is 0.01m, so as to determine whether the following iteration termination condition is satisfied:
|pb-pref|<0.01m
step 5074: if not, updating the search condition, resetting the new update duration of the acceleration segment, that isThat is, based on the difference between the updated deceleration end time position and the obstacle avoidance flight position, the first time length variable and the second time length variable are updated, the updating time length of the acceleration section is reset until the iteration process converges, and the final target time length t of the acceleration section is obtainedaAnd target time length t of deceleration sectionb
I.e., if sign (p)b-pref)·dpIf < 0, then tL=taOtherwise, if sign (p)b-pref)·dp>0,tH=ta
Step 5075: if so, the iterative process is converged, the updating time length of the acceleration section is determined to be the target time length of the acceleration section, and the target time length of the deceleration section is determined according to the target time length of the acceleration section.
Please continue with fig. 5.
Step 508: and obtaining a kinematics planning result according to the obtained target time length and the target motion state.
Through the process, the target time length of the acceleration section, the target motion state of the acceleration section, the target time length of the deceleration section, the target motion state of the deceleration section and the time length of the cruise section can be obtained, so that the motion state of each moment is determined, the kinematics planning result is obtained, and the obtained kinematics planning result can be used for subsequent flight control.
In the embodiment of the application, the motion planning is only one motion planning process, and in the actual application process, the motion planning can be updated according to the real-time state so as to meet the actual flight requirement. In addition, the method combining the speed setting method and the position setting method is adopted, the motion planning problem is solved by using an analytical formula, the polynomial convex optimization problem does not need to be solved, the computing resources are greatly saved, the motion trail meeting the kinematic constraint of the unmanned aerial vehicle can be computed in a very short time, and the method can be deployed in a low-computing-power flight control computer to directly operate.
Referring to fig. 8, a graph of simulation data obtained by the above method according to the embodiment of the present application is shown. The simulation data is obtained through the motion planning algorithm by taking the initial position as 0, the initial speed as 0, the initial acceleration as 0, the expected position as 5, the maximum value of the acceleration module value as 5 and the maximum value of the jerk module value as 15 as examples. The abscissa is the duration, the ordinate is the value of each parameter, for example, the time is 0 to 0.8, the stage is an acceleration stage, it can be seen that in the stage, the maximum jerk in the positive direction is firstly adopted to increase the acceleration, then the maximum jerk in the negative direction is adopted to decrease the acceleration, correspondingly, the change of the acceleration is to increase to a constant speed, after a cruise stage (acceleration is not changed) of the acceleration, the acceleration is decreased at a constant speed, the speed is gradually increased to the cruise acceleration, the position is also gradually increased, and so on in other stages.
In summary, in the embodiment of the application, the millimeter wave radar is adopted to cluster the obstacles into a single point, dense point cloud information is not needed, and the real-time performance of the obstacle avoidance algorithm is improved. And, through carrying out the motion planning in converting unmanned aerial vehicle state to unmanned aerial vehicle track coordinate system for unmanned aerial vehicle's orbit can realize phase synchronization, will not appear because planning respectively and producing the circumstances of motion asynchronism to unmanned aerial vehicle's different directions promptly in the motion planning process, for example unmanned aerial vehicle flight orbit appears the curve etc. and is not conform to anticipated planning result, make unmanned aerial vehicle's motion planning problem can simplify to unipolar planning problem, greatly reduced the complexity of algorithm. And the motion planning result is solved in an analytical manner by adopting a speed setting method and a position setting method under the conditions of meeting speed constraint, acceleration constraint and jerk constraint, the algorithm has small operand and strong real-time property, can be directly operated in a flight control computer, does not need to be additionally provided with a special onboard computer, and reduces the cost and the power consumption of the obstacle avoidance system.
Referring to fig. 9, based on the same inventive concept, an embodiment of the present application further provides a control apparatus 90 for an unmanned aerial vehicle, where the apparatus includes:
a detection unit 901, configured to determine a current motion state of the unmanned aerial vehicle and obstacle information in a flight direction according to detection data of each sensor included in the unmanned aerial vehicle;
the obstacle avoidance unit 902 is configured to determine an obstacle avoidance flight position of the unmanned aerial vehicle according to the obstacle information and the target flight position of the unmanned aerial vehicle;
the motion planning unit 903 is configured to determine a kinematics planning result of the unmanned aerial vehicle reaching the obstacle avoidance flight position according to the current motion state and the obstacle avoidance flight position, with the maximum speed, the maximum acceleration, and the maximum jerk of the unmanned aerial vehicle as constraints;
and a flight control unit 904, configured to control a flight process of the unmanned aerial vehicle according to the kinematics planning result.
Specifically, the motion planning unit 903 is specifically configured to:
determining the cruising speed of the unmanned aerial vehicle by taking the maximum speed, the maximum acceleration and the maximum jerk of the unmanned aerial vehicle as constraints according to the current motion state and the obstacle avoidance flight position;
according to the cruising speed, determining an acceleration section estimated duration and an acceleration section target motion state corresponding to an acceleration stage of the unmanned aerial vehicle, and a deceleration section estimated duration and a deceleration section target motion state corresponding to a deceleration stage;
when the cruise stage is determined to be needed according to the difference value between the deceleration ending moment position and the obstacle avoidance flight position in the motion state of the deceleration section, determining the cruise section time length corresponding to the cruise stage according to the difference value;
and determining the motion state of each moment according to the duration of the acceleration section, the target motion state of the acceleration section, the duration of the deceleration section, the target motion state of the deceleration section and the duration of the cruise section, and obtaining a kinematic planning result.
Specifically, the motion planning unit 903 is specifically configured to:
determining an assumed stopping speed according to the initial speed and the initial acceleration in the current motion state, the maximum acceleration and the expected acceleration when the obstacle avoidance flight position is reached;
determining the cruising acceleration of the unmanned aerial vehicle according to the comparison result between the assumed stopping speed and the expected speed when the unmanned aerial vehicle reaches the obstacle avoidance flight position;
determining an expected motion state of an acceleration section based on the cruise acceleration, the initial speed and the initial acceleration;
determining an assumed stopping position at the end moment of the acceleration phase based on the expected motion state of the acceleration segment;
and determining the cruising speed according to the comparison result between the assumed stopping position and the obstacle avoidance flight position.
Specifically, the motion planning unit 903 is specifically configured to:
if the stopping speed is less than the expected speed, determining that the cruising acceleration is the maximum acceleration and the sign is positive;
if the stop speed is assumed to be greater than the desired speed, the cruise acceleration is determined to be the maximum acceleration and the sign is negative.
Specifically, the motion planning unit 903 is specifically configured to:
determining a first sub-duration of an acceleration sub-stage in the acceleration stage according to a difference value between the cruising acceleration and the initial acceleration;
determining the acceleration section acceleration rate of the unmanned aerial vehicle in the acceleration sub-stage according to the comparison result between the cruise acceleration rate and the initial acceleration rate;
determining the final speed of the acceleration section at the end moment of the acceleration sub-stage according to the initial speed, the initial acceleration, the first sub-time length and the acceleration section acceleration;
and determining the expected motion states of the deceleration sub-stage and the cruise sub-stage in the acceleration stage according to the cruise acceleration and the maximum acceleration.
Specifically, the motion planning unit 903 is specifically configured to:
determining a second sub-time length of the deceleration sub-stage according to the cruising acceleration and the maximum acceleration;
determining the acceleration of a deceleration section of a deceleration sub-stage according to the direction of the cruising acceleration;
determining the speed variation of the deceleration section of the deceleration sub-stage according to the cruising acceleration, the second sub-time length and the acceleration of the deceleration section;
determining the cruise section speed variation of the cruise sub-stage in the acceleration stage according to the final speed of the acceleration section, the speed variation of the deceleration section and the expected speed;
and determining the third sub-time length of the cruise sub-stage according to the cruise speed variation and the cruise acceleration.
Specifically, the motion planning unit 903 is specifically configured to:
when the cruise-free stage is determined according to the difference value between the deceleration ending moment position and the obstacle avoidance flight position in the motion state of the deceleration section, the target time length of the acceleration section and the target time length of the deceleration section are determined again by adopting an iterative bisection method; wherein, in one iteration, the method comprises the following steps:
determining the updating time length of the acceleration section based on a first time length variable and a second time length variable input in the iteration, wherein the initial value of the first time length variable is the estimated time length of the acceleration section, and the value of the second time length variable is zero;
updating the position of the deceleration ending moment based on the updating duration of the acceleration section, and judging whether the difference value between the updated position of the deceleration ending moment and the obstacle avoidance flight position is smaller than a preset threshold value or not;
if the target time length is less than the target time length, determining the updating time length of the acceleration section as the target time length of the acceleration section, and determining the target time length of the deceleration section according to the target time length of the acceleration section;
and if not, updating the first time length variable and the second time length variable based on the difference value between the updated deceleration ending time position and the obstacle avoidance flight position.
Optionally, the unmanned aerial vehicle includes a millimeter wave radar sensor disposed at the head position and facing the flight direction;
the obstacle avoidance unit 902 is specifically configured to:
determining the position information of each obstacle in the flight direction based on a sensor signal in the flight direction detected by a millimeter wave radar sensor;
determining a target obstacle closest to the unmanned aerial vehicle from the obstacles based on the position information of the obstacles;
and determining an obstacle avoidance flight position based on the position information of the target obstacle and the target flight position.
Optionally, the obstacle avoidance unit 902 is further configured to:
determining a target flight position based on the received flight control quantity sent by the remote control device; alternatively, the first and second electrodes may be,
and determining the target flight position based on the set waypoint task information.
By the device, the obstacles are clustered into single points by adopting the millimeter wave radar, dense point cloud information is not needed, and the real-time performance of an obstacle avoidance algorithm is improved. And the motion planning result is solved in an analytical manner by adopting a speed setting method and a position setting method under the conditions of meeting speed constraint, acceleration constraint and jerk constraint, the algorithm has small operand and strong real-time performance, can be directly operated in a flight control computer, does not need to be additionally provided with a special onboard computer, and reduces the cost and the power consumption of the obstacle avoidance system.
The apparatus may be configured to execute the method shown in each embodiment of the present application, and therefore, for functions and the like that can be realized by each functional module of the apparatus, reference may be made to the description of the foregoing embodiment, which is not repeated herein.
Referring to fig. 10, based on the same technical concept, an embodiment of the present application further provides a computer device 100, where the computer device 100 may be disposed in an unmanned aerial vehicle, such as a flight control computer of the unmanned aerial vehicle, and the computer device 100 may include a memory 1001 and a processor 1002.
The memory 1001 is used for storing computer programs executed by the processor 1002. The memory 1001 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function, and the like; the storage data area may store data created according to use of the computer device, and the like. The processor 1002 may be a Central Processing Unit (CPU), a digital processing unit, or the like. The embodiment of the present application does not limit the specific connection medium between the memory 1001 and the processor 1002. In the embodiment of the present application, the memory 1001 and the processor 1002 are connected through the bus 1003 in fig. 10, the bus 1003 is represented by a thick line in fig. 10, and the connection manner between other components is merely illustrative and not limited. The bus 1003 may be divided into an address bus, a data bus, a control bus, and the like. For ease of illustration, only one thick line is shown in FIG. 10, but this is not intended to represent only one bus or type of bus.
Memory 1001 may be a volatile memory (volatile memory), such as a random-access memory (RAM); the memory 1001 may also be a non-volatile memory (non-volatile memory) such as, but not limited to, a read-only memory (rom), a flash memory (flash memory), a Hard Disk Drive (HDD) or a solid-state drive (SSD), or any other medium which can be used to carry or store desired program code in the form of instructions or data structures and which can be accessed by a computer. The memory 1001 may be a combination of the above memories.
The processor 1002 is configured to execute the method performed by the apparatus in each embodiment of the present application when the computer program stored in the memory 1001 is called.
In some possible embodiments, various aspects of the methods provided by the present application may also be implemented in the form of a program product including program code for causing a computer device to perform the steps of the methods according to various exemplary embodiments of the present application described above in this specification when the program product is run on the computer device, for example, the computer device may perform the methods performed by the devices in the embodiments of the present application.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
While the preferred embodiments of the present application have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all alterations and modifications as fall within the scope of the application.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present application without departing from the spirit and scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include such modifications and variations as well.

Claims (13)

1. A method of controlling a drone, the method comprising:
determining the current motion state of the unmanned aerial vehicle and obstacle information in the flight direction according to detection data of each sensor of the unmanned aerial vehicle;
determining an obstacle avoidance flight position of the unmanned aerial vehicle according to the obstacle information and the target flight position of the unmanned aerial vehicle;
determining a kinematics planning result of the unmanned aerial vehicle reaching the obstacle avoidance flight position according to the current motion state and the obstacle avoidance flight position by taking the maximum speed, the maximum acceleration and the maximum jerk of the unmanned aerial vehicle as constraints;
and controlling the flight process of the unmanned aerial vehicle according to the kinematics planning result.
2. The method of claim 1, wherein determining a kinematic planning result of the drone to reach the obstacle avoidance flight position according to the current motion state and the obstacle avoidance flight position with a maximum speed, a maximum acceleration, and a maximum jerk of the drone as constraints comprises:
determining the cruising speed of the unmanned aerial vehicle by taking the maximum speed, the maximum acceleration and the maximum jerk of the unmanned aerial vehicle as constraints according to the current motion state and the obstacle avoidance flight position;
according to the cruising speed, determining an acceleration section estimated time length and an acceleration section target motion state corresponding to an acceleration stage of the unmanned aerial vehicle, and a deceleration section estimated time length and a deceleration section target motion state corresponding to a deceleration stage;
when a cruise stage is determined to be needed according to a difference value between a deceleration ending moment position in the motion state of the deceleration section and the obstacle avoidance flight position, determining a cruise section time length corresponding to the cruise stage according to the difference value;
and determining the motion state of each moment according to the duration of the acceleration section, the target motion state of the acceleration section, the duration of the deceleration section, the target motion state of the deceleration section and the duration of the cruise section, and obtaining the kinematic planning result.
3. The method of claim 2, wherein determining the cruising speed of the drone, subject to constraints of a maximum speed, a maximum acceleration, and a maximum jerk of the drone, based on the desired position and the current state of motion of the drone, comprises:
determining an assumed stopping speed according to the initial speed and the initial acceleration in the current motion state, the maximum jerk and an expected acceleration when the obstacle avoidance flight position is reached;
determining the cruising acceleration of the unmanned aerial vehicle according to the comparison result between the assumed stopping speed and the expected speed when the unmanned aerial vehicle reaches the obstacle avoidance flight position;
determining an expected motion state of an acceleration segment based on the cruise acceleration, the initial speed and the initial acceleration;
determining an assumed stop position at the end time of the acceleration phase based on the expected motion state of the acceleration segment;
and determining the cruising speed according to the comparison result between the assumed stopping position and the obstacle avoidance flight position.
4. The method of claim 3, wherein determining the cruising acceleration of the drone, as a function of a comparison between the assumed stopping velocity and an expected velocity at which the drone reaches the obstacle avoidance flight position, comprises:
if the assumed stopping speed is less than the expected speed, determining that the cruising acceleration is the maximum acceleration and the sign is positive;
if the assumed stopping speed is greater than the desired speed, then the cruise acceleration is determined to be the maximum acceleration with a negative sign.
5. The method of claim 3, wherein determining an acceleration segment desired motion state based on the cruise acceleration, the initial velocity, and the initial acceleration comprises:
determining a first sub-duration of an acceleration sub-stage in the acceleration stage according to a difference value between the cruising acceleration and the initial acceleration;
determining the acceleration section acceleration rate of the unmanned aerial vehicle in the acceleration sub-stage according to the comparison result between the cruise acceleration rate and the initial acceleration rate;
determining the final speed of the acceleration section at the end moment of the acceleration sub-stage according to the initial speed, the initial acceleration, the first sub-time length and the acceleration section acceleration;
and determining expected motion states of a deceleration sub-stage and a cruise sub-stage in the acceleration stage according to the cruise acceleration and the maximum jerk.
6. The method of claim 3, wherein determining the expected states of motion for the deceleration subphase and the cruise subphase in the acceleration phase based on the cruise acceleration and the maximum jerk comprises:
determining a second sub-duration of the deceleration sub-stage according to the cruising acceleration and the maximum acceleration;
determining the acceleration of the deceleration section of the deceleration sub-stage according to the direction of the cruising acceleration;
determining the speed variation of the deceleration section of the deceleration sub-stage according to the cruising acceleration, the second sub-time length and the acceleration of the deceleration section;
determining the cruise speed variation of the cruise sub-stage in the acceleration stage according to the final speed of the acceleration stage, the speed variation of the deceleration stage and the expected speed;
and determining a third sub-time length of the cruise sub-stage according to the cruise section speed variation and the cruise acceleration.
7. The method of claim 2, wherein after determining, based on the cruise speed, an estimated acceleration period and a target acceleration state for an acceleration phase and an estimated deceleration period and a target deceleration state for a deceleration phase of the drone, the method further comprises:
when the cruise-free stage is determined according to the difference value between the deceleration ending moment position in the motion state of the deceleration section and the obstacle avoidance flight position, the target time length of the acceleration section and the target time length of the deceleration section are determined again by adopting an iterative bisection method; wherein, in one iteration, the method comprises the following steps:
determining an updating time length of an acceleration section based on a first time length variable and a second time length variable input in the iteration, wherein an initial value of the first time length variable is the estimated time length of the acceleration section, and a value of the second time length variable is zero;
updating the position of the deceleration ending moment based on the updating duration of the acceleration section, and judging whether the difference value between the updated position of the deceleration ending moment and the obstacle avoidance flight position is smaller than a preset threshold value or not;
if the target time length is less than the target time length, determining the updating time length of the acceleration section as the target time length of the acceleration section, and determining the target time length of the deceleration section according to the target time length of the acceleration section;
and if not, updating the first time length variable and the second time length variable based on the difference between the updated deceleration ending time position and the obstacle avoidance flight position.
8. The method of any of claims 1 to 7, wherein the drone includes a millimeter wave radar sensor located at a nose location and oriented in the direction of flight;
determining an obstacle avoidance flight position of the unmanned aerial vehicle according to the obstacle information and the target flight position of the unmanned aerial vehicle, including:
determining position information of each obstacle in the flight direction based on the sensor signal in the flight direction detected by the millimeter wave radar sensor;
determining a target obstacle closest to the unmanned aerial vehicle from the obstacles based on the position information of the obstacles;
and determining the obstacle avoidance flight position based on the position information of the target obstacle and the target flight position.
9. The method of claim 8, wherein prior to determining the obstacle avoidance flight position based on the position information of the target obstacle and the target flight position, the method further comprises:
determining the target flight position based on the received flight control quantity sent by the remote control device; alternatively, the first and second electrodes may be,
and determining the target flight position based on the set waypoint task information.
10. A control device for a drone, the device comprising:
the detection unit is used for determining the current motion state of the unmanned aerial vehicle and the obstacle information in the flight direction according to detection data of each sensor included in the unmanned aerial vehicle;
the obstacle avoidance unit is used for determining an obstacle avoidance flight position of the unmanned aerial vehicle according to the obstacle information and the target flight position of the unmanned aerial vehicle;
the motion planning unit is used for determining a kinematics planning result of the unmanned aerial vehicle reaching the obstacle avoidance flight position according to the current motion state and the obstacle avoidance flight position by taking the maximum speed, the maximum acceleration and the maximum jerk of the unmanned aerial vehicle as constraints;
and the flight control unit is used for controlling the flight process of the unmanned aerial vehicle according to the kinematics planning result.
11. A computer device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor,
the processor, when executing the computer program, realizes the steps of the method of any one of claims 1 to 9.
12. A computer storage medium having computer program instructions stored thereon, wherein,
the computer program instructions, when executed by a processor, implement the steps of the method of any one of claims 1 to 9.
13. A computer program product comprising computer program instructions, characterized in that,
the computer program instructions, when executed by a processor, implement the steps of the method of any one of claims 1 to 9.
CN202111555008.0A 2021-12-17 2021-12-17 Control method, device and equipment of unmanned aerial vehicle and computer storage medium Pending CN114527783A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111555008.0A CN114527783A (en) 2021-12-17 2021-12-17 Control method, device and equipment of unmanned aerial vehicle and computer storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111555008.0A CN114527783A (en) 2021-12-17 2021-12-17 Control method, device and equipment of unmanned aerial vehicle and computer storage medium

Publications (1)

Publication Number Publication Date
CN114527783A true CN114527783A (en) 2022-05-24

Family

ID=81618939

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111555008.0A Pending CN114527783A (en) 2021-12-17 2021-12-17 Control method, device and equipment of unmanned aerial vehicle and computer storage medium

Country Status (1)

Country Link
CN (1) CN114527783A (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108124472A (en) * 2017-12-26 2018-06-05 深圳市道通智能航空技术有限公司 A kind of method, apparatus and aircraft of barrier of dodging
CN108594849A (en) * 2018-04-10 2018-09-28 深圳市易飞行科技有限公司 Unmanned aerial vehicle obstacle avoidance method based on millimeter wave radar
CN110687923A (en) * 2019-11-08 2020-01-14 深圳市道通智能航空技术有限公司 Unmanned aerial vehicle long-distance tracking flight method, device, equipment and storage medium
US10679509B1 (en) * 2016-09-20 2020-06-09 Amazon Technologies, Inc. Autonomous UAV obstacle avoidance using machine learning from piloted UAV flights
CN111766891A (en) * 2019-05-23 2020-10-13 北京京东尚科信息技术有限公司 Method and device for controlling flight of unmanned aerial vehicle
CN113655810A (en) * 2021-08-20 2021-11-16 上海微电机研究所(中国电子科技集团公司第二十一研究所) Unmanned aerial vehicle obstacle avoidance method and system based on speed potential field

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10679509B1 (en) * 2016-09-20 2020-06-09 Amazon Technologies, Inc. Autonomous UAV obstacle avoidance using machine learning from piloted UAV flights
US11087632B1 (en) * 2016-09-20 2021-08-10 Amazon Technologies, Inc. Autonomous UAV obstacle avoidance using machine learning from piloted UAV flights
CN108124472A (en) * 2017-12-26 2018-06-05 深圳市道通智能航空技术有限公司 A kind of method, apparatus and aircraft of barrier of dodging
CN108594849A (en) * 2018-04-10 2018-09-28 深圳市易飞行科技有限公司 Unmanned aerial vehicle obstacle avoidance method based on millimeter wave radar
CN111766891A (en) * 2019-05-23 2020-10-13 北京京东尚科信息技术有限公司 Method and device for controlling flight of unmanned aerial vehicle
CN110687923A (en) * 2019-11-08 2020-01-14 深圳市道通智能航空技术有限公司 Unmanned aerial vehicle long-distance tracking flight method, device, equipment and storage medium
WO2021088681A1 (en) * 2019-11-08 2021-05-14 深圳市道通智能航空技术股份有限公司 Long-distance flight-tracking method and device for unmanned aerial vehicle, apparatus, and storage medium
CN113655810A (en) * 2021-08-20 2021-11-16 上海微电机研究所(中国电子科技集团公司第二十一研究所) Unmanned aerial vehicle obstacle avoidance method and system based on speed potential field

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
樊宝安;曾桂根;: "四旋翼无人机巡航飞行模式下的自主避障方案设计", 电子设计工程, no. 02, 20 January 2020 (2020-01-20) *
胡中华;赵敏;: "无人飞行器在线航迹规划技术研究", 航天电子对抗, no. 04, 30 August 2010 (2010-08-30) *

Similar Documents

Publication Publication Date Title
US10276051B2 (en) Dynamic collision-avoidance system and method
KR102569218B1 (en) Unmanned aerial vehicle collision avoidance system and method
Yang et al. A 3D collision avoidance strategy for UAVs in a non-cooperative environment
US11161611B2 (en) Methods and systems for aircraft collision avoidance
EP3128386B1 (en) Method and device for tracking a moving target from an air vehicle
Oettershagen et al. Robotic technologies for solar‐powered UAVs: fully autonomous updraft‐aware aerial sensing for multiday search‐and‐rescue missions
Becker et al. In-flight collision avoidance controller based only on OS4 embedded sensors
Stanculeanu et al. Quadrotor black-box system identification
Iwaneczko et al. A prototype of unmanned aerial vehicle for image acquisition
CN112306087A (en) System and method for generating flight path to navigate aircraft
Chen et al. A self-rotating, single-actuated UAV with extended sensor field of view for autonomous navigation
US20240076066A1 (en) Fixed-wing unmanned aerial vehicle capable of high angle-of-attack maneuvering
Keshmiri et al. Flight test validation of collision and obstacle avoidance in fixed-wing UASs with high speeds using morphing potential field
Lin et al. A fast obstacle collision avoidance algorithm for fixed wing uas
WO2022044533A1 (en) Information processing device and information processing method, computer program, and moving body device
WO2022126396A1 (en) State information determination method and apparatus, and platform and computer-readable storage medium
Kim et al. Vision‐assisted deep stall landing for a fixed‐wing UAV
EP2947008A2 (en) Terrain adaptive flight control
Rossouw et al. An open-source autopilot and source localisation for bio-inspired miniature blimps
CN114527783A (en) Control method, device and equipment of unmanned aerial vehicle and computer storage medium
Ke et al. Model based robust forward transition control for tail-sitter hybrid unmanned aerial vehicles
CN115485194A (en) Method for saving energy consumption of UAV (unmanned aerial vehicle) and improving hovering precision of UAV
US20240061449A1 (en) Systems and Methods for High-speed Geofencing
Yu et al. A nonlinear trajectory tracking controller for helicopters: Design and experimental evaluation
Kaya et al. Nonlinear Control of an Autonomous Airship with Collision Avoidance Capability

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination