# Stable High-Speed Quadrotor Flight using Differential Trajectory

Authors: Ying Wu; Yun Xie; Sen Li; Depei Wang
Journal: Mathematical Problems in Engineering
 (2021)

---

## Abstract

This paper addresses the trajectory tracking control issue of a quadrotor with environmental disturbances, which particularly focuses on attitude correction during flight and response speed improvement. In this paper, the proposed control method uses the differential equation to transform the desired trajectory for improving the robustness of a quadrotor during high-speed flight. Meanwhile, a nonlinear controller based on the rotation matrix is designed to avoid singularities of Euler angles. The controller can also stabilize the position error to zero without reducing the control thrust when the attitude error is large. Finally, we conduct simulations on a tethered quadrotor to achieve high-speed flight in limited space. The simulation results show that the control method can stabilize a quadrotor at high-speed trajectory flight and keep a quadrotor stable when it is disturbed by aerodynamic drag and mass change.


---

## Body

## 1. Introduction

Vertical-Take-Off and Landing Unmanned Aerial Vehicles (VTOL UAVs) have been widely used in scientific research and industry due to their simple mechanical structure. In recent years, the application of UAVs in inspection and transportation, which needs high robustness of the trajectory track control, has attracted a lot of research interests [1–3]. Existing studies are mainly about the robustness of UAVs during low-speed flight. However, transportation and inspection require high flexibility of UAVs to adapt to the complex environment [4, 5]. Meanwhile, the flight velocity of UAVs must not be too low (higher than 8 m/s) and UAVs need to maintain stable flight with the disturbance of environmental factors such as aerodynamic drag and mass change [6]. Thus, the robustness of UAVs during high-speed flight plays a crucial role in practical applications.This paper selects a quadrotor as the research object for the reason that the quadrotor UAVs have a simple structure, universal algorithm, and high mobility. The major environmental factors on the flight of UAVs are aerodynamic drag and mass change. There are many studies on the trajectory tracking control of UAVs when facing instantaneous changes in environmental factors during transportation and inspection [7–9]. The difficulty of the high-speed stable trajectory control is the rapid correction of the attitude and the improvement of the response speed. Trajectory tracking controllers are often divided into attitude control and position control, which include linear controllers such as linear-quadratic regulator (LQR) [10, 11] and nonlinear controllers such as sliding-mode technique [12], backstepping technique [13], and fuzzy-PID controller [14].Most studies of attitude control are conducted using Euler angles to represent the attitude of a quadrotor. Reference [15] designs a nonlinear robust control strategy with Lyapunov stability proofs for attitude control of the UAV, which is based on the Euler angles representation. Though the Euler angles representation has the advantages of simplicity and intuition, it also has the drawbacks of singularities. What is more, [11] designs the LQR controller by linearizing the quadrotor model which is expressed through Euler angles, but the linearized model also has the disadvantage of not being accurate enough when the attitude movement is large. Thus, the rotation matrix and quaternion have been applied to the design of attitude control to solve the singularity problem of Euler angles. In [16], quaternion to control attitude is first implemented on the Draganflyer III quadrotor, which shows that the PD controller is globally asymptotically by the Lyapunov analysis. Besides, [17] designs and verifies various classical controllers using quaternion, such as PD controller, LQR, and backstepping technique, while [18] proposes a hierarchical control method combining the backstepping technique and H∞ theory for a nonlinear model based on quaternion, which proves to be effective. Rotation matrix representation is used for attitude control of UAVs trajectory tracking in [19]. And [20] provides a novel rotation matrix based control method, which is shown to be exponentially stable by defining an error function for attitude and angular velocity on SE (3). As an extension of [20], a cascaded PID attitude controller for trajectory tracking control is designed by analysing the nonlinear model of quadrotor in [21]. Yu et al. [21] define the logarithmic operation to transform rotation matrix from SO (3) to so (3) through Li Group and Li Algebra theory, which can solve the problem that rotation matrix is with too many parameters. This control method can achieve a fast response of quadrotor attitude control. Although both rotation matrix and quaternion to attitude control can perform complex trajectory tracking tasks, the quaternion is overly complex to compute. To the authors’ best knowledge, no research uses a rotation matrix based controller to deals with high-speed trajectory tracking issue.Improving the response speed of the position control system is another significant issue for quadrotor high-speed trajectory tracking. Since a quadrotor is an underactuated system, there is no way for the quadrotor to completely track the desired trajectory (including position and attitude). Attitude control and position control affect each other. To attenuate this association, [22] designs an image-based visual servo controller for the pinpoint landing task with a small-scale attitude change. In [23], a passification-based adaptive controller is presented for stabilization in altitude. But simple flight strategies with small attitude movements also limit the application of quadrotors in complex environments. A control algorithm proposed in [20] reduces control thrust when attitude error becomes larger. This method can address the problem of application being limited, while quadrotors are also slower to recover from disturbances. So, it is not available for high-speed trajectory tracking control. Actually, [24] develops a trajectory tracking controller for thrust-vectoring UAVs, which can change the direction of control thrust to achieve partial decoupling of position and attitude. But the structure of thrust-vectoring UAVs is too complex to be widely applied.In this paper, we propose a control method based on the differential trajectory to improve the response speed of quadrotor trajectory tracking control. Inspired by [25], we achieve the high-speed flight of a quadrotor in a limited space with the help of tether, but the dynamics model of [25] is too complex and the LQR controller of [25] requires a high-accuracy model for high-speed trajectory tracking. Therefore, we perform a differential operation on the desired trajectory so that the desired velocity at each point in the inertial frame converges toward the desired trajectory. Our position controller uses the desired velocity of the differential trajectory as a feedforward term to design the position control algorithm, which can follow the desired trajectory without reducing control thrust when the attitude deviates from the desired attitude. To address the disadvantage of the rotation matrix with too many parameters, this paper presents the adaptive nonlinear attitude control law combining the rotation matrix and the Rodrigues’ formula. This control method not only avoids the singularities of Euler angles but also has only three variables of attitude. The stability of this control system can be demonstrated by Lyapunov’s second method of stability. Finally, the simulation results show that the control method has good robustness in high-speed flight and low-speed flight.The novelty of our work compared with existing research is as follows:(1)
A control method for quadrotor based on the differential trajectory is proposed, which can guarantee the convergence of the position error without reducing the control thrust when the attitude greatly deviates from the desired attitude.(2)
The design of the controller takes into account the existence of environmental factors, demonstrating that the nonlinear control strategy combining differential trajectory and rotation matrix can improve the robustness of the quadrotor for high-speed flight.This paper is structured as follows. The nonlinear model of the quadrotor is developed in Section2. The detail about the proposed controller is described in Section 3. Finally, the simulation results are discussed in Section 4.


