Abstract
This paper presents a geometric finite-time inner-outer loop control strategy for slung payload transportation using a quadrotor. The underactuated nature of the quadrotor in conjunction with the cable connection makes it impossible to simultaneously and arbitrarily track the load position, cable direction and the quadrotor’s attitude. By exploiting the differential flatness of the system dynamics, it is possible to arbitrarily control the load position, with the cable direction and quadrotor attitude remaining dependent on the trajectory and controller dynamics. A two-loop feedback control strategy is proposed comprising an inner-loop control law addressing quadrotor attitude tracking within finite time, and an outer-loop controller addressing the stabilization of the cable direction and position tracking of the payload trajectory. The control laws are expressed in a coordinate-free setting and are singularity-free. We include the effects of unmodeled dynamics on the load system and design an adaptive estimator to estimate and reject such uncertainties. The performance and robustness of the feedback laws is demonstrated through numerical simulations and experimental results.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Avoid common mistakes on your manuscript.
1 Introduction
Aerial transportation and deployment of payloads using unmanned aerial vehicles (UAVs) such as quadrotors have become increasingly popular in the past decade. Quadrotor vehicles are very versatile and have a wide range of applications [6, 18]. They have the capability to take-off and land vertically, while simultaneously and independently changing their heading. Moreover, adding to their first-rate in-flight maneuverability, quadrotor vehicles are also able to halt mid-flight and hover [35, 7, 22]. When quadrotors are used to carry suspended loads, the payload can be held by a grasper attached to the quadrotor. However, this approach increases the inertia and overall mass of the quadrotor, eventually slowing down its dynamics and aggravating the performance [2]. An alternative method is to hang the load on a cable connected to the quadrotor. Although the overall mass of the system still increases, the quadrotor’s inertia remains unchanged and so does its agility.
The actual implementation of load transportation by means of cable suspension still poses motion control challenges despite its advantages and promising prospects. Among a myriad of predicaments, we highlight that (1) the position or attitude control of a quadrotor is complex because the vehicle is inherently unstable; (2) both the vehicle and the load (seeing the cable tension as input) subsystems are underactuated and the complete system has highly coupled dynamics; (3) the suspended load’s dynamics affect the vehicle’s dynamics and may render the trajectory tracking closed-loop unstable if not taken into consideration when designing the controller; and 4) external disturbances occur naturally (e.g., wind), and model mismatches and unmodeled dynamics, which are an ubiquitous part of an actual implementation, should have their effects minimized.
In recent years, load transportation using quadrotors has been a popular theme among the automatic control research community. Most of the earlier works focused on trajectory generation for slung load and set-point stabilization [14, 27, 34]. In [29], the load is regarded as an unmodeled disturbance, and the control solution is aimed to guide the vehicle (not the load) through the desired path while rejecting the load-induced disturbances. Later on, trajectory tracking solutions tackling the complete system were proposed. Several nonlinear controllers have been developed by parameterizing quadrotor and payload attitude through various local coordinate representations and through global settings by exploiting unit quaternions [1, 12, 19, 28, 30]. Local coordinate representations, like the Euler angles, only allow for a local analysis as such representations have kinematic singularities and are not able to represent attitude globally. Coordinate-free approaches for modeling and control have also been studied in [17, 21, 34]. A quadrotor system in free-flight or carrying a slung load is a differentially-flat system [26] which implies the existence of a continuous dynamic feedback law for the closed-loop system. In [34], the authors designed a controller from differentially-flat outputs for a cable-suspended load system; the technique was further extended to the 3D case in [13]. For stabilization of heavy loads, a nonlinear model predictive approach is explored in [36]. In the present paper, a coordinate-free approach is pursued for devising the quadrotor and load-swing attitude control, with almost-global asymptotic stability being achieved for the equilibrium trajectory of the overall closed loop system.
For thrust vectored vehicles, as is the case of a quadrotor, it is impossible to specify an arbitrary desired pose due to underactuation: these vehicles have six degrees of freedom and only four inputs. It is possible to independently control the position and yaw angle but pitch and roll angles will depend on the controller dynamics and reference trajectory. Typically, approaches to nonlinear pose control for quadrotors involve one of the following: (1) an integrated controller simultaneously stabilizes the position and the yaw angle of the quadrotor; this is a complex approach that entails long math derivations and is sensitive to the system parameters; (2) a hierarchical inner-outer loop control strategy where a fast inner loop controls the attitude, and a slower outer loop controls the position; or (3) a hierarchical controller with finite-time feedback control for the attitude, thereby allowing the total force on the quadrotor to be used as a direct input for position control, which simplifies the controller design and analysis. In [21], a terminal sliding mode controller is designed for a multi-quadrotor with a suspended load system. The finite-time stability of this sliding mode controller provides guarantees on convergence time and renders the system more robust to the external disturbances. The continuous finite-time stabilization of dynamical systems has been studied in [3, 4]. In [5], the authors use a finite-time continuous function, having then established an almost-global continuous finite-time feedback law for attitude stabilization. In [38], the authors apply continuous finite-time control to a rigid body system with applications to quadrotors. Continuous control solutions are preferable over discontinuous ones as they are chattering-free and more desirable for real-world applications, such as quadrotors, where the actuators provide continuous inputs. Hence, in this paper we extend the solution developed in [38] to the case of the quadrotor-slung load system.
Robustness is an important quality of any control system, and of special importance for actual vehicles, as they must ensure stability and performance in the face of uncertainties, including parametric uncertainties, unmodeled uncertainties, external disturbances, and time-varying state and input delays. In [24], an attitude controller is designed for the nominal system, and a robust compensator is added to restrain the effects of uncertainties and delays on the closed-loop control system. An uncertainty and disturbance estimator is used in [11] as the basis for a robustified nonlinear dynamic inversion control scheme for position and attitude tracking of a quadrotor. In this manuscript, a disturbance estimator is designed that ensures asymptotic tracking of the desired load trajectory and can be related to the so-called disturbance observer literature [31].
In previous work [8], the authors present a method for generating a slung-load trajectory tracking controller based on existing quadrotor free-flight controllers. This is a general result and only requires the existing quadrotor controllers to fulfil mild requirements on their associated Lyapunov functions. The paper considers only the nominal dynamic system. No robustness analysis is performed (although some robustness is ensured by the strict Lyapunov function that is constructed), and neither external disturbances nor unmodeled dynamics are considered or mitigated. In [39], also by the authors, the focus is on simplifying the control laws, and not on canceling all the dynamics as is typical of the backstepping procedure for controller design. Asymptotic tracking is considered for the full system dynamics which, despite simplifications, still involves long and complex expressions, as well as higher order derivatives. Going one step further, the present work minimizes the dynamic order of the controller required by virtue of the finite-time controller for the quadrotor attitude, while still presenting rigorous stability proofs.
Additionally, this manuscript studies robustness issues arising from parameter uncertainties and unmodeled dynamics. In a typical quadrotor-slung load system, common sources of uncertainities are: (1) imprecise identification of the parameters such as load mass, quadrotor mass, inertia and length of the cable; (2) mismatch between the cable attachment point and the center of mass of the quadrotor; and (3) disturbances originated from motor torques. These uncertainties are time-varying disturbances with bounded amplitude and bounded time derivative. One way these disturbances can be rejected is with an adaptive controller. In [16], the authors discuss the adaptive backstepping technique to estimate the unknown mass of a quadrotor. In [10], similar techniques are used for a quadrotor with unknown payload mass attached to a flexible cable. In [21], an adaptive law is proposed considering the effect of arbitrary but constant external disturbances on both quadrotors and load. Building on this previous research, the current manuscript examines the impact of internal disturbances due to the unmodeled actuation dynamics. In the present manuscript, we focus on disturbances that are solidary with the quadrotor, which includes disturbances induced from the cable not being attached exactly at the quadrotor center of mass and also disturbances arising from a mismatch between the commanded and the real thrust force at the quadrotor. The contributions of the manuscript are multifold.
-
A finite-time quadrotor attitude controller is designed by taking the covariant derivative of a transport map along the angular velocity on the nonlinear manifold with Lie Group structure SO(3). This controller is developed using the Morse functionFootnote 1modified trace and by imposing a Hölder continuity condition, to ensure almost-global finite-time convergence.
-
For control of the cable direction, a unitary vector evolving in \({\mathbb {S}}^{2}\) (a nonlinear manifold, like SO(3), but without a Lie Group structure), a controller is designed using a transport map, analogous to the previous point for attitude control. This transport map is calculated through orthogonal projections of a vector in \({\mathbb {R}}^{3}\) onto the tangent space of \({\mathbb {S}}^{2}\), and a geometric proportional-derivative law is constructed to align the cable direction to the desired direction asymptotically.
-
An estimator for disturbances is constructed to improve the load position trajectory tracking in the presence of unmodeled dynamics. This estimator, expressed in the quadrotor body frame, is incorporated into the load position and cable direction controllers to ensure the asymptotic stability of the overall system and convergence of all errors to zero.
-
The overall proposed controller and estimator are implemented on a remote-controlled vehicle, using thrust and angular velocity as inputs, in a motion capture arena. The numerical simulations and experiments attest to the tracking performance and robustness in the presence of unmodeled disturbances and at high quadrotor speeds.
The paper is organized as follows. Section 2 presents the mathematical notation used throughout the manuscript. The dynamics of the quadrotor UAV with slung load are introduced in Sect. 3. The overall controller design is described in 4 comprising the finite-time stable quadrotor controller in 4.1, the load position and cable attitude subsystem controller in 4.2, the estimator for unmodeled dynamics in 4.3, and finally, the Lyapunov analysis of the complete system in 4.4 where local asymptotic stability of overall closed-loop system is established. Section 5 presents the numerical simulations and experimental results followed by concluding remarks in Sect. 6.
2 Mathematical notations
Throughout this paper, we use differential geometry tools and nomenclatures such as manifold, tangent space and Lie group to build the control algorithms. A nice scholarly exposition on these concepts is found in [23]. A manifold (topological) of dimension n is a smooth curve, surface or higher-dimensional analogue that can be treated locally as an Euclidean space of dimension n. The configuration space of a system is a finite-dimensional manifold denoted by Q having generalized coordinates q. A set of admissible velocities at q defines a tangent space at this point as \(T_{q}Q\) and a tangent bundle TQ of Q is the disjoint union of all the tangent spaces to Q. Manifolds, such as SO(3), are called Lie groups if in addition to their smooth structure (manifold) they also possess a group structure. For example, the set of non-singular matrices \(GL(n,{\mathbb {R}})\) of dimension n is a Lie group and \(T_\mathbf{A }GL(n,{\mathbb {R}})\) is the tangent space at \(\mathbf{A} \in GL(n,{\mathbb {R}})\).
The natural configuration space of a rotating rigid body is the special orthogonal matrix, \(SO(3) = \{ \mathbf{R} \in GL(3,{\mathbb {R}}) | \mathbf{R}^{T}{} \mathbf{R} = \mathbf{I} , \text{ det }(\mathbf{R})=1\}\), a Lie group. The vector space at identity \(\mathbf{I} \) is closed under matrix commutator and forms the Lie algebra \({\mathfrak {s}}{\mathfrak {o}}(3)\) which is isomorphic to \({\mathbb {R}}^{3}\).
The bracket \(\langle \mathbf{x} , \mathbf{y} \rangle \) denotes the natural application between elements of the tangent space and elements of its dual. The hat map and breve map are defined as
such that \(\mathbf{x} \times \mathbf{y} = [\mathbf{x} ]^{\wedge } \mathbf{y} \) \( \forall \mathbf{x} , \mathbf{y} \in {\mathbb {R}}^{3}\) with \(\times \) as the vector product. The inverse of \( [\cdot ]^{\wedge }\) is \([\cdot ]^{\vee } : {\mathfrak {s}}{\mathfrak {o}}(3) \rightarrow {\mathbb {R}}^{3}\), where \({\mathfrak {s}}{\mathfrak {o}}(3)\) is the Lie algebra of SO(3) defined by the tangent space of SO(3) at identity \(T_{I}SO(3)\).
Given a vector \({\mathbf {q}} \in {\mathbb {S}}^{2}\) with \({\mathbb {S}}^{2} =\{ {\mathbf {a}} \in {\mathbb {R}}^{3} | ~ \Vert {\mathbf {a}} \Vert =1 \}\), we define two projection mappings onto \({\mathbb {R}}^{3}\) as
which correspond to the orthogonal projection of a vector along \(\mathbf{q} \) and plane normal to \(\mathbf{q} \), respectively.
A function defined on a domain X is said to be of class \(C^k(X)\) if its k-th derivative is continuous in X.
3 Dynamic model of the quadrotor and slung load system
A quadrotor carrying a suspended load can be viewed as a system consisting of two rigid bodies, a quadrotor and a load, connected by a massless rigid cable attached to their centers of mass, as shown in Fig. 1. The quadrotor is driven by four rotors and propellers, generating thrust along the quadrotor z-axis direction and arbitrary torque. The overall system dynamics are completely characterized (neglecting aerodynamics drag effects) by the mass and the inertia of the quadrotor rigid body, the length of the cable and the mass of the load. Let \(\{\mathbf{e }_{1},\mathbf{e }_{2},\mathbf{e }_{3}\}\) be an orthonormal basis that defines the inertial reference frame \({\mathcal {F}}_{{\mathcal {I}}}\), \(\{\mathbf{r }_{1},\mathbf{r }_{2},\mathbf{r }_{3}\}\) be the orthonormal basis for the quadrotor body-fixed frame \({\mathcal {F}}_{{\mathcal {Q}}}\) located at the center of mass of the quadrotor and \(\{{\varvec{\ell }}_{1},{\varvec{\ell }}_{2},{\varvec{\ell }}_{3}\}\) be the basis for the load body-fixed frame \({\mathcal {F}}_{{\mathcal {L}}}\) with origin at the center of mass of the load.
We use the following notation for the system:
-
1.
\(\mathbf{x} _{{L}},\mathbf{x} _{{Q}} \in {\mathbb {R}}^{3}\) - position of the load and quadrotor in \({\mathcal {F}}_{{\mathcal {I}}}\);
-
2.
\(\mathbf{v} _{{L}},\mathbf{v} _{{Q}} \in {\mathbb {R}}^{3}\) - velocity of the load and quadrotor in \({\mathcal {F}}_{{\mathcal {I}}}\);
-
3.
\(\mathbf{q} \in {\mathbb {S}}^{2}\)- the cable direction in \({\mathcal {F}}_{{\mathcal {I}}}\);
-
4.
\(\varvec{\omega }_{L} \in {\mathbb {R}}^{3} \) - angular velocity of the cable, expressed in \({\mathcal {F}}_{{\mathcal {I}}}\);
-
5.
\(\mathbf{R} \in SO(3)\) - attitude of the quadrotor;
-
6.
\(\varvec{\omega }_{b} \in {\mathbb {R}}^{3}\) - angular velocity of the quadrotor, expressed in \({\mathcal {F}}_{{\mathcal {Q}}}\);
-
7.
\(m_{{Q}},m_{{L}}\) - mass of the quadrotor and the load, respectively;
-
8.
\(\ell \) - length of the cable connecting the load to the quadrotor;
-
9.
\(J_{b}\) - Moment of inertia of the quadrotor about its center of mass expressed in the quadrotor body frame.
The quadrotor and the load position are constrained by the rigid link through
The quadrotor’s four motors can be controlled independently to generate arbitrary torque \(M \in {\mathbb {R}}^3\) and thrust force \(f \in {\mathbb {R}}\) along the quadrotor z-axis, expressed in \(\mathcal {F_{I}}\) as
Additionally, we consider the system to be affected by external disturbances \(\varDelta \) at the quadrotor force level. These considerations result in the overall system dynamics [15]
with \(m_{{T}} = m_{{Q}} + m_{{L}}\).
The following assumption is useful to model and reject force disturbances arising due to offsets in the cable attachment point which depend on the quadrotor attitude.
Assumption 1
The external disturbances \(\varDelta \) are arbitrary, constant in \(\mathcal {F_{Q}}\), and bounded.
The need for boundedness of the disturbance is evident, so as not to require unbounded control action to compensate for them. Although restrictive and not strictly valid in practice, the constancy of disturbances in the quadrotor frame approximates well a torque disturbance induced by the load. Moreover, the proposed controller is robust and is able to reject even slowly time-varying disturbances.
3.1 Problem formulation
Following the introduction of all the mathematical tools and dynamic equations, we formalize the problem in hand.
Problem statement Let the desired load position trajectory be \(\mathbf{x} _{{L}}^{d}(t) \in C^{6}({\mathbb {R}}^{3})\), a function parametrized by \(t \in {\mathbb {R}}_{\ge 0}\) and whose sixth derivative is continuous. The control objective consists in designing a control law for the quadrotor actuations f and M, so that, in closed-loop with the equations of motion (1)–(7), the load position \(\mathbf{x} _{{L}}(t)\) converges to \(\mathbf{x} _{{L}}^{d}(t)\), the quadrotor body x-axis aligns with the desired direction \({\mathbf {y}}^d\), and the overall system is rendered stable.
4 Controller design
From the problem statement, the control objective is to design the quadrotor control inputs \(f \in {\mathbb {R}}\) and \(M \in {\mathbb {R}}^{3}\) in order to achieve the load trajectory tracking goal. This is a non-trivial task as the load cannot be acted upon directly, but instead must be driven through the passive cable connecting it to the quadrotor vehicle. The control design strategy is thus shaped by the following observations:
- \({\mathcal {O}}1\):
-
There is only one pose (load and quadrotor position and cable and quadrotor attitude) compatible with driving the load position and yaw tracking errors to zero. This is a direct consequence of the so-called differentially-flat property of the slung-load dynamic system [33]. In a differentially-flat system, the states and inputs can be directly expressed in terms of the flat outputs (typically the load position and quadrotor yaw angle) and a finite number of their derivatives.
- \({\mathcal {O}}2\):
-
Tracking can be achieved by first designing a PD control force for the translation subsystem (2)–(3). This defines a desired tension on the cable that would stabilize the load position. The component along \(\mathbf{q} \) of this desired tension can be matched using \(\varPi _{q}^{\parallel }(F)\) in (3). The perpendicular component, however, cannot be matched in the same way. The geometry of the slung-load system requires the alignment of q with the desired tension direction, using the term \(\varPi _\mathbf{q }^{\bot }(F)\) in (5), in order to have zero tracking error.
- \({\mathcal {O}}3\):
-
The force F designed based on \({\mathcal {O}}2\) induces a reference for the quadrotor attitude \(\mathbf{r} _{3}\) through (1)
$$\begin{aligned} \mathbf{r} _{3} = - \frac{F}{ \Vert F \Vert } \in {\mathbb {S}}^{2}. \end{aligned}$$Considering the quadrotor heading as another component of the flat output and completing the \(\mathbf{R}\) matrix, it is possible to design a feedback law for the torque M to attain the desired \(\mathbf{R}\) in finite-time, therefore isolating the quadrotor attitude from the cable-load subsystem. This simplifies the control design since the quadrotor attitude dynamics no longer affect the cable nor the load dynamics, and \(\mathbf{R}\) (or F) can be regarded as the input to the cable and the load system. Once the desired \(\mathbf{R} \mathbf{e} _{3}\) direction is attained, after the finite convergence time, the reference control force F can be generated instantly by the quadrotor.
In the next three subsections, we design the control laws for the subsystems (2)–(3), (4)–(5), and (6)–(7). The first section deals with finite-time control strategy for the quadrotor orientation tracking and its stability analysis. The second and third section discuss the stages of cable direction and load position control and the stability of overall interconnected system.
4.1 Feedback design of quadrotor orientation tracking control
The objective is to design a feedback controller for the quadrotor that tracks the desired orientation trajectory \(\mathbf{R}_{d}(t)\), generated by the cable-load subsystem controller, in finite-time. Let \(\mathbf{R}_{e}(t) = \mathbf{R}_{d}^{T}(t)\mathbf{R}(t)\) be the quadrotor attitude error with the desired angular velocity defined as \([\varvec{\omega }_{b}^{d}]^{\wedge } = \mathbf{R}_{d}^{T}{\dot{\mathbf{R}}}_{d}\), and the angular velocity error as
This velocity error has a geometric interpretation since \([\varvec{\omega }_{b}]^{\wedge }\) and \([\varvec{\omega }_{b}^{d}]^{\wedge }\) are the elements of the Lie algebra \({\mathfrak {s}}{\mathfrak {o}}(3)\). Consider two curves \(\mathbf{R}(t),\mathbf{R}_{d}(t) \in SO(3)\) and let \({\dot{\mathbf{R}}}\) and \({\dot{\mathbf{R}}}_{d}\) be their respective velocities, which belong to different tangent spaces and are not directly comparable. In order to compare the velocities we need to express them on the same tangent space, an operation that is achieved through the transport map \(\tau \) [23]. A transport (right) map \(\tau (\mathbf{R},\mathbf{R} _{d})\) transforms \({\dot{\mathbf{R}}}_{d}\) into a vector at \(T_{\mathbf{R}}SO(3)\), by taking the left action by \(\mathbf{R}_{d}^{T}\) to get the Lie algebraic element at \(T_{I}SO(3)\), followed by taking left action by \(\mathbf{R}\) to get the vector isomorphic to Lie algebraic elements. Therefore, the angular velocity error is expressed as
Theorem 1
Consider the reference trajectory \((\mathbf{R}_{d},\varvec{\omega }_{b}^{d})\) with \(\mathbf{R}_{d} \in C^2(SO(3))\) and the quadrotor subsystem dynamics system (6)-(7) in closed-loop with the feedback torque
where L is a positive-definite matrix, \({\mathbf {e}}_{R}= (\sum _{i = 1}^{3} \lambda _{i} \mathbf{R}_{e}^{T}\hat{\mathbf{e }}_{i} \times \hat{\mathbf{e }}_{i})\), \(\phi (\mathbf{R} _{e})= - k_{R} \frac{\varvec{e}_{R}}{(\varvec{e}_{R} \cdot \varvec{e}_{R})^{1-1/p}}\),, \(\mathbf{e }_\omega = \mathbf{e }_{\varvec{\omega }_{b}} - \phi (\mathbf{R}_{e})\), \(1<p<2\), and \(\lambda _{1},\lambda _{2},\lambda _{3}\) are distinct and positive. The resulting closed-loop system is almost globally finite-time stable around \((\mathbf{R}_{d},\varvec{\omega }_{b}^{d})\).
Proof
See “Appendix 1”. \(\square \)
4.2 Load position and attitude tracking
Defining the position and velocity errors as \(\mathbf{e} _{x}=\mathbf{x} _{{L}} - \mathbf{x} _{{L}}^{d}\) and \(\mathbf{e} _{v} = \mathbf{v} _{L} - \mathbf{v} _{L}^{d}\), a stabilizing Proportional-Derivative control for the double integrator system is designed as
where \(k_{x}, k_{v}>0\). Following observation \({\mathcal {O}}2\) leads to consider
where \({\bar{\varDelta }}\) is the estimate of \(\varDelta \), and \({\tilde{\varDelta }} = \varDelta - {\bar{\varDelta }}\) the estimation error. This results in a double integrator for the load position system controlled, along \({\mathbf {q}}\), according to \(F_c\). The estimator dynamics will be designed in the sequel with the goal of mitigating the tracking error arising from using the estimate \({\bar{\varDelta }}\) in the control law instead of the uncertain \({\varDelta }\).
Now, consider the cable direction subsystem with dynamics (4)–(5). To design \(\varPi _\mathbf{q }^{\bot }(F)\), we define a tracking error function on \({\mathbb {S}}^{2}\) as
and, following (\({\mathcal {O}}2\)), we use
as the reference for \(\mathbf{q} \).
The following assumption is introduced as it is valid for any load trajectory of practical interest. Furthermore, it can be rigorously imposed by constraining the reference acceleration \(\dot{\mathbf{v }}_{L}\) for the load, the initial errors (or using error saturation), and using appropriate gains in (9).
Assumption 2
The force \( F_{c} \) is nonzero.
We proceed to calculate the directional derivative of \(\varPhi \) along \(\mathbf{q} \). Let \(P_\mathbf{q }:{\mathbb {S}}^{2} \rightarrow T^{*}_\mathbf{q } {\mathbb {S}}^{2}\) and be the orthogonal projections onto \(T^{*}_\mathbf{q }{\mathbb {S}}^{2}\) and , respectively, where \(T^{*}{\mathbb {S}}^{2}\) is the cotangent bundle of \({\mathbb {S}}^{2}\). Then, for \(\mathbf{q} ,\mathbf{q} ^{d} \in {\mathbb {R}}^{3}\) these projections are given as
Taking the time derivative of (11) leads to
where \(\mathbf{e} _\mathbf{q } = \mathbf{q} ^{d} \times \mathbf{q} \) is the cable direction error, and \(\mathbf{e} _{\varvec{\omega }_{L}} = \varvec{\omega }_{L} + \widehat{\mathbf{q }}^{2} \varvec{\omega }_{L}^{d}\) is the angular velocity error. The so-called differential of \(\varPhi \), defined through \(\frac{d\varPhi }{dt} = d\varPhi \cdot \mathbf{e} _{\varvec{\omega }_{L}}\), is \(d\varPhi = k_{q} \mathbf{e} _\mathbf{q }\). It is immediate to see that \(d\varPhi = 0\) if and only if \(\mathbf{q} = \pm \mathbf{q} ^{d}\), and at the two critical points we have \(\varPhi (\mathbf{q} ^{d},\mathbf{q} ^{d}) = 0\) and \(\varPhi (-\mathbf{q} ^{d},\mathbf{q} ^{d}) = 2k_{q}\), respectively. The Hessian of \(\varPhi \) is \(\text{ Hess }(\varPhi (\mathbf{q} ,\mathbf{q} ^{d})) = 2k_{q}{} \mathbf{q} ^{T}{} \mathbf{q} ^{d}I_{3 \times 3}\), which identifies \(\mathbf{q} ^{d}\) as a minimum, i.e., a stable point, and \(- \mathbf{q} ^{d} \) as a maximum, i.e., an unstable point, for \(\varPhi (\mathbf{q} ,\mathbf{q} ^{d})\)Footnote 2.
For \(\dot{\mathbf{q }} \in T_\mathbf{q }{\mathbb {S}}^{2}\) at point \(\mathbf{q} \) and \(\dot{\mathbf{q }}^{d} \in T_\mathbf{q ^{d}}{\mathbb {S}}^{2}\) at point \(\mathbf{q} ^{d}\), a right transport map \(\tau (\mathbf{q} ,\mathbf{q} ^{d})\) transforms \(\dot{\mathbf{q }}^{d}\) into a vector at \(T_\mathbf{q }{\mathbb {S}}^{2}\) and the error is expressed as
The control input \(\varPi _\mathbf{q }^{\bot }(F)\) is given by PD and feedforward control
with the proportional-derivative (PD) control
and the feedforward control term obtained by taking the total derivative of the transport map \(\tau (\mathbf{q} ,\mathbf{q} ^{d})\) along \(\varvec{\omega }_{L}\) [23](Chapter 11),
The covariant derivative \(\nabla _{\dot{\mathbf{q }}}(\tau \dot{\mathbf{q }}^{d}) \) shows how the transported velocity \(\tau \dot{\mathbf{q }}^{d}\) varies as a function of both \({\mathbf {q}}(t)\) and \(({\mathbf {q}}^{d},\dot{\mathbf{q }}^{d})(t)\). At \(({\mathbf {q}}^{d},\dot{\mathbf{q }}^{d})\) fixed, \(\tau {\mathbf {q}}^{d}\) is defined on \({\mathbb {S}}^{2}\) and its covariant derivative \((\nabla _{\dot{\mathbf{q }}}\tau )\dot{\mathbf{q }}^{d}\) is well-defined on \(T_{q}{\mathbb {S}}^{2}\) using projection; and when \({\mathbf {q}}\) is fixed, \(\tau {\mathbf {q}}^{d}\) is a vector on \(T_{{\mathbf {q}}} {\mathbb {S}}^{2}\). Calculating further, we have
where \(\frac{d}{dt} \big |_{(\cdot )}\) represents taking the time derivative of the expression while keeping \((\cdot )\) fixed with respect to time, and \(\nabla _{\dot{\mathbf{q }}^{d}}\dot{\mathbf{q }}^{d}= \ddot{{\mathbf {q}}}_{d}\) are the dynamics of the reference trajectory \({\mathbf {q}}^{d}\) with \(\mathbf{q} ^{d} \times \nabla _{\dot{\mathbf{q }}^{d}}\dot{\mathbf{q }}^{d} ={\dot{\varvec{\omega }}}_{L}^{d}\). With this, the feedforward term is expressed as
The total force F that must be provided by the quadrotor follows from the combination of (10) and (12)
with \({\bar{\varDelta }}\) obtained from the estimator dynamics in Sect. 4.3.
4.3 Integral action
The adaptive estimator dynamics are designed as
where \(k_{x_{I}}, k_{q_{I}},g_{I} >0\) are the estimator gains. These dynamics lead to an asymptotically stable estimator for disturbances that are constant in \(\mathcal {F_{Q}}\), as stated in Theorem 2. The first term of (14) is responsible for rejecting the disturbance along \(\mathbf{q} \), the cable direction, and the second term is responsible for rejecting the disturbance in the plane normal to \(\mathbf{q} \).
4.4 Stability of the full dynamics
The stabilizing thrust force for the cable and load subsystem dynamics, which culminates in equation (13), is used to define the reference for the quadrotor body z-axis as
Rotations of the quadrotor about this axis are still possible without affecting the validity of the proposed control law. Hence, the quadrotor yaw direction can be seen as a degree-of-freedom to be controlled. Let \(\mathbf{r} _{1}^{d} \in {\mathbb {S}}^{2}\), \(\mathbf{r} _{1}^{d} := \mathbf{R}_{d} \mathbf{r }_{1}^{d}\), be the vector that provides the desired heading direction of the quadrotor. The orientation \(\mathbf{R}_{d}\) that satisfies the control requirements and points the quadrotor, as much as possible, in the desired heading is constructed, for \(\Vert \mathbf{r }_{3}^{d} \times \mathbf{r} _{1}^{d}\Vert \ne 0\), as
Using the control moment M from (8), this desired orientation \(\mathbf{R}_{d}\) is attained in finite time, after which the thrust force is simply given by
We now state the stability properties of the closed-loop system with the proposed quadrotor control laws.
Theorem 2
For a given desired load trajectory \(\mathbf{x} _{{L}}^{d}(t) \in C^{6}({\mathbb {R}}^{3}_{\ge 0})\), a function whose sixth derivative is continuous and parametrized by \(t \in {\mathbb {R}}_{\ge 0}\), consider the slung load system dynamics (1)-(7), the closed-loop control actions (16) and (8), where the desired control force is given by (10), (12), and (13), together with the estimator dynamics (14). Under Assumptions 1 and 2,
with control and estimation gains satisfying the inequalities (22), (24), and (27)–(30),
the quadrotor attitude error dynamics are finite-time stable and the equilibrium point \((\mathbf{R}_{d},\varvec{\omega }_{b}^{d},\mathbf{x} _{{L}}^{d},\mathbf{v} _{L}^{d},\mathbf{q} ^{d}, \dot{\mathbf{q }}^{d})\) is asymptotically stable.
Proof
See “Appendix 1”. \(\square \)
4.5 Performance and tuning
The stability and performance of the proposed controller hinge on matrix Q, defined in (26). The proposed slung-load tracking controller is asymptotically stable if and only if all the eigenvalues of Q are positive, with the magnitude of the eigenvalues adjusting the rate of convergence of the trajectory tracking errors to zero.
Eyeing the main diagonal of (26), choosing higher control gains \(k_{x}\), \(k_v\), \(k_{q}\), \(k_{\omega }\) will lead to a faster transient, bounded only by the physical limits of the vehicle being considered, and \(k_{x_I}\) and \(k_{q_I}\) should be chosen sufficiently low for the conditions of Theorem 2 to be valid. It should be noted that the tracking errors always converge to zero as long as Q is positive definite and the system is stable. Only the convergence rate is affected by tuning the control gains.
It is always possible to obtain stabilizing gains by following the ensuing sequence for their definition: (i) choose high \(k_{x}\) and \(k_v\) gains that mostly influence the dynamic behavior of the translation of the load mass; (ii) choose \(k_{x_I}\) such that (22) and (28) are verified; (iii) choose high \(k_{q}\) and \(k_{q_I}\), affecting the cable dynamics, and verifying simultaneously (24) and (29); (iv) finally, choose high \(k_{\omega }\) such that condition (30) is also verified.
5 Simulation and experimental results
This section presents the numerical simulation of the quadrotor-cable-load system in closed-loop with the proposed load position controller. The load tracks a desired trajectory in 3D space given by
The model parameters, initial states and the control gains are given in Table 1.
A summary of the evolution of the load position and quadrotor attitude errors is presented in Fig. 2, together with the cable direction, and estimator states. The actuation plots for the thrust force and angular velocity are shown in Fig. 3. The fast and finite-time nature of the convergence of the quadrotor attitude error \(\mathbf{R}_{e}\) is clearly visible in the \(V_{{1}}\) plot. Once the quadrotor attitude subsystem converges, the cable-load system tracks the desired 3D trajectory \(\mathbf{x} _{{L}}^{d}\) without introducing additional errors. The cable direction, after a transient of approximately 3 s, tracks \(\mathbf{q} ^{d}\) with minimal error. Furthermore, the load position error \(\mathbf{e} _{x}\) also converges asymptotically to zero and displays a minimal error after about 3 s. Finally, and despite the simulated external disturbances, the load position error converges to zero and the estimate of the external disturbances \({\bar{\varDelta }}\) converges to its actual value.
To experimentally validate the performance of the proposed control algorithms, we used the testbed of the SCORELab of the University of Macau [32]. The testbed uses a Matlab/Simulink environment which integrates the sensors, the control algorithms and the communication with UAV. The vehicle used in the experiment is a Blade 200QX quadrotor, weighing 210g with battery included and had a length of 110 mm from the center of mass to each rotor. The quadrotor is radio controlled and is commanded from the computer through a radio module with a serial port interface. A VICON optical motion capture system [37] consisting of 12 cameras is used together with the markers on the quadrotor and on the load to get their respective positions and attitude measurements. The motion capture system provides sub-millimetric positioning for markers on the quadrotor and on the load, and operates at 100Hz, whereas the RF transmitter operates at 45 Hz.
A block diagram of the overall architecture of the plant is depicted in Fig. 4. The VICON block estimates data from the motion capture system and outputs the quadrotor and load state; then, the computation of control signals is performed from measured states in the controller block and sends them to the RF module; and actuation signals are ultimately relayed to the quadrotor through radio transmission.
The motion capture system accurately located the markers and obtain the position and attitude measurements for the quadrotor \((\mathbf{x} _{{Q}}, \mathbf{R})\) and position measurements for the load \(\mathbf{x} _{{L}}\). It outputs position for both the vehicle and the load with the velocities being subsequently obtained using Euler backward differences. The process is repeated to estimate the accelerations, and a low-pass filter is applied to attenuate the high-frequency noise arising from the numeric differentiation. The experiments are performed on a quadrotor whose actuation signals are thrust and angular velocity commands. The finite-time inner-loop controller responsible for angular velocity is reduced to
whereas the outer-loop controller for the load-cable subsystem remains the same, with the quadrotor attitude and thrust references given by (15), (13), using (16). The cable direction and angular velocity are computed from the position and velocity measurements of the quadrotor and load as
The dynamic model (2)–(7) and the proposed controller are only valid when the cable is under tension.
For the experimental results presented, the quadrotor starts at rest from a hovering position with the cable vertically aligned and it remains taut during the totality of the maneuver.
5.1 Three-dimensional trajectory tracking
For the first experiment, we track the same reference trajectory (17) as for the numerical simulation, to assess the performance and robustness of the proposed controller. The control gains used for the trajectory generator are displayed in Table 2.
A 3D view of actual and reference trajectories is shown in Fig. 5, and the detailed evolutions of the tracking errors, and states are shown in Figs. 6, 7, 8, 9, and 10. Looking at \(V_{{1}}\) in Fig. 7, the error norm of the quadrotor attitude converges close to zero in approximately 10 s with a root mean error of 0.0018 for \(t>12\,\)s. The load position tracks the desired trajectory \(\mathbf{x} _{{L}}^{d}\), with a root mean square error of 4.3 cm for \(t>30\) s. Figures 9 and 10 illustrate the evolution of the quadrotor and cable attitude over time. The actual attitudes track well the desired attitudes, even in the initial instants. A longer transient is observable in the x-axis position error, with repercussions in \({\mathbf {e}}_{q_y}\), \(\theta _y\) and \(q_x\), but eventually fades out after approximately 10 s. The adaptation of the disturbance estimate \({\bar{\varDelta }}\) to the actual disturbances is shown in Fig. 6, with the estimate stabilizing after 60 s and leading to the convergence of the position error to zero. In our experimental setup, the disturbances are primarily due to the cable not being attached to the exact center of mass of the quadrotor, with repercussions mostly in \({\bar{\varDelta }}_x\) and \({\bar{\varDelta }}_y\), and due to mismatch between the requested and the actual thrust input, captured by \({\bar{\varDelta }}_z\). A video of the experimental test is available in [25].
5.2 Circular trajectory tracking with desired yaw
The second experiment consists in tracking a reference trajectory at high speed, for which the aerodynamic forces become increasingly important and result in large attitude errors. In these circumstances, the controller performance improves if the desired heading \(\theta _{z}\) (or \(\mathbf{r} _{1}^{d}\)) is chosen appropriately so as to minimize the error coupling dynamics, instead of remaining constant. The reference trajectory is set up as a circle defined by
and the desired heading direction \(\mathbf{r} _{1}^{d} \in {\mathbb {S}}^{2}\) chosen so as to keep the vehicle pointing in the direction tangent to the trajectory.
The 3D plot of the reference and actual circular trajectories is shown in Fig. 11, and the error plots are shown in Figs. 12, 13, 14, 15 and 16. Figure 13 depicts the estimate adapting to the disturbances. The estimate along the x and y body axes compensates for the constant torque that the load creates due to weight imbalances. The estimate along the z axis maintains the altitude error at zero by compensating for the loss of thrust force during the flight due to battery discharge. The inclusion of the estimation in control law also helps in generating the desired roll and pitch shown in Fig. 15. Analyzing Figs. 13 and 14, we notice that the attitude converges to \(\mathbf{R} _{d}\) in about 3 s with a root mean square error in steady state of 0.003 and the load position tracks the desired circular trajectory \(\mathbf{x} _{{L}}^{d}\) with a root mean square error of 8.7 cm for \(t>20\) s. The aggressiveness of the trajectory and performance of the proposed controller can be accessed by observing the desired and actual roll-pitch-yaw angles of the quadrotor shown in Fig. 15 and the actual and desired cable directions presented Fig. 16. Notice the large variation in amplitude for \(q_x\) and \(q_y\) as well as the large roll angle \(\theta _x\). A video of payload following the circular trajectory is available in [25].
6 Conclusion
A nonlinear geometric control strategy was designed for a quadrotor system transporting a point-mass payload suspended from a cable. The complete system is underactuated and differentially flat. An inner-outer loop control strategy was developed to track the reference load trajectory and heading direction of the quadrotor. A finite-time controller was proposed for quadrotor attitude tracking that simplifies the overall control design, as it isolates the quadrotor dynamics from the cable and load dynamics. A proportional-derivative tracking control force was designed for the load translational subsystem and, by normalizing this force as desired cable direction, a tracking control is proposed for the cable attitude subsystem. The control algorithms enable the slung load transportation system to display agile maneuverability while adapting in real time to constant (and slowly time-varying) disturbances. The control algorithms, which are developed in a coordinate-free setting, achieve finite-time almost global tracking of the quadrotor attitude, and asymptotic tracking for load position and cable direction. The numerical simulations and successful experimental results suggest that the proposed control algorithm is a feasible and practical solution for aerial load transportation.
The main open question that remains to be solved is the integration of motion planning and load tracking such that Assumption 2 can be removed and is instead ensured by the controller itself. The use of hybrid systems for relaxing Assumption 2 by combining multiple controllers depending on the existence or not of tension in the cable is already being explored by some authors. Additional challenges arise when output feedback solutions are considered for control instead of full-state feedback. This is an important issue since the cable angle and especially its angular velocity are difficult to accurately measure in practice.
Availability of data and material
Not applicable
Notes
A function whose critical points are all non-degenerate is called a Morse function [20]. The modified trace function has four isolated critical points.
Referring from the Morse theory, Hessian of \(\varPhi \) is positive definite for \(\varPhi (\mathbf{q} ,\cdot ) < 2k_{p}\). As a consequence, for all \( L < 2 k_{p}\), the L-sublevel set of \(\varPhi \) contains no critical points other than \(\mathbf{q} ^{d}\).
References
Abaunza, H., Castillo, P., Victorino, A., Lozano, R.: Dual quaternion modeling and control of a quad-rotor aerial manipulator. J. Intel. Robot. Syst. 88(2–4), 267–283 (2017)
Bernard, M., Kondak, K., Maza, I., Ollero, A.: Autonomous transportation and deployment with aerial robots for search and rescue missions. J. Field Robot. 28(6), 914–931 (2011)
Bhat, S.P., Bernstein, D.S.: Continuous finite-time stabilization of the translational and rotational double integrators. IEEE Trans. Autom. Control 43(5), 678–682 (1998)
Bhat, S.P., Bernstein, D.S.: Finite-time stability of continuous autonomous systems. SIAM J. Control. Optim. 38(3), 751–766 (2000)
Bohn, J., Sanyal, A.K.: Almost global finite-time stabilization of rigid body attitude dynamics using rotation matrices. Int. J. Robust Nonlinear Control 26(9), 2008–2022 (2016)
Brust, M.R., Strimbu, B.M.: A networked swarm model for uav deployment in the assessment of forest environments. In: Proceedings of the IEEE Tenth International Conference on Intelligent Sensors, Sensor Networks and Information Processing (ISSNIP), pp. 1–6 (2015)
Cabecinhas, D., Cunha, R., Silvestre, C.: A globally stabilizing path following controller for rotorcraft with wind disturbance rejection. IEEE Trans. Control Syst. Technol. 23(2), 708–714 (2015)
Cabecinhas, D., Cunha, R., Silvestre, C.: A trajectory tracking control law for a quadrotor with slung load. Automatica 106, 384–389 (2019)
Cunha, R., Silvestre, C., Hespanha, J.: Output-feedback control for stabilization on SE (3). Syst. Control Lett. 57(12), 1013–1022 (2008)
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 IEEE 53rd Annual Conference on Decision and Control (CDC), pp. 6149–6154 (2014)
Dhadekar, D.D., Sanghani, P.D., Mangrulkar, K.K., Talole, S.E.: Robust control of quadrotor using uncertainty and disturbance estimation. J. Intell. Robot. Syst. 101(3), 60 (2021). https://doi.org/10.1007/s10846-021-01325-1
Di Lucia, S., Tipaldi, G.D., Burgard, W.: Attitude stabilization control of an aerial manipulator using a quaternion-based backstepping approach. In: 2015 European Conference on Mobile Robots (ECMR), pp. 1–6. IEEE (2015)
Fink, J., Michael, N., Kim, S., Kumar, V.: Planning and control for cooperative manipulation and transportation with aerial robots. Int. J. Robot. Res. 30(3), 324–334 (2011)
Geisert, M., Mansard, N.: Trajectory generation for quadrotor based systems using numerical optimal control. In: Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), pp. 2958–2964 (2016)
Holm, D.D., Marsden, J.E., Ratiu, T.S.: The Euler-Poincaré equations and semidirect products with applications to continuum theories. Adv. Math. 137(1), 1–81 (1998)
Huang, M., Xian, B., Diao, C., Yang, K., Feng, Y.: Adaptive tracking control of underactuated quadrotor unmanned aerial vehicles via backstepping. In: Proceedings of the American Control Conference (ACC), pp. 2076–2081 (2010)
Jiang, Q., Kumar, V.: The inverse kinematics of cooperative transport with multiple aerial robots. IEEE Trans. Rob. 29(1), 136–145 (2013)
Kanistras, K., Martins, G., Rutherford, M.J., Valavanis, K.P.: Survey of unmanned aerial vehicles (UAVs) for traffic monitoring. In: Handbook of Unmanned Aerial Vehicles, pp. 2643–2666. Springer (2015)
Klausen, K., Fossen, T.I., Johansen, T.A.: Nonlinear control of a multirotor uav with suspended load. In: 2015 International Conference on Unmanned Aircraft Systems (ICUAS), pp. 176–184. IEEE (2015)
Koditschek, D.E.: The application of total energy as a lyapunov function for mechanical control systems. Contemp. Math. pp. 131–157 (1989)
Lee, T.: Geometric control of quadrotor UAVS transporting a cable-suspended rigid body. IEEE Trans. Control Syst. Technol. 26(1), 255–264 (2018)
Lee, T., Leok, M., McClamroch, N.H.: Nonlinear robust tracking control of a quadrotor UAV on se (3). Asian J. Control 15(2), 391–408 (2013)
Lewis, A.D., Bullo, F.: Geometric Control of Mechanical Systems. Springer, New York (2005)
Liu, H., Xi, J., Zhong, Y.: Robust attitude stabilization for nonlinear quadrotor systems with uncertainties and delays. IEEE Trans. Industr. Electron. 64(7), 5585–5594 (2017). https://doi.org/10.1109/TIE.2017.2674634
3D and Circular trajectories Video: https://score.fst.umac.mo/videos/trajectory-tracking-and-finite-time-stabilization-of-a-slung-load-transportation/
Murray, R.M., Rathinam, M., Sluis, W.: Differential flatness of mechanical control systems: A catalog of prototype systems. In: ASME International Mechanical Engineering Congress and Exposition (1995)
Palunko, I., Cruz, P., Fierro, R.: Agile load transportation: safe and efficient load manipulation with aerial robots. IEEE Robot. Autom. Mag. 19(3), 69–79 (2012)
Palunko, I., Fierro, R.: Adaptive control of a quadrotor with dynamic changes in the center of gravity. In: Proceedings 18th IFAC World Congress, vol. 18, pp. 2626–2631 (2011)
Pizetta, I.H.B., Brandão, A.S., Sarcinelli-Filho, M.: Modelling and control of a quadrotor carrying a suspended load. In: Workshop on Research, Education and Development of Unmanned Aerial Systems (RED-UAS), pp. 249–257 (2015)
Pizetta, I.H.B., Brandão, A.S., Sarcinelli-Filho, M.: Cooperative quadrotors carrying a suspended load. In: Proceedings of the International Conference on Unmanned Aircraft Systems (ICUAS), pp. 1049–1055 (2016)
Sariyildiz, E., Oboe, R., Ohnishi, K.: Disturbance observer-based robust control and its applications: 35th anniversary overview. IEEE Trans. Industr. Electron. 67(3), 2042–2053 (2020). https://doi.org/10.1109/TIE.2019.2903752
SCORELab: https://score.fst.umac.mo/
Sreenath, K., Lee, T., Kumar, V.: Geometric control and differential flatness of a quadrotor uav with a cable-suspended load. In: Proceedings of the IEEE 52nd Annual Conference on Decision and Control (CDC), pp. 2269–2274 (2013)
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 IEEE International Conference on Robotics and Automation (ICRA), pp. 4888–4895 (2013)
Tayebi, A., McGilvray, S.: Attitude stabilization of a VTOL quadrotor aircraft. IEEE Trans. Control Syst. Technol. 14(3), 562–571 (2006)
Trachte, J.E., Toro, L.F.G., McFadyen, A.: Multi-rotor with suspended load: System dynamics and control toolbox. In: Proceedings of the IEEE Aerospace Conference, pp. 1–9 (2015)
VICON: Motion capture system. https://www.vicon.com/
Viswanathan, S.P., Sanyal, A.K., Izadi, M.: Integrated guidance and nonlinear feedback control of underactuated unmanned aerial vehicles in SE (3). In: Proceedings of the AIAA Guidance, Navigation, and Control Conference, p. 1044 (2017)
Yu, G., Cabecinhas, D., Cunha, R., Silvestre, C.: Nonlinear backstepping control of a quadrotor-slung load system. IEEE/ASME Trans. Mechatron. 24(5), 2304–2315 (2019). https://doi.org/10.1109/TMECH.2019.2930211
Acknowledgements
This work was supported by the Macao Science and Technology Development Fund under Grant FDCT/0031/2020/AFJ, by the University of Macau, Macao, China, under Project MYRG2018-00198-FST, by the Fundação para a Ciência e a Tecnologia (FCT) through LARSyS - FCT Project UIDB/50009/2020 and by FCT Scientific Employment Stimulus grant CEECIND/04199/2017. This work is partially supported by the Science and Engineering Research Board (SERB) of the Department of Science and Technology (DST), India under the research grant IIT Palakkad Technology IHub Foundation Technology Development Grant IPTIF/TD/IP/005.
Funding
This work was supported by the Macao Science and Technology Development Fund under Grant FDCT/0031/2020/AFJ, by the University of Macau, Macao, China, under Project MYRG2018-00198-FST, by the Fundação para a Ciência e a Tecnologia (FCT) through LARSyS - FCT Project UIDB/50009/2020 and by FCT Scientific Employment Stimulus grant CEECIND/04199/2017. This work is partially supported by the Science and Engineering Research Board (SERB) of the Department of Science and Technology (DST), India under the research grant “Technology Innovation Hub on Intelligent Collaborative Systems” (TIH-ICS) at IIT Palakkad.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflicts of interest
The authors declare that they have no conflict of interest.
Code availability
Not applicable
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendices
A Proof of Theorem 1
Let \(V_{1}: SO(3) \longrightarrow {\mathbb {R}}\) be the attitude error function constructed as
where \(K_{p}=\text{ diag }(\lambda _{1},\lambda _{2},\lambda _{3})\) and \(\lambda _{1},\lambda _{2},\lambda _{3}\) are positive and distinct. Taking the time derivative of \(V_{1}\), we get
where \(\text{ skew }(A) = \frac{1}{2}(A - A^{T})\). The differential of \(V_{1}\) with respect to \(\mathbf{R}_{e}\) is denoted by \(\mathbf{R}_{e}\) and defined through
Using the identity \(\text{ trace }({\widehat{x}}{\widehat{y}}) = - 2 x^{T} y\) for any \(x,y \in {\mathbb {R}}^{3}\), and the breve map notation from Sect. 2, it follows that
Adding and subtracting the finite-time converging virtual control law
allows to rewrite the Lyapunov time derivative as
where p is the reaching time parameter and \(0< \frac{1}{p} \le 1\). We now define a new backstepping error as
corresponding to the error between the actual state \(\mathbf{e} _{\varvec{\omega }_{b}}\) and virtual control \(\phi (\mathbf{R}_{e})\). The initial system (6)–(7) in \((\mathbf{R}_{e},\mathbf{e} _\omega )\) coordinates is,
where \({\dot{\phi }}(\mathbf{R}_{e})\) is calculated from (18) as
and \(\dot{\mathbf{e }}_{R}\) is calculated from \(\mathbf{e} _{R}\) as
Therefore, using the error states, (19) becomes
Continuing with the backstepping methodology, we define a composite Lyapunov function as
The time derivative of \(V_{2}\) is
and, in closed-loop system with control law (8), becomes
a negative semi-definite function. The set where \({\dot{V}}_{2}=0\) is given by \(E \times \{\varvec{e}_{\omega }=0\}\) where
is the set of critical points of \(\dot{V}_1\). From [20](Lemma 4.1), we know that \(V_{1}\) is a Morse function taking values on \({\mathbb {R}}^{+}\), vanishing only at \(\mathbf{R}_{e}=I_{3\times 3}\) with the other three elements of E as non-degenerate critical points. Prior research on attitude stabilization and tracking on SO(3) [20, 9, 22, 23], proves that the three non-identity equilibria form stable closed submanifolds of SO(3) and their complement is open and dense in SO(3). Applying similar arguments to [5], we conclude that the closed-loop error system reaches, in finite time, a neighborhood of the origin \((I_{3 \times 3}, {\mathbf {0}})\) where the inequality
is valid, resulting in
Using the inequality \((a+b)^{\alpha } \le a^{\alpha } + b^{\alpha }\), the time derivative can be expressed as a fractional exponent of the original function,
implying a finite-time convergence within
where \(V_{e}\) is the Lyapunov function value when entering the neighborhood of the origin where (20) is valid. Hence, for all initial conditions
where \({\mathcal {M}}\) is the union of all the stable closed manifolds, the solutions of the closed-loop system converge to \( (I_{3 \times 3},0)\). Noting that \(SO(3) \backslash {\mathcal {M}}\) is open and dense in SO(3) and using (21) we can state that the quadrotor attitude closed-loop system with the proposed control laws is almost globally finite-time stable [5, 38] and, equivalently, the closed-loop of the quadrotor attitude system (6)-(7) is finite-time stable around \((\mathbf{R}_{d},\varvec{\omega }_{b}^{d})\).
B Proof of Theorem 2
The proposed attitude controller in Sect. 4.1 through (8) ensures \(\mathbf{R}(t) = \mathbf{R}_{d}(t) \) for \(t \ge T\), where \(T>0\) is finite. More explicitly, we obtain \(\mathbf{r} _{3} =\mathbf{R} \mathbf{e} _{3}= \mathbf{r }_{3}^{d}\) for \(t \ge T\), hence from (13) and (16) we have
Since there is no finite-time escape of the load-cable subsystem, without loss of generality, we can assume \(t > T\) and F can be used a control input for the load-cable subsystem.
We perform the stability analysis for the load-cable subsystem in parts, designing tentative Lyapunov function for the different subsystems, and then combining them in a single Lyapunov function with provable negative semi-definite time derivative.
Part 1: Consider a tentative positive definite Lyapunov function for the load position tracking as
with \(k_{x}\) a positive definite matrix and
Taking the derivative along the dynamics (3) and in closed-loop with the control laws (9) and (10), an rearranging terms we get
Part 2: Define a candidate error function for the cable attitude as
From the relation
the lower bound
can be established leading to (23) being positive definite for
The time derivative of the tentative Lyapunov function is
Using the dynamics (3) and substituting the control from (12) we have,
Part 3: Let us now define a Lyapunov function for the estimator error
with \(g_{I}>0\). Taking the time derivative in closed-loop with the estimator dynamics (14) leads to
Notice that the estimator dynamics (14) were carefully chosen to cancel out the unknown terms in \(V_\mathbf{x }\) and \({\dot{V}}_{L}\) that depend on the estimation error.
Part 4: Finally, the definite Lyapunov function for the load-cable subsystem can be written as
a positive-definite function under conditions (22) and (24). Its time derivative, gathering the previously computed \(\dot{V}_\mathbf{x }\), \(\dot{V}_{L}\), and \(\dot{V}_{\varDelta }\), is established as
with \(Q = \)
a matrix that can be rendered positive definite with appropriate choice of gains and
The time derivative of the Lyapunov function is negative semi-definite if
which can be achieved with sufficiently high gains \(k_{x}\), \(k_v\), \(k_{q}\), \(k_{\omega }\) and sufficiently low cross-term gains \(k_{x_I}\) and \(k_{q_I}\). From Theorem 1, the quadrotor attitude tracks the desired attitude (15) in finite time and, since there is not finite-time escape of the states, the force F generated by the quadrotor can be taken as an input for the load and cable subsystems. Let us consider the Lyapunov function (25), which is positive definite on conditions (22) and (24). At this point, we first assume \(\dot{V}\) has non-positive derivative, limiting the tracking errors, in particular,
With these established, we can derive a bound on the control force as
and select control and estimation gains such that (27)–(30) are verified, rendering matrix Q positive definite and ensure the function \({\dot{V}}\) is actually negative semi-definite for all time. The tracking errors \(\left( \mathbf{e }_{x}, \mathbf{e }_{v}, \mathbf{e }_\mathbf{q }, \mathbf{e }_{\varvec{\omega }_{L}} \right) \) are then bounded and, from the system dynamics and control laws, so are their closed-loop derivatives, implying that \({\ddot{V}}\) is bounded. In other words, all the state errors are smooth and proper, i.e., \((\mathbf{e} _{x},\mathbf{e} _{v},\mathbf{e} _\mathbf{q },\mathbf{e} _{\varvec{\omega }_{L}}, {\tilde{\varDelta }}) \in L_{2}\) and the estimators \(\varPi _\mathbf{q }^{\parallel }({\bar{\varDelta }}),\varPi _\mathbf{q }^{\bot }({\bar{\varDelta }})\) are uniformly continuous and bounded since \({\tilde{\varDelta }}\) is bounded, from V, which implies \((\dot{\mathbf{e }}_{x},\dot{\mathbf{e }}_{v},\mathbf{e} _{\dot{\mathbf{q }}}, \dot{\mathbf{e }}_{\omega _{L}}) \in L_{\infty }\). From Barbalat’s Lemma, all the tracking errors and their time derivatives asymptotically converge to zero. The convergence of all errors to zero results in all states tracking their desired values with the possible exception of the cable direction, which has zero error for \(\mathbf{q} = \pm \mathbf{q} ^{d}\). A local analysis of the closed-loop system, for initial errors such that \((\mathbf{x} _{L}^{d},\mathbf{v} _{L}^{d},\mathbf{q} ^{d},\varvec{\omega }_{L}^{d})\) is the only reachable equilibrium point, leads to the conclusion that the closed-loop slung load system is asymptotically stable around the desired equilibrium, that is, the system is asymptotically stable around \((\mathbf{x} _{L}^{d},\mathbf{v} _{L}^{d},\mathbf{q} ^{d},\varvec{\omega }_{L}^{d})\).
Rights and permissions
About this article
Cite this article
Gajbhiye, S., Cabecinhas, D., Silvestre, C. et al. Geometric finite-time inner-outer loop trajectory tracking control strategy for quadrotor slung-load transportation. Nonlinear Dyn 107, 2291–2308 (2022). https://doi.org/10.1007/s11071-021-07026-6
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11071-021-07026-6