Next Article in Journal
Integrating Dilated Convolution into DenseLSTM for Audio Source Separation
Previous Article in Journal
Mathematical Model and FPGA Realization of a Multi-Stable Chaotic Dynamical System with a Closed Butterfly-Like Curve of Equilibrium Points
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Flatness-Based Aggressive Formation Tracking Control of Quadrotors with Finite-Time Estimated Feedforwards

1
Guangzhou Institute of Advanced Technology, Chinese Academy of Sciences, Guangzhou 511458, China
2
Department of Robot Engineering, ERICA Campus, Hanyang University, Gyeonggi-do 426-791, Korea
*
Author to whom correspondence should be addressed.
Appl. Sci. 2021, 11(2), 792; https://doi.org/10.3390/app11020792
Submission received: 12 December 2020 / Revised: 7 January 2021 / Accepted: 12 January 2021 / Published: 15 January 2021
(This article belongs to the Section Robotics and Automation)

Abstract

:
In this paper we address a decentralized neighbor-based formation tracking control of multiple quadrotors with leader–follower structure. Different from most of the existing work, the formation tracking controller is given in one loop without distinguishing the motion control and attitude control by means of the theory of flatness. In order to achieve an aggressive formation tracking, the high-order states of the neighbors motion are estimated by using a proposed extended finite-time observer for each quadrotor. Then the estimated motion states are used as feedforwards in the formation controller design. Simulation and experimental results show that the proposed formation controller improves the formation performance, i.e., the formation pattern of the quadrotors is better maintained than that using the formation controller without high-order feedforwards, when tracking an aggressive reference formation trajectory.

1. Introduction

The cooperative control of multi-quadrotor systems has progressively attracted attention of researchers in both civil and military areas [1]. Especially, in the application of object transportation, the formation of multiple quadrotors has potential application significance [2,3,4,5,6].
The formation control problem can be categorized into two types. Namely, the formation producing problem and the formation tracking problem [7]. The former problem refers to the algorithm design for a group of vehicles to reach a predefined geometric pattern without a group reference [8,9,10], while the latter problem refers to the same task and meanwhile following a predefined trajectory [11,12,13]. The object transformation is a typical formation tracking problem, which is considered in this paper. An external reference formation trajectory (RFT) is given to the leading quadrotor(s) to guide the formation. We note that in the case of multiple leaders, they share the same RFT. According to [14,15], the formation tracking problem can be attributed as a consensus problem.
In most aggressive maneuver cases, the quadrotor is controlled in tracking a desired aggressive moving trajectory that is prescribed a prior, for instance, by polynomials w.r.t time. A widely used method is the control of geometry on Lie group ( S E ( 3 ) for example). The aggressive formation problem of multiple quadrotors is investigated in [16], where the quadrotors are permitted to move quickly in 3-D environment with a tight formation. The formation of quadrotors is based on proper trajectory generation process, thereby, the full information of the trajectory (including each order derivatives) are known. However, in a multi-agent system with neighbor-based decentralized control, it is impossible to enforce the motion of quadrotor by generating polynomials-based trajectories.
The flatness-based control is frequently used in the trajectory planing for high-order dynamical system. For instance, the time-optimal trajectory generation problem is investigated for helicopter landing in [17] and for multi-rotor in [18]. Especially, in [18], the trajectory is planned in real-time. The agile maneuvers for a quadrotor with a cable-suspended load are investigated in [19]. In this work, by means of flatness-based planning, the air vehicle is able to behave in aggressive maneuver, real-time collision avoidance, and time optimal flight. However, the planned trajectory’s high-order derivatives are required for the quadrotor. In the decentralized formation tracking control of quadrotors, each quadrotor (including the leader) has to behave according to the state of neighbors, which are in general not able or difficult to get the full information of these states.
In multi-agent systems, the consensus speed of agents with linear dynamics depends on the minimum non-singular eigenvalue of the interaction matrix (or Laplacian) [20] and the absolute value of the maximum pole in left half plane of agent dynamics [21]. For the formation of quadrotors, the idea in this paper is to propose a nonlinear formation controller, in order to use these existing results.
One of the difficulties in the control of multi-quadrotor systems is that the quadrotor has under-actuated, nonlinear, and coupling dynamics. The existing consensus algorithms in the literature, which are mostly developed for single-integrator or double-integrator agent dynamics, have not satisfactory formation performance for the formation control of quadrotors in practice, especially in aggressive formation tracking where the small angle assumption should be removed. Furthermore, lacking velocities and its higher derivatives of the neighbors’ states and the RFT makes aggressive formation non-trivial. Nevertheless, in very recent years, the researchers start to consider the nonlinearities/disturbances in formation control [1,22].
In this paper, we aimed at proposing an aggressive control framework for a class of systems with high-order dynamics (in special, quadrotor). Instead of using inner-outer loop structure, we directly design the torques by using the flatness theory, where the high-order cooperative errors are used. The formation controller is decentralized, since the quadrotors move based on the measurement to their neighbors (in special, positions. We suppose that the velocities and higher-order derivatives are not available). Then, the main contributions of this paper are three-fold. A flatness-based formation control with estimated feedforwards is proposed such that the aggressive formation is attained. In order to estimate the velocities and higher-order derivatives of the neighbors states, an extended finite-time observer is proposed. To avoid probably instability caused by the great initial deviation of the estimated states, the saturated feedforwards are developed to improve the formation controller, the convergence of the formation tracking error is then analyzed.
We note that our proposed controller can be combined with the existing methods by adding some nonlinear compositions into the controller, for instance, to deal with the bounded nonlinearities (uncertainties), to achieve asymptotic convergence, to improve the formation speed. These methods can be listed such as robust compensation [20,22], composite nonlinear feedback [13], artificial neural network estimation [23].
The paper is organized as follows. Some preliminaries in graph theory are given in Section 2. The aggressive control of quadrotors with finite-time observer is presented in Section 3. The formation control design and the stability analysis are shown in Section 4. Some simulation and experimental results are given in Section 5. Finally, some conclusions are stated in Section 6. Some useful notations and definitions are given as follows.
Notations: The real vectorial field is represented by R m . Notation R + represents real positive numbers. The saturation function σ b : R n R n is defined as follows, if n = 1 , σ b ( a ) = sign ( a ) · min { a , b } , where sign ( · ) represents the sign function. If n > 1 and a = [ a 1 , , a n ] T , then, σ b ( a ) = [ σ b ( a 1 ) , , σ b ( a n ) ] T . In special, if b = , the saturation function is equal to a linear function without saturation, i.e., σ ( a ) = a , for any a R . The notation C m ( R , R n ) represents the ensemble of m order continuous manifolds in R R n . The notations I n and 0 n × n represent identical and zero matrices in R n × n . In special, 1 n and 0 n represent the vectors with all entries equal to one and zero in R n , respectively. Function λ i ( · ) represents the i-th eigenvalue of matrix inside the parenthesis, in special, λ max ( · ) and λ min ( · ) represent the maximum and minimum eigenvalue of matrix inside the parenthesis, respectively.

2. Preliminaries

Some basic knowledge in graph theory and ‘interaction matrix’ is given in this section. Some propositions and corollaries about the interaction matrix are introduced, which are useful in the analysis of the consensus of quadrotors in Section 4.

2.1. Graph Theory

Graph theory is helpful to represent the interaction relations of multi-agent systems. A graph G = ( V , E ) is normally with the sets of vertices V and edges E . The set of vertices V = 1 , 2 , , n is composed of the indices of agents. | V | represents the cardinality of the set V , which satisfies | V | = n . The set of edges is represented by E V × V . If an edge exists between two vertices, the two vertices are called adjacent. In this work, simple and undirected graphs are considered.
The adjacency matrix of G is denoted by G A = [ a i j ] R n × n , where a i j represents the connection of nodes i and j on a graph. Since the simple graph is considered, we have a i i = 0 . Since the graph is undirected, we have a i j = a j i and a i j = 1 if ( i , j ) E , otherwise, a i j = 0 . The degree matrix of G is denoted by G D = diag { j = 1 n a 1 j , , j = 1 n a n j } . The neighbor set N i = { j V : ( i , j ) E } of agent i, is composed of the indices of the agents j, which has interaction with the agent i. In other words, if a i j > 0 , then, agent j is a neighbor of agent i. The number of neighbors of agent i is equal to | N i | .
We define a diagonal matrix G L = diag { l 1 , , l n } , which indicates the knowledge of reference formation trajectory (RFT) of each agent. If l i = 1 , agent i can obtain the RFT (by sensing/detecting), i.e., a leader. Otherwise, if l i = 0 , agent i is a follower, for i V . Then, the leader set is defined as V L = { i V : l i > 0 } . The leader set V L V is a subset of V , which contains the indices of the leaders. Particularly, all the quadrotors are leaders, when V L = V . The indices of the followers are contained in the complementary set of V L , namely, V V L .

2.2. Interaction Matrix