## 2. System Model

This section introduces the dynamic model of a quadrotor, the tether model, and the aerodynamic drag model. A quadrotor is a VTOL UAV driven by four motors and propellers. As shown in Figure1, the structure of the quadrotor used in this paper is “+” shape. We assume that the center of mass and the origin of the body frame are at the same point. The directions of the inertial frame and the body frame are shown in Figure 1.Figure 1
Quadrotor model. (a) Quadrotor structure. (b) Coordinate axis relationship.
(a)(b)The state of our quadrotor system can be represented by the position, velocity, attitude, and angular velocity. The control input for the system is the total thrust and the moment generated by propellers. In this paper, the rotation matrix is used to represent the attitude of the quadrotor. So we define:m∈ℜ, the mass of quadrotor.J∈ℜ3×3, the inertial matrix in the body frame.R∈ℜ3×3, the rotation matrix from the body frame to the inertial frame.ω∈ℜ3, the angular velocity in the body frame.x∈ℜ3, the position of the body frame in the inertial frame.v∈ℜ3, the velocity of the body frame in the inertial frame.f∈ℜ, the total thrust generated by four propellers.τ∈ℜ3, the moment generated by propellers in the body frame.g∈ℜ, the acceleration of gravity.ωi∈ℜ, the rotational speed of the i -th motor.d∈ℜ, the arm’s length of the quadrotor.The quadrotor dynamic model is as(1)x˙=v,R˙=Rω^,mv˙=mge3−fRe3+fa+Ft,Jω˙+ω×Jω=τ,where e3=001T is a unit vector and the definition of ∧ operation is as follows:Defineω=ω1ω2ω3T; then,(2)ω^=0−ω3ω2ω10−ω1−ω2ω10,where the inverse of ∧ operation is ∨: ω^∨=ω.Assuming the origin of the body frame and the origin of the inertial frame coincide, the coordinate of the pointq in the body frame is qb and the coordinate of the point q in the inertial frame is qe; the rotation matrix from the body frame to the inertial frame satisfies(3)qe=Rebqb,Reb=xebyebzeb.The rotation matrixReb is a 3×3 orthogonal matrix, where xeb, yeb, and zeb, respectively, represent the x-axis, y-axis, and z-axis direction of the body frame in the inertial frame.Generally, only the force generated by the propeller and gravity are taken into account when analysing the dynamic model of a quadrotor, but a quadrotor is also affected by aerodynamic drag during flight. Therefore, this paper also considers aerodynamic drag to verify the robustness of the control method. The model of aerodynamic drag selected from [25] is as follows:(4)fa=−μ1v+μ2v2ev=faev,where ev is the direction of the velocity in the inertial frame.We use a tether to conduct the performance evaluation of the controller in high-speed flight [25]. The tether provides the centripetal force for the quadrotor to follow a circle trajectory in a limited space. So, it is also necessary to consider the force generated by the tether. It is assumed that the suspension point of the tether at this quadrotor coincides with the center of mass and the tether is no-elastic, tensioned, and massless. From the law of centripetal force and Newton's second law, the dynamic model of tether force is(5)Ft=ftpt,in which ft is the magnitude of the tether force, pt is the direction of the tether force, and lt=|x| is the length of the tether:(6)pt=−xx,ft=m|v|2x−mge3⋅pt−fRe3⋅pt.Finally, the thrust and moments model of our quadrotor is given. The input is the rotational speed of the four motors, and the output is the total thrust and the moment of the quadrotor:(7)fτxτyτz=cTcTcTcT0−dcT0dcTdcT0−dcT0cM−cMcM−cMω12ω22ω32ω42,where cT and cM is constant.


