# Cooperative Aerial Transportation of Nonuniform Load through Quadrotors by
Elastic and Flexible Cables

Ali Akbar Rezaei Lori111Graduate Student, Department of Mechanical
Engineering, Isfahan University of Technology<EMAIL_ADDRESS>(Corresponding Author). Isfahan University of Technology, Isfahan 84156-83111,
Iran  Mohammad Danesh222Associate Professor, Department of Mechanical
Engineering, Isfahan University of Technology. Isfahan University of
Technology, Isfahan 84156-83111, Iran  and Iman Izadi333Associate Professor,
Department of Electrical and Computer Engineering, Isfahan University of
Technology. Isfahan University of Technology, Isfahan 84156-83111, Iran

###### Abstract

In this paper, first the full dynamics of aerial transportation of a rigid
body with arbitrary number of quadrotors is derived. Then a control strategy
is proposed to convey the nonuniform rigid body appropriately to the desired
trajectory. In the dynamical model of this transportation system, not only the
load is considered as a nonuniform and non-homogeneous rigid body but also
mass, flexibility, and tension of the cables are considered. Each cable is
modeled as successive masses, springs, and dampers where each mass, spring,
and damper has 4 degrees of freedom (DOF). The Euler-Lagrange equations are
used to derive the motion equation. The control strategy includes three loops
of attitude control, formation control, and navigation control. The sliding
mode control is designed based on multi-agent systems for the formation
control where the controller is proven to be asymptotically stable. The
navigation control loop, based on the load states, guarantees that the load
reaches the desired location. Finally, numerical examples and simulations are
presented to verify the appropriate operation of the proposed system for
transporting both homogeneous and non-homogeneous bodies by spreading
quadrotors according to mass distribution of the body.

Table 1: Dynamic notations Parameter | Value
---|---
$\\{X,Y,Z\\}\in\mathbb{R}^{3}$ | Inertia frame
$\\{x,y,z\\}\in\mathbb{R}^{3}$ | Body frame attached to the load
$m_{l}\in\mathbb{R}$ | mass of payload
$J_{l}\in\mathbb{R}^{3\times 3}$ | moment inertia of payload
$r_{l}\in\mathbb{R}^{3}$ | position of payload
$v_{l}\in\mathbb{R}^{3}$ | velocity of payload
$\boldsymbol{\delta F_{r_{l}}}\in\mathbb{R}^{3}$ | the disturbances and unmodeled dynamics effects on the load position
${\eta}\in\mathbb{R}^{3}$ | load’s angles
$\Omega_{l}\in\mathbb{R}^{3}$ | angular velocity of the load
$\boldsymbol{\delta F_{\eta_{l}}}\in\mathbb{R}^{3}$ | the disturbances and unmodeled dynamics effects on load’s angles
$m_{ij}\in\mathbb{R}$ | mass of at the end of component $j$th in cable $i$th
$K_{ij}\in\mathbb{R}$ | elasticity coefficient of $j$th spring of cable $i$th
$b_{ij}\in\mathbb{R}$ | viscosity coefficient of $j$th damper the $i$th cable
$L_{ij}\in\mathbb{R}$ | rest length of the $j$th component of the $i$th cable
$q_{ij}\in\mathbb{R}^{3}$ | the direction of the $j$th component of the $i$th cable
$\omega_{ij}\in\mathbb{R}^{3}$ | angular velocity of the $j$th component of the $i$th cable
$\delta\boldsymbol{F_{q_{ij}}}\in\mathbb{R}^{3}$ | the disturbances and unmodeled dynamics effects on the $q_{ij}$
$\delta F_{l_{ij}}\in\mathbb{R}$ | the disturbances and unmodeled dynamics effects on the $l_{ij}$
$\\{x_{i},y_{i},z_{i}\\}\in\mathbb{R}^{3}$ | Body frame attached to the $i$th quadrotor
$J_{i}\in\mathbb{R}^{3\times 3}$ | moment inertia of $i$th quadrotor
$d_{i}\in\mathbb{R}^{3}$ | connection of $i$th quadrotor
$m_{i}\in\mathbb{R}$ | mass of $i$th quadrotor
$\Omega_{i}\in\mathbb{R}^{3}$ | angular velocity of the $i$th quadrotor
$r_{i}\in\mathbb{R}^{3}$ | the $i$th quadrotor position
$v_{i}\in\mathbb{R}^{3}$ | the $i$th quadrotor velocity
$f_{i}\in\mathbb{R}$ | the generated trust by the $i$th quadrotor
$\boldsymbol{\delta T_{i}}\in\mathbb{R}^{3}$ | the disturbances and unmodeled dynamics effects on the rotation of the $i$th quadrotor
$\boldsymbol{\tau}_{i}\in\mathbb{R}^{3}$ | the produce torque by the $i$th quadrotor

##  1 Introduction

In recent years, due to some challenges such as traffic jams, and difficult
accessibility of remote or dangerous regions, aerial transportation of rigid
bodies through aerial vehicles has been an active field of research. Many
researchers have focused on quadrotors as one of the most popular unmanned
aerial vehicles (UAVs). Broad applications of aerial load transportation
include search and rescue, emergency response, package delivery, construction,
and firefighting.

By and large, carrying a rigid body with quadrotors has been done by grasping
the load ( [1], [2], [3] and [4]) or by hovering the load from a cable. Load
grasping by quadrotors has some limitations like landing in bumpy and narrow
areas. Therefore, load transportation has been usually investigated by using
cables. There are some methods for modeling and control of a cable-suspended
load with a quadrotor.

In the primary works, due to the complexity of the dynamics of aerial load
transportation, it was simplified by considering some assumptions such as the
motion equations were supposed to be decoupled, and external force and
momentum were assumed instead of load effects [5]. Some works like [6] and [7]
obtained motion equations of aerial load transportation of a slung load in 2D
coordinates where the sliding mode and feedback linearization control were
used for transitional and rotational movements, respectively. Then, in the
next works, the dynamics of a quadrotor and a suspended rigid body were
modeled together using different methods, and different control approaches
were applied to control the system. In these researches, the load was
considered a mass point and the cable was assumed massless, rigid, and
inelastic. For instance, motion equations of a quadrotor with a slung load
were obtained by the Lagrange method in [8], and an anti-swing control
algorithm was designed to reduce the load fluctuations. In [9], a feedback
linearization controller and a neural network controller were designed for
position and attitude control of an aerial transportation system, where the
Udwadia-Kalaba equations were employed to derive its dynamics. In [10], an
interconnection and damping assignment-passivity-based control (IDA-PBC)
strategy was utilized to reduce swings of a point mass which was carried
through a quadrotor. [11] used an optimal control approach for path planning
of the maximum mass of the load transportation with minimum swings. In the
study, the optimal cable length was also determined for the maximum load mass.
In [12] a nonlinear dynamic model of aerial load transportation was presented
using Kane’s equation and a backstepping controller was designed to dampen the
load swings and compensate for wind effects. In [13], the mathematical model
of a quadrotor with a point mass slung load was obtained as coupled and
parallel subsystems; the cable-load subsystem and the quadrotor subsystem.
Afterwards, a controller which was based on the trajectory tracking of the
quadrotor was presented. In another study where a quadrotor carried a point in
dense environments was investigated[14]. In [15], the control of an aerial
transportation system of a cable-suspended payload was designed where the
controller had a fast part for the load swings and a slow part for trajectory
control. Since adaptive sliding mode control approaches are common for systems
in environments with unknowns and chaotic behaviors [16], some works use that
method. For example, [17] investigated the aerial transporting of a mass point
that was connected to a quadrotor through four cables. The dynamics of load
and quadrotor were more coupled since the load moments have impacts on the
rotational movements of the quadrotor. An adaptive sliding mode control
approach was presented for carrying a varying load by a quadrotor where the
mass of the load has consisted of a static part and an exponentially
decreasing part [18]. A robust control was applied in [19] to carry an unknown
payload as well as manage the disturbances caused by wind forces and load
swings.

In some other robotic systems that use cable, like the cable parallel robots
([20], [21], and [22]), the dynamics of cable is also considered which they
use different methods like Gibbs-Appell or Lagrangian to model the cable.
Therefore, the dynamics of cable can be effective in carrying a payload and it
is required that the physical features of the cable are considered in the
motion equations. In some studies such as [23], the cable dynamics was
considered in the motion equations and several serially connected rigid links
were assumed to model the cable. In another study [24], an approach for
lifting a suspended payload was presented according to the relation between
the load and quadrotor distance and the length of cable. This methodology
divided the lifting process into three steps: setup, pull, and raise, where if
the distance between the load and quadrotor was less than the length of cable,
the impact of the load was ignored. A parallel spring and damper was utilized
to indicate the effect of the cable elasticity on aerial transporting of a
point mass [25] and [26]. Some works like [27] and [28] applied several
masses, springs, and dampers to show the impact of the mass, flexibility, and
elasticity of the cable in the motion equations.

For the sake of resolving restrictions like the limited capacity of a
quadrotor for transportation of a load or oscillation of the load, several
quadrotors are employed simultaneously and different approaches have been used
to control the system. Multiple quadrotors were taken to convey a point mass
load which was hanged via massless elements [29], where the motion equations
of the system were derived by Hamilton’s principle. PD and PID control are
simultaneously used in attitude control of a transportation system to damp the
swings of a mass point during transporting the load hanged by massless rigid
elements from several quadrotors [30]. In [31], the motion equation of the
load and quadrotors were decoupled by assuming that the load mass is shared
between quadrotors equally. In that research, an adaptive force control which
is based on a consensus algorithm was designed to control the system. The
mathematical model of a system that consists of two quadrotors and a cable-
suspended point mass load was obtained by the Euler-Lagrange method and
carrying the payload was done along with collision avoidance of obstacles that
was performed by potential field [32]. LQR formation control was built for a
group of quadrotors that carry a swing point mass where the transportation
system was modeled via the Udwadia-Kalaba approach [33]. Some works employed
continuum deformation of multiple quadrotors to deliver a slung load [34] and
[35]. In these works, the group motion of quadrotors was assumed as a
continuum deformation and distances between agents can increase and decrease
homogeneously.

Since the payload is not a point mass in reality, some works considered it as
a rigid body. In [36], the dynamics of the system was decoupled by considering
the impact of each cable force on the corresponding quadrotor. Then, the
system is controlled by the PID method where the load was taken as a leader .
[37] studied the aerial transportation of a 6-DOF rigid body that was
suspended from several quadrotors via massless rigid components and designed a
geometry control to track the desired position of the load. An observer system
is designed by [38] to estimate not only the load mass and inertial but also
the cable force. Moreover, different prediction methods such as the Kalman
filter, recursive least squares, and maximum likelihood estimation were
compared. In [39], the motion equations of aerial transportation of a fluid
container by using three quadrotors were given by Euler-Lagrange equations in
2D coordinates. Multiple masses and springs were used to model the fluid
dynamics, and cables were assumed as massless rigid links. The LQR approach
was used to control the linear motion equations of aerial load transportation
in [40]. In [41], a robust control was designed for carrying a platform
through three quadrotors where two massless cables were connected to each
quadrotor.

In this paper, firstly unlike previous works, the mass, flexibility (bending)
and elasticity (increasing the length) of the cables are not neglected, in
addition the load is assumed as a non-uniform 6-DOF rigid body (inertia moment
is not ignored), and complete coupled dynamics of the aerial transportation
with an arbitrary number of quadrotors is presented. Secondly, a hierarchical
and decentralized control strategy is proposed to appropriately convey the
rigid body to the desired location. Unlike previous research, this control
strategy is used for full dynamics of quadrotors, cables, and the rigid body;
where each cable is modeled as successive masses, springs, and dampers with 4
DOF and it is shown that these components behave like a cable. Generally, one
way to navigate the multi-agent systems is that the system follows a leader,
which is done in the target tracking [42] or autonomous cars [43] and [44], or
using image processing-based approaches for each agent [45], meanwhile, in the
aerial load transportation system in here, the agents (quadrotors) have
interaction with each other, therefore choosing an appropriate leader is
crucial. Thus, the proposed control strategy is based on the load states
(load-leading based), in other words, there is a feedback from the load states
that helps to guide the load on the desired trajectory (with the desired
position and velocity). Furthermore, the capability of this strategy for
transporting homogeneous as well as nonhomogeneous bodies is shown for a
proper spreading of quadrotors. It is worth mentioning that the control system
includes three parts; attitude control, formation control, and navigation
control. Asymptotically stability is proven for the designed sliding mode
formation control system.

In section 3, motion equations are presented for the above mentioned aerial
body carrying system based on Euler-Lagrange equations. Then in section 4, a
control law is proposed for the transportation system to convey the body on
the desired trajectory. The proposed dynamic model and control strategy of the
transportation system is confirmed by numerical simulations for homogeneous
and nonhomogeneous bodies in section 5. The paper is concluded in section 6.

##  2 Preliminaries

Consider $n$ quadrotors with masses ${m}_{i}\in\mathbb{R}$ and symmetric
moments of inertia $\boldsymbol{J_{i}}\in\mathbb{R}^{3\times 3}$,
$i=1,\cdots,n$. A suspended body with mass $m_{l}\in\mathbb{R}$ and moment of
inertia $\boldsymbol{J_{l}}\in\mathbb{R}^{3\times 3}$ is connected to them
through cables. The cables are modeled as serial connections of several
parallel springs and dampers with the point masses $m_{ij}\in\mathbb{R}$,
$i=1,\cdots,n$, at the end of the $j$th spring and damper of the $i$th cable
as depicted in Figure. 1 (each cable can have ${n}_{i}$ different number of
springs, dampers and masses).

Figure 1: Model of the aerial transportation system including the quadrotors,
suspended rigid body, and connecting cables

Three coordinates are used for describing the locations of quadrotors, load
and cables point masses. First is the inertial reference frame
$\\{X,Y,Z\\}=\\{\boldsymbol{e_{1}},\boldsymbol{e_{2}},\boldsymbol{e_{3}}\\}$
with the axis $\boldsymbol{e_{3}}={\left[0,\ 0,\
1\right]}^{T}\in\mathbb{R}^{3}$ pointing downwards alongside the direction of
the gravity and the other axes form an orthonormal frame. The other
coordinates are the body-fixed frames $\\{x,y,z\\}$ and
$\\{x_{i},y_{i},z_{i}\\}$ that are attached to the load and the $i$th
quadrotor, respectively. The location of the load mass center in the inertial
reference frame is denoted by $\boldsymbol{r_{l}}\in\mathbb{R}^{3}$ and its
attitude is given by $\boldsymbol{R_{l}}\in\text{SO}(3)$, where
$\text{SO}(3)=\left\\{\boldsymbol{R}\in\mathbb{R}^{3\times 3}\ \right|\
{\boldsymbol{R}}^{T}\boldsymbol{R}=\boldsymbol{I},\det\left[\boldsymbol{R}\right]=\
1\\}$ determines the special orthogonal group, and $\boldsymbol{R}\ $is
defined by