We propose an interaction matrix G for representing the interconnecting relations of quadrotors with leader–follower (L–F) configuration as follows.
G = G D G A + G L
Remark 1.
Let us note that the first two terms G D G A are normally called the Laplacian in graph theory.
Proposition 1.
Let G be an undirected simple graph, then the interconnection matrix G in Equation (1), is positive-definite, if (i) G is connected; (ii) V L Φ , where Φ represents a null set.
Proof. 
Since G is connected, we have G D G A 0 . Considering the definition of G L , we have G L 0 . We prove this proposition by contradiction. Firstly, we suppose that there exists a nonzero vector x R n , which renders
x T G x = x T ( L + G L ) x = x T L x + x T G L x = 0
Therefore, we must have x T L x = 0 and x T G L x = 0 .
Since x T L x = 0 , we obtain that x = α 1 n , where α is a nonzero scalar. According to the fact that V L Φ , then, G L 0 . As a result, x T G L x = α 2 1 n T G L 1 n > 0 , which contradicts x T G L x = 0 . Therefore, such a nonzero vector x does not exist. Thus, for any nonzero vector x, x T G x > 0 , namely, G is positive-definite. □
When condition (i) is not satisfied such that G is not connected, the graph can be divided into s connected sub-graphs G 1 , G 2 , , G s . In that case, according to Proposition 1, we have the following corollary.
Corollary 1.
The interaction matrix G is positive-definite, if the leaders set satisfies V L s , and V i L Φ , where i = { 1 , 2 , , s } .
Proof. 
If a multi-agent system contains s connected sub-groups of agents, then, the interaction matrix is block diagonal, which has s blocks on the diagonal. Since each sub-group G i , i = { 1 , 2 , , s } is connected and V i L Φ , then, the block in the interaction matrix is positive definite. Hence, the interaction matrix is positive definite. □
The normalized interaction matrix is defined by
G ¯ = ( G D + G L ) 1 G
The normalized interaction matrix G ¯ is not symmetric, but it has the following property.
Proposition 2.
The normalized interaction matrix G ¯ has real eigenvalues, if G is undirected.
Proof. 
Since G ¯ is a normalized interaction matrix, then, G ¯ = ( G D + G L ) 1 · G . We recall that G is symmetric.
Using ( G D + G L ) 1 2 , we apply similarity transformation to G ¯ , then, we obtain that ( G D + G L ) 1 2 · G ¯ · ( G D + G L ) 1 2 = ( G D + G L ) 1 2 · G · ( G D + G L ) 1 2 is symmetric, because G D + G L are diagonal and G is symmetric.
Since G ¯ is similar to ( G D + G L ) 1 2 · G · ( G D + G L ) 1 2 , the eigenvalues of G ¯ are real, moreover, they are equal to the eigenvalues of ( G D + G L ) 1 2 · G · ( G D + G L ) 1 2 . □
Corollary 2.
The normalized interaction matrix G ¯ is positive-definite, if conditions in Proposition 1 or Corollary 1 are satisfied.
Proof. 
According to the conditions in Proposition 1 or Corollary 1, we know that G is invertible. Since G ¯ is similar to ( G D + G L ) 1 2 · G · ( G D + G L ) 1 2 according to Proposition 2, we obtain that G ¯ is also positive-definite. □

3. Aggressive Control of Quadrotors with Extended Finite-Time Observer

3.1. Quadrotor Model

The dynamics of a quadrotor is modelled as the motion of a rigid body in 3-D space under a thrust force and three moments, which are generated by the thrust forces of the four rotors. The notations used in the quadrotor’s model are shown in Table 1. The orientation of the quadrotor with respect to the inertial frame is represented by the rotation matrix R i SO ( 3 ) , where SO(3) represents a special orthogonal group, and whose determinant is one. Note that R i T R i = I , where I represents an identical matrix. The dynamics of a quadrotor i is shown as follows
m X ¨ i = m g e 3 + R i F T i e 3 R ˙ i = R i S ( Ω i ) J Ω ˙ i + S ( Ω i ) J Ω i = τ i
where X i = [ X i , Y i , Z i ] T represents the coordinates of the center of mass of a quadrotor in the fixed inertial frame x e y e z e . The Euler angles (pitch, roll, and yaw) are represented by the vector Θ i = [ ϕ i , θ i , ψ i ] T . The first equation of (3) represents the translational dynamics in the inertial frame, where m represents the mass of a quadrotor and g represents the gravity. The rotation matrix R i in the second equation of (3) can transform the coordinates of a point from the body-fixed frame to the inertial frame. The third equation of (3) represents the rotational dynamics of quadrotor i. The inertia matrix J of a quadrotor i is represented in the body-fixed frame, according to the assumptions on the physical structure of a quadrotor, we can obtain that J = diag { I x b , I y b , I z b } is diagonal, where scalars I x b , I y b and I z b represent the moments of inertia with respect to x b , y b and z b respectively. Additionally, we assume that all the quadrotors in the flock have the same physical coefficients such as the mass and the inertia matrix. The angular velocity of the quadrotor i in the body-fixed frame is represented by Ω i R 3 . The function S ( · ) : R 3 R 3 × 3 represents an operation that transforms a vector in R 3 to a skew-symmetric matrix R 3 × 3 . Given two arbitrary vectors v 1 , v 2 R 3 , the function S ( · ) satisfies the property S ( v 1 ) · v 2 = v 1 × v 2 . Then, according to the definition of cross product and the operation S ( · ) , we conclude that S ( Ω i ) R 3 × 3 is skew-symmetric matrix in terms of the members of Ω i = [ p i , q i , r i ] T as follows
S ( Ω i ) = 0 r i q i r i 0 p i q i p i 0
where p i , q i and r i represent the angular velocities with respect to the body-fixed frame of the quadrotor i.
We refer to ϕ i , θ i , ψ i as the roll, pitch, and yaw angles, τ i = [ τ ϕ i , τ θ i , τ ψ i ] T R 3 represents the roll, pitch, and yaw moments. The thrust force is represented by F T i . We note that e 3 = [ 0 , 0 , 1 ] T is a constant vector. The attitude dynamics of each quadrotor is generated by moments τ ϕ i , τ θ i and τ ψ i and thrust force F T i .
The rotation matrix R i from the body-fixed frame to the inertial frame is the sequence of roll-pitch-yaw (namely ϕ θ ψ ), i.e., R i = R z ( ψ i ) R y ( θ i ) R x ( ϕ i ) , where R z ( ψ i ) , R y ( θ i ) , R x ( ϕ i ) represents the rotation matrices of yaw, pitch, and roll.
R i = cos ψ i cos θ i cos ψ i sin θ i sin ϕ i cos ϕ i sin ψ i sin ψ i sin ϕ i + cos ψ i cos ϕ i sin θ i cos θ i sin ψ i cos ψ i cos ϕ i + sin ψ i sin θ i sin ϕ i cos ϕ i sin ψ i sin θ i cos ψ sin ϕ i sin θ i cos θ i sin ϕ i cos θ i cos ϕ i
Thus, according to Equation (3), we obtain the translational dynamics as follows
X ¨ i = sin ψ i sin ϕ i + cos ψ i cos ϕ i sin θ i F T i m Y ¨ i = cos ϕ i sin ψ i sin θ i cos ψ i sin ϕ i F T i m Z ¨ i = g + cos θ i cos ϕ i F T i m
According to the second equation in (3), we can obtain
Ω i = p i q i r i = R i T ψ ˙ i e 3 + θ ˙ i R x T ( ϕ i ) R y T ( θ i ) e 2 + ϕ ˙ i R x T ( ϕ i ) e 1 = T i · ϕ ˙ i θ ˙ i ψ ˙ i
where
T i = R x T ( ϕ i ) e 1 R x T ( ϕ i ) R y T ( θ i ) e 2 R i T e 3 = 1 0 sin θ i 0 cos ϕ i cos θ i sin ϕ i 0 sin ϕ i cos θ i cos ϕ i
Let us denote
T ˜ i = tan θ i 0 cos θ i + tan θ i sin θ i 0 cos θ i 0 sec θ i 0 tan θ i
According to (6) and using T ˜ i , we can obtain the rotational dynamics as follows
ϕ ¨ i θ ¨ i ψ ¨ i = ( J T i ) 1 τ i + T ˜ i · ϕ ˙ i θ ˙ i ϕ ˙ i ψ ˙ i θ ˙ i ψ ˙ i + ( J T i ) 1 S T T i · ϕ ˙ i θ ˙ i ψ ˙ i J T i · ϕ ˙ i θ ˙ i ψ ˙ i
The quadrotor is known as an under-actuated system. When the quadrotor tilts, a component of the total thrust is directed sideways and the aircraft translates horizontally. Therefore, the translational motion of quadrotor is generated by implicitly controlling its attitude (pitch and roll). This fact can be observed from (5), where the translation is controlled by the rotational angles.
In general, the control of the quadrotor is composed of inner and outer loop controllers, in which the outer loop is the translation control and the inner loop is the rotation control. Within this control framework, the control output of the outer loop is treated as an input of the rotational control loop. Nevertheless, in this paper, the idea is to get rid of the structure of inner-outer-loop control, we use the theory of flatness to directly design the torques of the quadrotor.
We assume that θ ± π 2 . According to (3), (5), and (7) the quadrotor dynamics in inertial frame is represented in state space as Equation (8). We denote the state of a quadrotor i by ϰ i R 12 , which is defined by ϰ i = [ X i T , X ˙ i T , Θ i T , Θ ˙ i T ] T . We denote the control input of the quadrotor i by u i = [ F T i , τ i T ] T R 4 . The state space quadrotor i dynamics is given by
ϰ ˙ i = f ( ϰ i ) + g ( ϰ i ) u i
where f : R 12 R 12 × 12 and g : R 12 R 12 × 4 satisfy
f ( ϰ i ) = X ˙ i g e 3 Θ ˙ i T ˜ i · ϕ ˙ i θ ˙ i ϕ ˙ i ψ ˙ i θ ˙ i ψ ˙ i + ( J T i ) 1 S T T i · Θ ˙ i J T i · Θ ˙ i g ( ϰ i ) = 0 3 × 1 0 3 × 3 1 m R i e 3 0 3 × 3 0 3 × 1 0 3 × 3 0 3 × 1 ( J T i ) 1
The output vector y i of the quadrotor i is composed by the positions, linear velocities, angles, and the angular velocities, which will be used in the controller design. Then, y i is given as follows
y i = C i ϰ i
where C i = C t C i r . Matrix C i is divided into two parts as follows
C t = I 3 0 3 × 3 0 6 × 9 and C i r = 0 6 × 6 I 3 0 3 × 3 0 3 × 3 T i
It is important to note that the translational dynamics are modeled in the inertial frame while the rotational dynamics are modeled in the body-fixed frame, although the states ( X i , X ˙ i , Θ i and Θ ˙ i ) of the quadrotor model (8) are represented in the inertial frame. Indeed, in the body-fixed frame, the inertia matrix J is diagonal and then the rotational dynamics are easier to calculate than in the inertial frame, where J is not diagonal and time-variant. Note that in this work, the dynamics of the motors are omitted for the sake of simplicity.
The identification of the quadrotor parameters is not detailed here. Therefore, in the sequel, the parameters of the quadrotor, such as mass, inertias, and physical size are supposed to be known.
For a quadrotor system, the flat output can be selected according to the following proposition.
Proposition 3.
The vector ϝ i = [ X i T , ψ i ] T is a flat output of system (8).
Proof. 
See Appendix A.1. □

