# Force-based Pose Regulation of a Cable-Suspended Load Using UAVs with Force Bias

Chiara Gabellieri, Marco Tognon, Dario Sanalitro, Antonio Franchi

► To cite this version:

Chiara Gabellieri, Marco Tognon, Dario Sanalitro, Antonio Franchi. Force-based Pose Regulation of a Cable-Suspended Load Using UAVs with Force Bias. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2023), Oct 2023, Michigan, United States. pp.6920-6926, 10.1109/IROS55552.2023.10342240. hal-04345267

HAL Id: hal-04345267

https://hal.science/hal-04345267v1

Submitted on 14 Dec 2023

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons CC BY 4.0 - Attribution - International License
# Force-based Pose Regulation of a Cable-Suspended Load Using UAVs with Force Bias

C. Gabellieri<fnref n="1" />, M. Tognon², D. Sanalitro³,⁴, A. Franchi<fnref n="1" />,³,⁵

*Abstract*— This work studies how force measurement/estimation biases affect the force-based cooperative manipulation of a beam-like load suspended with cables by two aerial robots. Indeed, force biases are especially relevant in a force-based manipulation scenario in which direct communication is not relied upon. First, we compute the equilibrium configurations of the system. Then, we show that inducing an internal force in the load augments the robustness of the load attitude error and its sensitivity to force-bias variations. Eventually, we propose a method for zeroing the load position error. The results are validated through numerical simulations and experiments.

## I. INTRODUCTION

Physical interaction using aerial robots is widely studied for its relevant applications, such as contact-based inspection, construction, and delivery [1]–[3].

Different tools have been proposed, but cables are particularly advantageous in terms of weight and cost. The manipulation of a *cable-suspended* load by a team of aerial vehicles has been largely addressed [4]–[11]. Those works study the differential flatness [4] and the control of payloads suspended with cables below aerial robots; the controllers are either centralized, based on common knowledge of the object’s state, or relying on a communication network among the robots. Moreover, the manipulation of *beam-like* loads has received attention in the literature [12]–[17] for its relevance to several real-world applications, especially in the construction field, where elements like pipes, iron beams for cement walls, and scaffolds are manipulated.

Indeed, multi-robot cooperation is often used to enhance the overall payload [18]. While decentralized algorithms, as [19], are robust to faults and scalable with the number of robots, explicit communication represents a bottleneck [20]. Communication delays and packet loss undermine the performance and stability of multi-robot systems. Furthermore, the hardware and software complexity can be reduced by confining explicit communication. For all these reasons, a manipulation method not relying on explicit communication has been proposed in [20] for mobile *ground* robots.

This work has been partially funded by the Horizon Europe MSCA Flyflic [grant agreement No. ID: 101059875] and Horizon 2020 research and innovation programme [grant agreement No. 871479] AERIAL-CORE.

<figure><img src="image_2.png" /><figcaption>Fig. 1: Two quadrotors connected through cables to a beam load. A motion capture system is used for the robots' localization.</figcaption></figure>

On the other hand, *aerial* cooperative transportation not relying on explicit communication has been performed in [15] using vision. Alternatively, force feedback has been proposed: [14] considers a cable-suspended beam-like load and an admittance-based leader-follower scheme, and [21] extends the results to more robots and provides a method for gain-tuning which increases robustness against unmodeled dynamics and parameter uncertainties. However, [14] and [21] achieve transportation of the load disregarding its attitude. In addition, the leader-follower strategy is not used to regulate the robots' height, which is instead predetermined in a centralized way. Another example of communication-less force-based transportation where the *velocity* of a flexible object is controlled by a group of aerial robots is [22].

The study of full-pose regulation, with analytical proof of the system equilibrium configurations and their stability, has been carried out for the first time in [23]. In [24], that work has been extended to a generic load transported by more than two robots. Recently, parameter uncertainties have been addressed in [25]. [23]–[25] demonstrate how the regulation of the load’s full pose is made possible by non-vertical cables that induce an internal force in the load.

However, the literature has not yet tackled the biases in the forces estimation/measurement that the robots use to cooperate and, thus, on which the task execution largely relies. That is especially interesting in practice, e.g., due to the typical drift that affects the output of force sensors, which are sensitive to temperature increase in repeated usage [26].

In this work, we address the aforementioned issue by including in the analysis the realistic case in which the

<footnote n="1">¹Robotics and Mechatronics (RaM) group, EEMCS faculty, University of Twente, Enschede, The Netherlands; ²Univ Rennes, CNRS, Inria, IRISA, F-35000 Rennes, France; ³LAAS-CNRS, Université de Toulouse, CNRS, Toulouse, France; ⁴Electrical electronic and computer engineering department, University of Catania, 95125, Catania, Italy; ⁵Department of Computer, Control and Management Engineering, Sapienza University of Rome, 00185 Rome, Italy. Email: c.gabellieri@utwente.nl, marco.tognon@inria.fr dario.sanalitro@unict.it, a.franchi@utwente.nl</footnote>
external forces known by the robots and used for control are affected by errors.

The main contributions of this work are: (i) derivation of the new equilibrium configurations of the uncertain system in the presence of force biases; (ii) formal study of the effect of the load internal force in the robustness of the attitude control when forces are affected by biases. It emerges that the internal force is beneficial for the load control robustness against force biases; (iii) study of the sensitivity of the load attitude error to force bias variations. The load internal force is also shown to be beneficial for the error sensitivity; (iv) regulation of the load position in the presence of force biases; (v) validation through numerical simulations and experimental results.

## II. MODEL

The considered system, reported in Fig. 1, consists of a beam-like load attached to two aerial robots through cables anchored to two non-coincident points on the load. We summarize here the dynamic model of the closed-loop system. Please note that more details about the modeling can be found in [23] and [21], where similar assumptions are made on the description of the system and the control law, excluding the presence of force biases.

We define an inertial frame $\mathcal{F}_W = \{O_W, x_W, y_W, z_W\}$ with $z_W$ oriented in the direction opposite to the gravity. The beam-like load has mass $m_L \in \mathbb{R}_{>0}$ and a positive definite inertia $J_L \in \mathbb{R}^{3 \times 3}$. Rigidly attached to the load we define a frame $\mathcal{F}_L = \{O_L, x_L, y_L, z_L\}$, where $O_L$ is centered in the load CoM.