$\boldsymbol{R}=\left[\begin{array}[]{ccc}\cos\theta\cos\psi&\cos\psi\sin\theta\sin\varphi-\sin\psi\cos\varphi&\sin\psi\sin\varphi+\cos\psi\cos\varphi\sin\theta\\\
\sin\psi\cos\theta&\cos\varphi\cos\psi+\sin\varphi\sin\theta\sin\psi&\sin\psi\cos\varphi\sin\theta-\cos\psi\sin\varphi\\\
-\sin\theta&\cos\theta\sin\varphi&\cos\theta\cos\varphi\end{array}\right]$ (1)

The direction of each spring and damper is denoted by $\boldsymbol{q_{ij}}\in
S^{2}$, where $S^{2}=\\{\boldsymbol{q}\in\mathbb{R}^{3}|\
\left\|\boldsymbol{q}\right\|=1\\}.$ The distance between the $i$th connection
point (corresponding to the $i$th cable and $i$th quadrotor) and load mass
center is denoted by $\boldsymbol{d_{i}}\in\mathbb{R}^{3}$. It is represented
in the body-fixed frame of the load. In addition, spring length, spring
constant and damping coefficient of the $j$th spring and damper of the $i$th
cable are identified by $l_{ij}\in\mathbb{R}^{+}$, $K_{ij}$ and $b_{ij}$,
respectively.

The $i$th quadrotor can provide a thrust force of
$-f_{i}\boldsymbol{R_{i}}\boldsymbol{e_{3}}\in\mathbb{R}^{3}$, where
$f_{i}\in\mathbb{R}^{+}$ is the total thrust magnitude and
$\boldsymbol{R_{i}}\in\mathbb{R}^{3\times 3\ }$ is the rotational matrix of
the $i$th quadrotor. This thrust force is in the inertial frame and provides a
torque $\boldsymbol{\tau_{i}}\in\mathbb{R}^{3}$ in its body frame. The thrust
force $f_{i}$ and torque $\boldsymbol{\tau_{i}}$ are determined based on the
rotor’s angular velocities of the $i$th quadrotor. Finally, the effects of the
disturbances and unmodeled dynamics on the equations of motion of the load
position, the load angle, the $q_{ij}$, $l_{ij}$, and the rotation of the
$i$th quadrotor, are demonstrated, respectively, by $\boldsymbol{\delta
F_{r_{l}}}\in\mathbb{R}^{3}$, $\boldsymbol{\delta
F_{\eta_{l}}}\in\mathbb{R}^{3}$,
$\delta\boldsymbol{F_{q_{ij}}}\in\mathbb{R}^{3}$, $\delta
F_{l_{ij}}\in\mathbb{R}$, and $\boldsymbol{\delta T_{i}}\in\mathbb{R}^{3}$.

In general, the entire system can be seen as a single entity, with the center
of mass of the load considered as the center of the system to which the body
frame is attached. Therefore, the interactions between the flexible rope and
the quadrotors, as well as between the quadrotors themselves, are internal
interactions.

##  3  Dynamical Modeling

First, the positions of the $i$th quadrotor and $j$th mass of the $i$th cable
(connecting the $i$th quadrotor to the load) are respectively given by

$\displaystyle\boldsymbol{r_{i}}$
$\displaystyle=\boldsymbol{r_{l}}+\boldsymbol{R_{l}}\boldsymbol{d_{i}}-\sum^{n_{i}}_{a=1}{l_{ia}\boldsymbol{q_{ia}}}$
$\displaystyle\boldsymbol{r_{ij}}$
$\displaystyle=\boldsymbol{r_{l}}+\boldsymbol{R_{l}}\boldsymbol{d_{i}}-\sum^{n_{i}}_{a=j+1}{l_{ia}\boldsymbol{q_{ia}}}$
(2)

The velocities of the $i$th quadrotor and the $j$th mass of the $i$th cable
are respectively

$\displaystyle\boldsymbol{\dot{r}_{i}}$
$\displaystyle=\boldsymbol{\dot{r}_{l}}+\boldsymbol{\dot{R}_{l}}\boldsymbol{d_{i}}-\sum^{n_{i}}_{a=1}{\left({\dot{l}}_{ia}\boldsymbol{q_{ia}}+l_{ia}\boldsymbol{\dot{q}_{ia}}\right)}$
$\displaystyle\boldsymbol{\dot{r}_{ij}}$
$\displaystyle=\boldsymbol{\dot{r}_{l}}+\boldsymbol{\dot{R}_{l}}\boldsymbol{d_{i}}-\sum^{n_{i}}_{a=j+1}{({\dot{l}}_{ia}\boldsymbol{q_{ia}}+l_{ia}\boldsymbol{\dot{q}_{ia}})}$
(3)

and the kinematics equations $\boldsymbol{\dot{R}_{l}}$ and
$\boldsymbol{\dot{q}_{ij}}$ are defined as

$\displaystyle\boldsymbol{\dot{R}_{l}}$
$\displaystyle=\boldsymbol{R_{l}}\boldsymbol{\widehat{\Omega}_{l}}$
$\displaystyle\boldsymbol{\dot{q}_{ij}}$
$\displaystyle=\boldsymbol{\omega_{ij}}\times\boldsymbol{q_{ij}}=\boldsymbol{\widehat{\omega}_{ij}}\boldsymbol{q_{ij}}$
(4)

The angular velocity of the $j$th mass of the $i$th cable is represented by
$\boldsymbol{\omega_{ij}}\in\mathbb{R}^{3}$ where
$\boldsymbol{q_{ij}}\cdot\boldsymbol{\omega_{ij}}=0$. Furthermore,
$\boldsymbol{\Omega_{l}}\in\mathbb{R}^{3\ }$ is the angular velocity of the
load. The hat notation is used for vector product, i.e.,
$\widehat{(\cdot)}:\mathbb{R}^{3}\to\text{SO}(3)$ is defined as
$\boldsymbol{\widehat{x}}\boldsymbol{y}=\boldsymbol{x}\times\boldsymbol{y}$
for $\boldsymbol{x},\boldsymbol{y}\in\mathbb{R}^{3}$. In other words, the hat
map converts the vector $\boldsymbol{x}={\left[x_{1},x_{2},x_{3}\right]}^{T}$
to the skew-symmetric matrix $\widehat{\boldsymbol{x}}$ with the following
form

$\widehat{\boldsymbol{x}}=\left[\begin{array}[]{ccc}0&{-x}_{3}&x_{2}\\\
x_{3}&0&-x_{1}\\\ {-x}_{2}&x_{1}&0\end{array}\right]$ (5)

The kinetic $T$ and potential $V$ energies of the system are calculated by

$\displaystyle T$
$\displaystyle=\frac{1}{2}m_{l}{\left\|\boldsymbol{\dot{r}_{l}}\right\|}^{2}+\sum^{n}_{i=1}{\frac{1}{2}m_{i}{\left\|{\boldsymbol{\dot{r}}}_{\boldsymbol{i}}\right\|}^{2}}+\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{\frac{1}{2}m_{ij}{\left\|{\boldsymbol{\dot{r}}}_{\boldsymbol{ij}}\right\|}^{2}}}+\frac{1}{2}{\boldsymbol{\Omega}}^{T}_{\boldsymbol{l}}{\boldsymbol{J}}_{\boldsymbol{l}}{\boldsymbol{\Omega}}_{\boldsymbol{l}}+\sum^{n}_{i=1}{\frac{1}{2}{\boldsymbol{\Omega}_{i}}^{T}{\boldsymbol{J}}_{\boldsymbol{i}}{\boldsymbol{\Omega}}_{\boldsymbol{i}}}$
(6) $\displaystyle V$
$\displaystyle=-m_{l}g{\boldsymbol{r}}^{T}_{\boldsymbol{l}}\boldsymbol{e_{3}}-\sum^{n}_{i=1}{m_{i}g{\boldsymbol{r}}^{T}_{\boldsymbol{i}}\boldsymbol{e_{3}}}+\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{m_{ij}g{\boldsymbol{r}}^{T}_{\boldsymbol{ij}}\boldsymbol{e_{3}}}}+\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{\frac{1}{2}K_{ij}\frac{\mathrm{\Delta}l_{ij}\left(\left|\mathrm{\Delta}l_{ij}\right|+\mathrm{\Delta}l_{ij}\right)}{4}}}$
(7)

The last term of the potential energy comes from potential energies of springs
where it is zero as $\mathrm{\Delta}l_{ij}<0$ (shows that the cable is loose),
and it is equal to $\frac{1}{2}K_{ij}\mathrm{\Delta}l_{ij}$ during the stretch
of cable ($\mathrm{\Delta}l_{ij}>0$). Here,
$\mathrm{\Delta}l_{ij}=l_{ij}-L_{ij}\ $ is the length change of the $j$th
spring and damper in the $i$th cable. Then, the equations of motion of the
aerial load transportation system are driven by the Euler-Lagrange method (see
Appendix. A.1) as follows:

$\begin{split}&M_{T}{\boldsymbol{\ddot{r}}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}\left(l_{ij}\left(-{\widehat{\boldsymbol{q}}}_{\boldsymbol{ij}}{\boldsymbol{\dot{\omega}}}_{\boldsymbol{ij}}-\boldsymbol{\parallel}\boldsymbol{\omega_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}\right)+2{\dot{l}}_{ij}\boldsymbol{\dot{q}_{ij}}+{\ddot{l}}_{ij}\boldsymbol{q_{ij}}\right)}}\\\
&\quad-
M_{T}g\boldsymbol{e_{3}}+\sum^{n}_{i=1}{M_{qi}\boldsymbol{R_{l}}\left({\widehat{\boldsymbol{\Omega}}}^{2}_{\boldsymbol{l}}\boldsymbol{d_{i}}-{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{\dot{\Omega}}}_{\boldsymbol{l}}\right)}=-\sum^{n}_{i=1}{f_{i}\boldsymbol{R_{i}}\boldsymbol{e_{3}}}+\delta
F_{r_{l}}\end{split}$ (8)

