CN114564036A - Flight trajectory original path rehearsal method and aircraft - Google Patents

Flight trajectory original path rehearsal method and aircraft Download PDF

Info

Publication number
CN114564036A
CN114564036A CN202210230672.6A CN202210230672A CN114564036A CN 114564036 A CN114564036 A CN 114564036A CN 202210230672 A CN202210230672 A CN 202210230672A CN 114564036 A CN114564036 A CN 114564036A
Authority
CN
China
Prior art keywords
flight
aircraft
moments
track
time
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
CN202210230672.6A
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.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI 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 SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Priority to CN202210230672.6A priority Critical patent/CN114564036A/en
Publication of CN114564036A publication Critical patent/CN114564036A/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/08Control of attitude, i.e. control of roll, pitch, or yaw
    • G05D1/0808Control of attitude, i.e. control of roll, pitch, or yaw specially adapted for aircraft
    • 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)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Abstract

The embodiment of the invention provides a flight trajectory original path replay method and an aircraft, wherein the method comprises the following steps: shooting a first image and collecting flight state data by the aircraft at a plurality of flight moments, wherein the flight state data comprises at least one of position information, speed information and acceleration information, and the flight track of the aircraft at the plurality of flight moments is determined based on the detected battling operation for the aircraft; the aircraft generates a first track according to flight state data acquired at a plurality of flight moments, and the smoothness degree of the first track is higher than that of the tracks of the aircraft flying at the plurality of flight moments; the aircraft flies according to the generated first track. The corrected first trajectory of the embodiment of the invention can restore the flying trajectory during artificial control as much as possible.

Description

