Next Article in Journal
Towards UAVs in Construction: Advancements, Challenges, and Future Directions for Monitoring and Inspection
Previous Article in Journal
Carrier Aircraft Flight Controller Design by Synthesizing Preview and Nonlinear Control Laws
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Control Architecture for a Quadrotor Transporting a Cable-Suspended Load of Uncertain Mass

IDMEC, Instituto Superior Técnico, Universidade de Lisboa, Avenida Rovisco Pais, 1049-001 Lisbon, Portugal
*
Author to whom correspondence should be addressed.
Drones 2023, 7(3), 201; https://doi.org/10.3390/drones7030201
Submission received: 17 February 2023 / Revised: 7 March 2023 / Accepted: 9 March 2023 / Published: 15 March 2023

Abstract

:
This paper presents an architecture for controlling a quadrotor transporting a cable-suspended load of uncertain mass. A family of trajectories is proposed that is composed by three phases—lift-off, transit, and landing—and implemented as a hybrid system. The proposed control system uses an adaptive geometric controller with asymptotic tracking stability. The mass of the transported load was estimated using an adaptive mechanism, which adjusts the action resorting to a geometric control method. The resulting system was validated in simulation with a mid-flight mass reduction of the transported load, and tests were performed using a range of values of load mass and maximum forward velocity. There is work in the literature that approaches the cable-suspended component of the problem, and there are also papers focused on uncertainty in the model, mass included. This work aimed to solve these two problems simultaneously, having the uncertain component being the mass of the suspended load.

1. Introduction

The use of quadrotors for the transportation of loads has been a topic of recent interest. Both UPS [1] and Amazon [2] have projects to use drones for their deliveries. However, there is another field of load transportation that has scientific interest, namely the use of drones for transporting cable-suspended loads. The added complexity posed by the load not being attached to the quadrotor calls for more complex solutions. Furthermore, it is reasonable to assume that, in a real-world application, the mass of the load will not be known a priori. This poses an even more complex problem. An application where such a scenario is relevant is forest fire suppression using helicopters or multirotors. In this application, there is an aircraft that has a load that changes (by loading up water or dropping it). In an autonomous solution, the system would require an adequate trajectory to perform its task and would have to be capable of adjusting its control to ensure that it can handle the weight of the load. It is this specific scenario that is explored in this paper.
The topic of trajectory planning for quadrotors has been explored in works such as [3,4,5,6,7,8]. By formulating the trajectory generation problem as a quadratic program with an obstacle-free corridor, Reference [3] proposed a pipeline for path planning, trajectory generation, and optimization for quadrotor navigation through indoor environments. In [4], an adaptive nonlinear model predictive horizon method with deep reinforcement learning was presented. An algorithm was proposed in [5] to solve nonlinear optimal control problems in UAV path planning. This was achieved through approximating the non-convex parts of the problem by a series of sequential convex programming problems. In [6], a deep reinforcement learning method was proposed for UAV autonomous path planning. Additionally, a method for model explanation based on feature attribution was proposed to allow for easier interpretation of the behavior of the resulting path planner. The proposed method in [7] uses a mixture of potential and positioning risk fields to generate a hybrid directional flow to guide an unmanned vehicle in a safe and efficient path. In [8], model predictive control was used to reshape the trajectory of a group of quadrotors to prevent collisions.
The topic of control methods for quadrotors with cable-suspended loads has been tackled by other authors. A solution for trajectory generation and control based on the differentially flatness property of the system was presented in [9] with stability and convergence proofs. Another paper by the same authors [10] proposed a geometric control method. Additionally, Reference [11] also considered a geometric approach and provided stability proofs. An adaptive solution for an unknown mass of the load that relies on classical PID control was considered in [12]. An MPC-based solution was presented in [13], with performance comparisons to linear–quadratic regulator (LQR) control. An energy-based nonlinear adaptive controller was delineated in [14], where a stability analysis and a experimental results were provided, for the use of cables of unknown length. A finite-time neuro-sliding mode controller design was proposed in [15] to handle parametric uncertainties and external disturbances in the payload.
The problem of parametric uncertainty has also been explored in other related works. The use of sliding control was proposed in [16], due to its robustness to the model errors, parametric uncertainties, and other disturbances. However, the level of input activity required by sliding control has made it an undesirable solution. The work described in [17] proposed a geometric adaptive control solution for quadrotor attitude tracking. In this work, the inertia of the system was unknown and had to be estimated. The work presented in [18] provided a passivity-based adaptive solution for unknown mass and provided proofs for stability and convergence. In [19], an adaptive controller was proposed for loss-of-thrust actuation failures. Additionally, a multi-model height control solution for uncertain mass was proposed in [20]. An artificial delay adaptive control solution was proposed in [21] for under-actuated systems with limited structural knowledge and was tested in simulation and experiments with quadrotors.
This work addresses the problem of defining a trajectory for a quadrotor with a cable-suspended load of unknown mass. The load was considered to be a point-mass. The proposed trajectory is based on a hybrid system and provides the reference values to the control. The use of this trajectory was tested in simulation using an adaptive geometric controller with asymptotic tracking stability. A mid-flight load mass reduction was illustrated in the simulation, which emulates the fire-fighting scenario. The mass of the load was estimated by an adaptive mechanism and was used to adjust the control.
The main contribution of this paper is to provide and validate an architecture for the control of a quadrotor transporting a cable-suspended load of unknown mass. As shown previously, there is work by other authors that approaches the cable-suspended component of the problem, and there are also papers focused on uncertainty in the model, mass included. This work aimed to solve these two problems simultaneously, having the uncertain component being the mass of the suspended load and providing a proof that the method proposed has asymptotic stability. The control action used includes an adaptive mechanism to account for the unknown mass. The control solution proposed handles uncertainty and the suspended load using geometric control methods combined with the adaptive mechanism.
This paper is organized as follows: The problem is described in Section 2. The proposed control architecture is presented in Section 3. The hybrid system modeling used in this paper is explained in Section 4. The reference trajectory generation is detailed in Section 5. The controller is explained in Section 6. Simulation results are presented and discussed in Section 7. Finally, some concluding remarks are drawn.
The notation used for scalars, vectors, and matrices is lowercase, bold lowercase, and bold uppercase, respectively. Additionally, · represents the norm of a vector.