$\begin{split}&\left({\boldsymbol{J}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{M_{qi}}{\widehat{\boldsymbol{d}}}^{2}_{\boldsymbol{i}}\right){\boldsymbol{\dot{\Omega}}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}\boldsymbol{{\hat{d}}_{i}}\boldsymbol{R_{l}}^{T}\left(l_{ij}\left(-{\widehat{\boldsymbol{q}}}_{\boldsymbol{ij}}{\boldsymbol{\dot{\omega}}}_{\boldsymbol{ij}}-\boldsymbol{\parallel}\boldsymbol{\omega_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}\right)+2{\dot{l}}_{ij}\boldsymbol{\dot{q}_{ij}}+{\ddot{l}}_{ij}\boldsymbol{q_{ij}}\right)}}\\\
&\quad+\sum^{n}_{i=1}{M_{qi}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}{\boldsymbol{\ddot{r}}}_{\boldsymbol{l}}+{\widehat{\boldsymbol{\Omega}}}_{\boldsymbol{l}}\left({\boldsymbol{J}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{M_{qi}}{\widehat{\boldsymbol{d}}}^{2}_{\boldsymbol{i}}\right){\boldsymbol{\Omega}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{M_{qi}}g{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\boldsymbol{e_{3}}=-\sum^{n}_{i=1}{{f_{i}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\boldsymbol{R_{i}}\boldsymbol{e_{3}}}}+\delta
F_{\eta_{l}}\end{split}$ (9)

$\begin{split}&M_{cij}l^{2}_{ij}\left({\widehat{\boldsymbol{q}}}_{\boldsymbol{ij}}{\boldsymbol{\dot{\omega}}}_{\boldsymbol{ij}}+\boldsymbol{\parallel}\boldsymbol{\omega_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}\right)-\sum^{n_{i}}_{k=1\atop
k\neq
j}{M_{cij}l_{ij}l_{ik}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\left({\widehat{\boldsymbol{q}}}_{\boldsymbol{ik}}{\boldsymbol{\dot{\omega}}}_{\boldsymbol{ik}}+\parallel{\boldsymbol{\omega}}_{\boldsymbol{ik}}{\boldsymbol{\parallel}}^{2}{\boldsymbol{q}}_{\boldsymbol{ik}}\right)}-M_{cij}l^{2}_{ij}\boldsymbol{\parallel}\boldsymbol{\dot{q}_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}\\\
&\quad\quad+2\sum^{n_{i}}_{k=1}{M_{cij}l_{ij}{\dot{l}}_{ik}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}{\boldsymbol{\dot{q}}}_{\boldsymbol{ik}}}+\sum^{n_{i}}_{k=1\atop
k\neq
j}{M_{cij}l_{ij}{\ddot{l}}_{ik}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}{\boldsymbol{q}}_{\boldsymbol{ik}}}-M_{cij}{\dot{l}}^{2}_{ij}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{q_{ij}}\\\
&\quad\quad-
M_{cij}l_{ij}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\left({\boldsymbol{\ddot{r}}}_{\boldsymbol{l}}+\boldsymbol{R_{l}}\left({\widehat{\boldsymbol{\Omega}}}^{2}_{\boldsymbol{l}}\boldsymbol{d_{i}}-{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{\dot{\Omega}}}_{\boldsymbol{l}}\right)\right)+M_{cij}gl_{ij}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{e_{3}}=l_{ij}{f_{i}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{R_{i}}\boldsymbol{e_{3}}}+\delta
F_{q_{ij}}\end{split}$ (10)

$\begin{split}&\sum^{n_{i}}_{k=1}{M_{cij}{\ddot{l}}_{ik}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}{\boldsymbol{q}}_{\boldsymbol{ik}}}-\sum^{n_{i}}_{k=1\atop
k\neq
j}{M_{cij}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\left(2{\dot{l}}_{ik}{\boldsymbol{q}}_{\boldsymbol{ik}}+l_{ik}\left({\widehat{\boldsymbol{q}}}_{\boldsymbol{ik}}{\boldsymbol{\dot{\omega}}}_{\boldsymbol{ik}}+\boldsymbol{\parallel}{\boldsymbol{\omega}}_{\boldsymbol{ik}}{\boldsymbol{\parallel}}^{2}{\boldsymbol{q}}_{\boldsymbol{ik}}\right)\right)}\\\
&\quad+M_{cij}g{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\boldsymbol{e_{3}}-M_{cij}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\left({\boldsymbol{\ddot{r}}}_{\boldsymbol{l}}+\boldsymbol{R_{l}}\left({\widehat{\boldsymbol{\Omega}}}^{2}_{\boldsymbol{l}}\boldsymbol{d_{i}}-{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{\dot{\Omega}}}_{\boldsymbol{l}}\right)\right)-M_{cij}l_{ij}{\boldsymbol{\dot{q}}}^{T}_{\boldsymbol{ij}}\boldsymbol{\dot{q}_{ij}}\\\
&\quad+K_{ij}\left(l_{ij}-L_{ij}\right)\frac{1+\text{sgn}\left(l_{ij}-L_{ij}\right)}{2}+b_{ij}{\dot{l}}_{ij}\frac{1+\text{sgn}\left(l_{ij}-L_{ij}\right)}{2}=-{f_{i}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\boldsymbol{R_{i}}\boldsymbol{e_{3}}}+\delta
F_{l_{ij}}\end{split}$ (11)

${\boldsymbol{J}}_{\boldsymbol{i}}{\boldsymbol{\dot{\Omega}}}_{\boldsymbol{i}}-{\widehat{\boldsymbol{\Omega}}}_{\boldsymbol{i}}{\boldsymbol{J}}_{\boldsymbol{i}}{\boldsymbol{\Omega}}_{\boldsymbol{i}}={\boldsymbol{\tau}}_{\boldsymbol{i}}+\delta
T_{i}$ (12)

Since the rotation part of quadrotors (Eq. 12) is decoupled from the other
part of the dynamic, equations (8) to (11) in the matrix form will be

$\boldsymbol{M}\boldsymbol{\dot{X}}+\boldsymbol{C}=\boldsymbol{P}+\boldsymbol{P_{\delta}}$
(13)

where
$\boldsymbol{X}=\begin{bmatrix}\boldsymbol{\dot{r_{l}}}&\boldsymbol{\Omega_{l}}&{\boldsymbol{\omega}}_{\boldsymbol{1}\boldsymbol{j}}&\cdots&{\boldsymbol{\omega}}_{\boldsymbol{nj}}&\dot{l}_{1j}&\cdots&\dot{l}_{nj}\end{bmatrix}^{T}\in\mathbb{R}^{d}$,
$\boldsymbol{M}\in\mathbb{R}^{d\times d}$,
$\boldsymbol{\mathrm{C}}\in\mathbb{R}^{d}$,
$\boldsymbol{P_{\delta}}\in\mathbb{R}^{d}$, and
$\boldsymbol{P}\in\mathbb{R}^{d}$ with $d=6+4nm$ are the state vector, mass
matrix, Coriolis matrix, disturbance vector, and control input, respectively.
These matrices are presented in detail in the Appendix. A.2.

##  4  Controller Design

In this section, a control framework is proposed for multi-agent aerial
transportation of a rigid body to the desired trajectory. This control
framework is able to eliminate problems such as payload fluctuations, roping
cables and collision of the quadrotors. The control strategy consists of three
parts: the first part is the navigation control which receives feedback
directly from the states of load and aids to navigate the system to the
desired position with proper velocity. The next part is the formation control
which guarantees that agents (quadrotors) get in proper formation with respect
to their neighbors and the leader. This can reduce the swing of the load and
prevent the collision of quadrotors. The desired angles and thrust force of
each quadrotor are provided from the formation control part. Finally, attitude
control as the third part generates agents control signal to stabilize the
attitude of each quadrotor based on the desired angles. The attitude control
part has internal feedback to stabilize each quadrotor. Figure. 2 shows the
block diagram of the proposed transportation control system.

Figure 2: Block diagram of the proposed control system for multi-agent
transportation of a rigid body.

###  4.1  Navigation Control

The navigation control guides the system to the desired position and velocity
by creating a proper center of the formation. The center of formation (leader)
is an imaginary point or is the center of the payload which must guarantee
that the load gets the desired trajectory and also the group move with a
proper velocity. Let’s define the position and velocity of the leader as

$\displaystyle{\boldsymbol{r}}_{\boldsymbol{leader}}={\boldsymbol{r}}_{\boldsymbol{load}}+{\boldsymbol{k}}_{\boldsymbol{r}}\left({\boldsymbol{r}}_{\boldsymbol{dload}}-{\boldsymbol{r}}_{\boldsymbol{load}}\right)+{\boldsymbol{k}}_{\boldsymbol{i}}\int{\left({\boldsymbol{r}}_{\boldsymbol{dload}}-{\boldsymbol{r}}_{\boldsymbol{load}}\right)\boldsymbol{dt}}+{\left[0\
0\ L_{t}\right]}^{T}$ (14)
$\displaystyle{\boldsymbol{v}}_{\boldsymbol{leader}}={\boldsymbol{v}}_{\boldsymbol{load}}+{\boldsymbol{k}}_{\boldsymbol{v}}\left({\boldsymbol{v}}_{\boldsymbol{dload}}-{\boldsymbol{v}}_{\boldsymbol{load}}\right)$
(15)

where ${\boldsymbol{r}}_{\boldsymbol{load}}$,
${\boldsymbol{r}}_{\boldsymbol{dload}}$,
${\boldsymbol{v}}_{\boldsymbol{load}}$ and
${\boldsymbol{v}}_{\boldsymbol{dload}}$ express the position, desired
position, velocity and desired velocity of the load, respectively.
Furthermore, the last term in (14) includes the length of cables $L_{t}$ to
make the leader elevation equal to that of followers. Diagonal positive
matrices of ${\boldsymbol{k}}_{\boldsymbol{r}}$,
${\boldsymbol{k}}_{\boldsymbol{i}}$ and ${\boldsymbol{k}}_{\boldsymbol{v}}$
are tuned to achieve proper performance of the system.

###  4.2  Formation Control

Formation control is designed to avoid collision of quadrotors and twisting
cables together, and also distribute the rigid body weight between all
quadrotors uniformly.

####  4.2.1  Preliminary

First, a brief explanation of multi-agent systems was given as well as a
preliminary of such systems. In general, multi-agent systems have broad
applications such as UAVs [46], and they can be applied along with a
combination of different methods like neural networks and optimization
approaches ([47], [48]). Consider a group of $n$ followers and a leader, in
which the leader tracks a desired trajectory and followers move along with the
leader. The communication of followers with each other and the leader is
exposed by a graph $G=(\upsilon,\varepsilon)$ where
$\upsilon=\\{{\upsilon}_{1}\ ,{\upsilon}_{2}\ ,...,{\upsilon}_{n}\\}$ and
$\varepsilon$ denote node and edge sets, respectively. In the graph, each edge
$({\upsilon}_{j},{\upsilon}_{i})\in\ \varepsilon$ with a specified weight
$a_{ij}\ \geq\ 0$ is an ordered pair of connected nodes. The neighbor set of
the agent $i$ is represented as ${\boldsymbol{N}}_{\boldsymbol{i}}=\\{\
{\upsilon}_{j}\ \ :\ ({\upsilon}_{j},{\upsilon}_{i})\in\ \varepsilon\\}$. It
means that the agent $i$ and $j$ are neighbors and the agent $i$ sends the
information to agent $j$, if there is an edge between them. Furthermore, in
the spanning tree, $a_{ij}=\ a_{ji}$, and no agent transfers the information
to itself i.e.$\ a_{ii}=0$.

The adjacency matrix is given by

$\displaystyle\boldsymbol{A}\mathrm{=}\left[\begin{array}[]{cccc}0&a_{12}&\cdots&a_{1n}\\\
a_{21}&0&\cdots&a_{2n}\\\ \vdots&\vdots&\ddots&\vdots\\\
a_{n1}&a_{n2}&\cdots&0\end{array}\right]$ (16)

The degree matrix $D$ $\in\mathbb{R}^{n\times n}$ is defined as a diagonal
matrix where $d_{i}=\sum^{n}_{j=1}{a_{ij}}$ ($d_{i}$ is the in-degree of
${\upsilon}_{i}$). Based on the adjacency and degree matrices, the Laplacian
matrix is determined by
$\boldsymbol{L}=\boldsymbol{D}-\boldsymbol{A}\in\mathbb{R}^{n\times n}$ where

$\displaystyle l_{\mathrm{ij}}=\left\\{\begin{array}[]{c}d_{i}\ \ \ \ \ \ \ \
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ i=j\\\ -1\ \ \ \ \ \ \left(i,j\right)\in E,\
i\neq j\\\ 0\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ otherwise\end{array}\right.$ (17)

In addition, the relationship between the leader and followers is represented
$by\ \boldsymbol{B}=diag\\{b_{1}\ ,b_{2}\ ,...,b_{n}\\}.$

####  4.2.2 Formation Control Design

To denote the dynamics of each agent in $x$, $y$ and $z$ coordinates, first
for a quadrotor define

$\displaystyle f\left(X,U\right)=\left[\begin{array}[]{c}\dot{x}\\\
-\frac{U_{1}}{m}(sin\psi\sin\phi+cos\phi\cos\psi\sin\theta)+{\delta}_{x}\\\
\dot{y}\\\ \frac{U_{1}}{m}(sin\phi\cos\psi-
cos\phi\sin\psi\sin\theta)+{\delta}_{y}\\\ \dot{z}\\\ g-\frac{U_{1}}{m}cos\phi
cos\theta+{\delta}_{z}\end{array}\right]$ (18)

where $\dot{x}$, $\dot{y}$ and $\dot{z}$ are its velocities in the inertia
coordinates; $\phi$, $\theta$ and $\psi$ are its Euler angles in the inertia
coordinates; $m$ is its mass; $g$ is the gravitational acceleration; $U_{1}$
is its thrust; ${\delta}_{x}$, ${\delta}_{y}$ and ${\delta}_{z}$ represent the
effect of uncertainties and disturbances due to unmodeled dynamics, unknown
payload, and external disturbances.

The Euler angles of $\phi$, $\theta$ and $\psi$ are respectively substituted
by ${\phi}_{d}$, ${\theta}_{d}$ and ${\psi}_{d}$ which ${\psi}_{d}$ is always
supposed zero, thus

$\displaystyle f\left(X,U\right)=\left[\begin{array}[]{c}\dot{x}\\\
-\frac{U_{1}}{m}cos{\phi}_{d}\sin{\theta}_{d}+{\delta}_{x}\\\ \dot{y}\\\
\frac{U_{1}}{m}sin{\phi}_{d}\ +{\delta}_{y}\\\ \dot{z}\\\
g-\frac{U_{1}}{m}cos{\phi}_{d}\cos{\theta}_{d}+{\delta}_{z}\end{array}\right]$
(19)

The recent equation can be rewritten as

$\displaystyle
f\left(X,U\right)={\left[\dot{x}=v_{x}\quad\ddot{x}=u_{x}+{\delta}_{x}\quad\dot{y}=v_{y}\quad\ddot{y}=u_{y}+{\delta}_{y}\quad\dot{z}=v_{z}\quad\ddot{z}=u_{z}+{\delta}_{z}\right]}^{T}$
(20)

Hence, formation control is designed for a system that each of its agents has
3D double integrator dynamics. Now, define

$\displaystyle\boldsymbol{r_{i}}$ $\displaystyle={\left[x_{i}\quad y_{i}\quad
z_{i}\right]}^{T}$ $\displaystyle\boldsymbol{v_{i}}={\left[v_{xi}\quad
v_{yi}\quad v_{zi}\right]}^{T}$
$\displaystyle\quad\boldsymbol{u_{i}}={\left[u_{xi}\quad u_{yi}\quad
u_{zi}\right]}^{T}$
$\displaystyle{\boldsymbol{\mathit{\Delta}}}_{\boldsymbol{i}}={\left[{\delta}_{xi}\quad{\delta}_{yi}\quad{\delta}_{zi}\right]}^{T}$
(21)

where $\boldsymbol{r_{i}},\boldsymbol{v_{i}}$, $\boldsymbol{u_{i}}$ and
${\boldsymbol{\mathit{\Delta}}}_{\boldsymbol{i}}\boldsymbol{\ }$are vectors of
the position, velocity, control input and disturbances of the $i$th agent,
respectively. Thus, the motion equation of the $i$th agent is given as

$\left\\{\begin{array}[]{l}\boldsymbol{\dot{r}_{i}}=\boldsymbol{v_{i}}\\\
\boldsymbol{\dot{v}_{i}}=\boldsymbol{u_{i}}+{\boldsymbol{\mathit{\Delta}}}_{\boldsymbol{i}}\end{array}\right.$
(22)

The formation task is a leader-follower based problem and the leader dynamics
is given by

$\left\\{\begin{array}[]{l}\boldsymbol{\dot{r}_{l}}=\boldsymbol{v_{l}}\\\
\boldsymbol{\dot{v}_{l}}={\boldsymbol{U}}_{\boldsymbol{l}}\end{array}\right.$
(23)

Assumption 1. The graph has at least one directed spanning tree.

The multi-agent system requires to reach the desired formation, therefore, the
error position and velocity of the $i$th agent is defined as

$\displaystyle\boldsymbol{e_{ri}}$
$\displaystyle=\sum^{n}_{j=1}{a_{ij}\left(\boldsymbol{r_{i}}-\boldsymbol{r_{j}}-\boldsymbol{H_{ij}}\right)+b_{i}(\boldsymbol{r_{i}}-\boldsymbol{r_{l}}-\boldsymbol{H_{il}})}$
$\displaystyle\boldsymbol{e_{vi}}=\sum^{n}_{j=1}{a_{ij}\left(\boldsymbol{v_{i}}-\boldsymbol{v_{j}}\right)+b_{i}(\boldsymbol{v_{i}}-\boldsymbol{v_{l}})}$
(24)

where $\boldsymbol{\
}{\boldsymbol{e}}_{\boldsymbol{ri}}={\left[\begin{array}[]{ccc}e_{xi}&e_{yi}&e_{zi}\end{array}\right]}^{T}$,
$\boldsymbol{\
}{\boldsymbol{e}}_{\boldsymbol{vi}}={\left[\begin{array}[]{ccc}e_{xi}&e_{yi}&e_{zi}\end{array}\right]}^{T}$,
$\boldsymbol{H_{ij}}={\left[\begin{array}[]{ccc}h_{xij}&h_{yij}&h_{zij}\end{array}\right]}^{T}$
and
$\boldsymbol{H_{il}}={\left[\begin{array}[]{ccc}h_{xil}&h_{yil}\end{array}\right.}$
${\left.\begin{array}[]{ccc}h_{zil}\end{array}\right]}^{T}$ express the
position error, velocity error, desired distance of the $i$th agent from the
$j$th agent and the desired distance of the $i$th agent from the leader,
respectively. Based on Assumption 1, the error functions for the general
multi-agent system are obtained as

$\displaystyle\boldsymbol{E}=\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\left(\boldsymbol{r}-\boldsymbol{H}\right)-\left(\boldsymbol{B}\boldsymbol{\otimes}{\boldsymbol{I}}_{\boldsymbol{3}}\right)\left({\boldsymbol{1}}_{\boldsymbol{n}}\boldsymbol{\otimes}\boldsymbol{r_{l}}-{\boldsymbol{H}}_{\boldsymbol{l}}\right)$
(25)
$\displaystyle{\boldsymbol{E}}_{\boldsymbol{v}}=\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\boldsymbol{v}-\left(\boldsymbol{B}\boldsymbol{\otimes}{\boldsymbol{I}}_{\boldsymbol{3}}\right)\boldsymbol{v_{l}}$
(26)

where$\boldsymbol{\
}\boldsymbol{E}={\left[\begin{array}[]{cccc}\boldsymbol{e_{1}}&\boldsymbol{e_{2}}&\boldsymbol{\cdots}&{\boldsymbol{e}}_{\boldsymbol{n}}\end{array}\right]}^{T}\in\mathbb{R}^{\mathrm{3n}}$,
$\boldsymbol{\
}{\boldsymbol{E}}_{\boldsymbol{v}}={\left[\begin{array}[]{cccc}{\boldsymbol{e}}_{\boldsymbol{v}\boldsymbol{1}}&{\boldsymbol{e}}_{\boldsymbol{v}\boldsymbol{2}}&\boldsymbol{\cdots}&{\boldsymbol{e}}_{\boldsymbol{vn}}\end{array}\right]}^{T}\in\mathbb{R}^{\mathrm{3n}}$,
$\mathcal{L}$ is Laplacian matrix, $\boldsymbol{\otimes}$ represents the
Kronecker product,
$\boldsymbol{B}={\left[\begin{array}[]{cccc}b_{1}&b_{2}\end{array}\right.}$
${\left.\begin{array}[]{ccc}&\cdots&b_{n}\end{array}\right]}^{T}\in\mathbb{R}^{n}$,
${\boldsymbol{r}}_{\boldsymbol{f}}={\left[\begin{array}[]{cccc}{\boldsymbol{r}}_{\boldsymbol{1}}&{\boldsymbol{r}}_{\boldsymbol{2}}&\boldsymbol{\cdots}&{\boldsymbol{r}}_{\boldsymbol{n}}\end{array}\right]}^{T}\in\mathbb{R}^{3n}$,
$\boldsymbol{\
}{\boldsymbol{v}}_{\boldsymbol{f}}={\left[\begin{array}[]{cccc}{\boldsymbol{v}}_{\boldsymbol{1}}&{\boldsymbol{v}}_{\boldsymbol{2}}\end{array}\right.}$
${\left.\begin{array}[]{ccc}&\boldsymbol{\cdots}&{\boldsymbol{v}}_{\boldsymbol{n}}\end{array}\right]}^{T}\in\mathbb{R}^{3n},\boldsymbol{H}={\left[\begin{array}[]{cccc}{\boldsymbol{H}}_{\boldsymbol{1}\boldsymbol{j}}&{\boldsymbol{H}}_{\boldsymbol{2}\boldsymbol{j}}&\boldsymbol{\cdots}&{\boldsymbol{H}}_{\boldsymbol{nj}}\end{array}\right]}^{T}\in\mathbb{R}^{3n}$
and
$H_{l}={\left[\begin{array}[]{cccc}H_{1l}&H_{2l}&\cdots&H_{nl}\end{array}\right]}^{T}\in\mathbb{R}^{3n}$.

By differentiating (26), we have

${\boldsymbol{\dot{E}}}_{\boldsymbol{v}}=\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\boldsymbol{U}+\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\boldsymbol{\mathit{\Delta}}-\left(\boldsymbol{B}\boldsymbol{\otimes}{\boldsymbol{I}}_{\boldsymbol{3}}\right){\boldsymbol{u}}_{\boldsymbol{l}}$
(27)

with

$\left\\{\begin{array}[]{c}\boldsymbol{U}={\left[\begin{array}[]{cccc}{\boldsymbol{U}}_{\boldsymbol{1}}&{\boldsymbol{U}}_{\boldsymbol{2}}&\boldsymbol{\cdots}&{\boldsymbol{U}}_{\boldsymbol{n}}\end{array}\right]}^{T}\in\mathbb{R}^{3n}\\\
\boldsymbol{\mathrm{\Delta}}={\left[\begin{array}[]{cccc}{\boldsymbol{\mathrm{\Delta}}}_{\boldsymbol{1}}&{\boldsymbol{\mathrm{\Delta}}}_{\boldsymbol{2}}&\boldsymbol{\cdots}&{\boldsymbol{\mathrm{\Delta}}}_{\boldsymbol{n}}\end{array}\right]}^{T}\in\mathbb{R}^{3n}\end{array}\right.$
(28)

To achieve the desired formation, we employ the sliding mode approach and
define the sliding surface as

$\displaystyle\boldsymbol{S}=\boldsymbol{\mathit{\Lambda}}\boldsymbol{E}+\boldsymbol{E}_{\boldsymbol{v}}$
(29)

where
$\boldsymbol{\Lambda}=diag({\lambda}_{x1},{\lambda}_{y1},{\lambda}_{z1},\cdots,{\lambda}_{xn},{\lambda}_{yn},{\lambda}_{zn})\in\mathbb{R}^{3n\times
3n}$ with ${\lambda}_{xi},{\lambda}_{yi},{\lambda}_{zi}>0$ and
$\boldsymbol{\mathrm{S}}\mathrm{=}{\left[\begin{array}[]{cccc}{\boldsymbol{S}}_{\boldsymbol{1}}&{\boldsymbol{S}}_{\boldsymbol{2}}&\boldsymbol{\cdots}&{\boldsymbol{S}}_{\boldsymbol{n}}\end{array}\right]}^{T}\in\mathbb{R}^{3n}$
with
${\boldsymbol{S}}_{\boldsymbol{i}}={\left[\begin{array}[]{ccc}s_{xi}&s_{yi}&s_{zi}\end{array}\right]}^{T}\in\mathbb{R}^{3}.$
Differentiating (29) is defined as

$\displaystyle\boldsymbol{\dot{S}}=$
$\displaystyle\boldsymbol{\mathit{\Lambda}}{\boldsymbol{E}}_{\boldsymbol{v}}+\boldsymbol{\dot{E}}_{\boldsymbol{v}}=\boldsymbol{\mathit{\Lambda}}\left\\{\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right){\boldsymbol{v}}_{\boldsymbol{f}}-\left(\boldsymbol{B}\boldsymbol{\otimes}{\boldsymbol{I}}_{\boldsymbol{3}}\right)\boldsymbol{v_{l}}\right\\}+\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\boldsymbol{U}$
(30)
$\displaystyle+\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\boldsymbol{\mathit{\Delta}}-\left(\boldsymbol{B}\boldsymbol{\otimes}{\boldsymbol{I}}_{\boldsymbol{3}}\right){\boldsymbol{u}}_{\boldsymbol{l}}$

Finally, the control input is given by

$\displaystyle\boldsymbol{U}=$
$\displaystyle{-\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)}^{-\boldsymbol{1}}\left\\{\boldsymbol{\mathit{\Lambda}}\left\\{\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right){\boldsymbol{v}}_{\boldsymbol{f}}-\left(\boldsymbol{B}\boldsymbol{\otimes}{\boldsymbol{I}}_{\boldsymbol{3}}\right)\boldsymbol{v_{l}}\right\\}-\left(\boldsymbol{B}\boldsymbol{\otimes}{\boldsymbol{I}}_{\boldsymbol{3}}\right){\boldsymbol{u}}_{\boldsymbol{l}}\right.$
(31)
$\displaystyle\left.+\left\\{\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\boldsymbol{K}+\boldsymbol{M}\right\\}\boldsymbol{sgn}\boldsymbol{(}\boldsymbol{S}\boldsymbol{)}\right\\}$

where
$\boldsymbol{M}=diag\left({\mu}_{x1},{\mu}_{y1},{\mu}_{z1},\cdots,{\mu}_{xn},{\mu}_{yn},{\mu}_{zn}\right)\in\mathbb{R}^{\mathrm{3n\times
3n}}$,
$\boldsymbol{K}={\left[\begin{array}[]{ccc}k_{x1}&k_{y1}&k_{z1}\end{array}\right.}$
${\left.\begin{array}[]{cccc}\cdots&k_{xn}&k_{yn}&k_{zn}\end{array}\right]}^{T}\in\mathbb{R}^{\mathrm{3n\times
3n}}$ is the upper bound of $\boldsymbol{\mathit{\Delta}}$ and$\boldsymbol{\
}\boldsymbol{sgn}\left(\boldsymbol{S}\right)={\left[\begin{array}[]{c}\boldsymbol{sgn}\left({\boldsymbol{S}}^{T}_{\boldsymbol{1}}\right)\end{array}\right.}$
${\left.\begin{array}[]{ccc}\boldsymbol{sgn}\left({\boldsymbol{S}}^{T}_{\boldsymbol{2}}\right)&\boldsymbol{\cdots}&\boldsymbol{sgn}\left({\boldsymbol{S}}^{T}_{\boldsymbol{n}}\right)\end{array}\right]}^{T}\in\mathbb{R}^{\mathrm{3n}}$.

Theorem 1. The multi-agent system with the followers dynamics (22) and leader
dynamics (23), control input (31), sliding surface (29) and a directed
spanning tree is stable, if each components of the matrices of
$\boldsymbol{M}$ and $\boldsymbol{K}$ satisfies ${\mu}_{xi},\
{\mu}_{yi},{\mu}_{zi},k_{xi},\ k_{yi},k_{zi}>0$.

Proof: Consider
$V^{\prime}=\frac{1}{2}{\boldsymbol{S}}^{T}\boldsymbol{S}=\frac{1}{2}{\mathit{\Sigma}}^{N}_{i=1}\boldsymbol{S_{i}}^{2}$
as the Lyapunov function candidate. Then, its time differentiation will be

$\displaystyle\dot{V}^{\prime}=$
$\displaystyle{\boldsymbol{S}}^{T}\boldsymbol{\dot{S}}={\boldsymbol{S}}^{T}\left\\{\boldsymbol{\mathit{\Lambda}}\left\\{\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right){\boldsymbol{v}}_{\boldsymbol{f}}-\left(\boldsymbol{B}\boldsymbol{\otimes}{\boldsymbol{I}}_{\boldsymbol{3}}\right)\boldsymbol{v_{l}}\right\\}+\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\boldsymbol{U}\right.$
(32)
$\displaystyle\left.+\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\boldsymbol{\mathit{\Delta}}-\left(\boldsymbol{B}\boldsymbol{\otimes}{\boldsymbol{I}}_{\boldsymbol{3}}\right){\boldsymbol{u}}_{\boldsymbol{l}}\right\\}$

By substituting (30) into (32) $\dot{V}^{\prime}$, one can write

$\displaystyle\dot{V}^{\prime}={\boldsymbol{S}}^{T}\left\\{\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\boldsymbol{\mathit{\Delta}}-\left\\{\left(\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}\right)\boldsymbol{K}+\boldsymbol{M}\right\\}\boldsymbol{sgn}\boldsymbol{(}\boldsymbol{S}\boldsymbol{)}\right\\}$
(33)

