Abstract
This chapter deals with the position control of quadrotor unmanned aerial vehicle (UAV) when quadrotor’s linear velocity is unavailable. We propose a hierarchical tracking controller for quadrotor UAV. The proposed controller does not require measurements of linear velocity of quadrotor. A nonlinear filter that avoids the need for measurements of linear velocity has proposed such that a global stability result is obtained for the position tracking error. However, backstepping based on barrier Lyapunov function has been used for the attitude controller. The control design is achieved by means of the hierarchical control, that is, design the position controller and attitude controller separately. This allows us to choose different nonlinear techniques for each controller.
Keywords
- Quadrotor UAV
- Tracking Control
- Nonlinear Filter
- Backstepping
- Unknown linear velocity measurement
1. Introduction
In recent years, multirotor unmanned aerial vehicles (UAVs) have attracted many researchers and became a growing interest in the academic and industrial research. In this chapter, our study focuses on quadrotor UAVs due to its ability to fly in restricted areas. The quadrotor has four rotors controlled by four rotors. Quadrotors have specific characteristics that allow the execution of applications that would be difficult or complex compared with other flying machines. A key issue in making multirotor UAV vehicles feasible and efficient is the control design, consisting of a navigation system, position and attitude control. This chapter concerns the nonlinearity character of the UAV vehicles and focuses on the position and attitude controllers. One of scenarios that could be achieved by the quadrotor is autonomous navigation. Implementing such a mission requires the measurement of the components of vehicle state (position, linear velocity, orientation angles and angular velocity) from GPS sensors. Most of the control schemes that have been introduced in the literature rely on the available full state of feedback using definition of an observer or rely on the estimation of velocity of the vehicle by means of derivation of the successive measurements from the used sensors such GPS, etc. [1–3]. However, an additional disturbance may occur in the control loop as a result of the use of the observer. It is also important to validate first convergency of the observer. In addition, the stability of closed loop of complete system controlled by observer has to be assured through checking the compatibility of observer frequency and controller frequency [4]. In this estimation method, the errors produced by GPS may approach several meters, and in reality, velocity measurement error is growing fast by the induced measurement noise along with numerical integration. Few researchers have solved the problem of linear velocity estimation without the use of GPS, and some of them considered combination and artificial vision and the inertial sensors [5, 6].
In [7], the authors proposed a global exponential observer with a complete order to ensure a continued trajectory of a helicopter (VTOL). To reduce the size of the estimated state vector, a reduced observer introduced in [8], the linear velocity of the quadrotor has been estimated using a complete or partial measure of the acceleration such that the asymptotic stability of the error is obtained. Some other forms of observers have been introduced such as adaptive observer [9], and this approach provided an estimation of the velocity of quadrotor UAV from acceleration measurements calculated by the inertial system, but this method has disadvantages of slow convergence of the estimated parameters. While the sliding mode observer used in [10] has shown not only the ability to estimate the velocity of quadrotor but also showed its robustness against the external disturbances. The other technique used in the literature to estimate the linear velocity is the filters, and one of these filters is extended Kalman filter that widely applied to nonlinear dynamical systems. In this case, the principle is to use the standard equations of Kalman filter for nonlinear model linearized by Taylor formula of first order and the states of systems can be estimated from the noise measurements. These kinds of filters have been used to estimate the states of quadrotor [11].
In this paper, we propose an approach to solve the problem of position tracking of quadrotor UAV when the linear velocity measurements are unavailable. The proposed controller provides a hierarchical design of the system using assign inner loop for position control and outer loop for attitude control. Each loop has its own control algorithm. The resulting outer control loop, which is based on backstepping, has a simple structure. The inner control loop is based on nonlinear filter-based control design with the aim of estimating the linear velocity of quadrotor.
This paper is organized as follows. In Section 2, the dynamic model of quadrotor UAV is introduced. Section 3 presents the design of position controller based on the nonlinear dynamic model using nonlinear filter-based approach. In Section 4, the attitude controller of rotational system is presented. In Section 5, the overall closed loop system stability is analysed, and simulation results are shown in Section 6.
2. Quadrotor dynamic model
The quadrotor UAV is modelled as a rigid body of mass