## 3. Flight Trajectory Control Design

This section shows the design of the controller that allows a quadrotor to track the desired trajectory steadily with disturbance at high speed. The trajectory controller is divided into three parts including trajectory differentiation, attitude control, and position control in this paper. There are the hypotheses for the controller that (a) the measurements of the position, velocity, attitude, and angular velocity can be obtained by the sensor at a sufficiently high frequency, and (b) the error of the measurements is small enough to be neglected. The structure diagram of the controller is shown in Figure2.Figure 2
Trajectory tracking controller structure.The input of the controller is the desired trajectory, including the desired positionxd and the x-axis direction of the body frame b1d. The output is the total thrust and the moment of this quadrotor. Then, the thrust and the moments can be converted into the rotational speed of the four motors by the control allocation, which is the inverse operation of the thrust and moments model. The control allocation is as follows:(8)ω12ω22ω32ω42=cTcTcTcT0−dcT0dcTdcT0−dcT0cM−cMcM−cM−1fτxτyτz.


### 3.1. Trajectory Differentiation

Since our goal is to improve the robustness of a quadrotor, this section starts by introducing the design of the trajectory differentiation which guarantees the convergence of the desired velocity towards the desired trajectory. The input of the trajectory differentiation is the desired trajectory of the quadrotor and the output is the desired velocity in the inertial frame. For a certain point, the desired velocity of that point output by the trajectory differentiation converges to the desired trajectory so that the position controller only needs to get a quadrotor flown stably to the desired velocity. Therefore, the design of the position controller is simplified and the performance of the position control is improved. The structure of the trajectory differential is shown in Figure3.Figure 3
Trajectory differentiation.First, the desired position trajectory is given asxdt,t∈a,b. The control period of the quadrotor is defined as dt. For a certain point x in the inertial frame, find the point xdt1 closest to this point x in the desired trajectory. Thus, the desired velocity at this point x is as follows:(9)v1=x−xdt1dt+x˙dt1,t1≠bx−xdt1dt,t1=b.Through the trajectory differentiation, the desired velocity of every point in the inertial frame can be obtained, and the desired velocity converges toward the desired trajectory. This can keep a quadrotor stable in the face of disturbance and accomplishes a quadrotor to fly stably at high speed. It also does not need to reduce control thrust to prevent the divergence of position error when the attitude error is large which means the response speed and the recovery speed after the disturbance will be faster.


### 3.2. Attitude Control Design