where $\boldsymbol{K}$ is the upper bound of $\boldsymbol{\mathit{\Delta}}$.
Define
$\boldsymbol{Q}=\left(\mathcal{L}+\boldsymbol{B}\right)\boldsymbol{\otimes}\boldsymbol{I}_{\boldsymbol{3}}$,
$\dot{V}^{\prime}$ can be rewritten as

$\displaystyle\dot{V}^{\prime}\boldsymbol{\leq}{\boldsymbol{S}}^{T}\left\\{\boldsymbol{QK}-\left\\{\boldsymbol{QK}+\boldsymbol{M}\right\\}\boldsymbol{sgn}\left(\boldsymbol{S}\right)\right\\}=\sum^{N}_{i=1}{\left(\boldsymbol{Q_{i}K_{i}({S_{i}}-|S_{i}|)-M_{i}|S_{i}|}\right)}$
(34)

Hence, choosing ${\mu}_{xi},{\mu}_{yi},{\mu}_{zi},k_{xi},k_{yi},k_{zi}>0$ such
that $\dot{V}^{\prime}\boldsymbol{<}\boldsymbol{0}$ and as regards
$V^{\prime}>0$ thus the closed-loop control system is asymptotically stable.
$\hfill\blacksquare$

###  4.3  Attitude Control

The aim of attitude control is the stabilization of each quadrotor. Here, a
Proportional-Integrator-Derivative controller is used for stabilization of
each quadrotor [19] and [33]

$\displaystyle
U_{2}=K_{p\phi}\left({\phi}_{d}-\phi\right)-K_{d\phi}\dot{\phi}+K_{i\phi}\int\left({\phi}_{d}-\phi\right)$
(35) $\displaystyle
U_{3}=K_{p\theta}\left({\theta}_{d}-\theta\right)-K_{d\theta}\dot{\theta}+K_{i\theta}\int\left({\theta}_{d}-\theta\right)$
(36) $\displaystyle
U_{4}=K_{p\psi}\left({\psi}_{d}-\psi\right)-K_{d\psi}\dot{\psi}+K_{i\psi}\int({\psi}_{d}-\psi)$
(37)

where $K_{p\varphi}$, $K_{p\theta}$ and $K_{p\psi}$ are the proportional
coefficients for control of the angles $\varphi$, $\theta$ and $\psi$,
respectively; $K_{d\varphi}$, $K_{d\theta}$ and $K_{d\psi}$ are the derivative
coefficients for control of the angular velocities; the integrator
coefficients are indicated by $K_{i\varphi}$, $K_{i\theta}$ and $K_{i\psi}$;
${\varphi}_{d}$, $\theta_{d}$ and ${\psi}_{d}$ are the desired angles of each
quadrotor respect to its body frame which ${\psi}_{d}$ is zero; finally,
$\dot{\varphi},\dot{\theta}$ and $\dot{\psi}$ present the angular velocity of
each quadrotor respect to its body frame. Moreover, in this paper, the desired
angular velocities of each quadrotor ${\dot{\varphi}}_{d},{\dot{\theta}}_{d}$
and ${\dot{\psi}}_{d}$ are supposed to be zero. At the end, the outputs of Eq.
35-37, $U_{2i},U_{3i},andU_{4i}$ (i=1,…,n), are the one of inputs for the
actuators, and $\tau_{i}\in\mathbb{R}^{3}$ in Eq. 12 is one of the output, and
since we don’t study the dynamics of actuators, they are equal in this study,
i.e. $\tau_{i}=[U_{2i},U_{3i},U_{4i}]^{T}$. It must be mentioned that the
other input and output of the actuators are, respectively, $U_{1i}$ which is
derived from $\boldsymbol{U}_{i}$ in Eq. 31 and $f_{i}$.

##  5  Simulation

