Non-linear adaptive tracking control for quadrotor aerial robots under uncertain dynamics

This paper presents the design, analysis, and implementation of an adaptive backstepping controller for underactuated quadrotors to track time-varying trajectories with parameter uncertainties. Quadrotor systems are subject to complicated non-linearity and coupling dynamics, so the ignorance of parameter uncertainties may cause performance degrada-tion and even instability. With the concept of nominal input, the uncertain mass and inertia are decoupled from the lifting force and moment torque. By utilizing the backstepping technique, the design procedure with adaptive laws for dynamic parameters is proposed to ensure stability and convergence of tracking errors to the origin asymptotically. The proposed control scheme is extended to control a quadrotor with velocity motor input while the motor coefﬁcients and geometric parameters are handled by the adaptive laws. A trajectory generation for the proposed adaptive tracking controller is addressed subsequently. The proposed controller requires only the position and orientation of the quadrotor with the twice-differentiable trajectories, while previous work demanded acceleration information. Simulation and experimental results are illustrated to show the efﬁcacy of tracking performance for object transportation.

technique [14], optimization [21], and disturbance observer [17]. However, most of the approaches was proposed by assuming that system parameters are correctly known in prior. The requirement of pre-estimation for the system parameters could not ensure real-time responses to sudden changes in structure and environment in practice.
To deal with uncertainties due to system parameters, aerodynamics, and disturbances, several control laws have been presented recently [4,7,[22][23][24][25]. The adaptive self-tuning regulator was studied with proportional-integral (PI) controller to ensure quadrotor tracking subject to uncertain parameters [6]. A neural-network-based adaptive control was presented to cope with parameter uncertainties in trajectory tracking for a quadrotor system [23]. The mass variation and wind disturbances was addressed by utilizing a fuzzy wavelet neural network approach [4]. The disturbance and modelling uncertainties have been studied via the design of an observer in [17] and a projection-based adaptive scheme in [24]. Although these methods can well-address some uncertainties, the physical parameters that would degrade system performance and even threaten the stability were not taken into account carefully. Therefore, the control technique requiring no information of physical parameters demand further investigation.
Physical parameters of a quadrotor are usually difficult to obtain off-line because the value of mass and inertia could be varying with respect to the applications in object-picking tasks and cooperative transportation [6]. Several off-line measurements are utilized widely to obtain the physical parameters, for example computer-aided model, test-rig platform, or system identifications [3,26,27]. However, the parameter uncertainties resulting from different payload in various flight missions is unpractical to measure precisely during each flight. Imprecise measurements of dynamic parameters or suddenly attaching/detaching objects during flight operation would cause unexpectedly falling down or flying off. Consequently, the major challenge of controlling quadrotors, due to the inherent instability and complexity of the dynamic model, is in the development of an efficient algorithm independent to the knowledge of physical parameters. Thus, the position/attitude tracking control for quadrotor systems under mass, inertia, or even motor coefficient uncertainties is still an open problem for the studies of quadrotors. More importantly, when an object is attached to and detached from the quadrotor, the quadrotor aerial robot would fly away or stall if the dynamic uncertainties are not welladdressed in the control algorithm.
This paper presents an adaptive backstepping control algorithm for quadrotors to track a predefined trajectory subject to dynamic uncertainties. With the design of nominal input, the mass and rotational inertia are decoupled from the lifting force and moment torque, so that adaptive laws can be designed to cope with uncertain parameters. Different from the previous method [15], the entire quadrotor system is divided into four subsystems, which are position underactuated subsystems and three-Euler-angle subsystems. Each of the subsystem is utilized to design the controller via backstepping and adaptive laws for uncertain mass and inertia. Lyapunov theorem is applied to study the boundedness of estimated parameters and the asymptotic convergence of the tracking errors to the origin. For the velocity control input, the uncertainties from coefficients of lifting force and moment torque, and geometric parameters can be handled by the modified adaptive laws. Furthermore, a trajectory generation of the proposed adaptive backstepping control is presented for both the torque input and velocity input scenarios. This paper illustrates simulation and experimental results to show the efficiency of the proposed adaptive backstepping algorithms.
The preliminary results of this work were presented in [18], where the basic design procedure of the adaptive backstepping controller and numerical examples were addressed. We extend these works by elaborating the complete theoretical analysis and extension to the control algorithm for velocity input with uncertain motor lifting force and moment coefficients. Moreover, the trajectory generation for the presented adaptive backstepping control is stated so that the quadrotor system has a feasible desired trajectory. The contributions of this paper are summarized as follows: (1) a backstepping-based adaptive control is proposed for quadrotor systems to track time-varying trajectories when the system parameters, mass and inertia, are unknown; nevertheless, dynamic parameters are required in [9,28] for regulation and in [8,29,30] for trajectory tracking, respectively; (2) the proposed adaptive tracking control is transferred to velocity control input by taking the uncertainties of motor coefficients in lifting force and moment torque, and geometric parameter into consideration; (3) a trajectory generation for both the scenarios of torque input and velocity input scenarios is presented based on the proposed adaptive backstepping controller; (4) simulation and experimental results are presented, and the proposed control algorithms could be extended to quadrotor systems in cable-suspended load, aerial transportation, cooperative transportation, and aerial manipulation. This paper is organized as follows. The preliminaries and modelling are introduced in Section 2, which is followed by the design procedure of backstepping and theoretical results for adaptive tracking control in Section 3. Numerical examples and experiments for adaptive backstepping tracking control with parameter uncertainties are discussed in Sections 4 and 5. Finally, Section 6 summarizes the results and discusses future research directions.

Quadrotor kinematics/dynamics
The kinematics and dynamics of a quadrotor system, as illustrated in Figure 1, are addressed in this section. With the assumption of six-DoF (degree-of-freedom) rigid body, the centre of mass of the quadrotor on the body frame {B} with respect to the initial frame of reference {W } is denoted by = [x, y, z] T ∈ ℝ 3 . The Euler angles of the quadrotor with respect to the initial frame {W } is described by Θ = [ , , ] T ∈ ℝ 3 .

FIGURE 1
Quadrotor coordinates and motor forces/moments acting on the quadrotor frame Hence, we have the quadrotor generalized coordinates as = [x, y, z, , , ] T ∈ ℝ 6 , where is the roll angle around the xaxis, is the pitch angle around the y-axis, and is the yaw angle around the z-axis. Thus, the velocity relationship from the initial frame {W } to the body frame {B} can be formulated as T is the transformation matrix that is described by where 0 n×n ∈ ℝ n×n is a zero matrix. The Euler angles z-x-y are utilized to model the quadrotor rotation; thus, the rotational matrix in (2) is defined as R = R z, R x, R y, that where c and s denote cos( ) and sin( ), respectively for = { , , }. Furthermore, the translational matrix In the modelling, the Euler angles are assumed to be bounded such that − ∕2 < < ∕2, − ∕2 < < ∕2, and − < < , and operated in small angles so that the transformation matrix T is non-singular.
With the Euler-Lagrangian approaches, the quadrotor dynamics can be expressed as where I n×n ∈ ℝ n×n is an identity matrix, m q denotes the mass of the quadrotor, J q ∈ ℝ 3×3 denotes the inertia matrix of the quadrotor with respect to the body frame {B}, F ext = F T + F g ∈ ℝ 3 is the exerted force, ext = = [ x , y , z ] T ∈ ℝ 3 is the torque applied on the quadrotor. By denoting a 3 = [0, 0, 1] T , the terms in the thrust force F ext are given as F T = [0, 0, F ] T := Fa 3 ∈ ℝ 3 with F ∈ ℝ as the total thrust force which applies on the z-axis of the quadrotor, and F g = R T [0, 0, −m q g] T := −m q gR T a 3 ∈ ℝ 3 as the gravitational force vector.
Consequently, the dynamic model, without the influence of aerodynamic/propeller effects, can be described by [3,31] { m q̈= FRa 3 − m q ga 3 If the quadrotor carries an object via gripper or a manipulator, the mass and rotational inertia matrix of the entire quadrotor system would be influenced by the object. By considering the mass and inertia of the object are constant and denoted by m o and J o ∈ ℝ 3 , a diagonal matrix, then the dynamic of the quadrotor can be modified and given as where m = m q + m o and J = J q + J o . As the quadrotor structure is symmetric, the inertia matrix is given as a diagonal matrix such that J = diag{I x , I y , I z }, where I x , I y , and I z are the diagonal elements in the inertia matrix J of the quadrotor and attached object. Under the assumption of operation in small angels, Ω B can be approximated byΘ = [̇,̇,̇] T . Hence, the dynamic equations becomes [26,32] = A quadrotor system is actuated by the rotational speed of the four motors which can be converted to the control input force F and moment torque [5,26]. Therefore, the force generated from each of the motor can be obtained by F i = k F 2 i , where F i are the lifting force of the i th motor, i is the motor speed of the i th motor, and k F > 0 as the lifting force coefficient. For the moment resulting from the motor, we have that M i = k M 2 i for i = 1, 2, 3, 4, where M i is the moment from the i th motor, and k M > 0 is the coefficient of the motor moment. By denoting d as the distance from the rotor axes to the quadrotor epicentre, the control input Hence, the relationship between the motor speed to the control inputs is given as Therefore, with the design of control force and moment, F and , the motor speed can be obtained with the knowledge of d , k F , and k M to control the motion of a quadrotor system.

Control objective and formulation
In the quadrotor model, the mass m and moment of inertia I x , I y , and I z are basically unknown to the controller, especially during the transportation of an object. The uncertain or inaccurate mass and inertia information would degrade the tracking performance of a quadrotor system. Although these parameters could be obtained experimentally, or using CAD model, the traditional methods are not useful for unknown object in aerial transportation or manipulation. Therefore, the main objective of this paper is to design a control technique so that the quadrotor system can track a time-varying trajectory without the knowledge of the dynamic parameters, m and J .
Since the parameter uncertainties have significantly influence to tracking performance and even stability of a quadrotor, the main purpose of this paper is to develop control algorithms so that the quadrotor system can track a desired trajectory without the knowledge of dynamic, that is m, I x , I y , and I z are unknown to the controller. The objective of this paper is to propose an adaptive controller so that the convergence of the positions (t ) and Euler angle (t ), (t ), (t ), to a desired trajec- respectively, are guaranteed. It is noted that the convergence of roll and pitch angles to the reference angles, whose desired trajectories are obtained from {x d (t ), y d (t ), z d (t ), d (t )} and denoted by d (t ) and d (t ), respectively, are also guaranteed with the controller. The trajectory generation for the quadrotor system will be addressed subsequently in Section 3.4.
For the proposed non-linear adaptive control for quadrotor tracking with uncertain system parameters, the aforementioned assumptions are summarized and described in the following: Assumption 1. The quadrotor aerial robot is a six-DoF rigid body with the centre of mass located at the geometric centre. Assumption 2. The roll and pitch angles, and , of the quadrotor aerial robot are operated in small angles.

Design procedure
By observing the dynamic models, (8) to (13), we obtain that the input force F and torque x , y , z are divided by either the mass m or the rotational inertia I x , I y , I z . Therefore, to handle the dynamic parameters, the thrust force F and moment torque are rewritten with the nominal inputs that whereF ,̄x,̄y,̄z are called the nominal inputs of the quadrotor system without mass/inertia. Hence, the control inputs are designed under the definition of nominal inputs and the corresponding dynamic parameters. If there are dynamic uncertainties in the quadrotor system, the estimation of dynamic parameters can be utilized in the control input such that wherem,Î x ,Î y , andÎ z denote the estimates of m, I x , I y , and I z , respectively. Consequently, under the formulation (16), the uncertain dynamics can be tackled separately by the design of control inputs. To cope with dynamic uncertainties in the studies of quadrotor trajectory, an adaptive backstepping control [33] is presented. The following states 1 = , 2 =̇, stabilized by designing the first virtual input as v 1 =̇d − k 1 e 1 with a positive control gain k 1 . Consequently, we geṫ V 1 = −k 1 e T 1 e 1 ≤ 0.
Step 2: By considering the position subsystem of the quadrotor ( 1 = ), as described in (7), we have By designing the tracking error e 2 = 2 − v 1 , the derivatives of e 1 and e 2 with the design of v 1 and (7) gives that Hence, the augmented Lyapunov function is given as wherem = m −m denotes the estimation error betweenm and the actual m, and m ∈ ℝ is a positive gain of the adaptive law that will be presented subsequently. Since m is a constant during an operation,̇m = −ṁ. Thus, the time-derivative of V 2 along the trajectories of (18) is given aṡ From the definition of the nominal input F =mF and estimate errorm in (16), the term F ∕m can be rewritten as By denoting R f = Ra 3 ∈ ℝ 3 ,V 2 can be written aṡ Furthermore, we can design the adaptive law forṁ aṡm so that the time-derivative of V 2 becomeṡ Therefore, we getV 2 = −k 1 e T 1 e 1 − k 2 e T 2 e 2 if the last two terms in (24) are zero such that Since e 2 and R f are vectors with the corresponding dimension, we further obtain the nominal inputF ∈ ℝ as ) .
Thus, the adaptive law (23) and the nominal input (26) guarantee thatV 2 is negative semi-definite so that e 1 , e 2 , andm are bounded.
Step 3: Let's consider the second virtual system described bẏ3 = v 3 . By considering V 3 = e 2 3 ∕2 as the Lyapunov function candidate with Step 4: Consider the roll-angle-subsystem of the quadrotor system (11) as where := (I y − I z )∕I x . By letting the tracking error be e 4 = 4 − v 3 , the time-derivative of e 3 and e 4 are As the dynamic parameters I x and are unknown to the controller,Ĩ x = I x −Î x and̃= −̂are defined as the estimation errors. Next, the Lyapunov function for the roll angle subsystem is given as where and x are the adaptive control gains. The timederivative of V 4 along the trajectories oḟe 3 anḋe 4 in (57) gives thatV With the definition ofĨ x and the nominal inputs, we get x ∕I x = x −̄xĨ x ∕I x . Hence,V 4 can be written aṡ By designing thaṫ= e 4 6 8 anḋI x = − x̄x e 4 , we havė Subsequently, by designing the nominal input as̄x Step 5: Let's consider the third virtual system aṡ5 = v 5 , where v 5 ∈ ℝ is a virtual control input. With the design of the tracking error e 5 = 5 − d , the time-derivative of the Lyapunov function candidate V 5 = e 2 5 ∕2 results inV 5 = e 5̇e5 = e 5 (̇5 −̇d ). Thus, the design of the virtual control input v 5 as v 5 =̇d − k 5 e 5 with k 5 as a positive control gains leads to thaṫ V 5 = −k 5 e 2 5 ≤ 0.
After addressing the design procedure, the stability analysis of the proposed adaptive backstepping control for quadrotor trajectory tracking is addressed in the next section.

Velocity control input
In the implementation of the proposed tracking control, the total thrust force F and the net control moments are generated from the rotational speed of the four motors. With the proposed adaptive backstepping control, F can be obtained by multiplying mass estimationm and nominal forceF , and similarly for each of the torque x , y , and z . Subsequently, (14) can be utilized with force and torque to obtain the corresponding motor speed. However, the coefficients of lifting force k F and motor moment k M , and geometric distance d have to be obtained for the transformation. Most of the previous methods either measures or experimentally derives the coefficients k F and k M , but the mismatch of these parameters would degrade the tracking performance and even make the system unstable.
In this section, the proposed adaptive backstepping control is extended to the case by taking into account the lifting and motor coefficients of moment. From the transformation (14), the lifting force with respect to motor speed is given as i , F is rewritten as F = k F̄. With the mass and nominal design, the force input is given as where m F := m∕k F . Hence, the error dynamics of the subsystem for position tracking (18) becomes By following Steps 1 and 2 in Section 3.1, we consider the augmented Lyapunov function as V 2 F = e T 1 e 1 ∕2 + e T 2 e 2 ∕2 + m 2 F ∕(2 m F m F ), wherem F = m F −m F denotes the estimation error betweenm F and the actual m F , which contains both the mass m and the lifting coefficient k F , and m F ∈ ℝ is a positive gain for the adaptive law. Therefore, if the nominal velocity input and the adaptive law are designed as the position subsystem is stable withV 2 F = −k 1 e T 1 e 1 − k 2 e T 2 e 2 ≤ 0, so that the position tracking can be ensured. Similarly, the coefficient of motor moment, k M , can be considered in the control of three attitude subsystems. The relationships between torque input and the motor moment are given as wherēi j := ( 2 i − 2 j ) and̄M := − 2 1 + 2 2 − 2 3 + 2 4 . Therefore, the torque applied on the x-axis of the quadrotor with the rotational inertia is given as where I xw := I x ∕dk F and̄2 4 is the nominal velocity input to the moment of x-axis. Subsequently, the error dynamics of the roll angle can be given as By following the analysis in Steps 3 and 4, we have that where x ∈ ℝ is a positive gain of the adaptive law. The nominal velocity input and parameter uncertainties for (54) and (55) are omitted in this section because these control laws can be obtained analogous to the analysis for x and design procedure addressed in Section 3.1. By observing the modified control and adaptive law for velocity input, we conclude that the proposed algorithms for torque input and velocity input have similar forms. Hence, for the nominal velocity input from the estimated parameters via the adaptive laws, we can obtain from̄,̄2 4 ,̄3 1 , and̄M with the transformation that (60) By following the extension, the uncertainties of kinematics and motor coefficients, d , k F , and k M , can be handled simultaneously with the presence of unknown dynamic parameters, m, I x , I y , and I z .

Trajectory generation
Since the quadrotor system with four motor inputs is differentially flat, the control input can be obtained from the algebraic functions of flat outputs that {x(t ), y(t ), z(t ), (t )} = { (t ), (t )}. The desired trajectories { d (t ), d (t )} of the proposed adaptive backstepping controller can be obtained from minimum snap trajectory generation [35]. By selecting the desired way-points, we enforce the continuity of the first four derivative of d (t ) and the first two derivatives of d (t ) to generate the feasible trajectories. Thus, d (t ) and d (t ) are twice differentiable as the desired trajectory in the proposed controller.
In addition to d (t ) and d (t ), in the proposed tracking controller the desired trajectories of roll and pitch are required because the rotational inertia is handled separately. Due to the underactuated property, the desired trajectories for roll and pitch angles can not be arbitrarily designed, instead they should be dependent on the desired trajectories x d (t ), y d (t ), z d (t ), and d (t ). Therefore, from the quadrotor dynamics, we denote that FR f = [F x , F y , F z ] as the lifting force in the x-y-z direction with respect to the inertial frame W . Consequently, the desired trajectories for the roll and pitch angles are given according to the quadrotor dynamics (8) and (9) as which are well-defined as F (t ) and cos( d ) are far from zero. The resultant desired roll and pitch angles should be twice differentiable for the backstepping controller. Under the assumption of bounds on Euler angles in Section 2, the dependent functions of sin −1 are within the interval (−1, 1). By observingF in (40), asë 1 ,̇e 2 , and̈d are bounded, we get F ∈  ∞ . SinceF ,̇e 2 ,̇,̇,̇∈  ∞ , we have thatm is bounded. Hence,Ḟ ∈  ∞ . By taking the time-derivative of the position dynamics in (6), we get ⃛ being bounded asḞ ,̇,̇,̇∈  ∞ . Since ⃛ d is bounded, we have thatë 1 ∈  ∞ ; additionally, the second derivative ofF is bounded. We can further obtain thatF is bounded fromm being bounded. Consequently, with fourth differentiable d and twice differentiable d from minimum snap trajectory generation, we conclude that d and d addressed in (61) and (62) are twice differentiable.
For the velocity control input studied in Section 3.3, the reference roll and pitch angles can be obtained accordingly with the information of̈d . As F ∕m =̄∕m F , for the quadrotor to track the desired trajectory d and d , the desired roll and pitch angles can be obtained from (8), (9) that ) .
The position and velocity tracking performance with the proposed adaptive controller are shown in Figure 2, which illustrates the convergence of the tracking errors in the presence of dynamic uncertainties. The Euler angles and the tracking errors are shown in Figure 3. It shows that the proposed backstepping controller can guarantee the quadrotor system to track Estimates of the unknown dynamic parameters using the proposed adaptive backstepping controller the desired trajectories; moreover, the tracking of roll, pitch, and yaw angles are ensured for a quadrotor subject to dynamic uncertainties. The estimates of unknown m, , , , I x , I y , and I z are shown in Figure 4. A relative higher variations ofm is observed in the beginning of the simulation due to the large tracking error in the z-direction. The tracking performance is improved after the convergence of the unknown parameters by utilizing the proposed adaptive law.
The proposed approach is superior to previous algorithms because the mass and rotational inertia are not required in the implementation of the controller. To show the performance of the proposed control scheme, we implement the quadrotor control system under the same scenario by using one of the previously proposed controllers [35]. The controller in [35] is given as