Figure 1.
Quadrotor airframe and reference frames.
where
where l denotes the distance from the rotor to the centre of mass of the quadrotor. Using Euler angles parameterization and "XYZ" convention, the airframe orientation in space is given by a rotation matrix R from
3. Quadrotor forces and moments
The four rotors of quadrotor, rotating at angular velocities omegai, produce the four forces
where c is the drag coefficient. Since the quadrotor UAV is under-actuated system, the design of control inputs for this kind of systems is a challenging topic.
4. Control problem formulation
In this work, we aim to design control laws for the total thrust T and torques τa allowing the quadrotor UAV to track a desired trajectory
The main goal of this paper is to solve the position control problem; meanwhile, guaranteeing all closed-loop signals are bounded and the corresponding constraints of the attitude system are violated. In the following, we will introduce the methodology of control design to achieve our objectives.
5. Control design procedure
The equations of motion (2) of quadrotor defined in the previous section can be rewritten as
The dynamic model above is separated into two dynamic systems; translational dynamic system Σ1 and rotational dynamic system Σ2. These two systems are chosen completely coupled by the rotation vector Re3 and total thrust vector T as shown in Figure 2. In our methodology, we adopt a hierarchical controller design for the entire system dividing it into translational and rotational dynamics subsytems as it is shown in Figure 2. In this design, we assign the outer loop for the position controller and the inner loop for the attitude controller. The control design procedure can be summarized in the following two points:
In the design of the position controller, we propose a nonlinear filter to estimate the linear velocity tracking error rather than having its feedback measurement and design the intermediate position control from which we can calculate the desired value of the total thrust and also extract the desired orientation that will be considered as a reference for the rotational dynamics loop.
For the attitude controller, backstepping technique and control design with a barrier Lyapunov function have been applied due to the fact that the dynamic of Σ2 is in the form of “strict feedback” system, which is appropriate for such a controller. The virtual control laws for angular velocities resulting from applying backstepping technique are obtained αΩ = [αr, αp, αq] to ensure the asymptotic convergence of followed rotation angles errors to zero, from the torques. Then, the four rotational speed signals can be calculated by the transformation matrix R.

Figure 2.
Control architecture.
We will introduce barrier Lyapunov function (BLF) to design the attitude tracking controller. This function is designed to avoid the constraints (singularity points) that may occur in the rotation angles, roll, pitch and yaw and to produce a feasible initial condition for torques control.
Definition. A barrier Lyapunov function is a scalar function V(x), defined with respect to the system
Lemma 1. For any positive constant
Consider the system
where
where σ1 and σ2 are class k∞ functions. Let
then z1(t) remains in the open set
Proof. The conditions on h ensure the existence and uniqueness of a maximal solution ζ(t) on the time interval
Since V(ζ) is positive definite and
Accordingly, there exist a compact set
5.1. Position control design
To design the position control for the dynamics of translational subsystem Eq. (6) that accomplish our control goal when no linear velocity measurements are available, we have considered a nonlinear first-order filter to estimate the tracking error of the linear velocity. The classification of the designed filter is output feedback controller [15]. It is designed with hyperbolic tangent function to ensure boundedness of thrust vector. The form of the filter can be written as
where A and B are two diagonal matrices.
Next section presents an explanation of operation of selected filter and simple simulation example.
5.1.1. Filter principal design
The main idea of our designed filter is inspired from a simple first-order linear high-pass filter [16].
To interpret the filter in frequency domain, we introduce the variable
where
extracting the term
5.1.2. Intermediate position control design
The goal of this part is to design an intermediate control that ensures the convergence of position tracking and velocity errors to zero.
The choice of vector input
where kp and kd are two column vectors that contain three elements which will be defined by the proof of stability of position controller. The boundedness of Eq. (17) must be taken into consideration.
considering
such that:
To show the stability of closed loop position system with the controller Eq. (19), we will introduce it later in the Appendix A.
5.2. Attitude control design
The control of the attitude system is implemented to ensure the asymptotic convergence of desired orientation. we exploited the two interconnected blocks: block of virtual control
which describes the rotation system, the angular velocity vector Ω and torque vector τa that can be restated as
Thus, the virtual angular velocity control laws were introduced to produce a zero error of the derivative of angular position
By substituting the Eq. (22) into Eq. (20) yields
similarly,
the derivative of angular position error can be derived below
We choose an appropriate barrier Lyapunov function for roll and pith angles. And this is not needed for the yaw angle since it has singularity-free condition and we can use a single quadratic function to derive its control law.
The augmented Lyapunov function can be stated as:
and its time derivative is
So, the virtual control law for the angular velocity is derived as follows:
Substituting Eq. (28) into Eq. (25) and then substituting the resulting equations into (27) yields
It is obvious that Eq. (29) has negative terms and these terms can stabilize the system only if the conditions
Consider the following positive definite Lyapunov function candidate:
and its time derivative is
Substituting Eq. (30) into Eq. (32) yields
Replacing the third equation of system (6, Σ2) in Eq. (33) yields
The time derivative of
In view of last equation, we propose the following torque input for the rotational dynamics
and hence
6. Numerical simulation results
To show the effectiveness of the proposed control algorithm, we have introduced the simulation results. In order to test the overall system using Matlab simulink, the quadrotor UAV modelled as a rigid body of mass