3.2. Nonlinear-Flatness Based Decoupling Control

We firstly define the aggressive formation of quadrotors as follows.
Assumption 1
(Aggressive formation assumption). The attitude angles pitch θ i and roll ϕ i of each quadrotor can be greater than 15 (but smaller than 30 ) in aggressive formation modes.
According to Proposition 3, we conclude that the desired motion of a quadrotor can be uniquely specified by the 3D coordinates X i and the yaw angle ψ i . Therefore, the decentralized formation tracking problem is to find the guidance vector [ X i d , Y i d , Z i d , ψ i d ] T for each quadrotor. The guidance vector is composed by the neighbors states, which will be designed in Section 4.
The control input u i = [ F T i , τ ϕ i , τ θ i , τ ψ i ] T is designed in order to minimize the tracking errors of X i X i d and ψ i ψ i d , where X i d and ψ i d represent the desired 3D position and the heading direction (yaw angle). According to Equation (A1), the controller for the altitude is designed as follows
F T i = ( Z ¨ i d k 2 Z ( Z ˙ i Z ˙ i d ) k 1 Z ( Z i Z i d ) + g ) m cos θ i cos ϕ i
where Z i d represents the desired value of the altitude. Let us denote by e Z i = Z i Z i d the tracking error of the altitude and substitute (10) into the third equation in (5). Then, we have
e ¨ Z i = k 2 Z e ˙ Z i k 1 Z e Z i
Obviously, the altitude can exponentially track the given desired altitude trajectory Z i d for some selected positive scalars k 1 z and k 2 z . The desired altitude trajectory should satisfy Z i d C 3 ( R , R ) . Then, the altitude dynamics are decoupled with the other states of the quadrotor.
We rewrite the dynamic of the attitude angles in (7) as follows
Θ ¨ i = T ˜ i · ϕ ˙ i θ ˙ i ϕ ˙ i ψ ˙ i θ ˙ i ψ ˙ i + ( J T i ) 1 S T T i · Θ ˙ i J T i · Θ ˙ i + ( J T i ) 1 τ i
The inputs τ i = [ τ ϕ i , τ θ i , τ ψ i ] T are designed as follows
τ i = J T i τ i ¯ + J T ¯ i ϕ ˙ i θ ˙ i ϕ ˙ i ψ ˙ i θ ˙ i ψ ˙ i S T T i · Θ ˙ i J T i · Θ ˙ i
Substituting (12) into (11), we obtain
Θ ¨ i = τ ¯ i
where τ ¯ i = Θ ¨ i d k 2 Θ i ( Θ ˙ i Θ ˙ i d ) k 1 Θ i ( Θ i Θ i d ) . Notations k 1 Θ i and k 2 Θ i represent two diagonal gain matrices.
If Θ i d , Θ ˙ i d and Θ ¨ i d are calculated according lto the equations in (A4), namely, replacing ϝ i , ϝ ˙ i , ϝ ¨ i , ϝ i , and ϝ i by ϝ i d , ϝ ˙ i d , ϝ ¨ i d , ϝ i d , and ϝ i d , it is trivial to observe that the attitude angles can exponentially track the desired attitude angles that are in terms of ϝ i and its derivatives. However, the controller (12) is open-loop on the translational dynamics, because the position feedback is not used in the controller design. If the dynamics of the quadrotor is precisely modeled and no external disturbances and sensors noise exist, this controller can perfectly perform. However, in practice, the dynamics of the system can be never precisely modeled, additionally, the noise and disturbance always exist. Therefore, the closed-loop control should be used, such that the feedback of the positions and translational velocities are required.
We observe from the equations in (A4) that the yaw angle is a component of the flat output ϝ i , then, the desired values of the yaw angle ( ψ i d , ψ ˙ i d and ψ ¨ i d ) are trivial to obtain. However, the desired pitch and roll angles are not explicitly given by the components of the flat output ϝ i d and its derivatives. We will discuss how to obtain the terms ϕ i d , ϕ ˙ i d ϕ ¨ i d , θ i d , θ ˙ i d and θ ¨ i d as follows.
As analyzed before, the design of τ ψ i is simple. Normally, in order to represent the control input by using the flatness output, the high-order derivatives of ϝ i are calculated. Specifically, in our case, in order to represent the torques τ ϕ i and τ θ i , two supplementary derivatives of X ¨ i and Y ¨ i in Equation (A2) are necessary and we obtain
X i Y i ( 4 ) = A ϕ ¨ i θ ¨ i + ζ ( Θ i , Θ ˙ i , ψ ¨ i , Z ¨ i , Z i , Z i ) = v i
where matrix A satisfies
A = ( Z ¨ i + g ) × sin ψ i sec 2 ϕ i sec θ i cos ψ i sec 2 θ i + sin ψ i tan ϕ i tan θ i sec θ i cos ψ i sec 2 ϕ i sec θ i sin ψ i sec 2 θ i cos ψ i tan ϕ i tan θ i sec θ i
The function ζ represents the terms of the second-order derivative of the right side of Equation (A2) except the term that contains ϕ ¨ i and θ ¨ i .
The vector v i = [ v i 1 v i 2 ] T is composed by the new control inputs v i 1 and v i 2 , which are decoupled on axes X and Y. Then, the new trajectory tracking controllers in closed loop on the plane X Y are given as follows
v i 1 = X i d k 4 X ( X i X i d ) k 3 X ( X ¨ i X ¨ i d ) k 2 X ( X ˙ i X ˙ i d ) k 1 X ( X i X i d ) v i 2 = Y i d k 4 Y ( Y i Y i d ) k 3 Y ( Y ¨ i Y ¨ i d ) k 2 Y ( Y ˙ i Y ˙ i d ) k 1 Y ( Y i Y i d )
Observe that det A = ( Z ¨ i + g ) sec 2 ϕ i sec 3 θ i . Therefore, when Z ¨ i g and | ϕ i | < π 2 , | θ i | < π 2 , det A is finite and positive such that A is invertible. In fact, if | ϕ i | < π 2 , | θ i | < π 2 , we have Z ¨ i > g . Z ¨ i will be never equal to g , unless that all the rotors of the quadrotor stop rotating. This case is not considered in this work.
Then, according to Equation (13), we can design the torque τ ¯ i = [ τ ¯ ϕ i τ ¯ θ i τ ¯ ψ i ] T as follows
τ ¯ ϕ i τ ¯ θ i τ ¯ ψ i = A 1 ( v i ζ ) ψ ¨ i d k 2 ψ i ( ψ ˙ i ψ ˙ i d ) k 1 ψ i ( ψ i ψ i d )
Then, substituting (15) into (12), we obtain the three torques.
In practice, the velocities X ˙ i , Y ˙ i and its higher-order derivatives X ¨ i , X i , Y ¨ i and Y i are not directly measurable (not contained in the output y i (9)), they are obtained by using Equation (A2) and its derivatives. We will present in the following subsection how to obtain the these derivatives.
Under Assumption 1, we can assume that tan θ i θ i , tan ϕ i ϕ i , cos θ i 1 , and cos ϕ i 1 . The desired yaw angle is zero. Using controller (11), ψ i 0 . Then, cos ψ i 1 and sin ψ i 0 . We also assume that the altitude is stabilized and keep constant, such that Z i Z i d and Z i 0 . Then we have, Z ¨ i 0 . Therefore, according to the analysis in Appendix A.2, we consider
X ¨ i = θ i g Y ¨ i = ϕ i g
Then, the controllers in (14) becomes
v i 1 = X i d k 4 X ( θ i ˙ g X i d ) k 3 X ( θ i g X ¨ i d ) k 2 X ( X ˙ i X ˙ i d ) k 1 X ( X i X i d ) v i 2 = Y i d k 4 Y ( ϕ ˙ i g Y i d ) k 3 Y ( ϕ i g Y ¨ i d ) k 2 Y ( Y ˙ i Y ˙ i d ) k 1 Y ( Y i Y i d )
Then, we obtain
τ ¯ ϕ i τ ¯ θ i τ ¯ ψ i = 1 g v i 2 1 g v i 1 ψ ¨ i d k 2 ψ i ( ψ ˙ i ψ ˙ i d ) k 1 ψ i ( ψ i ψ i d )
The control strategy in (18) is based on the knowledge of high-order derivatives of the planar positions X i d and Y i d in guidance vector, which are normally not measurable. Note that, for each quadrotor, the guidance vector depends on neighbors states (and the reference formation trajectory (RFT), if the quadrotor is a leader). If the quadrotors move slowly and the RFT varies slowly, we can assume that the higher-order derivatives are null. However, the performance will not be satisfactory for aggressive formations. The fast convergence of the observer is crucial in aggressive formation. Therefore, we will propose in the next subsection an extended finite-time observer to estimate these high-order derivatives.