FIGURE 5
Position and velocity tracking in the simulation for a quadrotor to pick up an object in the midway by using a previously proposed controller [35] FIGURE 6 Trajectory tracking in 3-D using the proposed controller (left) and the previously developed non-adaptive controller (right) [35] = [ x , y , z ] T = −k r e r − k w e w , where e 1 = − d is the position tracking error,̇e 1 is the velocity error, e r is the error on orientation, e w is the angular velocity error, and k p , k v , k r , k w are positive control gains. In [35], the controller is considered with perfect knowledge of m and J . Therefore, if the measurement is inaccurate or the mass/inertia change during operation, the controller is unable to guarantee satisfactory tracking performance. The simulation results of the comparison control algorithm developed in [35] are illustrated in Figure 5. It can be observed that the small oscillation in the beginning of the z-axis velocity does not exist because the dynamic parameters are utilized in the controller. However, when the quadrotor picks up an object with unknown mass at t = 10 s, the z-axis velocity has higher variation and the z-axis position drop with a significant tracking error. The trajectory tracking in 3-D for the proposed adaptive controller and the non-adaptive controller are shown in Figure 6. We can conclude that even with suddenly added object to the quadrotor system, the proposed adaptive backstepping controller is superior.

Experimental setup
The proposed adaptive backstepping controller is validated in this section via experiments. The quadrotor system is composed of DJI-F450 frame with four A2212-930KV brushless motors. Each of the motor is mounted by a 10-inch propeller with 45 • pitch angle. The on-board controller is Pixhawk flight controller with STM32F427Cortex M4, 32bit ARM CortexM4 high performance processor. The experiment setup is illustrated in Figure 7. The position and angle of the quadrotor is acquired by OptiTrack system with the resolution 1280 × 1024 and 120FPS. The delay of the motion capture system is around 8.33ms, and the position information is transmitted to Robot Operating System (ROS) with 100Hz. The controller is implemented in a personal computer (PC), and the control commands are transmitted via ROS to a Linux system and via ROS-MAVLink (Micro Air Vehicle Link) to the Pixhawk on the quadrotor system. In the experiment, the weight of the quadrotor is 1.195kg, the weight of load platform is 76g, and the weight of the attached object is 100g. Since the flight controller deals with the orientation directly, only the position tracking is implemented and the adaptive mass is considered. In the quadrotor system, the thrust-to-weight ratio is obtained experimentally on all four motors, and the obtained gain is k f = 1.28 × 10 −7 N ∕r pm 2 . The control gains for the position tracking are given as k 1 = diag{0.9, 1.6, 2.0} and k 2 = diag{6.1, 5.4, 5.00}. Additionally, in the experiment, the projection operator [36] is utilized with the upper bound and lower bound as m = 1.1kg and m = 0.8kg, respectively. The update rate for the adaptive controller is set as 1.5 for all the following experiments.