2. Problem Description

Consider a quadrotor attached to a load, assumed to be a point-mass, by a weightless rigid cable of length l, as illustrated in Figure 1. The inertial reference frames I of the quadrotor and load are handled with upward z and forward x. The positions of the load and quadrotor are denoted as p l and p q , respectively. The rotation matrix from the body fixed frame B, relative to I, is given by R . The body-fixedframe angular velocities of the cable and quadrotor are denoted by ω c and ω q , respectively. The direction of the cable from the load position to the quadrotor position is given by the unit vector q q R 3 | q = 1 . The relation between the positions of the two bodies can be written as p q = p l + l q . Additionally, ω c is restricted by q · ω c = 0 . The masses of the load and quadrotor are m l and m q , respectively. The total mass of the system is m T = m l + m q . The inertia of the quadrotor in its body-fixedframe is J R 3 × 3 and is positive definite.
The kinematic equations are
q ˙ = ω c × q = S ω c q
R ˙ = R S ω q .
where S a is the skew-symmetric matrix of a vector a R 3 . The skew-symmetric matrix is defined by the property that a × b = S a b .
The formulation of the model in this paper follows the Lagrangian method presented in [11]. Therefore, the Lagrangian of the system is required. The kinetic energy of the system is
T = 1 2 m l p ˙ l 2 + 1 2 m q p ˙ l + l q ˙ 2 + 1 2 ω q · J ω q ,
and the potential energy is
U = m l g e 3 · p l + m q g e 3 · ( p l + l q ) .
The resulting Lagrangian is L = T U , from which the system equations result:
m T p ¨ l m q l S q ω ˙ c + ω c 2 q = u m T g e 3
ω ˙ c = 1 m q l S q u m q g e 3 m q p ¨ l
J ω ˙ q + ω q × J ω q = τ ,
where u = R e 3 f is the control force, f is the thrust, and τ R 3 is the input moment. The symbol e 3 represents the vector e 3 = [ 0 0 1 ] T . The orthogonal projection of u along q is u (a parallel component), and the orthogonal projection to the plane normal to q is u (a normal component). These projections are defined as
u = u + u
u = q q T u
u = I q q T u .
Rewriting Equations (5) and (6) yields
m q q q T + m l I p ¨ l + g e 3 = u + m q l ω c 2 q
ω ˙ c = 1 m q l S q u m q g e 3 m q p ¨ l .
The objective of this paper was to provide an architecture with a hybrid-system-based trajectory that will be used for the control of a quadrotor transporting a cable-suspended load of unknown mass. Two components are used for the architecture: a trajectory generator and the controller. The architecture must transport the load from one point on the ground to another point on the ground, while also reaching a sufficient height, and with a mid-flight change in the load mass.

3. Control Architecture

The proposed architecture is composed of a hybrid-automaton-based trajectory that provides position, velocity, and acceleration references to an adaptive geometric controller. The family of trajectories is designed to reflect the transportation of the load from one point on the ground to another. The control is responsible for the estimate of the load mass and tracking of the references provided by the trajectory. The architecture is presented in Figure 2.

4. Hybrid System Modeling

Hybrid systems [22] can be modeled according to different definitions: as a hybrid automaton, using hybrid behavior, and using event flow formulas. In this paper, the hybrid system presented is defined as a hybrid automaton:
Definition 1.
A generalized hybrid automaton is described by a six-tuple (L, X, A, W, R, A c t ), where the symbols have the following meanings:
  • L is a finite set, called the set of discrete states or locations. They are the vertices of a graph;
  • X is the continuous state space of the hybrid automaton in which the continuous state variables x take their values. For our purposes, X R n or X is an n-dimensional manifold;
  • A is a finite set of symbols that serve to label the edges;
  • W = R q is the continuous communication space in which the continuous external variables w take their values;
  • R is a subset of ( L × X ) × ( A × W ) × ( L × X ) ;
  • Act is a mapping that assigns to each location l L a set of differential algebraic equations F l , relating the continuous state variables x to their time-derivatives x ˙ and the continuous external variables w:
    F l ( x , x ˙ , w ) = 0 .
    The solutions of these differential-algebraic equations are called the activities of the location.
