Avoiding obstacles in cooperative load transportation

Avoiding obstacles in cooperative load transportation

Accepted Manuscript Avoiding obstacles in cooperative load transportation Igor Henrique Beloti Pizetta, Alexandre Santos Brandão, Mário Sarcinelli-Fil...

2MB Sizes 0 Downloads 80 Views

Accepted Manuscript Avoiding obstacles in cooperative load transportation Igor Henrique Beloti Pizetta, Alexandre Santos Brandão, Mário Sarcinelli-Filho

PII: DOI: Reference:

S0019-0578(19)30030-8 https://doi.org/10.1016/j.isatra.2019.01.019 ISATRA 3067

To appear in:

ISA Transactions

Received date : 13 April 2018 Revised date : 27 July 2018 Accepted date : 17 January 2019 Please cite this article as: I.H.B. Pizetta, A.S. Brandão and M. Sarcinelli-Filho, Avoiding obstacles in cooperative load transportation. ISA Transactions (2019), https://doi.org/10.1016/j.isatra.2019.01.019 This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

*Title page showing Author Details

Avoiding Obstacles in Cooperative Load Transportation Submission to ISA Transactions

Authors: Igor Henrique Beloti Pizetta* *Corresponding Author;  Ph.D. student at Federal University of Espírito Santo o In the Department of Electrical Engineering.  Professor at Federal Institute of Espírito Santo o In the Campus of Aracruz  Email: [email protected]  Email: [email protected] Alexandre Santos Brandão  Professor at Federal University of Viçosa o In the Department of Electrical Engineering  Email: [email protected] Mário Sarcinelli-Filho  Senior Professor at Federal University of Espírito Santo o In the Department of Electrical Engineering  Email: [email protected] Federal University of Espírito Santo - Av. Fernando Ferrari, 514 - Goiabeiras, Vitória - ES, 29075-910

Federal University of Viçosa - Avenida Peter Henry Rolfs, s/n - Campus Universitário, Viçosa - MG, 36570-900

Federal University of Espírito Santo, Campus Aracruz - Av. Morobá, 248 - Morobá, Aracruz - ES, Brasil. Cep: 29192-733 - Conj. Moroba, Aracruz - ES, 29192-721

*Highlights (for review)

    

Cooperative navigation of two UAVs with a payload connected by elastic cables. Load modeled as a disturbance, whose forces are transmitted to the vehicles by the cables traction. Repulsion field created to keep the vehicles apart and maintain the formation. Euler-Lagrange model with a non-linear control strategy based on feedback linearization Potential fields used to avoid obstacles in the environment.

*Blinded Manuscript - without Author Details Click here to view linked References

Avoiding Obstacles in Cooperative Load Transportation

Abstract This work deals with load transportation by quadrotors, when the load is attached to the vehicles through flexible cables. More specifically, two quadrotors are used to carry a single load, which is attached to both vehicles, through such kind of cables. The idea of using two quadrotors working cooperatively to carry the load is adopted to suppress any load oscillation in the direction of movement, what would happen if just one UAV were used. As a consequence of using two UAVs (or more than two) it can happen collisions between the vehicles when carrying the load, caused by the forces the load exert on the two vehicles, whose tendency is to bring the vehicles closer one to the other when they accelerate forward. The paper proposes a strategy to avoid such collisions and any collision with obstacles eventually present in the working space as well. Simulated results are shown and discussed, using two AR.Droner 2.0 quadrotor to carry the load, which validate the proposed strategy. Keywords: Cooperative load transportation, Cable-suspended load transportation, Nonlinear control, UAV control 2010 MSC: 00-01, 99-00

1. Introduction Unmanned aerial vehicles (UAVs) have attracted meaningful attention over the last years, specially in the case of rotorcraft vehicles, such as the multicopters. Either for commercial or research purposes, they have proven to be use5

ful in many applications, ranging from public safety [1], management of natural hazards [2], and intervention in hostile environments [3] to load transportation [4]. Their use in such applications is much likely due to its three-dimensional

Preprint submitted to ISA Transactions

July 27, 2018

mobility: they are skillful to take off, land and change their orientation without any lateral movement, for instance. Moreover, once they are stabilized in 10

the air they can also receive movement commands to move forward/backward or to move to the left/right, or to make combinations of such movements and rotational movements. Shortening, they are quite flexible in terms of navigation capabilities. A quadrotor UAV has four propellers and six degrees of freedom (DOF), so

15

that they are a type of vehicle known as an underactuated vehicle. This imposes that a reliable model and a reliable controller are hard to achieve, because of so many DOF. Thus, many efforts have been made to generate suitable models and to design suitable controllers to guide these vehicles, such as in [5], where a robust controller guarantees the asymptotic stability under a Newton-Euler

20

model, in [6], where adaptive sliding mode control is used, or in [7], where a backstepping control is used to adjust the attitude under partial loss of rotational speed, to mention a few examples. All these works deal with some level of parameter uncertainties, and show just simulation results to demonstrate the effectiveness of the proposed method.

25

Specifically regarding quadrotors, their flight and hover capabilities made them an interesting platform for load transportation, which can be carried out bringing the load within the vehicle body, using grasps, such as in [8] and in [9], where a team of UAVs pick and transport objects using a rigid coupling of the load being transported and the vehicles. As a downside effect, this technique

30

causes an increase in the moment of inertia, slowing the attitude response and preventing the vehicle of performing more aggressive maneuvers [10]. Another problem to deal with when transporting a load fixed to the vehicle is a shift in the center of mass of the vehicle-load body, once the load will always be attached in a different way [11].

35

