Download as pdf or txt
Download as pdf or txt
You are on page 1of 12

Aerospace Science and Technology 84 (2019) 158–169

Contents lists available at ScienceDirect

Aerospace Science and Technology


www.elsevier.com/locate/aescte

Cooperative load transportation using multiple UAVs


Behzad Shirani a , Majdeddin Najafi b,∗ , Iman Izadi a
a
Department of Electrical and Computer Engineering, Isfahan University of Technology, Isfahan 84156-83111, Iran
b
Research Institute for Avionics, Isfahan University of Technology, Isfahan 84156-83111, Iran

a r t i c l e i n f o a b s t r a c t

Article history: The aim of this paper is cooperative task assignment to multiple unmanned aerial vehicles (UAV) for
Received 16 April 2017 load transportation. The main goal is to transport a slung load safely with minimal swing. To this
Received in revised form 9 June 2018 end, for each UAV, which is regarded as an agent, a distributed controller is proposed. The proposed
Accepted 22 October 2018
controller guarantees a fixed formation, which in turn achieves the main objective. A model of the
Available online 24 October 2018
system is obtained using the Udwadia–Kalaba method for an arbitrary number of UAVs and one slung
Keywords: load with ropes. This method leads to a novel multi-agent system model with interactions between
Multi-agent systems neighbor and non-neighbor agents. The control law is then proposed based on sub-optimal LQR-PID for
Task assignment the extended system. Simulation results are presented to verify the ability of the proposed method to
Formation control keep the formation of the agents, and to guide the load in the desired direction.
Quadrotor © 2018 Elsevier Masson SAS. All rights reserved.
Load transportation

1. Introduction load transportation has been studied in many papers [8–10]. In


[10], multiple quadrotors are employed to cooperatively transport
In recent years, considerable research has been conducted on a load rigidly attached to them. A decentralized control law is pro-
multi-agent systems: a group of agents that can be coordinated posed for individual quadrotors such that the stability of the load
to cooperatively perform an assigned task [1]. On the other hand, along three dimensional trajectories is guaranteed. An experimen-
due to the popularity of unmanned aerial vehicles (UAVs), the ap- tal mechanism for autonomous grasping is also presented to con-
plication of multi-agent systems with these vehicles has recently firm the proposed control law. In [11], stability of multiple robots
grown. Flight formation, surveillance, and aerial refueling are some manipulating a load for different configurations are analyzed. In
of important applications of multi-agent systems in aerial vehicles. [12], load transportation using three helicopters is investigated.
Over the past few years, many researchers have studied modeling The problem of cooperative fixable load transportation is investi-
and control of multi-agent systems based on UAVs [2]. gated in [8].
Aerial load transportation is an attractive application of UAVs Generally, it can be observed that the control methods for co-
[3]. In [4], complete model of a slung load with a helicopter carrier operative load transportation significantly depend on the dynami-
is presented. Then a controller is designed to prevent load swing cal models and the methods used for system modeling [9]. There
by actively damping it using vision based estimation. In [5], a spe- are different methods for modeling of the suspended load trans-
cific type of helicopter is modeled when its operation is affected portation system [13–16]. These methods are mainly based on the
by carrying a slung load. Load transportation with a single UAV principle of virtual work introduced by D’Alembert in 1743 [17]
has some restrictions due to the load size and weight limitations, and the Lagrange formulation [18]. Also, Gauss’s principle of least
lack of reliability, and swing. Swing, especially for suspended load constraint is one of the important concepts for modeling of dy-
with a single rope, is a problem that has been of interest to re- namical systems. Based on these principles, different methods have
searchers [6]. been applied for modeling of slung load systems. The Lagrangian
An alternative approach is to use multiple UAVs for transporting
formulation is one of these methods. However, modeling of slung
a common load. In other words, a heavy load can be transported
load systems with different configurations of agents often leads to
using multiple aerial vehicles with several ropes or rigid connec-
complex equations, and hence the Lagrangian formulation is not
tions. This requires a cooperative control algorithm [7]. Cooperative
suitable for this task [4].
In 1992, Udwadia and Kalaba proposed a new method for mod-
eling the dynamics of constrained systems [19]. It is based on
*
Corresponding author.
Gauss’s principle and leads to an explicit equation for a con-
E-mail addresses: b.shirani@ec.iut.ac.ir (B. Shirani), majd_najafi@cc.iut.ac.ir
(M. Najafi), iman.izadi@cc.iut.ac.ir (I. Izadi). strained system [4]. It has been shown that the equations obtained

https://doi.org/10.1016/j.ast.2018.10.027
1270-9638/© 2018 Elsevier Masson SAS. All rights reserved.
B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169 159

from the Udwadia–Kalaba method and the Lagrangian formula-


tion are equivalent [20]. However, the equations obtained from the
former are more suitable for our purpose, as they can easily ac-
commodate for changing the number of agents.
In this paper, we propose a novel idea to convert the cooper-
ative load transportation problem to a formation control problem.
In other words, we use multi-agent concepts to develop a method
for slung load transportation with multiple UAVs. For this purpose,
load transportation, as a cooperative task, is assigned to multiple
quadrotors, a low cost vehicle with more applications than other
types of UAV. To solve the problem, we need to take the following
steps:

• First, a stability augmentation system (SAS) is proposed to sta-


bilize each individual quadrotor. The SAS is based on a feed-
back linearization law. With proper design of the SAS, each
quadrotor (its dynamics and the SAS) can be formulated as a
double-integrator agent.
• Second, the slung load system is modeled. We employ the
Udwadia–Kalaba method for modeling, which converts the un-
constrained double-integrator equations of individual agents Fig. 1. Load transportation with 4 quadrotors.
(without load) to constrained equations (due to the interac-
tions between the load and the quadrotors). As a result, the Each edge is represented by an ordered pair of nodes that are con-
slung load system can be considered as a multi-agent sys- nected by the edge. The neighbor set of node v i is defined as
tem with interactions between neighbor and non-neighbor
agents. ξi = { v j : ( v j , v i ) ∈ E }, ∀i ∈ {1, ..., N }. (1)
Now, for safe transportation, uniform weight distribution, In other words, node i and j are neighbors, if there is an edge
more stability in load position, and reduced probability of between them [21]. Two agents are neighbors if there is a com-
collisions, the quadrotors should be placed in symmetric for- munication link between them. If links are undirected, the graph
mation with respect to each other and the load. Therefore, the is an undirected graph [22].
cooperative load transportation is then converted to a multi-
agent formation problem. This step is the main contribution of 2.1.2. Laplacian matrix
the paper. The Laplacian matrix describes communication structure of the
• Next, a decentralized control law is suggested to maintain the graph. For graph G, the Laplacian matrix L = {li j } N × N is defined as
formation (i.e., the agents and the load reach the same veloc- ⎧
ity in a particular position) without explicit communication. ⎪
⎨|ξi |, if i = j
The proposed controller is a suboptimal LQR-PID law whose
li j = −1, if ( v i , v j ) ∈ E and i = j (2)
coefficients are obtained by solving LMIs. Moreover, a guid- ⎪