The position and orientation of $\mathcal{F}_L$ w.r.t. $\mathcal{F}_W$, defined by the vector<fnref n="1" /> $w p_L \in \mathbb{R}^3$ and the rotation matrix $R_L \in SO(3)$, respectively, describe the full configuration of the load. Because the load is a beam, the yaw and pitch angles of the beam, denoted by $\psi$ and $\theta$, respectively, are enough to describe its entire attitude. We define $q_L = (p_L, R_L)$ and the vector $v_L = [\dot{p}_L^L \omega_L^L]^T$, where $L \omega_L \in \mathbb{R}^3$ is the angular velocity of $\mathcal{F}_L$ w.r.t. $\mathcal{F}_W$ expressed in $\mathcal{F}_L$.

Two cables are attached to the load through passive spherical joints at points $B_i$ with $i = 1, 2$ with position $^L b_i \in \mathbb{R}^3$. Using basic kinematics, $b_i = p_L + R_L^L b_i$. Moreover, we assume without loss of generality that $^L b_1 = [b_1 \ 0 \ 0]^T$ and $^L b_2 = [-b_2 \ 0 \ 0]^T$, where $b_i \in \mathbb{R}_{>0}$, for $i = 1, 2$. We also define the length $L = b_1 + b_2$.

The i-th cable is attached through a passive spherical joint to the i-th aerial vehicle at the point $O_i$, coincident with the robot's CoM. Centered in this point, we define a frame $\mathcal{F}_{Ri} = \{O_i, x_{Ri}, y_{Ri}, z_{Ri}\}$ rigidly attached to each vehicle. The position of $O_i$ in $\mathcal{F}_W$ is $p_{Ri} \in \mathbb{R}^3$. We define $q_R = [p_{R1}^T \ p_{R2}^T]^T$ and $v_R$ its time derivative. The i-th cable is modeled as a spring as done in [27], [28]. Its parameters are the constant elastic coefficient $k_i \in \mathbb{R}_{>0}$ and the constant rest length denoted by $l_{0i} \in \mathbb{R}_{>0}$. Defining the vector $l_i = p_{Ri} - b_i$, we write the force acting on the load at $B_i$ using the simplified Hooke's law: $f_i = \|f_i\| \frac{l_i}{\|l_i\|}$, with $\|f_i\| = k_i(\|l_i\| - l_{0i})$ if

$\|l_i\| - l_{0i} > 0$ and zero otherwise. The force produced on the i-th robot at $O_i$, is equal to $-f_i$. We assume, as commonly done in the literature, that the cables are always taut during the task execution [5], [7], [8].

Assuming that the cables are attached to each robot's CoM, and in virtue of the time-scale separation principle, the rotational dynamics of the robots is decoupled from the remaining dynamics and will be neglected in the theory. The interested reader can find more details in [23], [1], [29].

As done in [14], [21], [23], we use an admittance filter on the robots, which allows reshaping their translational dynamics, at will, to mimic that of a desired second-order system. Eventually, the closed-loop system dynamics can be written as in [23]: $\dot{v} = m(q, v, \pi_A)$ where $q = (q_R, q_L^T)$, $v = [v_R^T \ v_L^T]^T$ and

$$m(q, v, \pi_A) = \begin{bmatrix} M_A^{-1} (-B_A v_R - K_A q_R - \hat{f} + \pi_A) \\ M_L^{-1} (-c_L(v_L) - g_L + Gf) \end{bmatrix}, \quad (1)$$

the first six equations being the robots' translational dynamics under the assumption of perfect tracking of the admittance filter trajectory, and the latter six the load dynamics. We call $M_A = \text{diag}(M_{A1}, M_{A2})$, $B_A = \text{diag}(B_{A1}, B_{A2})$ and $K_A = \text{diag}(K_{A1}, K_{A2})$, where $M_{Ai}, B_{Ai}, K_{Ai} \in \mathbb{R}^{3 \times 3}$ are positive definite symmetric matrices that are the gains of the admittance controller. They correspond to, respectively, the virtual inertia of the robot i-th, and the damping and stiffness coefficients of a virtual spring-damper system that links the robot to a desired reference [30]. $\pi_A = [\pi_{A1} \ \pi_{A2}]^T$ with $\pi_{Ai} \in \mathbb{R}^3$ an additional forcing input of robot i-th that must be properly set to steer the load to the desired configuration, as explained in the following. Differently from what is done in previous works, $\hat{f} - [f_1^T \ f_2^T]^T$ is not known to the robots. Instead, $\hat{f} = [\hat{f}_1^T \ \hat{f}_2^T]^T$ contains the measured or observed cable force affected by some errors and is used in the robots' admittance controllers. Especially, we write $\hat{f}_i := -f_i + \delta_i$ (we recall that $f_i$ acts on the load by definition, so $-f_i$ acts on the robot), with $\delta_i \in \mathbb{R}^3$ denoting an unknown bias. We have that $\delta_i = \delta_i d_i$, where $d_i \in \mathbb{R}_{>0}$ is the bias intensity and $d_i := \delta_i / \delta_i$ the unit vector denoting the bias direction. $M_L = \text{diag}(m_L I_3, J_L)$ with $I_3 \in \mathbb{R}^{3 \times 3}$ the identity matrix, $m_L$ the mass of the load, and $J_L \in \mathbb{R}^{3 \times 3}$ its rotational inertia; $g_L = [m_L g_3^T \ 0]^T$, where g is the gravitational acceleration and $e_i$ is the canonical unit vector with a 1 in the i-th entry. Coriolis and centrifugal terms and the grasp matrix are, respectively,

$$c_L = \begin{bmatrix} 0 \\ S(\omega_L) J_L \omega_L \end{bmatrix}, \quad G = \begin{bmatrix} I_3 & I_3 \\ S(^L b_1) R_L^T & S(^L b_2) R_L^T \end{bmatrix}.$$

where $S(\star)$ is the skew operator.

**Remark 1.** The admittance controller only requires local information: the robot's own state ($p_{Ri}, \dot{p}_{Ri}$) and the force applied by its own cable, which can be measured by a force sensor or estimated by model-based observers as in [14], [31]. Therefore, the proposed control method is decentralized and does not require explicit communication between the robots. Note that the state of the load is generally not needed by the proposed controller.