3.3. Extended Finite-Time Observer

An observer of the high-order derivatives guidance vector for each quadrotor is proposed to get the feedforwards. We take X i d for example, according to v i 1 in (17), we have to estimate X ˙ i d , X ¨ i d , X i d and X i d . Therefore, we construct an observer to estimate the high-order derivatives of the positions in guidance vector.
Before designing the finite-time observer, we introduce the following lemma about finite-time stability.
Lemma 1.
[24] Consider the system x ˙ = f ( x , u ) . Suppose that there exist continuous differentiable functions V ( x ) : R n R + , real numbers c > 0 , and 0 < α < 1 , such that V ( 0 ) = 0 , V ( x ) > 0 for any x 0 , and V ˙ ( x ) c V α ( x ) . Then, for all x ( t 0 ) = x 0 in the neighborhood μ of the origin, there exists settling time function T ( x 0 ) : μ R + , such that T ( x 0 ) V 1 α ( x 0 ) c ( 1 α ) .
Denoting that x i d = [ X i d , X ˙ i d , X ¨ i d , X i d ] T , the dynamics of x i d yields
x ˙ i d = A t x i d + B t X i d y i = C t x i d
where
A t = 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 , B t = 0 0 0 1 and C t = 1 0 0 0 T
The extended state is ( x i d ) E = [ ( x i d ) T , X i d ] T and its estimation x ^ i d = [ X ^ i d , X ˙ ^ i d , X ¨ ^ i d , X ^ i d , X ^ i d ] T . Then, we propose the extended observing model as follows
x ^ ˙ i d = A t B t 0 4 T 0 x ^ i d L t ( X ^ i d X i d )
where L t represents the gain matrix which satisfies L t = L t 1 L t 2 T , where L t 1 = [ k o 1 k o 2 k o 3 k o 4 ] and L t 2 = k o 5 . Let us denote x ˜ i d = x ^ i d ( x i d ) E , then, according to (19) and (20), x ˜ ˙ i d satisfies
x ˜ ˙ i d = A t B t 0 4 T 0 x ˜ i d 0 4 1 ( X i d ) ( 5 ) L t [ C t , 0 ] x ˜ i d
Denoting
A o = A t L t 1 T C t B t L t 2 T C t 0 , B o = 0 4 1
Suppose that J is the Jordan standard form of matrix A o by implementing a Jordan transformation using matrix M.
Theorem 1.
For each agent, the extended guidance vector observer is given in (20). If X i d C 5 ( R + , R 2 ) , then, (i) the matrix A o is stabilizable by proper selected gain matrix L t ; (ii) the observing error x ˜ i d converge to the compact sphere x ˜ i d β , where β > λ ¯ ρ λ ̲ ( γ 1 ) , within finite-time
T c o n v e r g e x ˜ i d ( 0 ) ( γ 1 ) β λ ̲ / λ ¯ ρ
where we denote by λ ̲ = min { | λ i ( M ) | } and λ ¯ = max { | λ i ( M ) | } , scalar γ > 1 . The scalar ρ represents the bound of | ( X i d ) ( 5 ) | .
Proof. 
(i). The matrix A o can be rewritten in the following form.
A o = L t 1 T I 4 L t 2 0 4 T
which is stable, for some gains k o i > 0 , i = { 1 , , 5 } in L t .
(ii). The control gains in L t are selected such that the nearest pole of A o to imaginary axis is placed to γ , where γ > 1 . The Equation (21) can be rewritten as x ˜ ˙ i d = A o x ˜ i d B o ( X i d ) ( 5 ) , where | ( X i d ) ( 5 ) | < ρ is bounded, since X i d ( t ) C 5 ( R + , R 2 ) . Choose an invertible matrix M, which transforms A o to Jordan standard form J o = M A o M 1 . We process the variable transformation ϵ = M x ˜ i d , then we have ϵ ˙ = J o ϵ M B o ( X i d ) ( 5 ) . The Lyapunov function candidate is chosen by V ( ϵ ) = 1 2 ϵ T ϵ . Its derivative yields, V ˙ ( ϵ ) = ϵ T J o ϵ ϵ T M B o ( X i d ) ( 5 ) . We suppose that the Jordan matrix J o has l Jordan blocks, the size of the blocks is m i , i = { 1 , , l } . The eigenvalue of each block is represented by λ i ( J o ) . The Lyapunov function candidate can be rewritten by
V ( ϵ ) = i = 1 m 1 1 2 ϵ i T ϵ i + + j = m 1 + + m l 1 + 1 m 1 + + m l 1 2 ϵ i T ϵ i = i = 1 l V i ( ϵ )
The quadratic term ϵ T J o ϵ in V ˙ ( ϵ ) yields,
ϵ T J o ϵ = λ 1 ( J o ) j = 1 m 1 ϵ j 2 + j = 1 m 1 1 ϵ j ϵ j + 1 + + λ l ( J o ) j = m 1 + + m l 1 + 1 m 1 + + m l ϵ j 2 + j = m 1 + + m l 1 + 1 m 1 + + m l 1 ϵ j ϵ j + 1
where the intersection term j = m 1 + + m i 1 + 1 m 1 + + m i 1 ϵ j ϵ j + 1 is null, when m i = 1 .
We note that j = m 1 + + m i 1 + 1 m 1 + + m i ϵ j 2 j = m 1 + + m i 1 + 1 m 1 + + m i 1 ϵ j ϵ j + 1 = ( 1 / 2 ) ϵ m 1 + + m i 1 + 1 2 + ( 1 / 2 ) j = m 1 + + m i 1 + 1 m 1 + + m i 1 ( ϵ j ϵ j + 1 ) 2 + ( 1 / 2 ) ϵ m 1 + + m i 2 0 . Thus, j = m 1 + + m i 1 + 1 m 1 + + m i ϵ j 2 j = m 1 + + m i 1 + 1 m 1 + + m i 1 ϵ j ϵ j + 1 , i.e., j = m 1 + + m i 1 + 1 m 1 + + m i 1 ϵ j ϵ j + 1 2 V i ( ϵ ) . Add both side from i = 1 to l, then we have
j = 1 m 1 1 ϵ j ϵ j + 1 + + j = m 1 + + m l 1 + 1 m 1 + + m l 1 ϵ j ϵ j + 1 2 V ( ϵ )
According to (23) and (24), we have
ϵ T J o ϵ i = 1 l 2 λ i ( J o ) V i ( ϵ ) + 2 V ( ϵ ) 2 ( 1 γ ) V ( ϵ )
Then, the derivative of the Lyapunov function candidate yields,
V ˙ ( ϵ ) = ϵ T J o ϵ ϵ T M B o ( X i d ) ( 5 ) 2 ( 1 γ ) V ( ϵ ) ϵ T M B o ( X i d ) ( 5 )
Therefore,
V ˙ ( ϵ ) 2 ( 1 γ ) V ( ϵ ) + λ ¯ | ( X i d ) ( 5 ) | ϵ = ( 1 γ ) ϵ 2 + λ ¯ ρ ϵ = ( 1 γ ) ϵ + λ ¯ ρ ϵ = 2 ( 1 γ ) ϵ + λ ¯ ρ V 1 2 ( ϵ ) = 2 ( γ 1 ) ϵ λ ¯ ρ V 1 2 ( ϵ )
When x ˜ i d β , then, ϵ = M x ˜ i d λ ̲ x ˜ i d λ ̲ β . Note that γ > 1 , thus, ( γ 1 ) ϵ λ ¯ ρ ( γ 1 ) λ ̲ β λ ¯ ρ . Thus, V ˙ ( ϵ ) 2 [ ( γ 1 ) λ ̲ β λ ¯ ρ ] V 1 2 ( ϵ ) . Hence, V ˙ ( ϵ ) is negative definite, since β > λ ¯ ρ λ ̲ ( γ 1 ) . In addition, V ˙ ( ϵ ) = 0 , if and only if V ( ϵ ) = 0 . Note that V ( ϵ ) = 1 2 ϵ T ϵ = 0 , only if ϵ = 0 which is equivalent to that the observer error x ˜ i d = 0 . Therefore, the observer error is asymptotic stable.
According to Lemma 1, ϵ will converge into the compact sphere within the finite-time T c o n v e r g e .
T c o n v e r g e 2 V 1 2 ( ϵ ( 0 ) ) ( γ 1 ) λ ̲ β λ ¯ ρ = M x ˜ i d ( 0 ) ( γ 1 ) λ ̲ β λ ¯ ρ x ˜ i d ( 0 ) ( γ 1 ) β λ ̲ / λ ¯ ρ
The proof is completed. □
Remark 2.
The observing error x ˜ i d is ultimately bounded, since | ( X i d ) ( 5 ) | is bounded by 2 ρ . According to (26), the observing error will converge to the invariant set ϵ λ ¯ ρ γ 1 . Therefore, by increasing observer gains, which renders a greater γ, the invariant set will become smaller. The observing error will smaller as well. Nevertheless, the gains cannot be chosen arbitrarily great in practice, since the sensor noise will become significant and lead to instability.
Remark 3.
We note that since a decoupling quadrotor dynamics control law is derived in (16), the observer for the derivatives of Y i d can be designed independent with X i d .
The high-order derivatives are replaced by the estimated values using the observer (20). Then, the decoupled control law (17) becomes
v i 1 = ( X ^ i d ) k 4 X ( θ i ˙ g ( X ^ i d ) ) k 3 X ( θ i g ( X ¨ ^ i d ) ) k 2 X ( X ˙ i X ˙ ^ i d ) k 1 X ( X i X i d ) v i 2 = ( Y ^ i d ) k 4 Y ( ϕ ˙ i g ( Y ^ i d ) ) k 3 Y ( ϕ i g ( Y ¨ ^ i d ) ) k 2 Y ( Y ˙ i Y ˙ ^ i d ) k 1 Y ( Y i Y i d )
where the scalars k i X and k i Y , i { 1 , 2 , 3 , 4 } represent some selected positive gains.
In the following section, we will show how to find the X i d and Y i d in the guidance vector (since the control of the altitude and yaw is decoupled in double integrators, it is omitted in the following section).