In this section, numerical examples are presented to demonstrate the
appropriate operation of the proposed control framework. First, the
transportation of a homogeneous rigid body is studied, and then it is done for
the transportation of a non-homogeneous load. In both cases, 4 quadrotors
($n=4$) are considered and each cable is divided into 5 sections of mass,
spring, and damper ($n_{i}=5$). Parameters of the system and initial
conditions are given in Table 2 where the parameters for the quadrotors and
the cables are taken from the actual models in [23] and [28]. Indeed, the
cable parameters are defined according to the material properties. Control
parameters are presented in Table 3.

Table 2: Physical parameters of the system Parameter | Value | Unit
---|---|---
$m_{l}$ | 2 | (kg)
$r_{l0}$ | ${\left[0,0,0\right]}^{T}$ | (m)
$v_{l0}$ | ${\left[0,0,0\right]}^{T}$ | (m/s)
${\eta}_{l0}$ | ${\left[30,20,-30\right]}^{\mathrm{T}}$ | (degree)
$\Omega_{l0}$ | ${\left[0,0,0\right]}^{T}$ | (rad/s)
$m_{ij}$ | 0.01 | (kg)
$K_{ij}$ | ${\mathrm{2\times 10}}^{\mathrm{4}}$ | (N/m)
$b_{ij}$ | $20$ | (N.s/m)
$L_{ij}$ | 0.5 | (m)
$J_{i}$ | $\mathrm{diag}\left[\mathrm{0.577,0.577,1.05}\right]\mathrm{\times}{\mathrm{10}}^{\mathrm{-}\mathrm{2}}$ | (kg/m2)
$m_{i}$ | 0.755 | (kg)
${\eta}_{0i}$ | ${\left[0,0,0\right]}^{T}$ | (degree)
$\Omega_{0i}$ | ${\left[0,0,0\right]}^{T}$ | (rad/s)
$r_{desired}$ | $[10,10,-10]$ | (m)
$v_{desired}$ | ${\left[0,0,0\right]}^{T}$ | (m/s)
Table 3: Control parameters Parameter | Value | Parameter | Value
---|---|---|---
$K_{p}$ | $\mathrm{diag}\,[0.7,0.7,1]$ | $K$ | $\mathrm{diag}\,[10,10,0.05]$
$K_{i}$ | $\mathrm{diag}\,[0.07,0.07,0.1]$ | ${\phi}_{i}$ | $\mathrm{diag}\,[8,8,8]$
$K_{v}$ | $\mathrm{diag}\,[0.7,0.7,1]$ | $k_{d}$ | $2.08$
$\mathit{\Lambda}$ | $\mathrm{diag}\,[0.05,0.05,0.0005]$ | $k_{p}$ | $0.2$
$M$ | $\mathrm{diag}\,[12,12,0.12]$ | $k_{i}$ | $0.1$

###  5.1 Homogeneous Rigid Body

In the first case, the load has a cuboid shape with the length, width and
height of 3.2, 2.4 and 0.2 meters, respectively. The moments of inertia and
connection points of cables are expressed in Tables 4. The desired location is
$\left[\begin{array}[]{ccc}10&10&-10\end{array}\right]^{T}$.

Table 4: The moments of inertia of the homogeneous load and the connection points of cables Parameter | Value | Unit
---|---|---
$J_{l}$ | $\mathrm{diag[}\begin{array}[]{ccc}\mathrm{1.45}&\mathrm{2.57}&\mathrm{4}\end{array}\mathrm{]}$ | (kg/m2)
$d_{1}$ | ${\left[\mathrm{1.2,-1.6,-0.2}\right]}^{\mathrm{T}}$ | (m)
$d_{2}$ | ${\left[\mathrm{1.2,1.6,-0.2}\right]}^{T}$ | (m)
$d_{3}$ | ${\left[\mathrm{-}\mathrm{1.2,-1.6,-0.2}\right]}^{T}$ | (m)
$d_{4}$ | ${\left[\mathrm{-}\mathrm{1.2,1.6,-0.2}\right]}^{\mathrm{T}}$ | (m)

With respect to dimensions of the load and connection points, the
communication graph of the multi-agent transportation system and the
quadrotors position respect to the rectangular load in the X-Y plane based on
this communication graph are depicted in Figure 3. The distance of the agents
from each other and the leader in the direction $z$ is zero and in the
directions of $x$ and $y$ are given in Table 5.

leaderQuad4Quad2Quad1Quad3 | Quad3Quad1Quad4Quad2y axisx axis
---|---
(a) | (b)
Figure 3: (a) The communication graph for the system (b) the quadrotors position respect to the rectangular load in X-Y plane  Table 5: Distances between the agents Parameter | x direction (m) | y direction (m)
---|---|---
$d_{1leader}$ | 1.2 | -1.6
$d_{2leader}$ | 1.2 | 1.6
$d_{3leader}$ | -1.2 | -1.6
$d_{4leader}$ | -1.2 | 1.6
$d_{12}$ | 2.4 | 0
$d_{13}$ | 0 | 3.2
$d_{24}$ | 2.4 | 0
$d_{34}$ | 0 | 3.2

Figure 4 shows the simulation results. As it can be observed, although
quadrotors are in different positions, after a while, they reach their desired
formation and maintain it. In addition, the load is transported to the desired
position by an appropriate velocity. Although, cables have some fluctuations
at the initial moments (Figure 5), as the quadrotors reach their final
formation, these fluctuations are damped.

|
---|---
(a) | (b)
|
(c) | (d)
|
(e) | (f)
Figure 4: Simulation results for transportation of a homogeneous rigid body:
(a) position in $x$ direction, (b) position in $y$ direction, (c) position in
$z$ direction, (d) load angles, (e) load angular velocity, (f) load velocity,
(g) angular velocities of the first cable components, and (h) length change of
the first cable.
---
(a)
(b)
Figure 5: Simulation results for transportation of a homogeneous rigid body:
(a) angular velocities of cable 1 components, and (b) length change of the
connected cable 1.

###  5.2  Non-homogeneous Rigid Body

We have a cone with a radius of 1 m and a height of 3 m as a non-homogeneous
load. According to the dimensions of the rigid body, the connection points and
momentum of inertia are determined and reported in Table 6.

Table 6: The moments of inertia of the non-homogeneous load and connection points of cables Parameter | Value | Unit
---|---|---
$J_{l}$ | $\mathrm{diag([}\begin{array}[]{ccc}\mathrm{0.6}&\mathrm{2.1}&2.1\end{array}\mathrm{])}$ | (kg/m)2
$d_{1}$ | ${\left[\mathrm{2.25,0,0}\right]}^{\mathrm{T}}$ | (m)
$d_{2}$ | ${\left[\mathrm{0,-0.75,0}\right]}^{\mathrm{T}}$ | (m)
$d_{3}$ | ${\left[\mathrm{0,0.75,0}\right]}^{\mathrm{T}}$ | (m)
$d_{4}$ | ${\left[\mathrm{2.25,0.75,0}\right]}^{\mathrm{T}}$ | (m)

As the mass distribution is not homogeneous, the quadrotors must be located
properly based on the mass distribution. Therefore, the communication graph is
the same for the homogeneous load (Figure 4(a)), but the quadrotors positions
respect to the nonhomogeneous load (the cone) in the X-Y plane are defined as
Figure 6 where most of quadrotors are assigned to the part of the cone which
has more mass distribution. The distances are given in Table 7.

Table 7: Distances between the agents Parameter | x direction (m) | y direction (m)
---|---|---
$d_{1leader}$ | 0 | 2.25
$d_{2leader}$ | -0.75 | 0
$d_{3leader}$ | 0.75 | 0
$d_{4leader}$ | 0 | -0.75
$d_{12}$ | 0.75 | 2.25
$d_{13}$ | 0.75 | 2.25
$d_{24}$ | 0.75 | 0.75
$d_{34}$ | 0.75 | 0.75
Quad4Quad2Quad3Quad1x axisy axis Figure 6: The quadrotors position respect to
the cone load in X-Y plane

The numerical result of aerial transportation of a non-homogeneous slung rigid
body is presented in Figure 7. As seen, the transportation system of the non-
homogeneous rigid body reaches the desired formation in about 20 seconds
(Figure 7(b)) that is larger than 10 seconds for the homogeneous payload in
(Figure 4(b)). Moreover, transportation of the non-homogeneous rigid body has
more swings and fluctuations in comparison with the homogeneous load. Hence,
the non-uniform distribution of the mass highly influences the transportation.
However, there are some oscillations, but one of the advantages of the
formation control of a multi-agent system, which arranges quadrotors in
accordance with the mass distribution, minimizes load oscillations and
prevents quadrotor collisions during transport.

|
---|---
(a) | (b)
|
(c) | (d)
|
(e) | (f)
Figure 7: Simulation results of the transportation of non-homogeneous rigid
body: (a) position in $x$ direction, (b) position in $y$ direction, (c)
position in $z$ direction, (d) velocity in $x$ direction, (e) velocity in $y$
direction, and (f) velocity in $z$ direction.

In order to indicate that the designed control strategy is robust against
disturbances, the aerial load transportation is examined in presence of
impulse disturbance which is exerted on quadrotors 1 and 3 at 12.5 seconds
(Figure 8). As it is expected, the transportation system for carrying the
homogeneous payload confronts less perturbation (Figure 8(a)) in comparison
with the transportation system of nonhomogeneous body (Figure 8(b)).

|
---|---
(a) | (b)
|
(c) | (d)
Figure 8: Aerial load transportation in presence of disturbances: (a) position
in $x$ direction of homogeneous, (a) position in $x$ direction of
nonhomogeneous, (c) position in $y$ direction of homogeneous and (d) position
in $y$ direction of homogeneous.

##  6  Conclusions

In this paper, aerial transportation of a non-uniform rigid body, which was
connected through elastic and flexible cables to a group of quadrotors, was
investigated. The Euler-Lagrange method was used to derive the motion
equations of the system. Since in real world the objects mostly do not have a
uniform and homogeneous shape and mass distribution, the payload was assumed
as 6 DOF non-uniform rigid body and each cable was considered as a combination
of masses, springs, and dampers. Then, a control strategy (consisting of
navigation control, formation control, and attitude control) was employed for
multi-agent transportation of the rigid body to the desired position with the
desired velocity as well as put the formation of quadrotors according to the
payload mass distribution. Navigation control was designed based on the length
of cables, payload position and velocity, and its errors. The sliding mode
approach was applied to maintain the formation control which was able to set
quadrotors according to the mass distribution, reduce load swings and avoid
collision of quadrotors during transporting. Furthermore, the asymptotic
stability was proven for the designed formation control. PID control was used
to stabilize the attitudes of each quadrotor. Finally, the capability of the
proposed control strategy for conveying homogeneous and non-homogeneous bodies
was shown by numerical simulations, where the quadrotors were spread out
around the load based on its mass distribution. According to the numerical
results, the transportation system besides having an appropriate performance
in conveying the uniform load, it was able to carry a payload with nonuniform
mass distribution, however damping the load fluctuations of nonuniform load
took more time.

## Conflicts of interest

The authors declare no conflicts of interest exist. A preprint of this paper
is available at arXiv:2305.09175.

##  Appendix A Appendix

###  A.1 Deriving the equations of motion

By replacing (3) into (6), and defining $\
M_{T}=m_{l}+\sum^{n}_{i=1}{(m_{i}}+\sum^{n_{i}}_{j=1}{m_{ij})}$,
${M_{qi}=m}_{i}+\sum^{n_{i}}_{j=1}{m_{ij}}$ and
$M_{cij}=m_{i}+\sum^{j-1}_{a=1}{m_{ia}}$, the kinetic and potential energies
can be rewritten as

$\displaystyle T=$
$\displaystyle\frac{1}{2}M_{T}{\left\|\boldsymbol{\dot{r}_{l}}\right\|}^{2}-\frac{1}{2}\sum^{n}_{i=1}{M_{qi}{\boldsymbol{\Omega}_{l}}^{T}{\widehat{\boldsymbol{d}}}^{2}_{\boldsymbol{i}}{\boldsymbol{\Omega}}_{\boldsymbol{l}}~{}\
}+\frac{1}{2}{\boldsymbol{\Omega}_{l}}^{T}{\boldsymbol{J}}_{\boldsymbol{l}}{\boldsymbol{\Omega}}_{\boldsymbol{l}}+\frac{1}{2}\sum^{n}_{i=1}{{\boldsymbol{\Omega}_{i}}^{T}_{\boldsymbol{i}}{\boldsymbol{J}}_{\boldsymbol{i}}{\boldsymbol{\Omega}}_{\boldsymbol{i}}~{}\
}$ (38)
$\displaystyle+\sum^{n}_{i=1}{\sum^{n_{i}}_{j,k=1}{M_{cij}l_{ij}l_{ik}{\boldsymbol{\dot{q}}}^{T}_{\boldsymbol{ij}}{\boldsymbol{\dot{q}}}_{\boldsymbol{ik}}}}+\sum^{n}_{i=1}{\sum^{n_{i}}_{j,k=1}{M_{cij}{\dot{l}}_{ij}{\dot{l}}_{ik}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}{\boldsymbol{q}}_{\boldsymbol{ik}}}}+\sum^{n}_{i=1}{M_{qi}{\boldsymbol{\Omega}}^{T}_{\boldsymbol{l}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\boldsymbol{\dot{r}_{l}}}$
$\displaystyle-\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}l_{ij}{\boldsymbol{\dot{r}}}^{T}_{\boldsymbol{l}}\boldsymbol{\dot{q}_{ij}}}}-\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}{\dot{l}}_{ij}{\boldsymbol{\dot{r}}}^{T}_{\boldsymbol{l}}\boldsymbol{q_{ij}}}}-\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}l_{ij}{\boldsymbol{\Omega}}^{T}_{\boldsymbol{l}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\boldsymbol{\dot{q}_{ij}}}}$
$\displaystyle-\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}{\dot{l}}_{ij}{\boldsymbol{\Omega}}^{T}_{\boldsymbol{l}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\boldsymbol{q_{ij}}}}+\sum^{n}_{i=1}{\sum^{n_{i}}_{j,k=1\atop
k\neq
j}{M_{cij}l_{ij}{\dot{l}}_{ik}{\boldsymbol{\dot{q}}}^{T}_{\boldsymbol{ij}}{\boldsymbol{\dot{q}}}_{\boldsymbol{ik}}}}$
$\displaystyle V=$ $\displaystyle-
M_{T}g\boldsymbol{e_{3}}\cdot\boldsymbol{r_{l}}-\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}gl_{ij}\boldsymbol{q_{ij}}\cdot\boldsymbol{e_{3}}}}-\sum^{n}_{i=1}{M_{qi}g\boldsymbol{R_{l}}\boldsymbol{d_{i}}\cdot\boldsymbol{e_{3}}}$
(39)
$\displaystyle+\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{\frac{1}{2}K_{ij}\frac{\mathrm{\Delta}l_{ij}\left(\left|\mathrm{\Delta}l_{ij}\right|+\mathrm{\Delta}l_{ij}\right)}{4}}}$