The subset R incorporates the notions of location invariants, guards, and jumps in the following way. To each location l, we associate the location invariant:
I n v ( l ) = ( x , a , w ) X × A × W ( l , x , a , w , l , x ) R .
Furthermore, given two locations l, l , we obtain the following guard for the transition from l to l :
G u a r d l l = ( x , a , w ) X × A × W x X , ( l , x , a , w , l , x ) R ,
with the interpretation that the transition from l to l’ can take place if and only if ( x , a , w ) G u a r d l l . Finally, the associated jump relation is given by
J u m p l l ( x , a , w ) = x X ( l , x , a , w , l , x ) R .

5. Trajectory

The proposed family of trajectories was chosen to provide references for the desired load position p l d R 3 , velocity p ˙ l d R 3 , and acceleration p ¨ l d R 3 of the load. It was assumed that the quadrotor will maintain its x-vector facing forward. This section details the proposed family of trajectories and its implementation. The trajectories are divided into three phases, detailed in their respective subsections. The final subsection details the implementation. A representation of one of the trajectories is provided in Figure 3.

5.1. Phase 1—Lift-Off

During this initial phase, the quadrotor is requested to increase the load height at a constant rate, until it crosses a height threshold. After crossing the threshold, it switches to the second phase.

5.2. Phase 2—Transit

During this phase the quadrotor is requested to perform two tasks:
  • Decelerate until the vertical velocity crosses the zero threshold and maintain zero vertical velocity afterwards;
  • Accelerate until a specified forward velocity threshold is passed and maintain the specified forward velocity afterwards.
After a reaching a neighborhood of the desired endpoint, it switches to Phase 3.

5.3. Phase 3—Landing

During this phase, the quadrotor is requested to perform two tasks:
  • Descend at a specified velocity until the load height threshold is reached, and, afterwards, reach zero vertical velocity and height;
  • Decelerate until the forward velocity crosses the zero threshold, and then, hover above the endpoint.

5.4. Hybrid System Implementation

The trajectory is provided by a hybrid model [22], whose diagram is shown in Figure 4. There are eight locations belonging to the set Q = { L O , R 0 V R C F , M 0 V R C F , R 0 V M C F , M 0 V M C F , L R 0 F , L H L Z , and F A H L Z } (also numbered in Figure 4 from 1 to 8), composed of the behaviors in Table 1. It was assumed that the viability of the trajectory is maintained during testing.
Stage L O corresponds to the lift-off phase. Locations R 0 V R C F , M 0 V R C F , R 0 V M C F , and M 0 V M C F correspond to the transit phase. Locations L R 0 F , L H L Z , and F A H L Z correspond to the landing phase. The state of the trajectory generator is the desired position and velocity of the load x t = p l d , p ˙ l d R 6 . The inputs of the generator are the position and velocity of the load w = ( p l , p l ˙ ) R 6 .
The differential equations for the purpose of the desired experiment consist of, depending on the stage, some combination of constant acceleration, velocity, or position. Unless otherwise specified, the components of the acceleration p ¨ l d are zero. L O has a constant upwards velocity and a constant x position; R 0 V has a downwards acceleration, M 0 V has a constant height, R C F has a constant forward acceleration; M C F has a constant forward velocity; L has a constant downward velocity; R 0 F has a backwards acceleration; H L Z has a constant x position; F A has a constant height.
The edges of the system describe the possible transitions from stage l to l . These are illustrated in Figure 4. Locations R 0 V R C F , M 0 V R C F , and R 0 V M C F can transition to L R 0 F for situations where the landing zone is very close to the lift-off point.

6. Control

This section details the control solution that will be used to test the trajectory. The control is first described assuming the load mass is known, providing a purely geometric controller. The required adjustment to provide an adaptive solution is discussed at the end of this section. The controller is divided into two components: the load control and the quadrotor control. The first component handles the desired behavior of the load, generating the requests to the quadrotor. These requests are sent to the quadrotor control, which handles the behavior of the quadrotor. The overall control is based on [11] (and the references therein) and [18].

6.1. Load Control

The first controller focuses on the load by ignoring the orientation of the quadrotor. Effectively, it was assumed that u can be selected instantaneously. Since there are separate inputs for the position of the load ( u ) and the cable orientation ( u ), as evidenced by (11) and (12), different control laws can be set for each component.
The u component needs to adjust the gravitational acceleration of the load a = p ¨ l + g e 3 . Therefore, it is set as
u = μ + m q l ω c 2 q + m q q q T a ,
where μ R 3 is a virtual control input. To ensure that this component remains parallel to q , μ has to be parallel as well. Replacing (17) in (11) yields
m l ( p ¨ l + g e 3 ) = μ .
The desired value of μ can now be designed. However, to ensure that it is parallel to q , its desired value μ d is first selected as
μ d = k 1 e p l k 2 e ˙ p l + m l p ¨ l d + g e 3 ,
where e p l = p l p l d is the position error, p l d is the desired load position, k 1 R is the position control gain, and k 2 R is the velocity control gain. A parallel equivalent of μ d is obtained using
μ = q q T μ d .
To design the normal component u of the control, it is necessary to establish what are the desired values of the direction of the cable q d and its angular velocity ω c d . Allowing the controller to define these, instead of an external trajectory generator, allows it to select values that are in agreement with the requests from the parallel component. For the case of the cable direction, μ d holds important information and yields
q d = μ d μ d .
The desired angular velocity is selected with the objective of achieving q = q d , which provides
ω c d = q d × q ˙ d .
To finish defining the normal input component, definitions of the errors of the direction of the cable e q and of the cable angular velocity e ω c are needed:
e q = q d × q
e ω c = ω c + S q 2 ω c d .
Additionally, (12) is rewritten as
ω ˙ c = 1 m q l S q u 1 l S q a .
The proposed formulation for u is
u = m q l S q k 3 e q + k 4 e ω c + q · ω c d q ˙ + S q 2 ω ˙ c d m q S q 2 a ,
where k 3 R is the cable direction control gain and k 4 R is the cable angular velocity control gain.