4. Formation Controller Design

Since the control of altitude (10) and rotation (12) is decoupled with the planar motion control, they are assumed to be controlled in constant, without loss of generality.

4.1. Available Guidance Vector

The formation controller of each quadrotor uses the relative states (positions, velocities, and the high-order derivatives with respect to its neighbors). If the quadrotor is a leader, besides the foregoing measurements, its formation controller also uses the relative states with respect to the RFT r ( t ) = [ r X ( t ) , r Y ( t ) , r Z ( t ) , r ψ ( t ) ] T , where r Z and r ψ are assumed to be constant. Then, for the sake of simplicity, the formation control in ( X , Y ) space is considered.
The objective of the formation tracking control is to guarantee that all the quadrotors track the RFT with some constant biases d i 0 = [ d i 0 X , d i 0 Y ] R 2 , such that the quadrotors keep a formation pattern. In detail, the formation objective is to achieve the following equations.
lim t X i r X d i 0 X Y i r Y d i 0 Y = 0 where i = 1 , , n
for some initial condition x i ( 0 ) , i = 1 , , n .
An example of the formation tracking task of four quadrotors is shown in Figure 1 (left), where the solid red circle represents the RFT at time t a . The dashed red circles represent the desired positions ( X ¯ i d ( t a ) , Y ¯ i d ( t a ) ) for the quadrotors i V at t a , where we denote by X ¯ i d = r X + d i 0 X and Y ¯ i d = r Y + d i 0 Y . The solid black circles represent the quadrotors’ real positions at t a , i.e., ( X i ( t a ) , Y i ( t a ) ) , i V .
However, in decentralized formation control, the RFT r ( t ) is not available for the followers, therefore, it is not possible to design the formation tracking controller using the errors X ¯ i d X i and Y ¯ i d Y i for quadrotor i. For the followers, only the neighbors states are available for the formation controller design, as shown in Figure 1 (right). Now, the formation problem becomes: how to find the available guidance vector for quadrotors i V in order to attain the formation task.
Let us make a sum of the relative position state vectors. Note that we drop the explicit expression of time in the expressions for the sake of simplicity. Similar to the foregoing analysis, we still take X for example.
j N i ( X i X j d i j X ) if i V V L j N i ( X i X j d i j X ) + X i r X d i 0 X if i V L
The inter-distance satisfies d i j X = d i 0 X d j 0 X . Then, Equation (29) can be rewritten as follows
j N i ( X i r X d i 0 X ( X j r X d j 0 X ) ) , if i V V L j N i ( X i r X d i 0 X ( X j r X d j 0 X ) ) + X i r X d i 0 X , if i V L
Then, the guidance vector for each quadrotor is given as follows
X i d = 1 | N i | j N i ( X j + d i j X ) , if i V V L 1 | N i | + 1 j N i ( X j + d i j X ) + r X + d i 0 X , if i V L
We then observe that X i d is available for quadrotor i, since X i d is composed only by neighbors states.
X i X i d = 1 | N i | j N i ( X i X ¯ i d ) ( X j X ¯ i d ) , if i V V L 1 | N i | + 1 j N i ( X i X ¯ i d ) ( X j X ¯ i d ) + X i X ¯ i d , if i V L
Then, according to definition of normalized interaction matrix in (2), we can rewrite Equation (31) in matrix form for all the quadrotors as follows
X 1 X 1 d X n X n d = G ¯ X 1 X ¯ 1 d X n X ¯ n d
where G ¯ represents the normalized interaction matrix.
According to Corollary 2 and the definition in Equation (2), we know that G ¯ is invertible if each connected sub-graph of the multi-quadrotor system has at least one leader. Therefore, the formation task is achieved, i.e., X 1 X ¯ 1 d , , X n X ¯ n d T 0 , as long as each quadrotor can precisely track the guidance vector X i d ( t ) and Y i d ( t ) , i.e., vector X 1 X 1 d , , X n X n d 0 , and Y 1 Y 1 d , , Y n Y n d 0 .

4.2. Convergence Analysis

Now, the guidance vector [ X i d , Y i d , Z i d , ψ i d ] T for each quadrotor is obtained (we note that Z i d and ψ i d are set constant, so omitted here). Their higher-order derivatives are estimated by using finite-time observer (20) in an aggressive formation. Then, these estimated derivatives are used as feedforwards in Equation (17), composing controller (12).
In practice, the estimation errors are usually high at t = 0 s, when the initial states of the observer may greatly deviate from the real values. In order to avoid the instability caused by the big initial deviation of the observer, we implement saturation functions to the estimated high-order derivatives to prevent great observation errors at the beginning.
To avoid the instability of quadrotors caused by the great initial observation error, we propose a modified controller in Equation (33) using the saturation function as follows
v i 1 = σ b 4 ( X ^ i d ) k 4 X ( θ i ˙ g σ b 3 ( ( X ^ i d ) ) ) k 3 X ( θ i g σ b 2 ( X ¨ ^ i d ) ) k 2 X ( X ˙ i σ b 1 ( X ˙ ^ i d ) ) k 1 X ( X i X i d ) v i 2 = σ b 4 ( Y ^ i d ) k 4 Y ( ϕ ˙ i g σ b 3 ( Y ^ i d ) ) k 3 Y ( ϕ i g σ b 2 ( Y ¨ ^ i d ) ) k 2 Y ( Y ˙ i σ b 1 ( Y ˙ ^ i d ) ) k 1 Y ( Y i Y i d )
The analysis of the convergence is given by the following theorem.
Theorem 2.
Consider the quadrotors with dynamics (8) are controlled by the formation controller (12) composed by (33). The bounds are chosen as follows,
b j = j , when t T c o n v e r g e n c e when t > T c o n v e r g e n c e
where j = { 1 , 2 , 3 , 4 } and j R + . Then, the formation error for each quadrotor is ultimately bounded and converge to the invariant set as follows.
S b = { e X i | e X i 2 κ ¯ β λ max ( P ) λ min ( Q ) }
where κ ¯ > 0 . Notations P and Q represent some positive-definite matrices.
Proof. 
Using (13), (16), (18) and (33), the closed-loop planar dynamics of a quadrotor yields the following decoupled form.
X i = σ b 4 ( X ^ i d ) k 4 X ( X i σ b 3 ( X ^ i d ) ) k 3 X ( X ¨ i σ b 2 ( X ¨ ^ i d ) ) k 2 X ( X ˙ i σ b 1 ( X ˙ ^ i d ) ) k 1 X ( X i X i d ) Y i = σ b 4 ( Y ^ i d ) k 4 Y ( Y i σ b 3 ( Y ^ i d ) ) k 3 Y ( Y ¨ i σ b 2 ( Y ¯ ¨ i d ) ) k 2 Y ( Y ˙ i σ b 1 ( Y ˙ ^ i d ) ) k 1 Y ( Y i Y ¯ i d )
Take X i for example and denote by e X i = [ X i X i d , X ˙ i X ˙ i d , X ¨ i X ¨ i d , X i X i d ] T . Then, we can write the dynamics of e X i in state-space form as follows
e ˙ X i = A c e X i + δ i
where
A c = 0 1 0 0 0 0 1 0 0 0 0 1 k 1 X k 2 X k 3 X k 4 X
and δ = [ 0 , 0 , 0 , Δ i ] T .
Δ i = σ b 4 ( X ^ i d ) X i d + k 4 X ( σ b 3 ( X ^ i d ) X i d ) + k 3 X ( σ b 2 ( X ¨ ^ i d ) X ¨ i ) + k 2 X ( σ b 1 ( X ˙ ^ i d ) X ˙ i )
  • When t T c o n v e r g e n c e , it is trivial to prove that δ i = | Δ | 4 + | X i d | + k 4 X ( 3 + | X i d | ) + k 3 X ( 2 + | X ¨ i | ) + k 2 X ( 1 + | X ˙ i | ) d < is bounded, since r ( t ) C 5 ( R + , R 2 ) .
  • When t > T c o n v e r g e n c e , b j = , the saturations are removed, such that Δ = X ^ i d X i d + k 4 X ( X ^ i d X i d ) + k 3 X ( X ¨ ^ i d X ¨ i ) + k 2 X ( X ˙ ^ i d X ˙ i ) = κ T x ˜ i d , where κ = [ 0 , k 2 X , k 3 X , k 4 X , 1 ] T , its norm is κ = κ ¯ . According to theorem 1, x ˜ i d β when t > T c o n v e r g e n c e . Then, we conclude that δ i = | Δ i | = κ ¯ x ˜ i d κ ¯ β < .