<footnote n="1">¹The left superscript is the reference frame, equal to $\mathcal{F}_W$ if omitted.</footnote>
A leader-follower approach is used, choosing, without loss of generality, robot 1 as leader and robot 2 as follower. In mathematical terms, this is expressed by setting $K_{A1} \neq 0$ and $K_{A2} = 0$ [14], [21], [23]. In this way, only the designated leader drags the load while the follower moves by following the force, compensating for part of the load weight, dampening oscillations, and contributing to the load attitude control. The load internal force $t_L$ is defined as $t_L := \frac{1}{2} \mathbf{f}^\top [\mathbf{I}_3 - \mathbf{I}_3]^\top \mathbf{R}_L e_1$, where $[\mathbf{I}_3 - \mathbf{I}_3]^\top \mathbf{R}_L e_1 \in \text{null}(\mathbf{G})^2$. We have that if $t_L > 0$, the internal force causes a tension in the load; if $t_L < 0$, the internal force causes a compression.

### III. EQUILIBRIUM STUDY

In this Section, we present the study of the equilibrium configurations when system parameters are uncertainly known and force biases affect the information available to the controller. A desired load configuration $\bar{\mathbf{q}}_L$ is given, and $\bar{\star}$ indicates the desired value of $\star$ in general.

**Theorem 1 (Equilibrium Inverse Problem).** Consider the closed-loop system (1) and assume that the load is at a given desired configuration $\mathbf{q}_L = \bar{\mathbf{q}}_L = (\bar{\mathbf{p}}_L, \bar{\mathbf{R}}_L)$. For each internal force $t_L \in \mathbb{R}$, there exists a unique constant value of the forcing input $\pi_A = \bar{\pi}_A$ (and a unique position of the robots $\mathbf{q}_R = \bar{\mathbf{q}}_R$) such that $\bar{\mathbf{q}} = (\bar{\mathbf{q}}_L, \bar{\mathbf{q}}_R)$ is an equilibrium of the system: for $i = 1, 2$,

$$ \bar{\pi}_A(\bar{\mathbf{q}}_L, t_L) = \mathbf{K}_A \bar{\mathbf{q}}_R + \bar{\mathbf{f}}(\bar{\mathbf{q}}_L, t_L) - \delta \quad (2) $$

$$ \bar{\mathbf{p}}_{Ri}(\bar{\mathbf{q}}_L, t_L) = \bar{\mathbf{p}}_L + \bar{\mathbf{R}}_L^L \mathbf{b}_i + \left( \frac{\|\bar{\mathbf{f}}_i\|}{k_i} + l_{0i} \right) \frac{\bar{\mathbf{f}}_i}{\|\bar{\mathbf{f}}_i\|}, \text{ with} \quad (3) $$

$$ \bar{\mathbf{f}}(\bar{\mathbf{q}}_L, t_L) = \begin{bmatrix} \bar{\mathbf{f}}_1 \\ \bar{\mathbf{f}}_2 \end{bmatrix} = \begin{bmatrix} \frac{b_2 m_L g}{L} \\ \frac{b_1 m_L g}{L} \end{bmatrix} \begin{bmatrix} \mathbf{I}_3 \\ \mathbf{I}_3 \end{bmatrix} e_3 + t_L \begin{bmatrix} \mathbf{I}_3 \\ -\mathbf{I}_3 \end{bmatrix} \bar{\mathbf{R}}_L e_1. \quad (4) $$

The proof is here omitted for the sake of space but the interested reader can find a similar proof in [23]. However, differently from what emerged in previous works and as suggested by intuition, here the forcing input that brings the system to the desired configuration, $\bar{\pi}_A$, must compensate for the force biases $\delta = [\delta_1^\top, \delta_2^\top]^\top$, see (2). The user chooses the parameter $t_L$ in (4) to make $\bar{\mathbf{q}}_L$ an equilibrium. Nevertheless, consider the case when the controller has only access to the uncertain values, defined as $\hat{m}_L, \hat{b}_1, \hat{l}_{0i}, \hat{k}_i, \hat{k}_i$, instead of the corresponding real ones, $m_L, b_1, L, l_{0i}$, and $k_i$, respectively. We shall indicate as $\Delta_\star$ the difference between the uncertain and real value, namely, $\star - \star$. In such realistic conditions, $\bar{\pi}_A$ cannot be exactly applied because (3) and (4) are unknown due to parametric uncertainties, and (2) is unknown because the force bias $\delta$.

Hence, we shall study the equilibrium configurations of the system when $\hat{\pi}_A$ is applied, where $\hat{\pi}_A$ indicates $\bar{\pi}_A$ computed with the uncertain values of the system parameters and without the use of the unknown force bias.

**Theorem 2 (Equilibrium Direct Problem).** Given $\bar{\mathbf{q}}_L = (\bar{\mathbf{p}}_L, \bar{\mathbf{R}}_L)$ and the internal force $t_L \in \mathbb{R}$, compute the forcing input $\hat{\pi}_A$ from (2) using the uncertain parameters $\star$ and without using $\delta$. Applying then $\hat{\pi}_A(\bar{\mathbf{q}}_L, t_L)$ to the closed loop system (1), the following conditions describe the sole equilibrium configurations:

$$ p_{R1} = \hat{p}_{R1} - \mathbf{K}_{A1}^{-1}(\Delta_m g e_3 + (\delta_1 + \delta_2)) := p_{R1}^{eq} \quad (5) $$

$$ \mathbf{R}_L^{eq} \text{s.t.} S(e_1) \mathbf{R}_L^{eq} \top [\xi g e_3 + t_L \bar{\mathbf{R}}_L e_1 - \delta_2] = \mathbf{0} \quad (6) $$

$$ f_1 = m_L g e_3 - \frac{\hat{m}_L \hat{b}_1 g}{\hat{L}} e_3 + t_L \bar{\mathbf{R}}_L e_1 - \delta_2 := f_1^{eq} \quad (7) $$

$$ f_2 = \frac{\hat{b}_1 \hat{m}_L g}{\hat{L}} e_3 - t_L \bar{\mathbf{R}}_L e_1 + \delta_2 = \hat{f}_2 + \delta_2 := f_2^{eq} \quad (8) $$

$$ p_L = p_{R1}^{eq} - \mathbf{R}_L^{eq} \mathbf{L} \mathbf{b}_1 - \left( \frac{\| \mathbf{f}_1^{eq} \|}{k_1} + l_{01} \right) \frac{\mathbf{f}_1^{eq}}{\| \mathbf{f}_1^{eq} \|} := p_L^{eq}, \quad (9) $$