Trajectory tracking of quadrotor aerial robot
The first experiment presents the tracking performance of the proposed adaptive control for the quadrotor aerial robot. The quadrotor is controlled by using the proposed adaptive backstepping scheme to follow a trajectory generated by the The experimental results are illustrated in Figures 8-10. As shown in Figure 8, the position and velocity tracking demonstrates that the quadrotor can follow the time-varying trajectory with small and bounded errors. The Euler angles and position tracking errors, as seen in Figure 9, are closed to zero during the operation even if the mass is uncertain in the controller. The 3-D trajectory tracking, motor thrust, and evolution of mass adaption are shown in Figure 10. In the experiment, the position errors mainly result from the ignorance of aerodynamic/propeller effects on the quadrotors.

Attaching and detaching objects during tracking
The attaching and detaching mission is important in quadrotor control, and if the dynamic uncertainties are not well-addressed, the quadrotor would fly away or stall. To demonstrate the superiority of the proposed adaptive tracking algorithm, the object is attached to and detached from the quadrotor in the following experiments. First, we consider a minimum snap trajectory which is obtained with the way-points that The experimental results are shown in Figures 11-14. Figure 11 illustrates that the quadrotor system is able to follow the desired position and velocity. While the object with the   Figure 12. Additionally, the speeds of the four motors in the quadrotor during operation are shown in Figure 13. The 3-D trajectory tracking is shown in Figure 14, which demonstrates that the quadrotor can follow the desired trajectory independent to dynamic uncertainties. The motor total thrust and estimation of mass are illustrated in Figure 14.
In addition to the desired trajectory generated by minimum snap algorithm, twice differentiable trajectories can also be considered with the proposed adaptive backstepping controller. Next, we consider a circular trajectory given as x d (t ) = cos(0.2t ) and y d (t ) = sin(0.2t ), which satisfies the requirement and assumption of trajectory in Section 3. All the three desired Euler angles are set to equal zero for the entire operation. For the z-axis trajectory, the quadrotor is commanded to flight to z = 0.7m, and keep in this height to follow a circle. Moreover, the quadrotor stops at t = 25 s for the operator to attach an object, and keep tracking the circle at t = 45 s until t = 70 s for landing. The experimental results are shown in Figures 16 and  17, where the convergence of position and Euler angles errors to the origin are guaranteed. Bounded position tracking errors and estimation of mass with suddenly attached mass demonstrate the efficacy of the proposed controller.

