Skip to main content
Sensors (Basel, Switzerland) logoLink to Sensors (Basel, Switzerland)
. 2020 Jun 24;20(12):3576. doi: 10.3390/s20123576

Genetic Optimization-Based Consensus Control of Multi-Agent 6-DoF UAV System

Aws Abdulsalam Najm 1, Ibraheem Kasim Ibraheem 1, Ahmad Taher Azar 2,3,*, Amjad J Humaidi 4
PMCID: PMC7349098  PMID: 32599862

Abstract

A consensus control law is proposed for a multi-agent system of quadrotors with leader–follower communication topology for three quadrotor agents. The genetic algorithm (GA) is the proposed optimization technique to tune the consensus control parameters. The complete nonlinear model is used without any further simplifications in the simulations, while simplification in the model is used to theoretically design the controller. Different case studies and tests are done (i.e., trajectory tracking formation and switching topology) to show the effectiveness of the proposed controller. The results show good performance in all tests while achieving the consensus of the desired formations.

Keywords: hybrid control system, nonlinear PID, active disturbance rejection control, quadrotor system, unmanned aerial vehicle

1. Introduction

In the last decade, unmanned aircrafts (UAs) have attracted researchers in different technical and scientific communities. UAs have a wide range of applications in various fields, such as agriculture, healthcare, and entertainment. Due to the great variety of UA types, UAs then can be classified by their application, range, altitude, endurance, vehicle type, and size. Many UA controlling missions are difficult, and some are impossible to accomplish using only a single agent UA, but instead a cooperative control must be designed for multiple agents to accomplish these missions. Interest in cooperative control of multi-agent systems (MASs) has recently increased, because of its broad applications, such as fire detection [1]. A literature survey [2] summarized some of the potential applications of the multi-agent system, such as large object transportation, which was done in the GRASP laboratory at the University of Pennsylvania, surveillance and searching of objects, quadrotor localization in outdoor environment, which was done at the Czech Technical University, and object transportation missions [3]. There are many cooperation control problems, such as consensus control, formation control, flocking control, and so on. Another important research field is optimization, which has attracted many researchers due to the advantages provided by optimization, especially with complex and nonlinear systems. There has been much research in this field with different optimization techniques, such as genetic algorithm (GA) optimization [4,5], particle swarm optimization (PSO) [6], ant colony optimization (ACO) [7], as well as hybridization of two or more techniques [8,9].

1.1. Multi-Agent Systems

Generally, MASs are systems composed of multiple cooperating agents. Two significant abilities exist in agents that are controlled by computers (computerized agents). Firstly, they have the ability to do an independent task (i.e., deciding what to do to fulfill their task goals). Secondly, they have the ability to communicate with each other (i.e., they not only swap data, but they also participate with their peers by negotiation, cooperation, coordination, and so on) [10]. As mentioned earlier, there are many cooperative control problems. In this paper, light will be shed on the most common cooperating control problems, i.e., consensus control and formation control.

1.1.1. Consensus Control

Consensus problem is closely related to formation control (forming a specific geometrical shape, which is discussed next), flocking (a behavior presented when a group of birds are foraging or in-flight), and distributed estimation [11]; thus, it is an important and essential problem in the field of cooperative control. Consensus means reaching an agreement between multiple agents to achieve a common final state by communicating with each other through a communication network [12]. Figure 1 shows the consensus problem for four agents in their elevations only, where the four agents on the left side have different elevations above the ground (i.e., h1, h2, h3, and h4) before applying the consensus control algorithm, while the agents on the right hand side present the agents after applying the consensus controller and reaching consensus in the elevation (i.e., h).

Figure 1.

Figure 1

Consensus problem.

1.1.2. Formation Control

The formation control problem requires that all the agents reach a specific geometrical formation; thus, formation control differs from consensus by adding a distance to achieve the geometrical shape by all the agents; therefore, the formation control can be varied into consensus control by making the additional distance equal to zero. There are two cases for the formation control problem according to information known to agents. The first case is where the desired formation and its location are known for the team agents (i.e., centralized case). The second case is where the desired formation is known for the agents, while its location must be achieved by the team agents after negotiation [13]. Figure 2 shows five agents before and after applying formation control. In the initial positions, the agents are randomly distributed in two dimensions, and the heights of the agents are not taken into consideration. A formation controller is applied to achieve a triangle geometry shape, which is presented in the final formation.

Figure 2.

Figure 2

Before and after applying formation control on 5 agents.

Consensus and formation control algorithms can be categorized into leaderless and leader–follower depending on how the agents are connected in the communication network represented using graph theory [14].

1.1.3. Optimization Techniques

Finding the optimum performance index by tuning the controller parameters without any constraint is the purpose of the optimization techniques in this paper; therefore, the optimization technique used must be unconstrained. There are several methods to solve an unconstrained minimization problem, which can be classified as nongradient methods (e.g., random search method, grid search method, simplex method, etc.) and gradient methods (e.g., Fletcher–Reeves method, Newton’s method, Marquardt method, etc.).

For simple problems that involve a small number of variables, the nongradient methods are efficient, while the gradient methods require the first and sometimes the second derivative of the objective function (performance index). Both methods are not efficient in the case of this work due to the number of variables available in the tuning process and the complexity gained by getting the first or second derivative of the performance index used. Therefore, the modern optimization techniques are the best choice for the tuning and optimization problem of the proposed controller.

There is a wide range of modern methods available, such as genetic algorithms, simulated annealing, PSO, ACO, etc., which can be used in the tuning process. Due to the ability of the GA to avoid local optimal solutions, it was chosen as the optimization method to tune the parameters of the proposed controller.

1.1.4. Genetic Algorithm

The genetic algorithm (GA) is categorized as an evolutionary algorithm that is suitable in searching for a global solution. Inspiration in GA development comes from natural genetics working principles. Three main operators are used at each step to produce the next generation from the current one. These three operators are selection, crossover, and mutation, which are briefly explained in the following [4]:

  • (1)

    Selection: The selection operation forms a mating pool for the next generation by selecting genes (parents) from the existing generation.

  • (2)

    Crossover: The crossover process combines two of the parents to form the next generation (children).

  • (3)

    Mutation: The mutation forms new children by applying random changes to the parents.

A concise diagram for the GA steps is shown in Figure 3. In this paper, the MATLAB function ga was used in the optimization and tuning processes.

Figure 3.

Figure 3

Steps diagram of the genetic algorithm (GA).

1.2. Literature Survey

There is a large variation of research on cooperative control techniques for MASs. Getting an agreement between the agents (i.e., consensus) was the aim of some of the researchers, while others intended to obtain a specific formation for the MAS under some constraints (i.e., communication topology, leader/leaderless, …, etc.). This depends on the application where the control technique is used. Some of the recent research, such as authors in [15], proposed a distributed adaptive controller for a class of an under-actuated Lagrangian system to track a dynamic leader and control the actuated variables, while being subjected to parameter uncertainties and external disturbance with or without actuator faults. In [16], the authors studied the distributed consensus problem for a team of quadrotors with fixed and switching topologies after transforming the quadrotor model to a simplified one using feedback linearization technique. Furthermore, others in [17] presented a two-layer hierarchical model predictive control (MPC) to stabilize a quadrotors team subjected to some constraints. Authors in [18] designed an adaptive consensus controller based on multiple surface control (MSC) to achieve a specific leader–follower formation for a team of quadrotors, taking into consideration the uncertainties generated by the ground effects. The results presented showed good performance with good adaptation of the slack variables and the disturbance of landing or taking off. Five different controllers were developed in [19]. Two of them (i.e., the nonlinear suboptimal H control technique and the integral backstepping (IBS) controller) were based on Lyapunov theory and were proposed for trajectory tracking and leader–follower formation control. The others were proportional derivative square (PD2), which was compared with H control by applying them on the attitude system and the linear quadratic regulator (LQR) with the optimal iterative LQR, which were applied and compared for attitude, trajectory tracking, and formation control. Researchers in [20] used a simplified quadrotor model to develop a novel distributed consensus algorithm, while one of the uniform constant delays and asynchronous time-varying delays existed as a communication delay. A backstepping based on proportional integral derivative (PID) control was designed in [21] to solve the formation problem for a team of quadrotors in a decentralized manner. The system stability and retention of the desired geometric formation with or without the existence of the obstacles were presented in the simulations. Authors in [22] proposed a novel consensus leader–follower formation control based on a non-smooth backstepping design. The different numerical simulations verified the effectiveness of the proposed controller, and theoretical analysis showed that all the quadrotors converged to the desired formation.