The use of cables to carry the load away from the vehicle body, another frequently adopted strategy, can solve the problem of dynamic response, but increases the number of non-actuated degrees of freedom, due to the load swinging motion. Despite that, this method is more interesting once it makes easier to 2

pick and deliver the load, the vehicle does not need to land to deliver a payload 40

and it is easier to share the load with more vehicles, allowing cooperative load transportation. The main challenge is the design of controllers to stabilize the load oscillations during a flight task, keeping the whole system stable. In [12] the Lagrangian equations are used together with the Interconnection and Damping Assignment Passivity-Based Control strategy, that includes a to-

45

tal energy shaping, resulting in fast positioning of the payload with minimum swing. The same model principle is used in [13] but the load swing is reduced using an H∞ controller, considering both actuated and non-actuated DOF of the system. In [14] the model is based on Newton-Euler equations, and a backstepping controller is used to safely guide the UAV while suppressing the load

50

effects. The trajectory is generated considering the UAV constraints, creating a smoother and feasible trajectory. By its turn, [15] uses a geometric controller to achieve relative payload angles of up to 50 degrees. Motion cameras are used to estimate the load state relative to the vehicle. An interesting approach is presented in [16], where attention is given to the

55

load lift. In this moment, the UAV suffers a considerable nonlinearity, with the cable state changing from slack to taut. A nonlinear geometric control is used to achieve local stability, as in [17]. However, in this case the cable is modelled as a set of serial-connected rigid links with mass, an approximation of a flexible cable. The controller stabilizes the quadrotor and align the links and cable in

60

the vertical position, below the vehicle (the neutral position). In [18] an application is developed in which an autonomous miniature helicopter is used for aerial transportation and deployment in search and rescue missions. The authors also presents a multi-UAV system composed by three small-sized helicopters and a heavy payload, which cannot be carried by a sin-

65

gle vehicle. Torque and force sensors are used in the cables to feedback the control loop. Actually, the use of multiple UAVs can not only improve a task performance, but also overcome individual limitations as low payload capacity and also bound load oscillations in load transportation tasks. However, it increases the system 3

70

complexity, once the vehicles must fly coordinately, once they are physically attached, and each vehicle can not get too close to each other, to avoid a collision. An iterative LQR is used to control two UAV with a pointmass load in [19], while [20] uses a passivity-based control for a team of three UAVs, as examples of strategies for such an application. In [21] a team of UAVs carry a rigid body

75

to achieve static equilibrium with desired attitude while in [22] flexible cables are used and a geometric controller guides the system and achieve stability, aligning all the cables in the vertical position. The same controller is used in [23] to stabilize the rigid body and guide the system through trajectory tracking tasks. A rigid body is transported by grasps in [24, 25].

80

Motivated by the aforementioned considerations and the results demonstrated in [26, 27], this work proposes a cooperative navigation of two UAVs with a payload connected by elastic cables. The swing motion of the load is restricted in the longitudinal plane due to traction force of the cables connecting the load to each UAV. The Euler-Lagrange equations are used to obtain

85

the model in the three-dimensional space, and a non-linear control strategy based on feedback linearization is used to guide both UAVs in accomplishing trajectory tracking tasks, rejecting the load swing and avoiding obstacles. The main contribution of the paper is to present the nonlinear dynamic model of the system composed of two UAVs in formation with a payload mass connected

90

to them by cables, which are considered as elastic cables whose traction force is used to reject the disturbances created by the load. Also, it is proposed to create a repulsion field as a solution to keep the vehicles apart, maintaining the formation and avoiding any collision between the two vehicles (without such a repulsion field the forces exerted by the cargo would cause the collision of

95

the vehicles). A similar repulsion field is also adopted to avoid collision with obstacles in the environment. A nonlinear feedback linearization controller is responsible to reject the load disturbances while guiding the whole system to accomplish tasks in the three-dimensional space. To give details about such development, the paper is hereinafter split in

100

the following sections: Section 2 presents an overview of the aircraft model 4

with the suspended mass, considering the effects of the cargo, emphasizing the control variables and the degrees of freedom available for control. Following, in Section 3 the UAV model is represented in the underactuated format and a partial feedback linearization controller is designed to guide it. In the sequel, 105

the disturbance is modeled considering the stretching effect of the cables and the fictitious repulsion forces between the UAVs. In Section 4 some simulated results and their discussion are presented, in order to validate our proposal, considering positioning and trajectory-tracking tasks. Finally, Section 5 highlights the main conclusions of the work.

110

2. Dynamic Model In order to introduce the system modelling, the attitude of the bodies in h iT the generalized coordinate space, q = ξi ηi µ , according to the inertial

reference system hei, is defined, where i corresponds to the i-th vehicle and 115

the subscript c indicates a variable related to the load (see Figure 1). By its h iT turn, e ξ = x y z ∈ R3 corresponds to longitudinal, lateral and normal

displacements. As for the pitch, roll and yaw angles, they are represented by h iT η = φ θ ψ ∈ R3 , respectively, related to the spatial reference system hsi

whose origin is in the center of mass of each vehicle, whereas the load lateral oscillation angle is µ = [α] ∈ R, related to the load spatial reference system 120

hdi. Figure 1 also shows the angles β1 and β2 , which are formed by the normal axis centered in the load center and the cables, but can be related to the other variables, as well as the load spatial coordinates. In this work, the modeling is based on an AR.Drone quadrotor, from Parrot Inc [28]. An important characteristic is the layout of its four motors, which

125

are not aligned with the b x and b y axes, but turned 45o around the axis b z. As practical effect, the movements must be done by a combined action of all engines. In order to move forward, for example, the vehicles should increase forces f1 and f4 and decrease f2 and f3 . Therefore, there are four propulsion forces fi , i = 1, ..., 4 representing each engine. In this type of vehicle, two