Therefore, the perturbed term δ in (36) is bounded and satisfying δ i δ max = max { d , κ ¯ β } , for all t t 0 .
The control gains are selected such that A c is Hurwitz. Since A c is Hurwitz, there exists a positive-definite matrix P, which solves the Lyapunov equation A c T P + P A c = Q , for a positive-definite matrix Q. A Lyapunov function is selected as V = e X i T P e X i . Then, its time derivative yields
V ˙ = e X i T ( A c T P + P A c ) e X i + 2 e X i T P δ i e X i T Q e X i + 2 λ max ( P ) e X i δ i λ min ( Q ) e X i 2 + 2 λ max ( P ) e X i δ i = e X i ( 2 δ max λ max ( P ) λ min ( Q ) e X i )
Then, V ˙ < 0 , if e X i > 2 δ max λ max ( P ) λ min ( Q ) . When t > T c o n v e r g e n c e , according to LaSalle’s invariance principle, for any initial condition x ( t 0 ) , the state x will finally stay in the set S b = { e X i | e X i 2 κ ¯ β λ max ( P ) λ min ( Q ) } . The error e X i in (36) is ultimately bounded. The same result on Y can be obtained similarly. □
Remark 4.
According to Theorem 2, the tracking error of quadrotor is proportional to the bound β of the observer error after finite time T c o n v e r g e n c e . If the observer error asymptotically converges to zero, then the formation tracking error will also converge to zero asymptotically.
Remark 5.
In practice, before the time instant T c o n v e r g e n c e , the bounds b j are chosen small enough in order to prevent the unstable dynamics, since the observer error probably enormous, which is generated by great initial deviation.

5. Simulation and Experimental Results

In this subsection, we first use numerical simulation by means of MATLAB to qualitatively illustrate that the formation controller with estimated feedforwards has better performance than that without them. By doing this, we are able to show that our proposed formation controller makes the multi-quadrotor system performing a high bandwidth, such that the aggressive formation is achieved.
Then in the second subsection, the proposed control laws are implemented on the simulator-experiment platform comparing with that using the formation controller without high-order feedforwards.

5.1. Simulation Results

We reconsider the formation of four quadrotors in Figure 1 (left). The reference formation trajectory RFT is given by r ( t ) = [ 3 sin ( 0.1 t ) , 3 cos ( 0.1 t ) , 1 , 0 ] T . The four quadrotors should keep a desired biases w.r.t. RFT defined by d i 0 , i { 1 , 2 , 3 , 4 } . As shown in Figure 1 (right), quadrotor 3 has two neighbors, i.e., 2 and 4. The quadrotor 3 is expected to keep inter-distances d 32 = [ 2 , 2 ] T and d 34 = [ 2 , 2 ] T with respect to 2 and 4. It is easy to verify that d 32 = d 30 d 20 and d 34 = d 30 d 40 .
The tuning process of the controller gains in Table 2 is given as follows.
  • Controller gains tuning on simulator: Let X ˙ i d , X ¨ i d , X i d , X i d , and Y ˙ i d , Y ¨ i d , Y i d , Y i d be null. Give some small X i d and Y i d , for example a small step signal, then, tune the gains k j X and k j Y , j = { 1 , 2 , 3 , 4 } . Observe the oscillation of the rotation angles during translational motion, adjust the gains k 3 X , k 4 X and k 3 Y , k 4 Y to reduce the oscillation.
  • Implement the controller gains on real quadrotor: Test on single quadrotor, slightly tune the parameters k 1 X , k 2 X if necessary. Then, if the performance is satisfied, implement them on the formation tracking control.
The observer gain matrix is selected according to the pole assignment as follows
  • Pole assignment: The gains of the observer are dominated by the finite time T c o n v e r g e that we want to have. Once it is fixed, the gains of the observer can be calculated by the technique of pole assignment, such that the nearest pole of A o to imaginary axis is placed to γ .
In the following simulation and experiments, we assume that the position and velocity in the guidance vector are measurable, i.e.,
C t = 1 0 0 0 0 1 0 0
the observe gains are selected as follows,
L t = 6 1 1 1.02 0.198 1.804 9.02 14.432 6.675 0.934 T
Some constant bounds of the saturation functions are selected as b 4 = 0.000035 , b 3 = 0.00035 , b 2 = 0.0035 , and b 1 = . The saturation functions are introduced to regulate the large initial deviation of the observer. There bounds are tuned progressively until a satisfactory performance is achieved.
We respectively show in Figure 2 and Figure 3 the simulation results (i) without estimation of high-order derivatives and (ii) with estimation of high-order derivatives. We observe from Figure 2 that the quadrotors track the RFT with delays and the inter-distances are not well maintained. On the contrary, in Figure 3, the delays are small and the quadrotors keep around the desired inter-distances.
In the following subsection, we will implement the formation control protocol on the real-time simulator-experiment platform.

5.2. Experimental Setup

Heudiasyc laboratory (In the Université de Technologie de Compiègne) has developed a PC-based simulator-experiment framework (This framework is primarily designed and developed by engineer Guillaume Sanahuja under the help of other colleagues and PhD students in Heudiasyc laboratory) for controlling quadrotors in real-time. The programs (written in C++) running in the quadrotors are the same, both in the simulator and in the embedded processors of real quadrotors. The goal of the framework is to firstly validate a program on the simulator before implementing on real quadrotors, in order to avoid destroying the real drones. It is important to note that within this framework, the control algorithms are implemented on the quadrotors rather than on a PC. There does not exist a central controller that sends control signals to the quadrotors.
In the simulator, the complete quadrotor dynamics are used. The flight of the quadrotors are animated in a virtual 3D environment, which permits us to observe the behavior of the quadrotors under some formation control laws. This framework permits the simulation to reflect better the real-time experiment. Both the simulator and the real-time experiment share the ground station interface on the PC, which is responsible for displaying and sending instructions such as taking off and landing.
The experimental setup is shown in Figure 4. In the experiments, the motion capture system Optitrack is used to localize the quadrotors in the formation. The ArDrone2 quadrotors manufactured by Parrot are used for real-time experiments.
The procedure of using the simulator-experiment framework is stated as follows:
  • Program the algorithms by using C++.
  • Compile the program into executable files for the quadrotors in the simulator and for the real quadrotors.
  • Test the algorithm in the simulator, adjust the parameters of the controller.
  • Send the executable file to each quadrotor.
  • Carry out the real-time experiment.
Remark 6.
Although the system Optitrack is a global localization system, we just use it to obtain the coordinates or inter-distances of the quadrotors. For instance, a quadrotor can use its on-board cameras to detect other quadrotors and calculate their inter-distances. Additionally, the self-localization can be realized by using GPS or other sensors (laser, etc.). The system Optitrack is used here to simplify the study.

5.3. Real-Time Experiments on Simulator-Experiment Platform

In these experiments are the formation task of four quadrotors, where quadrotor 1 is a leader. The objective is to track the trajectory r ( t ) with constant biases d 10 = [ 0 , 2 ] T , d 20 = [ 2 , 0 ] T , d 30 = [ 0 , 2 ] T and d 40 = [ 2 , 0 ] T .
Two tests are carried out on the simulator for the sake of comparison. In both tests, the objective is to track a circular trajectory (radius: 2 m; maximum linear velocity: 1.3 m/s; linear acceleration 0.1 m/s 2 ).
In the formation control without high-order feedforwards, the gains are chosen by k p = 1.5 and k d = 0.1 . We note that these gains are not arbitrarily chosen. For the fairness of comparison, we tune the parameters on the simulator to obtain the gains with best performance.
We proposed a nonlinear-flatness-based formation controller in (12), where the high-order derivatives are estimated by using (20). In the simulator and the experiment, the control frequency is 50 Hz. Then, the states of the observer (20) are updated as follows
X ^ i d ( k + 1 ) = ( I 5 + T · A t ) X ^ i d ( k ) T · L t · C t ( X ^ i d ( k ) X i d ( k ) )
where T = 1 50 = 0.02 s. The observer gains are given by (38).
In Figure 5, we observe from Figure 5 that even at the beginning (when t < 20 s), the quadrotors are able to follow the given trajectory, after 20 s, the performance becomes not satisfactory, although the formation errors keep stable.
On the contrary, by using the proposed formation control with the same controller gains, the performance is greatly improved and the quadrotors can always follow the given trajectory (see Figure 6).
The desired altitude is 1 m for all the quadrotors. The curves of the altitudes of the quadrotors are given in Figure 7. We can observe from Figure 7 (left) that the altitude of the quadrotor 2 oscillates after t = 25 s. It is important to note that this phenomena is caused by the actuator saturation of the quadrotors. Considering this problem, we have proposed several bounded formation controllers such as in [13], which will not be detailed in the current paper.
Figure 8 shows the animation in the simulator. On the left of Figure 8, the formation control without high-order feedforwards is used, where the quadrotors fail to preserve the rectangle formation pattern after several second of flight. On the contrary, the nonlinear-flatness-based formation control can preserve the rectangle formation and track the RFT that is only given to the leader.
A real-time experiment is also given in Figure 9, where four quadrotors are used in the tests. The reference is a circular trajectory. Two tests are given for comparison. We can observe that by using our proposed controller, the formation trajectory is more precisely followed. Figure 10 shows a photo of flight in a real-time experiment.