Flight trajectory original path rehearsal method and aircraft
Technical Field
The invention relates to the technical field of aircraft control, in particular to a flight trajectory original path replay method and an aircraft.
Background
Along with the development of the unmanned aerial vehicle technology, the multi-rotor unmanned aerial vehicle is more and more popular and widely applied to the field of aerial photography, and the aerial photography technology can be used in the fields of disaster assessment, emergency rescue and relief, on-site reconnaissance, military drilling and the like. At present, the operation of a common small unmanned aerial vehicle mainly depends on a handheld remote controller of a flyer, so that the small unmanned aerial vehicle is forced to use and have a certain entrance threshold. The flyer needs to possess certain flight technique and certain theoretical knowledge and can be better to use the small unmanned aerial vehicle, thereby limiting the application of the small unmanned aerial vehicle. In a movie shooting scene, a flyer is required to fly and view along the same track as many times as possible, and even a professional flyer is difficult to fly along the same track for human reasons.
In this context, how to make the unmanned aerial vehicle fly autonomously, and the trajectories of multiple flights can be made to approach the same is a technical problem being studied by those skilled in the art.
Disclosure of Invention
In view of this, embodiments of the present invention provide a flight trajectory original-path replaying method and an aircraft, where an obtained optimized first trajectory can restore a flight trajectory during artificial control as much as possible.
The first aspect of the embodiments of the present invention provides a flight trajectory original circuit recurrence method, including:
shooting a first image and collecting flight state data at a plurality of flight moments by an aircraft, wherein the flight state data comprises at least one of position information, speed information and acceleration information, and the flight track of the aircraft at the plurality of flight moments is determined based on the detected batting operation for the aircraft;
the aircraft generates a first track according to the flight state data collected at the flight moments, and the smoothness degree of the first track is higher than that of the tracks of the aircraft flying at the flight moments;
the aircraft flies according to the generated first track.
A second aspect of an embodiment of the present invention provides an aircraft, including a processor, a memory, and a camera, where the memory is configured to store program instructions, and the processor is configured to call the program instructions to perform the following operations:
shooting a first image at a plurality of flight moments and collecting flight state data, wherein the flight state data comprise at least one of position information, speed information and acceleration information, and the flight track of the aircraft at the plurality of flight moments is determined based on the detected batting operation for the aircraft;
generating a first track according to the flight state data acquired at the flight moments, wherein the smoothness degree of the first track is higher than that of the tracks of the aircraft flying at the flight moments;
the aircraft flies according to the generated first track.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the embodiments of the present invention or the background art will be briefly described below.
FIG. 1 is a schematic structural diagram of a flight control system according to an embodiment of the present invention;
fig. 2 is a flowchart of a flight trajectory original path replaying method according to an embodiment of the present invention;
fig. 3 is a flowchart of another flight trajectory rehearsal method according to an embodiment of the present invention;
FIG. 4 is a schematic structural diagram of an aircraft in accordance with an embodiment of the present invention;
FIG. 5 is a schematic structural diagram of yet another aircraft in accordance with an embodiment of the invention;
FIG. 6 is a schematic structural diagram of yet another aircraft in accordance with an embodiment of the invention;
fig. 7 is a schematic structural view of another aircraft according to an embodiment of the invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be obtained by a person skilled in the art without inventive effort based on the embodiments of the present invention, are within the scope of the present invention.
Referring to fig. 1, fig. 1 is a flight control system according to an embodiment of the present invention. The system comprises an aircraft 101, a tripod head 102 mounted on the aircraft 101, and a ground control device 103 for controlling the aircraft or controlling both the aircraft 101 and the tripod head 102. The aircraft may typically be any type of Unmanned Aerial Vehicle (UAV), such as a quad-rotor UAV, a hexa-rotor UAV, or the like. The cradle head 102 mounted on the aircraft may be a three-axis cradle head, that is, the attitude of the cradle head 102 may be controlled on three axes, namely pitch, roll and course, to determine the orientation of the cradle head 102, so that the camera configured on the cradle head 102 can complete tasks such as aerial photography in the flight process.
The aircraft 101 may communicate (e.g., wirelessly) with a control device 103 on the ground. The ground control device 103 may be a controller with a joystick, which controls the aircraft by means of the amount of the joystick. This ground control equipment 103 also can be smart machine such as smart mobile phone, panel computer, can control unmanned aerial vehicle 101 automatic flight through dispose the flight orbit on user interface UI, perhaps controls unmanned aerial vehicle 101 automatic flight through modes such as body feeling.
Referring to fig. 2, fig. 2 is a flowchart illustrating a flight trajectory rehearsal method according to an embodiment of the present invention, where the method may be implemented based on the flight system shown in fig. 1, or based on other architectures; the method includes, but is not limited to, the steps of:
step S201: the aircraft takes first images and collects flight status data at a plurality of flight moments.
Specifically, the aircraft may fly in the air for a period of time, the flight of the aircraft in the period of time may be artificially remotely controlled to fly the aircraft, the multiple flight moments may be partial moments in the period of time, the multiple flight moments are selected from the period of time by what strategy, but not limited thereto, and optionally, the multiple flight moments are determined by the aircraft during the flight according to the first trajectory according to at least one of the flying speed, the battling operation and the preset distance threshold, which is exemplified below:
first, the aircraft takes the moment when the stick-breaking operation for the aircraft is detected every time as the flight moment during the flight. It is understood that the aircraft is generally controlled by a control terminal (e.g., a remote controller, a mobile phone, etc.) which may receive a user's stick-striking operation on a joystick (virtual or physical) during controlling the aircraft, and accordingly, the aircraft may detect whether there is a stick-striking operation on the joystick in real time, and if so, take a time when the user's stick-striking operation is detected as a flight time, that is, a time when the stick-striking operation is detected each time as a flight time. It can be understood that the moment when the user performs the stick-breaking operation on the joystick is usually the turning point of the aircraft during the flight (i.e. the key node of the flight state change), and recording these special moments can help to better restore the flight trajectory later.
Secondly, the flying speed of the aircraft at each flying time is not lower than a preset speed threshold (for example, the threshold may be set to 0.1m/s), that is, if the flying speed of the aircraft at a certain time is small, the aircraft does not take the certain time as the flying time, which can avoid determining the flying time at the time when the displacement of the aircraft changes little within a certain time, for example, the speed of the aircraft is small when the lever-hitting operation is just started. If the displacement change of the aircraft in a certain period of time is small, and the moment in the certain period of time is determined as the flight moment, the subsequently restored flight trajectory is not smooth.
Thirdly, the distance between any two adjacent flying moments of the aircraft in any two time is not less than a preset distance threshold value. In a specific implementation, the aircraft detects its own position in real time, and records the current time as the flight time when the distance of the aircraft changes by a preset distance, for example, it is assumed that the aircraft detects its own position at the 1 st time (starting time), the 2 nd time, the 3 rd time, the 4 th time, the 5 th time, the 6 th time, the 7 th time, the 8 th time, and the 9 th time in sequence in time; then, first, a time whose distance from the 1 st time is not less than the preset distance threshold is determined, then the determined time is taken as a flight time, and assuming that the determined flight time is the 3 rd time, the 3 rd time is taken as a flight time, then a time whose distance from the 3 rd time is not less than the preset threshold is further determined, then the determined time is taken as a flight time, assuming that the determined flight time is the 4 th time, the 4 th time is taken as a flight time, and the rest is similar.
The aircraft collects flight state data at each of the plurality of flight times, the flight state data including at least one of position information, velocity information, and acceleration information, optionally, the flight state data including the position information, optionally, the flight state data including position information and acceleration information, optionally, the flight state data including position information, acceleration information, and velocity information. For example, when the flight status data includes a position, the position information may be specifically determined by at least one of a Positioning System (e.g., (Global Positioning System, GPS), a BeiDou Navigation Satellite System (BDS), a Galileo Satellite Navigation System (GNSS), etc.), a visual Positioning technology, and an Inertial Measurement Unit (IMU), and optionally, the aircraft records an initial position of its own flight, then detects a flight acceleration and a flight direction in real time by the IMU, then calculates a flight speed according to the flight acceleration, further calculates a flight distance according to the flight time and the flight speed, and finally determines a real-time position of the aircraft by combining the flight distance, the flight direction, and the initial position of the flight. For another example, when the flight state data includes acceleration information, the acceleration information may be detected by an acceleration sensor of the aircraft, or may be calculated based on a change in velocity by a preconfigured algorithm for the aircraft. For another example, when the flight status data includes velocity information, the velocity information may be calculated for the aircraft based on changes in its position using a preconfigured algorithm.
In addition, the aircraft can take the first image at each flight moment in the plurality of flight moments, the first images taken by the aircraft at different positions are different, the first images taken by the aircraft at the same position are the same, and the first image taken at each flight moment can be associated with position information to indicate the position where the image is taken. Alternatively, the first image may be a grayscale image, an RGB image, or the like.
Step S202: the aircraft generates a first trajectory from the flight status data collected at the plurality of flight moments.
It will be appreciated that the aircraft first generates a first trajectory from the collected flight status data at a plurality of flight times, the first trajectory running substantially the same as the trajectory of the aircraft during the period of time. For ease of understanding, an alternative way of generating the first trajectory is provided below:
the flight state data includes position information P, velocity information V, and acceleration information a, and a trajectory obtained by sequentially splicing flight sub-trajectories of the aircraft between all two adjacent flight times is the first trajectory, where the sub-trajectory of the aircraft flying between any two adjacent flight times can be described by a 5-order polynomial, and if an earlier time of the any two adjacent flight times is t0, a later time is t1, and a time interval between t1 and t0 is dt, the 5-order polynomial is specifically as follows:
Figure BDA0003537791280000051
in the formula 1-1, cx0,……,cx5Is the coefficient of the x-axis trajectory polynomial, cy0,……,cy5Is the coefficient of the y-axis trajectory polynomial, cz0,……,cz5Is the coefficient of the z-axis trajectory polynomial, t is the time of flight of the aircraft between any two adjacent flight moments, t is in the interval [0, dt]And (6) taking the value. Next, the coefficients of the x-axis trajectory polynomial, the coefficients of the y-axis trajectory polynomial, and the coefficients of the z-axis trajectory polynomial need to be solved, and the solving principles of the coefficients of the three axial trajectory polynomials are the same, so the following description will be given by taking the solving of the coefficients of the x-axis trajectory polynomial as an example:
an analytical expression of a trajectory coefficient in the X-axis direction is obtained from position, velocity, and acceleration information in the X-axis direction with a minimum Jerk (first derivative of acceleration) variation (minimum Jerk) as an optimization function between the two arbitrary flight times, and it is assumed that flight state data S0 of an earlier flight time of the two arbitrary adjacent flight times is { P ═ P }0,V0,A0,t0In which P is0For the aircraft position at the earlier of any two adjacent flight times, V0For the speed of the aircraft at the earlier of any two adjacent flight moments, A0Acceleration, t, of the aircraft at an earlier of any two adjacent flight moments0The aircraft is at an earlier time of any two adjacent flight times; the flight state data S0 ═ P of the later flight time of the two arbitrary adjacent flight times1,V1,A1,t1In which P is1For the aircraft position at a later time of any two adjacent flight times, V1For the speed of the aircraft at a later time of any two adjacent flight times, A1Acceleration, t, of the aircraft at a later time of any two adjacent flight times1For aircraft in any two adjacent positionsThe later of the flight times; then, the flight state data S0 of the earlier flight time of the two arbitrary adjacent flight times is { P ═ P0,V0,A0,t0The component in the X-axis direction is S0x={Px0,Vx0,Ax0,tx0In which P isx0Denotes the position in the x-axis direction, Vx0Denotes the speed in the x-axis direction, Ax0Representing acceleration in the x-axis direction, tx0Represents time; the flight state data S1 ═ P of the later flight time of the two arbitrary adjacent flight times1,V1,A1,t1The component in the X-axis direction is S1x={Px1,Vx1,Ax1,tx1In which P isx1Denotes the position in the x-axis direction, Vx1Denotes the speed in the x-axis direction, Ax1Representing acceleration in the x-axis direction, tx0Represents time; intermediate variables shown in equations 1-2 can be obtained:
Figure BDA0003537791280000061
the intermediate variables shown in equations 1-3 can be further derived based on equations 1-2:
Figure BDA0003537791280000062
the coefficients of the x-axis trajectory polynomial may be further derived based on equations 1-3, as shown in equations 1-4:
Figure BDA0003537791280000063
the above description has been made of an analytical expression for obtaining the trajectory coefficient in the X axis direction from the position, velocity, and acceleration information in the X axis direction, and an analytical expression for the trajectory coefficient in the Y axis direction and an analytical expression for the trajectory coefficient in the Z axis direction can be obtained based on the same principle. Therefore, the sub-trajectories of the aircraft flying between any two adjacent flying moments can be determined according to the formula 1-1, and then the flying sub-trajectories of the aircraft flying between all two adjacent flying moments are spliced in sequence to obtain the first trajectory.
Step S203: the aircraft takes a second image during flight according to the first trajectory.
Step S204: the aircraft compares the second image to the first image to determine an offset.
Specifically, for example, the aircraft compares the texture in the second image to the texture in the first image to determine an offset. More specifically, the aircraft determines the offset of the aircraft through a closed loop detection method (loop closure), and the specific principle is as follows: selecting a first image closest to a currently-photographed second image from the plurality of first images photographed according to a preconfigured image matching algorithm (for example, an image similarity comparison algorithm based on a bag-of-words model), searching the position of the aircraft at the time of photographing the closest first image, and finally determining the offset between the position of the aircraft on the first track at the time of photographing the current second image and the position of the aircraft at the time of photographing the closest first image, wherein the determined offset is the offset of the aircraft.
It will be appreciated that, in accordance with this principle, the aircraft may determine an offset at various times during flight according to the first trajectory, the determined offset P of the aircraftoffset(t) may also contain a component in the X-axis direction
Figure BDA0003537791280000071
Component of Y axis
Figure BDA0003537791280000072
And component in the Z-axis direction
Figure BDA0003537791280000073
I.e. the offset Poffset(t) can be represented by
Figure BDA0003537791280000074
Step (ii) ofS205: the aircraft corrects the first track according to the offset.
Specifically, the offset determined at the previous time may be used for correction at the next time. Since the first trajectory is obtained by sequentially splicing the flight sub-trajectories between all two adjacent flight times on the first trajectory, the principle of correcting the flight sub-trajectories between any two adjacent flight times by using the offset is described first herein; alternatively, the principle of correction may be to offset the amount
Figure BDA0003537791280000075
Figure BDA0003537791280000076
Substituting the corrected sub-trajectory into the above equation 1-1 to obtain the corrected sub-trajectory of the flight trajectory between any two adjacent flight moments, as shown in equation 2-1:
Figure BDA0003537791280000077
and splicing the corrected sub-tracks of the flight tracks between two adjacent flight moments to obtain a corrected first track. Therefore, it can be considered that the aircraft actually flies according to the corrected first trajectory, and the principle that the aircraft controls itself to fly according to the corrected first trajectory can be as follows:
the aircraft determines flight state data of each control moment (it can be understood that the aircraft needs to continuously adjust the state of the aircraft so as to enable the finally flown track to be the corrected first track, and the moment of each state adjustment can be referred to as the control moment) in the flight process according to the corrected first track, wherein the flight state data comprises at least one of position information, speed information and acceleration information; then, the aircraft adjusts its state to the state indicated by the flight state data at each of the control times. That is, the aircraft will know in real time what position the aircraft needs to reach currently, what the flight speed reaches, and what the flight acceleration reaches. Then, the current actual position, the actual flying speed and the actual flying acceleration of the aircraft are adjusted, so that the aircraft reaches the position to be reached, the flying speed to be reached and the flying acceleration to be reached.
The following examples describe the manner in which the position, flight speed, and flight acceleration of the aircraft are known:
it is assumed that the modified first trajectory is formed by splicing n modified sub-trajectories, each modified sub-trajectory of the n modified sub-trajectories is obtained by modifying the flight trajectory between a group of two adjacent flight times (described above), and the modified sub-trajectories obtained by modifying the flight trajectory between two adjacent flight times of different groups may be different. As can be seen from equation 2-1, each modified sub-track is composed of a polynomial of order 5 and contains 6 coefficients, and the coefficients and start-stop times of these polynomials are stored in the following data structure:
Figure BDA0003537791280000081
in equation 3-1, track _ x [ n ] [6] stores 6 coefficients for the x-axis n modified sub-tracks, for a total of 6 x n coefficients, track _ y [ n ] [6] stores 6 coefficients for the y-axis n modified sub-tracks, for a total of 6 x n coefficients, track _ z [ n ] [6] stores 6 coefficients for the z-axis n modified sub-tracks, for a total of 6 x n coefficients; the projector _ time [ n +1] stores the end times of n modified sub-tracks on the whole time axis, for example, the modified first track is composed of 3 modified sub-tracks, the elapsed times of the 3 modified sub-tracks are 1 second, 2 seconds and 3 seconds, respectively, so that on the time axis, the start time of the modified first track is 0 second, the end time of the first modified sub-track is 1 second, the end time of the second modified sub-track is 3 seconds, the end time of the third modified sub-track is 6 seconds, and 6s is also the time required for finishing flying the modified first track.
The aircraft then performs the following procedure according to the data structure shown in 3-1:
1. setting a global clock, and resetting the time of the clock to 0 when the flight according to the modified first track is started, wherein the 0 is actually the starting time of the modified first track on the time axis.
2. Assuming that the control frequency of the aircraft in the track following process is frequency, that is, a second sends frequency control commands, the control command calculation period is 1/frequency, that is, a control command is calculated every 1/frequency second, so the time increase interval of the global clock is 1/frequency (the clock constantly updates its time according to the formula tick + 1/frequency), each time tick of the clock corresponds to a desired position, velocity and acceleration on the modified first track, and according to the current time tick of the clock, a track _ time [ n +1] is traversed to find which modified sub-track the tick corresponds to, and the found modified mth sub-track satisfies the following formula:
trajectory_time[m]≤tick≤trajectory_time[m+1]3-2
3. calculating the position p which needs to be reached currently according to the corrected parameter of the mth sub-trackdesiredVelocity v to be achieveddesiredAnd the acceleration a to be achieveddesired
Since the sub-trajectory polynomial is normalized, the tick at this location is also normalized, i.e., normalized
Figure BDA0003537791280000091
Wherein, trajectory _ time [ m +1]]-trajectory_time[m]Represents the total elapsed time of the m-th sub-track after correction, tick-track _ time m]Indicating the time at which tick time has entered the revised mth sub-track. Then, the required position p is calculated according to the trajectory polynomial shown in the formula 2-1desiredTo be achievedVelocity vdesiredAcceleration a to be achieveddesiredThe formula for calculating each quantity is as follows (ejection _ x [ n ]][6]Abbreviated as tx n][6]):
Position p to be reacheddesiredComprises the following steps:
Figure 1
the formula 4-1 is a matrix form of a linear equation set, the equation set in the formula 2-1 is obtained after expansion, and the position p which needs to be reached in the X axis direction can be obtained after expansion by taking the X axis direction as an exampledesired_x=tx[m][0]+ tx[m][1]*tm 1+tx[m][2]*tm 2+tx[m][3]*tm 3+tx[m][4]*tm 4+tx[m][5]* tm 5Wherein, tx [ m ]][0]Constant term equal to the m-th sub-track polynomial after correction
Figure BDA0003537791280000093
In addition, the positions required to be reached by the Y-axis direction and the Z-axis direction can be referred to the description of the X-axis direction. The position p to be reached can be obtained based on the position in the X axial direction, the position in the Y axial direction and the position in the Z axial directiondesired
Velocity v to be achieveddesiredComprises the following steps:
Figure 2
the formula 4-2 is a matrix form of a linear equation system, and after the linear equation system is expanded, the first derivative of the equation system in the formula 3-1 is obtained, taking the X-axis as an example, and after the linear equation system is expanded, the speed v which is required to be reached by the X-axis can be obtaineddesired_x= tx[m][1]+2*tx[m][2]*tm 1+3*tx[m][3]*tm 2+4*tx[m][4]*tm 3+5* tx[m][5]*tm 4Wherein, tx [ m ]][1]A first order term in the polynomial equal to the mth modified sub-track; in addition, the speeds required to be achieved in the Y-axis direction and the Z-axis direction can be described with reference to the X-axis direction. Speed based on X-axis, speed based on Y-axis and Z-axisThe speed of the motor can obtain the speed v to be reacheddesired
Acceleration a to be achieveddesiredComprises the following steps:
Figure 3
the formula 4-3 is a matrix form of a linear equation set, the second derivative of the equation set in the formula 3-1 is obtained after expansion, taking the X axial direction as an example, and the acceleration a required to be achieved by the X axial direction can be obtained after expansiondesired_x=2* tx[m][2]+6*tx[m][3]*tm 1+12*tx[m][4]*tm 2+20*tx[m][5]*tm 3Wherein, tx [ m ]][2]A second order term equal to the mth modified sub-trajectory polynomial; in addition, the acceleration required to be achieved in the Y-axis direction and the Z-axis direction can be described with reference to the X-axis direction. The acceleration a to be achieved can be obtained based on the acceleration in the X axial direction, the acceleration in the Y axial direction and the acceleration in the Z axial directiondesired
From the above principle, the position p to be reached at each moment when flying on the mth corrected sub-track can be obtaineddesiredVelocity v to be achieveddesiredAcceleration a to be achieveddesiredBased on the same principle, the position p which needs to be reached at each moment when the aircraft flies on the whole corrected first track can be deduceddesiredVelocity v to be achieveddesiredAcceleration a to be achieveddesired
Accordingly, the aircraft will need to reach a position p during flightdesiredVelocity v to be achieveddesirsdAcceleration a to be achieveddesiredSubstituting into a proportional-integral-derivative (PID) control algorithm (or other algorithm) to calculate a control command for instructing the aircraft to make a corresponding adjustment to position p that the aircraft needs to reachdesiredThe speed reaches the required speed vdesiredAnd acceleration reaches the acceleration a to be reacheddesired
In the method shown in fig. 2, the aircraft collects flight state data of the aircraft during flight, and a first image is taken by a camera; and then generating a first track through the flight state data, shooting a second image in real time in the subsequent flight process according to the first track, comparing the second image with the first image to determine the offset of the aircraft when flying according to the first track, then correcting the first track by using the offset, and continuing to fly according to the corrected first track. Because the offset of the aircraft in flying is considered in the generation of the corrected first track, the iterative error generated in the flying process can be reduced, and the finally generated first track for the autonomous flying of the aircraft can restore the flight track of artificial control as much as possible.
Referring to fig. 3, fig. 3 is a flowchart illustrating a flight trajectory rehearsal method according to an embodiment of the present invention, where the method may be implemented based on the flight system shown in fig. 1, or based on other architectures; the method includes, but is not limited to, the steps of:
step S301: the method comprises the steps that a plurality of flight moments are determined according to at least one of the flying speed, the pole hitting operation and the preset distance threshold value in the flying process of the aircraft, and the flying state data of the aircraft at the flight moments are collected.
Specifically, optionally, the flight of the aircraft in the period of time may be a flight of the aircraft that is artificially remotely controlled, and the plurality of flight moments are selected from the period of time according to what strategy, which is not limited herein, and the following examples include several possible implementations:
first, the aircraft takes the moment when the stick-breaking operation for the aircraft is detected every time as the flight moment during the flight. It is understood that the aircraft is generally controlled by a control terminal (e.g., a remote controller, a mobile phone, etc.) which may receive a user's stick-striking operation on a joystick (virtual or physical) during controlling the aircraft, and accordingly, the aircraft may detect whether there is a stick-striking operation on the joystick in real time, and if so, take a time when the user's stick-striking operation is detected as a flight time, that is, a time when the stick-striking operation is detected each time as a flight time. It can be understood that the moment when the user performs the stick-breaking operation on the joystick is usually the turning point of the aircraft during the flight (i.e. the key node of the flight state change), and recording these special moments can help to better restore the flight trajectory later.
Secondly, the flying speed of the aircraft at each flying time is not lower than a preset speed threshold (for example, the threshold may be set to 0.1m/s), that is, if the flying speed of the aircraft at a certain time is small, the aircraft does not take the certain time as the flying time, which can avoid determining the flying time at the time when the displacement of the aircraft changes little within a certain time, for example, the speed of the aircraft is small when the lever-hitting operation is just started. If the displacement change of the aircraft in a certain period of time is small, and the moment in the certain period of time is determined as the flight moment, the subsequently restored flight trajectory is not smooth.
Thirdly, the distance between any two adjacent flying moments of the aircraft in any two time is not less than a preset distance threshold value. In a specific implementation, the aircraft detects its own position in real time, and records the current time as the flight time when the distance of the aircraft changes by a preset distance, for example, it is assumed that the aircraft detects its own position at the 1 st time (starting time), the 2 nd time, the 3 rd time, the 4 th time, the 5 th time, the 6 th time, the 7 th time, the 8 th time, and the 9 th time in sequence in time; then, first, a time whose distance from the 1 st time is not less than the preset distance threshold is determined, then the determined time is taken as a flight time, and assuming that the determined flight time is the 3 rd time, the 3 rd time is taken as a flight time, then a time whose distance from the 3 rd time is not less than the preset threshold is further determined, then the determined time is taken as a flight time, assuming that the determined flight time is the 4 th time, the 4 th time is taken as a flight time, and the rest is similar.
The aircraft may have a duration of time in flight, the plurality of flight moments may be a fraction of the duration of time, and the unmanned aerial vehicle may collect flight status data at each of the plurality of flight moments, the flight status data including at least one of position information, velocity information, and acceleration information, optionally the flight status data including the position information, optionally the flight status data including position information and acceleration information, optionally the flight status data including position information, acceleration information, and velocity information. For example, when the flight status data includes a position, the position information may be specifically determined by the aircraft via at least one of a Positioning System (e.g., (Global Positioning System, GPS), a BeiDou Navigation Satellite System (BDS), a Galileo Satellite Navigation System (GNSS), etc.), a visual Positioning technique, and an Inertial Measurement Unit (IMU). Optionally, the aircraft records the initial position of its own flight, then detects the flight acceleration and flight direction in real time through the IMU, then calculates the flight speed according to the flight acceleration, further calculates the flight distance according to the time and flight speed of the flight, and finally determines the real-time position of the aircraft by combining the flight distance, flight direction and the initial position of the flight. For another example, when the flight state data includes acceleration information, the acceleration information may be detected by an acceleration sensor of the aircraft, or may be calculated based on a change in velocity by a preconfigured algorithm for the aircraft. For another example, when the flight status data includes velocity information, the velocity information may be calculated for the aircraft based on changes in the aircraft's position using a preconfigured algorithm.
Step S302: the aircraft generates a first trajectory according to flight state data acquired by the aircraft at the plurality of flight moments.
Specifically, the aircraft first generates a first trajectory from the collected flight state data at a plurality of flight times, the first trajectory having a substantially same direction as the trajectory of the aircraft during the period of time, and optionally, the first trajectory being smoother than the trajectory of the aircraft during the period of time. For ease of understanding, an alternative way of generating the first trajectory is provided below:
the flight state data includes position information P, speed information V and acceleration information a, and the trajectory obtained by sequentially splicing the flight sub-trajectories of the aircraft between all two adjacent flight times is the first trajectory, where the sub-trajectory of the aircraft flying between any two adjacent flight times can be described by a 5-order polynomial, and if the earlier time of any two adjacent flight times is t0, the later time is t1, and the time interval between t1 and t0 is dt, the 5-order polynomial is specifically as follows:
Figure BDA0003537791280000131
in the formula 1-1, cx0,……,cx5Is the coefficient of the x-axis trajectory polynomial, cy0,……,cy5Is the coefficient of the y-axis trajectory polynomial, cz0,……,cz5Is the coefficient of the z-axis trajectory polynomial, t is the time of flight of the aircraft between any two adjacent flight moments, t is in the interval [0, dt]And (6) taking the value. Next, the coefficients of the x-axis trajectory polynomial, the coefficients of the y-axis trajectory polynomial, and the coefficients of the z-axis trajectory polynomial need to be solved, and the solving principles of the coefficients of the three axial trajectory polynomials are the same, so the following description will be given by taking the solving of the coefficients of the x-axis trajectory polynomial as an example:
an analytical expression of a trajectory coefficient in the X-axis direction is obtained from position, velocity, and acceleration information in the X-axis direction with a minimum Jerk (first derivative of acceleration) variation (minimum Jerk) as an optimization function between the two arbitrary flight times, and it is assumed that flight state data S0 of an earlier flight time of the two arbitrary adjacent flight times is { P ═ P }0,V0,A0,t0In which P is0For the aircraft position at an earlier of any two adjacent flight times, V0To fly inThe speed of the device at the earlier of any two adjacent flight times, A0Acceleration, t, of the aircraft at an earlier of any two adjacent flight moments0The aircraft is at an earlier time of any two adjacent flight times; the flight state data S0 ═ P of the later flight time of the two arbitrary adjacent flight times1,V1,A1,t1In which P is1For the aircraft position at a later time of any two adjacent flight times, V1For the speed of the aircraft at a later time of any two adjacent flight times, A1Acceleration, t, of the aircraft at a later time of any two adjacent flight times1The aircraft is at a later moment in any two adjacent flight moments; then, the flight state data S0 of the earlier flight time of the two arbitrary adjacent flight times is { P ═ P0,V0,A0,t0The component in the X-axis direction is S0x={Px0,Vx0,Ax0,tx0In which P isx0Denotes the position in the x-axis direction, Vx0Denotes the speed in the x-axis direction, Ax0Representing acceleration in the x-axis direction, tx0Represents time; the flight state data S1 ═ P of the later flight time of the two arbitrary adjacent flight times1,V1,A1,t1The component in the X-axis direction is S1x={Px1,Vx1,Ax1,tx1In which P isx1Denotes the position in the x-axis direction, Vx1Denotes the speed in the x-axis direction, Ax1Denotes the acceleration in the x-axis direction, tx0Represents time; intermediate variables shown in equations 1-2 can be obtained:
Figure BDA0003537791280000132
the intermediate variables shown in equations 1-3 can be further derived based on equations 1-2:
Figure BDA0003537791280000141
the coefficients of the x-axis trajectory polynomial may be further derived based on equations 1-3, as shown in equations 1-4:
Figure BDA0003537791280000142
the above description has been made of an analytical expression for obtaining the trajectory coefficient in the X axis direction from the position, velocity, and acceleration information in the X axis direction, and an analytical expression for the trajectory coefficient in the Y axis direction and an analytical expression for the trajectory coefficient in the Z axis direction can be obtained based on the same principle. Therefore, the sub-trajectories of the aircraft flying between any two adjacent flying moments can be determined according to the formula 1-1, and then the flying sub-trajectories of the aircraft flying between all two adjacent flying moments are spliced in sequence to obtain the first trajectory.
Step S303: the aircraft flies according to the first generated trajectory.
In an optional scheme, in the process of flying, the aircraft determines a plurality of flying moments according to at least one of a flying speed, a stick-hitting operation and a preset distance threshold, and collects flight state data of the aircraft at the plurality of flying moments, which may specifically be: the method comprises the steps that a plurality of flying moments are determined by an aircraft according to at least one of flying speed, a stick-hitting operation and a preset distance threshold in the flying process, first images are shot at different positions of the aircraft, the first images shot at the same position of the aircraft are the same, and position information can be related to the first images shot at each flying moment to indicate the position of the image. Alternatively, the first image may be a grayscale image, an RGB image, or the like.
In addition, the aircraft flies according to the first trajectory generated, which may be: the aircraft shoots a second image in the process of flying according to the first track; the aircraft comparing the second image to the first image to determine an offset; and the aircraft corrects the first track according to the offset for the aircraft to fly continuously.
The specific principle of determining the offset may be as follows: selecting a first image closest to a currently-photographed second image from the plurality of first images photographed according to a preconfigured image matching algorithm (for example, an image similarity comparison algorithm based on a bag-of-words model), searching the position of the aircraft at the time of photographing the closest first image, and finally determining the offset between the position of the aircraft on the first track at the time of photographing the current second image and the position of the aircraft at the time of photographing the closest first image, wherein the determined offset is the offset of the aircraft. It will be appreciated that, in accordance with this principle, the aircraft may determine an offset at various times during flight according to the first trajectory, the determined offset P of the aircraftoffset(t) may also contain a component in the X-axis direction
Figure BDA0003537791280000151
Component of Y axis
Figure BDA0003537791280000152
And component in the Z-axis direction
Figure BDA0003537791280000153
I.e. the offset Poffset(t) can be represented by
Figure BDA0003537791280000154
Optionally, the offset determined at the previous time may be used for correction at the next time.
Since the first trajectory is obtained by sequentially splicing the flight sub-trajectories between all two adjacent flight times on the first trajectory, the principle of correcting the flight sub-trajectories between any two adjacent flight times by using the offset is described first herein; alternatively, the principle of correction may be to offset the amount
Figure BDA0003537791280000155
Substituted into the above formula 1-1 to obtainThe corrected sub-trajectory of the flight trajectory between any two adjacent flight moments is shown in equation 2-1:
Figure BDA0003537791280000156
and splicing the corrected sub-tracks of the flight tracks between two adjacent flight moments to obtain a corrected first track. Therefore, it may be considered that the aircraft actually flies according to the corrected first trajectory, and the controlling of the aircraft to fly according to the corrected first trajectory may specifically include the following operations: firstly, determining flight state data of each control moment in the flight process by the aircraft according to the corrected first track, wherein the flight state data comprises at least one of position information, speed information and acceleration information; the aircraft then adjusts its state at each of the control times to the state indicated by the flight state data at each of the control times. Specifically, the aircraft knows in real time where the aircraft needs to reach, how much the flying speed reaches, and how much the flying acceleration reaches in the flying process according to the corrected first trajectory. Then, the current actual position, the actual flying speed and the actual flying acceleration of the aircraft are adjusted, so that the aircraft reaches the position to be reached, the flying speed to be reached and the flying acceleration to be reached. The following description will be given by way of example to know the current position, flight speed and flight acceleration of the aircraft:
it is assumed that the modified first trajectory is formed by splicing n modified sub-trajectories, each modified sub-trajectory of the n modified sub-trajectories is obtained by modifying the flight trajectory between a group of two adjacent flight times (described above), and the modified sub-trajectories obtained by modifying the flight trajectory between two adjacent flight times of different groups may be different. As can be seen from equation 2-1, each modified sub-track is composed of a polynomial of order 5 and contains 6 coefficients, and the coefficients and start-stop times of these polynomials are stored in the following data structure:
Figure BDA0003537791280000161
in equation 3-1, track _ x [ n ] [6] stores 6 coefficients for the x-axis n modified sub-tracks, for a total of 6 x n coefficients, track _ y [ n ] [6] stores 6 coefficients for the y-axis n modified sub-tracks, for a total of 6 x n coefficients, track _ z [ n ] [6] stores 6 coefficients for the z-axis n modified sub-tracks, for a total of 6 x n coefficients; the projector _ time [ n +1] stores the end times of n modified sub-tracks on the whole time axis, for example, the modified first track is composed of 3 modified sub-tracks, the elapsed times of the 3 modified sub-tracks are 1 second, 2 seconds and 3 seconds, respectively, so that on the time axis, the start time of the modified first track is 0 second, the end time of the first modified sub-track is 1 second, the end time of the second modified sub-track is 3 seconds, the end time of the third modified sub-track is 6 seconds, and 6s is also the time required for finishing flying the modified first track.
The aircraft then performs the following procedure according to the data structure shown in 3-1:
1. setting a global clock, resetting the time of the clock to 0 when starting to fly according to the modified first track, wherein the 0 is actually the starting time of the modified first track on the time axis.
2. Assuming that the control frequency of the aircraft in the track following process is frequency, that is, a second sends frequency control commands, the control command calculation period is 1/frequency, that is, a control command is calculated every 1/frequency second, so the time increase interval of the global clock is 1/frequency (the clock constantly updates its time according to the formula tick + 1/frequency), each time tick of the clock corresponds to a desired position, velocity and acceleration on the modified first track, and according to the current time tick of the clock, a track _ time [ n +1] is traversed to find which modified sub-track the tick corresponds to, and the found modified mth sub-track satisfies the following formula:
trajectory_time[m]≤tick≤trajectory_time[m+1] 3-2
3. calculating the position p which needs to be reached currently according to the corrected parameter of the mth sub-trackdesiredVelocity v to be achieveddesiredAnd the acceleration a to be achieveddesired
Since the sub-trajectory polynomial is normalized, the tick at this location is also normalized, i.e., normalized
Figure BDA0003537791280000162
Wherein, trajectory _ time [ m +1]]-trajectory_time[m]Represents the total elapsed time of the m-th sub-track after correction, tick-track _ time m]Indicating the time at which tick time has entered the revised mth sub-track. Then, the required position p is calculated according to the trajectory polynomial shown in the formula 2-1desiredVelocity v to be achieveddesiredAcceleration a to be achieveddesiredThe respective quantities are calculated as follows (projector _ x [ n ]][6]Abbreviated as tx n][6]):
Position p to be reacheddesiredComprises the following steps:
Figure 4
the formula 4-1 is a matrix form of a linear equation set, the equation set in the formula 2-1 is obtained after expansion, and the position p which needs to be reached in the X axis direction can be obtained after expansion by taking the X axis direction as an exampledesired_=tx[m][0]+ tx[m][1]*tm 1+tx[m][2]*tm 2+tx[m][3]*tm 3+tx[m][4]*tm 4+tx[m][5]* tm 5Wherein, tx [ m ]][0]Constant term equal to the m-th sub-track polynomial after correction
Figure BDA0003537791280000172
In addition, Y-axis and Z-axisThe positions to be reached can be described with reference to the X-axis. The position p to be reached can be obtained based on the position in the X-axis direction, the position in the Y-axis direction and the position in the Z-axis directiondesired
Velocity v to be achieveddesiredComprises the following steps:
Figure 5
the formula 4-2 is a matrix form of a linear equation system, and after the linear equation system is expanded, the first derivative of the equation system in the formula 3-1 is obtained, taking the X-axis as an example, and after the linear equation system is expanded, the speed v which is required to be reached by the X-axis can be obtaineddesired_x= tx[m][1]+2*tx[m][2]*tm 1+3*tx[m][3]*tm 2+4*tx[m][4]*tm 3+5* tx[m][5]*tm 4Wherein, tx [ m ]][1]A first order term in the polynomial equal to the mth modified sub-track; in addition, the speeds required to be achieved in the Y-axis direction and the Z-axis direction can be described with reference to the X-axis direction. Based on the speed of the X axial direction, the speed of the Y axial direction and the speed of the Z axial direction, the speed v to be reached can be obtaineddesired
Acceleration a to be achieveddesiredComprises the following steps:
Figure 6
the formula 4-3 is a matrix form of a linear equation set, the second derivative of the equation set in the formula 3-1 is obtained after expansion, taking the X axial direction as an example, and the acceleration a required to be achieved by the X axial direction can be obtained after expansiondesired_x=2* tx[m][2]+6*tx[m][3]*tm 1+12*tx[m][4]*tm 2+20*tx[m][5]*tm 3Wherein, tx [ m ]][2]A second order term equal to the mth modified sub-trajectory polynomial; in addition, the acceleration required to be achieved in the Y-axis direction and the Z-axis direction can be described with reference to the X-axis direction. The acceleration a to be achieved can be obtained based on the acceleration in the X axial direction, the acceleration in the Y axial direction and the acceleration in the Z axial directiondesired
According to the above principle can obtainThe position p to be reached at each moment when flying on the mth corrected sub-trajectorydesiredVelocity v to be achieveddesiredAcceleration a to be achieveddesiredBased on the same principle, the position p which needs to be reached at each moment when the aircraft flies on the whole corrected first track can be deduceddesiredVelocity v to be achieveddesiredAcceleration a to be achieveddesired
Accordingly, the aircraft will need to reach a position p during flightdesiredVelocity v to be achieveddesiredAcceleration a to be achieveddesiredSubstituting into a proportional-integral-derivative (PID) control algorithm (or other algorithm) to calculate a control command for instructing the aircraft to make a corresponding adjustment to position p that the aircraft needs to reachdesiredThe speed reaches the required speed vdesiredAnd the acceleration reaches the required acceleration adesired
In the method shown in fig. 3, the aircraft determines a plurality of flight moments during the flight according to at least one of the flight speed, the stick-hitting operation, and the preset distance threshold, then collects the flight state data at the determined plurality of flight moments, generates a first trajectory according to the flight state data, and finally flies according to the first trajectory. Because the flight time is determined according to at least one of the flight speed, the striking operation and the preset distance threshold, most of the determined flight time can be ensured to be the more critical time of the aircraft in the flight process, and the flight track which is artificially controlled can be more accurately restored according to the first track determined by the flight state data acquired at the flight time.
The following describes a pan-tilt follow-up control device and control equipment according to an embodiment of the present invention.
Referring to fig. 4, fig. 4 is a schematic structural diagram of an aircraft 40 according to an embodiment of the present invention, where the aircraft 40 includes an acquisition module 401, a generation module 402, a first shooting module 403, a first determination module 404, and an optimization module 405, where each module is described as follows.
The acquisition module 401 is configured to capture a first image at a plurality of flight moments and acquire flight state data, where the flight state data includes at least one of position information, velocity information, and acceleration information;
the generating module 402 is configured to generate a first trajectory according to flight state data acquired at the plurality of flight moments;
the first shooting module 403 is used for shooting a second image during the flight according to the first track;
a first determination module 404 for comparing the second image with the first image to determine an offset;
the optimization module 405 is configured to modify the first trajectory according to the offset for the aircraft to continue flying.
In an optional scheme, the first determining unit 404 compares the second image with the first image to determine an offset, specifically: the aircraft compares the texture in the second image to the texture in the first image to determine an offset.
In yet another alternative, the aircraft further comprises a second determining module and an adjusting module:
the second determining module is configured to, after the generating module 402 generates the first trajectory according to the flight state data acquired at the multiple flight moments, determine flight state data of each control moment in the flight process according to the first trajectory, where the flight state data includes at least one of position information, velocity information, and acceleration information;
the adjusting module is used for adjusting the state of the adjusting module at each control moment to the state indicated by the flight state data at each control moment.
In yet another alternative, the location information is determined based on at least one of GPS technology, view location technology, and inertial sensor location technology.
In a further optional scheme, the aircraft further comprises a third determining module, wherein the third determining module is used for determining a plurality of flight moments according to at least one of the flying speed, the batting operation and the preset distance threshold value during the flight before the acquiring module captures the first image and acquires the flight state data at the plurality of flight moments.
In another optional scheme, the third determining module determines the flight moments according to at least one of a flight speed, a stick-hitting operation, and a preset distance threshold during the flight of the aircraft, specifically:
and taking the moment when the lever operation aiming at the aircraft is detected every time as the flight moment during the flight of the aircraft.
In yet another alternative, the flight speed of the aircraft at each of the moments of flight is not below a preset speed threshold.
In a further alternative, the distance between any two temporally adjacent moments of flight of the aircraft is not less than a preset distance threshold.
It should be noted that the implementation of each module may also correspond to the corresponding description of the method embodiment shown in fig. 2.
In the aircraft 40 depicted in fig. 4, the aircraft collects flight state data of the aircraft during flight, and a first image is taken through the camera; and then generating a first track through the flight state data, shooting a second image in real time in the subsequent flight process according to the first track, comparing the second image with the first image to determine the offset of the aircraft when flying according to the first track, then correcting the first track by using the offset, and continuing to fly according to the corrected first track. Because the offset of the aircraft in flying is considered in the generation of the corrected first track, the iterative error generated in the flying process can be reduced, and the finally generated first track for the autonomous flying of the aircraft can restore the flight track of artificial control as much as possible.
Referring to fig. 5, fig. 5 is a schematic structural diagram of an aircraft 50 according to an embodiment of the present invention, where the aircraft 50 includes a determining module 501, a generating module 502, and a flying module 503, where each module is described as follows.
The determining module 501 is configured to determine multiple flight moments according to at least one of a flight speed, a stick-hitting operation, and a preset distance threshold in a flight process of an aircraft, and acquire flight state data of the aircraft at the multiple flight moments, where the flight state data includes at least one of position information, speed information, and acceleration information;
the generating module 502 is configured to generate a first trajectory according to flight state data acquired by the aircraft at the multiple flight moments;
the flying module 503 is configured to fly according to the generated first trajectory.
In an optional scheme, the first determining module 501 determines a plurality of flight moments according to at least one of a flight speed, a stick-hitting operation, and a preset distance threshold during a flight of the aircraft, and collects flight state data of the aircraft at the flight moments, specifically:
and in the flying process of the aircraft, the moment of detecting the lever operation aiming at the aircraft each time is taken as the flying moment, and the flying state data of the aircraft at the flying moment is collected.
In an alternative, the flight speed of the aircraft at each of the flight times is not below a preset speed threshold.
In a further alternative, the distance between any two temporally adjacent moments of flight of the aircraft is not less than a preset distance threshold.
In yet another alternative, the location information is determined based on at least one of GPS technology, view location technology, and inertial sensor location technology.
In another optional scheme, the determining module 501 determines multiple flight moments according to at least one of a flight speed, a stick-hitting operation, and a preset distance threshold during a flight of the aircraft, and collects flight state data of the aircraft at the multiple flight moments, specifically:
determining a plurality of flight moments according to at least one of flight speed, a pole hitting operation and a preset distance threshold in the flight process, and shooting a first image and acquiring flight state data of the aircraft at the flight moments;
the flying module 503 flies according to the generated first trajectory, specifically:
firstly, shooting a second image in the process of flying according to the first track;
then, comparing the second image with the first image to determine an offset;
and then, correcting the first track according to the offset for the aircraft to fly continuously.
In another optional scheme, the flying module 503 flies according to the generated first trajectory, specifically:
determining flight state data of each control moment in the flight process according to the first track, wherein the flight state data comprises at least one of position information, speed information and acceleration information;
and adjusting the state of the aircraft to the state indicated by the flight state data at each control moment.
It should be noted that the implementation of each module may also correspond to the corresponding description of the method embodiment shown in fig. 3.
In the aircraft 50 depicted in fig. 5, the aircraft determines a plurality of flight moments during the flight according to at least one of the flight speed, the stick-strike operation, and the preset distance threshold, then collects the flight status data at the determined plurality of flight moments, generates a first trajectory according to the flight status data, and finally flies according to the first trajectory. Because the flight time is determined according to at least one of the flight speed, the striking operation and the preset distance threshold, most of the determined flight time can be ensured to be the more critical time of the aircraft in the flight process, and the flight track which is artificially controlled can be more accurately restored according to the first track determined by the flight state data acquired at the flight time.
Referring to fig. 6, fig. 6 is an aircraft 60 according to an embodiment of the present invention, where the aircraft 60 includes a processor 601, a memory 602, and a camera 603, and the processor 601, the memory 602, and the camera 603 are connected to each other through a bus.
The memory 602 includes, but is not limited to, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), or a portable read-only memory (CD-ROM), and the memory 602 is used for related instructions and data. The camera 603 is used to take photographs during flight of the aircraft 70.
The processor 601 may be one or more Central Processing Units (CPUs), and in the case that the processor 601 is one CPU, the CPU may be a single-core CPU or a multi-core CPU.
A processor 601 in the aircraft 60 is configured to read the program code stored in the memory 602 and perform the following operations:
shooting a first image at a plurality of flight moments and collecting flight state data, wherein the flight state data comprises at least one of position information, speed information and acceleration information;
generating a first track according to the flight state data acquired at the plurality of flight moments;
capturing a second image during flight according to the first trajectory;
comparing the second image to the first image to determine an offset;
and correcting the first track according to the offset for the aircraft to fly continuously.
In yet another optional scenario, the processor compares the second image with the first image to determine an offset, specifically: comparing the texture in the second image to the texture in the first image to determine an offset.
In yet another alternative, after the processor generates the first trajectory from the flight status data acquired at the plurality of flight instants, the processor is further configured to:
determining flight information of each control moment in the flight process according to the first track, wherein the flight state data comprises at least one of position information, speed information and acceleration information;
and adjusting the state of the aircraft to the state indicated by the flight state data at each control moment.
In yet another alternative, the location information is determined based on at least one of GPS technology, view location technology, and inertial sensor location technology.
In yet another alternative, the processor, prior to capturing the first image and acquiring the flight status data at the plurality of flight moments, is further configured to:
and determining the plurality of flight moments according to at least one of the flight speed, the stick-hitting operation and a preset distance threshold value in the flight process of the aircraft.
In another optional scheme, the processor determines the plurality of flight moments according to at least one of a flight speed, a stick-hitting operation, and a preset distance threshold during the flight of the aircraft, specifically:
and taking the moment when the lever operation aiming at the aircraft is detected every time as the flight moment in the process of flight.
In yet another alternative, the flight speed of the aircraft at each of the moments of flight is not below a preset speed threshold.
In a further alternative, the distance between any two temporally adjacent moments of flight of the aircraft is not less than a preset distance threshold.
It should be noted that the implementation of each operation may also correspond to the corresponding description of the method embodiment shown in fig. 2.
In the aircraft 60 depicted in fig. 6, the aircraft collects flight status data of the aircraft during flight and takes a first image through a camera; and then generating a first track through the flight state data, shooting a second image in real time in the subsequent flight process according to the first track, comparing the second image with the first image to determine the offset of the aircraft when flying according to the first track, then correcting the first track by using the offset, and continuing to fly according to the corrected first track. Because the offset of the aircraft in flying is considered in the generation of the corrected first track, the iterative error generated in the flying process can be reduced, and the finally generated first track for the autonomous flying of the aircraft can restore the flight track of artificial control as much as possible.
Referring to fig. 7, fig. 7 is an aircraft 70 according to an embodiment of the present invention, where the aircraft 70 includes a processor 701 and a memory 702, and the processor 701 and the memory 702 may be connected to each other through a bus. In addition, the aircraft may also include a camera 703 for taking photographs during flight of the aircraft 70.
The memory 702 includes, but is not limited to, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), or a portable read-only memory (CD-ROM), and the memory 702 is used for related instructions and data.
The processor 701 may be one or more Central Processing Units (CPUs), and in the case that the processor 701 is one CPU, the CPU may be a single-core CPU or a multi-core CPU.
A processor 701 in the aircraft 70 is configured to read the program code stored in the memory 702 and perform the following operations:
determining a plurality of flight moments according to at least one of flight speed, a pole hitting operation and a preset distance threshold value in the flying process of the aircraft and collecting flight state data of the aircraft at the flight moments, wherein the flight state data comprise at least one of position information, speed information and acceleration information;
generating a first track according to flight state data acquired by the aircraft at the plurality of flight moments;
and controlling the aircraft to fly according to the generated first track.
In an optional scheme, the processor determines a plurality of flight moments according to at least one of a flight speed, a stick-hitting operation and a preset distance threshold value in a flight process of the aircraft and collects flight state data of the aircraft at the flight moments, specifically:
and in the flying process, the moment of each detected lever operation aiming at the aircraft is taken as the flying moment, and the flying state data of the aircraft at the flying moment is collected.
In yet another alternative, the flight speed of the aircraft at each of the moments of flight is not below a preset speed threshold.
In a further alternative, the distance between any two temporally adjacent moments of flight of the aircraft is not less than a preset distance threshold.
In yet another alternative, the location information is determined based on at least one of GPS technology, view location technology, and inertial sensor location technology.
In another optional scheme, the processor determines a plurality of flight moments according to at least one of a flight speed, a stick-hitting operation, and a preset distance threshold during a flight of the aircraft, and collects flight status data of the aircraft at the flight moments, specifically:
determining a plurality of flight moments according to at least one of flight speed, a stick-hitting operation and a preset distance threshold value in the flying process of the aircraft, and shooting a first image and acquiring flight state data of the aircraft at the flight moments;
the processor flies according to the generated first track, specifically:
capturing a second image during flight according to the first trajectory;
comparing the second image to the first image to determine an offset;
and correcting the first track according to the offset for the aircraft to fly continuously.
In another optional scheme, the processor flies according to the generated first trajectory, specifically:
determining flight state data of each control moment in the flight process according to the first track, wherein the flight state data comprises at least one of position information, speed information and acceleration information;
and adjusting the state of the aircraft to the state indicated by the flight state data at each control moment.
It should be noted that the implementation of each operation may also correspond to the corresponding description of the method embodiment shown in fig. 3.
In the aircraft 70 depicted in fig. 7, during the flight, the aircraft determines a plurality of flight moments according to at least one of the flight speed, the stick-strike operation and the preset distance threshold, then collects the flight status data at the determined plurality of flight moments, generates a first trajectory according to the flight status data, and finally flies according to the first trajectory. Because the flying time is determined according to at least one of the flying speed, the striking operation and the preset distance threshold, the determined flying time can be ensured to be the most critical time of the aircraft in the flying process, and the first track determined based on the flying state data acquired at the flying time can be more accurately restored into the manually controlled flying track.
The embodiment of the invention also provides a chip system, which comprises at least one processor, a memory and an interface circuit, wherein the memory, the transceiver and the at least one processor are interconnected through a line, and the at least one memory stores program instructions; the program instructions, when executed by the processor, implement the method flow illustrated in fig. 2 or fig. 3.
Embodiments of the present invention further provide a computer-readable storage medium, where instructions are stored in the computer-readable storage medium, and when the computer-readable storage medium is executed on a network device, the computer-readable storage medium implements the method flow shown in fig. 2 or fig. 3.
Embodiments of the present invention also provide a computer program product, which when run on a processor implements the method flow shown in fig. 2 or fig. 3.
In summary, in the embodiment of the present invention, the aircraft acquires flight state data of the aircraft during a flight process, and a camera captures a first image; and then generating a first track through the flight state data, shooting a second image in real time in the subsequent flight process according to the first track, comparing the second image with the first image to determine the offset of the aircraft when flying according to the first track, then correcting the first track by using the offset, and continuing to fly according to the corrected first track. Because the offset of the aircraft in flying is considered in the generation of the corrected first track, the iterative error generated in the flying process can be reduced, and the finally generated first track for the autonomous flying of the aircraft can restore the flight track of artificial control as much as possible.
It should be understood that the above-described embodiments are only some of the examples of the present invention, and certainly, the scope of the present invention should not be limited by the above-described embodiments, but the skilled person will understand that all or part of the procedures for implementing the above-described embodiments may be implemented and equivalents thereof may be made thereto without departing from the scope of the present invention as defined by the appended claims.