5

b s 2 2

zz

f f

b

2 2

b

2 3

f

f2

ys2 y2 f22

f3

2 4 b

s

(x2,y2,z2)

α

z1 s z 1 b

(x1,y1,z1)

zl s y l b s zl yl

e

b

x1

x1

m1g

l1 b

y1 f 1 1

1

s

β1

l2

y1

s

1

f4

x2 x2

β2

m2g

1

α

s b l l

z

xx

(xc,yc,zc) e

mcg

y e

x

Figure 1: Reference system with forces acting on the vehicle.

130

propellers turn in one direction (f1 , f3 ) and the other two (f2 , f4 ) turn in the opposite direction. Changing the force generated by each of these pairs the vehicle produces the yaw movement. To follow with the cooperative system modelling, some assumptions should be made. They are:

135

• the cable is massless; • although the cable is rigid, i.e. not bend, it is considered elastic, that is, it can increase its length; • when the load is on the ground, there is no effect on the vehicles, once the cable is slack.

140

• the load yaw angle is defined by the line connecting the two drones; • aerodynamic effects on the load and vehicle are negligible. Thus, the total energy of the system formed by two quadrotors and a single load in the reference coordinate system hei can be expressed by the Lagrangian L, where

L = K − U. 6

(1)

145

To obtain the Lagrangian of the set of two quadrotors and the load, one should find the kinetic energy K, that can be split into translational and rotational ones [29]. It is given by UAV

Load