6. Conclusions

In this paper, a nonlinear-flatness-based formation control with feedforwards of estimated high-order guidance vector (neighbors’ states, and RFT, if the quadrotor is a leader) derivatives is developed. The formation controller is decentralized, which is designed based on neighbors’ states. In order to attain an aggressive formation, an extended finite-time observer of the guidance vector is investigated. In order to deal with the great initial deviation of the estimated states, the saturated feedforwards are developed. Then, the convergence of the formation tracking error is analyzed. Furthermore, the proposed formation control is illustrated by simulation and real-time experiment by means of MATLAB and the simulator-experiment platform, comparing with the formation control without high-order feedforwards. Both simulation and real-time experimental results show that the aggressive formation performance is improved by using our proposed formation controller.
One of the directions of the future work is to implement the proposed control with advanced nonlinear control methods, in order to deal with the effects of nonlinearities (uncertainties), to achieve asymptotic finite-time convergence, to control explicitly the formation tracking speed, etc.

Author Contributions

Conceptualization, methodology, and validation, Z.H.; writing—review and editing, G.Z.; visualization, W.Y.; project administration, W.W.; supervision, C.H. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by Natural Science Foundation of Guangdong Province (grant number 2018A030310046), and China Postdoctoral Science Foundation funded project (grant number 2019M662848).

Acknowledgments

I would like to extend my gratitude to Isabelle Fantoni for her supervision on my thesis. I would like also thank Guillaume Sanahuja and other colleagues who are in Heudiasyc laboratory for their help on the simulator-experiment platform.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A

Appendix A.1. Proof of Proposition 3

Proof of Proposition 3. 
According to (5), we obtain that
F T i = ( Z ¨ i + g ) m cos θ i cos ϕ i
Replacing F T i by (A1) in the first two equations in (5), we obtain
X ¨ i = sin ψ i tan ϕ i cos θ i + cos ψ i tan θ i ( Z ¨ i + g ) Y ¨ i = sin ψ i tan θ i cos ψ i tan ϕ i cos θ i ( Z ¨ i + g )
We assume that Z ¨ i g . Then, according to Equation (A2), we obtain that
tan ϕ i cos θ i = X ¨ i sin ψ i Y ¨ i cos ψ i Z ¨ i + g tan θ i = X ¨ i cos ψ i + Y ¨ i sin ψ i Z ¨ i + g
Then, we have
θ i = arctan X ¨ i cos ψ i + Y ¨ i sin ψ i Z ¨ i + g ϕ i = arctan X ¨ i sin ψ i Y ¨ i cos ψ i Z ¨ i + g cos arctan X ¨ i cos ψ i + Y ¨ i sin ψ i Z ¨ i + g
Since ϝ i = [ X i T , ψ i ] T , we denote ϝ i 1 = X i , ϝ i 2 = Y i , ϝ i 3 = Z i and ϝ i 4 = ψ i . Then, the state of the quadrotor ϰ i yields
X i = ϝ i 1 , Y i = ϝ i 2 , Z i = ϝ i 3 , X ˙ i = ϝ ˙ i 1 , Y ˙ i = ϝ ˙ i 2 , Z ˙ i = ϝ ˙ i 3 , θ i = arctan ϝ ¨ i 1 cos ϝ i 4 + ϝ ¨ i 2 sin ϝ i 4 ϝ ¨ i 3 + g ϕ i = arctan ϝ ¨ i 1 sin ϝ i 4 ϝ ¨ i 2 cos ϝ i 4 ϝ ¨ i 3 + g cos arctan ϝ ¨ i 1 cos ϝ i 4 + ϝ ¨ i 2 sin ϝ i 4 ϝ ¨ i 3 + g ψ i = ϝ i 4 θ ˙ i = arctan ϝ ¨ i 1 cos ϝ i 4 + ϝ ¨ i 2 sin ϝ i 4 ϝ ¨ i 3 + g ( 1 ) ϕ ˙ i = arctan ϝ ¨ i 1 sin ϝ i 4 ϝ ¨ i 2 cos ϝ i 4 ϝ ¨ i 3 + g cos arctan ϝ ¨ i 1 cos ϝ i 4 + ϝ ¨ i 2 sin ϝ i 4 ϝ ¨ i 3 + g ( 1 ) ψ ˙ i = ϝ ˙ i 4
Equation (A4) imply that the state ϰ i can be parameterized by variable ϝ i and its derivatives. According to (9), the output y i is in terms of X i , X ˙ i , Θ i and Θ ˙ i , therefore y i can also be parameterized by ϝ i . Additionally, according to (8), the control input u i is in terms of Z i , Z ˙ i , Θ i , Θ ˙ i and Θ ¨ i . Therefore, the variable ϝ i is the flat output of system (8). □

Appendix A.2. Model Simplification

According to Equation (A2), we can obtain the following equations
θ i = arctan X ¨ i cos ψ i + Y ¨ i sin ψ i Z ¨ i + g ϕ i = arctan X ¨ i sin ψ i Y ¨ i cos ψ i Z ¨ i + g cos arctan X ¨ i cos ψ i + Y ¨ i sin ψ i Z ¨ i + g
Without loss of generality, we assume that the yaw angle is controlled at origin, and the altitude is stabilized at some constant value, then,
θ i = arctan X ¨ i / g and ϕ i = arctan ( Y ¨ i / g ) cos θ i
Furthermore, considering Assumption 1, we obtain that
X ¨ i = θ i g + Δ X i Y ¨ i = ϕ i g + Δ Y i
where the nonlinearities Δ X i and Δ Y i are bounded since the absolute values of θ i and ϕ i are bounded within 30 by assumption 1. Then, we know that (A7) is Lyapunov stable, if the simplified system (16) is asymptotically stable.