1.3. Motivation and Contributions

In the literature survey mentioned previously, a simplified model for the UA system was used in most of the research. This issue and others motivated us to simulate the complete UA quadrotor system model by using a proposed consensus controller based on optimization techniques. Moreover, the leader–follower topology was used in some case studies, where the leader agent was designed as a complete quadrotor system controlled by the Nonlinear PID (NLPID) and Improved Active Disturbance Rejection Control (IADRC) scheme proposed in our previous work, with the followers controlled by the controller scheme proposed in this work.

The main contributions of this paper can be summarized as follows:

  • Proposing a new consensus controlling scheme based on optimization techniques for a MAS of 6-degree of freedom (DOF) quadrotors.

  • Simulating a leader–follower topology in some cases by adding additional terms to control the geometry of the agents, and if these terms are equalized to zero, the agents goes to the consensus case.

1.4. Notations

In this paper, vectors and matrices are denoted by bold symbols (e.g., A or a). Dot notation is used for time derivative. In this notation a dot is placed above the function name to denote the time derivative of a function (e.g., the first and second derivatives of x with respect to time t are denoted by x˙, x¨). The integration in this paper is denoted by the symbol (e.g., the integration of the function x with respect to time t between a lower limit a and upper limit b is denoted by abxdt). The sign is used in this paper as a Kronecker product operation.

1.5. Paper Organization

The rest of the paper is organized as follows: Some preliminaries on the quadrotor mathematical model, graph theory, mathematical representation of consensus control, and finally the problem statement of this paper are given in Section 2; thereafter, the proposed consensus control scheme is demonstrated in Section 3. Next, some simulations and tests are performed and discussed in Section 4. Finally, Section 5 includes the paper conclusions and some of the future aspects.

2. Preliminaries and Problem Statement

2.1. Quadrotor Mathematical Model

As mentioned in our previous works, the mathematical model of the quadrotor system is derived in Appendix A based on Newton–Euler equation and can be represented in Equation (1), while Newton’s law is used to obtain Equation (2), which is helpful to design a controller for the under-actuated quadrotor system using the acceleration in 3 dimensions [23,24]; all the parameters used are described in Table 1.