ance algorithm is presented to direct the group in a desired 0, otherwise.
trajectory. Simulations verify the effectiveness of the proposed Here, |ξi | denotes the cardinality of the set ξi and is defined as the
method. number of neighbors of agent i [1].

The rest of the paper is organized as follows: Some prelimi- 2.2. Mathematical model of agents
naries and mathematical backgrounds are described in Section 2.
Section 3 focuses on the derivation of the mathematical model for There are many mathematical models that can explain the be-
quadrotors and the suspended load. In Section 4, a distributed con- havior of agents in multi-agent systems: single integrator, double
trol law and a guidance algorithm are introduced for load trans- integrator, linear and nonlinear state space models [1]. In this pa-
portation and formation of the group. A simulation example is per, after some modifications described in Section 3, we reduce
presented in Section 5. Finally, Section 6 concludes the paper. agent models to double integrator described by

2. Preliminaries ṗ i = v i
(3)
v˙i = u i
In this section, mathematical preliminaries and terminology are where i ∈ {1, · · · , N }, p i is the position, v i the velocity and u i the
introduced. control input of agent i. Double integrator model has been used in
many studies [23–25].
2.1. Graph theory
3. Load transportation modeling
In multi-agent systems, graph theory is a framework to model
In this section, modeling of multiple quadrotors with a slung
the communication network. In a graph, nodes and edges indicate
load (Fig. 1) is discussed. First, a quadrotor is modeled using the
agents and communication links between them.
Newton–Euler method. Then multiple quadrotors with a suspended
load are modeled. Finally, the Udwadia–Kalaba method is used
2.1.1. Neighbor sets to model the load suspended from the quadrotors. Here, we use
Let the pair G = ( V , E ) represent a graph G, where V = quadrotor model for cooperative task assignment. Note that, in
{ v 1 , v 2 , · · · , v N } is the set of N nodes and E is the set of edges. general, any UAV model can be used for this task.
160 B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169

b2 , and b3 are constant. Also, r is the overall propellers speed of


the quadrotor, obtained by

r = −1 + 2 − 3 + 4 (9)

where i is the speed of propeller i and


⎧ 1 1 1

⎪ 2 = u
4b 1
+ u
2b 3
− u
4d 4
⎪ 1

⎨ 2 = 1
u − 1
u + 1
u
2 4b 1 2b 2 4d 4
(10)

⎪ 3=
2 1
u − 1
u − 1
u

⎪ 4b 1 2b 3 4d 4
⎩ 2 1 1 1
4 = u
4b 1
+ u
2b 2
+ u
4d 4

Here, b and d are thrust and drag coefficients, respectively.

3.2. Stability augmentation system

Fig. 2. Quadrotor frames.


The Stability Augmentation System (SAS) makes a quadrotor
stable, i.e., maintains its attitude. The SAS generates suitable con-
trol inputs for the quadrotor. We use a Proportional-Derivative (PD)
3.1. Quadrotor modeling
controller for stabilization of each quadrotor. This controller can be
described as
Fig. 2 shows a quadrotor and its frames. Here, φ , θ , and ψ are ⎧
roll, pitch and yaw angles, respectively. The unconstrained system ⎪
⎪ u 1 = 1 − cos(φ)mzcos(θ )


can be described in state space form as [26]: ⎨ u = K (φ − φ) − K φ̇
2 pφ d dφ
(11)
S˙ = f (
 S, U ) (4) ⎪ u 3 = K p θ (θd − θ) − K dθ θ̇




where U and 
S are the unconstrained input and state vectors, se-
u 4 = K p ψ (ψd − ψ) − K dψ ψ̇
lected as: Here, φd , θd , and ψd are the desired angles with respect to the
x̃ ỹ z̃ axes; K p φ , K p θ and K p ψ are the proportional coefficients for