Figure 3.
Position tracking.

Figure 4.
Position tracking error.

Figure 5.
Estimated velocity tracking.

Figure 6.
Estimated velocity tracking error.

Figure 7.
Attitude tracking.

Figure 8.
Attitude tracking error.
Figures 3, 4, 5 and 6 show the three components of the position and estimated velocity tracking errors. Figures 7 and 8 illustrate the attitude tracking and its tracking errors. To show the quadrotor’s position tracking, a 3D plot of the quadrotor’s position with desired trajectory is given in Figure 9.

Figure 9.
3D trajectory of the quadrotor UAV (dashed blue) with the desired trajectory (red).
7. Conclusion
In this work, we addressed the trajectory tracking problem of quadrotor UAV without linear velocity measurements. The presented algorithm was based on a separate translational and rotational control design, and the overall closed loop system showed a global asymptotic stability. Exploited the nature structure of the model, the controller is designed in a hierarchical manner by considering the separation between the translational and orientation dynamics. In the first phase of our control design, the linear velocity measurement has been avoided with the introduced nonlinear filter without using any observer. During this phase, the position controller computes the total thrust, considered as input for translational dynamics, and the desired orientation. In the second phase of our control design, barrier Lyapunov function has been employed to design the control torque that ensuring the tracking of the desired attitude derived at first phase of the control design. The stability of the closed loop system has been investigated and the simulation results have been provided to show the good performance of the proposed algorithm. Our next work will be to accomplish real time experiments for the proposed algorithm.
Appendix
Stability analysis of position control without velocity measurements
Considering the dynamic equations of translational system (6, Σ1), the dynamics of acceleration error can be rewritten as
The closed loop of position system is obtained by substituting the control intermediate vector U to the dynamics of acceleration.
Consider the following candidate Lyapunov function
where γ is a small positive parameter to be determined later. Taking the time derivative of Eq. (41) yields
substituting Eqs. (40)–(42) yields
To achieve boundedness of the system, the last equation must be in the following form:
Consider the following inequalities:
The inequality Eq. (44) can be rewritten in the following form:
where
Now, we define the parameters
For Q2 > 0, this is equivalent to
Equation (48) gives:
and the Eq. (49) gives:
since
This gives:
For β2 > 0, this is equivalent to
Since
substituting Eqs. (53)–(55), yields,
Substituting Eqs. (56) and (55) into (50) yields
Using Eq. (19), we can define the parameter kd as follows:
and
Substituting Eqs. (58) and (59) into Eq. (57), we obtain the second inequality expression
By solving this inequality, we obtain the value of parameter kp
and hence, the value of parameter kd can calculated as
Finally, substituting Eq. (56) into Eq. (51) yields
Now, we calculate the total thrust and the desired orientation. As it is presented previous, the control vector
which is equivalent to
Using Eq. (17), the vector
This leads to obtain the values of
and