Afterwards, the Lagrangian is determined by $L=T-V$. Furthermore, the effect
of damping $F$ is determined as

$\displaystyle
F=\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{\frac{1}{2}b_{ij}{\dot{l}}^{2}_{ij}\frac{1+\text{sgn}(\Delta
l_{ij})}{2}}}$ (40)

According to [10], small variations of
$\boldsymbol{R_{i}}\in\mathrm{\text{SO}(3)}$ in terms of exponential map is

$\delta\boldsymbol{R_{i}}=\frac{d}{d\varepsilon}\boldsymbol{R_{i}}{\exp\left(\varepsilon{\widehat{\boldsymbol{\eta}}}_{\boldsymbol{i}}\right)\
}=\boldsymbol{R_{i}}{\widehat{\boldsymbol{\eta}}}_{\boldsymbol{i}}$ (41)

where ${\boldsymbol{\eta}}_{\boldsymbol{i}}\in\mathbb{R}^{3}$and the
differential is computed at $\varepsilon=0$. In addition, the variations of
angular velocity and $\boldsymbol{q_{ij}}\in S^{2}$ are given by

$\displaystyle\delta{\boldsymbol{\Omega}}_{\boldsymbol{i}}$
$\displaystyle={\boldsymbol{\dot{\eta}}}_{\boldsymbol{i}}+{\boldsymbol{\Omega}}_{\boldsymbol{i}}\times{\boldsymbol{\eta}}_{\boldsymbol{i}}$
$\displaystyle\delta\boldsymbol{q_{ij}}={\boldsymbol{\xi}}_{\boldsymbol{ij}}\times\boldsymbol{q_{ij}}$
(42)

where ${\boldsymbol{\xi_{ij}}}\in\mathbb{R}^{3}$ satisfies
$\boldsymbol{\xi_{ij}}\cdot\boldsymbol{q_{ij}}=0$. Finally, based on the
Euler-Lagrange equation, the motion equations of the proposed aerial
transportation of a rigid body are presented as

$\begin{split}M_{T}{\boldsymbol{\ddot{r}}}_{\boldsymbol{l}}&+\sum^{n}_{i=1}{M_{qi}\boldsymbol{R_{l}}\left({\widehat{\boldsymbol{\Omega}}}^{2}_{\boldsymbol{l}}\boldsymbol{d_{i}}-{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{\dot{\Omega}}}_{\boldsymbol{l}}\right)}-M_{T}g\boldsymbol{e_{3}}-\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}\left(l_{ij}{\boldsymbol{\ddot{q}}}_{\boldsymbol{ij}}+2{\dot{l}}_{ij}\boldsymbol{\dot{q}_{ij}}+{\ddot{l}}_{ij}\boldsymbol{q_{ij}}\right)}}=-\sum^{n}_{i=1}{f_{i}\boldsymbol{R_{i}}\boldsymbol{e_{3}}}\end{split}$
(43)

$\begin{split}&\left({\boldsymbol{J}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{M_{qi}}{\widehat{\boldsymbol{d}}}^{2}_{\boldsymbol{i}}\right){\boldsymbol{\dot{\Omega}}}_{\boldsymbol{l}}+\sum^{n}_{i=1}{M_{qi}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}{\boldsymbol{\ddot{r}}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\left(l_{ij}{\boldsymbol{\ddot{q}}}_{\boldsymbol{ij}}+2{\dot{l}}_{ij}\boldsymbol{\dot{q}_{ij}}+{\ddot{l}}_{ij}\boldsymbol{q_{ij}}\right)}}\\\
&\quad+{\widehat{\boldsymbol{\Omega}}}_{\boldsymbol{l}}\left({\boldsymbol{J}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{M_{qi}}{\widehat{\boldsymbol{d}}}^{2}_{\boldsymbol{i}}\right){\boldsymbol{\Omega}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{M_{qi}}g{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\boldsymbol{e_{3}}=-\sum^{n}_{i=1}{{f_{i}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\boldsymbol{R_{i}}\boldsymbol{e_{3}}}}\end{split}$
(44)

$\begin{split}&\sum^{n_{i}}_{k=1}{M_{cij}l_{ij}l_{ik}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}{\boldsymbol{\ddot{q}}}_{\boldsymbol{ik}}}+2\sum^{n_{i}}_{k=1}{M_{cij}l_{ij}{\dot{l}}_{ik}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}{\boldsymbol{\dot{q}}}_{\boldsymbol{ik}}}+\sum^{n_{i}}_{k=1\atop
k\neq
j}{M_{cij}l_{ij}{\ddot{l}}_{ik}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}{\boldsymbol{q}}_{\boldsymbol{ik}}}-M_{cij}{\dot{l}}^{2}_{ij}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{q_{ij}}\\\
&\quad-
M_{cij}l_{ij}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\left({\boldsymbol{\ddot{r}}}_{\boldsymbol{l}}+\boldsymbol{R_{l}}\left({\widehat{\boldsymbol{\Omega}}}^{2}_{\boldsymbol{l}}\boldsymbol{d_{i}}-{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{\dot{\Omega}}}_{\boldsymbol{l}}\right)\right)+M_{cij}gl_{ij}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{e_{3}}=l_{ij}{f_{i}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{R_{i}}\boldsymbol{e_{3}}}\end{split}$
(45)

$\begin{split}&\sum^{n_{i}}_{k=1}{M_{cij}{\ddot{l}}_{ik}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}{\boldsymbol{q}}_{\boldsymbol{ik}}}+\sum^{n_{i}}_{k=1\atop
k\neq
j}{M_{cij}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\left(2{\dot{l}}_{ik}{\boldsymbol{q}}_{\boldsymbol{ik}}+l_{ik}{\boldsymbol{\ddot{q}}}_{\boldsymbol{ik}}\right)}-M_{cij}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\left({\boldsymbol{\ddot{r}}}_{\boldsymbol{l}}+\boldsymbol{R_{l}}\left({\widehat{\boldsymbol{\Omega}}}^{T}_{\boldsymbol{l}}\boldsymbol{d_{i}}-{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{\dot{\Omega}}}_{\boldsymbol{l}}\right)\right)\\\
&\quad-
M_{cij}l_{ij}{\boldsymbol{\dot{q}}}^{T}_{\boldsymbol{ij}}\boldsymbol{\dot{q}_{ij}}+M_{cij}g{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\boldsymbol{e_{3}}+K_{ij}\mathit{\Delta}l_{ij}\frac{1+\text{sgn}(\mathit{\Delta}l_{ij})}{2}+b_{ij}{\dot{l}}_{ij}\frac{1+\text{sgn}(\mathit{\Delta}l_{ij})}{2}=-{f_{i}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\boldsymbol{R_{i}}\boldsymbol{e_{3}}}\end{split}$
(46)

In the motion equation (46),
$\frac{1+\text{sgn}\mathrm{(}\mathrm{\Delta}l_{ij})}{2}\ $in the force terms
of springs and dampers is considered to model the behavior of cables during
stretching and being loose. In other words, if the springs and dampers are
compressed, they specify that the cable is loose because there is no tensile
and damping forces as $\mathrm{\Delta}l_{ij}<0$. And, during the stretch of
the springs and dampers ($\mathrm{\Delta}l_{ij}>0$), the tensile and damping
forces are corresponding to $K_{ij}\mathrm{\Delta}L_{ij}$ and
$b_{ij}{\dot{l}}_{ij}$, respectively.

Since $\boldsymbol{q_{ij}}\cdot\boldsymbol{{\dot{q}}_{ij}}=0$, the term
$\boldsymbol{{\widehat{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{{\ddot{q}}_{ij}}$
can be rewritten as

$\begin{split}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}{\boldsymbol{\ddot{q}}}_{\boldsymbol{ij}}=\left(\boldsymbol{q_{ij}}\boldsymbol{\cdot}{\boldsymbol{\ddot{q}}}_{\boldsymbol{ij}}\right)\boldsymbol{q_{ij}}-\left(\boldsymbol{q_{ij}}\boldsymbol{\cdot}\boldsymbol{q_{ij}}\right){\boldsymbol{\ddot{q}}}_{\boldsymbol{ij}}=-\left(\boldsymbol{\dot{q}_{ij}}\boldsymbol{\cdot}\boldsymbol{\dot{q}_{ij}}\right)\boldsymbol{q_{ij}}-\left(\boldsymbol{q_{ij}}\boldsymbol{\cdot}\boldsymbol{q_{ij}}\right){\boldsymbol{\ddot{q}}}_{\boldsymbol{ij}}=-\boldsymbol{\parallel}\boldsymbol{\dot{q}_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}-{\boldsymbol{\ddot{q}}}_{\boldsymbol{ij}}\end{split}$
(47)

Thus, the first term of (45) can be represented by

$\sum^{n_{i}}_{k=1}{M_{cij}l_{ij}l_{ik}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}{\boldsymbol{\ddot{q}}}_{\boldsymbol{ik}}}=\
\sum^{n_{i}}_{k=1\atop k\neq
j}{M_{cij}l_{ij}l_{ik}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}{\boldsymbol{\ddot{q}}}_{\boldsymbol{ik}}}-M_{cij}l^{2}_{ij}{\boldsymbol{\ddot{q}}}_{\boldsymbol{ij}}-M_{cij}l^{2}_{ij}\parallel\boldsymbol{\dot{q}_{ij}}{\parallel}^{2}\boldsymbol{q_{ij}}$
(48)

Differentiating (4) and considering that
$\boldsymbol{q_{ij}}\cdot\boldsymbol{\omega_{ij}}=\boldsymbol{0}$, we have

$\begin{split}{\boldsymbol{\ddot{q}}}_{\boldsymbol{ij}}&={\boldsymbol{\dot{\omega}}}_{\boldsymbol{ij}}\times\boldsymbol{q_{ij}}+\boldsymbol{\omega}\times\left(\boldsymbol{\omega_{ij}}\times\boldsymbol{q_{ij}}\right)={\boldsymbol{\dot{\omega}}}_{\boldsymbol{ij}}\times\boldsymbol{q_{ij}}-\boldsymbol{\parallel}\boldsymbol{\omega_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}\\\
&=\textbf{{\newline
}}-{\widehat{\boldsymbol{q}}}_{\boldsymbol{ij}}{\boldsymbol{\dot{\omega}}}_{\boldsymbol{ij}}-\boldsymbol{\parallel}\boldsymbol{\omega_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}.\end{split}$
(49)

Substituting (43) into (46) yields the equation of motions (8)–(12).

###  A.2 Construct the matrices

The mass matrix is defined by

$\displaystyle\boldsymbol{M}=$
$\displaystyle\left[\begin{array}[]{cccccccccc}{\boldsymbol{M}}_{r_{l}}&{\boldsymbol{M}}_{r_{l}{\eta}_{l}}&{\boldsymbol{M}}_{r_{l}{\omega}_{1j}}&{\boldsymbol{M}}_{r_{l}{\omega}_{2j}}&\cdots&{\boldsymbol{M}}_{r_{l}{\omega}_{nj}}&{\boldsymbol{M}}_{r_{l}l_{1j}}&{\boldsymbol{M}}_{r_{l}l_{2j}}&\cdots&{\boldsymbol{M}}_{r_{l}l_{nj}}\\\
{\boldsymbol{M}}_{{\eta}_{l}r_{l}}&{\boldsymbol{J}}_{{\eta}_{l}}&{\boldsymbol{M}}_{{\eta}_{l}{\omega}_{1j}}&{\boldsymbol{M}}_{{\eta}_{l}{\omega}_{2j}}&\cdots&{\boldsymbol{M}}_{{\eta}_{l}{\omega}_{nj}}&{\boldsymbol{M}}_{{\eta}_{l}l_{1j}}&{\boldsymbol{M}}_{{\eta}_{l}l_{2j}}&\cdots&{\boldsymbol{M}}_{{\eta}_{l}l_{nj}}\\\
{\boldsymbol{M}}_{{\omega}_{1j}r_{l}}&{\boldsymbol{M}}_{{\omega}_{1j}{\eta}_{l}}&{\boldsymbol{M}}_{{\omega}_{1j}}&\boldsymbol{0}&\cdots&\boldsymbol{0}&{\boldsymbol{M}}_{{\omega}_{1j}l_{1j}}&\boldsymbol{0}&\cdots&\boldsymbol{0}\\\
{\boldsymbol{M}}_{{\omega}_{2j}r_{l}}&{\boldsymbol{M}}_{{\omega}_{2j}{\eta}_{l}}&\boldsymbol{0}&{\boldsymbol{M}}_{{\omega}_{2j}}&\cdots&\boldsymbol{0}&\boldsymbol{0}&{\boldsymbol{M}}_{{\omega}_{2j}l_{2j}}&\cdots&\boldsymbol{0}\\\
\vdots&\vdots&\vdots&\vdots&\ddots&\vdots&\vdots&\vdots&\ddots&\vdots\\\
{\boldsymbol{M}}_{{\omega}_{nj}r_{l}\
}&{\boldsymbol{M}}_{{\omega}_{nj}\eta_{l}}&\boldsymbol{0}&\boldsymbol{0}&\cdots&{\boldsymbol{M}}_{{\omega}_{nj}}&\boldsymbol{0}&\boldsymbol{0}&\cdots&{\boldsymbol{M}}_{{\omega}_{nj}l_{nj}}\\\
{\boldsymbol{M}}_{l_{1j}r_{l}}&{\boldsymbol{M}}_{l_{1j}{\eta}_{l}}&{\boldsymbol{M}}_{l_{1j}{\omega}_{1j}}&\boldsymbol{0}&\cdots&\boldsymbol{0}&{\boldsymbol{M}}_{l_{1j}}&\boldsymbol{0}&\cdots&\boldsymbol{0}\\\
{\boldsymbol{M}}_{l_{2j}r_{l}}&{\boldsymbol{M}}_{l_{2j}{\eta}_{l}}&\boldsymbol{0}&{\boldsymbol{M}}_{l_{2j}{\omega}_{2j}}&\cdots&\boldsymbol{0}&\boldsymbol{0}&{\boldsymbol{M}}_{l_{2j}}&\cdots&\boldsymbol{0}\\\
\vdots&\vdots&\vdots&\vdots&\ddots&\vdots&\vdots&\vdots&\ddots&\vdots\\\
{\boldsymbol{M}}_{l_{nj}r_{l}}&{\boldsymbol{M}}_{l_{nj}{\eta}_{l}}&\boldsymbol{0}&\boldsymbol{0}&\cdots&{\boldsymbol{M}}_{l_{nj}{\omega}_{nj}}&\boldsymbol{0}&\boldsymbol{0}&\cdots&{\boldsymbol{M}}_{l_{nj}}\end{array}\right]$
(50)

where sub-matrices are

$\displaystyle{\boldsymbol{M}}_{r_{l}}=M_{T}{\boldsymbol{I}}_{3}$ (51)
$\displaystyle{\boldsymbol{M}}_{r_{l}{\eta}_{l}}=-\sum^{n}_{i=1}{M_{qi}\boldsymbol{R_{l}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{\dot{\Omega}}}_{\boldsymbol{l}}}$
(52)
${\boldsymbol{M}}_{{\eta}_{l}r_{l}}={\boldsymbol{M}}^{T}_{r_{l}{\eta}_{l}}$
(53)
$\displaystyle{\boldsymbol{M}}_{r_{l}{\omega}_{ij}}=[\begin{array}[]{cccc}M_{ci1}l_{i1}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{1}}&M_{ci2}l_{i2}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{cim}l_{im}{\widehat{\boldsymbol{q}}}_{\boldsymbol{im}}\end{array}]$
(54)
$\displaystyle{\boldsymbol{M}}_{r_{l}l_{ij}}=-[\begin{array}[]{cccc}M_{ci1}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{1}}&M_{ci2}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{cim}{\boldsymbol{q}}_{\boldsymbol{im}}\end{array}]$
(55)
$\displaystyle{\boldsymbol{J}}_{{\eta}_{l}}=\left({\boldsymbol{J}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{M_{qi}}{\widehat{\boldsymbol{d}}}^{2}_{\boldsymbol{i}}\right){\boldsymbol{\dot{\Omega}}}_{\boldsymbol{l}}$
(56)
$\displaystyle{\boldsymbol{M}}_{{\eta}_{l}{\omega}_{ij}}=[\begin{array}[]{cccc}M_{ci1}l_{i1}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{1}}&M_{ci2}l_{i2}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{cim}l_{im}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{im}}\end{array}]$
(57)
$\displaystyle{\boldsymbol{M}}_{{\eta}_{l}l_{ij}}=-[\begin{array}[]{cccc}M_{ci1}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{1}}&M_{ci2}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{cim}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}{\boldsymbol{q}}_{\boldsymbol{im}}\end{array}]$
(58)
$\displaystyle{\boldsymbol{M}}_{{\omega}_{ij}r_{l}}=-{\left[\begin{array}[]{cccc}M_{ci1}l_{i1}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{1}}&M_{ci2}l_{i2}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{cim}l_{im}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{im}}\end{array}\right]}^{T}$
(59)
$\displaystyle{\boldsymbol{M}}_{{\omega}_{ij}{\eta}_{l}}={\left[\begin{array}[]{cccc}M_{ci1}l_{i1}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{1}}\boldsymbol{R_{l}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}&M_{ci2}l_{i2}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{2}}\boldsymbol{R_{l}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}&\cdots&M_{cim}l_{im}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{im}}\boldsymbol{R_{l}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}\end{array}\right]}^{T}$
(60)
$\displaystyle{\boldsymbol{M}}_{l_{ij}r_{l}}=-{\left[\begin{array}[]{cccc}M_{ci1}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{1}}&M_{ci2}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{cim}{\boldsymbol{q}}^{T}_{\boldsymbol{im}}\end{array}\right]}^{T}$
(61)
$\displaystyle{\boldsymbol{M}}_{l_{ij}{\eta}_{l}}={\left[\begin{array}[]{cccc}M_{ci1}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{1}}\boldsymbol{R_{l}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}&M_{ci2}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{2}}\boldsymbol{R_{l}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}&\cdots&M_{cim}{\boldsymbol{q}}^{T}_{\boldsymbol{im}}\boldsymbol{R_{l}}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}\end{array}\right]}^{T}$
(62)
$\displaystyle{\boldsymbol{M}}_{{\omega}_{ij}}=\left[\begin{array}[]{cccc}M_{ci1}l^{2}_{i1}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{1}}&M_{ci1}l_{i1}l_{i2}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{1}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{ci1}l_{i1}l_{im}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{1}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{im}}\\\
M_{ci2}l_{i2}l_{i1}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{2}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{1}}&M_{ci2}l^{2}_{i2}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{ci2}l_{i2}l_{im}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{2}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{im}}\\\
\vdots&\vdots&\ddots&\vdots\\\
M_{cim}l_{im}l_{i1}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{im}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{1}}&M_{cim}l_{im}l_{i2}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{im}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{cim}l^{2}_{im}{\widehat{\boldsymbol{q}}}_{\boldsymbol{im}}\end{array}\right]$
(63)
$\displaystyle{\boldsymbol{M}}_{l_{ij}}=\left[\begin{array}[]{cccc}M_{ci1}&M_{ci1}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{1}}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{ci1}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{1}}{\boldsymbol{q}}_{\boldsymbol{im}}\\\
M_{ci2}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{2}}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{1}}&M_{ci2}&\cdots&M_{ci2}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{1}}{\boldsymbol{q}}_{\boldsymbol{im}}\\\
\vdots&\vdots&\ddots&\vdots\\\
M_{cim}{\boldsymbol{q}}^{T}_{\boldsymbol{im}}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{1}}&M_{cim}{\boldsymbol{q}}^{T}_{\boldsymbol{im}}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{cim}\end{array}\right]$
(64)
$\displaystyle{\boldsymbol{M}}_{{\omega}_{ij}l_{ij}}=\left[\begin{array}[]{cccc}{\boldsymbol{0}}_{\boldsymbol{3}\times\boldsymbol{1}}&M_{ci1}l_{i1}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{1}}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{ci1}l_{i1}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{1}}{\boldsymbol{q}}_{\boldsymbol{im}}\\\
M_{ci2}l_{i2}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{i}\boldsymbol{2}}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{1}}&{\boldsymbol{0}}_{\boldsymbol{3}\times\boldsymbol{1}}&\cdots&M_{ci2}l_{i2}\boldsymbol{{\hat{q}}_{i2}}^{2}\boldsymbol{q_{im}}\\\
\vdots&\vdots&\ddots&\vdots\\\
M_{cim}l_{im}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{im}}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{1}}&M_{cim}l_{im}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{im}}{\boldsymbol{q}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&{\boldsymbol{0}}_{\boldsymbol{3}\times\boldsymbol{1}}\end{array}\right]$
(65)
$\displaystyle{\boldsymbol{M}}_{l_{ij}{\omega}_{ij}}=\left[\begin{array}[]{cccc}{\boldsymbol{0}}_{\boldsymbol{1}\times\boldsymbol{3}}&M_{ci1}l_{i2}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{1}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&M_{ci1}l_{im}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{1}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{im}}\\\
M_{ci2}l_{i1}{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{2}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{1}}&{\boldsymbol{0}}_{\boldsymbol{1}\times\boldsymbol{3}}&\cdots&M_{ci2}l_{im}{{\boldsymbol{q}}^{T}_{\boldsymbol{i}\boldsymbol{2}}\widehat{\boldsymbol{q}}}_{\boldsymbol{im}}\\\
\vdots&\vdots&\ddots&\vdots\\\
M_{cim}l_{i1}{\boldsymbol{q}}^{T}_{\boldsymbol{im}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{1}}&M_{cim}l_{i2}{\boldsymbol{q}}^{T}_{\boldsymbol{im}}{\widehat{\boldsymbol{q}}}_{\boldsymbol{i}\boldsymbol{2}}&\cdots&{\boldsymbol{0}}_{\boldsymbol{1}\times\boldsymbol{3}}\end{array}\right].$
(66)