Attitude control is a very important part of trajectory tracking control. Most attitude control methods are designed based on Euler angles because it is simple to express the attitude of a quadrotor with Euler angles. What is more, when the attitude change is small, the change rate of Euler angles is approximately equal to the angular velocity of a quadrotor, which simplifies the control model of a quadrotor [10–13]. But this Euler angles representation also exhibits singularities and is not intuitive. Therefore, this paper represents the attitude of a quadrotor by a rotation matrix.Since each column vector of the rotation matrix indicates the direction of the body framexyz axis in the inertial frame, it is more intuitive to express the attitude compared to Euler angles and quaternion. And the attitude trajectory of the quadrotor is smooth. Although the rotation matrix has nine parameters, a rotation matrix is orthogonal with only three degrees of freedom. Therefore, the rotation matrix can be represented with three variables through Rodrigues’ formula to solve the problem of too many parameters.Firstly, the desired attitude rotation matrix is selected as(10)Rd=b'1db2db3d,b2d=b3d×b1d,b'1d=b2d×b3d,where b3d represents the desired z-axis direction of the body frame output by the position controller and b1d is the desired orientation of the quadrotor head:(11)b1d=cosψdsinψd0.As the main goal of the attitude control is the convergence of the attitude error, we selected the error rotation matrix as(12)Re=Rc−1Rd=eω^θ,where Rc is the rotation matrix of the current quadrotor attitude.The error rotation matrix can be converted into a unit rotation axisω∈ℜ3 and a rotation angle θ∈0，2π using the Rodrigues’ formula. Because this transformation is a one-to-one correspondence, the singularities of Euler angles is avoided. The Rodrigues’ formula is as follows:(13)R=eω^θ=I+ω^sinθ+ω^21−cosθ.Thus, the error rotation matrix is converted into a vectoreR∈ℜ3 using equation (12) and ∨ operation as(14)eR=logRe∨=ωθ.Then, the angular velocity error of the quadrotor is defined as(15)eω=ωd−ω.Therefore, the output of the attitude controller is selected as [21](16)τ=Jω˙d+ω×Jω,in which ω˙d=kωeω, ωd=kReR, and kω,kR∈ℜ are positive constant.Finally, considering equations (14) and (15), the output of the quadrotor attitude controller is(17)τ=JkωkRlogRc−1Rd∨−ω+ω×Jω.The stability of the attitude control method can be proved by Lyapunov’s second method of stability. The Lyapunov function is chosen as(18)V1=−c18trlog2R12−18trω^Jω^.It is shown in [21] that the attitude control system is stable.


### 3.3. Position Control Design

The design of the position controller aims to guarantee the convergence of the position error. Since the quadrotor is an underactuated system, the position control is affected by the attitude control. When the attitude error is large, the position error is easy to diverge. Therefore, [20] proposes the control strategy that reduces the control thrust of the quadrotor when there is a large attitude error. Although this can prevent the position error from diverging, the error convergence speed also decreases. However, the position error of our control system can be stably converged to zero without reducing control thrust even if the attitude deviates from the desired trajectory. That is because the desired velocity output by the trajectory differentiation converges toward the desired trajectory.The position error and the velocity error of the system are defined as(19)ex=xd−x,ev=vd−v,where x is the current position of the quadrotor, v is the current velocity of the quadrotor, xd is the current desired position, and vd is the desired velocity of the current position.Therefore, the quadrotor position controller outputs the desired total thrustfd and the desired z-axis direction of the body frame b3d as(20)fd=‖mge3−ad‖,b3d=−mge3−ad‖mge3−ad‖,where the desired acceleration of the quadrotor is ad=kvev (kv∈ℜ) and kv is constant.We can prove the stability of the position controller by selecting the Lyapunov function as(21)V2=mevTev.Then, the derivative of this function is(22)V˙2=2mevTe˙v,where me˙v is(23)me˙v=mv˙d−mv˙=mv˙d−mge3−fRe3+fa.Assuming that the attitude error of the quadrotor is zero, we can get(24)me˙v=mv˙d−mge3−mge3−ad+fa=mv˙d−mge3−mge3−kvev+fa=mv˙d−mkvev+fa.Then, considering equations (22) and (24), V˙2 is(25)V˙2=2mevTe˙v=2evTme˙v=2evTmv˙d−mkvev+fa˙=2−mkvevTev+evTmv˙d−fa≤−2mkv∥ev2∥+2mv˙d−faev.This means that when∥ev∥≥∥mv˙d−fa∥/mkv, then V˙2≤0 and ∥ev∥ decreases. Therefore, the position controller can control the velocity error within a finite range:(26)ev≤maxmv˙d−famkv,∥ev0∥.Thus, by choosing a larger gainkv, the position error can converge to zero. The control thrust and the desired z-axis direction of the body frame not only improve the robustness of a quadrotor when it is disturbed but also stabilize a quadrotor to accelerate to the desired velocity during high-speed flight.