6.2. Quadrotor Control

The quadrotor controller is responsible for providing the desired force defined in the previous subsection by adjusting the thrust f and angular moments τ . Thus, a desired matrix for the orientation of the quadrotor R d is required. First, a value of the desired body z-axis can be obtained from u :
b 3 = u u .
Using a desired value of the body x-axis b 1 , which will be provided by the trajectory, the desired rotation matrix:
R d = b 3 ^ 2 b 1 b 3 ^ 2 b 1 b 3 ^ b 1 b 3 ^ b 1 b 3 .
is obtained. The desired value for the angular velocity ω q d is obtained using the inverse map of a skew-symmetric matrix ( A = S ( a ) a = S 1 ( A ) , a R 3 , A R 3 × 3 ) according to
ω q d = S 1 R d R ˙ d .
Having the desired values, the errors for the rotation matrix e R and the angular velocity e ω q can be defined as
e R = 1 2 S 1 R d T R R T R d
e ω q = ω q R T R d ω q d .
The thrust is defined using the virtual control u of the previous controller:
f = u · R e 3 ,
while the moments τ require the newly defined variables:
τ = k 5 ϵ 2 e R k 6 ϵ e ω q + ω q × J ω q J S ω q R T R d ω q d R T R d ω ˙ q d ,
where k 5 R is the rotation control gain, k 6 R is the quadrotor angular velocity control gain, and ϵ R is and additional control gain.

6.3. Adaptive Mechanism

In order for the presented controller to adapt to differences in the load mass, an adaptive mechanism [18] to adjust its outputs is required. Thus, an estimate of the load mass m ^ l is deduced based on the desired gravitational acceleration and the errors of the position and velocity of the load. This way, the estimate can evolve based on how much the load is lagging behind the requested trajectory. The proposed mechanism is
m ^ ˙ l = ν p ¨ l d + g e 3 · e ˙ p l + c 1 e p l .
This mechanism was selected because it preserves the tracking stability of the geometric solution, which will be shown in Appendix A.
Rewriting the relevant control equation from the previous sections, (19), to include the explicit estimate of the load mass results in
μ d = k 1 e p l k 2 e ˙ p l + m ^ l p ¨ l d + g e 3 .

7. Simulation Results