{{x˙=c(ψ)c(θ)u+[c(ψ)s(ϕ)s(θ)c(ϕ)s(ψ)]v+[s(ϕ)s(ψ)+c(ϕ)c(ψ)s(θ)]wu˙=rvqwgs(θ)+fwxm(a){y˙=c(θ)s(ψ)u+[c(ϕ)c(ψ)+s(ϕ)s(ψ)s(θ)]v+[c(ϕ)s(ψ)s(θ)c(ψ)s(ϕ)]wv˙=ru+pw+gs(ϕ)c(θ)+fwym(b){z˙=s(θ)u+c(θ)s(ϕ)v+c(ϕ)c(θ)ww˙=qupv+gc(θ)c(ϕ)+fwzftm(c){ϕ˙=p+s(ϕ)t(θ)q+c(ϕ)t(θ)rp˙=IyyIzzIxxrq+τx+τwxIxx(d){θ˙=c(ϕ)qs(ϕ)rq˙=IzzIxxIyypr+τy+τwyIyy(e){ψ˙=s(ϕ)c(θ)q+c(ϕ)c(θ)rr˙=IxxIyyIzzpq+τz+τwzIzz(f) (1)
{x¨=ftm[s(ϕ)s(ψ)+c(ϕ)c(ψ)s(θ)]y¨=ftm[c(ϕ)s(ψ)s(θ)c(ψ)s(ϕ)]z¨=ftm[c(ϕ)c(θ)]+g (2)

Table 1.

Parameter descriptions.

Parameters Description Units
[x y z] Linear position vector m
[ϕ θ ψ] Angular position vector Rad
[u v w] Linear velocity vector m/s
[p q r] Angular velocity vector Rad/s
[Ixx Iyy Izz] Moment of inertia vector kg·m2
ft Total thrust generated by rotors N
[τx τy τz] Control torques N m
[fwx fwy fwz] Wind force vector N
[τwx τwy τwz] Wind torque vector N m
g Gravitational force m/s2
m Total mass kg
c( )cos( ), s( )sin( ), and t( )tan( )

2.2. Graph Theory

The mathematical preliminaries of the consensus control are important to be studied and understood to pave the way for dealing with the consensus control. The consensus control design procedure consists of a number of consecutive steps, which are listed below:

  • Determining the number of agents.

  • Deriving a graph based on agent communication.

  • Deriving an adjacency matrix from the graph.

  • Converting the adjacency matrix into a Laplacian matrix.

  • Using the Laplacian matrix to design the consensus controller.

Thus, graph theory plays a key role in these steps, since it can reflect the communication topology of MASs [25].

Graph theory is commonly used in consensus control to describe the topology of the connection between the agents. Connection topology can be categorized as directed and undirected based on the information transmitted between the agents.

A graph G is built upon a finite set, which has a limited number of elements. This finite set is called vertex set V, which includes the vertices of the graph. Assuming a graph G has n vertices, then the vertex set V can be represented as V={V1,V2,,Vn}. A set of two vertices from V in the form E={Vi,Vj}V×V, where i,j=1,2,,n and ij, is called edge, while a set of edges is denoted by E. Sometimes another notation is used for the vertices and edges of the graph G as V(G) and E(G), respectively, and for simplicity edge {Vi,Vj} is denoted as ViVj.

The directed graph (digraph) is defined as a graph D that consists of a vertex set V(D) and directed edge set E(D). In a directed graph, the direction of the edge is shown by an arrow. The graph is undefined if the vertex set is undefined.

2.2.1. Adjacency and Degree Matrices

For an undirected graph G, each vertex Vi has a degree d(Vi). This degree is equal to the number of vertices adjacent to Vi in G. All the vertices’ degrees of the graph are represented in matrix form as a diagonal matrix, which is called a degree matrix and is given as

Δ(G)=[d(V1)000d(V2)000d(Vn)] (3)

where Δ( ) is the degree matrix of graph G, and n is the number of vertices or agents.

The adjacency matrix A(G) is a symmetrical matrix that reflects adjacency links between the vertices in graph G, and can be derived from the following relationship:

[A(G)]ij={1for ViVjE(G)0otherwise (4)

In all previously mentioned cases, the edge weights are considered to be one; but sometimes other weights are used instead of one. Generally, for weighted digraphs, the adjacency matrix is given as

[A(D)]ij={𝓌ijfor (Vj,Vi)E(D)0otherwise (5)

where 𝓌ij is the weight for the edge between vertices Vi and Vj. The diagonal degree matrix is given as

Δ(D)=[din(V1)000din(V2)000din(Vn)] (6)

where din(Vi) is the weighted in-degree of vertex Vi, which represents the sum of the weights of the edge that is coming from vertex Vj into vertex Vi and is given in the following relation:

din(Vi)={j|(Vj,Vi)E(D)}𝓌ij (7)

2.2.2. Laplacian Matrix

There are many ways to represent the Laplacian of a graph. The most straight forward method is given as follows:

L(G)=Δ(G)A(G) (8)

where Δ(G) is the degree matrix of graph G, and A(G) is the adjacency matrix for graph G.

2.3. Mathematical Representation of Consensus Control

Consensus control stability and convergence analysis is a complex method due to the fact that consensus control is dealing with MAS, not a single agent. This is the reason why researchers in their publications simplify the system modeling to simplify the analysis approach, unlike the system modeling in a single agent. Some of the commonly used approaches for consensus control are the single-integrator system, double-integrator, and higher-order MASs, which are described next [25].

2.3.1. Single-Integrator MAS

MASs of single-integrator dynamics can be mathematically represented as follows:

x˙i=ui,i=1,2,,N (9)

where xiRn are the states vector for agent i, uiRm is the input vector for agent i, and N refers to the number of agents in the MAS. The consensus control is represented by

ui=Kj=1Nij(xixj) (10)

where ij is the (i,j) element of the Laplacian matrix, and KRm×n is the control matrix, which needs to be determined.

To write the consensus in a general matrix form, substitute Equation (10) in Equation (9).

X˙=KL(G)X (11)

where X=[x1 x2xN]T, and L(G) is defined in Equation (8).

2.3.2. Double-Integrator MAS

MASs of double-integrator dynamics can be mathematically represented as

{x˙i=viv˙i=ui,i=1,2,,N (12)

where xi,viRn are the position and velocity vectors, respectively, for agent i, and uiRm is the input vector for agent i. The consensus control is represented by

ui=Kj=1Nij((xixj)+γ(vivj)) (13)

The general matrix representation for the double-integrator MAS can be achieved by using Equation (12) with the controller in Equation (13) as follows:

[X˙V˙]=[0n×nInKL(G)γKL(G)][XV] (14)

where X=[x1 x2xN]T and V=[v1 v2vN]T.

2.3.3. Higher-Order MAS

An extension for the single and double-integrator MASs is given as follows:

{x˙i=Axi+Buiyi=Cxi,i=1,2,,N (15)

where ARn×n, BRn×m, CRp×n, xiRn is the state vector for agent i, uiRm is the input vector for agent i, and yiRp is the output vector for agent i. The consensus control can be achieved using the control defined in Equation (10) applied on the MAS of Equation (15). Then, the matrix form representation is as follows:

X˙=(INAL(G)BK)X (16)

2.4. Problem Statement

A network of homogenous connected MAS is considered as a leader–follower connection, where each agent mathematical model can be represented in the compact form. The control signal of the leader is treated as a single agent control problem, while the followers’ controllers have to be designed and tuned based on the GA optimization technique such that they stabilize the unstable followers, reach consensus between all the MAS agents, and achieve desired formations while tracking different trajectories.

3. Proposed Controlling Scheme Design

The consensus control is proposed in this paper to achieve tracking formation for the MAS of the quadrotors while using the leader–follower connection topology between the agents (directed graph). The aim of the tracking formation is to keep the agents in a formation on the 3D space (x, y, z) and the angle of rotation around z-axis (ψ) while tracking the leader. Therefore, the leader control is different from the followers, which can be represented by normal quadrotor control using a combination of NLPID for the outer loop control (OLC) and IADRC for the inner loop control (ILC) of the quadrotor system, which was designed in our previous works [26,27,28] and is shown in Figure 4. The followers’ control is a mix of two controllers; the first is the local one and the second is the consensus controller, as shown in Figure 5.

Figure 4.

Figure 4

IADRC control for ILC and NLPID control for OLC of quadrotor system.

Figure 5.

Figure 5

Local and consensus controllers.

The follower agent control system for (ϕ, θ) states are the IADRC designed for the leader agent, before proceeding in the proposed controller for the states (x, y, z, ψ) a brief explanation and equations for the NLPID and the IADRC are given.

3.1. Nonlinear PID (NLPID) Controller

The NLPID controller is developed based on the PID controller to be better while dealing with highly complicated nonlinear systems such as the 6-DOF quadrotor system. The NLPID controller is given in Equation (17).

{UNLPID=f1(e)+f2(e˙)+f3(e dt)fi(ε)=ki(ε)|ε|αisign(ε)ki(ε)=ki1+ki21+exp(μiε2)i{1,2,3} (17)

where ε could be e,e˙, or e dt, αiR+ and the function ki(ε) is a positive function with coefficients ki1,ki2,μiR+. The term ki(ε) is introduced here to make the NLPID controller more sensitive for small errors. Small errors which is approximate to zero, the value of the term ki(ε) approaches to the upper bound ki1+ki22, while for large errors, the term ki(ε) approaches the lower bound ki1, this means that the limits of the term ki(ε) is bounded in the range [ki1,ki1+ki22].

3.2. Improved Active Disturbance Rejection Control (IADRC)

ADRC, is in general, a grouping of three dynamic systems: Extended State Observer (ESO), Tracking Differentiator (TD), and State Error Feedback (SEF) controller. In our previous paper, IADRC is proposed, which is a grouping of the abovementioned three dynamic systems taking into consideration that linear ESO (LESO) is used, TD is replaced by improved TD (ITD) and that SEF is changed by NLPID control.

3.2.1. Design of Linear Extended State Observer (LESO)

The key idea of this element is to convert the ESO with the error equation of the system to a disturbed asymptotical stable system, in which the high-gain eliminates the effect of the total disturbance error. The mathematical representation for the LESO used is given as,

{z˙1=z2+β1e1z˙2=z3+β2e1  z˙ρ=zρ+1+βρe1+b0Uz˙ρ+1=βρ+1e1 (18)
U=u0zρ+1b0 (19)

where u0 is control input, e1=(yz1), and βi are gain constants of the observer needed to be tuned, i{1,2,,ρ,ρ+1}. βi = ciω0, ci,i{1,2,,ρ,ρ+1} are relevant constants, and ω0 is the bandwidth of the observer and need to be chosen to get better estimation for the state and the disturbance with minimum OPI, and z1,z2,,zρ+1 represent the states of the plant estimated by the ESO.

3.2.2. Design of Improved Tracking Differentiator (ITD)

The aim of this element is to generate a smooth approximation of the reference signal and its derivatives for the control system, which can be mathematically represented as:

{r˙1=r2, r1(0)=r10r˙2=r3, r2(0)=r20  r˙ρ=Rρtanh(βr1(1α)rγ)Rρ1r2(t)Rrρ(t),rρ(0)=rρ0 (20)

where {r1,r2,,rρ} are the tracking signals (i.e., the reference signal and the derivatives of r) tracked by the differentiator signals and having initial values {r10,r20,,rρ0}. The parameters R,β,α and γ are the ITD parameters which have to be tuned to get the best tracking with small errors.

3.2.3. Design of Nonlinear PD Controller (NLPD)

The NLPID will be used as the SEF in the IADRC, which is the same in Equation (17), but for general chain of integrators system of order ρ. The general chain of integrators system can be mathematically represented as:

{u0=f1(e)+f2(e˙)++fρ (eρ )+fρ+1(e dt)fi(ε)=ki(ε)|ε|αisign(ε)ki(ε)=ki1+ki21+exp(μiε2), i{1,2,,ρ+1} (21)

where ε could be e,e˙,,eρ or e dt, and (ki1,ki2,μi,αi) are the controller parameters and are tuned to get minimum OPI. Due to the derivation in [24] of the IADRC, which changes the system into a chain of integrators, the integrator term in the NLPID will be neglected. The NLPD controller for general chain of integrators system of order ρ is represented as:

{u0=f1(e)+f2(e˙)++fρ(eρ)fi(ε)=ki(ε)|ε|αisign(ε)ki(ε)=ki1+ki21+exp(μiε2), i{1,2,,ρ} (22)

3.3. Consensus Control for xy Position Subsystems

The xy position dynamics of the follower agents are given by

{x¨i=Uxiy¨i=Uyi,i=1,2,,N (23)

where N is the number of agents, while the leader agent is denoted by 0. The proposed controller for xy position subsystems can be represented as

{Uxi=ulxi+ucxiUyi=ulyi+ucyi (24)

where ul and uc are the local and the consensus control signals for each agent, respectively. The consensus controller is designed as a single integrator system consensus controller, which is given by Equation (10) adding the formation position terms, while the local controller is designed to ensure that

limtx˙=limty˙=0

and is given by

{ulxi=kxx˙iulyi=kyy˙i (25)

where kx and ky are the controllers’ parameters, which need to be tuned and optimized to give better tracking performance. Then Equation (24) can be written as

{Uxi=kxx˙i+Kxj=1Nij((xixjϱxi))Uyi=kyy˙i+Kyj=1Nij((yiyjϱyi)) (26)

where ϱxi and ϱyi are the reference state in the x and y, respectively, and Kx and KyR are the consensus control parameters, which need to be tuned and optimized to give better performance.

3.4. Consensus Control for z and ψ Subsystems

The dynamics of z subsystem is given as

{ z˙=s(θ)u+c(θ)s(ϕ)v+c(ϕ)c(θ)wz¨=w˙=ftm[c(ϕ)c(θ)]+g (27)

It is very clear that it is coupled and nonlinear. Therefore, to overcome this problem and design the consensus controller, the quadrotor system is assumed to be near the hovering point where ϕ=θ0. Then the dynamics of z subsystem is represented as follows:

{z˙=ww˙=ftm+g (28)

which is a double integrator system and can be controlled using the consensus controller expressed in Equation (13), assuming that γ=1 and adding the formation position terms. The controller of the z subsystem is given as

Uzi=ft=j=1Nij(Kz1(zizjϱzi)+Kz2(wiwj)) (29)

while for the dynamics of ψ subsystem is given as

{ψ˙=s(ϕ)c(θ)q+c(ϕ)c(θ)rr˙=IxxIyyIzzpq+τz+τwzIzz (30)

The assumption of the hovering point is still true and the inertias of the quadrotor are nearly equal (i.e., IxxIyyIzz). Then, the dynamics of the ψ subsystem is represented as a double integrator in the following form:

{ψ˙=rr˙=τzIzz (31)

which can be controlled using the consensus controller given in Equation (13); for simplicity, γ is assumed to equal one (γ=1), because its effect will be reflected on the value of the consensus controller gain (Kψ2) and adding the formation position terms. The controller of the ψ subsystem is given as

Uψi=τz=j=1Nij(Kψ1(ψiψjϱψi)+Kψ2(rirj)) (32)

where ϱzi and ϱψi are the reference state in the z and ψ, respectively, and Kz1, Kz2, Kψ1 and Kψ2R are the consensus control parameters that need to be tuned and optimized to give better performance. The overall quadrotor system with the consensus controller is shown in Figure 6.

Figure 6.

Figure 6

The overall ith quadrotor system with the consensus controller.

As shown in Figure 6, the local control units (i.e., IADRC) of the z and ψ subsystems were removed because the IADRC units keep tracking reference signals, which in this case must be zero signal. Therefore, the agents’ states will be forced to reach zero. This causes canceling of the consensus control effect.

In contrast, the ϕ and θ subsystems do not have consensus controllers, while the local control units are still in place. This is due to the fact that the ϕ and θ subsystems have their own desired signals generated internally from the x and y position subsystems, as explained earlier, and can be treated as an internal part of the system. Therefore, adding consensus controllers will affect the x and y position subsystems and will never achieve the desired formation.

Remark 1.

The linearized subsystems in Equation (23), Equation (28) and Equation (31) of the 6-DOF quadrotor are used only for theoretical design of the controller to choose the appropriate one, while the complete nonlinear model represented by Equation (1) is used in all the simulations.

4. Simulation Results and Discussion

In this section, a MAS of three quadrotors using the leader–follower topology for communication network was studied, as shown in Figure 7. All quadrotor agents’ parameters values are defined in Table 2. The leader agent control system (NLPID–IADRC combination) parameters are given in Table 3, Table 4, Table 5 and Table 6.

Figure 7.

Figure 7

Three quadrotors leader–follower connection topology.

Table 2.

Quadrotor model parameters.

Parameter Value Description Unit
Ixx 8.5532×103 Moment of inertia around x-axis kg·m2
Iyy 8.5532×103 Moment of inertia around y-axis kg·m2
Izz 1.476×102 Moment of inertia around z-axis kg·m2
g 9.81×100 Gravitational force m/s2
m 9.64×101 Total mass kg
b 7.66×105 Thrust coefficient N·s2
d 5.63×106 Drag coefficient N·m·s2
l 2.2×101 Motor to center length m

Table 3.

LESOs Parameters of the leader quadrotor.

z ϕ θ ψ
ω0 300 861.36 671.76 749.05
b0 0.5 0.0041 0.005 0.0047

Table 4.

ITD parameters of the leader quadrotor.

z, ϕ, θ, ψ
α 0.9789
β 2.7936
γ 16.7728
R 26.5005

Table 5.

NLPD parameters of the leader quadrotor.

z ϕ θ ψ
k11 32.4800 5.6390 0.51080 0.6993
k12 11.4360 0.0764 0.0390 0.2109
k21 9.0756 0.7495 0.0660 0.2415
k22 0.1518 0.0471 0.0666 0.1024
μ1 0.2814 0.0763 0.5191 0.1272
μ2 0.4234 0.5997 0.7747 0.3760
α1 0.9684 0.9591 0.9574 0.9741
α2 0.9580 0.9547 1.0034 0.9417

Table 6.

NLPID parameters for the xy position of the leader quadrotor.

x y x y
k11 3.0735 2.3046 μ1 0.1214 0.1057
k12 0.5674 0.1108 μ2 0.9859 0.9744
k21 6.0204 4.5269 μ3 0.7656 0.6008
k22 2.0076 2.0040 α1 0.9106 0.9101
k31 2.2409×104 2.3828×104 α2 0.9999 0.9994
k32 5.5135×107 6.8046×107 α3 0.9140 0.9137

The Laplacian matrix for the MAS based on the connection topology shown in Figure 7 is given as

L(D)=[000121112]

where the first row represents the leader agent, which does not receive any information from the followers; it just transmits its information to them. The weights used for the connection were ones. This represents that there was information transfer between the agents.

The single agent system has only one error for each state, while for the MAS the number of errors depends on the number of agents in the system. In the next simulations, for each state of the quadrotor, there were three errors (i.e., for state κ the errors were κ1κ2, κ1κ3, and κ2κ3 where κ{x,y,z,ψ}). For the reason mentioned previously, the multi-objective performance index (OPI) used here depended on the integral time absolute error (ITAE) performance index, which is given as

{opii=j=13ωij×ITAEijOPI=i(ω^i×opii), i=x,y,z, ψ (33)

where ITAEij represents the ITAE=0tf|e(t)|dt for each of the three consensus errors. ωij was chosen to be 13 for all i and j, while ω^i was chosen to be 0.25 for all i.

The tuning process to obtain the optimum OPI was done using random initial values for [x,y,z,ψ] states, such as [0.001,0.001,0.001,0], [0.5,0.5,0.001,0], and [0.5,0.5,0.001,0] for the leader, the first follower, and the second follower, respectively. The reference signals used were zero for x, y, and ψ, while a step input was used for the altitude (z), and taking into considerations ϱxi, ϱyi, ϱzi, and ϱψi mentioned in Equation (26), Equation (29) and Equation (32), respectively, all were equal to zero during the tuning process.

All the values of the consensus control parameters are shown in Table 7. The performance indices and the OPI values after GA tuning are given in Table 8 based on the initial values and the reference signals mentioned.

Table 7.

Consensus controller parameters.

x y
kx Kx ky Ky
4.0259 0.9798 3.9732 1.0631
z ψ
Kz1 Kz1 Kψ1 Kψ2
14,169.9808 427.2904 13.8067 0.5709

Table 8.

Performance indices and OPI values for consensus control.

Consensus Control
ITAE1 ITAE2 ITAE3
x 1.076761 1.009015 1.879853
y 1.203705 1.177282 2.106002
z 0.838854 0.838702 0.001418
ψ 0.005238 0.005962 0.001104
OPI 0.845325

Some tests were done on the MAS with the proposed consensus control scheme. These are represented as follows.

4.1. Achieving Consensus

The purpose of this test was to check the errors between the agents’ states while following the leader agent and the time it took to reach consensus between the agents. The initial states for each agent are given in Table 9, while the reference signals applied for the altitude (z), position (x, y), and the Yaw angle (ψ) were zero signal with simulation time tf=10 s.

Table 9.

Achieving consensus test initial states.

Initial States
x y z ψ
Leader 0.001 0.001 0.001 0
Follower 1 0.5 0.5 0.8 π/4
Follower 2 0.5 0.5 0.4 π/4

Figure 8, Figure 9, Figure 10 and Figure 11 a show the time response for the altitude (z), position (x, y), and the Yaw angle (ψ) states, while Figure 8, Figure 9, Figure 10 and Figure 11 b show the errors between agents. The subscript L refers to the leader, while f refers to the followers. The smoothness in the time response for all cases was very clear with fast consensus-reaching (i.e., less than 4 s for the x and y position, while for the altitude z and the yaw angle ψ the time taken to reach consensus was less than 0.5 s). The errors occurring in all the states always converged to zero after a very short time even if the initial states were different.

Figure 8.

Figure 8

Consensus in x-position (a) x-position time response. (b) Error of the x-position.

Figure 9.

Figure 9

Consensus in y-position (a) y-position time response. (b) Error of the y-position.

Figure 10.

Figure 10

Consensus in z-position (a) z-position time response. (b) Error of the z-position.

Figure 11.

Figure 11

Consensus in ψ-angle (a) ψ-angle time response. (b) Error of the ψ angle.

4.2. Fixed Triangle Formation

A fixed formation for the agents was reached, while the leader was supposed to keep increasing in its altitude. The initial states for this test and the tests coming after were the same, as represented in Table 9, taking into consideration that the followers' initial altitude was the same altitude as that of the leader (i.e., initial z=0.001 for both followers). The reference signals of the leader for the x, y, and ψ were zero signal, while for z a ramp input was used with a slope =0.2 m with simulation time tf=30. The values of the reference states to form the triangle shape (ϱxi, ϱyi, ϱzi, and ϱψi) mentioned in Equation (26), Equation (29) and Equation (32), respectively, are given as

ϱxL=0, ϱxf1=1, ϱxf2=1; ϱyL=0, ϱyf1=ϱyf2=1;
ϱzL=ϱzf1=ϱzf2=0; ϱψL=ϱψf1=ϱψf2=0.

The time response for the xy position and the altitude z of the leader and the two followers are shown in Figure 12, while the motion of the agents in 3D is represented in Figure 13. From the results represented in Figure 12, the followers tracked the leader trajectory perfectly with fast response, keeping the distances given previously to form the triangle shape, while the altitude of the followers matched the leader path without a variation in the response. The motion in Figure 13 of the agents shows the agents, while changing their positions to form the triangle shape, which was formed by the three agents after a few seconds from starting the test, and the shape was kept fixed while the leader altitude was increasing.

Figure 12.

Figure 12

Time response of fixed triangle formation for MAS.

Figure 13.

Figure 13

Three dimensional view of fixed triangle formation for MAS.

4.3. Fixed Formation Tracking Ramp Trajectory

This test differed from the previous one by the reference signals used with the leader to track them, where the (x and y) position was a changeable not zero signal. Forming a fixed triangle shape while the agents were moving was required in this test. The reference states values for the triangle shape are given as follows:

ϱxL=ϱxf1=0, ϱxf2=1; ϱyL=ϱyf2=0, ϱyf1=1;
ϱzL=ϱzf1=ϱzf2=0; ϱψL=ϱψf1=ϱψf2=0.

The reference trajectory signals for the leader agent were a ramp input signal for the x and y position states with starting time =10 s and slope =0.01 m, a step input for the altitude z, and a zero signal for the yaw angle ψ, with a full simulation time tf=500 s.

Figure 14 shows the motion of the leader while tracking the reference trajectory and the followers keeping the required shape while tracking the leader trajectory. The shape was well performed by the three agents using the proposed controllers. The time response for this test is represented in Figure 15, which shows the fast-tracking of the followers to make the required shape with the leader agent without peaks and with a very smooth response.

Figure 14.

Figure 14

Three-dimensional view of fixed formation tracking ramp trajectory.

Figure 15.

Figure 15

Time response of fixed formation tracking ramp trajectory.

4.4. Leader Orientation-Based Formation Tracking a Helical Trajectory

The previous test showed good trajectory tracking performance while keeping the formation shape fixed. This test differed from the previous one by following the rotation of the leader and keeping the formation shape, but rotation occurred when the leader changed its position. This test is very important for the search and rescue applications of the MAS. In this test, the helical path was used as a reference trajectory for the leader agent. These reference signals are given in Table 10.

Table 10.

Leader orientation-based formation tracking a helical trajectory input signals.

State Reference Trajectory Time (s)
x cos(0.01πt) [25,tf *]
y sin(0.01πt) [25,tf *]
z 0.2 t [0,tf *]
ψ 0 [0,tf *]

* tf=200 s.

Another difference in this test as compared to all the cases mentioned previously is that the reference states (ϱxi, ϱyi, ϱzi, and ϱψi) were time-varying here to guarantee that the same triangle shape was kept depending on the leader orientation. The signals of the reference states of the x and y position are given in Table 11, while the altitude and the yaw angle reference states (ϱzi, and ϱψi) were zero for all agents.

Table 11.

The x and y reference states.

Leader Follower 1 Follower 2
ϱx 0 cos(θL)+sin(θL) cos(θL)+sin(θL)
ϱy 0 cos(θL)sin(θL) cos(θL)sin(θL)
θL=tan1yLxL

The 3D motion of the agents while forming the triangle shape is shown in Figure 16. The triangle shape was well performed by the agents depending on the orientation of the leader and the path it was following. In Figure 16, each subgraph represents the triangle shape formed by the agents at a different time to show that the orientation of the triangle was changing depending on the leader direction.

Figure 16.

Figure 16

Three-dimensional views of leader orientation-based formation tracking a helical trajectory, (a) Agents position at t=50 s. (b) Agents position at t=100 s. (c) Agents position at t=150 s. (d) Agents position at t=200 s.

The time responses are presented in Figure 17 for the x, y, and z states. The results show a good tracking for the desired signals, while the leader direction was changing the value of the reference states (ϱx and ϱy) for the two follower agents (i.e., in second 75 of the simulation ϱxf1=1, ϱxf2=1, and ϱyf1=ϱyf2=1, which represented a triangle shape directed into the ve (y) direction, while in second 125 of the simulation ϱxf1=ϱxf2=1, and ϱyf1=1, ϱyf2=1, which represented a triangle shape with the same dimensions but directed into the ve (x) direction). The mentioned two examples from the results showed that the shape was kept, while its direction was changed depending on the leader agent.

Figure 17.

Figure 17

Time response of leader orientation-based formation tracking a helical trajectory.

4.5. Switching Formation Topology

This test required changing the formation shape during hovering mode for the MAS. The reference trajectory signals used for the leader agent are given in Table 12, while the state references for x and y used are given in Table 13.

Table 12.

Switching formation topology input signals.

State Reference Trajectory Time (s)
x u(t50) [110,tf *]
z u(t) [0,tf *]
y, ψ 0 [0,tf *]

* tf=100 s.

Table 13.

The x and y reference states for changing formation.

Leader Follower 1 Follower 2
ϱx 0 u(t25)+u(t50) u(t25)
ϱy 0 1u(t50) 1+u(t50)+u(t75)

The results of this test are represented in the plots of Figure 18, which show that the agents formed a line shape on the y-direction in a fast response time through the interval (025) s of the time. In the second time interval (2550) s, a triangle shape headed by the leader agent and directed to the ve x-direction was performed by the agents in a smooth and fast response. In the third time interval (5075) s, the leader started to move to the ve y-direction, while the agents formed a line shape on the x-direction, and the shape was well performed. In the last time interval (75100) s, another triangle shape was performed but this time was headed by the second follower and was directed to the +ve y-direction.

Figure 18.

Figure 18

Time response of switching formation topology.

In this test, the 3D motion in Figure 19 was represented in multiple subgraphs to show the exact formation achieved by the MAS. These subgraphs present the motion sequence of the three agents, and it is clear that all the desired formations were performed perfectly without any error.

Figure 19.

Figure 19

Three-dimensional views of switching formation topology, (a) Agents formation at t=25 s. (b) Agents formation at t=50 s. (c) Agents formation at t=75 s. (d) Agents formation at t=100 s.

4.6. Fixed Formation Tracking with Exogenous Disturbances

In this test, the same trajectory and parameters of the fixed formation tracking ramp trajectory test (third test) were used in addition to the existence of different disturbances applied on the leader agent to show the ability of the proposed controller to cope with such practical case. The disturbances applied on the different states of the leader agent were a step of fwz=100N at t=50 s, pulses for the roll, and pitch and yaw angles (τwx=1N·m at t=150 s, τwy=1N·m at t=250 s, τwz=1N·m at t=300 s) with pulse widths of 50 s.

Figure 20 and Figure 21 show the 3D motion of the agents and the time response of each agent while tracking the trajectory and the disturbances applied. The agents performed the trajectory tracking while different disturbances existed in a perfect way, where small peaks and fast tracking are shown in Figure 21. This proves the high immunity of the proposed controlling scheme against external disturbances.

Figure 20.

Figure 20

Three-dimensional view of fixed formation tracking with disturbances.

Figure 21.

Figure 21

Time response of fixed formation tracking with disturbances.

5. Conclusions and Future Aspects

The consensus control proposed for three agents of quadrotors in this work showed good performance in time. From the simulation cases and the results presented, it can be concluded that the complex nonlinear model for the quadrotor system is treated as a multiple double integrator subsystem. As compared to the other simplified quadrotor models used by some researchers mentioned in the literature survey, the proposed controller outperformed the others by dealing with the complete nonlinear model of the quadrotor system with good performance. This work can be further developed by taking into consideration the following points: proving the closed-loop stability of the proposed control scheme with the nonlinear quadrotor model, developing the proposed controller to achieve containment and flocking control, and implementing the consensus control on a hardware platform using the proposed controlling scheme. Another direction is to extend other control design methods, as in [29,30], to control the single agent UA based on its nonlinear model while using the proposed consensus control scheme.

Appendix A

Appendix A.1. Coordinate Systems

There are two reference frames for the quadrotor system, which are called inertial frame (I) and body frame (K). The inertial frame is a fixed frame (e.g., ground), which means it is fixed relative to the body frame, while the body frame is fixed to the quadrotor system, and it depends on the quadrotor motion [31]. Figure A1 illustrates the two coordinate systems.

Figure A1.

Figure A1

Quadrotor coordinate systems.

Appendix A.2. Euler Angles

Leonhard Euler describes the angular position for a rigid body by using three angles (roll “ϕ”, pitch “θ”, and yaw “ψ”), which are called (Euler angles). These three angles can be given in different ways to describe the angular position in 3D Euclidean space. Euler angles can be used to specify the orientation of a frame relative to another frame, which can be obtained by three successive rotations [31]. In this model, ZYX rotation (ψθϕ) was used, as shown in Figure A2, and described by the following matrices:

Rx(ϕ)=[1000c(ϕ)s(ϕ)0s(ϕ)c(ϕ)] (A1)
Ry(θ)=[c(θ)0s(θ)010s(θ)0c(θ)] (A2)
Rz(ψ)=[c(ψ)s(ψ)0s(ψ)c(ψ)0001] (A3)
Rzyx(ϕ,θ,ψ)=Rz(ψ).Ry(θ).Rx(ϕ)=[c(θ)c(ψ)s(ϕ)s(θ)c(ψ)c(ϕ)s(ψ)c(ϕ)s(θ)c(ψ)+s(ϕ)s(ψ)c(θ)s(ψ)s(ϕ)s(θ)s(ψ)+c(ϕ)c(ψ)c(ϕ)s(θ)s(ψ)s(ϕ)c(ψ)s(θ)s(ϕ)c(θ)c(ϕ)c(θ)] (A4)

where c( )=cos( ), and s( )=sin( ).

Figure A2.

Figure A2

Rotation around Z, Y, and X representation.

Appendix A.3. Model Assumptions

To control a nonlinear, complex, and severely under-actuated system such as a quadrotor system, some assumptions need to be made during the quadrotor modeling process [31]:

  • The quadrotor is rigid.

  • The quadrotor structure is symmetric.

  • The ground effect is neglected.

  • The center of gravity origin and the principal axes coincide with the body frame origin and axes.

  • Input forces and torques proportional to the squared angular velocity of the rotors.

Appendix A.4. Mathematical Model

The quadrotor nonlinear mathematical model is based on Newton and Euler equations. The two frames (i.e., inertial frame and body frame) are related to each other by the following relations:

{V=R·VBW˙=T·WB (A5)

where V=[x y z]TR3 is the linear position vector in the earth frame, W=[ϕ θ ψ]TR3 is the angular position vector in the earth frame, VB=[u v w]TR3 is the linear velocity vector in the body frame, WB=[p q r]TR3 is the angular velocity vector in the body frame, R=Rzyx, and T is the angular transformation matrix, which is given by [31]

T=[1s(ϕ)t(θ)c(ϕ)t(θ)0c(ϕ)s(ϕ)0s(ϕ)c(θ)c(ϕ)c(θ)] (A6)

where t( )=tan( ). The quadrotor kinematic model is given as

{x˙=c(ψ)c(θ)u+[c(ψ)s(ϕ)s(θ)c(ϕ)s(ψ)]v+[s(ϕ)s(ψ)+c(ϕ)c(ψ)s(θ)]wy˙=c(θ)s(ψ)u+[c(ϕ)c(ψ)+s(ϕ)s(ψ)s(θ)]v+[c(ϕ)s(ψ)s(θ)c(ψ)s(ϕ)]wz˙=s(θ)u+c(θ)s(ϕ)v+c(ϕ)c(θ)wϕ˙=p+s(ϕ)t(θ)q+c(ϕ)t(θ)rθ˙=c(ϕ)qs(ϕ)rψ˙=s(ϕ)c(θ)q+c(ϕ)c(θ)r (A7)

The total force applied on the quadrotor system is stated by Newton’s law, while the total torque acting on the quadrotor is given by Euler’s equation. Both total force and total torque are given by the following relations:

{m(WB×VB+V˙B)=fBI.W˙B+WB×(I.WB)=mB (A8)

where m is the quadrotor mass, × is the cross product sign, fB=[fx fy fz]TR3 is the total force, mB=[mx my mz]TR3 is the total torque, and I is the inertia matrix, which is given as [31]

I=[Ixx000Iyy000Izz]R3×3

Then, the dynamical model for the quadrotor is given as [31]

{fx=m(u˙+qwrv)fy=m(v˙pwru)fz=m(w˙+pvqu)mx=p˙IxxqrIyy+qrIzzmy=q˙Iyy+prIxxprIzzmz=r˙IzzpqIxx+pqIyy (A9)

Appendix A.5. Quadrotor Forces and Moments

Several external forces are applied to the quadrotor and are given here:

fB=mgRT·k^Iftk^B+fw (A10)

where k^I is the inertial z-axis unit vector, k^B is the body z-axis unit vector, g is the gravitational acceleration, ft is the rotors total thrust, and fw=[fwx fwy fwz]TR3 are the wind forces applied on the quadrotor system. The external moments applied on the quadrotor system are given as

mB=τB+τwmg (A11)

where τB=[τx τy τz]TR3 are the rotor speeds differences torques, τw=[τwx τwy τwz]TR3 are the wind torques applied on the quadrotor system, and mg is the gyroscopic moments generated by a combination between the four rotors rotation and the quadrotor body, which can be described by the following relation:

mg=i=14Jp(WBk^B)(1)i+1Ωi (A12)

where Jp is the rotor inertia, which is found to be small enough to be neglected; thus, the gyroscopic moments are excluded from the total equations. Ωi is the ith rotor angular speed, while the (1)i+1 term represent the direction of rotation for each rotor. Then, the forces and moments are substituted in Equation (A9) to obtain the final dynamical model as follows [31]:

{mg[s(θ)]+fwx=m(u˙+qwrv)mg[c(θ)s(ϕ)]+fwy=m(v˙pwru)mg[c(θ)c(ϕ)]+fwz=m(w˙+pvqu)τx+τwx=p˙IxxqrIyy+qrIzzτy+τwy=q˙Iyy+prIxxprIzzτz+τwz=r˙IzzpqIxx+pqIyy (A13)

Appendix A.6. Rotor Dynamics Modeling

The inputs for the 6-DOF quadrotor system are combinations of the rotor speed (Ω), which in this case is a force ft to control the vertical thrust (z) and the torques (τx, τy, and τz) to control the angles (ϕ, θ, and ψ), respectively. Their mathematical relations are given as [31]

{ft=b(Ω12+Ω22+Ω32+Ω42) τx=bl(Ω32Ω12)τy=bl(Ω42Ω22)τz=d(Ω22+Ω42Ω12Ω32) (A14)

where b is the thrust coefficient, l is the distance from the quadrotor center to the rotor, and d is the drag coefficient.

The overall nonlinear mathematical model for the quadrotor can be represented as

{{x˙=c(ψ)c(θ)u+[c(ψ)s(ϕ)s(θ)c(ϕ)s(ψ)]v+[s(ϕ)s(ψ)+c(ϕ)c(ψ)s(θ)]wu˙=rvqwgs(θ)+fwxm(a){y˙=c(θ)s(ψ)u+[c(ϕ)c(ψ)+s(ϕ)s(ψ)s(θ)]v+[c(ϕ)s(ψ)s(θ)c(ψ)s(ϕ)]wv˙=ru+pw+gs(ϕ)c(θ)+fwym(b){z˙=s(θ)u+c(θ)s(ϕ)v+c(ϕ)c(θ)ww˙=qupv+gc(θ)c(ϕ)+fwzftm(c){ϕ˙=p+s(ϕ)t(θ)q+c(ϕ)t(θ)rp˙=IyyIzzIxxrq+τx+τwxIxx(d){θ˙=c(ϕ)qs(ϕ)rq˙=IzzIxxIyypr+τy+τwyIyy(e){ψ˙=s(ϕ)c(θ)q+c(ϕ)c(θ)rr˙=IxxIyyIzzpq+τz+τwzIzz(f) (A15)

There is another dynamic model for the quadrotor system, which is helpful in the controller design. Using Newton’s law, the following is obtained:

mV˙=R·fB=mgk^IftR·k^B (A16)
{x¨=ftm[s(ϕ)s(ψ)+c(ϕ)c(ψ)s(θ)]y¨=ftm[c(ϕ)s(ψ)s(θ)c(ψ)s(ϕ)]z¨=ftm[c(ϕ)c(θ)]+g (A17)

Author Contributions

Conceptualization, A.A.N. and I.K.I.; Formal analysis, A.A.N., I.K.I. and A.T.A.; Funding acquisition, A.T.A.; Methodology, A.A.N., I.K.I., A.T.A. and A.J.H.; Resources, A.A.N., A.T.A. and A.J.H.; Software, A.A.N., I.K.I. and A.J.H.; Supervision, I.K.I. and A.J.H.; Investigation I.K.I., A.T.A., A.J.H.; Validation, A.T.A. and A.J.H.; Visualization, A.T.A., A.A.N. and A.J.H.; Writing—original draft, A.A.N. and I.K.I.; Writing—review & editing, A.A.N., I.K.I., A.T.A. and A.J.H. All authors have read and agreed to the published version of the manuscript.

Funding

This study was supported and funded by Prince Sultan University, Riyadh, Saudi Arabia. We would like to show our gratitude to Prince Sultan University, Riyadh, Saudi Arabia for funding this paper. Special thanks to the Robotics and Internet-of-Things Lab (RIOTU) at the Prince Sultan University, Riyadh, Saudi Arabia.

Conflicts of Interest

The authors declare no conflict of interest.

References

  • 1.Ghamry K.A., Zhang Y. Cooperative control of multiple UAVs for forest fire monitoring and detection; Proceedings of the 12th IEEE/ASME International Conference on Mechatronic and Embedded Systems and Applications (MESA); Auckland, New Zealand. 29–31 August 2016; Piscataway, NJ, USA: Institute of Electrical and Electronics Engineers (IEEE); 2016. pp. 1–6. [DOI] [Google Scholar]
  • 2.Hou Z., Wang W., Zhang G., Han C. A survey on the formation control of multiple quadrotors; Proceedings of the 14th International Conference on Ubiquitous Robots and Ambient Intelligence (URAI); Jeju, Korea. 28 June–1 July 2017; Piscataway, NJ, USA: Institute of Electrical and Electronics Engineers (IEEE); 2017. pp. 219–225. [DOI] [Google Scholar]
  • 3.Lee H., Kim H., Kim H.J. Planning and Control for Collision-Free Cooperative Aerial Transportation. IEEE Trans. Autom. Sci. Eng. 2016;15:189–201. doi: 10.1109/TASE.2016.2605707. [DOI] [Google Scholar]
  • 4.Xu B., Lin H., Wagholikar K.B., Yang Z., Liu H. Identifying protein complexes with fuzzy machine learning model. Proteome Sci. 2013;11:S21. doi: 10.1186/1477-5956-11-S1-S21. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 5.Alkamachi A., Erçelebi E. Modelling and Genetic Algorithm Based-PID Control of H-Shaped Racing Quadcopter. Arab. J. Sci. Eng. 2017;42:2777–2786. doi: 10.1007/s13369-017-2433-2. [DOI] [Google Scholar]
  • 6.Ibraheem I.K., Ibraheem G.A. Motion Control of An Autonomous Mobile Robot using Modified Particle Swarm Optimization Based Fractional Order PID Controller. Eng. Tech. J. 2016;34:2406–2419. [Google Scholar]
  • 7.Ibraheem I.K., Ajeil F.H. Path Planning of an autonomous Mobile Robot using Swarm Based Optimization Techniques. Al-Khwarizmi Eng. J. 2017;12:12–25. doi: 10.22153/kej.2016.08.002. [DOI] [Google Scholar]
  • 8.Ajeil F.H., Ibraheem I.K., Sahib M.A., Humaidi A.J. Multi-objective path planning of an autonomous mobile robot using hybrid PSO-MFB optimization algorithm. Appl. Soft Comput. 2020;89:106076. doi: 10.1016/j.asoc.2020.106076. [DOI] [Google Scholar]
  • 9.Abbas N.H., Sami A.R. Tuning of PID Controllers for Quadcopter System using Hybrid Memory based Gravitational Search Algorithm–Particle Swarm Optimization. Int. J. Comput. Appl. Technol. 2017;172:9–18. [Google Scholar]
  • 10.Wooldridge M.J. An Introduction to Multiagent Systems. 2nd ed. John Wiley & Sons; Chichester, UK: 2009. [Google Scholar]
  • 11.Chong C.-Y. Forty years of distributed estimation: A review of noteworthy developments; Proceedings of the 2017 Sensor Data Fusion: Trends, Solutions, Applications (SDF); Bonn, Germany. 10–12 October 2017; 2017. pp. 1–10. [DOI] [Google Scholar]
  • 12.Li Z., Duan Z. Cooperative Control of Multi-Agent Systems: A Consensus Region Approach. CRC Press; Florida, FL, USA: 2017. [Google Scholar]
  • 13.Ren W., Beard R.W. Distributed Consensus in Multi-vehicle Cooperative Control. Springer; London, UK: 2008. [Google Scholar]
  • 14.Mesbahi M., Egerstedt M. Graph Theoretic Methods in Multiagent Networks. Princeton University Press; New Jersey, NJ, USA: 2010. [Google Scholar]
  • 15.Chen T., Shan J. Distributed Tracking of a Class of Underactuated Lagrangian Systems With Uncertain Parameters and Actuator Faults. IEEE Trans. Ind. Electron. 2020;67:4244–4253. doi: 10.1109/TIE.2019.2922943. [DOI] [Google Scholar]
  • 16.Wang Y., Wu Q., Wang Y., Yu D. Consensus algorithm for multiple quadrotor systems under fixed and switching topologies. J. Syst. Eng. Electron. 2013;24:818–827. doi: 10.1109/JSEE.2013.00095. [DOI] [Google Scholar]
  • 17.Eskandarpour A., Majd V.J. Cooperative formation control of quadrotors with obstacle avoidance and self collisions based on a hierarchical MPC approach; Proceedings of the Second RSI/ISM International Conference on Robotics and Mechatronics (ICRoM); Tehran, Iran. 15–17 October 2014; Piscataway, NJ, USA: Institute of Electrical and Electronics Engineers (IEEE); 2014. pp. 351–356. [DOI] [Google Scholar]
  • 18.Rabah A., Qing-he W. Adaptive Leader Follower Control for Multiple Quadrotors via Multiple Surfaces Control. J. Beijing Inst. Technol. 2016;25:526–532. [Google Scholar]
  • 19.Alrawi W.M.J. Ph.D. Thesis. University of Essex; Colchester, UK: 2016. Improving Leader-Follower Formation Control Performance for Quadrotors. [Google Scholar]
  • 20.Huang Z. Master’s Thesis. Dalhousie University; Halifax, NS, Canada: 2017. Consensus Control of Multiple-Quadcopter Systems Under Communication Delays. [Google Scholar]
  • 21.Mahfouz M., Hafez A.T., Ashry M., Elnashar G. Formation Configuration for Cooperative Multiple UAV Via Backstepping PID Controller. [(accessed on 16 June 2020)];2018 Available online: https://arc.aiaa.org/doi/abs/10.2514/6.2018-5282.
  • 22.Du H., Zhu W., Wen G., Duan Z., Lu J. Distributed Formation Control of Multiple Quadrotor Aircraft Based on Nonsmooth Consensus Algorithms. IEEE Trans. Cybern. 2019;49:342–353. doi: 10.1109/TCYB.2017.2777463. [DOI] [PubMed] [Google Scholar]
  • 23.Najm A.A., Ibraheem I.K. Nonlinear PID controller design for a 6-DOF UAV quadrotor system. Eng. Sci. Technol. Int. J. 2019;22:1087–1097. doi: 10.1016/j.jestch.2019.02.005. [DOI] [Google Scholar]
  • 24.Najm A.A., Ibraheem I.K. Altitude and Attitude Stabilization of UAV Quadrotor System using Improved Active Disturbance Rejection Control. Arab. J. Sci. Eng. 2020;45:1985–1999. doi: 10.1007/s13369-020-04355-3. [DOI] [Google Scholar]
  • 25.Isira A.S.M. Ph.D. Thesis. University of Manchester; Manchester, UK: 2016. Consensus Control of a Class of Nonlinear Systems. [Google Scholar]
  • 26.Riyadh W., Kasim I., Abdul-Adheem W.R., Ibraheem I.K. From PID to Nonlinear State Error Feedback Controller. Int. J. Adv. Comput. Sci. Appl. 2017;8:312–322. doi: 10.14569/IJACSA.2017.080140. [DOI] [Google Scholar]
  • 27.Kasim I., Riyadh W. On the Improved Nonlinear Tracking Differentiator based Nonlinear PID Controller Design. Int. J. Adv. Comput. Sci. Appl. 2016;7:234–241. doi: 10.14569/IJACSA.2016.071032. [DOI] [Google Scholar]
  • 28.Ibraheem I.K. Anti-Disturbance Compensator Design for Unmanned Aerial Vehicle. J. Eng. 2019;26:86–103. doi: 10.31026/j.eng.2020.01.08. [DOI] [Google Scholar]
  • 29.Abdul-Adheem W.R., Ibraheem I.K. An Improved Active Disturbance Rejection Control for a Differential Drive Mobile Robot with Mismatched Disturbances and Uncertainties. [(accessed on 25 May 2018)]; Available online: https://arxiv.org/abs/1805.12170.
  • 30.Humaidi A.J., Ibraheem I.K. Speed Control of Permanent Magnet DC Motor with Friction and Measurement Noise Using Novel Nonlinear Extended State Observer-Based Anti-Disturbance Control. Energies. 2019;12:1651. doi: 10.3390/en12091651. [DOI] [Google Scholar]
  • 31.Sabatino F. Master’s Thesis. KTH Royal Institute of Technology; Stockholm, Sweden: 2015. Quadrotor Control: Modeling, Nonlinear Control Design, and Simulation. [Google Scholar]

Articles from Sensors (Basel, Switzerland) are provided here courtesy of Multidisciplinary Digital Publishing Institute (MDPI)

RESOURCES