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.
- Quadrotor UAV
- Tracking Control
- Nonlinear Filter
- Unknown linear velocity measurement
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 . 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 , 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 , 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 , 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  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 .
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 and of matrix of inertia . The equations of motion can be described by two reference frames: first one is the reference frame combined with the unit vector basis and second one is the body frame fixed on the quadrotor UAV and combined with vector basis (see Figure 1). The kinematic and dynamic equations of motion for the quadrotor expressed in the body-fixed reference frame can be described as . The dynamic model is derived using Newton-Euler formalism in the body fixed frame .
where represents the position of the centre of mass of the quadrotor, these positions are expressed relatively with respect to an inertial frame and represents the three Euler angles (yaw, pitch, roll) that define the orientation of the quadrotor in space. and denote the linear and angular velocities expressed in the body-fixed frame . bv represents the external force disturbance expressed in the inertial frame . m is the mass of the quadrotor, denotes a positive definite inertia matrix relative to the inertial frame . The vector ,denotes the external force and torque expressed in . The external force is aligned with the and can be written as , where is the gravity vector defined as where denotes the gravitational acceleration and is the unit vector in the inertial frame. T denotes the total thrust produced by the four rotors given as where ωi being the speed of the rotor i, k is the thrust factor and it is a positive proportional constant parameter depending on the density of air, the radius, the shape, the pitch angle of the blade and other factors. contains gyroscopic couples, due to the rotational motion of the quadrotor and the four rotors which is given by where Ir denotes the moment of inertia. The generalized moments on the Θ variable are as follows.
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 to , where is expressed as follows:
3. Quadrotor forces and moments
The four rotors of quadrotor, rotating at angular velocities omegai, produce the four forces , pointed upward, where i = 1,2,3,4, and ki are positive constants. These four forces constitute the total thrust T along z axis. Therefore, the distributed forces and moments from four actuator motors for the quadrotor are given by:
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 and desired heading ψd. The set of trajectory and their derivatives are smooth enough so that they are uniformly continuous and bounded. The linear velocity is assumed to be not available for feedback and only the position and acceleration are therefore accessible by the translational subsystem. However, we want to design a global feedback control law in the absence of measurements of linear velocity that guarantee the position, heading and velocity tracking errors that are bounded and converge asymptotically to zero.
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.
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 on an open region containing the origin, that is continuous, positive definite, has continuous first-order partial derivative at every point of , has the property as x approaches the boundary of and satisfies along the solution of for and some positive constant b .
Lemma 1. For any positive constant , let and be open sets .
Consider the system
where , and is piecewise continuous in t and locally Lipschitz in z, uniformly in t, on . Suppose that there exist functions and , continuously differentiable and positive definite in their respective domains, such that
where σ1 and σ2 are class k∞ functions. Let and z1(0) belong to the set . If the inequality holds:
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 , according to . This implies that V(ζ(t)) exist for all .
Since V(ζ) is positive definite and , we know that for all . From and the fact that and are positive functions, it is obvious that is also bounded for all . As a result, it is known from Eq. (9) that . Based on the , We can figure out that remains in the set for all .
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 . 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 .
To interpret the filter in frequency domain, we introduce the variable and replace this variable in Eq. (13), which yields
extracting the term , we get
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 leads easily to extract the desired orientation since it constitutes the link between the position dynamics and attitude dynamics. This can be formulated as
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.
such that: . So, the selected positive variables of kp, kd, kg guaranteeing the vector thrust to be bounded.
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 and block of torque control . Consider the subsystem (6, Σ2)
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 and to obtain the appropriate torque for the control system. From Eq. (20), we define the angular velocity tracking error vector . where
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:
It is obvious that Eq. (29) has negative terms and these terms can stabilize the system only if the conditions are met. These conditions will be met using Lemma (1). The other positive terms have to be cancelled and this will be done in the next. Now, backstepping control algorithm was applied to the partial of rotation system to control the input torque τa. The stability of rotation closed loop system is proved. We define the angular velocity error and its derivative:
Consider the following positive definite Lyapunov function candidate:
and its time derivative is
Replacing the third equation of system (6, Σ2) in Eq. (33) yields
In view of last equation, we propose the following torque input for the rotational dynamics
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 with inertial matrix , , , and . The numerical simulation results have been obtained using Runge-Kutta’s method with variable time step 0.001s. The desired trajectory is given by with initial conditions . The controller gains are as follows: . The obtained results are shown in Figures 3, 4, 5, 6, 7, 8 and 9.
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.
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.
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
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 are the minimum values of the vectors , respectively, and are the maximum values of these vectors. In order to simplify the stability study of the above equation, we assume that both minimum and maximum values are equal. So, the expression (44) can be rewritten in the following matrix form:
Now, we define the parameters so as to ensure that the terms are positive definite. To achieve that, the inequality of linear matrix method is applied. For Q1 > 0, this is equivalent to
For Q2 > 0, this is equivalent to
Equation (48) gives:
and the Eq. (49) gives:
since . For β1 > 0, this is equivalent to
For β2 > 0, this is equivalent to
Since , one can write
Using Eq. (19), we can define the parameter kd as follows:
By solving this inequality, we obtain the value of parameter kp
and hence, the value of parameter kd can calculated as
Now, we calculate the total thrust and the desired orientation. As it is presented previous, the control vector can be written in the standard form as
which is equivalent to
Using Eq. (17), the vector can be calculated as
This leads to obtain the values of