where $\hat{\star}$ indicates the reference value of $\star$ but computed using the uncertain parameters and $\xi = \frac{b_1 m_L}{L} - \frac{\hat{b}_1 \hat{m}_L}{\hat{L}}$ is a term that depends on the uncertain load parameters.

The proof is similar to that in [25], but Theorem 2 leads to new interesting results when force biases are taken into account. Note that, formally, the system reaches an equilibrium only if $\delta_i$ is constant at the equilibrium. In the following, we thus assume that the force bias variation is negligible at steady state.

The first fact that clearly emerges from Theorem 2, and especially from (6), is that the load equilibrium attitude is only affected by the bias in the follower robot's force, $\delta_2$. This is also reflected in (7) and (8) since the equilibrium forces, which determine the load equilibrium attitude, only depend on $\delta_2$. On the other hand, from (5), $\delta_1$ affects the leader robot equilibrium position, and so the load position—see (9). This result suggests to the user that, e.g., to maximize the accuracy of the load attitude control when using force sensors, a better sensor on the follower robot may be preferred.

Let us now choose a parametrization of $\delta_2$ that highlights the vector components along a basis described by $\bar{\mathbf{R}}_L e_1, e_3$, and $\bar{\mathbf{R}}_L e_2$. This is a valid representation as long as $\bar{\mathbf{R}}_L e_1 \neq e_3$, always true in reality as a vertical load would not be practically realizable. Hence, we write $\delta_2 = \delta_L \bar{\mathbf{R}}_L e_1 + \delta_\nu \bar{\mathbf{R}}_L e_2 + \delta_\nu e_3$, where $\delta_L, \delta_\nu$, and $\delta_\nu$ are the components of $\delta_2$ along the respective directions, and (6) becomes

$$ S(e_1) \mathbf{R}_L^\top [(\xi g - \delta_\nu) e_3 + (t_L - \delta_L) \bar{\mathbf{R}}_L e_1 - \delta_\nu \bar{\mathbf{R}}_L e_2] = \mathbf{0}. \quad (10) $$

Consequently, we have that $\delta_\nu$ has the same effect on the load attitude equilibrium as the uncertainty on the load parameters. Moreover, $\delta_L$ has an interesting effect on the system behavior as it adds to the internal force $t_L$. So, an equivalent internal force can be defined as $t_L - \delta_L$. We have shown in [25] that the best choice to guarantee stability and robustness of the sought equilibrium state is $t_L > 0$. As a result, selecting an appropriate value of $t_L$ is essential to ensure that $t_L - \delta_L > 0$

Unlike parameter uncertainties, the force bias has the unique effect of not only affecting the pitch of the load at

<footnote>$^2\text{null}(\star)$ indicates the nullspace of $\star$.</footnote>
the equilibrium but also the yaw. This is because $\delta_y$ has an effect on the system equilibrium that none of the parameter uncertainties has, as shown in (10). Specifically, by solving (6) one has

$$ \psi^{eq} = \text{atan} \frac{\delta_y c \psi + (t_L - \delta_L) c_{\bar{\theta}} s \psi}{-\delta_y s \psi + t c_{\bar{\theta}} c \psi}, \quad (11) $$

where $t := (t_L - \delta_L)$ and $c_*$ and $s_*$ are the cosine and sine functions, respectively. Note that (11) confirms that $\psi^{eq} = \bar{\psi} + k\pi$ if $\delta_y = 0$. Note also that $\delta_v$ does not appear in (11) as it does not influence the yaw angle at the equilibrium but only the pitch angle. For completeness, we report the expression for $\theta^{eq}$, provided that $\theta^{eq} \neq \pi/2 + k\pi$:

$$ \theta^{eq} = \text{atan} \frac{\xi g - \delta_v - t s_{\bar{\theta}}}{-c_{\psi^{eq}}(\delta_y s \bar{\psi} + t c_{\bar{\theta}} c \bar{\psi}) + s_{\psi^{eq}}(\delta_y c \bar{\psi} - t c_{\bar{\theta}} s \bar{\psi})} \quad (12) $$

This analysis has shown that the force bias contributes to the load pose error at the equilibrium. In the following, we shall propose methods to mitigate such an effect.

### A. Uncertainty solely on the estimated or measured forces

This section studies the case where the only uncertainty in the system is on the measured or estimated cable force. This can be of interest in all cases in which the system parameters are accurately known and, thus, the bias on the force represents the main source of uncertainty. In this case, at the equilibrium

$$ p_{R1} = \bar{p}_{R1} - K_{A1}^{-1}(\delta_1 + \delta_2) \quad (13) $$

$$ S(e_1) \mathbf{R}_L^{eq} \top (t_L \bar{\mathbf{R}}_L e_1 - \delta_2) = 0 \quad (14) $$

$$ f_1 = \frac{L - b_1}{L} m g e_3 + t_L \bar{\mathbf{R}}_L e_1 - \delta_2 = \bar{f}_1 - \delta_2 \quad (15) $$

$$ f_2 = \frac{b_1}{L} m g e_3 - t_L \bar{\mathbf{R}}_L e_1 + \delta_2 = \bar{f}_2 + \delta_2. \quad (16) $$

Specifically, at steady state, the leader robot could estimate $\delta_2$ from (15), being $\bar{f}_1$ known to the robot. Once it retrieves $\delta_2$, it can also compute $\delta_1$ using (13), being $\bar{p}_{R1}$ known. Analogously, the follower robot is able to estimate $\delta_2$ from (16). Hence, the robots could independently correct their references and thus bring the system to the desired configuration. Nevertheless, this does not hold true in the more general and realistic cases when parameter uncertainties and force biases are simultaneously present.

## IV. THE ROLE OF THE INTERNAL FORCES

In this section, we provide a method to mitigate the effect of force biases on the load error. Especially, we propose a formal analysis of the role that the internal force plays in the load pose at the equilibrium in the presence of force biases and parameter uncertainties.

### A. Load attitude error

**Theorem 3.** The maximum value of the load attitude error $e_{R_L}$ caused by given parameter uncertainties and force biases is inversely proportional to $t_L$. Furthermore, the same holds for the error sensitivity w.r.t the intensity of the force bias $\delta_2$, defined as $\frac{\partial e_{R_L}}{\partial \delta_2}$, while $\frac{\partial e_{R_L}}{\partial \delta_1} = 0$

*Proof:* Consider the following definition of the attitude error:

$$ e_{R_L} = \| \mathbf{R}_L^{eq} e_1 \times \bar{\mathbf{R}}_L e_1 \|^2. \quad (17) $$

Note that $\mathbf{R}_L e_1$ is enough to describe the entire attitude of the beam-like load. Moreover, the definition in (17) is a suitable metric for the attitude error as it is $\| \mathbf{R}_L^{eq} e_1 \times \bar{\mathbf{R}}_L e_1 \|^2 = 0$ for $\mathbf{R}_L^{eq} = \bar{\mathbf{R}}_L$, and it increases with the displacement between the last two vectors, at least locally (for displacements smaller than $\pi/2$). Rewrite now (6) in $\mathcal{F}_W$ as:

$$ \mathbf{R}_L^{eq} e_1 \times [(b_1 m_L - \hat{b}_1 \hat{m}_L) g e_3 + L t_L \bar{\mathbf{R}}_L e_1 - L \delta_2] = 0. \quad (18) $$

Define also:

$$ \frac{(b_1 - \Delta b)(m_L - \Delta m) - b_1 m_L}{t_L L} (\mathbf{R}_L^{eq} e_1 \times g e_3) + \frac{1}{t_L} (\mathbf{R}_L^{eq} e_1 \times \delta_2) = \frac{\alpha}{t_L L} (\mathbf{R}_L^{eq} e_1 \times g e_3) + \frac{1}{t_L} (\mathbf{R}_L^{eq} e_1 \times \delta_2) := \mathbf{x} \quad (19) $$

with $\alpha := (b_1 - \Delta b)(m_L - \Delta m)(\ell - \Delta \ell) - m_L b_1$. From (18), we have that $\mathbf{R}_L^{eq} e_1 \times \bar{\mathbf{R}}_L e_1 = \mathbf{x}$ and, from (17), that $e_{R_L} = \mathbf{x}^{\top} \mathbf{x} = \|\mathbf{x}\|^2$. Hence, we analyze the upper bound of $\|\mathbf{x}\|$ to find that of $e_{R_L}$. From (19),

$$ \|\mathbf{x}\| = \left\| \frac{\alpha}{t_L L} (\mathbf{R}_L^{eq} e_1 \times g e_3) + \frac{1}{t_L} (\mathbf{R}_L^{eq} e_1 \times \delta_2) \right\| \le \frac{\alpha}{t_L L} (\mathbf{R}_L^{eq} e_1 \times g e_3) \quad (20) $$

$$ \left\| \frac{\alpha}{t_L L} (\mathbf{R}_L^{eq} e_1 \times g e_3) \right\| + \left\| \frac{1}{t_L} (\mathbf{R}_L^{eq} e_1 \times \delta_2) \right\| \le \frac{\|\alpha\| g}{t_L L} + \frac{\delta_2}{t_L} $$

where all terms in the last line are inversely proportional to $t_L$. This completes the first part of the proof. Regarding the sensitivity, we can write it as:

$$ \frac{\partial e_{R_L}}{\partial \delta_2} = 2 \mathbf{x}^{\top} \frac{\partial \mathbf{x}}{\partial \delta_2} = \\ = 2 \left( \frac{\alpha \mathbf{R}_L^{eq} e_1}{L t_L} \times g e_3 \right)^{\top} \left( \frac{\mathbf{R}_L^{eq} e_1}{t_L L} \times d_2 \right) + \\ 2 \left( \frac{\bar{\mathbf{R}}_L e_1}{t_L} \times \delta_2 \right)^{\top} \left( \frac{\mathbf{R}_L^{eq} e_1}{t_L L} \times d_2 \right) $$

Eventually, recalling that, given three vectors $a, b$, and $c$:

$$ (a \times b)^{\top} (a \times c) = |a|^2 (b^{\top} c) - (a^{\top} b)(a^{\top} c), $$

we can write

$$ \frac{\partial e_{R_L}}{\partial \delta_2} = 2 \left( \frac{g \alpha (-\sin \theta \cos \beta_1 + \cos \beta_2)}{L t_L^2} + \frac{\delta_2 \cos \beta_1^2}{t_L^2} \right), $$

where $\beta_1$ is the angle between $\mathbf{R}_L^{eq} e_1$ and $\delta_2$, and $\beta_2$ that between $e_3$ and $\delta_2$. The application of analogous steps as in (20) finalizes the proof. $\square$

Theorem 3 shows that a positive $t_L$ increases the attitude error robustness and is beneficial for the error sensitivity to variations of the force bias intensity. The larger the internal force the smaller the maximum error and sensitivity, given the uncertainties and the force biases.

In other words, thanks to Theorem 3, one knows that a large value of $t_L > 0$ is beneficial to maintain the expected load attitude error low and constant over different task executions in which the value of the force biases may have changed.
## B. Load position error

Differently from the load attitude error, the load position error at the equilibrium does not necessarily decrease when increasing $t_L$ [25]. However, changing solely the reference position of the leader robot is enough to bring to zero the load position error even in the presence of force biases. To see that, substitute (5) into (9) explicitly writing $\hat{\bar{p}}_R$:

$$ \begin{aligned} \mathbf{p}_L^{eq} = \bar{\mathbf{p}}_L + \bar{\mathbf{R}}_L^L \hat{\mathbf{b}}_1 + \left( \frac{\|\hat{\mathbf{f}}_1\|}{\hat{k}_1} + \hat{l}_{01} \right) \frac{\hat{\mathbf{f}}_1}{\|\hat{\mathbf{f}}_1\|} - K_A^{-1} (\Delta_m g e_3 + \\ \delta_1 + \delta_2) - \left( \frac{\|\hat{\mathbf{f}}_1^{eq}\|}{k_1} + l_{01} \right) \frac{\hat{\mathbf{f}}_1^{eq}}{\|\hat{\mathbf{f}}_1^{eq}\|} - \mathbf{R}_L^{eq} \mathbf{b}_1. \end{aligned} \quad (21) $$

From (21) we have an expression of $\mathbf{p}_L^{eq} - \bar{\mathbf{p}}_L := e_{pL}$. Now, if the sole leader robot knows the load position, it can adjust its reference, such that the new reference, is: $2\bar{\mathbf{p}}_{R1} = \bar{\mathbf{p}}_{R1} - e_{pL}$. This implies $\mathbf{p}_{R1}^{eq} = 2\bar{\mathbf{p}}_{R1} - K_A^{-1}(\Delta_m + \delta_1 + \delta_2)$ and, thus, (21) gives $\mathbf{p}_L^{eq} = \bar{\mathbf{p}}_L$.

Moreover, the leader robot position does not influence the attitude of the load at the equilibrium, which only depends on the cable forces—see the last three lines of (1). In other words, the leader robot corrects the position error of the load, while the cooperatively generated internal force acts on the attitude error.

The previous result can be exploited also in the case that a user wishes to manually command the position of the load. The reference forces necessarily generated by the combined action of the robots take care of correcting the load final attitude, while the user can have intuitive control over the load position through the leader robot position alone.

## V. NUMERICAL RESULTS

Extensive numerical tests have been carried in Gazebo ODE physics engine using a URDF description of the system. A realistic numerical simulation model has been preferred to one complying with all simplifying assumptions used to derive the theoretical results. In particular: (i) underactuated quadrotors are deliberately chosen because they represent the worst-case scenario in terms of the validity of the theoretical assumptions; (ii) cables are composed of multiple links, thus they are subject to sagging; (iii) there is no guarantee of perfect trajectory tracking as assumed in the theory but a standard position controller [32] is implemented for each robot; (iv) the wrench observer proposed in [33] is used to produce an estimate of the external force applied on each robot.

The control software has been implemented in Matlab-Simulink using the Generator of Modules GenoM<fnref n="3" />. Matlab-Gazebo is also managed by a Gazebo-genom3 plugin<fnref n="4" />. A state machine is used to simulate all phases of a physical experiment, beginning with takeoff, to ensure that the results mimic a real full-length operation. The robots lift the load after takeoff, and the admittance controller is activated.

The robots have a mass of 1.03 Kg each and every propeller can exert up to 6 N thrust. The bar has a mass of

<table><caption>TABLE I</caption><tr><td>Scenario1:</td><td>$\frac{\Delta_m}{m} = -6.9\%$</td><td>$\frac{\Delta_{b_1}}{b_1} = \frac{\Delta_L}{L} = 9.3\%$</td><td>$\frac{\Delta_{l_{0i}}}{l_{0i}} = 9.2\%$</td></tr><tr><td>Scenario2:</td><td>$\frac{\Delta_m}{m} = 0.94\%$</td><td>$\frac{\Delta_{b_1}}{b_1} = \frac{\Delta_L}{L} = -4.4\%$</td><td>$\frac{\Delta_{l_{0i}}}{l_{0i}} = -8.0\%$</td></tr><tr><td>Scenario3:</td><td>$\frac{\Delta_m}{m} = -8.1\%$</td><td>$\frac{\Delta_{b_1}}{b_1} = \frac{\Delta_L}{L} = -9.1\%$</td><td>$\frac{\Delta_{l_{0i}}}{l_{0i}} = -4.5\%$</td></tr></table>

0.5 kg and a length of 1 m. Without loss of generality, the robots are asked to bring the load to $\bar{\mathbf{p}}_L = [1 \ 1 \ 1]^\top$ m with $\hat{\bar{\mathbf{p}}} = \hat{\bar{\psi}} = 0$ deg.

First, Fig. 2 contains the results from 27 runs obtained as follows. Three different scenarios have been defined, each of which is characterized by different parametric uncertainties. Specifically, for each scenario, each uncertain parameter has been randomly generated between ±10% of the corresponding real parameter value. Then, for each scenario, the same manipulation task as described above has been carried out 9 times: 3 times for each different value of $t_L \in \{0.5, 1.5, 2\}$N. Indeed, for each value of the internal reference force, 3 different biases on the robots' estimated forces have been tested. Specifically, for $i = \{1, 2\}$, $\delta_i = a[1 \ 1 \ 1]^\top$ with $a = \{0.1, 0.2, 0.3\}$N, which means $\delta_i = 0.173$N, 0.346N, and 0.520N, respectively. The results clearly show the beneficial effect of higher values of $t_L$ in terms of the accuracy of load attitude control. Please note that in the chosen setup, $\delta_L$ is such that the equivalent internal force at the equilibrium is $t_L - \delta_L > 0$. However, large values of $\delta_2$ and small values (0.5 N) of $t_L$ result in a small equivalent internal force and, thus, in a large load attitude error at the equilibrium (e.g., 100 deg in Scenario2). Furthermore, the data shows that the variation of the load attitude error against the force bias, e.g., the error sensitivity to parameter variation, is lower for larger values of internal force, given the same uncertainties. This emerges from the slope of the lines fitting the evolution of $e_{pL}$ in Fig. 2. For the sake of repeatability, we report in Table I the randomly generated values of the uncertainties. Without loss of generality, no uncertainty on $k_i$ has been set as it has an equivalent effect to the one on $l_{0i}$ [25].

In Fig. 3, the screenshots from a simulation showing the unstable nature of the desired equilibrium when $t_L = 0$ N but $\delta_L = 0.1$ N so that the equivalent internal force is negative, equal to -0.1 N. Hence, the scenario is equivalent to that described in [23] for $t_L < 0$. This shows the important role of the internal force especially when there are biases in the estimated forces.

Eventually, Fig. 4 shows the results of a simulation in which the leader robot changes its reference position based on the load position equilibrium error, as in Sec. IV-B, and corrects the load position error. The last two plots of Fig. 4 are the force biased estimations and the dotted lines the robots' references, $-\hat{\mathbf{f}}_i$. Note that, from (8) the follower's estimated force at the equilibrium is $-\mathbf{f}_2^{eq} + \delta_2 = -\hat{\mathbf{f}}_2$. Instead, according to (7), the leader robot estimates $-\mathbf{f}_1^{eq} + \delta_1 = -\hat{\mathbf{f}}_1 + \Delta_m g e_3 + \delta_1 + \delta_2 \neq -\hat{\mathbf{f}}_1$, in accordance with the plots.

<footnote n="3">³https://git.openrobots.org/projects/genom3</footnote>

<footnote n="4">⁴https://git.openrobots.org/projects/mrsim-gazebo</footnote>
<figure><img src="image_3.png" /><figcaption>Fig. 2: Each plot contains 9 different simulations with random parameter values, 3 simulations for each value of $t_L$. $e_{R_L}$ has been computed as $||\psi^{eq} - \bar{\psi}|| + ||\theta^{eq} - \bar{\theta}||$. The lines are the linear fitting that approximates the error values (indicated by an asterisk) obtained for each tested $t_L$; the goodness of each fit is shown in the legend by the R-squared value, indicated as $R^2$.</figcaption></figure>

<figure><img src="image_4.png" /><figcaption>Fig. 3: $t_L = 0$ but the equivalent internal force is negative due to $\delta_{L}$. The system does not converge to the desired equilibrium (red bar) but goes to the other one with flipped load attitude (see [23]), and tension in the load. The leader has a red arm, the follower a blue one.</figcaption></figure>

<figure><img src="image_5.png" /><figcaption>Fig. 4: $t_L = 1.5$ N, $\delta_i = [0.2 \ 0.2 \ 0.2]^\top$ N, $\Delta_m = -3.6\%$, $\frac{\Delta_{b1}}{b_1} = \frac{\Delta_L}{L} = 9.4\%$, and $\frac{\Delta_{l0i}}{l_{0i}} = 6.4\%$. After 42s, the leader changes its position reference and $p_L$ goes to $\bar{p}_L$. Other quantities are unaffected.</figcaption></figure>

<figure><img src="image_6.png" /><figcaption>Fig. 5: On the right, pitch (top) and yaw (bottom) errors in 3 tests for different values of $t_L$. On the left, box plots of the mean value of $e_{R_L} = ||\theta - \bar{\theta}|| + ||\psi - \bar{\psi}||$ over the last 20 seconds of the 3 tests. With $t_L = 1$, $\theta$ is still increasing towards the equilibrium.</figcaption></figure>

## VI. EXPERIMENTAL RESULTS

This section describes the experiments, and the setup is in Figure 1. Two quadrotors, with a mass of 1.03 Kg and a maximum thrust for each propeller of 6N, have been equipped with two lightweight cables of length equal to 1 m attached at the endings of a 2-meter-long bar with a mass of 0.2 Kg. These components are shown in Fig. 1. Each robot has an onboard PC and 4 electronic speed controllers that control the propeller speed in closed loop [34]. State-of-the-art UKF-based state estimation fusing the motion capture system measurements at 120 Hz with the IMU measurements

at 1 kHz and a geometric control [32] run onboard.

Three different task executions have been carried out with $\bar{p}_L = [0.5 \ 0 \ 1.5]^\top$ m, $\bar{\psi} = 0.2$ rad, and $\bar{\theta} = -0.12$ rad and three different values of the internal force $t_L \in \{1, 2, 3\}$ N. In each run, a force bias was present and the controller knew the load parameters with a 10% error. The force bias has been estimated by bringing the position-controlled robots vertically on top of their cables during an initialization phase at the beginning of each task execution. Because of the short task duration in the laboratory conditions, we assumed the force bias constant throughout the execution. The yaw angles of the robots are controlled to be constantly equal to zero.

We had each component of $\delta_2$ equal to $\sim 0.2 \pm 0.1$ N, $\sim 0.4 \pm 0.1$ N, and $\sim 0.1 \pm 0.1$ N in the execution with $t_L$
equal to 1, 2, and 3N, respectively. Fig. 5 shows the load attitude resulting from the three task executions. Please note that, although the force biases are not exactly the same in the three tests, they are such that the equivalent internal force is higher in the tests with a higher value of $t_L$. The main result to be noted is how the final value of the pitch and yaw errors as well as the overall load attitude errors are smaller for higher values of the internal force.

## VII. CONCLUSIONS

This work studied the force-based manipulation of cable-suspended loads using non-communicating UAVs in the presence of biased force estimates/measurements. The equilibrium points of the closed-loop system have been studied. It has been shown that a load internal force induced by non-vertical cables at the equilibrium is beneficial for the robustness of pose control and for the error sensitivity to force bias variations. Numerical and experimental results have been presented. Interesting future directions are the extension of the robustness analysis to general rigid bodies manipulated by more than two robots and the outdoor experiments.

## REFERENCES

[1] F. Ruggiero, V. Lippiello, and A. Ollero, "Aerial manipulation: A literature review," *IEEE Robotics and Automation Letters*, vol. 3, no. 3, pp. 1957-1964, 2018.

[2] H. B. Khamseh, F. Janabi-Sharifi, and A. Abdessameud, "Aerial manipulation—a literature survey," *Robotics and Autonomous Systems*, vol. 107, pp. 221-235, 2018.

[3] A. Ollero, M. Tognon, A. Suarez, D. Lee, and A. Franchi, "Past, present, and future of aerial robotic manipulators," *IEEE Transactions on Robotics*, vol. 38, no. 1, pp. 626-645, 2022.

[4] K. Sreenath and V. Kumar, "Dynamics, control and planning for cooperative manipulation of payloads suspended by cables from multiple quadrotor robots," in *Robotics: Science and Systems*, June 2013.

[5] C. Masone, H. H. Bülthoff, and P. Stegagno, "Cooperative transportation of a payload using quadrotors: A reconfigurable cable-driven parallel robot," in *2016 IEEE/RSJ Int. Conf. on Intelligent Robots and Systems*, Oct 2016, pp. 1623-1630.

[6] T. Lee, "Geometric control of quadrotor uavs transporting a cable-suspended rigid body," *IEEE Transactions on Control Systems Technology*, vol. 26, no. 1, pp. 255-264, 2017.

[7] G. Li, R. Ge, and G. Loianno, "Cooperative transportation of cable suspended payloads with mavs using monocular vision and inertial sensing," *IEEE Robotics and Automation Letters*, vol. 6, no. 3, pp. 5316-5323, 2021.

[8] D. Sanalitro, H. J. Savino, M. Tognon, J. Cortés, and A. Franchi, "Full-pose manipulation control of a cable-suspended load with multiple uavs under uncertainties," *IEEE Robotics and Automation Letters*, vol. 5, no. 2, pp. 2185-2191, 2020.

[9] F. Rossomando, C. Rosales, J. Gimenez, L. Salinas, C. Soria, M. Sarcinelli-Filho, and R. Carelli, "Aerial load transportation with multiple quadrotors based on a kinematic controller and a neural smc dynamic compensation," *Journal of Intelligent & Robotic Systems*, vol. 100, no. 2, pp. 519-530, 2020.

[10] S. Thapa, H. Bai, and J. Á. Acosta, "Cooperative aerial manipulation with decentralized adaptive force-consensus control," *Journal of Intelligent & Robotic Systems*, vol. 97, no. 1, pp. 171-183, 2020.

[11] D. Sanalitro, M. Tognon, A. J. Cano, J. Cortés, and A. Franchi, "Indirect force control of a cable-suspended aerial multi-robot manipulator," *IEEE Robotics and Automation Letters*, vol. 7, no. 3, pp. 6726-6733, 2022.

[12] J. Goodman and L. Colombo, "Geometric control of two quadrotors carrying a rigid rod with elastic cables," *Journal of Nonlinear Science*, vol. 32, no. 5, pp. 1-31, 2022.

[13] A. Mohiuddin, Y. Zweiri, T. Taha, and D. Gan, "Energy distribution in dual-uav collaborative transportation through load sharing," *Journal of Mechanisms and Robotics*, 04 2020.

[14] A. Tagliabue, M. Kamel, S. Verling, R. Siegwart, and J. Nieto, "Collaborative transportation using MAVs via passive force control," in *2017 IEEE Int. Conf. on Robotics and Automation*, 2016, pp. 5766-5773.

[15] M. Gassner, T. Cieslewski, and D. Scaramuzza, "Dynamic collaboration without communication: Vision-based cable-suspended load transport with two quadrotors," in *2017 IEEE Int. Conf. on Robotics and Automation*, May 2017, pp. 5196-5202.

[16] P. O. Pereira and D. V. Dimarogonas, "Pose stabilization of a bar tethered to two aerial vehicles," *Automatica*, vol. 112, p. 108695, 2020.

[17] V. Spurny, M. Petrlik, V. Vonasek, and M. Saska, "Cooperative transport of large objects by a pair of unmanned aerial systems using sampling-based motion planning," in *2019 24th IEEE Int. Conf. on Emerging Technologies and Factory Automation*. IEEE, 2019, pp. 955-962.

[18] A. Mohiuddin, T. Tarek, Y. Zweiri, and D. Gan, "A survey of single and multi-uav aerial manipulation," *Unmanned Systems*, vol. 8, no. 02, pp. 119-147, 2020.

[19] D. Mellinger, M. Shomin, N. Michael, and V.Kumar, "Cooperative grasping and transport using multiple quadrotors," in *Int. Symp. on Distributed Autonomous Robotic Systems*, 2013, pp. 545-558.

[20] Z. Wang and M. Schwager, "Force-amplifying n-robot transport system (force-ants) for cooperative planar manipulation without communication," *The International Journal of Robotics Research*, vol. 35, no. 13, pp. 1564-1586, 2016.

[21] A. Tagliabue, M. Kamel, R. Siegwart, and J. Nieto, "Robust collaborative object transportation using multiple mavs," *The International Journal of Robotics Research*, vol. 38, no. 9, pp. 1020-1044, 2019.

[22] S. Thapa, H. Bai, and J. Acosta, "Cooperative aerial load transport with force control," *IFAC-PapersOnLine*, vol. 51, no. 12, pp. 38-43, 2018.

[23] M. Tognon, C. Gabellieri, L. Pallottino, and A. Franchi, "Aerial co-manipulation with cables: The role of internal force for equilibria, stability, and passivity," *IEEE Robotics and Automation Letters, Special Issue on Aerial Manipulation*, vol. 3, no. 3, pp. 2577-2583, 2018.

[24] C. Gabellieri, M. Tognon, D. Sanalitro, L. Pallottino, and A. Franchi, "A study on force-based collaboration in swarms," *Swarm Intelligence*, vol. 14, no. 1, pp. 57-82, 2020.

[25] C. Gabellieri, M. Tognon, D. Sanalitro, and A. Franchi, "Equilibria, stability, and sensitivity for the aerial suspended beam robotic system subject to parameter uncertainty," *IEEE Transactions on Robotics*, 2023.

[26] G. Abhiram, "Thermal drift compensation of load cell reading using linear regression in weighing lysimeters," *AGRIEAST*, vol. 16, no. 2, pp. 47-59, 2022.

[27] J. R. Goodman, J. S. Cely, T. Beckers, and L. J. Colombo, "Geometric control for load transportation with quadrotor uavs by elastic cables," *arXiv preprint arXiv:2111.00777*, 2021.

[28] A. Yiğit, M. A. Perozo, L. Cuvillon, S. Durand, and J. Gangloff, "Novel omnidirectional aerial manipulator with elastic suspension: Dynamic control and experimental performance assessment," *IEEE Robotics and Automation Letters*, vol. 6, no. 2, pp. 612-619, 2021.

[29] K. Nonami, F. Kendoul, S. Suzuki, W. Wang, and D. Nakazawa, *Autonomous flying robots: unmanned aerial vehicles and micro aerial vehicles - Chapter 12*. Springer Science & Business Media, 2010.

[30] L. Villani and J. De Schuttert, "Handbook of robotics, chapter force control," 2008.

[31] M. Ryll, G. Muscio, F. Pierri, E. Cataldi, G. Antonelli, F. Caccavale, and A. Franchi, "6D physical interaction with a fully actuated aerial robot," in *2017 IEEE Int. Conf. on Robotics and Automation*, Singapore, May 2017, pp. 5190-5195.

[32] T. Lee, M. Leoky, and N. H. McClamroch, "Geometric tracking control of a quadrotor UAV on SE(3)," in *49th IEEE Conf. on Decision and Control*, Dec. 2010, pp. 5420-5425.

[33] M. Ryll, G. Muscio, F. Pierri, E. Cataldi, G. Antonelli, F. Caccavale, D. Bicego, and A. Franchi, "6D interaction control with aerial robots: The flying end-effector paradigm," *The International Journal of Robotics Research*, vol. 38, no. 9, pp. 1045-1062, 2019.

[34] A. Franchi and A. Mallet, "Adaptive closed-loop speed control of BLDC motors with applications to multi-rotor aerial vehicles," in *2017 IEEE Int. Conf. on Robotics and Automation*, May 2017, pp. 5203-5208.