Moreover, $\boldsymbol{C}$ is obtained as

$\displaystyle\boldsymbol{C}={\left[\begin{array}[]{cccccccc}{\boldsymbol{C}}_{r_{l}}&{\boldsymbol{C}}_{{\eta}_{l}}&{{\boldsymbol{C}}_{{\omega}_{1j}}}_{\
}&\cdots&{\boldsymbol{C}}_{{\omega}_{nj}}&{\boldsymbol{C}}_{l_{1j}}&\cdots&{\boldsymbol{C}}_{l_{nj}}\end{array}\right]}^{T}$
(67)

where the sub-matrices are

$\displaystyle{\boldsymbol{C}}_{r_{l}}=$
$\displaystyle\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}\left(l_{ij}\boldsymbol{\parallel}\boldsymbol{\omega_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}-2{\dot{l}}_{ij}\boldsymbol{\dot{q}_{ij}}\right)}}-M_{T}g\boldsymbol{e_{3}}+\sum^{n}_{i=1}{M_{qi}\boldsymbol{R_{l}}{\widehat{\boldsymbol{\Omega}}}^{2}_{\boldsymbol{l}}\boldsymbol{d_{i}}}$
(68) $\displaystyle{\boldsymbol{C}}_{{\eta}_{l}}=$
$\displaystyle{\widehat{\boldsymbol{\Omega}}}_{\boldsymbol{l}}\left({\boldsymbol{J}}_{\boldsymbol{l}}-\sum^{n}_{i=1}{M_{qi}}{\widehat{\boldsymbol{d}}}^{2}_{\boldsymbol{i}}\right){\boldsymbol{\Omega}}_{\boldsymbol{l}}+\sum^{n}_{i=1}{\sum^{n_{i}}_{j=1}{M_{cij}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\left(l_{ij}\boldsymbol{\parallel}\boldsymbol{\omega_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}-2{\dot{l}}_{ij}\boldsymbol{\dot{q}_{ij}}\right)}}-\sum^{n}_{i=1}{M_{qi}}g{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\boldsymbol{e_{3}}$
(69) $\displaystyle\boldsymbol{C}_{\omega_{ij}}=$
$\displaystyle\,M_{cij}l^{2}_{ij}\parallel\boldsymbol{\omega_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}-\sum^{n_{i}}_{k=1\atop
k\neq
j}{M_{cij}l_{ij}l_{ik}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{\parallel}{\boldsymbol{\omega}}_{\boldsymbol{ik}}{\boldsymbol{\parallel}}^{2}{\boldsymbol{q}}_{\boldsymbol{ik}}}-M_{cij}l^{2}_{ij}\parallel\boldsymbol{\dot{q}_{ij}}{\boldsymbol{\parallel}}^{2}\boldsymbol{q_{ij}}$
(70)
$\displaystyle+2\sum^{n_{i}}_{k=1}{M_{cij}l_{ij}{\dot{l}}_{ik}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}{\boldsymbol{\dot{q}}}_{\boldsymbol{ik}}}-M_{cij}{\dot{l}}^{2}_{ij}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{q_{ij}}-M_{cij}l_{ij}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{R_{l}}{\widehat{\boldsymbol{\Omega}}}^{2}_{\boldsymbol{l}}\boldsymbol{d_{i}}+M_{cij}gl_{ij}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{e_{3}}$
$\displaystyle{{\boldsymbol{C}}_{l}}_{ij}=$
$\displaystyle\sum^{n_{i}}_{k=1\atop k\neq
j}{M_{cij}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\left(l_{ik}\parallel{\boldsymbol{\omega}}_{\boldsymbol{ik}}{\boldsymbol{\parallel}}^{2}{\boldsymbol{q}}_{\boldsymbol{ik}}-2{\dot{l}}_{ik}{\boldsymbol{q}}_{\boldsymbol{ik}}\right)}-M_{cij}l_{ij}{\boldsymbol{\dot{q}}}^{T}_{\boldsymbol{ij}}\boldsymbol{\dot{q}_{ij}}+M_{cij}g{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\boldsymbol{e_{3}}-M_{cij}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\boldsymbol{R_{l}}{\widehat{\boldsymbol{\Omega}}}^{2}_{\boldsymbol{l}}\boldsymbol{d_{i}}$
(71)
$\displaystyle+K_{ij}\left(l_{ij}-L_{ij}\right)\frac{1+\text{sgn}\left(l_{ij}-L_{ij}\right)}{2}+b_{ij}{\dot{l}}_{ij}\frac{1+\text{sgn}\left(l_{ij}-L_{ij}\right)}{2}.$

Finally, the control input is defined by

$\displaystyle\boldsymbol{P}={\left[\begin{array}[]{cccccccc}{\boldsymbol{P}}_{r_{l}}&{\boldsymbol{P}}_{{\eta}_{l}}&{{\boldsymbol{P}}_{{\omega}_{1j}}}_{\
}&\cdots&{\boldsymbol{P}}_{{\omega}_{nj}}&{\boldsymbol{P}}_{l_{1j}}&\cdots&{\boldsymbol{P}}_{l_{nj}}\end{array}\right]}^{T}$
(72)

where

$\displaystyle{\boldsymbol{P}}_{r_{l}}=-\sum^{n}_{i=1}{f_{i}\boldsymbol{R_{i}}\boldsymbol{e_{3}}}$
(73)
$\displaystyle{\boldsymbol{P}}_{{\eta}_{l}}=-\sum^{n}_{i=1}{{f_{i}{\widehat{\boldsymbol{d}}}_{\boldsymbol{i}}{\boldsymbol{R}}^{T}_{\boldsymbol{l}}\boldsymbol{R_{i}}\boldsymbol{{e}}}_{3}}$
(74)
$\displaystyle{\boldsymbol{P}}_{{\omega}_{nj}}=l_{ij}{f_{i}{\widehat{\boldsymbol{q}}}^{2}_{\boldsymbol{ij}}\boldsymbol{R_{i}}\boldsymbol{{e_{3}}}}$
(75)
$\displaystyle{\boldsymbol{P}}_{l_{ij}}={f_{i}{\boldsymbol{q}}^{T}_{\boldsymbol{ij}}\boldsymbol{R_{i}}\boldsymbol{{e_{3}}}}.$
(76)

In equation 72, the components represent the generalized forces in the context
of Lagrange equations. These forces are vital because they capture the effects
of various factors on the system dynamics. Specifically, in the case of a
quadrotor, these generalized forces encapsulate the impact of thrust generated
by the quadrotor on the load it’s carrying, as well as the interactions with
the components of the spring-mass-damper system. Understanding these forces is
crucial because they provide insights into how the quadrotor’s propulsion and
interaction with its surroundings affect the overall behavior and stability of
the system.

## References

  * Mellinger et al. [2013] Mellinger, D., Shomin, M., Michael, N., and Kumar, V., “Cooperative Grasping and Transport Using Multiple Quadrotors,” _Distributed Autonomous Robotic Systems: The 10th International Symposium_ , edited by A. Martinoli, F. Mondada, N. Correll, G. Mermoud, M. Egerstedt, M. A. Hsieh, L. E. Parker, and K. Støy, Springer Berlin Heidelberg, Berlin, Heidelberg, 2013, pp. 545–558.  10.1007/978-3-642-32723-0_39.
  * Loianno and Kumar [2017] Loianno, G., and Kumar, V., “Cooperative transportation using small quadrotors using monocular vision and inertial sensing,” _IEEE Robotics and Automation Letters_ , Vol. 3, No. 2, 2017, pp. 680–687.  10.1109/LRA.2017.2778018.
  * Loianno et al. [2018] Loianno, G., Spurny, V., Thomas, J., Baca, T., Thakur, D., Hert, D., Penicka, R., Krajnik, T., Zhou, A., Cho, A., Saska, M., and Kumar, V., “Localization, grasping, and transportation of magnetic objects by a team of mavs in challenging desert-like environments,” _IEEE Robotics and Automation Letters_ , Vol. 3, No. 3, 2018, pp. 1576–1583.  10.1109/LRA.2018.2800121.
  * Samadikhoshkho et al. [2020] Samadikhoshkho, Z., Ghorbani, S., Janabi-Sharifi, F., and Zareinia, K., “Nonlinear control of aerial manipulation systems,” _Aerospace Science and Technology_ , Vol. 104, 2020, p. 105945.  10.1016/j.ast.2020.105945.
  * Palunko et al. [2012] Palunko, I., Fierro, R., and Cruz, P., “Trajectory generation for swing-free maneuvers of a quadrotor with suspended payload: A dynamic programming approach,” _2012 IEEE International Conference on Robotics and Automation_ , 2012, pp. 2691–2697.  10.1109/ICRA.2012.6225213.
  * Kusznir and Smoczek [2019] Kusznir, T., and Smoczek, J., “Quadrotor UAV control for transportation of cable suspended payload,” _Journal of KONES_ , Vol. 26, No. 2, 2019, p. 77–84.  10.2478/kones-2019-0035.
  * Estevez et al. [2015] Estevez, J., Lopez-Guede, J. M., and Graña, M., “Quasi-stationary state transportation of a hose with quadrotors,” _Robotics and Autonomous Systems_ , Vol. 63, 2015, pp. 187–194.  10.1016/j.robot.2014.09.004.
  * Sadr et al. [2014] Sadr, S., Moosavian, S. A. A., and Zarafshan, P., “Dynamics modeling and control of a quadrotor with swing load,” _Journal of Robotics_ , Vol. 2014, 2014.  10.1155/2014/265897.
  * Lee et al. [2015] Lee, B.-Y., Hong, S.-M., Yoo, D.-W., Lee, H.-I., Moon, G.-H., and Tahk, M.-J., “Design of a neural network controller for a slung-load system lifted by 1 quad-rotor,” _Journal of Automation and Control Engineering Vol_ , Vol. 3, No. 1, 2015, pp. 9–14.  10.12720/joace.3.1.9-14.
  * Guerrero-Sánchez et al. [2017] Guerrero-Sánchez, M. E., Mercado-Ravell, D. A., Lozano, R., and García-Beltrán, C. D., “Swing-attenuation for a quadrotor transporting a cable-suspended payload,” _ISA transactions_ , Vol. 68, 2017, pp. 433–449.  10.1016/j.isatra.2017.01.027.
  * Hashemi and Heidari [2020] Hashemi, D., and Heidari, H., “Trajectory planning of quadrotor UAV with maximum payload and minimum oscillation of suspended load using optimal control,” _Journal of Intelligent & Robotic Systems_, Vol. 100, No. 3, 2020, pp. 1369–1381.  10.1007/s10846-020-01166-4.
  * Klausen et al. [2017] Klausen, K., Fossen, T. I., and Johansen, T. A., “Nonlinear control with swing damping of a multirotor UAV with suspended load,” _Journal of Intelligent & Robotic Systems_, Vol. 88, No. 2, 2017, pp. 379–394.  10.1007/s10846-017-0509-6.
  * Cabecinhas et al. [2019] Cabecinhas, D., Cunha, R., and Silvestre, C., “A trajectory tracking control law for a quadrotor with slung load,” _Automatica_ , Vol. 106, 2019, pp. 384–389.  10.1016/j.automatica.2019.04.030.
  * Ashkoofaraz and Lori [2022] Ashkoofaraz, S. Y., and Lori, A. A. R., “Aerial Load Transportation With Obstacle Avoidance in Observed Environment,” _2022 10th RSI International Conference on Robotics and Mechatronics (ICRoM)_ , IEEE, 2022, pp. 248–253.
  * de Angelis et al. [2019] de Angelis, E. L., Giulietti, F., and Pipeleers, G., “Two-time-scale control of a multirotor aircraft for suspended load transportation,” _Aerospace Science and Technology_ , Vol. 84, 2019, pp. 193–203.  10.1016/j.ast.2018.10.012.
  * Yaghooti et al. [2020] Yaghooti, B., Siahi Shadbad, A., Safavi, K., and Salarieh, H., “Adaptive synchronization of uncertain fractional-order chaotic systems using sliding mode control techniques,” _Proceedings of the Institution of Mechanical Engineers, Part I: Journal of Systems and Control Engineering_ , Vol. 234, No. 1, 2020, pp. 3–9.
  * Chen and Shan [2020] Chen, T., and Shan, J., “A novel cable-suspended quadrotor transportation system: From theory to experiment,” _Aerospace Science and Technology_ , Vol. 104, 2020, p. 105974.  10.1016/j.ast.2020.105974.
  * Vahdanipour and Khodabandeh [2019] Vahdanipour, M., and Khodabandeh, M., “Adaptive fractional order sliding mode control for a quadrotor with a varying load,” _Aerospace Science and Technology_ , Vol. 86, 2019, pp. 737–747.  10.1016/j.ast.2019.01.053.
  * Lori et al. [2021] Lori, A. A. R., Danesh, M., Amiri, P., Ashkoofaraz, S. Y., and Azargoon, M. A., “Transportation of an Unknown Cable-Suspended Payload by a Quadrotor in Windy Environment under Aerodynamics Effects,” _2021 7th International Conference on Control, Instrumentation and Automation (ICCIA)_ , IEEE, 2021, pp. 1–6.  10.1109/ICCIA52082.2021.9403559.
  * Korayem et al. [2020] Korayem, M. H., Yousefzadeh, M., and Tourajizadeh, H., “Optimal control of a wheeled mobile cable-driven parallel robot ICaSbot with viscoelastic cables,” _Robotica_ , Vol. 38, No. 8, 2020, pp. 1513–1537.
  * Zare et al. [2020] Zare, S., Haghighi, M. S., Hairi Yazdi, M. R., Kalhor, A., and Masouleh, M. T., “Kinematic Analysis of an Under-constrained Cable-driven Robot Using Neural Networks,” 2020, pp. 1–6.  10.1109/ICEE50131.2020.9260982.
  * Zare et al. [2022] Zare, S., Yazdi, M. R. H., Masouleh, M. T., Zhang, D., Ajami, S., and Ardekani, A. A., “Experimental study on the control of a suspended cable-driven parallel robot for object tracking purpose,” _Robotica_ , Vol. 40, No. 11, 2022, pp. 3863–3877.
  * Goodarzi et al. [2014] Goodarzi, F. A., Lee, D., and Lee, T., “Geometric stabilization of a quadrotor UAV with a payload connected by flexible cable,” _2014 American Control Conference_ , IEEE, 2014, pp. 4925–4930.  10.1109/ACC.2014.6859419.
  * Cruz and Fierro [2017] Cruz, P. J., and Fierro, R., “Cable-suspended load lifting by a quadrotor UAV: hybrid model, trajectory generation, and control,” _Autonomous Robots_ , Vol. 41, No. 8, 2017, pp. 1629–1643.  10.1007/s10514-017-9632-2.
  * Kotaru et al. [2017] Kotaru, P., Wu, G., and Sreenath, K., “Dynamics and control of a quadrotor with a payload suspended through an elastic cable,” _2017 American Control Conference (ACC)_ , IEEE, 2017, pp. 3906–3913.  10.23919/ACC.2017.7963553.
  * Chang et al. [2023] Chang, P., Yang, S., Tong, J., and Zhang, F., “A new adaptive control design for a quadrotor system with suspended load by an elastic rope,” _Nonlinear Dynamics_ , 2023, pp. 1–20.
  * Gimenez et al. [2018] Gimenez, J., Gandolfo, D. C., Salinas, L. R., Rosales, C., and Carelli, R., “Multi-objective control for cooperative payload transport with rotorcraft UAVs,” _ISA transactions_ , Vol. 80, 2018, pp. 491–502.  10.1016/j.isatra.2018.05.022.
  * Cao et al. [2020] Cao, Y., Nie, W., Wang, Z., and Wan, S., “Dynamic modeling of helicopter-slung load system under the flexible sling hypothesis,” _Aerospace Science and Technology_ , Vol. 99, 2020, p. 105770.  10.1016/j.ast.2020.105770.
  * Sreenath et al. [2013] Sreenath, K., Lee, T., and Kumar, V., “Geometric control and differential flatness of a quadrotor UAV with a cable-suspended load,” _52nd IEEE Conference on Decision and Control_ , IEEE, 2013, pp. 2269–2274.  10.1109/CDC.2013.6760219.
  * Dhiman et al. [2020] Dhiman, K. K., Kothari, M., and Abhishek, A., “Autonomous load control and transportation using multiple quadrotors,” _Journal of Aerospace Information Systems_ , Vol. 17, No. 8, 2020, pp. 417–435.  10.2514/1.I010787.
  * Thapa et al. [2020] Thapa, S., Bai, H., and Acosta, J. Á., “Cooperative aerial manipulation with decentralized adaptive force-consensus control,” _Journal of Intelligent & Robotic Systems_, Vol. 97, No. 1, 2020, pp. 171–183.  10.1007/s10846-019-01048-4.
  * Pizetta et al. [2019] Pizetta, I. H. B., Brandão, A. S., and Sarcinelli-Filho, M., “Avoiding obstacles in cooperative load transportation,” _ISA transactions_ , Vol. 91, 2019, pp. 253–261.  10.1016/j.isatra.2019.01.019.
  * Shirani et al. [2019] Shirani, B., Najafi, M., and Izadi, I., “Cooperative load transportation using multiple UAVs,” _Aerospace Science and Technology_ , Vol. 84, 2019, pp. 158–169.  10.1016/j.ast.2018.10.027.
  * Rastgoftar et al. [2017] Rastgoftar, H., Taheri, E., Ghasemi, A. H., Atkins, E. M., and Girard, A., “Continuum deformation of a multi-quadcopter system in a payload delivery mission,” _IFAC-PapersOnLine_ , Vol. 50, No. 1, 2017, pp. 3455–3462.  10.1016/j.ifacol.2017.08.847.
  * Rastgoftar and Atkins [2018] Rastgoftar, H., and Atkins, E. M., “Cooperative aerial lift and manipulation (CALM),” _Aerospace Science and Technology_ , Vol. 82, 2018, pp. 105–118.  10.1016/j.ast.2018.09.005.
  * Geng and Langelaan [2022] Geng, J., and Langelaan, J. W., “On-board cable attitude measurement and controller for outdoor aerial transportation,” _JRobotica_ , Vol. 40, No. 5, 2022, pp. 1650 – 1664.  10.1017/S0263574721001302.
  * Lee [2017] Lee, T., “Geometric control of quadrotor UAVs transporting a cable-suspended rigid body,” _IEEE Transactions on Control Systems Technology_ , Vol. 26, No. 1, 2017, pp. 255–264.  10.1109/TCST.2017.2656060.
  * Geng and Langelaan [2021] Geng, J., and Langelaan, J. W., “Estimation of Inertial Properties for a Multilift Slung Load,” _Journal of Guidance, Control, and Dynamics_ , Vol. 44, No. 2, 2021, pp. 220–237.  10.2514/1.G005365.
  * Sayyaadi and Soltani [2018] Sayyaadi, H., and Soltani, A., “Modeling and control for cooperative transport of a slung fluid container using quadrotors,” _Chinese Journal of Aeronautics_ , Vol. 31, No. 2, 2018, pp. 262–272.  10.1016/j.cja.2017.12.005.
  * Bacelar et al. [2020] Bacelar, T., Madeiras, J., Melicio, R., Cardeira, C., and Oliveira, P., “On-board implementation and experimental validation of collaborative transportation of loads with multiple UAVs,” _Aerospace Science and Technology_ , Vol. 107, 2020, p. 106284.  10.1016/j.ast.2020.106284.
  * Sanalitro et al. [2020] Sanalitro, D., Savino, H. J., Tognon, M., Cortés, J., and Franchi, A., “Full-pose Manipulation Control of a Cable-suspended load with Multiple UAVs under Uncertainties,” _IEEE Robotics and Automation Letters_ , Vol. 5, No. 2, 2020, pp. 2185–2191.  10.1109/LRA.2020.2969930.
  * Pourghorban et al. [2022] Pourghorban, A., Dorothy, M., Shishika, D., Von Moll, A., and Maity, D., “Target Defense against Sequentially Arriving Intruders,” _2022 IEEE 61st Conference on Decision and Control (CDC)_ , 2022, pp. 6594–6601.  10.1109/CDC51059.2022.9992425.
  * Kargar et al. [2022] Kargar, M., Sardarmehni, T., and Song, X., “Optimal Powertrain Energy Management for Autonomous Hybrid Electric Vehicles With Flexible Driveline Power Demand Using Approximate Dynamic Programming,” _IEEE Transactions on Vehicular Technology_ , Vol. 71, No. 12, 2022, pp. 12564–12575.  10.1109/TVT.2022.3199681.
  * Kargar and Song [2022] Kargar, M., and Song, X., “Power Control Optimization for Autonomous Hybrid Electric Vehicles with Flexible Driveline Torque Demand,” _2022 American Control Conference (ACC)_ , 2022, pp. 2012–2017.  10.23919/ACC53348.2022.9867752.
  * Boroujeni and Razi [2023] Boroujeni, S. P. H., and Razi, A., “IC-GAN: An Improved Conditional Generative Adversarial Network for RGB-to-IR image translation with applications to forest fire monitoring,” _Expert Systems with Applications_ , 2023, p. 121962.
  * Rezaei et al. [2022] Rezaei, M. A., Bagheri, P., and Hashemzadeh, F., “Consensus Tracking of Multi-Agent Systems in The Presence of Byzantine Agents Using Model Predictive Control,” _2022 8th International Conference on Control, Instrumentation and Automation (ICCIA)_ , 2022, pp. 1–5.  10.1109/ICCIA54998.2022.9737185.
  * Pedram Haeri Boroujeni and Pashaei [2021] Pedram Haeri Boroujeni, S., and Pashaei, E., “Data Clustering Using Chimp Optimization Algorithm,” _2021 11th International Conference on Computer Engineering and Knowledge (ICCKE)_ , 2021, pp. 296–301.  10.1109/ICCKE54056.2021.9721483.
  * Azimirad et al. [2022] Azimirad, V., Ramezanlou, M. T., Sotubadi, S. V., and Janabi-Sharifi, F., “A consecutive hybrid spiking-convolutional (CHSC) neural controller for sequential decision making in robots,” _Neurocomputing_ , Vol. 490, 2022, pp. 319–336.