Claims (20)

1. A flight trajectory original path rehearsal method is characterized by comprising the following steps:
the method comprises the steps that an aircraft takes first images at a plurality of flight moments and acquires flight state data, wherein the flight state data comprise at least one of position information, speed information and acceleration information, and the flight track of the aircraft at the flight moments is determined based on detected batting operation aiming at the aircraft;
the aircraft generates a first track according to the flight state data collected at the flight moments, and the smoothness degree of the first track is higher than that of the tracks of the aircraft flying at the flight moments;
the aircraft flies according to the generated first track.
2. The method of claim 1, wherein prior to the aircraft taking the first image and acquiring the flight status data at the plurality of flight moments, further comprising:
and the aircraft determines the flight moments according to at least one of the flight speed, the stick-hitting operation and a preset distance threshold value in the flight process.
3. The method of claim 2, wherein determining the plurality of flight moments during flight of the aircraft based on at least one of flight speed, stick maneuver, and a preset distance threshold comprises:
and the time when the flying vehicle detects the rod striking operation aiming at the flying vehicle in the flying process is taken as the flying time.
4. The method of claim 2, wherein the airspeed of the aircraft at each of the moments of flight is not below a preset airspeed threshold.
5. The method of claim 2, wherein a distance between any two temporally adjacent said moments of flight of said aircraft is not less than a preset distance threshold.
6. The method of claim 1, wherein after the aircraft generates the first trajectory from the flight status data collected at the plurality of flight moments, further comprising:
the aircraft determines flight state data of each control moment in the flight process according to the first track, wherein the flight state data comprises at least one of position information, speed information and acceleration information;
the aircraft adjusts its state at each of the control times to the state indicated by the flight state data at each of the control times.
7. The method of claim 1, further comprising:
the aircraft shoots a second image in the process of flying according to the first track;
the aircraft comparing the second image to the first image to determine an offset;
and the aircraft corrects the first track according to the offset for the aircraft to fly continuously.
8. The method of claim 1, wherein the first trajectory is substantially the same as a trajectory of the aircraft flying at the plurality of moments in flight.
9. The method of claim 1, wherein the first image is associated with the location information.
10. The method according to claim 1 or 9, wherein the location information is determined based on at least one of GPS technology, view location technology and inertial sensor location technology.
11. An aircraft, comprising a processor and a memory, the memory for storing program instructions, the processor for invoking the program instructions to perform the operations of:
shooting first images at a plurality of flight moments and collecting flight state data, wherein the flight state data comprises at least one of position information, speed information and acceleration information, and the flight track of the aircraft at the plurality of flight moments is determined based on the detected batting operation for the aircraft;
generating a first track according to the flight state data acquired at the flight moments, wherein the smoothness degree of the first track is higher than that of the tracks of the aircraft flying at the flight moments;
and controlling the aircraft to fly according to the generated first track.
12. The aircraft of claim 11, wherein the processor, prior to capturing the first image and acquiring the flight status data at the plurality of flight moments, is further configured to:
and determining the plurality of flight moments according to at least one of the flight speed, the stick-hitting operation and a preset distance threshold value in the flying process of the aircraft.
13. The aircraft of claim 12, wherein the processor determines the plurality of flight moments during flight of the aircraft based on at least one of a flight speed, a stick maneuver, and a preset distance threshold, in particular:
and taking the moment when the lever-hitting operation aiming at the aircraft is detected every time as the flight moment in the flight process of the aircraft.
14. The aircraft of claim 12, wherein the speed of flight of the aircraft at each of the moments of flight is not below a preset speed threshold.
15. The aircraft of claim 12, wherein a distance between any two temporally adjacent moments of flight of the aircraft is not less than a preset distance threshold.
16. The aircraft of claim 11, wherein the processor, after generating the first trajectory from the flight status data acquired at the plurality of flight instants, is further configured to:
determining flight information of each control moment in the flight process according to the first track, wherein the flight state data comprises at least one of position information, speed information and acceleration information;
adjusting the state of the aircraft at the each control time to the state indicated by the flight state data at the each control time.
17. The aircraft of claim 11, wherein the processor is further configured to:
taking a second image during flight according to said first trajectory;
comparing the second image to the first image to determine an offset;
and correcting the first track according to the offset for the aircraft to fly continuously.
18. The aircraft of claim 11 wherein the first trajectory is substantially the same as a trajectory of the aircraft flying at the plurality of moments in flight.
19. The aircraft of claim 11 wherein the first image is associated with the location information.
20. The aircraft of claim 11 or 19 wherein the location information is determined based on at least one of GPS technology, perspective location technology and inertial sensor location technology.
CN202210230672.6A 2017-12-26 2017-12-26 Flight trajectory original path rehearsal method and aircraft Pending CN114564036A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210230672.6A CN114564036A (en) 2017-12-26 2017-12-26 Flight trajectory original path rehearsal method and aircraft

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/CN2017/118755 WO2019127052A1 (en) 2017-12-26 2017-12-26 Method of repeating flight path and aerial vehicle
CN202210230672.6A CN114564036A (en) 2017-12-26 2017-12-26 Flight trajectory original path rehearsal method and aircraft
CN201780023180.7A CN109074095B (en) 2017-12-26 2017-12-26 Flight trajectory original path rehearsal method and aircraft

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201780023180.7A Division CN109074095B (en) 2017-12-26 2017-12-26 Flight trajectory original path rehearsal method and aircraft