z }| { z }| { 1 ˙T ˙ 1 T 1 ˙T ˙ 1 T K = mξi ξi + Ωi JΩi + mξc ξc + Ωc Jc Ωc |2 {z } |2 {z } |2 {z } |2 {z } KT

KRot

KT

(2)

KRot

where KT indicates the translational energy and KRot the rotational energy. In (2) J ∈ R3×3 is the matrix of moments of  I I  xx xy  J = Iyx Iyy  Izx Izy

inertia, given by  Ixz   Iyz  ,  Izz

where Ixy = Iyx , Ixz = Izx and Iyz = Izy for a symmetric shape. Ω represents the angular velocity given in the hbi frame, whose representation in generalized coordinates is given by

 1   Ω = Wη η˙ = 0  0

0 cφ −sφ

  φ˙     ˙ sφ cθ   θ  .   ψ˙ cφ cθ −sθ

(3)

Nonetheless, the potential energy U is given by

U = m1 gz1 + m2 gz2 + mc gzc .

(4)

The Lagrangian function L is subject to the Euler-Lagrange constraint   d ∂L ∂L − = bu. (5) dt ∂ q˙ ∂q Entering 2 and 4 in 5, the high level model, in the inertial reference system, is given by

˙ q˙ + F(q) ˙ + G(q) = bu + D, M(q)¨ q + C(q, q) 150

(6)

˙ where q is the generalized coordinate vector, M(q) the inertia matrix, C(q, q) ˙ the Friction Forces, D the denotes the Coriolis and centrifugal matrix, F(q) disturbances vector and u the input control signals. 7

2.1. The load as a modelled disturbance If a unique UAV is capable to elevate the cargo and move it as a load sus155

pended by a cable, the dynamic system behaves as an underactuated pendulum. In contrast, if multiple UAVs are moving a load suspended by cables, one for each vehicle, the cable traction force causes disturbances on both vehicles. In order to simplify the model, the control objective, besides stabilizing the vehicles during flight missions, now also includes to compensate for the load

160

gravitational force mc g and the load oscillations. Taking this into account and considering that the cables transmit the forces generated by the payload to both vehicles according to the cable angles β1 and β2 , the load dynamics can be described by mc Iξ¨c + Gc = Bc Γ, iT h where I ∈ R3 is the identity matrix, Γ = T1 T2 and

165

  sin β1 cos α sin β2 cos α     Bc =  sin β1 sin α sin β2 sin α  .   cos β1 cos β2

(7)

(8)

During a take-off maneuver, the cargo is placed on the ground, at the same altitude of the UAVs, and the two cables connecting them are not stressed. Thus the cargo displacement cannot be described by 7, once the distance UAVcargo is lower than the cable lengths l1 and l2 , and the tension is equal to zero (assuming the premise of a massless cables). Otherwise, the tension is calculated

170

with the forces generated by each vehicle and the load mass, aiming at reaching the equilibrium. These disturbances can be split into three components, one for each axis. The decomposition of the traction forces with respect to the angles β1 and β2 , results in the forces acting on each axis. The vertical component is the effect

175

of the load weight, while the longitudinal one is the pulling/pushing force, that attracts the vehicles to a position just above the load (see Figure 2). The angle

8

l

l

z

2

β2

l

1

β1 T1

T2

l

x

(xc,yc,zc)

mcg b1

f3,21

b1

z

s1

z

f3,21

f4,11 b1

e

z

z

f4,11 b1

(x1,y1,z1)

x l

l

2

β2

x

θ1 s1

x

lcosβ1

z

lcosβ2

l

s1

x

θ1 s1

(x2,y2,z2)

z

1

β1

l

x

lsinβ2

(xc,zc)

lsinβ1 mcg

e

x

Figure 2: Repulsion forces adopted to prevent collisions involving the two UAVs.

α, which generates lateral movement is the result of the load dynamics, that behaves as an underactuated pendulum with two traction forces acting on it, one for each vehicle. If α → 0, the vehicles and load are aligned, i.e. coplanar, 180

which means that there is a plane containing the three bodies in the threedimensional space. If β → 0, the distance between the UAVs will tend to zero, or will be zero, an impossible state due to the system configuration. 2.2. The Fictitious Repulsion Force among UAVs To avoid a situation where the vehicles get too close one to the other, a

185

repulsion force is introduced, to guarantee that the two quadrotors will keep a safe distance one from the other. Indeed, if both quadrotors move rightward, for instance, the left UAV reacts faster, because there is a pushing force acting on it. As for the right one, it suffers the action of a pulling force, making it to slow down its velocity. Therefore, they can collide during the task accomplishment,

190

due to these different velocities. However, such a situation can be prevented by introducing a fictitious repulsion force acting over both UAVs, as illustrated in

9

Figure 3. Such a repulsion force does not compromise the development of the flight mission and has no non-linearities. Moreover, one can observe that the closer the UAVs are, the higher the repulsion force will be. Notice that such a 195

repulsion force compares with the repulsion generated when two magnets of the same polarity are put close one to the other. This fictitious repulsion force is here defined by fri = (fmax − fmin)

dmax − d + fmin , dmax − dmin

(9)

where fmax and fmin establish the maximum and minimum repulsion force, when the UAVs are distant dmin and dmax one from the other. Thus d = kξ1∗ − ξ2∗ ||,

where ξ ∗ = [x y]T . 200

It is also important to mention that if d > dmax , then fri = fmin, and it implies that the UAVs are far enough one from the other. In addition, if d < dmin , then fri = fmax , which represents a critical flight situation (possibility of collision), being fmax a force big enough to prevent the movement of the vehicles.

fr2

e

z

β2 β1

fr1

e

x

Figure 3: Repulsion forces adopted to prevent collisions involving the two UAVs.

10

205

2.3. Stretching Effect In the other way, if the vehicles fly in opposite directions, at one point the traction force will be big enough to hold then still, since there are limitations in the cable sizes l1 and l2 . Also, if one considers that the UAVs are just hovering, he/she can conclude that T1x + T2x = 0 and T1z + T2z − mc g = 0.

210

However, if both UAVs move upward simultaneously, the cables experience an increasing force due to the load inertia and the increasing system acceleration. To consider the effect of these situations it is introduced the cable stretching effect, illustrated in Figure 4. b1

f

1 3,2

z

s1

z

f4,11 b1

x

θ1

s1

l

x

1

β1

T’x

e

z

T’

Δl T’z+mg

e

x

Figure 4: The stretching effect caused by additional tension in the cable, taking one cable as reference for the illustration.

After presenting these consideration, the stretching effect component is added 215

in (7), yielding to

11

Bc Γ = =

mc Iξ¨c + Gc + Ei , if kξi − ξc k ≥ l1 , , 0, otherwise.

where E = [T∆1 T∆2 ]T and T∆i represents the stretching effect, based on Hook’s Law, given by T∆i = αi1 ∆l + αi2

d ∆l, with αij ≥ 0. dt

(10)

Notice that ∆l = kξi − qc k − li and that T∆i induces a damped traction reaction in the system. 2.4. Under-actuated Model Knowing that the quadrotor is an underactuated system [30, 31], i.e., there 220

are more state variables to control than control inputs, some variables can be considered as active (or directly actuated), whereas the others are passive (or nonactuated). When regarding such a characterization, one gets the groups h iT h iT qa = z φ θ ψ and x y for the quadrotors, where the subscripts a and p refers to the active and the passive variables, respectively.

225

Now, representing (6) in the subactuated form, one gets          0 G D q ¨ Mpp Mpa   p +  p +  p =   .  Ga F Da q ¨a Map Maa

(11)

For a more complete model description the reader should see [32]. Here, the emphasis will be given to the disturbance matrix, that is the sum of all effects and forces acting on the quadrotors, which the controller should reject in order to safely guide both quadrotors to accomplish the load transportation. From (6) one has the disturbance vector Di , which can be modelled in order

230

to be applied in the control law (16). In our case, it is given by 

Ti sin β1 cos α + frix



    Di =  Ti sin β1 sin α + friy  .   Ti cos β1 + Ti cos βi + mc g 12

Notice that fr1 = −fr2 , i.e., the repulsion forces are applied in opposite directions for each vehicle. Therefore, one can check that the proposed controller is designed to guide a UAV even in the presence of disturbances, which are here modeled by the UAVs235

cargo cable tensions and the fictitious repulsion forces acting on the UAVs.

3. Control Strategies Considering the system model in (11), one can divide it into active variables, i.e., the ones associated to control inputs, or ¨ a + Da + Ga = F ∈ R4 , ¨ p + Maa q Map q

(12)

and passive variables, or ¨ a + Dp + Gp = 0p ∈ R2 , ¨ p + Mpa q Mpp q

(13)

which represents the strong coupling between the directly and indirectly actuated degrees of freedom. ¨ p in (13), it results in Isolating q −1 ¨ a − M−1 ¨ p = Mpp q Mpa q pp Ep . 240

(14)

Replacing (14) in (12) one gets F = =

¨ a + Ea , ¨ a + Ep ) + Maa q −Map M−1 pp (Mpa q

(15)

−1 ¨ a + Ea − Map M−1 Maa − Map Mpp Mpa q pp Ep , {z } {z } | | ¯ aa M

¯a E

where Ea = Da + Ga and Ep = Dp + Gp .

Now, applying partial feedback linearization we can propose a control law given by ¯ aa ηa + E ¯ a, F=M

(16)

˜ a ), with Kai ∈ R4 being ˜˙ a ) + Ka3 tanh(Ka4 q ¨ ad + Ka1 tanh(Ka2 q where ηa = q positive definite gain matrices. 13

Therefore, the closed-loop equation is given by ¨˜ a + Ka1 tanh(Ka2 q ˜ a ) = 0, ˜˙ a ) + Ka3 tanh(Ka4 q q ˜ and q ˜˙ → 0 when t → ∞, since, which guarantees that q

245

φd

=

θd

=

(ηx sin ψh − ηy cos ψh ) cos θh , ηz + g (ηx cos ψh + ηy cos ψh ) arctan . ηz + g arctan

(17) (18)

The complete demonstration of the system stability in the sense of Laypunov can be found in [30]. 3.1. Obstacle avoidance As a step further to real applications, an obstacle avoidance technique should be adopted. As well as the rejection field amongst the UAVs used to keep them

250

apart, potential fields are used to avoid collisions with obstacles present in the navigation space. It is important to emphasize that in many load-carrying tasks the final destination is more important than the trajectory itself. An example is the delivery of first-aid kits to victims in disasters. Thus, the more suitable control scheme is a positioning control, which should include an obstacle

255

deviation module to attend the demand. Using a potential field, similar to the rejection field, but this time between each UAV and an obstacle in the environment, the applied force will be a result of the potential field of all objects in a predetermined distance from each UAV. The closer the objects get, the stronger such a field becomes. As a result, two obstacles too close one to the

260

other will prevent the UAVs of flying through: they will contour the obstacles in order to guarantee the flight safety, as illustrated in Figure 5. The superposition of all fields creates a potential map in which some areas are not accessible for the UAV, due to the stronger force, meaning that it can not fly through such areas. However, an advantage of such approach is that the

265

UAV does not need to know this entire map, or to know where all the obstacles

14

Figure 5: An illustration of the obstacle avoidance using potential field, considering an object impossible to fly over.

are. The vehicle will trace the route as it approaches the obstacles, dealing only with the nearest ones. This fictitious force is here defined by    dmax ||d∗i || ≥ dmax    d∗ ji Fri = κ ∗ (dmax − d∗i ) dmax ≤ x ≤ dmin  d  i    f ||d∗i || ≤ dmin max

(19)

where dmax and dmin establish the maximum and minimum distances, characterizing an area around the object inside which the repulsion force will act. In 270

such definition κ is a force constant, whereas d∗i is the distance between the UAV and the i-th obstacle. As for the distance d∗i , it is given by d∗i = ξi − ξ ∗ ,

where ξ ∗ = [x y]. Finally, the subscript j in d∗ji indicates the axis referred to, which can be x or y (the distance in the z axis is not considered to generate the repulsion field, because the UAVs can not fly over these obstacles).

275

4. Numerical Experiments To validate the effectiveness of the proposed control strategies for the cooperative load-carrying system, simulations have been carried out using the 15

AuRoRA Platform [33], configured for using the icon and the dynamic model of the Parrot AR.Drone quadrotor. As such a platform was developed by the same 280

authors of this manuscript, it was easy to change the source code for taking into account the equations describing the model of the load-carrying system defined in Section 2 and the icons correspondent to the UAVs. The model parameters correspondent to the AR.Drone are those shown in Table 1. Notice that the model of the Ar.Drone and the AuRoRA Platform have already been validated

285

in [30] and [31]. m = 0.380 [kg]

mc = 0.100 [kg]

k1 = 0.1782 [m]

l1 = 1.0 [m]

k2 = 0.0290 [N · m · s2 ]

l2 = 1.0 [m]

Iyy = 18.57 × 10−3 [kg · m2 ]

Ixz = 0.00 [kg · m2 ]

Ixx = 9.57 × 10−3 [kg · m2 ]

Ixy = 0.00 [kg · m2 ]

Izz = 25.55 × 10−3 [kg · m2 ]

Iyz = 0.00 [kg · m2 ]

kdφ = kdθ = 1.0 [V /rad]

kpφ = kpθ = 1.0 [V s/rad]

kdz = 0.01 [V /m]

kpz = 1.0 [V s/m]

Cf = 1.1429 × 10−9 [N · s2 ]

Ct = 3.2 × 10−11 [N · m · s2 ]

θmax = 25 [o ]

φmax = 25 [o ]

Table 1: Parameter values for the Parrot AR.Drone quadrotor.

The first simulation aims at demonstrating the necessity of the rejection field amongst the UAVs to prevent collisions during a flight. Following, a flight task with one obstacle is simulated, to show the obstacle avoidance technique using a potential field. Finally, a third simulation is presented, in which more than 290

one obstacle is considered, with a more complicated trajectory. A video of the simulations can be viewed at the link https://youtu.be/AujI9kmP8gI. In all cases, the vehicle takes of, hover for a few seconds and then start its movement to the desired location.

16

4.1. Rejection Field 295

In order to demonstrate the effectiveness of the rejection field, two flights are simulated, the first one with the rejection field disabled and the second one with it enabled, just to make clear its importance. First, both vehicles take off and hover for a few seconds, before moving in the x axis. The result is in 6, where for the upper graph the rejection field is disabled and for the bottom one

300

it is enabled. Notice that there is no plot for the z axis, once the main effect of the rejection field is in the x axis. Two moments are highlighted in the figure, and are when the rejection field makes the most difference and when the vehicles get too close. The time interval marked as A corresponds to the moment in which the load leaves the ground,

305

causing a transient response absorbed by the system. As for the time interval marked as B, which corresponds to a moment in where the UAVs are moving forward, the distance between the UAVs is less then 0.25m, i.e., a collision is imminent. It is worth remembering that the modelling is based in the ArDrone 2.0, that has a total length about 0, 5m. Thus, the rejection field is required along the entire flight, to avoid any risk of collision, so that it is enabled as soon as the UAVs take off, remaining enabled during the entire flight. 3

A

x [m]

2

B

1 ~0.25m

0 -1 0

5

10

15

20

25

30

35

40

45

3 2

x [m]

310

1 UAV UAV

0

1 2

Load

-1 0

5

10

15

20

25

30

35

40

45

time [s]

Figure 6: The result with the rejection field disabled (top) and enabled (bottom), making clear the necessity of the rejection field to avoid collisions between the vehicles.

17

4.2. Obstacle Avoidance

2 1.5

z [m]

1 0.5 0 2

1 8 7

0

6 5

y [m]

4

-1

3 2

x [m]

1 -2

0 -1

Figure 7: Environment with a single obstacle in the middle of the trajectory and the path traveled by the drones.

Dealing with load transportation, the controller should be able to damp load oscillations. Also, it is important to prevent large-magnitude oscillations. Due 315

to the load dynamics, changes in acceleration and velocity of the vehicles, i.e., abrupt maneuvers, induce oscillations in the load (the more abrupt a maneuver is, the bigger is the load oscillation it causes. Thus, the strategy is to have a controller and techniques that avoid such movements. Dealing with obstacle avoidance, speciality when there is no information on where the obstacle

320

is, this plan can be a difficult one. Then, the potential field strength should grow smoothly as the vehicles approaches an obstacle, thus avoiding sudden movements, as a full stop or large changes in the direction of movement. Figures 7 and 10 synthesize the result of a flight with just one obstacle in the flying environment. The environment is depicted in 7, where one can

325

see the obstacle in the middle of the trajectory being tracked by the vehicles when carrying the load. In the beginning, they take off and stay hovering for a few seconds. At about second 17, they do a multiple task, achieve 2 meters of altitude and move in the x direction. Notice that, in 8, differently from 6, the vehicles maintain the same distance one from the other and from the

18

330

load. In Figure 9, the angle θ varies to change the y position of the vehicles. The oscillations in the angles φ at the beginning corresponds to the load being lifted, what corresponds to a disturbance for the vehicles, and takes a while to stabilize. After this part of the flight ends these angles are opposite to maintain a hover state. The force of each propeller is in 10, which can be used to verify the capability of the controller to reject the disturbances created by the load and the effectiveness of the rejection fields. 10

x [m]

5 0 -5 0

10

20

30

40

50

60

0

10

20

30

40

50

60

y [m]

2

1

0

z [m]

2 UAV

1

UAV

1 2

Load

0 0

10

20

30

40

50

60

50

60

time [s]

Figure 8: Spatial variables of the UAVs and load.

[degrees]

10

5

0

-5 0

10

20

30

40

4

[degrees]

335

2 0 UAV 1

-2

UAV

2

-4 0

10

20

30

40

50

time [s]

Figure 9: Angular response when avoiding a single obstacle.

19

60

f 1 [N]

2 1.5 1 0

10

20

30

40

50

60

0

10

20

30

40

50

60

0

10

20

30

40

50

60

f 2 [N]

2 1.5 1

f 3 [N]

2 1.5 1

f 4 [N]

2 VANT

1.5

VANT

1 2

1 0

10

20

30

40

50

60

time [s]

Figure 10: Forces generated by the propellers.

4.3. Flight task The last simulation, whose results are synthesized in the figures from Figure 11 to Figure 13 considers a more complete task, in which the vehicles should fly 340

carrying the load in an environment with more than one obstacle (this situation resembles the delivery of first aid kits inside a forest, where the quadrotors could not fly upwards due to the tree tops, and should avoid the tree trunks till its destination). The environment, the obstacles and the path traveled by the vehicles are in Figure 11.

z [m]

2 1

0 3

15 2 1

10

x [m]

0

y [m]

-1

5 -2 -3

0

Figure 11: A three dimensional view of the environment crowded of obstacles and the path traveled by the drones.

345

The beginning of this flight is similar to the previous one. Throughout the 20

flight the vehicles change their position in order to avoid the obstacles. After they reach the desired position, at the time 70s (Figure 12), they decrease their height to 1m and the load are close to the ground but still above it, thus completing the delivery. In Figure 13 the angles that generates the movements are presented. Notice that there are some oscillations in the beginning and in the end of the flight, which are absorbed by the load-carrying system. x [m]

20 10 0 -10 0

10

20

30

40

50

60

70

80

90

0

10

20

30

40

50

60

70

80

90

1

y [m]

0.5 0 -0.5

z [m]

2 VANT

1

VANT

1 2

Carga

0 0

10

20

30

40

50

60

70

80

90

70

80

90

time [s]

Figure 12: Coordinate variables.

[degrees]

10

5

0

-5 0

10

20

30

40

50

60

4

[degrees]

350

2 0 VANT

-2

VANT

1 2

-4 0

10

20

30

40

50

60

70

80

90

time [s]

Figure 13: Angular response in the flight task with multiple obstacles.

In all scenarios the vehicles reached their destination keeping safe distances one from the other, and the controller rejected the load oscillations and avoided any obstacle while guiding the vehicles throughout the environment.

21

355

5. Conclusions The objective of this work is to transport the payload with minimum oscillation throughout an environment with obstacles the UAV cannot fly over. In order to accomplish that, a cooperative system is here proposed, in which two quadrotors carry a single load working in a cooperative way. The practical result

360

is the cancellation longitudinal oscillation of the load, associated to its dynamics. Therefore the longitudinal movement of the load is indirectly generated, being a consequence of the forward movement of the two vehicles, which keep a certain distance between themselves, for safety reasons and to allow keeping the load above the ground compensating the gravity. Another benefit is the

365

possibility of carrying heavier payloads, in comparison to a load transportation by just one vehicle. Then, as two quadrotors are flying close one to the other, it is mandatory to keep them apart to guarantee that no collision will occur. To do that it is used a rejection field associated to each vehicle, which resembles two magnets

370

with the same polarity getting close one to the other. The same approach is used to keep the system away from obstacles, with smooth movements to avoid dangerous load oscillations (in the side direction). The results here presented clearly show that it is possible to improve the system performance, with less oscillations and bigger load capacity, by adding one

375

more quadrotor to carry the load. An advantage of using three or more vehicles would be in terms of the stability of the load, which would have quite small oscillations in any direction, in such a case. However, aiming at an application like the delivery of first-aid kits, two UAVs with a cable-suspended load can pass through narrower spaces, compared with a formation with three or more

380

vehicles. Notice, finally, that the rejection field here proposed to avoid collisions between the UAVs and between them and any surrounding obstacle could also be adopted in the case of using more than two UAVs to carry a cable-suspended load, with a not so demanding adaptation. Potential future work includes practical algorithm implementation, avoid-

22

385

ance of moving obstacles using a larger and smoother rejection field around the object using a predictor to estimate its position at the time the vehicle is in its vicinity, thus avoiding contact and sudden manoeuvres, and the use of more than two vehicles to increase the payload capability.

Acknowledgement 390

The authors thank CNPq – Conselho Nacional de Desenvolvimento Cient´ıfico e Tecnol´ogico, an agency of the Brazilian Ministry of Science, Technology, Innovation and Communication to support scientific and technological development –, for the financial support to this work. They also thank the Federal Institute of Esp´ırito Santo, the Federal University of Vi¸cosa and the Federal University

395

of Esp´ırito Santo for supporting the development of this research.

References [1] K. Kanistras, G. Martins, M. J. Rutherford, K. P. Valavanis, Handbook of Unmanned Aerial Vehicles, Springer Netherlands, Dordrecht, 2015, Ch. Survey of Unmanned Aerial Vehicles (UAVs) for Traffic Monitoring, pp. 400

2643–2666. [2] C. Yuan, Z. Liu, Y. Zhang, Aerial images-based forest fire detection for firefighting using optical remote sensing techniques and unmanned aerial vehicles, Journal of Intelligent & Robotic Systems 88 (2-4) (2017) 635–654. doi:10.1007/s10846-016-0464-7.

405

[3] L. Merino, J. R. Mart´ınez-de Dios, A. Ollero, Handbook of Unmanned Aerial Vehicles, Springer Netherlands, Dordrecht, 2015, Ch. Cooperative Unmanned Aerial Systems for Fire Detection, Monitoring, and Extinguishing, pp. 2693–2722. [4] Y. Feng, C. A. Rabbath, C.-Y. Su, Handbook of Unmanned Aerial Vehicles,

410

Springer Netherlands, Dordrecht, 2015, Ch. Modeling of a Micro UAV with Slung Payload, pp. 1257–1272. doi:10.1007/978-90-481-9707-1\_108. 23

[5] Z. Xu, X. Nian, H. Wang, Y. Chen, Robust guaranteed cost tracking control of quadrotor uav with uncertainties, ISA Transactions 69 (2017) 157 – 165. doi:10.1016/j.isatra.2017.03.023. 415

[6] O. Mofid, S. Mobayen, Adaptive sliding mode control for finite-time stability of quad-rotor uavs with parametric uncertainties, ISA Transactions 72 (2018) 1 – 14. doi:10.1016/j.isatra.2017.11.010. [7] Z. Song, K. Sun, Adaptive compensation control for attitude adjustment of quad-rotor unmanned aerial vehicle, ISA Transactions 69 (2017) 242 –

420

255. doi:10.1016/j.isatra.2017.04.003. [8] G. Loianno, V. Spurny, J. Thomas, T. Baca, D. Thakur, D. Hert, R. Penicka, T. Krajnik, A. Zhou, A. Cho, M. Saska, V. Kumar, Localization, grasping, and transportation of magnetic objects by a team of mavs in challenging desert-like environments, IEEE Robotics and Automation

425

Letters 3 (3) (2018) 1576–1583. doi:10.1109/LRA.2018.2800121. [9] R. B¨ahnemann, D. Schindler, M. Kamel, R. Siegwart, J. Nieto, A decentralized multi-agent unmanned aerial system to search, pick up, and relocate objects, in:

2017 IEEE International Symposium on

Safety, Security and Rescue Robotics (SSRR), 2017, pp. 123–128. 430

doi:10.1109/SSRR.2017.8088150. [10] P. E. I. Pounds, D. R. Bersak, A. M. Dollar, Stability of smallscale uav helicopters and quadrotors with added payload mass under pid control,

Autonomous Robots 33 (1) (2012) 129–142.

doi:10.1007/s10514-012-9280-5. 435

[11] P. E. I. Pounds, D. R. Bersak, A. M. Dollar, Grasping from the air:

Hovering capture and load stability, in:

2011 IEEE Interna-

tional Conference on Robotics and Automation, 2011, pp. 2491–2498. doi:10.1109/ICRA.2011.5980314.

24

[12] M. E. Guerrero-S´anchez, D. A. Mercado-Ravell, R. Lozano, C. D. 440

Garc´ıa-Beltr´ an,

Swing-attenuation for a quadrotor transporting a

cable-suspended payload, ISA Transactions 68 (2017) 433 – 449. doi:10.1016/j.isatra.2017.01.027. [13] G. V. Raffo, M. M. de Almeida, Nonlinear robust control of a quadrotor uav for load transportation with swing improvement, in: 445

2016 American Control Conference (ACC), 2016,

pp. 3156–3162.

doi:10.1109/ACC.2016.7525403. [14] K. Klausen,

T. I. Fossen,

T. A. Johansen,

Nonlinear control

with swing damping of a multirotor uav with suspended load, Journal of Intelligent & Robotic Systems 88 (2) (2017) 379–394. 450

doi:10.1007/s10846-017-0509-6. [15] S. Tang, V. W¨ uest, V. Kumar, Aggressive flight with suspended payloads using vision-based control, IEEE Robotics and Automation Letters 3 (2) (2018) 1152–1159. doi:10.1109/LRA.2018.2793305. [16] P. J. Cruz, R. Fierro, Cable-suspended load lifting by a quadrotor uav: hy-

455

brid model, trajectory generation, and control, Autonomous Robots 41 (8) (2017) 1629–1643. doi:10.1007/s10514-017-9632-2. [17] F. A. Goodarzi, D. Lee, T. Lee, Geometric control of a quadrotor uav transporting a payload connected via flexible cable, International Journal of Control, Automation and Systems 13 (6) (2015) 1486–1498.

460

doi:10.1007/s12555-014-0304-0. [18] M. Bernard, K. Kondak, I. Maza, A. Ollero, Autonomous transportation and deployment with aerial robots for search and rescue missions, Journal of Field Robotics 28. doi:10.1002/rob.20401. [19] Y.

465

Alothman,

M.

Guo,

D.

Gu,

Using

iterative

lqr

trol two quadrotors transporting a cable-suspended load,

25

to

conIFAC-

PapersOnLine 50 (1) (2017) 4324 – 4329, 20th IFAC World Congress. doi:10.1016/j.ifacol.2017.08.861. [20] C. Meissen, K. Klausen, M. Arcak, T. I. Fossen, A. Packard, Passivitybased formation control for uavs with a suspended load, IFAC470

PapersOnLine 50 (1) (2017) 13150 – 13155, 20th IFAC World Congress. doi:10.1016/j.ifacol.2017.08.2169. [21] N. Michael, J. Fink, V. Kumar, Cooperative manipulation and transportation with aerial robots, Autonomous Robots 30 (1) (2011) 73–86. doi:10.1007/s10514-010-9205-0.

475

[22] F. Goodarzi, T. Lee, Stabilization of a rigid body payload with multiple cooperative quadrotors 138 (2016) 17. doi:10.1115/1.4033945. [23] T. Lee, Geometric control of quadrotor uavs transporting a cable-suspended rigid body, IEEE Transactions on Control Systems Technology 26 (1) (2018) 255–264. doi:10.1109/TCST.2017.2656060.

480

[24] D. Mellinger, M. Shomin, N. Michael, V. Kumar, Cooperative Grasping and Transport Using Multiple Quadrotors, Springer Berlin Heidelberg, Berlin, Heidelberg, 2013, pp. 545–558. doi:10.1007/978-3-642-32723-0_39. [25] G. Loianno, V. Kumar, Cooperative transportation using small quadrotors using monocular vision and inertial sensing, IEEE Robotics and Automa-

485

tion Letters 3 (2) (2018) 680–687. doi:10.1109/LRA.2017.2778018. [26] I. H. B. Pizetta, A. S. Brand˜ ao, M. Sarcinelli-Filho, Stability comparison for a suspended load by one and two uavs, in: 2017 Latin American Robotics Symposium (LARS) and 2017 Brazilian Symposium on Robotics (SBR), 2017, pp. 1–6. doi:10.1109/SBR-LARS-R.2017.8319464.

490

[27] I. H. B. Pizetta, A. S. Brand˜ ao, M. Sarcinelli-Filho, Cooperative quadrotors carrying a suspended load, in: 2016 International Conference on Unmanned Aircraft Systems (ICUAS), 2016, pp. 1049–1055. doi:10.1109/ICUAS.2016.7502605. 26

[28] I. H. B. Pizetta, A. S. Brand˜ ao, M. Sarcinelli-Filho, R. Carelli, High-level 495

flight controllers applied to helicopter navigation: A comparative study, in: 2012 Brazilian Robotics Symposium and Latin American Robotics Symposium, 2012, pp. 162–167. doi:10.1109/SBR-LARS.2012.33. [29] P. Castillo, R. Lozano, A. E. Dzul, Modelling and control of mini-flying machines, Springer-Verlag London, 2006. doi:10.1007/1-84628-179-2.

500

[30] A. S. Brand˜ ao, M. Sarcinelli-Filho, R. Carelli, High-level underactuated nonlinear control for rotorcraft machines, in:

2013 IEEE In-

ternational Conference on Mechatronics (ICM), 2013, pp. 279–285. doi:10.1109/ICMECH.2013.6518549. [31] A. S. Brand˜ ao, D. Gandolfo, M. Sarcinelli-Filho, R. Carelli, Pvtol ma505

neuvers guided by a high-level nonlinear controller applied to a rotorcraft machine, European Journal of Control 20 (4) (2014) 172 – 179. doi:10.1016/j.ejcon.2014.04.003. [32] I. H. B. Pizetta, A. S. Brand˜ ao, M. Sarcinelli-Filho, Modelling and control of a quadrotor carrying a suspended load, in: 2015 Workshop on Research,

510

Education and Development of Unmanned Aerial Systems (RED-UAS), 2015, pp. 249–257. doi:10.1109/RED-UAS.2015.7441014. [33] I. H. B. Pizetta, A. S. Brand˜ ao, M. Sarcinelli-Filho, A hardwarein-loop platform for rotary-wing unmanned aerial vehicles,

Jour-

nal of Intelligent and Robotic Systems 84 (1) (2016) 725–743. 515

doi:10.1007/s10846-016-0357-9.

27