Two simulations were prepared to test the proposed solution. The parameters of the system are shown in Table 2. The control gains are presented in Table 3. The trajectory parameters are presented in Table 4. Some of these parameters were obtained by fine tuning. These parameters are provided for the sake of the reproducibility of the results. For plotting purposes, the locations of the trajectory are attributed an equivalent number: L O = 1 , R 0 V R C F = 2 , M 0 V R C F = 3 , R 0 V M C F = 4 , M 0 V M C F = 5 , L R 0 F = 6 , L H L Z = 7 , F A H L Z = 8 , as highlighted in Figure 4.
For the purpose of measuring the errors regarding q and R , the following metrics are proposed, respectively: Ψ q = 0.5 q q d 2 and Ψ R = 0.5 R R d 2 .
The first simulation included all phases of the trajectory. In this case, the mass of the load was tested at different values with a 0.02 kg (up to 4% of the total mass) drop after p l · e 1 = 5 . The results of the simulation are presented in Figure 5, where the selected mass values are shown in the legend. The results were similar for all cases. The quadrotor was capable of following the trajectory in all locations of the trajectory, except L R 0 F , as evidenced by the rising error in Figure 5e and the delayed response in Figure 5c before the 34 s mark. The error observed in Figure 5b,d coincides with the mass estimate error at the start of the simulation and after the mass change. The forward velocity gains oscillation when there are changes to the requested velocity and to the load mass. This oscillation is dissipated, but remains for some time. For example, after the four-second mark (change in location R 0 V M C F ), it takes approximately four seconds to dissipate. The orientation of the quadrotor converges quickly to the desired value, as evidenced by the low peaks in the error measurement in Figure 5f. Lower load mass values lead to higher error measurements in Figure 5e,f. The thrust in Figure 5g is quick to respond and only presents a large peak when the mass change occurs. The moment is also quick to respond, only peaking when there are sudden changes in the requested orientation of the quadrotor. These request changes coincide with a change of location of the trajectory. The peaks of the moments are more pronounced for lower load masses. The mass estimate (Figure 5i) is also fast, converging with a settling time of two seconds to the real value at the start of the simulation and after the mass change. Additionally, the mass estimate has no overshoot, with sudden changes resulting from location changes. The largest values of the z velocity error in Figure 5d coincide with the points of larger mass estimation error.
The second simulation only included the first two phases. In this case, different maximum forward velocities were tested. The starting load mass was 0.085 kg and dropped 0.02 kg after x · e 1 = 5 . The results of the simulation are presented in Figure 6 and Figure 7, where the selected maximum forward velocity values are shown in the legend. The quadrotor is capable of moving at the desired maximum velocities, as evidenced in Figure 6c. Similar observations can be made for this simulation, when compared with the previous one, in regard to when the peaks and oscillations occur. Additionally, it was observed that identical behaviors occurred after the mass drop, even when traveling at different forward velocities, as highlighted in Figure 6b,d,g and Figure 7a. Very little error is observed in Figure 6e. The highest peaks after the mass drop in Figure 6f,h are observed for the 0.35 and 0.4 m/s cases, while the lowest peaks occur for the lowest velocity case.
The controller performance was also tested for an increased maximum forward velocity scenario, away from the conservative nominal value. Figure 8 illustrates this scenario with a maximum forward velocity of 3.5 m/s (10-times more than the average value previously used. No discernible change was observed in the behavior of the velocity.

8. Conclusions

This paper proposed and validated an architecture for a quadrotor transporting a cable-suspended load of unknown mass from one point on the ground to another. A trajectory modeled as a hybrid system was proposed. An adaptive geometric control method with asymptotic tracking stability was used. The adaptive component of the control handles the mass uncertainty. The proposed system was tested in simulation with different load masses (between 0.075 and 0.095 kg) and maximum forward velocities (between 0.25 and 0.45 m/s), showing low settling times for the mass estimation and good tracking capabilities. The stability was verified in the simulation. Other effects, such as external disturbances (wind, rain, air density, among others) were considered as being rejected by the controller. These disturbances are being added to the model to design a more robust version of this control method in future work.

Author Contributions

P.O. (Pedro Outeiro): methodology, software, validation, writing—original draft. C.C. and P.O. (Paulo Oliveira): supervision, writing—review and editing, project administration, funding acquisition. All authors have read and agreed to the published version of the manuscript.

Funding

This work was financed by national funds through FCT—Foundation for Science and Technology, I.P., through IDMEC, under LAETA, Projects UIDB/50022/2020, CAPTURE (PTDC/EEIAUT/1732/2020), and POCI-01-0247-FEDER-046102, co-financed by Programa Operacional Competitividade e Internacionalização and Programa Operacional Regional de Lisboa, through Fundo Europeu de Desenvolvimento Regional (FEDER) and by National Funds through FCT—Fundação para a Ciência e Tecnologia. This work was also supported by FCT through the scholarship SFRH/BD/147035/2019.

Data Availability Statement

The data used in the present work is all available in the document itself.

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Controller Stability

The stability of the control method hinges on the following theorem:
Theorem A1.
The proposed controller provides an asymptotically stable zero equilibrium of tracking errors, so long as the selected trajectory ensures that
e ˙ p l + c 1 e p l · y α m l c 1 k 1 e p l 2 + c 1 k 2 e p l e ˙ p l + k 2 e ˙ p l 2 + c 1 B e p l + k 1 m l e p max + B e ˙ p l e q
y = 1 m l q d T μ d ( m ^ l ) q T q d q q d = 1 m l q d T μ d ( m ^ l ) S q e q .
The proof of Theorem A1 hinges on showing that there is a set of trajectories that can be requested from the system, for which the system is stable. For this, the error dynamics have to be examined first. From Equations (18) and (20) results
m l ( p ¨ l + g e 3 ) = q q T μ d ( m ^ l ) ,
which can be adjusted as follows:
m l ( p ¨ l + g e 3 ) = μ d ( m l ) + q q T μ d ( m ^ l ) μ d ( m l )
e ¨ p l = k 1 m l e p l k 2 m l e ˙ p l + 1 m l q q T μ d ( m ^ l ) μ d ( m l ) m l
e ¨ p l = k 1 m l e p l k 2 m l e ˙ p l + y + 1 m l μ d ( m ^ l ) μ d ( m l )
e ¨ p l = k 1 m l e p l k 2 m l e ˙ p l + y + 1 m l m ^ l m l p ¨ l d + g e 3 .
In these equations, y R 3 represents the error associated with the difference between q and q d , and it is given by
y = 1 m l q q T I μ d ( m ^ l ) .
Equation (21) dictates that μ d ( m ^ l ) = q d q d T μ d ( m ^ l ) , which allows writing y as a function of e q :
y = 1 m l q d T μ d ( m ^ l ) q T q d q q d = 1 m l q d T μ d ( m ^ l ) S q e q .
An upper bound of y can be obtained as
y 1 m l μ d ( m ^ l ) e q k 1 m l e p l + k 2 m l e ˙ p l + B e q .
for some positive constant B, which depends on the desired trajectories of the load.
The next step of the proof requires a Lyapunov function to show the tracking stability. First, a cable configuration error function Ψ q that is positive definite around q = q d is defined as
Ψ q = 1 q · q d .
For positive constants e p max , ψ q R , consider the following open domain containing the zero equilibrium of tracking error variables:
D = e p l , e ˙ p l , e q , e ω c R 3 4 | e p l < e p max , Ψ q < ψ q < 1 .
In this domain, e q = Ψ q 2 Ψ q ψ q 2 ψ q α < 1 . It can be shown that the cable configuration error is quadratic with respect to the error vectors in the sense that
1 2 e q 2 Ψ q 1 2 ψ q e q 2 ,
where the upper bounds are satisfied only in the domain D.
The Lyapunov function is defined as
V = 1 2 e ˙ p l 2 + k 1 2 m l e p l 2 + c 1 e p l · e ˙ p l + 1 2 ν m l e m l 2 + 1 2 e ω c 2 + k 3 Ψ q + c 2 e q · e ω c ,
where c 1 , c 2 are positive constants and e m l = m ^ l m l is the mass estimate error. The derivative of (A14) is
V ˙ = k 2 m l c 1 e ˙ p l 2 c 1 k 1 m l e p l 2 c 1 k 2 m l e p l · e ˙ p l + e ˙ p l + c 1 e p l · y k 4 c 2 e ω c 2 c 2 k 3 e q 2 c 2 k 4 e q · e ω c .
Let z x = e p l , e ˙ p l T , z q = e q , e ω c T R 2 . The Lyapunov function satisfies
z x T P ̲ x z x + z q t P ̲ q z q + 1 2 ν m l e m l 2 V z x T P ¯ x z x + z q t P ¯ q z q + 1 2 ν m l e m l 2 ,
where the matrices P ̲ x , P ̲ q , P ¯ x , and P ¯ q R 2 × 2 are given by
P ̲ x = 1 2 k 1 m l c 1 c 1 1 , P ¯ x = 1 2 k 1 m l c 1 c 1 1 , P ̲ q = 1 2 2 k 3 c 2 c 2 1 , and P ¯ q = 1 2 2 k 3 2 ψ q c 2 c 2 1 .
If the constants c 1 , c 2 are sufficiently small, all of the above matrices are positive definite. It follows that the Lyapunov function is positive definite.
From (A10), an upper-bound of the fourth element of V ˙ is given by
e ˙ p l + c 1 e p l · y α c 1 k 1 m l e p l 2 + α k 2 m l e ˙ p l 2 + α c 1 k 2 m l e p l e ˙ p l + k 1 m l e p max + B e ˙ p l e q + c 1 B e p l e q .
Substituting this into (A15) and rearranging, V ˙ is bounded by
V ˙ z T W z ,
where z = z x , z q T R 2 , and the matrix W R 2 × 2 is defined as
W = λ m W x 1 2 W x q 1 2 W x q λ m W q ,
where λ m A is the minimum eigenvalue of A R n × n ; the sub-matrices are given by:
W x = c 1 k 1 m l 1 α c 1 k 2 2 m l 1 + α c 1 k 2 2 m l 1 + α k 2 m l 1 α c 1 , W q = c 2 k 3 c 2 k 4 2 c 2 k 4 2 k 4 c 2 , and W x q = c 1 B 0 k 1 m l e p max + B 0 .
If the constants c 1 , c 2 , which are independent of the control input, are sufficiently small, the matrices W x , W q are positive definite. Furthermore, if the error in the direction of the cable is sufficiently small (determined by constant B) relative to the desired trajectory in Section 5.4, the controller gains can be chosen such that the matrix W is positive definite. Since V ˙ does not include the mass estimate, it is necessary to analyze V ¨ to finalize the stability proof.
From (A18), it is shown that e p l , e ˙ p l , e q , e ω c , and e m l are bounded. The derivative of (A15) yields
V ¨ = k 2 m l 2 k 2 m l 3 c 1 e ˙ p l 2 + c 1 k 1 k 2 m l 2 e p l 2 + 2 k 1 m l k 2 m l 2 c 1 + c 1 k 2 m l 2 e p l · e ˙ p l e m l m l 2 k 2 m l c 1 e ˙ p l + c 1 k 2 m l e p l · p ¨ l d + g e 3 1 m l k 1 + c 1 k 2 e p l + 3 k 2 m l c 1 e ˙ p l e m l m l p ¨ l d + g e 3 · y + y 2 + e ˙ p l + c 1 e p l · y ˙ + k 4 2 k 4 3 c 2 e ω c 2 + c 2 k 3 k 4 e q 2 + 2 k 3 k 4 2 c 2 + c 2 k 4 2 e q · e ω c .
y is bounded, as shown in (A10). Its derivative y ˙ is also bounded. p ¨ l d is provided by the proposed trajectory, which ensures it is bounded. Therefore, V ¨ is bounded, and V ˙ is uniformly continuous in t 0 , and negative definite. From Barbalat’s lemma, it follows that the zero equilibrium of tracking errors is asymptotically stable.
The proof of the stability of the controller in Section 6.2 is provided in Annex C. of [23], therefore proving that Theorem A1 is correct.

References

  1. UPS Partners with Matternet to Transport Medical Samples via Drone across Hospital System in Raleigh, N.C. Available online: https://pressroom.ups.com/pressroom/ContentDetailsViewer.page?ConceptType=PressReleases&id=1553546776652-986 (accessed on 16 April 2019).
  2. Amazon Prime Air Website. Available online: https://www.amazon.com/Amazon-Prime-Air/b?node=8037720011 (accessed on 16 April 2019).
  3. Arshad, M.A.; Ahmed, J.; Bang, H. Quadrotor Path Planning and Polynomial Trajectory Generation Using Quadratic Programming for Indoor Environments. Drones 2023, 7, 122. [Google Scholar] [CrossRef]
  4. Al Younes, Y.; Barczyk, M. Adaptive Nonlinear Model Predictive Horizon Using Deep Reinforcement Learning for Optimal Trajectory Planning. Drones 2022, 6, 323. [Google Scholar] [CrossRef]
  5. Zhang, Z.; Li, J.; Wang, J. Sequential convex programming for nonlinear optimal control problems in UAV path planning. Aerosp. Sci. Technol. 2018, 76, 280–290. [Google Scholar] [CrossRef]
  6. He, L.; Aouf, N.; Song, B. Explainable Deep Reinforcement Learning for UAV autonomous path planning. Aerosp. Sci. Technol. 2021, 118, 107052. [Google Scholar] [CrossRef]
  7. Shin, Y.; Kim, E. Hybrid path planning using positioning risk and artificial potential fields. Aerosp. Sci. Technol. 2021, 112, 106640. [Google Scholar] [CrossRef]
  8. Baca, T.; Hert, D.; Loianno, G.; Saska, M.; Kumar, V. Model Predictive Trajectory Tracking and Collision Avoidance for Reliable Outdoor Deployment of Unmanned Aerial Vehicles. In Proceedings of the 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain, 1–5 October 2018; pp. 6753–6760. [Google Scholar] [CrossRef]
  9. Sreenath, K.; Michael, N.; Kumar, V. Trajectory generation and control of a quadrotor with a cable-suspended load-A differentially-flat hybrid system. In Proceedings of the 2013 IEEE International Conference on Robotics and Automation, Karlsruhe, Germany, 6–10 May 2013; pp. 4888–4895. [Google Scholar] [CrossRef]
  10. Sreenath, K.; Lee, T.; Kumar, V. Geometric control and differential flatness of a quadrotor UAV with a cable-suspended load. In Proceedings of the 52nd IEEE Conference on Decision and Control, Firenze, Italy, 10–13 December 2013; pp. 2269–2274. [Google Scholar]
  11. Lee, T. Geometric control of multiple quadrotor UAVs transporting a cable-suspended rigid body. In Proceedings of the 53rd IEEE Conference on Decision and Control, Los Angeles, CA, USA, 15–17 December 2014; pp. 6155–6160. [Google Scholar] [CrossRef] [Green Version]
  12. Dai, S.; Lee, T.; Bernstein, D.S. Adaptive control of a quadrotor UAV transporting a cable-suspended load with unknown mass. In Proceedings of the 53rd IEEE Conference on Decision and Control, Los Angeles, CA, USA, 15–17 December 2014; pp. 6149–6154. [Google Scholar] [CrossRef]
  13. Notter, S.; Heckmann, A.; Mcfadyen, A.; Gonzalez, L. Modelling, Simulation and Flight Test of a Model Predictive Controlled Multirotor with Heavy Slung Load. IFAC-PapersOnLine 2016, 49, 182–187. [Google Scholar] [CrossRef] [Green Version]
  14. Yang, S.; Xian, B. Energy-Based Nonlinear Adaptive Control Design for the Quadrotor UAV System With a Suspended Payload. IEEE Trans. Ind. Electron. 2020, 67, 2054–2064. [Google Scholar] [CrossRef]
  15. Bingöl, O.; Güzey, H.M. Finite-Time Neuro-Sliding-Mode Controller Design for Quadrotor UAVs Carrying Suspended Payload. Drones 2022, 6, 311. [Google Scholar] [CrossRef]
  16. Xu, R.; Ozguner, U. Sliding Mode Control of a Quadrotor Helicopter. In Proceedings of the 45th IEEE Conference on Decision and Control, San Diego, CA, USA, 13–15 December 2006; pp. 4957–4962. [Google Scholar]
  17. Lee, T. Robust Adaptive Attitude Tracking on SO(3) with an Application to a Quadrotor UAV. IEEE Trans. Control Syst. Technol. 2013, 21, 1924–1930. [Google Scholar]
  18. Song, J.; Chang, D.E.; Eun, Y. Passivity-based Adaptive Control of Quadrotors with Mass and Moment of Inertia Uncertainties. In Proceedings of the 2019 IEEE 58th Conference on Decision and Control (CDC), Nice, France, 11–13 December 2019; pp. 90–95. [Google Scholar]
  19. Dydek, Z.T.; Annaswamy, A.M.; Lavretsky, E. Adaptive Control of Quadrotor UAVs: A Design Trade Study with Flight Evaluations. IEEE Trans. Control Syst. Technol. 2013, 21, 1400–1406. [Google Scholar] [CrossRef]
  20. Outeiro, P.; Cardeira, C.; Oliveira, P. MMAC Height Control System of a Quadrotor for Constant Unknown Load Transportation. In Proceedings of the 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain, 1–5 October 2018; pp. 4192–4197. [Google Scholar] [CrossRef]
  21. Roy, S.; Baldi, S.; Li, P.; Narayanan, V. Artificial-Delay Adaptive Control for Under-actuated Euler-Lagrange Robotics. IEEE/ASME Trans. Mechatron. 2021, 26, 3064–3075. [Google Scholar] [CrossRef]
  22. Van Der Schaft, A.; Schumacher, H. An Introduction to Hybrid Dynamical Systems; Springer: London, UK, 2000. [Google Scholar]
  23. Lee, T. Geometric Control of Multiple Quadrotor UAVs Transporting a Cable-Suspended Rigid Body. arXiv 2014, arXiv:1403.3684. [Google Scholar]
Figure 1. Quadrotor with cable-suspended load.
Figure 1. Quadrotor with cable-suspended load.
Drones 07 00201 g001
Figure 2. Control architecture ( p l d —desired load position).
Figure 2. Control architecture ( p l d —desired load position).
Drones 07 00201 g002
Figure 3. Trajectory example (not to scale).
Figure 3. Trajectory example (not to scale).
Drones 07 00201 g003
Figure 4. Trajectory hybrid system diagram ( e 1 = [ 1 0 0 ] T ).
Figure 4. Trajectory hybrid system diagram ( e 1 = [ 1 0 0 ] T ).
Drones 07 00201 g004
Figure 5. Simulation results for different load masses ( e 2 = [ 0 1 0 ] T ). (a) x position. (b) z position. (c) x velocity. (d) z velocity. (e) q error. (f) R error. (g) thrust. (h) y moment. (i) Mass estimate. (j) Location number (refer to Figure 4).
Figure 5. Simulation results for different load masses ( e 2 = [ 0 1 0 ] T ). (a) x position. (b) z position. (c) x velocity. (d) z velocity. (e) q error. (f) R error. (g) thrust. (h) y moment. (i) Mass estimate. (j) Location number (refer to Figure 4).
Drones 07 00201 g005
Figure 6. Simulation results for different maximum forward velocities ( e 2 = [ 0 1 0 ] T ). (a) x position. (b) z position. (c) x velocity. (d) z velocity. (e) q error. (f) R error. (g) thrust. (h) y moment.
Figure 6. Simulation results for different maximum forward velocities ( e 2 = [ 0 1 0 ] T ). (a) x position. (b) z position. (c) x velocity. (d) z velocity. (e) q error. (f) R error. (g) thrust. (h) y moment.
Drones 07 00201 g006
Figure 7. Simulation results for different maximum forward velocities: continued from Figure 6. (a) Mass estimate. (b) Location number (refer to Figure 4).
Figure 7. Simulation results for different maximum forward velocities: continued from Figure 6. (a) Mass estimate. (b) Location number (refer to Figure 4).
Drones 07 00201 g007
Figure 8. Simulation forward velocity results for increased maximum velocity (3.5 m/s).
Figure 8. Simulation forward velocity results for increased maximum velocity (3.5 m/s).
Drones 07 00201 g008
Table 1. Location behaviors.
Table 1. Location behaviors.
AbbreviationNameDiff. Equation
L O Lift-Off p ˙ l d · e 3 = β 8
R 0 V Reach Zero Vertical Velocity p ¨ l d · e 3 = β 9
M 0 V Maintain Zero Vertical Velocity p ˙ l d · e 3 = 0
R C F Reach Cruise Forward Velocity p ¨ l d · e 1 = β 10
M C F Maintain Cruise Forward Velocity p ˙ l d · e 1 = β 2
LLanding p ˙ l d · e 3 : = β 4
R 0 F Reach Zero Forward Velocity p ¨ l d · e 1 = β 11
H L Z Hover Landing Zone p ˙ l d · e 1 = 0
F A Final Approach p ˙ l d · e 3 = 0
Table 2. System parameters.
Table 2. System parameters.
ParameterValue
m q (kg)0.42
J x (kg m2) 2.2383 × 10 3
J y (kg m2) 2.9858 × 10 3
J z (kg m2) 4.8334 × 10 3
l (m)0.75
Table 3. Control gains.
Table 3. Control gains.
GainValue
k 1 0.5
k 2 0.9
k 3 0.125
k 4 3
k 5 10 4
k 6 2 × 10 4
ν 0.02
c 1 0.5
ϵ 10 2
Table 4. Trajectory parameters.
Table 4. Trajectory parameters.
ParameterValue
β 1 0.5
β 2 0.35
β 3 8.7
β 4 0.11
β 5 10
β 6 0.03
β 7 0
β 8 0.15
β 9 0.04
β 10 0.3
β 11 0.08
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Outeiro, P.; Cardeira, C.; Oliveira, P. Control Architecture for a Quadrotor Transporting a Cable-Suspended Load of Uncertain Mass. Drones 2023, 7, 201. https://doi.org/10.3390/drones7030201

AMA Style

Outeiro P, Cardeira C, Oliveira P. Control Architecture for a Quadrotor Transporting a Cable-Suspended Load of Uncertain Mass. Drones. 2023; 7(3):201. https://doi.org/10.3390/drones7030201

Chicago/Turabian Style

Outeiro, Pedro, Carlos Cardeira, and Paulo Oliveira. 2023. "Control Architecture for a Quadrotor Transporting a Cable-Suspended Load of Uncertain Mass" Drones 7, no. 3: 201. https://doi.org/10.3390/drones7030201

Article Metrics

Back to TopTop