S = [φ φ̇ θ θ̇ ψ ψ̇  z˙ 
z  x˙ 
x  y˙ ] T
y  (5) φ , θ , and ψ control; and K dφ , K dθ , and K dψ are the derivative
coefficients for φ , θ , and ψ control. The controller coefficients must
and
be selected such that, z, φ , θ , and ψ are asymptotically stable.
U = [u 1 u2 u3 u 4 ]T . (6) Note that ψd is always equal to zero. By this condition, move-
ment can be controlled along x and y axes by controlling θ and φ ,
Also, the nonlinear dynamics of the quadrotor is described by the respectively. It is desired that φ , θ , and ψ converge to φd , θd , and
nonlinear function f as: 0, respectively. Then, (7) and (8) imply that
⎛ ⎞ ⎧
φ̇ ⎨
⎪ x¨ = − um1 (cos(φd ) sin(θd ))
⎜ θ̇ ψ̇ a + θ̇ a  + b u ⎟ y¨ = + um1 (sin(φd ))
⎜ 1 2 r 1 2 ⎟ (12)
⎜ ⎟ ⎪
⎩¨
⎜ θ̇ ⎟ 
z = g − u 1 (cos(φd )
⎜ ⎟ m
⎜ φ̇ ψ̇ a − φ̇a  + b u ⎟
⎜ 3 4 r 2 3⎟ where u 1 , φd , and θd can be considered as control inputs. There-
⎜ ⎟
⎜ ψ̇ ⎟ fore, (12) can be written as
⎜ ⎟
⎜ ⎟ ⎧
⎜ θ̇ ψ̇ a5 + b3 u 4 ⎟
S, U ) = ⎜
f ( ⎟ (7) ⎨
⎪ x¨ = u x (φd , θd , u 1 )
⎜ z˙ ⎟



⎟ y¨ = u y (φd , u 1 ) (13)
⎜ (c φ c θ )u 1 ⎟ ⎪
⎩¨
⎜ g− m ⎟ 
z = u z (φd , u 1 )
⎜ ⎟
⎜ x˙ ⎟
⎜ ⎟ This model is in the form of a double integrator system. Therefore,
⎜ ux u1 ⎟
⎜ m ⎟ in the following sections, a quadrotor with its SAS is considered as
⎜ ⎟
⎝ y˙ ⎠ a double integrator system.
u
y u1
m 3.3. Quadrotors and suspended load modeling
where
Assume that a suspended load is connected to n quadrotors us-
ux = c φ sθ c ψ + sφ sψ ing n ropes (Fig. 3). The ropes add n constraints to the system, as
(8)
uy = c φ sθ sψ − sφ c ψ the distance between the load and each quadrotor is limited by the
length of the rope. For modeling of the load suspended from mul-
and φ , θ , and ψ are the Euler angles with respect to the xyz axes; tiple quadrotors, the ropes are assumed massless and they do not
x̃, ỹ and z̃ are the coordinates of the quadrotor with respect to the stretch. The load is a rigid body and the ropes are attached to the
xyz axes (unconstrained system); u 1 , u 2 , u 3 , and u 4 are used for center of mass of the quadrotors. The Lagrangian method can be
altitude, φ , θ , and ψ control, respectively; m is the mass of the used for modeling of the slung load system. However, it has been
quadrotor; g is the gravitational constant; and c and s stand for shown that, this method leads to complex equation when multiple
cos(·) and sin(·), respectively. The coefficients a1 , a2 , a3 , a4 , a5 , b1 , constraints are added to the system [4].
B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169 161

Fig. 4. Rope collapse (1) and collision (2).

and
Fig. 3. Quadrotors and a suspended load.
M = diag(m1 , m2 , · · · , mn , ml ), (22)

Another approach to modeling of this system is the Udwadia– where m1 , · · · , mn are the masses of the quadrotors and ml is the
Kalaba method (Appendix A). This method gives explicit equations mass of the load (see Appendix A for more details).
for modeling of systems with different configurations and various
number of agents acting on constraints [19,27]. In this study, we 3.4. Rope collapse and collision
use the Udwadia–Kalaba method to obtain a model of the whole
system. Rope collapse and collision is not considered in many papers.
First, a vector is defined from the load to each quadrotors as In this paper, however, due to the formation between the quadro-
tors and the load, rope collapse and collision must be considered.
L ei = ηi − ηl = [xi − xl y i − yl zi − zl ] T (14) Also, during takeoff and landing, it is necessary to model rope col-
lapse and collision. Fig. 4 shows collapse and collision of a rope
where x, y and z are the generalized coordinates of the con- connected to the load and an agent.
strained system with proper subscript. From now on, subscript i To add the effect of rope collapse and collision in the slung load
is used for the i-th quadrotor and l for the load. Hence, ηi and ηl system model, first, collapse or collision must be detected. Rope
are the positions of quadrotor i and the load, respectively. Now, let collapse is detected by comparing the general constraint force of
the constraints be chosen as agent i and the load acting on rope i. The constrained force of
quadrotor i acting on rope i, denoted by F qwi , is
gc i =  L ei 2 − d2i (15)
F qwi = F qi . N i (23)
where di is the length of rope i. Let the generalized acceleration
vectors be and the constrained force of load acting on rope i, F lwi , is

q̈u = [u x1 u y1 u z1 ··· u xn u yn u zn 0 0 g ]T F lwi = F l . N i (24)


(16)
q̈ = [η¨1 T η¨2 T ··· η¨n T η̈l ] T T
Here, N i is the unit vector along L ei . Subtracting (23) from (24)
where q̈ and q¨u are the 3(n + 1) × 1 vectors of constrained and yields
unconstrained accelerations, respectively. Then
F wi = F qwi − F lwi . (25)
d
2L ej L˙ej
T
gci = (17) Now, collapse of rope i can be detected using (25): if F wi < 0 then
dt rope i is collapsed.
and Also, rope collision can be detected using the norm of L i : if
 L i  ≥ di then rope i is collided.
d2
gc i = 2L ej L¨ej + 2 L˙ej L˙ej
T T
(18) When rope collapse has been determined, it is enough to set
dt 2 V i = 0 and W i = 0, i.e., the condition on rope i is removed.
Finally, the Udwadia–Kalaba coefficients V and W , can be obtained Whereas, the response of rope collision is more difficult to model.
as Here, we use the momentum method. In [4], it is shown that the
T   translational and angular velocities right after rope collision are
V j 1×3(n+1) = 2L e 03∗3( j −1) I 03∗3(n− j ) − I obtained as
(19)
W j 1×1 = −2 L˙ej L˙ej
T
v 2 = v 1 + mq−1 N i J
q q q q q
w2 = w1
(26)
where I is the identity matrix of appropriate dimensions. Then, the v l2 = v l1 − ml−1 N li J w l2 = w l1 .
constrained acceleration is calculated using Here, mq and ml are the mass of the quadrotor and the load, re-
spectively; v a , v l , and w q , w q are the translational and angular
q̈ = q̈u + M −1/2 ( V M −1/2 )+ ( W − V q̈u ) (20)
velocity of the bodies. Indices 1 and 2 represent the situation just
where before and just after the collision. Also, J is the impulse and can
be obtained as
V n×3(n+1) = [ V 1 ··· Vj ··· V n ]T
(21) −(1 + K e ) v  . N i
J= (27)
W n×1 = [ W 1 ··· Wj ··· W n ]T 1
+ 1
mq ml
162 B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169

Fig. 5. Multi-loop feedback control system for load transportation.

where v  is the relative velocity between the load and the quadro- where
tor; and constant K e is the coefficient of elasticity, while K e = 0 1 1

and K e = 1 describe an inelastic and elastic collision, respectively. h(xi , y i , zi , xl , yl , zl ) = M − 2 ( V M − 2 )† W


1 1 (33)
Thus, K e is between 0 and 1 [4]. s(xi , y i , zi , xl , yl , zl ) = − M − 2 ( V M − 2 )† V + I

3.5. Numerical integration error for simulation Equation (32) presents a multi-agent model for cooperative load
transportation after stabilization of quadrotors. By replacing (16) in
In the constraint equations, numerical integration is a problem (20), we obtain

for modeling of slung load systems. This means that the lengths
⎨ ẍi = u xi + f xi (x j , y j , z j , xl , yl , zl , u x j , u y j , u z j , g )

of the ropes are not fixed and will start to drift as the simulation
ÿ i = u yi + f y i (x j , y j , z j , xl , yl , zl , u x j , u y j , u z j , g ) (34)
progresses [4]. The Udwadia–Kalaba equation ensures that ⎪
⎩ z̈ = u + f (x , y , z , x , y , z , u , u , u , g )
i zi zi j j j l l l xj yj zj
g¨c (q̈, q̇, q) = 0.
where i , j ∈ {1, 2, · · · , N }, and f xi , f y i , and f zi are nonlinear func-
But, because of numerical integration error, constraints on velocity tions added to the double integrator model for each agent and
and position are not equal to zero, i.e., represent the physical coupling of agents in the system. Equation
(34) is the general form of the cooperative system which has not
g˙c (q̇, q) = 0 been previously introduced in the literature.
(28)
gc (q) = 0
4. Cooperative task assignment
This means that the error may grow unlimited. This error depends
on the integration method used and the step size. It is necessary, In this section, we present a control law for cooperative task
using suitable methods, to avoid unbounded growing of the error. assignment to multiple agents. The goal is to transport the load in
The Baumgarte method is a simple state feedback approach to sta- a safe way with minimal swing. To reach this goal, flight formation
bilize must be used, so that quadrotors have symmetric positioning with
     respect to the load. Fig. 5 shows the complete block diagram of the
g˙c 0 1 gc
= . (29) system.
g¨c 0 0 g˙c From control engineering point of view, there are three control
Baumgarte adds two variables to this system as uu loops in the slung load system. As previously mentioned, the in-
ner loop (SAS) makes the quadrotors stable. This loop generates
g¨c = −2α g˙c − β 2 gc ⇔ V q̈ = W − 2α g˙c − β 2 gc (30) suitable control inputs for the quadrotors. The equations of the
quadrotors with the SAS were described in the previous section.
where α and β are feedback gains. Suitable values of feedback It is shown that a quadrotor with its SAS can be considered as
gains prevent error from intensive increase [28]. Lin has presented a double integrator model. The middle loop is designed for flight
a method to choose the feedback gains [4], [29]. By substituting formation. Also, it generates the desired values for the inner SAS
(30) in the Udwadia–Kalaba equation, it can be rewritten as loop. The outer loop is known as the guidance loop. It can deter-
mine the trajectory of the group by controlling its center. These
q̈ = q̈u + M −1/2 ( V M −1/2 )† ( W − 2α g˙c − β 2 gc − V q̈u ). (31) structures are described in details in the following.
Equation (31) can be used instead of the Udwadia–Kalaba equa-
4.1. Formation of the quadrotors
tion (20) in numerical simulations. It ensures that the error on the
constraints can not grow unbounded [4].
As previously mentioned, flight formation must be used for load
transportation using multiple UAVs, for the following reasons:
3.6. The final model
• To avoid load oscillation as a result of rope collision.
According to the Udwadia–Kalaba equation (20), the general • To avoid collision of agents with each other.
model for the slung load system is • To increase lifting capacity by uniformly distributing the load
among all agents.
[ẍ1 ÿ 1 z̈1 ··· ẍn ÿn z̈n ẍl ÿl z̈l ] T
 T
= h(·) + s(·) u x1 u y1 u z1 ··· u xn u xn u xn 0 0 g Fig. 6 illustrates the formation of a sample group of 4 quadrotors.
(32) The desired position of each agent is
B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169 163

it can be seen that the linearized system around the operating


point is equal to

q̈ = u c (43)

where u c is the deviation of the control signal from its equilibrium.

4.3. Cooperative control

Based on the linearized model obtained in the previous section,


a suitable control law for keeping the formation is developed here.
Based on (43), we extend the states of each agent as
Fig. 6. Formation of a group of 4 agents.  T
⎧ Xi = (xi − xc + xi )dt xi − xc + xi x˙i − ẋc
⎨ xio = xc + xi
y io = y c +  y i (35)  T

zio = zc + zi Yi = ( y i − y c +  y i )dt y i − yc +  yi ẏ i − ẏ c (44)
and  T

x˙i − x˙j = 0 Zi = (zi − zc + zi )dt zi − zc + zi z˙i − żc
(36)
x˙i − ẋl = 0
Therefore,
with similar equations for y and z. Here, i , j ∈ {1, · · · , n} and xc ,
y c , and zc are the generalized coordinates of the center of forma- Ẋ i = Ā X i + B̄u xi c
tion. The formation matrices are defined as
Ẏ i = ĀY i + B̄u y i c (45)
T
x = [x1 x2 ··· xn ] Ż i = Ā Z i + B̄u zi c
T
 y = [ y 1  y2 ···  yn ] (37) where
T ⎡ ⎤ ⎡ ⎤
z = [z1  z2 ··· zn ] 0 1 0 0
where xi ,  y i , and zi are the distance of the i-th agent from Ā = ⎣ 0 0 1 ⎦, B̄ = ⎣ 0 ⎦ (46)
the center of formation. 0 0 0 1

Let
4.2. Linearization and rejection the effect of load weight
X = [ X 1T ··· X iT ··· X nT ] T
To design a controller for formation, we first linearize (32)
Y = [Y 1T ··· Y iT ··· Y nT ] T (47)
around its equilibrium point. To obtain the equilibrium point we
have Z= [ Z 1T ··· Z iT ··· Z nT ] T
 T
ho (·) + so (·) u x1 o u y 1 o u z1 o · · · u xn o u yn o u zn o 0 0 g and

=0 (38) S = [X T YT Z T ]T (48)
where the index o stands for the equilibrium point. According to Then the global extended system is
(33) and (19), h(·) depends on the relative speed of the load and
the quadrotors. Therefore in the fixed formation (the equilibrium Ṡ = A S + BU c (49)
point) h(·) = 0. Substituting h(·) into (38) yields:
 T where
so (·) u x1 o u y1 o u z1 o ··· u xn o u yn o u zn o 0 0 g
T
U c = [U xc U Tyc T T
U zc ] , (50)
=0 (39)
U xc = [u x1 c ··· u xi c ··· u xn c ] T
Now, we separate the agents equations from the load to obtain
 T U yc = [u y 1 c ··· u yi c ··· u yn c ] T (51)
u x1 o u y1 o u z1 o ··· u xn o u yn o u zn o T
U zc = [u z1 c ··· u zi c ··· u zn c ]

= −sa s L [0 0 g] T (40)
and
where
   
A = diag Ā , · · · , Ā , B = diag B̄ , · · · , B̄ (52)
[sa s L ] = so (·) = so (xio , y io , zio , xlo , ylo , zlo ) (41)
The following theorem proposes the control law:
and sa and s L are 3(n + 1) × 3n and 3(n + 1) × 3 matrices, respec-
tively. Considering the control law as
Theorem 1. The proposed system (49) can keep the formation in 3D, if

⎨ u xi = u xi c + u xi o for positive definite matrices Q x , Q y , Q z , R x , R y , and R z , there exist
u y = u yi c + u yi o (42) positive definite matrices P x , P y , P z , such that trace( P x ), trace( P y ) and
⎩ i
u zi = u zi c + u zi o trace( P z ) are maximized and
164 B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169

 
Px A + AT Px + Q x PxB Now, due to the fact that each agent only communicates with
≥0
BT Px Rx its neighbors, the control law for each agent can depend solely
 
P y A + AT P y + Q y PyB on its own states and its neighbors’ states. To guarantee that the
≥0 (53) control law of an agent does not depend on the states of its non-
BT P y Ry
  neighbors, the corresponding terms in P x and Q x should be zero.
P z A + AT P z + Q z PzB In other words, ∀ i , j ∈ {1, · · · , N }, if L (i , j ) = 0 (which means that
≥0
BT Pz Rz agents i and j are not neighbors) then
Here, P x , P y , P z , Q x , Q y and Q z have a structure similar to  
  P x 3(i − 1) + 1 : 3i , 3( j − 1) + 1 : 3 j = 0
P x 3(i − 1) + 1 : 3i , 3( j − 1) + 1 : 3 j = 0   (60)
Q x 3(i − 1) + 1 : 3i , 3( j − 1) + 1 : 3 j = 0
if L (i , j ) = 0 (54)
and similarly for y and z.
The cooperative controller law, based on LQR control, then is
Finally, if the condition (60) is satisfied, the control law for co-
 T operative control will be
u x1 u x2 ··· u xn
 T
= −R− 1 T u x = u xc + u xo
x B P x X + u x1 o u x2 o · · · u xn o
 T u y = u yc + u yo (61)
u y 1 u y 2 · · · u yn u z = u zc + u zo
 T (55)
= −R− 1 T
y B P y Y + u y1 o u y2 o · · · u yn o where
 T
u z1 u z2 · · · u zn u xc = − R − 1 T
x B Px X
 T
= −R− 1 T
z B P z Z + u z1 o u z2 o · · · u zn o u yc = − R − 1 T
y B P yY (62)
−1 T
u zc = − R z B P z Z
The control law given in (55) consists of two terms for each
coordinate. The first term is obtained from a constrained LQR op- and, the control law around the equilibrium point is
timization problem (Appendix B). The second term is driven from
linearization around the equilibrium point as given in (42). u xo = [u x1 o u x2 o ··· u xn o ] T
u yo = [u y 1 o u y2 o ··· u yn o ] T (63)
Proof. Based on (43), the linearized system about equilibrium
T
point is q̈ = u c . For the extended system in (49), consider the fol- u zo = [u z1 o u z2 o ··· u zn o ]
lowing cost function for all the agents This implies (55) which proves the theorem. 2
J = Jx + J y + Jz (56)
4.4. Effect of uncertainty
where
In the following, the effect of uncertainty on system stability
∞
and the proposed controller is investigated. Consider system (49),
J x = [ X T Q x X + U xc
T
R x U xc ] dt
with uncertainty in the form of
0
∞ Ṡ = ( A +  A ) S + ( B +  B )U c (64)
J y = [Y T Q y Y + U Tyc R y U yc ] dt (57) where
0
∞ [ A  B ] = [ D E] G F , (65)
J z = [ Z T Q z Z + U zc
T
R z U zc ] dt and D, E, and F are known matrices and G T G < I . This is the
0 common form uncertainty that is often considered in research.

As the linearized system (43) is decoupled in 3D position, the cost


Theorem 2. The uncertain system (64) with uncertain terms (65) and
function is independent along x, y, and z. Therefore, the proper
G T G < I is stable using the control law obtained by Theorem 1, if there
LQR control law that optimizes (56) can be described by 3 alge-
exists an > 0 such that
braic Riccati equations (AREs):
 
M [ P̃ D P̃ E ]
Q x − P x B R− 1 T T
x B Px + Px A + A Px = 0 T <0 (66)
[( P̃ D )T ( P̃ E )T ] − −1 I
Q y − P y B R− 1 T T
y B Py + PyA + A Py = 0 (58)
where
Q z − P z B R− 1 T T
z B Pz + Pz A + A Pz = 0

As discussed in Appendix B, the solution of the ARE above can be M = A T P̃ + P̃ A + ( B K ) T P̃ + P̃ ( B K ) + −1 [ F T ( F K ) T ][ F F K ] T


equivalently obtained by solving the following LMI (for x) (67)

max trace( P x ) and P̃ is a positive definite matrix.


 
Px A + A Px + Q x
T
PxB (59)
s.t. ≥0 Proof. Consider the uncertain system (64), where
BT Px Rx
and similarly for y and z. Uc = K S (68)
B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169 165

and based on Theorem 1 we have this reasons, the best approach is to integrate the load and a vir-
tual reference to create the center of the group. By this selection,
K = − R −1 B T P (69) the velocity and position of the load can be controlled. Therefore,
where for velocity control along each axis, the guidance law for the leader
(center of the group), explained above, can be selected as (for the
R −1 = diag( R − 1 −1 −1
x , R y , Rz ) x axis)
(70)
P = diag( P x , P y , P z )
Xc = X L − K x(V L X − V d X ) (81)
Substituting (68) into (64) yields
Here, X c is the position of the center of the group, V d X the desired
Ṡ = ( A +  A + B K +  B K ) S (71) velocity of the group, K x a designable velocity feedback gain, X L
and V L X the position and velocity of the load, all along the x axis.
Consider Lyapunov function Similarly, for the y axis, the position of the center can be obtained
from
V = S T P̃ S (72)
where P̃ is a positive definite matrix. Then
Y c = Y L − K y ( V LY − V dY ) (82)
The variables are similarly defined. In these equations, the differ-
V̇ = Ṡ T P̃ S + S T P̃ Ṡ (73) ence between the velocities of the load and a virtual reference is
and used to control the position of the center.
For the z axis, the position of the center is obtained from
V̇ = S T ( A +  A + B K +  B K ) T P̃ S
Z c = ( Z L − h ) − K z ( Z L − Z d − h ) (83)
+ S T P̃ ( A +  A + B K +  B K ) S (74)
where Z c is the position of the center of the group, Z d the desired
Now for stability of the system we should have position of the virtual leader, K x a designable position feedback
gain, and Z L the position of the load, all along the z axis. Also
A T P̃ + P̃ A + ( B K ) T P̃ + P̃ ( B K ) + P̃ ( A +  B K ) 
+ ( A +  B K )T P̃ < 0 (75) h = l2 − d2 (84)
where l is the length of the rope and d is the distance of each
If we substitute (65) into (75) we obtain
agent from the center.
A T P̃ + P̃ A + ( B K ) T P̃ + P̃ ( B K ) + [ P̃ D P̃ E ]G [ F F K ] T +
(76) 4.6. Algorithm description
[ F T ( F K )T ]G [( P̃ D )T ( P̃ E )T ]T < 0
Let Based on the details presented in the previous sections, the
step by step design procedure for a cooperative load transporta-
 = A T P̃ + P̃ A + ( B K )T P̃ + P̃ ( B K ) tion problem is as following:
= [ P̃ D P̃ E ] (77)
1. Obtain a model of the particular UAV (as an example, a
T
= [ F F k] quadrotor, modeled in (7), is used in this paper). Find the pa-
rameters of the model.
Then, based on Petersen’s lemma (Appendix C) we have
2. For each UAV, design a stabilizer controller (a PD controller
T (11) is designed for the quadrotors in this paper).
+ G + GT <0 (78)
3. Based on the particular load transportation problem, the num-
T ber of available UAVs, and the lengths of the ropes, design
where G G < I , if and only if there exists > 0 such that
a suitable desired formation matrix  (see Fig. 6 for four
T −1 T
+ + < 0. (79) quadrotors).
4. Find the Laplacian matrix L in (2) based on the communication
In the other words, we should have
links.
T 5. Design the formation controller (55). This controller has two
A T P̃ + P̃ A + ( B K ) T P̃ + P̃ ( B K ) + [ P̃ D P̃ E ][( P̃ D ) T ( P̃ E ) T ] +
part:
−1
[ F T ( F K )T ][ F F K ]T < 0 (80) • For the first term, the LQR controller, select suitable Q and
R matrices and find P by solving the LMIs in (53).
Using Schur complement (Appendix B) [30], we have (66). 2
• The second term, the linearized controller, is obtained from
(40).
4.5. Guidance 6. Design the guidance controller gains K x , K y , and K z as well as
the desired velocities or postilions in (81), (82), an (83).
The guidance loop is the outer control loop that generates the 7. Implement the designed controllers based on the multi level
commands of desired velocity or position for the group. For proper feedback control structure in Fig. 5.
guidance, a point can be selected as the center of the formation.
This point is then considered as a leader for the group and is fol- The proposed algorithm is presented as a flowchart in Fig. 7 as
lowed by all the agents. In a load transportation problem, the load well.
or a virtual point, can be selected as the leader.
If the load is considered as the leader of the group, the velocity 5. Simulation
of the agents cannot be controlled and may grow unbounded. On
the other hand, if a virtual reference is used, there is no feedback In this section, a simulation example for cooperative load trans-
from the real position of the load and the control is unrealistic. For portation is presented. The load is transported by four quadrotors
166 B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169

Table 1
Simulation parameters.

Parameter Value Unit


mQ 1 Kg
ml 0.5 Kg
g 9.81 N/Kg
x10 (1.5, 0, −11) m
x20 (0, −1.5, −11) m
x30 (0, 1.5, −11) m
x40 (−1.5, 0, −11) m
xl0 (0, 0, −11) m
( V x0 , V y 0 , V z 0 ) (2, 0, 0) m/s

to the measurements of each agent. Based on this, the Laplacian


matrix can be written as
⎡ ⎤
3 −1 −1 −1
⎢ −1 1 0 0⎥
L=⎢
⎣ −1
⎥. (86)
0 1 0⎦
−1 0 0 1
The quadrotors are identical, and modeled by (7) whose param-
eters are specified in Table 1.
As previously mentioned, matrices P and Q must have the
same element structure as of the Laplacian matrix, i.e.,
⎡ ⎤
Fig. 7. Flowchart of the proposed algorithm. Q1 Q2 Q3 Q4
⎢QT Q5 0 0 ⎥
⎢ 2 ⎥
Q =⎢ ⎥ (87)
⎣ Q 3T 0 Q6 0 ⎦
Q 4T 0 0 Q7
and
⎡ ⎤
P1 P2 P3 P4
⎢ PT P5 0 0 ⎥
⎢ 2 ⎥
P =⎢ ⎥ (88)
⎣ P 3T 0 P6 0 ⎦
P 4T 0 0 P7
Also
⎡ ⎤
R1 0 0 0
⎢ 0 R2 0 0 ⎥

R =⎣ ⎥. (89)
0 0 R3 0 ⎦
0 0 0 R4
Now, the LMIs in (91) should be solved to obtain the optimum
Fig. 8. Formation and communication structure of the group (solid: communication
link; dashed: physical link (rope)).
control input. To achieve this, the dynamics of the agents along
each axis is rewritten as (45). For example, for agent i along the x
axis we have
connected to the load by four ropes. The designed controller must ⎡ ⎤ ⎡ ⎤
0 1 0 0
be able to transport the load with minimum swing. A square for-
Ẋ i = ⎣ 0 0 1 ⎦ X i + ⎣ 0 ⎦ ui (90)
mation is considered for the group, such that the quadrotors have
0 0 0 1
symmetric position with respect to the load. Fig. 8 shows the top
view of the formation. The dashed lines represent the ropes. Finally, the optimal control input can be obtained using Theorem 1.
In this formation, all the agents have equal distances from the Consider P x , Q x and R x matrices as in (88), (87) and (89), respec-
load along the x and y axes, and equal altitudes along the z axis. tively. We should, then, solve the following LMI problem:
The formation matrix, then, is
max trace( P x )
⎡ ⎤
+1.7 0 0 s.t.
⎢ 0 −1.7 0⎥  
=⎢

⎥ (85) Px A + AT Px + Q x PxB
0 1.7 0⎦ ≥0
−1.7 0 0 BT Px Rx
(91)
Q x2,x3,x4 > 0
The elements of each row represent the distance of the corre-
sponding agent from the center of the formation along the x, y, Qx ≥ 0
and z axes, respectively. Rx > 0
Fig. 8 also shows the communication structure of the group
(represented by the solid lines). This pattern shows who has access P x ≥ 0.
B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169 167

Fig. 9. The altitudes of the quadrotors. Fig. 12. The velocity of the load along the x axis.

Fig. 13. The positions of the quadrotors along the x and y axes.
Fig. 10. The lengths of the ropes.

Fig. 11. The velocities of the quadrotors. Fig. 14. The positions of the quadrotors along the x axis (zoomed).

Then by substituting P x and R x into U x = k X the control law for


x axis is obtained. Here k = − R − 1 T
x B P x . The control law for y and
z axes can be obtained similarly. The LMI problem was solved us-
ing MATLAB LMI Toolbox. For simulation, the desired values for
the group velocity are ( V xd , V yd , V zd ) = (3, 0, ḣd ) and a parabolic
path is defined for the altitude, ḣd is the time derivative of the
desired path. Fig. 9 shows the altitudes of the quadrotors after sim-
ulation. It is clear that the quadrotors follow the desired altitude
and the load keeps its altitude in certain distance from the quadro-
tors. Fig. 10 shows the lengths of the ropes. As mentioned before,
because of numerical integration errors, the calculated length of
the ropes can be different from the actual value.
Fig. 11 illustrates the velocities of the quadrotors along the x,
y, and z axes respectively. Also the velocity of the load along the
Fig. 15. 3D visualization of load transportation.
x axis is shown in Fig. 12. As it can be seen, the load velocity is
approximately constant and equal with the desired value.
The position of the group along the x and y axes are illustrated A 3D visual simulation of the group was also carried out, a
in Fig. 13. It shows that each quadrotor keeps its distance from screen shot of which is illustrated in Fig. 15. The results of the
the center of the group, according to the formation matrix. Also, simulation and 3D visualization of the group, confirm the perfor-
Fig. 14 show the position of the group along the x axis with more mance of the proposed controllers for stabilization, formation and
details. Note that the agents reach the desired formation. guidance of the group.
168 B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169

6. Conclusion where F c ∈ R3n is the constraint force. For calculating F c , the


Gaussian principle of least constraint asserts that the constrained
In this paper, cooperative task assignment to multiple agents acceleration vector is the closest to the unconstrained acceleration
was investigated. Load transportation using multiple quadrotors vector, converted such that it satisfies the constraints. As a mat-
was considered as the cooperative task. The load is considered to ter of fact, this principle converts the problem to a minimization
be connected to quadrotors using ropes. The aim of this task is to problem. It is shown that this minimization problem can be solved
safely transport the load to a desired location with minimal swing using the Moore–Penrose pseudoinverse [19]. The constraint force
and no collisions. It was shown that the problem can be reduced
F c can be explicitly calculated as
to a formation problem with proper distribution of the quadrotors
around the load. The Udwadia–Kalaba method was used to model
F c = M −1/2 ( V M −1/2 )+ ( W − V q̇u ) (A.7)
the slung load system due to its capability of modeling the sys-
tem with different formation structures and arbitrary number of where (·)+ denotes the Moore–Penrose pseudoinverse. The con-
agents. A suboptimal LQR-PID controller was designed using LMIs. strained system acceleration q̈ is then obtained as
This controller guarantees the formation of the group with respect
to the load. A guidance algorithm was also proposed which uses
q̈ = q̈u + M −1/2 ( V M −1/2 )+ ( W − V q̈u ) (A.8)
a virtual leader based on the load position. It was shown that the
agents successfully transport the load while maintaining the for-
Appendix B. LQR controller
mation of the group along the x, y, and z axes.
Although in this paper, quadrotors are used for load transporta-
tion, the proposed method can be modified for different UAVs. In Consider the dynamical system
fact, with proper design, the SAS controller converts the inner con-
trol loop to a double integrator system, regardless of the specific Ẋ = A X + BU (B.1)
vehicle. The simulation study, with quadrotors, demonstrated suc-
cessful implementation of the proposed algorithm. and the cost function

∞
Conflict of interest statement
J = [ X T Q X + U T RU ]dt (B.2)

There is no conflict of interest. 0

Here, X and U are the state and input vectors, A and B are matri-
Appendix A. Udwadia–Kalaba method for modeling ces with appropriate dimensions, Q ≥ 0 is a positive semi-definite
and R > 0 is a positive definite matrix. The objective is to design
Consider n separate systems in a rectangular coordinate frame. a control signal U such that the cost function in (B.2) is mini-
According to Newton’s second law, the equations of motion for the mized. This problem is known as the linear quadratic regulator
set are in described by (LQR) problem. The optimal control input is

M q̈u (t ) = F (qu , q̇u , t ) (A.1)


U = − R −1 B T P X (B.3)
3n×3n
where M ∈ R is the positive symmetric generalized mass ma-
where P is obtained by solving the following algebraic Riccati
trix, q̈u ∈ R3n is the unconstrained generalized coordinates of the
equation (ARE)
system, and F ∈ R3n is the generalized forces applied to the sys-
tem. Here,
P A + A T P + Q − P B R −1 B T P = 0. (B.4)
F= [ F 1T F 2T ··· F nT ] T (A.2) It has been shown that, using the Schur complement, an equiv-
and alent LMI problem can be formulated as [31]:

q̈u = [q̈uT 1 q̈uT 2 ··· q̈uT n ] T (A.3) max trace( P )


 
P A + AT P + Q PB
where F i and q̈u i have three components along the x, y, and z s.t. ≥0 (B.5)
axes. BT P R
Now, assume the system is subjected to m smooth constraints P ≥0
in the form of
where R > 0 and Q ≥ 0 are predetermined matrices. Therefore,
i (q(t ), q̇(t ), t ) = 0, i = 1, 2, · · · , m (A.4) instead of solving (B.4), a set of LMIs given in (B.5) can be solved
to find P [32].
where q ∈ R is the constrained generalized coordinates of the
3n
Also it is shown that, the algebraic Riccati equation
system. If the constraints are sufficiently smooth, after differentiat-
ing (A.4) once or twice we have A T P + P A + P B R −1 B T P + Q < 0 (B.6)

V (q, q̇, t )q̈ = W (q, q̇, t ) (A.5) where A , B , Q and R are fixed, Q is a symmetric matrix and R
is a symmetric positive definite matrix, can be expressed as a LMI
where V ∈ Rm×3n and W ∈ Rm .
using Schur complement lemma:
The Udwadia Kalaba method of modeling, converts the uncon-
 
strained system (A.1) which is subjected to the constraint (A.4) to −AT P − P A − Q PB
a constrained system described by <0 (B.7)
BT P −R
M q̈ = F + F c (A.6) [30].
B. Shirani et al. / Aerospace Science and Technology 84 (2019) 158–169 169

Appendix C. Petersen’s lemma [33] [16] T. Bresciani, Modelling, Identification and Control of a Quadrotor Helicopter,
MSc Theses, 2008.
[17] Y. Li, Y. Sun, B. Peng, F. Hu, Dynamic modeling of a high-speed over-constrained
Let , and be matrices of appropriate dimensions and
press machine, J. Mech. Sci. Technol. 30 (7) (2016) 3051–3059.
 be a symmetrical matrix. Then  + G + T G T < 0 for [18] D.-q. Li, H.-j. Hong, X.-l. Jiang, Dynamics modeling, control system design and
all G T G < I , if and only if there exists a scaler > 0 such that simulation of manipulator based on Lagrange equation, in: Mechanism and
+ T
+ −1 T < 0. Machine Science: Proceedings of ASIAN MMS 2016 & CCMMS 2016, Springer,
2017, pp. 1129–1141.
[19] F.E. Udwadia, R.E. Kalaba, A new perspective on constrained motion, in: Pro-
References ceedings: Mathematical and Physical Sciences, 1992, pp. 407–410.
[20] F.E. Udwadia, R.E. Kalaba, Equations of motion for mechanical systems,
[1] E. Semsar-Kazerooni, K. Khorasani, Team Cooperation in a Network of Multi- J. Aerosp. Eng. 9 (3) (1996) 64–69.
Vehicle Unmanned Systems: Synthesis of Consensus Algorithms, Springer Sci- [21] F.L. Lewis, H. Zhang, K. Hengster-Movric, A. Das, Cooperative Control of Multi-
ence & Business Media, 2012. Agent Systems: Optimal and Adaptive Design Approaches, Springer Science &
[2] J. Guerrero, R. Lozano, Flight Formation Control, John Wiley & Sons, 2012. Business Media, 2013.
[3] T. Lee, Geometric control of quadrotor UAVs transporting a cable-suspended [22] E. Semsar-Kazerooni, K. Khorasani, An optimal cooperation in a team of agents
rigid body, IEEE Trans. Control Syst. Technol. (2017). subject to partial information, Internat. J. Control 82 (3) (2009) 571–583.
[4] M. Bisgaard, Modeling, Estimation, and Control of Helicopter Slung Load Sys- [23] H. Liang, H. Su, X. Wang, M.Z. Chen, Distributed leader-following swarm of het-
tem, Department of Control Engineering, Aalborg University, 2008. erogeneous multi-agent systems, in: Large Scale Complex Systems Theory and
[5] R.A. Stuckey, Mathematical Modelling of Helicopter Slung-Load Systems, DTIC Applications 13 (1) (2013) 13–18.
Document, Tech. Rep., 2001. [24] H.G. Tanner, A. Jadbabaie, G.J. Pappas, Flocking in fixed and switching networks,
[6] K. Thanapalan, Nonlinear controller design for a helicopter with an external IEEE Trans. Automat. Control 52 (5) (2007) 863–868.
slung load system, Syst. Sci. Control Eng. 5 (1) (2017) 97–107. [25] A. Barve, M.J. Nene, Survey of flocking algorithms in multi-agent systems, Int.
[7] G. Tartaglione, E. D’Amato, M. Ariola, P.S. Rossi, T.A. Johansen, Model predictive J. Comput. Sci. Issues 10 (6) (2013) 110.
control for a multi-body slung-load system, Robot. Auton. Syst. 92 (2017) 1–11. [26] S. Bouabdallah, Design and Control of Quadrotors with Application to Au-
[8] H. Bai, J.T. Wen, Cooperative load transport: a formation-control perspective, tonomous Flying, Ph.D. dissertation, École Polytechnique federale de Lausanne,
IEEE Trans. Robot. 26 (4) (2010) 742–750. 2007.
[9] K. Klausen, T.I. Fossen, T.A. Johansen, Nonlinear control with swing damping of [27] F.E. Udwadia, R.E. Kalaba, An alternate proof for the equation of motion for
a multirotor UAV with suspended load, J. Intell. Robot. Syst. (2017) 1–16. constrained mechanical systems, Appl. Math. Comput. 70 (1) (1995) 339–342.
[10] D. Mellinger, M. Shomin, N. Michael, V. Kumar, Cooperative grasping and trans- [28] J. Baumgarte, Stabilization of constraints and integrals of motion in dynamical
port using multiple quadrotors, in: Distributed Autonomous Robotic Systems, systems, Comput. Methods Appl. Mech. Engrg. 1 (1) (1972) 1–16.
Springer, 2013, pp. 545–558. [29] S.-T. Lin, J.-N. Huang, Stabilization of Baumgarte’s method using the Runge–
[11] N. Michael, J. Fink, V. Kumar, Cooperative manipulation and transportation with Kutta approach, J. Mech. Des. 124 (4) (2002) 633–641.
aerial robots, Auton. Robots 30 (1) (2011) 73–86. [30] J.G. VanAntwerp, R.D. Braatz, A tutorial on linear and bilinear matrix inequali-
[12] I. Maza, K. Kondak, M. Bernard, A. Ollero, Multi-UAV cooperation and control ties, J. Process Control 10 (4) (2000) 363–385.
for load transportation and deployment, J. Intell. Robot. Syst. 57 (1–4) (2010) [31] M.A. Rami, X.Y. Zhou, Linear matrix inequalities, Riccati equations, and indef-
417–449. inite stochastic linear quadratic controls, IEEE Trans. Automat. Control 45 (6)
[13] T. Ronen, A. Bryson Jr., W. Hindson, Dynamics of a helicopter with a sling load, (2000) 1131–1143.
in: 13th Atmospheric Flight Mechanics Conference, 1985, p. 2288. [32] S.P. Boyd, L. El Ghaoui, E. Feron, V. Balakrishnan, Linear Matrix Inequalities in
[14] P. Sampath, Dynamics of a Helicopter-Slung Load System, Ph.D. dissertation, System and Control Theory, vol. 15, SIAM, 1994.
PhD Thesis, Maryland University, 1980. [33] I.R. Petersen, A stabilization algorithm for a class of uncertain linear systems,
[15] T. Oktay, C. Sultan, Modeling and control of a helicopter slung-load system, Systems Control Lett. 8 (4) (1987) 351–357.
Aerosp. Sci. Technol. 29 (1) (2013) 206–222.

You might also like