Publications (1)

Publication Number Publication Date
CN114564036A true CN114564036A (en) 2022-05-31

Family

ID=64812408

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202210230672.6A Pending CN114564036A (en) 2017-12-26 2017-12-26 Flight trajectory original path rehearsal method and aircraft
CN201780023180.7A Active CN109074095B (en) 2017-12-26 2017-12-26 Flight trajectory original path rehearsal method and aircraft

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201780023180.7A Active CN109074095B (en) 2017-12-26 2017-12-26 Flight trajectory original path rehearsal method and aircraft

Country Status (2)

Country Link
CN (2) CN114564036A (en)
WO (1) WO2019127052A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116227195A (en) * 2023-03-02 2023-06-06 北京国星创图科技有限公司 Method for correcting real-time state of simulation space environment

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625022A (en) * 2019-02-27 2020-09-04 上海博泰悦臻网络技术服务有限公司 Control method, system, medium and server capable of controlling unmanned aerial vehicle to follow vehicle
CN111699453A (en) * 2019-07-01 2020-09-22 深圳市大疆创新科技有限公司 Control method, device and equipment of movable platform and storage medium
CN112585956B (en) * 2019-11-29 2023-05-19 深圳市大疆创新科技有限公司 Track replay method, system, movable platform and storage medium
CN111290436B (en) * 2020-03-16 2023-04-07 北京机电工程研究所 Aircraft wireless instruction correction method and system
CN111986522B (en) * 2020-07-29 2022-03-22 广州市新航科技有限公司 Airborne equipment positioning method based on ADS-B signal, airborne equipment and storage medium thereof
CN114063496A (en) * 2021-11-02 2022-02-18 广州昂宝电子有限公司 Unmanned aerial vehicle control method and system and remote controller for remotely controlling unmanned aerial vehicle

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2322354B (en) * 1997-02-25 2000-05-10 Fki Engineering Plc Robot for operating motor vehicle control
JP2002144263A (en) * 2000-11-09 2002-05-21 Nippon Telegr & Teleph Corp <Ntt> Motion teaching and playback device of robot, its method and recording medium recording motion teaching and playback program of robot
CN103375662A (en) * 2012-04-28 2013-10-30 刘建新 Three-dimensional suspension movement control suspension system for high-altitude shooting and movably shooting method thereof
US9266611B2 (en) * 2013-06-20 2016-02-23 University Of Florida Research Foundation, Inc. Flight path development for remote sensing vehicles in a moving reference frame
CN103345826B (en) * 2013-07-05 2017-07-18 深圳市大疆创新科技有限公司 Remote terminal, flight assisting system and the method for unmanned vehicle
CN103941748B (en) * 2014-04-29 2016-05-25 百度在线网络技术(北京)有限公司 Autonomous navigation method and system and Map building method and system
CN104035446B (en) * 2014-05-30 2017-08-25 深圳市大疆创新科技有限公司 The course generation method and system of unmanned plane
FR3023016B1 (en) * 2014-06-30 2016-07-01 Airbus Helicopters SYSTEM AND METHOD FOR FLIGHT CONTROL IN TRAJECTORY FOR A ROTARY WING AIRCRAFT
CN104898855B (en) * 2015-06-05 2017-12-19 上海交通大学 Based on text input system and method with rocking bar equipment
CN106325305B (en) * 2015-06-29 2020-03-20 优利科技有限公司 Camera for ground positioning or navigation, aircraft and navigation method and system thereof
CN205091959U (en) * 2015-10-21 2016-03-16 岳西县恒意机械有限公司 Unmanned aerial vehicle operation panel
CN105511488B (en) * 2015-12-03 2018-05-04 北京奇虎科技有限公司 A kind of continuous shooting method and unmanned vehicle based on unmanned vehicle
CN114995594A (en) * 2016-03-31 2022-09-02 奇跃公司 Interaction with 3D virtual objects using gestures and multi-DOF controllers
CN105955291B (en) * 2016-04-29 2021-04-27 深圳市哈博森科技有限公司 Unmanned aerial vehicle flight route track recording and automatic flight control mode
CN106020234B (en) * 2016-07-26 2020-09-08 北京奇虎科技有限公司 Unmanned aerial vehicle flight control method, device and equipment
CN106595634A (en) * 2016-11-30 2017-04-26 深圳市有光图像科技有限公司 Method for recognizing mobile robot by comparing images and mobile robot
CN110119154A (en) * 2016-11-30 2019-08-13 深圳市大疆创新科技有限公司 Control method, device and the equipment and aircraft of aircraft
CN106774398A (en) * 2016-12-20 2017-05-31 北京小米移动软件有限公司 Take photo by plane method and device, unmanned plane
CN106705963A (en) * 2016-12-28 2017-05-24 北京兆易创新科技股份有限公司 Method and device for automatic course reversal control
CN206451423U (en) * 2017-01-20 2017-08-29 甘肃工业职业技术学院 A kind of unmanned plane aerophotogrammetry teaching simulating device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116227195A (en) * 2023-03-02 2023-06-06 北京国星创图科技有限公司 Method for correcting real-time state of simulation space environment
CN116227195B (en) * 2023-03-02 2023-11-03 北京国星创图科技有限公司 Method for correcting real-time state of simulation space environment