CONCLUSIONS
The knowledge of accurate mass/inertia is extremely important to guarantee high efficient and performance for quadrotor aerial robots on trajectory tracking. In the previous studies, the perfect knowledge of m and J are required to ensure satisfactory tracking; however, the precise measurements on mass/inertia are difficult to achieve. Especially, when there are unknown objects attached to or detached from a quadrotor during operation, the aerial system could be unstable or fly away/stall if the uncertain dynamic parameters are not well-coped within the design of controller. This paper studies an adaptive tracking control for non-linear quadrotor systems subject to parameter uncertainties with the technique of backstepping control. To ensure both stability and tracking performance, the proposed adaptive backstepping control can guarantee a quadrotor system to track a time-varying trajectory in the presence of dynamic uncertainties. With the concept of nominal inputs, the force and torque commands to the quadrotor is decoupled with the uncertain physical parameters. Subsequently, a design procedure for four subsystems of a quadrotor is proposed with the design of adaptive laws to estimate the mass and inertia during operation. The stability and convergence of tracking errors to the origin are studied by utilizing Lyapunov theorem. Additionally, the presence of unknown motor coefficient and geometric parameter can also be tackled by the proposed nominal input and adaptive laws. Numerical examples and experiments are illustrated to demonstrate the efficiency of the adaptive quadrotor tracking systems.
Although the control performance is guaranteed and demonstrated in the numerical examples, the aerodynamic/propeller effects would significant influence the tracking performance in practice, as seen in the experimental results. Therefore, it is necessary to consider the presence of disturbances and aerodynamic effects as the extensions of this work. Additionally, the future work of this research topic could also encompass the study of transporting a cable-suspended object without the knowledge of object dynamics.