## 3.1. Trajectory Differentiation

Since our goal is to improve the robustness of a quadrotor, this section starts by introducing the design of the trajectory differentiation which guarantees the convergence of the desired velocity towards the desired trajectory. The input of the trajectory differentiation is the desired trajectory of the quadrotor and the output is the desired velocity in the inertial frame. For a certain point, the desired velocity of that point output by the trajectory differentiation converges to the desired trajectory so that the position controller only needs to get a quadrotor flown stably to the desired velocity. Therefore, the design of the position controller is simplified and the performance of the position control is improved. The structure of the trajectory differential is shown in Figure3.Figure 3
Trajectory differentiation.First, the desired position trajectory is given asxdt,t∈a,b. The control period of the quadrotor is defined as dt. For a certain point x in the inertial frame, find the point xdt1 closest to this point x in the desired trajectory. Thus, the desired velocity at this point x is as follows:(9)v1=x−xdt1dt+x˙dt1,t1≠bx−xdt1dt,t1=b.Through the trajectory differentiation, the desired velocity of every point in the inertial frame can be obtained, and the desired velocity converges toward the desired trajectory. This can keep a quadrotor stable in the face of disturbance and accomplishes a quadrotor to fly stably at high speed. It also does not need to reduce control thrust to prevent the divergence of position error when the attitude error is large which means the response speed and the recovery speed after the disturbance will be faster.


## 3.2. Attitude Control Design

Attitude control is a very important part of trajectory tracking control. Most attitude control methods are designed based on Euler angles because it is simple to express the attitude of a quadrotor with Euler angles. What is more, when the attitude change is small, the change rate of Euler angles is approximately equal to the angular velocity of a quadrotor, which simplifies the control model of a quadrotor [10–13]. But this Euler angles representation also exhibits singularities and is not intuitive. Therefore, this paper represents the attitude of a quadrotor by a rotation matrix.Since each column vector of the rotation matrix indicates the direction of the body framexyz axis in the inertial frame, it is more intuitive to express the attitude compared to Euler angles and quaternion. And the attitude trajectory of the quadrotor is smooth. Although the rotation matrix has nine parameters, a rotation matrix is orthogonal with only three degrees of freedom. Therefore, the rotation matrix can be represented with three variables through Rodrigues’ formula to solve the problem of too many parameters.Firstly, the desired attitude rotation matrix is selected as(10)Rd=b'1db2db3d,b2d=b3d×b1d,b'1d=b2d×b3d,where b3d represents the desired z-axis direction of the body frame output by the position controller and b1d is the desired orientation of the quadrotor head:(11)b1d=cosψdsinψd0.As the main goal of the attitude control is the convergence of the attitude error, we selected the error rotation matrix as(12)Re=Rc−1Rd=eω^θ,where Rc is the rotation matrix of the current quadrotor attitude.The error rotation matrix can be converted into a unit rotation axisω∈ℜ3 and a rotation angle θ∈0，2π using the Rodrigues’ formula. Because this transformation is a one-to-one correspondence, the singularities of Euler angles is avoided. The Rodrigues’ formula is as follows:(13)R=eω^θ=I+ω^sinθ+ω^21−cosθ.Thus, the error rotation matrix is converted into a vectoreR∈ℜ3 using equation (12) and ∨ operation as(14)eR=logRe∨=ωθ.Then, the angular velocity error of the quadrotor is defined as(15)eω=ωd−ω.Therefore, the output of the attitude controller is selected as [21](16)τ=Jω˙d+ω×Jω,in which ω˙d=kωeω, ωd=kReR, and kω,kR∈ℜ are positive constant.Finally, considering equations (14) and (15), the output of the quadrotor attitude controller is(17)τ=JkωkRlogRc−1Rd∨−ω+ω×Jω.The stability of the attitude control method can be proved by Lyapunov’s second method of stability. The Lyapunov function is chosen as(18)V1=−c18trlog2R12−18trω^Jω^.It is shown in [21] that the attitude control system is stable.


## 3.3. Position Control Design