References

  1. Liu, H.; Ma, T.; Lewis, F.L.; Wan, Y. Robust Formation Control for Multiple Quadrotors with Nonlinearities and Disturbances. IEEE Trans. Cybern. 2020, 50, 1362–1371. [Google Scholar] [CrossRef] [PubMed]
  2. Villa, D.K.D.; Brandão, A.S.; Sarcinelli-Filho, M. Path-Following and Attitude Control of a Payload Using Multiple Quadrotors. In Proceedings of the 2019 19th International Conference on Advanced Robotics (ICAR), Belo Horizonte, Brazil, 2–6 December 2019; pp. 535–540. [Google Scholar] [CrossRef]
  3. Wang, Z.; Singh, S.; Pavone, M.; Schwager, M. Cooperative Object Transport in 3D with Multiple Quadrotors Using No Peer Communication. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, Australia, 21–25 May 2018; pp. 1064–1071. [Google Scholar] [CrossRef]
  4. Villa, D.K.D.; Brandão, A.S.; Sarcinelli-Filho, M. Rod-shaped payload transportation using multiple quadrotors. In Proceedings of the 2019 International Conference on Unmanned Aircraft Systems (ICUAS), Atlanta, GA, USA, 11–14 June 2019; pp. 1036–1040. [Google Scholar] [CrossRef]
  5. Kushleyev, A.; Kumar, V.; Mellinger, D. Towards a Swarm of Agile Micro Quadrotors. In Proceedings of the Robotics: Science and Systems, Vilamoura, Portugal, 7–12 October 2012. [Google Scholar]
  6. Sreenath, K.; Kumar, V. Dynamics, Control and Planning for Cooperative Manipulation of Payloads Suspended by Cables from Multiple Quadrotor Robots. In Proceedings of the Robotics: Science and Systems, Berlin, Germany, 24–28 June 2013. [Google Scholar]
  7. Cao, Y.; Yu, W.; Ren, W.; Chen, G. An Overview of Recent Progress in the Study of Distributed Multi-Agent Coordination. IEEE Trans. Ind. Inform. 2013, 9, 427–438. [Google Scholar] [CrossRef] [Green Version]
  8. Shao, X.; Tian, B.; Li, D. Neural Dynamic Surface Containment Control for Multiple Quadrotors. In Proceedings of the 2019 IEEE International Conference on Unmanned Systems (ICUS), Beijing, China, 17–19 October 2019; pp. 373–378. [Google Scholar] [CrossRef]
  9. Katt, C.; Castaneda, H. Containment Control Based on Adaptive Sliding Mode for a MAV Swarm System under perturbation. In Proceedings of the 2019 International Conference on Unmanned Aircraft Systems (ICUAS), Atlanta, GA, USA, 11–14 June 2019; pp. 270–275. [Google Scholar] [CrossRef]
  10. Meng, Z.; Ren, W.; You, Z. Distributed finite-time attitude containment control for multiple rigid bodies. Automatica 2010, 46, 2092–2099. [Google Scholar] [CrossRef]
  11. Roldao, V.; Cunha, R.; Cabecinhas, D.; Silvestre, C.; Oliveira, P. A leader-following trajectory generator with application to quadrotor formation flight. Robot. Auton. Syst. 2014, 62, 1597–1609. [Google Scholar] [CrossRef]
  12. Mercado, D.A.; Castro, R.; Lozano, R. Quadrotors flight formation control using a leader-follower approach. In Proceedings of the 2013 European Control Conference (ECC), Zurich, Switzerland, 17–19 July 2013; pp. 3858–3863. [Google Scholar] [CrossRef]
  13. Hou, Z.; Fantoni, I. Interactive Leader Follower Consensus of Multiple Quadrotors Based on Composite Nonlinear Feedback Control. IEEE Trans. Control Syst. Technol. 2018, 26, 1732–1743. [Google Scholar] [CrossRef] [Green Version]
  14. Saber, R.; Murray, R. Flocking with obstacle avoidance: Cooperation with limited communication in mobile networks. In Proceedings of the 42nd IEEE Conference on Decision and Control, Maui, HI, USA, 9–12 December 2003; Volume 2, pp. 2022–2028. [Google Scholar] [CrossRef]
  15. Olfati-Saber, R.; Fax, J.; Murray, R. Consensus and Cooperation in Networked Multi-Agent Systems. Proc. IEEE 2007, 95, 215–233. [Google Scholar] [CrossRef] [Green Version]
  16. Turpin, M.; Michael, N.; Kumar, V. Trajectory design and control for aggressive formation flight with quadrotors. Auton. Robots 2012, 33, 143–156. [Google Scholar] [CrossRef]
  17. Zhao, D.; Krishnamurthi, J.; Gandhi, F.; Mishra, S. Differential flatness based trajectory generation for time-optimal helicopter shipboard landing. In Proceedings of the 2018 Annual American Control Conference (ACC), Milwaukee, WI, USA, 27–29 June 2018; pp. 2243–2250. [Google Scholar] [CrossRef]
  18. Son, C.Y.; Jang, D.; Seo, H.; Kim, T.; Lee, H.; Kim, H.J. Real-time Optimal Planning and Model Predictive Control of a Multi-rotor with a Suspended Load. In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 20–24 May 2019; pp. 5665–5671. [Google Scholar] [CrossRef]
  19. Zeng, J.; Kotaru, P.; Mueller, M.W.; Sreenath, K. Differential Flatness Based Path Planning with Direct Collocation on Hybrid Modes for a Quadrotor With a Cable-Suspended Payload. IEEE Robot. Autom. Lett. 2020, 5, 3074–3081. [Google Scholar] [CrossRef]
  20. Hou, Z.; Xu, J.; Zhang, G. Interaction Matrix Based Analysis and Asymptotic Cooperative Control of Multi-agent Systems. Int. J. Control Autom. Syst. 2020, 18, 1103–1115. [Google Scholar] [CrossRef]
  21. Irofti, D. An anticipatory protocol to reach fast consensus in multi-agent systems. Automatica 2020, 113, 108776. [Google Scholar] [CrossRef]
  22. Liu, H.; Tian, Y.; Lewis, F.L.; Wan, Y.; Valavanis, K.P. Robust formation tracking control for multiple quadrotors under aggressive maneuvers. Automatica 2019, 105, 179–185. [Google Scholar] [CrossRef] [Green Version]
  23. Zhao, B.; Wang, D.; Shi, G.; Liu, D.; Li, Y. Decentralized Control for Large-Scale Nonlinear Systems with Unknown Mismatched Interconnections via Policy Iteration. IEEE Trans. Syst. Man Cybern. Syst. 2018, 48, 1725–1735. [Google Scholar] [CrossRef]
  24. Bhat, S.P.; Bernstein, D.S. Finite-Time Stability of Continuous Autonomous Systems. SIAM J. Control Optim. 2000, 38, 751–766. [Google Scholar] [CrossRef]
Figure 1. Left: Intuitive desired motion trajectories for quadrotors. Right: Available desired motion trajectories using neighbor-based states.
Figure 1. Left: Intuitive desired motion trajectories for quadrotors. Right: Available desired motion trajectories using neighbor-based states.
Applsci 11 00792 g001
Figure 2. Rigid formation of 4 quadrotors without high-order derivatives estimation, the objective is to track the RFT r ( t ) and meanwhile keep inter-distance between quadrotors.
Figure 2. Rigid formation of 4 quadrotors without high-order derivatives estimation, the objective is to track the RFT r ( t ) and meanwhile keep inter-distance between quadrotors.
Applsci 11 00792 g002
Figure 3. Rigid formation of 4 quadrotors with high-order derivatives estimation, the objective is to track the RFT r ( t ) and meanwhile keep inter-distance between quadrotors.
Figure 3. Rigid formation of 4 quadrotors with high-order derivatives estimation, the objective is to track the RFT r ( t ) and meanwhile keep inter-distance between quadrotors.
Applsci 11 00792 g003
Figure 4. The experimental setup of the real-time experiments.
Figure 4. The experimental setup of the real-time experiments.
Applsci 11 00792 g004
Figure 5. Formation control without high-order feedforwards.
Figure 5. Formation control without high-order feedforwards.
Applsci 11 00792 g005
Figure 6. Our proposed formation control.
Figure 6. Our proposed formation control.
Applsci 11 00792 g006
Figure 7. Altitudes of the quadrotors. Left: Formation control without high-order feedforwards. Right: Our proposed formation control.
Figure 7. Altitudes of the quadrotors. Left: Formation control without high-order feedforwards. Right: Our proposed formation control.
Applsci 11 00792 g007
Figure 8. Four quadrotors with rectangle formation pattern, tracking a circular trajectory, using formation control without high-order feedforwards (left), and the proposed formation control (right).
Figure 8. Four quadrotors with rectangle formation pattern, tracking a circular trajectory, using formation control without high-order feedforwards (left), and the proposed formation control (right).
Applsci 11 00792 g008
Figure 9. The real-time four quadrotors formation. Left: Formation control without high-order feedforwards; Right: our proposed method.
Figure 9. The real-time four quadrotors formation. Left: Formation control without high-order feedforwards; Right: our proposed method.
Applsci 11 00792 g009
Figure 10. A snap of the real flight of four quadrotors’ formation, tracking a circular trajectory while maintaining a rectangle pattern.
Figure 10. A snap of the real flight of four quadrotors’ formation, tracking a circular trajectory while maintaining a rectangle pattern.
Applsci 11 00792 g010
Table 1. The denotations of the variables in the dynamic model of quadrotor.
Table 1. The denotations of the variables in the dynamic model of quadrotor.
SymbolDescription
x e y e z e Fixed inertial frame
e 1 , e 2 , e 3 Basis vector of inertial frame e 1 = [ 1 , 0 , 0 ] T , e 2 = [ 0 , 1 , 0 ] T , e 3 = [ 0 , 0 , 1 ] T
X i = [ X i , Y i , Z i ] T Coordinates of the center of mass of a quadrotor in x e y e z e
Θ i = [ ϕ i , θ i , ψ i ] T Euler angles (pitch, roll and yaw)
R z ( ψ i ) , R y ( θ i ) , R x ( ϕ i ) Rotation matrices in yaw, pitch and roll
R i Rotation matrix R i = R z ( ψ i ) R y ( θ i ) R x ( ϕ i )
J = diag { I x b , I y b , I z b } Inertia matrix represented in the body-fixed frame x b y b z b
Ω i = [ p i , q i , r i ] T Angular velocity of the quadrotor i in the body-fixed frame
S ( · ) : R 3 R 3 × 3 Operation from vector in R 3 to skew-symmetric matrix R 3 × 3
τ i = [ τ ϕ i , τ θ i , τ ψ i ] T R 3 The moments of roll, pitch and yaw
F T i Total thrust force of quadrotor i
ϰ i = [ X i T , X ˙ i T ] State of quadrotor i
u i = [ F T i , τ i T ] T R 4 Control input of the quadrotor i
Table 2. The controllers parameters.
Table 2. The controllers parameters.
k 4 X k 3 X k 2 X k 1 X k 4 Y k 3 Y k 2 Y k 1 Y k 2 ψ k 1 ψ k 2 Z k 1 Z
1.02.51.81.31.02.51.81.317.310.23.12.2
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Hou, Z.; Zhang, G.; Yang, W.; Wang, W.; Han, C. Flatness-Based Aggressive Formation Tracking Control of Quadrotors with Finite-Time Estimated Feedforwards. Appl. Sci. 2021, 11, 792. https://doi.org/10.3390/app11020792

AMA Style

Hou Z, Zhang G, Yang W, Wang W, Han C. Flatness-Based Aggressive Formation Tracking Control of Quadrotors with Finite-Time Estimated Feedforwards. Applied Sciences. 2021; 11(2):792. https://doi.org/10.3390/app11020792

Chicago/Turabian Style

Hou, Zhicheng, Gong Zhang, Wenlin Yang, Weijun Wang, and Changsoo Han. 2021. "Flatness-Based Aggressive Formation Tracking Control of Quadrotors with Finite-Time Estimated Feedforwards" Applied Sciences 11, no. 2: 792. https://doi.org/10.3390/app11020792

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop