Cooperative Load Transportation With Two Quadrotors Using Adaptive Control

The problem of carrying a bar-shaped payload suspended by flexible cables attached to two quadrotors is analyzed in this work. The aerial vehicles and the load are dealt with as a single system, whose kinematics is described as a multi-robot formation using the virtual structure approach. The dynamic effects caused by the tethered load over the quadrotors, as well as those caused by each quadrotor over the other, are treated by an adaptive dynamic compensator. To validate the proposal, experiments were run testing the system in adverse conditions: transportation far from quasi-static motion, high payload-to-quadrotor weight ratio, 20% of error in the robot model parameters, transportation under wind disturbances, and payload weight changes during flight. The good performance of the proposed control system in all these tests allows concluding that the proposed system is able to accomplish payload positioning, orientation, and trajectory tracking under adverse conditions, with accelerations up to 1.6 m/s2.


I. INTRODUCTION
An emerging application of unmanned aerial vehicles (UAVs) is the use of quadrotors to grasp, manipulate, and transport payloads [1]- [4]. Commonly, this can be achieved using one out of two strategies: by tethering the payload to the vehicle body, characterizing a cable-suspended load transportation, or by attaching the load directly on the body of the vehicle, characterizing a grasped load transportation. In the first case, the number of underactuated degrees of freedom increases, but the agility of the vehicle to maneuver is preserved. As for the second case, it is easier to obtain the mathematical model of the system, but the inertia of the vehicle is increased, thus decreasing its agility to maneuver. There are successful works considering both strategies, using a single agent [5]- [7] or even a team of agents [8]- [10] carrying payloads. Specifically talking about a team of quadrotors carrying a payload, the focus of this work, the main advantages are the viability of carrying a load that is too heavy for the thrust capability of a single quadrotor, and the possibility of increasing redundancy and safety.
The associate editor coordinating the review of this manuscript and approving it for publication was Guillermo Valencia-Palomo .
As discussed in the survey presented in [4], in spite of the feasibility, there are many open challenges regarding the transportation of slung loads by quadrotors. Carrying a cable-suspended payload demands that the controllers deal with a pendulum stabilization problem while flying. In addition, it is hard to obtain a generic mathematical model for this task, once it can be divided into three flight modes: (i) lifting, (ii) transportation, and (iii) delivery, which have distinct dynamic characteristics and are affected by the weight and shape of the load. Moreover, for a squad of agents, the controllers should be robust enough to keep tracking a desired trajectory under load swings and to deal with the forces each agent exerts on the others.

A. RELATED WORK
Recent publications proposed control solutions for the manipulation and transportation of suspended payloads using quadrotors working cooperatively. In [11]- [13], for instance, the position and attitude of the payload are controlled in a cable-driven parallel robot fashion, whereas an approach without communication is presented in [14], [15], using force feedback to control the pose of the payload. In [16]- [20], by its turn, the manipulation task is performed by a quadrotor formation, which allows easy configuration and trajectory/task planning for the robots. With regard to [21], a force-based consensus algorithm ensures an equal share of the payload mass among the quadrotors in the formation. Despite their impressive contributions, to be able to handle the different transportation flight modes and perform trajectory tracking and path following at velocities suitable for real-world applications, the robustness of these techniques still needs to be improved.
Accordingly, a control algorithm that provides robustness in the presence of model uncertainties and external disturbances is certainly a reasonable option for load transportation. Different strategies have been used to achieve this for quadrotors carrying suspended payloads. As an example, in [22] reinforcement learning was used to achieve end-to-end (i.e., from load pick-up to delivery) payload transportation, where a meta-learning method updates the dynamic model of the system whenever variations of the payload occur. Reinforcement learning was also used in [23] to transport payloads by a team of three quadrotors, in which learning was used for planning smooth and swing-free trajectories. In [24]- [26], by their turn, adaptive control was used to counteracts the model parameter uncertainties by adjusting them in real-time, also allowing quick adaptation to new dynamics in pick-up or delivery tasks. Moreover, many authors achieved impressive results in terms of robustness using energy-based and passivity-based approaches for load transportation, as in [27]- [30], where damping is injected to dissipate undesired energy and achieve stability. Another common approach employed to obtain robustness is the use of sliding mode controllers. This technique turns the system not susceptible to uncertainties by driving its states to a switching surface in the state space. The authors of [31] and [26] demonstrated that for applications considering a single vehicle and cooperative transportation.
Nevertheless, these controllers have some drawbacks with respect to their practical application. Learning algorithms suffer to deliver generalized solutions, requiring exhaustive real-world training under diverse environmental conditions, whereas normally the training data are obtained indoor or running a system simulation using traditional dynamic models. Regarding adaptive controllers, as they adapt themselves online for optimal model parameters, a solid prior knowledge of the structure of the system model is essential. With regard to passivity-based approaches, despite their success on disturbance rejection for load stabilization, they still lack experimental validation at velocities/accelerations suitable for real-world applications, once they have been tested only in quasi-static motion. As for sliding mode controllers, although being quite robust they are inherently flawed to deliver smooth solutions due to the chattering effect, which may cause vibration and load oscillation.

B. CONTRIBUTIONS
In such a context, the main objective of this work is to propose a robust and simple control system for two quadrotors working cooperatively to carry a suspended rod-shaped payload, as depicted in Figure 1. The kinematics of the quadrotors are managed as a robot formation problem, and a virtual structure formation in combination with a kinematic controller handles the desired position and velocity for the vehicles, to which the load is attached through cables.
Among the robust controller drawbacks discussed in Subsection I-A, those associated with adaptive controllers seem to us to be the more amendable from a practical viewpoint, once the model structure for a variety of tasks using quadrotors is a well-discussed subject in the literature (such as the dynamic models found in the references of this paper). Thus, to improve the tracking of the velocity references given by the kinematic controller responsible to guide the formation, an adaptive dynamic compensator is proposed for each UAV in the formation to deal with the model uncertainties.
The main contributions of this paper can be summarized as follows: (i) we provide a simple method for planning the transportation missions, allowing the operator to directly plan the navigation of center-of-mass of the payload and the payload orientation using the virtual structure formation paradigm (see Figure 2). In addition, the virtual structure configuration is easily interchangeable for different loads being carried and cable lengths; (ii) the adaptation law is updated online, thus allowing real-time compensation for thrust-related uncertainties and drag-related disturbances; (iii) our controller requires no sensory data related to the payload; and (iv) we provide a comparative survey relating the main features found in the recent works regarding load transportation with quadrotors, which also highlights two experimental contributions of this work: transportation far from quasi-static motion, tracking 3D desired trajectories in accelerations up to 1.6 m/s 2 , and transportation with payloadto-quadrotor weight ratio up to 0.575, far from the weight ratio usually found in other works of the literature.
To discuss such topics the paper is hereinafter split in a few sections, starting with Section II, which characterizes VOLUME 9, 2021 the formation adopted. Following, Section III describes the kinematic controller in charge of dealing with how the formation as a whole should behave, whereas Section IV discusses the system dynamics and Section V presents the adaptive dynamic compensation module associated to each quadrotor in the formation. In the sequel, Section VI discusses the setup adopted for running the validating experiments, whereas Section VII shows and discusses the results of the experiments run. Finally, Section VIII highlights the main conclusions of the work.

II. MULTIPLE ROBOT FORMATION
As our system considers two UAVs cooperatively carrying a bar-shaped payload, we choose to formulate this problem as a robot formation problem, rather than individually plan desired trajectories that synchronizes the robots for the task. Therefore, we just need to obtain the formation navigation references from the task planner whereas the references for the robots are generated by a formation kinematic controller, whose stability is demonstrated. The proposed formation framework is based on the virtual structure paradigm [32], for which the virtual structure is a line in the 3D space, the line linking the two UAVs. Such a line is characterized by the so-called formation variables, which are here referred to as where q p = [x F y F z F ] ∈ R 3 represents the position coordinates of the virtual structure in the world frame, here given by the position of one of the UAVs in the formation extremities, whereas q c = [α F β F ρ F ] ∈ R 3 are the formation configuration that defines the other extremity, as it can be seen in Figure 1. As for the formation configuration components, α F is the angle between the X-axis and the projection of the virtual structure on the XY-plane, β F is the angle between the XY-plane and the virtual structure, and ρ F is the length of the virtual structure (the distance between the two UAVs). In summary, the position of a UAV with respect to the other is given by a set of spherical variables, and the payload is considered hanging below the virtual structure formation at a distance − ẑ w , defined by the length of the cables. Considering that the system is in internal equilibrium, the payload orientations in yaw and pitch are given by α F and β F . Also, the positions of the two attachment points in the payload coincide with the horizontal positions of the vehicles, and, if a homogeneous payload is symmetrically attached by the cables, its center-of-mass (CoM) is collinear with the centroid of the virtual structure, which is given by where s α F = sin α F and c α F = cos α F , with x bar/q being the vector that maps the formation position coordinates into the payload center-of-mass. Defining the desired state for the formation as q des = [q p,des q c,des ] ∈ R 6 , and the commanded reference state asq ref ∈ R 6 , two task-planning approaches can be used to deal with the transportation task here addressed. One of them consists in dealing with the formation states directly, what means to deal with q des , knowing that, after stabilization, the payload will be hanging below the formation, whereas the other consists in controlling a point in the payload (its centerof-mass, for instance), from which the desired formation states can be obtained in a way similar to the one that generated (2). This setup allows the UAV formation and payload to be used for complex transportation, capable of tracking desired trajectories and paths, and allowing transportation in limited spaces, where it is necessary to tilt and turn the load to avoid collisions. Some examples for the system configuration q c are provided in Figure 2.
To control the formation and vehicles, an inner-outer loop control scheme is adopted, which is illustrated in Figure 3. The outer loop corresponds to a kinematic controller, which generates the formation reference velocitieṡ q ref , based on the desired formation position and configuration and their time derivatives. In the sequel, an inverse Jacobian matrix maps these formation reference signals into velocity references for the two vehicles. Then, the references thus obtained for the vehicles are treated by an adaptive dynamic compensation module, responsible for considering the dynamics of the vehicles and counteracting the dynamic effects caused by the payload and by one vehicle on the other.

III. FORMATION KINEMATIC CONTROL
Defining the error between the desired formation state and the current formation state asq = q des − q, the control lawq is proposed for the kinematic formation controller, where κ 1 and κ 2 are positive definite diagonal matrices, and tanh(·) is FIGURE 3. Inner-outer loop control system for the virtual structure formation and the quadrotors. The outer loop kinematic controller generates the velocity referenceq ref ∈ R 6 using the payload desired pose and velocity (defined by the user). Thus, a Jacobian matrix maps these references into velocity references for the vehicles,ẋ ref ∈ R 6 , where the first three elements are inputs for the quadrotor 1, and the last three for the quadrotor 2. Finally, these velocity references become acceleration references for a dynamic compensator, using the control scheme presented in Section V-A.
used as a smooth saturation function. During robot navigation, a feedback loop updates the formation entries at each control cycle, thus changing the current state of the formation.
To compute the formation control feedback, the relationship between the robots space and formation space should be known. Such a relationship is characterized by where q is a vector containing the formation variables (characterizing the formation space) and x ij = [x i x j ] ∈ R 6 is a vector containing the positions of the robots (characterizing the robots space), with i, j representing the quadrotors, and with x i = [x i y i z i ] ∈ R 3 representing the position coordinates of the i-th quadrotor in the world frame.
To map the formation references,q ref , to the velocity references for the vehicles,ẋ ij,ref , it is necessary to know the inverse of the Jacobian matrix associated to (4), so thaṫ Such a relationship is obtained writing the reverse mapping correspondent to (4) and differentiating it to obtain with The stability analysis for the control law of (3) is provided, based on the theory of Lyapunov. Assuming a perfect tracking of the reference velocity by the robots, i.e., ν q =q ref −q = 0, the closed-loop kinematic equation can be written aṡ orq To check the stability of the system thus described, the radial-basis function V (q) = 1 2q q will be used as the Lyapunov candidate function. Notice that V (q) > 0 for all q = 0 and V (q) = 0 only forq = 0, as demanded from a Lyapunov candidate function. As for the first time derivative of such a function, it isV =q q .
Looking for asymptotic stability,V should be negative for allq = 0. In fact, introducing (8) allowing checking thatV < 0, ∀q = 0, since tanh(·) is an odd function. As a result,q → 0 when t → ∞, allowing concluding that the proposed control law makes the system asymptotically stable. An important detail in the development of such stability proof is that the tracking error for the reference velocities is assumed to be zero (ν q = 0). This assumption can be made because the formation is a virtual structure, thus not having inertia or dynamics associated to it. In Section V-A, however, where real quadrotors are considered, the dynamic effects will be considered and such assumption will be relaxed, expanding the stability proof to consider the dynamics of the vehicles and the payload.

IV. SYSTEM DYNAMICS
The position of the i-th quadrotor in the three-dimensional space is x i = [x i y i z i ] , indicating the longitudinal, lateral and normal displacements with respect to the world referential system w . By its turn, η i = [φ i θ i ψ i ] is a vector that contains the roll, pitch and yaw angles correspondent to the vehicle, also in w . In other words, x i and η i represent, respectively, the translational and attitude variables associated to each UAV. The mathematical model for quadrotors is well covered in the literature, and, for the 6-DoF body in the three-dimensional space, can be given by [33] where g is the gravity acceleration, m is the mass of the quadrotor, I = diag[I xx I yy I zz ] is the matrix of moments of inertia of the vehicle, d = [d 1 , . . . , d 6 ] are the air drag coefficients, and u 1 , u 2,φ , u 2,θ and u 2,ψ are the thrust and torque commands generated by the low level controllers responsible to stabilize the attitude of the vehicle. An important remark is that to use the built-in low-level attitude controllers available in most off-the-shelf quadrotors, the payload should not affect the pitch and roll internal control loops, i.e., the payload dynamics should be decoupled from the attitude dynamics of the quadrotor. This is obtained by attaching the cable connecting the load to the quadrotor at its center-of-mass. Although being quite difficult to access the CoM in real quadrotors -it is likely to lie inside the vehicle body or components -we can adjust the attaching point at the base of the vehicle in such a way that any offset is just in theẑ w direction. Considering that this is done, and that the desired attitude angles are small, the payload dynamics and the quadrotor dynamics can be considered decoupled [34].
Therefore, from (11), only equations (11a)-(11c) need to be modified to include the payload dynamic effects. Considering that the payload is in equilibrium relative to the aerial vehicles, i.e., without swinging, the forces applied by the quadrotors on the load are vertical. Under such conditions internal forces are null, and each vehicle needs to adjust its thrust to carry the same additional weight, which is half of the mass of the bar ( 1 2 m bar ). Out of internal equilibrium state, the payload may swing at longitudinal and lateral planes, and twist around horizontal plane, with swing angles γ x , γ y , and γ α , respectively (see Figure 1 for examples of γ y and γ α ). Considering the payload dynamic effects as (·), the motion equations for a quadrotor, considering a point-mass approximation for the payload, are, where M ≈ (m + 1 2 m bar ). The effects of γ y are given by equations similar to (12d)-(12e), and the effects of γ α can be interpreted as a superposition of γ x and γ y swinging.

V. DYNAMIC COMPENSATOR
As illustrated in Figure 3, velocity references from the kinematic formation controller,ẋ ij,ref = J −1 (q)q ref , are used to guide the aerial robots in the load transportation task, and an error in the reference tracking for each quadrotor occurs due to system dynamics. This means that To reduce such velocity-tracking error an adaptive dynamic compensator is here proposed for each quadrotor, aiming at improving the performance of the whole control system. Since the same adaptive dynamic compensation module is used for both quadrotors, the i, j notations are dropped, for convenience.
Aiming at safety and accuracy, usually low or moderate velocities are used to transport payloads. Thus, a small-angle linearization can be applied to the quadrotor attitude in (12), with minor performance losses. To ensure the validity of the small-angle linearization, limits are established for the desired pitch and roll angles θ des and φ des , which are both ≤ 15 • . These limitations are equivalent to translational accelerations up to 2.5 m/s 2 .
Exploiting the built-in low-level attitude controllers of the vehicles, the high-level translational inputs are the roll command u φ , the pitch command u θ , and the altitude rate command uż. These commands are grouped in a vector defined as u = u θ u φ uż = K u,θ θ des K u,φ φ des K u,żżdes , whose entries are all in the interval [−1.0, +1.0], representing the normalized limits for the desired high-level commands, with K u being the proportionality constants associating the normalized control commands to the embedded controller limit parameters.
Thus, (12a)-(12c) can be written as where τż is the time constant for the altitude rate. Finally, the model (14) for the quadrotor can be written in the linear form as and the control law can be adopted, where R −1 ψ is a rotation matrix relating w to b , only dependent of ψ, A = diag(a 1 , a 2 , a 3 ) and 3 ) are diagonal positive definite matrices containing the thrust-related dynamic parameters for the vehicle, ν is the tracking error between the reference velocity given by the formation kinematic controller and the velocity of the vehicle (as given in (13)),ẍ ref is the acceleration reference obtained by differentiating the reference velocity given by the formation controller (ẋ ref ), and κ D is a diagonal positive definite matrix. To execute the control law, the thrustrelated dynamic parameters (Â,B) can be estimated using a series of samples from experimental trials and least square identification, as in [35] and [36]. The yaw commands for each vehicle are not covered here, and can be selected arbitrarily, since the quadrotor is an omnidirectional vehicle.

A. ADAPTIVE DYNAMIC COMPENSATOR
From equations (14)- (16), the dynamics lumped in matrices A and B depends of u 1 , g, M and the air drag coefficients. Thus, it depends on the thrust of the vehicles, and the mass and shape of the vehicles and payload. Therefore, for every different payload being carried, and for every flight mode that the system is executing, the parameters of A and B will be different (e.g., transporting a payload with different mass, or delivering the load and switching between flying with load to flying without load). Instead of using a complex hybrid model to attend the in-flight changes in the dynamics of the vehicles, we exploit the fact that the dynamics of every flight mode discussed in Section I can be obtained by changing the parameters of A and B accordingly. To change the dynamic parameters in real-time by feedback, an adaptive action is added to the proposed dynamic compensator.
Also, as shown in (12f)-(12g), the disturbances caused by the payload swinging angles, , have their origin in the translational accelerations of the vehicles. Thus, to get good performance with the framework here proposed the user should choose desired trajectories with low/moderate accelerations and transportation under constant velocities. In addition, smooth accelerations are advised, with initial and final accelerations equal to zero. Following these considerations, we can assume ≈ 0 during constant velocities, with minor deviations occurring when accelerating, which should be addressed by the adaptive PD feedback. These restrictions on the desired trajectories are the giveback for simplifying the proposal, allowing the control of the payload position in open-loop, thus, allowing the use of off-the-shelf quadrotors without any additional sensors. Notice that to control the payload position in open-loop, in this case, means that the closed-loop control is applied to the positions of the two quadrotors, and getting control of such positions one gets control of the load position as a consequence.
As the control law (16) depends on constant or slowly-varying terms multiplied by time-varying states, one can write the translational control law in compact form as and thus the parameter update rule can be selected aṡ where κ ∈ R 3×3 is a symmetric positive definite matrix, G ∈ R 3×6 is a regression matrix which considers the velocities and accelerations, ∈ R 6 is a vector containing the constant or slowly-varying model dynamic parameters, and represents the vector of estimated dynamic parameters (characterized through˜ =ˆ − ).

B. STABILITY ANALYSIS
In this analysis, the assumption of perfect tracking of reference velocity is relaxed, which means that the dynamics of the vehicles affect the closed-loop equations.
Taking the Lyapunov candidate function as the radial-basis function which is positive for all ν,˜ = 0 and null for ν = 0 and = 0, the first time derivative iṡ Consideringν =ẍ ref −ẍ, and using (15) one gets Introducing (22) in (21) and using the control law of (17), one gets, for the closed-loop system, which simplifies tȯ Now, considering˙ =˙ , since the vector of real parameters can be considered constant or slowly-varying for a given flight mode or configuration (˙ = 0), and inserting the adaptive law (19) in (24), one finally getsV Using the Barbalat's lemma [37], the result in (25) implies that for bounded desired trajectories, and considering that VOLUME 9, 2021 the input for the quadrotors u is bounded,V is bounded, and, therefore,V is uniformly continuous, which implies in asymptotically stable velocity tracking. In other words, ν → 0, which also implies thatẋ,x → 0 asymptotically. Therefore, the proposed adaptive dynamic controller guarantees the asymptotic convergence of the real velocities to the reference velocities given by the kinematic formation controller and the positions of the vehicles to the desired positions.

VI. EXPERIMENTAL SETUP
To validate the proposed algorithms, extensive real-world experiments were run using two Parrot Bebop 2 quadrotors to carry an aluminum bar measuring L = 1.45 m and weighing 155 g. Each robot weighs 500 g, and the load is attached to the robots through flexible cables.
The algorithms run in an offboard station, at a rate of 30 Hz, acquiring the poses of the vehicles and the payload through an OptiTrack motion capture system configured with eight cameras, and computing the reference control signals that are sent to the robots via ROS.
As stated in Section III, the formation controller is responsible for receiving the desired navigation references and evaluate the reference velocities that each robot should attain to accomplish the mission. According to Subsection V-A, uncertainties from the model and payload are handled by the adaptive dynamic compensation module, as well as the ability to fly in different flight modes. The initial dynamic parameters forÂ andB were obtained according to the method presented in Section V, considering a single quadrotor flying without a payload, and are given by A = diag(0.39, 0.4, 0.25) and B = diag(0.21, 0.20, 1.01). It is worth mentioning, however, that due to the adaptive action of the dynamic compensator, such an identification process can be completely skipped. Indeed, the dynamic parameter matricesÂ andB could be both initialized as the unit matrix I 3×3 . Then, low acceleration trajectories should be performed for a few seconds, thus allowing the algorithm to stabilize and online adapt the parameters to the optimal values.
With regard to the validating experiments, five transportation tasks were executed to test the proposed algorithms. In every experiment, the control of the payload position, x bar , and orientation, η bar , is the main concern. Hence, following the control structure presented in Figure 3, the desired payload state is the task planner input, from which q p,des andq p,des are obtained using (2), and q c,des = [ψ bar,des θ bar,des L] . The payload roll angle, φ bar , is not possible to be controlled using our proposal. Also, the yaw angle for the vehicles are not considered, because the quadrotor is an omnidirectional vehicle, as mentioned in Section IV.

VII. RESULTS
In this section, the results that validate the proposals here reported are presented. Considering that a successful transportation is one that is precise and safe, the aimed performance in the following trials, so-called a good tracking performance, are position errors around 15 cm (or error norm around ||x bar || 2 = 15 √ 3 ≈ 26 cm) and orientation errors around 10 • . All error metrics presented in the following were measured considering the center of mass of the transported bar. As our objective is to propose a robust and simple controller for load transportation, simplicity and robustness were preferred, over higher precision.
To test the robustness of our system, we impose the following challenges in the transportation experiments: high payload-to-quadrotor weight ratio, 20% of error in the model parameters of the vehicles, transport under wind-like disturbances, manipulation of the payload orientation during transport, and changes of the payload weight during transportation. We also tested our system using moderate velocities and accelerations, aiming at practical applications, where a robust but not sluggish system is preferred. A video showcasing our system under these challenges can be watched at https://youtu.be/eDFRapPJQ18.
In the following subsections, we further analyze the results obtained in each experiment. Although this proposal does not demand payload information to feedback the controllers, in the experiments run the OptiTrack system was also used to measure the position of the center of mass of the payload, just to produce the graphics shown.

A. TASK #1: TRANSPORTATION AT HIGH ACCELERATIONS AND PAYLOAD WEIGHT -COMPARISON WITH PID
In task #1 the bar is transported through a tilted lemniscate-shape trajectory parameterized as where r x = r y = 1 m, r z = 0.35 m, z 0 = 0.55 m, and T = 16 s. The length of the cable attached to the payload is = 0.8 m. Further, we attached an additional payload, weighing 180 g, nearby the CoM of the bar. Therefore, for this experiment, the total payload mass is 335 g and the payloadto-quadrotors weight ratio is 0.335, once our vehicles weights 1000 g combined. To avoid excessive oscillations, acceleration and deceleration phases were used, to smoothly increase and decrease the trajectory frequency, whose duration was 10 s and 5 s, respectively. To compare our approach to commonly used robust methods, we benchmark our controller with a well-tuned PID controller. The performance of our approach is presented in Figure 4. For the PID controller, several runs were performed with different parameters, and the PID gains which generated the best performance were adopted. For the sake of comparison, the norm of the error is presented in Figure 5,  considering the controller here proposed and the PID one. As one can see from such a figure, our adaptive controller overperforms the PID controller after having its parameters adapted.
In another test, we further increased the desired acceleration in (26) by decreasing the period to T = 10 s, which is equivalent to maximum desired acceleration of 1.6 m/s 2 . In Figure 6 it is possible to see the performance obtained using our approach. We also tried to use a PID controller in this case, for comparison, but the PID controller was not able to accomplish the task, leading to crashes or tracking errors above 50 cm.

B. TASK #2: TRANSPORTATION WITH PARAMETER UNCERTAINTIES
In this task, the desired trajectory in (26) was used once again, but here we purposely introduced an error in the identified values of the dynamic parameters, presented in Section VI, of around 20%. This test was motivated by a commonly found scenario in real-world applications, where the identified parameters are far from the real ones due to adverse conditions of the vehicle (e.g., component wearing) and environment. In this kind of scenario, adaptive systems are superior due to their parameter adjustment nature, in opposition to PID systems, which are very restricted when regarding the kind of uncertainty that the system undergoes.
The performance comparison between the proposed adaptive controller and the PID controller can be seen in Figure 7, where just the norm of the error is presented, due to the similarity of the component-wise performance to already presented graphs (as the one in Figure 4). As expected, the adaptation of the thrust-related dynamic parameters is able to greatly improve the tracking performance under parameter uncertainties in comparison to integral offset correction. In short, the robustness obtained by PID controllers is restricted, at best, to slowly-varying time-varying states or disturbances, not being well-suited to address the errors caused by misidentification ofÂ orB.

C. TASK #3: TRANSPORTATION UNDER WIND-LIKE DISTURBANCES
To validate our algorithms for transportation under windy environments, we emulate the dynamical forces caused by opposing wind in quadrotors, attaching to the top of the vehicles a foam plate of 25 x25 cm 2 , as shown in Figure 8. These foam plates generate opposing drag forces when the quadrotors try to track the trajectories and when they accelerate to compensate for the disturbances. To demonstrate the effects caused solely by those plates, we guided one of the quadrotors through a lemniscate trajectory in two runs, one with and one without the foam plate, and the results of this experiment are shown in Figure 9.
As one can perceive in Figure 9, the foam plate directly impacts in the tracking performance, but, as our approach adapts for drag in the parameterB in (16), we expect that the opposing drag forces are counteracted by the proposed controller. To verify it, we maneuver the payload in a VOLUME 9, 2021   cooperative transportation through a circular-shaped trajectory parameterized as where r x = r y = 1 m, z 0 = 0.55 m, and T = 5 s, which corresponds to translational accelerations up to 1.6 m/s 2 . The combined load of the two foam plates and the bar-shaped payload during this transportation was 275 g, corresponding to a weight ratio of 0.275. The trajectory tracking results for such experiment are shown in Figure 10. As one can see, the impact of opposed drag forces is counteracted by adapting the dynamic parameters involved in the controller. We also tried to compare the results obtained using our approach to standard PID controller, but it resulted in crashes in all of our tries. The conclusion is that PID-based systems are not able to deal with this kind of disturbance.

D. TASK #4: MANEUVERING THE PAYLOAD TO AVOID OBSTACLES
The approach here proposed allows the manipulation of the payload translational positions and attitude angles, except for roll angle. Therefore, it is possible to propose desired trajectories and paths including maneuvers allowing the payload to avoid obstacles. In this fourth task, the payload should contour obstacles in the center of the testing area, emulating the necessary  manipulation used in narrow corridors, for instance, where the payload should be turned to go on in corners. This maneuver is represented by a circular-shaped trajectory parameterized as in (27), with r x = r y = 1 m, z 0 = 0.55 m, and T = 9 s. The cable lengths are = 0.8 m.
To contour the circular trajectory, the payload desired orientation is given by the tangent of the trajectory, such that α bar,des = atan2 (y bar , x bar ) − 180 • , where −180 • was used for quadrotor x 1 to lead the formation. We also tilted the payload with β bar,des = 20 • , emulating a tilt that might be necessary to transport the payload in stairs or inclined surfaces, such as access ramps.
The obtained performance is presented in Figure 11. It is possible to see that the desired performance was achieved in the accomplishment of this task.

E. TASK #5: UNBALANCED LOAD TRANSPORTATION
This last transportation task consists of carrying the bar through a tilted lemniscate-shape trajectory parameterized as where r x = r y = 1 m, r z = 0.35 m, z 0 = 0.45 m, and T = 30 s. The cable lengths are = 1.15 m. Once again we chose a trajectory that excites the system dynamics in three dimensions, with smooth sinusoidal acceleration. Also, during the transportation the payload should be oriented so that ψ bar,des = 90 • and θ bar,des = 0 • . During the transportation, additional loads were attached to the extremities of the bar, to unbalance it. After one lemniscate cycle, in t = 30 s, a load weighing 180 g was added to one extremity of the bar, and after an additional cycle, in t = 60 s, a load weighing 240 g was added to the other extremity. The intent of this experiment is to verify if the proposed control system is able to deal with load fluctuations or loads that do not have uniform mass distribution. The final payload-to-quadrotors weight ratio was 0.575. Figure 12 shows the graphics correspondent to the payload desired and current positions, and Figure 13 shows the graphics correspondent to the position and orientation tracking errors. In both figures, enumerated timestamps indicate the instants during the experiment in which a transition occurs (e.g., an additional payload is added to the bar, the system goes to a halt).
Analyzing such figures, one can see that the control system here proposed is able to handle the disturbances corresponding to the load oscillations and the load fluctuations due to the uneven addition of extra loads at the extremities of the bar being transported. As exhibited in Figure 13, the position tracking errors are around the expected performance after stabilization. The timestamps 1 and 2 indicate the time instants where the 180 g and 240 g additional payloads were inserted, respectively. It is important to notice the  quick response of the proposed system during these instants, where an increase in the tracking error can be easily noticed in Figure 13, which is quickly damped by the control action. Moreover, these instants are critical not only due to the need for online adaptation of the thrust of the vehicles, but also due to the external disturbances caused by the operator manipulation of the aluminum bar payload to attach the additional weight. These external perturbations cause oscillations and swings of the payload, as well as moments in which the payload exerts less force on the vehicles because the bar is held by the operator.
A 3D view of the path followed by the vehicles and the load is shown in Figure 14, in which one can check the performance of the whole system in the task accomplishment.
Another important time interval to be checked in this experiment is the acceleration phase from rest to the timestamp 1 , where we decided not to use a smooth increase in the desired trajectory frequency, which induce oscillations due to three initial conditions: (i) as pointed in Figure 14, the payload starting point is not on the trajectory to be tracked, making initialq big; (ii) as one can see in the video, the payload lifting and transportation modes occur simultaneously; and (iii) the desired acceleration in theŷ w direction depends on cos(t), thus starting at its maximum value. Despite these adverse initial conditions, one can check that the oscillations are quickly damped and the transportation becomes smooth in just a few seconds.
Finally, in the timestamp 3 , the trajectory tracking is halted by the operator, and a positioning task is commanded, with desired state for the payload x bar,des = [0 0 0.6] m. As discussed through this manuscript, this discontinuity induces oscillations on the payload and should be avoided. However, here it is was introduced with the purpose of performance analysis. As shown in Figure 12, the proposed algorithms can counteract the disturbances and accomplish the positioning task. As a result, the same system here proposed to track a trajectory can be used to perform positioning tasks, which only demands to define constant values of the variables corresponding to the desired formation position and shape.
Despite the recommendations on Subsection V-A of using smooth desired trajectories with initial and final accelerations equal to zero and transportation under constant velocities, the experiments presented in Subsection VII-E did not follow any of these restrictions, showing the good performance of the proposed approach even when these ideal situations are not completely fulfilled.

F. RESULTS OVERVIEW
To highlight the results of our proposal in contrast with the related works presented in Section I-A, we build a comparative board that compiles the most important features, in our opinion, for load transportation with quadrotors. Further, due to the dynamic complexity of transporting payloads using quadrotors, it is difficult to provide a reliable simulation for this task, which leads us to only compare works whose algorithms were tested in experimental trials. The comparative board thus generated is shown in Table 1.
As one can see in Table 1, the results presented in this paper bring advantages and drawbacks compared to the most recent works on the subject of load transportation using quadrotors. As main advantages, our proposal manipulate and transport the payload in velocities and accelerations far from quasistatic motion, which is important considering real-world applications. In addition, we also consider heavier payloads than the rest of the compared works. Another advantage is the simplicity of implementation and the ability to suppress drag-related uncertainties (like wind). As a drawback, since we do not use measurements from the payload, our proposal lacks precision in comparison with some of the other works. In our approach, the payload is attached to the vehicles by the flexible cables, so that it is only restricted to be near of the vehicles during transportation. Aiming at getting an approach that is safe and readily applicable to off-the-shelf quadrotors, we gave more emphasis to simplicity over precision. Another important drawback is the lack of outdoor tests, which is our main objective for future works.

VIII. CONCLUDING REMARKS
The control system here proposed deals with a formation of two quadrotors transporting a rod-shaped load. Adverse conditions for the transporting were tested in real experiments, and the system presented good performance in all of them. In most of these tests, we compared our control paradigm with the PID controller, an industrial standard, and the results demonstrated the superiority of our approach. As a result, we claim that the proposed control system is able to guide the formation in the accomplishment of trajectory tracking tasks, positioning, and load-orientation tasks when transporting a rod-shaped payload.
As future works, we plan to completely get rid of the motion capture system, moving one step further towards a system applicable to real-world scenarios. Solutions for an increased number of vehicles are also being pursued, aiming at the possibility of transporting heavier payloads.

ACKNOWLEDGMENT
The authors would like to thank the Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq), an agency of the Brazilian Ministry of Science, Technology, Innovations and Communications that supports scientific and technological development, as well as the Fundação de Amparo à Pesquisa e Inovação do Espírito Santo (FAPES), an agency of the State of Espírito Santo, Brazil, that supports scientific and technological development-for financing this project. They would all like to thank João Vasconcelos, Vinicius Pacheco Bacheti, and Alexandre Caldeira for their helpful assistance in setting up the ROS system and during the experiments run. Finally, they are grateful to the Laboratory of Intelligent Automation (LAI), Federal University of Espirito Santo and the Federal University of Viçosa (NERO-Robotics Specialization Center). Daniel Villa would like to thank the Fundação Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES), an agency of the Brazilian Ministry of Education that supports human resources perfection, for the scholarship that allowed him to develop his Ph.D. studies, in where this work is inserted, and Dr. Brandão would also like to thank the Fundação de Amparo à Pesquisa de Minas Gerais (FAPEMIG) for supporting his participation in this work.