The design of the position controller aims to guarantee the convergence of the position error. Since the quadrotor is an underactuated system, the position control is affected by the attitude control. When the attitude error is large, the position error is easy to diverge. Therefore, [20] proposes the control strategy that reduces the control thrust of the quadrotor when there is a large attitude error. Although this can prevent the position error from diverging, the error convergence speed also decreases. However, the position error of our control system can be stably converged to zero without reducing control thrust even if the attitude deviates from the desired trajectory. That is because the desired velocity output by the trajectory differentiation converges toward the desired trajectory.The position error and the velocity error of the system are defined as(19)ex=xd−x,ev=vd−v,where x is the current position of the quadrotor, v is the current velocity of the quadrotor, xd is the current desired position, and vd is the desired velocity of the current position.Therefore, the quadrotor position controller outputs the desired total thrustfd and the desired z-axis direction of the body frame b3d as(20)fd=‖mge3−ad‖,b3d=−mge3−ad‖mge3−ad‖,where the desired acceleration of the quadrotor is ad=kvev (kv∈ℜ) and kv is constant.We can prove the stability of the position controller by selecting the Lyapunov function as(21)V2=mevTev.Then, the derivative of this function is(22)V˙2=2mevTe˙v,where me˙v is(23)me˙v=mv˙d−mv˙=mv˙d−mge3−fRe3+fa.Assuming that the attitude error of the quadrotor is zero, we can get(24)me˙v=mv˙d−mge3−mge3−ad+fa=mv˙d−mge3−mge3−kvev+fa=mv˙d−mkvev+fa.Then, considering equations (22) and (24), V˙2 is(25)V˙2=2mevTe˙v=2evTme˙v=2evTmv˙d−mkvev+fa˙=2−mkvevTev+evTmv˙d−fa≤−2mkv∥ev2∥+2mv˙d−faev.This means that when∥ev∥≥∥mv˙d−fa∥/mkv, then V˙2≤0 and ∥ev∥ decreases. Therefore, the position controller can control the velocity error within a finite range:(26)ev≤maxmv˙d−famkv,∥ev0∥.Thus, by choosing a larger gainkv, the position error can converge to zero. The control thrust and the desired z-axis direction of the body frame not only improve the robustness of a quadrotor when it is disturbed but also stabilize a quadrotor to accelerate to the desired velocity during high-speed flight.


## 4. Simulation Results and Analysis