Also Published As

Publication number Publication date
CN109074095A (en) 2018-12-21
WO2019127052A1 (en) 2019-07-04
CN109074095B (en) 2022-04-01

Similar Documents

Publication Publication Date Title
CN109074095B (en) Flight trajectory original path rehearsal method and aircraft
US10901435B2 (en) Heading generation method and system of unmanned aerial vehicle
US9563200B2 (en) Method for piloting a rotary wing drone for taking an exposure through an onboard camera with minimization of the disturbing movements
CN105242685B (en) A kind of accompanying flying unmanned plane system and method
CN104769496B (en) Flight video camera with the rope component for positioning and interacting
CN109071034A (en) Switch method, controller and the image stability augmentation equipment of holder operating mode
WO2018053877A1 (en) Control method, control device, and delivery system
WO2018098704A1 (en) Control method, apparatus, and system, unmanned aerial vehicle, and mobile platform
WO2018073879A1 (en) Flight route generation method, flight route generation system, flight vehicle, program, and recording medium
CN110268704B (en) Video processing method, device, unmanned aerial vehicle and system
CN106973221B (en) Unmanned aerial vehicle camera shooting method and system based on aesthetic evaluation
US20180024557A1 (en) Autonomous system for taking moving images, comprising a drone and a ground station, and associated method
JP6817422B2 (en) Information processing device, aerial photography route generation method, aerial photography route generation system, program, and recording medium
CN110651466A (en) Shooting control method and device for movable platform
WO2019051640A1 (en) Control method for pan-tilt, controller, and pan-tilt
WO2019227289A1 (en) Time-lapse photography control method and device
US20180048828A1 (en) Method for capturing image(s), related computer program and electronic system for capturing a video
CN113875222B (en) Shooting control method and device, unmanned aerial vehicle and computer readable storage medium
WO2023036260A1 (en) Image acquisition method and apparatus, and aerial vehicle and storage medium
CN110337668B (en) Image stability augmentation method and device
CN110278717B (en) Method and device for controlling the flight of an aircraft
US20170369165A1 (en) Moving device, method of controlling moving device and storage medium
CN111699453A (en) Control method, device and equipment of movable platform and storage medium
Ross et al. Stochastic real-time optimal control for bearing-only trajectory planning
WO2021128184A1 (en) Control method and control apparatus for movable carrier, and computer-readable storage medium

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