We verify the robustness of the controller proposed in the previous section. The parameters of the quadrotor are(27)m=4kg,d=0.3150m,lt=2m,cT=1.3234×10−5,cM=1.0697×10−7,J=0.08200000.08200000.1490kgm2.Then, the controller parameters are as follows:(28)kR=11,kω=4.8,kv=1.5.The simulation is conducted in the following three cases.The first case is the low-speed flight in which we perform the performance evaluation of the trajectory tracking controller proposed in this paper, the PID controller, and the geometric tracking controller proposed in [20]. The desired trajectory and the initial conditions are as follows:(29)xdt=2cosπ4t2sinπ4t0T,b1d=100T,x0=200Tv0=000T,R0=100010001ω0=000T.The second case is the high-speed flight. We verify the robustness of our control method at high speed under three conditions: (a) disturbance-free condition, (b) aerodynamic drag disturbance, and (c) mass change condition. The desired trajectory and the initial conditions are as follows:(30)xdt=2cos5.25t2sin5.25t0T,b1d=100T,x0=200Tv0=000T,R0=100010001ω0=000T.The parameters of aerodynamic drag are selected as(31)μ1=0.172,μ2=0.0025.Using the method of [20], the simulation of the last case verifies the performance of our trajectory tracking controller and the geometric tracking controller proposed in [20] from being upside down initial attitude. The desired trajectory and the initial conditions are as follows:(32)xdt=000T,b1d=100T,x0=000Tv0=000T,R0=1000−0.9995−0.031400.0314−0.9995ω0=000T.The simulation results of the first case are shown in Figures4–6. In Figure 4, the attitude error of our trajectory controller and the geometry tracking controller rapidly reduces to (0,0.05) rad within 1 s and converge to 0 rad within 2 s. During convergence, the attitude error response curve of our controller is smoother with only a small oscillation compared to the geometry tracking controller. The attitude error response of the PID controller has an oscillation of decreasing amplitude in 0∼4 s and finally remains stable at (0.01,0.02) rad. In Figure 5, the z-axis position of the trajectory tracking controller can converge to 0 m within 2 s. It shows a faster response than the other two controllers. But the position response of our controller has a little delay relative to the desired trajectory, and this is because the desired velocity of the differential trajectory is determined by the current position of the quadrotor rather than the current time. Although this property of differential trajectory causes a small delay in the position response, it can also be prevented from the divergence of position error when the position error is large during the high-speed flight. And the position response latency of the trajectory tracking controller is less than 1 s, which is smaller than that of the PID controller. In Figure 6, the linear velocity of our controller can stabilize at the desired linear velocity. This indicates our trajectory tracking controller can converge to the desired trajectory within 3 s. Compared to our controller, the linear velocity of the PID controller has a slower response and larger steady-state error, and still it oscillates when stable, while geometric tracking control also has larger oscillation and longer adjustment time. Thus, our control algorithm performs much better than the other two controllers in both position and attitude control.Figure 4
Attitude error of low-speed flight. (a) Trajectory tracking control. (b) PID control. (c) Geometric tracking control.
(a)(b)(c)Figure 5
Position of low-speed flight (x(solid) xd(dotted)). (a) Trajectory tracking control. (b) PID control. (c) Geometric tracking control.
(a)(b)(c)Figure 6
Velocity|v| and acceleration dv/dt of low-speed flight (a) trajectory tracking control. (b) PID control. (c) Geometric tracking control.
(a)(b)(c)The simulation results of the second case are illustrated in Figures7–9. In Figure 7, the trajectory tracking controller can achieve that the quadrotor steadily accelerates to the desired velocity of 10.5 m/s. And the position error of the z-axis is stabilized at 0 m in 4 s. Moreover, the attitude error can also quickly reduce to (0,0.1) rad in 1 s and converge to 0 in 8 s. In Figure 8, the linear velocity is stabilized in the range of (7,8) m/s and aerodynamic drag causes periodic oscillations of attitude error whose amplitude is also kept within (0,0.1). Although the aerodynamic drag reduces the velocity of the quadrotor, the trajectory tracking controller still follows the desired path. In Figure 9, the z-axis position error increases when we increase the mass of the quadrotor to 6 kg at 5 s. But the position error is eventually stabilized at (0,0.2) m. The mass change has almost no effect on the attitude and velocity response. Therefore, the controller proposed in this paper can effectively improve the robustness of the quadrotor in high-speed flight.Figure 7
High-speed flight without disturbance. (a) Position (x(solid) xd(dotted)). (b) Velocity |v| and acceleration d∥v∥/dt. (c) Attitude error.
(a)(b)(c)Figure 8
High-speed flight with aerodynamic drag. (a) Position (x(solid) xd(dotted)). (b) Velocity |v| and acceleration d∥v∥/dt. (c) Attitude error.
(a)(b)(c)Figure 9
High-speed flight with mass change. (a) Position (x(solid) xd(dotted)). (b) Velocity |v| and acceleration d∥v∥/dt. (c) Attitude error.
(a)(b)(c)The simulation results for the third case are presented in Figures10 and 11. In Figure 10, both the attitude error and position error can converge rapidly to 0 in 2 s, and the maximum overshoot of the position error is below 0.08 m. In Figure 11, the attitude error of the geometric track controller can converge rapidly to 0 within 1 s, but the adjustment time of the position error is over 5 s. And the maximum overshoot of the position error is over 0.09 m. Therefore, taking into account the dynamic performance under the presence of an external disturbance force, the trajectory controller proposed in this paper is also superior to the geometric controller proposed in [20].Figure 10
response of trajectory tracking control after disturbance. (a) Position (x (solid) xd (dotted)). (b) Position error. (c) Attitude error.
(a)(b)(c)Figure 11
response of geometric tracking control after disturbance. (a) Position (x (solid) xd (dotted)). (b) Position error. (c) Attitude error.
(a)(b)(c)


## 5. Conclusions

In this paper, we proposed a trajectory tracking controller of VTOL UAVs to stabilize a quadrotor at a high-speed trajectory. First, the concept of the differential trajectory is exploited to compute the desired velocity which is toward the desired trajectory. The differential trajectory enhances the antidisturbance ability and the response speed of the position controller. Then, the proportional-integral control method is used to guarantee that the attitude and position follow a high-speed trajectory with large attitude movements. Finally, the simulation is conducted by the tethered quadrotor to verify that the controller can improve the robustness of the quadrotor against aerodynamic drag and mass change in high-speed flight. Future work is to implement control algorithms on multirotor racing, improving the robustness and disturbance rejection.



---

*Source: 9825790-2021-01-08.xml*