Preprint
Article

This version is not peer-reviewed.

Adaptive Backstepping Control of an Unmanned Aerial Manipulator

A peer-reviewed article of this preprint also exists.

Submitted:

26 August 2025

Posted:

27 August 2025

You are already at the latest version

Abstract
This paper presents an adaptive backstepping feedback control design for an unmanned aerial manipulator (UAM) which consists of an unmanned aerial vehicle (UAV) with attached robotic arm. The effect of the arm is treated as a disturbance force and torque to the UAV and as parametric uncertainty in the UAV inertial parameters. The proposed adaptive law guarantees disturbance rejection assuming constant parameters and disturbances. In practice, this assumption includes the case of fixed arm configurations. To validate the control design, numerical simulations are performed, where a realistic pick-and-place scenario is presented.
Keywords: 
;  ;  ;  

1. Introduction

Research on unmanned aerial vehicles (UAVs) has recently focussed on tasks involving manipulation of the environment. Normally, this interaction is achieved by mounting an “arm” to the UAV so that various manipulation tasks can be achieved. The combined UAV and arm system is referred to as an unmanned aerial manipulator (UAM). Applications such as non-destructive testing of infrastructure require the UAM to keep a sensor in contact with the surface being inspected. The sensor must follow a desired trajectory on the surface and a predefined force must be applied.
Initial work on UAM motion control tends to focus on single-link arms which are rigidly attached to the UAV. UAM force and motion control dates back to [1], where the “arm” consists of a single rod rigidly attached to the UAV. An additional propeller is used to apply force to a surface. A heuristically designed proportional-integral-derivative (PID) controller structure is proposed, and no stability result is given for the force/motion control problem. Work in [2] provides a rigorous stability result using a nonlinear output feedback. The work assumes the single-fixed link arm does not affect the CoM of the system. The dynamics of the end-effector position is decomposed into tangential and normal directions. Error stability requires the beam to be attached "above" the UAV CoM. This work is extended in [3] where it is shown that the end-effector can generate any contact force if it is strictly located either below or above the UAV CoM. The article [4] studies the problem of UAV interaction with the environment without an arm. A’’ cascade controller allows the UAV to "push" against objects using pads attached to the UAV frame. The stability analysis is based on a planar quasi-static motion assumption. This apparatus is improved in [5] where tilted propellers are used. A heuristic PID control is proposed without a formal stability result.
Feedback control for multi-DoF arm UAMs can be classified into two main approaches: (i) separate controllers for the UAV and the arm, and (ii) full UAM control. In Approach (i), the coupling forces/torques acting on the UAV due to the arm are treated as a disturbance [6,7,8,9,10,11]. Approach (i) generally leads to a simpler subsystem-at-a-time design. Approach (ii) views the entire UAM as a single coupled dynamics [12]. This approach is challenging as the entire dynamics is very complex and complexity dramatically increases with the number of arm DoF [13,14,15,16,17]. Hence, this paper follows Approach (i) and compensates for the effect of the arm by introducing uncertain inertial parameters and force/torque disturbances into a UAV dynamics.
Approach (i) is widely found in the literature e.g., [6,7,8]. The work of [6] considers a UAV with a 4-DoF arm. For the UAV inner-loop, i.e., attitude dynamics, a disturbance observer based on [18] is used to estimate the effect of the arm on the UAV. With these estimates, feedback control is designed for the inner-loop that compensates for the disturbance. The outer-loop is treated separately. The effect of coupling between the loops on closed-loop stability is not considered. To validate their approach on a real UAM, the UAV outer-loop controller is taken from [19]. Work in [20] uses model reference control for the UAV outer-loop only. The UAV mass is taken as the unknown parameter. The effect of coupling forces and torques due to the arm on the UAV is not considered. Unlike [6] and [20], our work rejects the arm disturbance while considering the full UAV dynamics. The article [21] considers a UAV with a 3-DoF arm. It proposes a solution for constant setpoint regulation using a Luenberger observer to estimate the torque disturbance due to the arm. Our work is not limited to regulation and designs a trajectory-tracking feedback. We remark that the literature on robust UAV control, i.e., without an arm, is related to Approach (i). Examples of this include [22,23].
In this paper, our control objective is trajectory tracking of the UAV CoM and yaw. The effect of the arm on the UAV is modelled in two ways: it adds a force and torque disturbance to the UAV and introduces parametric uncertainty e.g., arm motion alters the UAV CoM and inertia matrix. We are inspired by the work of [24,25] on UAV motion control. These contributions only consider the force and torque disturbances, while all the inertial parameters are assumed known. Our work also allows for unknown inertial UAV parameters. We propose an adaptive backstepping control scheme that is capable of compensating force/torque disturbances and parameter uncertainty. This work is based on the first author’s thesis [26].
This paper is organized as follows. Section 2 presents the model of the UAM. Section 3 presents model assumptions, formulates the control problem, proposes a control design, and performs stability analysis. Numerical simulations are presented in Section 4. Finally, Section 5 concludes the paper.

2. Modelling

Consider a UAM consisting of a UAV with attached robotic arm. In this section, we present the UAV model and introduce a force/torque disturbance and parametric uncertainty to model the effect of the arm. The UAV model neglects the effects of motor dynamics, rotor drag, and the rotor gyroscopic effects. The details on modelling these higher-order effects are discussed in [27,28].
Consider Figure 1. Let N denote an inertial navigation frame with basis vectors { n 1 , n 2 , n 3 } pointing north, east, down, respectively. Let B denote a body-fixed frame whose origin coincides with the UAV CoM and whose basis vectors are { b 1 , b 2 , b 3 } and point forward, right, and downward, relative to the UAV. The position of the origin of B relative to the origin of N is denoted, p R , which is expressed in N . The linear velocity the UAV CoM, v R , is given by
p ˙ = v .
The orientation of B relative to N is described by the rotation matrix R SO ( 3 ) . The angular velocity ω R 3 of the UAV relative to N expressed in B is related to R by
R ˙ = R S ( ω ) ,
where
S ( x ) = 0 x 3 x 2 x 3 0 x 1 x 2 x 1 0 , x = x 1 x 2 x 3 R 3 .
The UAV input is total propeller thrust u R > 0 which creates a force in b 3 direction, and torque τ R 3 on B . Letting m R denote UAV mass and J R 3 × 3 denote UAV inertia, the UAV dynamics is
m v ˙ = m g e 3 F , J ω ˙ = S ( ω ) J ω + τ
where F = u R e 3 , e 3 = [ 0 , 0 , 1 ] , and g is gravitational acceleration. We remark that (3) models the UAV in isolation from the arm. To account for the effect of the arm, we introduce disturbance force d f R 3 and torque d τ R 3 that can be interpreted as a change in input due to the arm. Further, we consider inertial parameters a R and J as uncertain:
p ˙ = v ,
v ˙ = g e 3 a u R e 3 + d f ,
R ˙ = R S ( ω ) ,
J ω ˙ = S ( ω ) J ω + τ + d τ .
Further details on the UAM model simplification are in [26] Section 2.2.4. 2.2.5.
Note that J in (Section 2) is a positive definite symmetric matrix with six unique entries. These entries of J define the vector J v = [ J x x , J y y , J z z , J x y , J y z , J z x ] R 6 . Using J v we can re-write the S ( ω ) J ω term in (4d) as
S ( ω ) J ω = Φ ( ω ) J v
where Φ ( ω ) R 3 × 6 . In model (Section 2) we take a, J v , d f and d τ as unknown constants and denote a ^ R > 0 , J ^ v R 6 , d ^ f R 3 , and d ^ τ R 3 as their estimates. Estimation errors are defined as a ˜ = a a ^ , J ˜ v = J v J ^ v , d ˜ f = d f d ^ f , and d ˜ τ = d τ d ^ τ .

3. Control Design

This section presents the control design for the UAM model (4). Figure 2 shows the structure of the proposed control, where the arm is controlled separately using a PID control. In this figure, we denote α as the arm’s joint angles and their desired reference as α d . The proposed control compensates for the effect of the arm using an adaptive backstepping design method. The control objective is trajectory tracking for UAV CoM position p and UAV heading ψ . We first present the design for tracking p and then extend it for tracking ψ .

3.1. Position Tracking Control

Let p d , v d R 3 represent the desired UAV CoM position and velocity, respectively. We define error coordinate z 1 = p p d . Taking its time-derivative gives
z ˙ 1 = p ˙ p ˙ d = v v d .
For this dynamics, consider the Lyapunov function V 1 = 1 2 z 1 z 1 . Taking its time-derivative gives
V ˙ 1 = z 1 z ˙ 1 = z 1 ( v v d ) . ( from ( 6 ) )
Adding and subtracting k 1 z 1 z 1 to V ˙ 1 , where k 1 > 0 is a controller gain,we obtain
V ˙ 1 = k 1 z 1 2 + z 1 ( v v d + k 1 z 1 ) .
From (7) we define z 2 = v v d + k 1 z 1 so we can rewrite (6) as
z ˙ 1 = k 1 z 1 + z 2 .
Taking the time-derivative of z 2 , substituting the translational velocity dynamics from (4b), using a = a ^ + a ˜ , and d f = d ^ f + d ˜ f , we arrive at
z ˙ 2 = g e 3 a ^ u R e 3 + d ^ f v ˙ d k 1 2 z 1 + k 1 z 2 a ˜ u R e 3 + d ˜ f .
For the above dynamics, consider the Lyapunov function V 2 = V 1 + 1 2 z 2 z 2 . Its time derivative is
V ˙ 2 = V ˙ 1 + z 2 z ˙ 2
In this expression, substituting for V ˙ 1 from (7) and for z ˙ 2 from (9), and simplifying, we arrive at
V ˙ 2 = k 1 z 1 2 + z 2 ( g e 3 a ^ u R e 3 + d ^ f v ˙ d k 1 2 z 1 + k 1 z 2 a ˜ u R e 3 + d ˜ f ) .
Adding and subtracting k 2 z 2 z 2 in the above equation, where k 2 > 0 is a controller gain we obtain
V ˙ 2 = k 1 z 1 2 k 2 z 2 2 + z 2 ( g e 3 a ^ u R e 3 + d ^ f v ˙ d + ( 1 k 1 2 ) z 1 + ( k 1 + k 2 ) z 2 ) a ˜ z 2 u R e 3 + d ˜ f z 2 .
In the above equation, we define the coefficient of z 2 as
z 3 = g e 3 a ^ u R e 3 + d ^ f v ˙ d + ( 1 k 1 2 ) z 1 + ( k 1 + k 2 ) z 2 ,
which can be rearranged as
z 3 z 1 k 2 z 2 = g e 3 a ^ u R e 3 + d ^ f v ˙ d k 1 2 z 1 + k 1 z 2 .
Substituting this into (9) gives
z ˙ 2 = z 3 z 1 k 2 z 2 a ˜ u R e 3 + d ˜ f .
The time-derivative of (11) is
z ˙ 3 = a ^ ˙ u R e 3 a ^ u ˙ R e 3 a ^ u R ˙ e 3 + d ^ ˙ f v ¨ d + ( 1 k 1 2 ) z ˙ 1 + ( k 1 + k 2 ) z ˙ 2 .
Substituting (8) and (12) into the last equation, we get
z ˙ 3 = a ^ ˙ u R e 3 a ^ u ˙ R e 3 a ^ u R S ( ω ) e 3 + d ^ ˙ f v ¨ d + ( 1 k 1 2 ) ( k 1 z 1 + z 2 ) + ( k 1 + k 2 ) ( z 3 z 1 k 2 z 2 a ˜ u R e 3 + d ˜ f ) .
Simplifying leads us to
z ˙ 3 = a ^ ˙ u R e 3 a ^ u ˙ R e 3 a ^ u R S ( ω ) e 3 + d ^ ˙ f v ¨ d + ( k 1 ( k 1 2 1 ) k 2 k 1 ) z 1 + ( 1 k 2 ( k 1 + k 2 ) k 1 2 ) z 2 + ( k 1 + k 2 ) z 3 ( k 1 + k 2 ) a ˜ u R e 3 + ( k 1 + k 2 ) d ˜ f .
For the above dynamics, consider the Lyapunov function V 3 = V 2 + 1 2 z 3 z 3 whose time-derivative is
V ˙ 3 = k 1 z 1 2 k 2 z 2 2 + z 2 z 3 + z 3 z ˙ 3 a ˜ z 2 u R e 3 + d ˜ f z 2 .
Substituting (13) in the last equation leads to
V ˙ 3 = k 1 z 1 2 k 2 z 2 2 + z 3 ( z 2 a ^ ˙ u R e 3 a ^ u ˙ R e 3 a ^ u R S ( ω ) e 3 + d ^ ˙ f v ¨ d + ( k 1 ( k 1 2 1 ) k 2 k 1 ) z 1 + ( 1 k 2 ( k 1 + k 2 ) k 1 2 ) z 2 + ( k 1 + k 2 ) z 3 ( k 1 + k 2 ) a ˜ u R e 3 + ( k 1 + k 2 ) d ˜ f ) a ˜ z 2 u R e 3 + d ˜ f z 2 .
Adding and subtracting k 3 z 3 z 3 from the last expression, where k 3 > 0 is a controller gain, and simplifying gives
V ˙ 3 = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 ( a ^ ˙ u R e 3 a ^ u ˙ R e 3 a ^ u R S ( ω ) e 3 + d ^ ˙ f v ¨ d + ( k 1 ( k 1 2 1 ) k 2 k 1 ) z 1 + ( 2 k 2 ( k 1 + k 2 ) k 1 2 ) z 2 + ( k 1 + k 2 + k 3 ) z 3 ) a ˜ ( z 2 + ( k 1 + k 2 ) z 3 ) u R e 3 + d ˜ f ( z 2 + ( k 1 + k 2 ) z 3 ) .
Now, consider a modified Lyapunov function
V 3 b = V 3 + 1 2 λ a ˜ 2 + 1 2 k d f d ˜ f d ˜ f ,
where k d f > 0 , λ > 0 are controller gains. The time-derivative of V 3 b is
V ˙ 3 b = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 ( a ^ ˙ u R e 3 a ^ u ˙ R e 3 a ^ u R S ( ω ) e 3 + d ^ ˙ f v ¨ d + ( k 1 ( k 1 2 1 ) k 2 k 1 ) z 1 + ( 2 k 2 ( k 1 + k 2 ) k 1 2 ) z 2 + ( k 1 + k 2 + k 3 ) × z 3 ) a ˜ ( z 2 + ( k 1 + k 2 ) z 3 ) u R e 3 + d ˜ f ( z 2 + ( k 1 + k 2 ) z 3 ) + 1 λ a ˜ a ˜ ˙ + 1 k d f d ˜ f d ˜ ˙ f .
With some simplification, we get
V ˙ 3 b = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 ( a ^ ˙ u R e 3 a ^ u ˙ R e 3 a ^ u R S ( ω ) e 3 + d ^ ˙ f v ¨ d + ( k 1 ( k 1 2 1 ) k 2 k 1 ) z 1 + ( 2 k 2 ( k 1 + k 2 ) k 1 2 ) z 2 + ( k 1 + k 2 + k 3 ) z 3 ) + a ˜ λ a ˜ ˙ ( z 2 + ( k 1 + k 2 ) z 3 ) u R e 3 + d ˜ f 1 k d f d ˜ ˙ f + z 2 + ( k 1 + k 2 ) z 3 .
We define σ 1 , σ 2 R 3 to re-write (15):
σ 1 = ( k 1 ( k 1 2 1 ) k 2 k 1 ) z 1 + ( 2 k 2 ( k 1 + k 2 ) k 1 2 ) z 2 + ( k 1 + k 2 + k 3 ) z 3 v ¨ d ,
σ 2 = z 2 + ( k 1 + k 2 ) z 3 .
Since d f is constant, we have d ˜ ˙ f = d ^ ˙ f . Substituting this equation in (15) and using the definitions of σ 1 , σ 2 , we obtain
V ˙ 3 b = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 ( a ^ ˙ u R e 3 a ^ u ˙ R e 3 a ^ u R S ( ω ) e 3 + d ^ ˙ f + σ 1 ) + a ˜ ( 1 λ a ˜ ˙ σ 2 u R e 3 ) + d ˜ f ( 1 k d f d ^ ˙ f + σ 2 ) .
Adding and subtracting k d f z 3 σ 2 yields
V ˙ 3 b = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 ( a ^ ˙ u R e 3 a ^ u ˙ R e 3 a ^ u R S ( ω ) e 3 + d ^ ˙ f k d f σ 2 + k d f σ 2 v ¨ d + σ 1 ) + a ˜ ( 1 λ a ˜ ˙ σ 2 u R e 3 ) + d ˜ f ( 1 k d f d ^ ˙ f + σ 2 ) ,
and simplification gives
V ˙ 3 b = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 ( a ^ ˙ u R e 3 a ^ u ˙ R e 3 a ^ u R S ( ω ) e 3 + σ 1 + k d f σ 2 ) k d f z 3 ( 1 k d f d ^ ˙ f + σ 2 ) + a ˜ ( 1 λ a ˜ ˙ σ 2 u R e 3 ) + d ˜ f ( 1 k d f d ^ ˙ f + σ 2 ) .
Observe
σ 1 + k d f σ 2 = R R ( σ 1 + k d f σ 2 ) = R I R ( σ 1 + k d f σ 2 ) = R ( I e 3 e 3 + e 3 e 3 ) R ( σ 1 + k d f σ 2 ) = R ( I e 3 e 3 ) R + R e 3 e 3 R ( σ 1 + k d f σ 2 ) .
Hence,
V ˙ 3 b = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 ( a ^ ˙ u R e 3 a ^ u ˙ R e 3 + R e 3 e 3 R ( σ 1 + k d f σ 2 ) a ^ u R S ( ω ) e 3 + R ( I e 3 e 3 ) R ( σ 1 + k d f σ 2 ) ) k d f z 3 ( 1 k d f d ^ ˙ f + σ 2 ) + a ˜ ( 1 λ a ˜ ˙ σ 2 u R e 3 ) + d ˜ f ( 1 k d f d ^ ˙ f + σ 2 ) .
Let’s factor out R e 3 from the first three terms inside the parentheses of the z 3 coefficient and equate them to zero. In other words, let’s impose a ^ u ˙ + a ^ ˙ u e 3 R ( σ 1 + k d f σ 2 ) = 0 , which gives
a ^ u ˙ + a ^ ˙ u = e 3 R ( σ 1 + k d f σ 2 ) .
Therefore,
V ˙ 3 b = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 R ( a ^ u S ( ω ) e 3 + ( I e 3 e 3 ) R ( σ 1 + k d f σ 2 ) ) + ( d ˜ f k d f z 3 ) ( 1 k d f d ^ ˙ f + σ 2 ) + a ˜ ( 1 λ a ˜ ˙ σ 2 u R e 3 ) .
The term a ^ u S ( ω d ) e 3 in (19) can be interpreted as a virtual control, whose desired value is taken as
a ^ u S ( ω d ) e 3 = ( I e 3 e 3 ) R ( σ 1 + k d f σ 2 ) .
Since S ( ω d ) e 3 = S ( e 3 ) ω d , the last equation can be rewritten as
a ^ u S ( e 3 ) ω d = ( I e 3 e 3 ) R ( σ 1 + k d f σ 2 ) .
Extracting individual components of ω d , we have
ω d 1 = e 2 a ^ u ( I e 3 e 3 ) R ( σ 1 + k d f σ 2 ) ,
ω d 2 = e 1 a ^ u ( I e 3 e 3 ) R ( σ 1 + k d f σ 2 ) ,
while (19) becomes
V ˙ 3 b = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 a ^ u R S ( ω ) e 3 + a ^ u R S ( ω d ) e 3 + ( d ˜ f k d f z 3 ) ( 1 k d f d ^ ˙ f + σ 2 ) + a ˜ ( 1 λ a ˜ ˙ σ 2 u R e 3 ) .
Simplifying the last expression gives
V ˙ 3 b = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 a ^ u R S ( e 3 ) ω ω d + ( d ˜ f k d f z 3 ) ( 1 k d f d ^ ˙ f + σ 2 ) + a ˜ ( 1 λ a ˜ ˙ σ 2 u R e 3 ) .
Now, consider the following parameter update laws,
d ^ ˙ f = k d f σ 2 , a ^ ˙ = λ σ 2 u R e 3 ,
Substituting these adaptive laws in (23), we have
V ˙ 3 b = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 a ^ u R S ( e 3 ) ω ω d .
Let the error in angular velocity be z 4 = ω ω d . Using (4d), we can write
J z ˙ 4 = J ω ˙ J ω ˙ d = S ( ω ) J ω + τ + d τ J ω ˙ d .
Define
ω ¯ d = 1 a ^ u ( a ^ ˙ u + a ^ u ˙ ) ( I e 3 e 3 T ) ω d + 1 a ^ u S ( e 3 ) S ( ω ) R T ( σ 1 + k d f σ 2 ) 1 a ^ u S ( e 3 ) R T ( σ ¯ 1 + k d f σ ¯ 2 ) + ω ˙ d 3 e 3 ,
Using J v instead of J, we have
J ω ¯ d = Ψ ( ω ¯ d ) J v ,
where
Ψ ( ω ¯ d ) = ω ¯ d 1 0 0 ω ¯ d 2 0 ω ¯ d 3 0 ω ¯ d 2 0 ω ¯ d 1 ω ¯ d 3 0 0 0 ω ¯ d 3 0 ω ¯ d 2 ω ¯ d 1 ,
Therefore, (26) can be rewritten as
J z ˙ 4 = ( Φ ( ω ) + Ψ ( ω ˙ d ) ) J v + τ + d τ .
Substituting J v = J ^ v + J ˜ v and d τ = d ^ τ + d ˜ τ in (28) gives
J z ˙ 4 = ( Φ ( ω ) + Ψ ( ω ˙ d ) ) ( J ^ v + J ˜ v ) + τ + d ^ τ + d ˜ τ .
Now, consider the Lyapunov function
V 4 = V 3 b + 1 2 z 4 J z 4 + 1 2 k d τ d ˜ τ d ˜ τ + 1 2 J ˜ v Γ 1 J ˜ v ,
where k d τ > 0 , Γ R 6 × 6 > 0  are controller gains. Differentiating the above equation with respect to time gives
V ˙ 4 = V ˙ 3 b + z 4 J z ˙ 4 + 1 k d τ d ˜ τ d ˜ ˙ τ + J ˜ v Γ 1 J ˜ ˙ v .
Substituting (25) and (29) into (31) gives
V ˙ 4 = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 + z 3 a ^ u R S ( e 3 ) z 4 + z 4 ( ( Φ ( ω ) + Ψ ( ω ˙ d ) ) ( J ^ v + J ˜ v ) + τ + d ^ τ + d ˜ τ ) + 1 k d τ d ˜ τ d ˜ ˙ τ + J ˜ v Γ 1 J ˜ ˙ v .
Let k 4 > 0 be a controller gain. Adding and subtracting k 4 z 4 z 4 in the above expression, factoring z 4 , we obtain
V ˙ 4 = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 k 4 z 4 2 + z 4 ( a ^ u R b n S ( e 3 ) z 3 + k 4 z 4 ( Φ ( ω ) + Ψ ( ω ˙ d ) ) J ^ v + τ + d ^ τ ) + J ˜ v ( Γ 1 J ˜ ˙ v ( Φ ( ω ) + Ψ ( ω ˙ d ) ) z 4 ) + d ˜ τ ( 1 k d τ d ˜ ˙ τ + z 4 ) .
At this point, we assign the expression for input τ :
τ = a ^ u R b n S ( e 3 ) z 3 k 4 z 4 + ( Φ ( ω ) + Ψ ( ω ˙ d ) ) J ^ v d ^ τ ,
and define the parameter update laws
J ^ ˙ v = Γ ( Φ ( ω ) + Ψ ( ω ˙ d ) ) z 4 , d ^ ˙ τ = k d τ z 4 .
Substituting (34) and (35) in (33), and recalling that J v and d τ are constants, we get
V ˙ 4 = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 k 4 z 4 2 ,
which is negative semi-definite.
Theorem 1. 
Consider the UAM dynamics (4) and assume a ˙ = 0 , d ˙ f = 0 , d ˙ τ = 0 , J ˙ v = 0 , and u > 0 , a ^ > 0 . Given a smooth time-varying trajectory p d ( t ) , feedback law (34) with k 1 , k 2 , k 3 , k 4 > 0 , and parameter update laws (24), (35), then the tracking error z = [ z 1 , z 2 , z 3 , z 4 ] is globally asymptotically convergent to 0 and parameter estimates a ^ , d ^ f , d ^ τ and J ^ v are bounded.
Proof. 
Consider the quadratic positive definite Lyapunov function V 4 in (30). According to [29] Lemma 4.3, there exist two positive definite functions that lower and upper bound V 4 . The time-derivative of V 4 after substitution of (34), (24), (35), is a negative semi-definite function. Using Barbalat’s lemma [29] Theorem 8.4, we can conclude z 0 as t , and parameter and disturbance estimates a ^ , d ^ f , d ^ τ and J ^ v are bounded. Since V 4 is radially unbounded, we conclude that the equilibrium point z = 0 is globally asymptotically stable. □

3.2. Position and Yaw Tracking Control

Thus far, the adaptive backstepping control design achieves trajectory tracking for p. Since the UAV has 4 control inputs, we can extend the control to track UAV heading, which is practically relevant for manipulation tasks. We identify UAV heading with yaw angle ψ ( π , π ] . Let the desired UAV yaw trajectory be ψ d ( π , π ] and define tracking error z ψ = ψ ψ d . Let
V ψ = 1 2 z ψ 2 .
Thus,
V ˙ ψ = z ψ z ˙ ψ = z ψ ( ψ ˙ ψ ˙ d )
It can be computed that ψ ˙ = e 3 W 1 ω , where for 3-2-1 Euler angles parameterization, we have
W = 1 0 sin θ 0 cos ϕ sin ϕ cos θ 0 sin ϕ cos ϕ cos θ
and θ , ϕ represent UAV pitch, roll, respectively. Therefore, we can write
V ˙ ψ = z ψ z ˙ ψ = z ψ ( e 3 W 1 ω ψ ˙ d )
Adding and subtracting k ψ z ψ 2 , where k ψ > 0 is a control gain, gives
V ˙ ψ = k ψ z ψ 2 + z ψ ( k ψ z ψ + e 3 W 1 ω ψ ˙ d )
Define
e 3 W 1 ω d = k ψ z ψ + ψ ˙ d
which gives
ω d 3 = c θ c ϕ ( k ψ z ψ + ψ ˙ d + s ϕ c θ ω d 2 ) ,
where ω d 2 is given in (22). Substituting (39) in (38) results in
V ˙ ψ = k ψ z ψ 2 + z ψ ( e 3 W 1 ( ω ω d ) ) = k ψ z ψ 2 + z 4 z ψ W 1 e 3 .
We are now ready to state the stability result for the position-yaw tracking controller.
Theorem 2. 
Consider the UAM dynamics (4) and assuming a ˙ = 0 , d ˙ f = 0 , d ˙ τ = 0 and J ˙ v = 0 and u > 0 , a ^ > 0 . Given a smooth trajectory p d ( t ) , ψ d ( t ) , control (18) and
τ = z ψ W T e 3 a ^ u R b n S ( e 3 ) z 3 k 4 z 4 + ( Φ ( ω ) + Ψ ( ω ˙ d ) ) J ^ v d ^ τ
with k 1 > 0 , k 2 > 0 , k 3 > 0 , k 4 > 0 , and parameter update laws (24),(35), then tracking error z = [ z 1 , z 2 , z 3 , z 4 , z ψ ] converges asymptotically to 0 while estimates a ^ , d ^ f , d ^ τ and J ^ v are bounded.
Proof. 
Consider the Lypunov function V 4 , ψ = V 4 + V ψ  with time derivative
V ˙ 4 , ψ = V ˙ 4 + V ˙ ψ , 1 .
Substituting for V ˙ 4 using (33), using parameter update laws (35), and the expression for V ˙ ψ in (41), gives
V ˙ 4 , ψ = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 k 4 z 4 2 k ψ z ψ 2 + z 4 z ψ W 1 e 3 + z 4 ( a ^ u R b n S ( e 3 ) z 3 + k 4 z 4 ( Φ ( ω ) + Ψ ( ω ˙ d ) ) J ^ v + τ + d ^ τ )
Substituting (42) gives
V ˙ 4 , ψ = k 1 z 1 2 k 2 z 2 2 k 3 z 3 2 k 4 z 4 2 k ψ z ψ 2
which is negative semi-definite. As in the proof of Theorem 1, we conclude z 0 as t  and parameters remain bounded. □
Remark 1. 
The controllers presented in (34) and (42) depend on ω ˙ d , however, the above derivation gives expression for ω d . The value of ω ˙ d can be obtained numerically by low-pass filtered finite difference. The algebraic expression for ω d depends on d ˜ f which is not known. As well, the unknown inertia vector J v in the angular velocity dynamics makes the stability result difficult to prove. Work in [26] provides further details for alternate solutions to this problem.

4. Simulation Results

This section presents numerical simulations using MATLAB Simscape Multibody to validate our control design. The files to generate these simulations can be found at https://github.com/ANCL/UAM_control. A multibody simulation is necessary to avoid the complexity of simulating the closed-loop in a traditional state-space format. The UAM used in the simulation is shown in Figure 3. The arm is a 3-link 2-DoF manipulator with two revolute joints. Link 1 is attached to the CoM of the UAV and rotates in the b 1 b 3 plane about the origin of B . Link 2 is a revolute joint which also rotates in the same plane. Link 3 is fixed to Link 2 and acts as a payload mass. The arm parameters are given in Table 2. The UAV parameters are given in Table 1. We consider three simulations: a figure-8 desired position with fixed and moving arm cases, and a pick and place operation.
Table 1. UAV parameters.
Table 1. UAV parameters.
Parameter Value Parameter Value
m 1.6 k g J x x , J y y 0.03 k g   m 2
J z z 0.05 k g   m 2 J x y , J z x , J y z 0.0 k g   m 2
Table 2. Arm parameters.
Table 2. Arm parameters.
Parameter Link 1 Link 2 Link 3
Joint Type Revolute Revolute Fixed
Mass ( k g ) 0.1 0.1 0.1
Length ( m ) 0.2 0.3 0.1
Inertia ( k g m 2 ) [ 7.508 , 7.533 , 0.0417 ] × 10 4 [ 7.508 , 7.533 , 0.0417 ] × 10 4 [ 1.667 , 1.667 , 1.667 ] × 10 4

4.1. Figure-8 Reference Trajectory

For the figure-8 trajectory, in addition to the coupling forces and torques due to the arm, we consider a constant external disturbance force of [ 0.3 , 0.3 , 0.3 ] N } acting at the UAV CoM. The controller gains used for all simulations are in Table 3. Initial conditions are p ( 0 ) = [ 2 , 2 , 0 ] m , v ( 0 ) = 0 m / s , η ( 0 ) = 0 rad and ω ( 0 ) = 0 rad / s , a ^ ( 0 ) = 1 0.7 m , and J ^ v ( 0 ) = 0.6 J v i.e., we consider a 30% error in mass and a 40% error in inertia initially. The initial conditions for the disturbances are d ^ f ( 0 ) = d ^ τ ( 0 ) = 0 .
Figure 4a–f present the simulation results for the fixed arm case α 1 = α 2 = 0 where the arm is locked in the b 3 direction. The position tracking errors in Figure 4b converge to a small neighbourhood of 0. Estimates a ^ , d ^ f , d ^ τ , J ^ v remain bounded. These estimates are shown in Figure 4c–e. We observe that in steady-state these parameters are time-varying due to the time-varying reference trajectory. That is, the UAV must vary its attitude to track the position trajectory, and this creates a time-varying disturbance. Increasing controller gains leads to faster tracking error convergence and smaller ultimate error bounds caused by time-varying disturbances.Figure 4f shows the control inputs.
The simulation results for the moving arm case are given in Figure 5a–f. The arm motion is taken as α 1 ( t ) = π 3 sin ( π t ) and α 2 ( t ) = 3 π 2 t . Figure 5b shows the UAV CoM position errors, which admit small oscillations around the origin. Relative to the fixed arm case, we observe larger error in steady-state. However, from a practical perspective, the error is not significant. The estimated parameters and disturbances are bounded and shown in Figure 5c–e. As in the fixed arm case, these parameters are time-varying in steady state, and large variations are observed. Figure 5f shows the control inputs.
We now present a practical pick and place motion where the UAM takes off to a target position, extends its arm, picks up a payload, flies to a desired location, and places the payload at the desired location. Multiple “table” landmarks are created in MATLAB Simscape Multibody that correspond to the various locations of the task. A small cubic payload of mass 0.1 k g and dimension 0.1 m is attached to the end-effector. The UAV CoM start location is p ( 0 ) = [ 2 , 2 , 0 ] m . The first and second desired UAV CoM positions and yaw are denoted Location 1 and Location 2, respectively. Location 1 is p d 1 = [ 1.4379 , 2.0000 , 1.4121 ] m , ψ d 1 = 0   rad and Location 2 is p d 2 = [ 2 , 1.4379 , 0.9121 ] m , ψ d 2 = π / 2   rad . When picking up the payload, the UAV position is lowered using a function h ( t 0 ) = [ 0 , 0 , 0.1 sin ( π ( t 0 ) / 5 ) ) ] . Table 4 shows the desired trajectory for the UAV and arm. The Home configuration for the arm is selected to be α 1 = π / 4 , α 2 = 3 π / 4 . The desired values of p and ψ are shown in Figure 6a. The position errors are given in Figure 6b. The figures label each phase of the task. Evidently, the figures show tracking error is asymptotically convergent as expected by the theory. In this task, the assumptions of Theorem 2 hold as desired position and arm configuraiton is eventualy constant. Hence, this simulation case illustrates a practical case where assumptions hold.

5. Conclusion

In this paper, we have presented a control design for a UAM consisting of a UAV and multi-DoF robotic arm. The design is based on a UAV model that accounts for the arm’s effect by including torque and force disturbances and parametric uncertainty. An adaptive backstepping control law is presented that achieves UAV CoM position and yaw tracking when disturbances and parameters are constant. Numerical simulations demonstrate that bounded tracking error results when disturbances and parameters are varying. A practical pick and place task illustrates a case where tracking error converges. Future work involves indoor and output experimental validation of the control with an open source platform as in [30]. An intermediate step for this validation is software-in-the-loop testing that includes various non-idealities such as actuator saturation, sampling effects, state estimation, and rotor drag [31].

References

  1. Albers, A.; Trautmann, S.; Howard, T.; Frietsch, M.; Sauter, C. Semi-autonomous flying robot for physical interaction with environment. In Proceedings of the 2010 IEEE Conference on Robotics, Automation and Mechatronics, June 2010, pp. 441–446. [CrossRef]
  2. Nguyen, H.; Lee, D. Hybrid force/motion control and internal dynamics of quadrotors for tool operation. In Proceedings of the 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems, Nov 2013; pp. 3458–3464. [Google Scholar] [CrossRef]
  3. Nguyen, H.N.; Ha, C.; Lee, D. Mechanics, control and internal dynamics of quadrotor tool operation. Automatica 2015, 61, 289–301. [Google Scholar] [CrossRef]
  4. Mersha, A.Y.; Stramigioli, S.; Carloni, R. Variable impedance control for aerial interaction. In Proceedings of the 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems, Sep. 2014; pp. 3435–3440. [Google Scholar] [CrossRef]
  5. Papachristos, C.; Alexis, K.; Tzes, A. Efficient force exertion for aerial robotic manipulation: Exploiting the thrust-vectoring authority of a tri-tiltrotor UAV. In Proceedings of the 2014 IEEE International Conference on Robotics and Automation (ICRA), May 2014; pp. 4500–4505. [Google Scholar] [CrossRef]
  6. Kim, S.; Choi, S.; Kim, H.; Shin, J.; Shim, H.; Kim, H.J. Robust Control of an Equipment-Added Multirotor Using Disturbance Observer. IEEE Transactions on Control Systems Technology 2018, 26, 1524–1531. [Google Scholar] [CrossRef]
  7. Jimenez-Cano, A.E.; Martin, J.; Heredia, G.; Ollero, A.; Cano, R. Control of an aerial robot with multi-link arm for assembly tasks. In Proceedings of the 2013 IEEE International Conference on Robotics and Automation, May 2013; pp. 4916–4921. [Google Scholar] [CrossRef]
  8. Korpela, C.; Orsag, M.; Pekala, M.; Oh, P. Dynamic stability of a mobile manipulating unmanned aerial vehicle. In Proceedings of the 2013 IEEE International Conference on Robotics and Automation, May 2013; pp. 4922–4927. [Google Scholar] [CrossRef]
  9. Kannan, S.; Olivares-Mendez, M.A.; Voos, H. Modeling and Control of Aerial Manipulation Vehicle with Visual sensor. IFAC Proceedings Volumes 2013, 46, 303–309. [Google Scholar] [CrossRef]
  10. Kannan, S.; Alma, M.; Olivares-Mendez, M.A.; Voos, H. Adaptive control of Aerial Manipulation Vehicle. In Proceedings of the 2014 IEEE International Conference on Control System, Nov 2014, Computing and Engineering (ICCSCE 2014); pp. 273–278. [Google Scholar] [CrossRef]
  11. Khalifa, A.; Fanni, M.; Ramadan, A.; Abo-Ismail, A. Modeling and control of a new quadrotor manipulation system. In Proceedings of the 2012 First International Conference on Innovative Engineering Systems, Dec 2012; pp. 109–114. [Google Scholar] [CrossRef]
  12. Samadikhoshkho, Z.; Ghorbani, S.; Janabi-Sharifi, F.; Zareinia, K. Nonlinear control of aerial manipulation systems. Aerospace Science and Technology 2020, 104, 105945. [Google Scholar] [CrossRef]
  13. Lippiello, V.; Ruggiero, F. Exploiting redundancy in Cartesian impedance control of UAVs equipped with a robotic arm. In Proceedings of the 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, Oct 2012; pp. 3768–3773. [Google Scholar] [CrossRef]
  14. Lippiello, V.; Ruggiero, F. Cartesian Impedance Control of a UAV with a Robotic Arm. In Proceedings of the 10th International IFAC Symposium on Robot Control; 2012; pp. 704–709. [Google Scholar]
  15. Kim, S.; Choi, S.; Kim, H.J. Aerial manipulation using a quadrotor with a two DOF robotic arm. In Proceedings of the 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems, Nov 2013; pp. 4990–4995. [Google Scholar] [CrossRef]
  16. Yang, H.; Lee, D. Dynamics and control of quadrotor with robotic manipulator. In Proceedings of the 2014 IEEE International Conference on Robotics and Automation (ICRA), May 2014; pp. 5544–5549. [Google Scholar] [CrossRef]
  17. Korpela, C.; Orsag, M.; Oh, P. Towards valve turning using a dual-arm aerial manipulator. In Proceedings of the 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems, Sep. 2014; pp. 3411–3416. [Google Scholar] [CrossRef]
  18. Lee, K.; Back, J.; Choy, I. Nonlinear disturbance observer based robust attitude tracking controller for quadrotor UAVs. International Journal of Control, Automation and Systems 2014, 12, 1266–1275. [Google Scholar] [CrossRef]
  19. Bouabdallah, S.; Siegwart, R. Backstepping and Sliding-mode Techniques Applied to an Indoor Micro Quadrotor. In Proceedings of the Proc. IEEE Int. Conf. on Robotics and Automation. IEEE; 2005. [Google Scholar] [CrossRef]
  20. Baraban, G.; Sheckells, M.; Kim, S.; Kobilarov, M. Adaptive Parameter Estimation for Aerial Manipulation. In Proceedings of the Proceedings of the American Control Conference, 2020, pp. [CrossRef]
  21. Alvarez-Munoz, J.; Marchand, N.; Guerrero-Castellanos, J.F.; Tellez-Guzman, J.J.; Escareno, J.; Rakotondrabe, M. Rotorcraft with a 3DOF Rigid Manipulator: Quaternion-based Modeling and Real-time Control Tolerant to Multi-body Couplings. International Journal of Automation and Computing 2018, 15, 547–558. [Google Scholar] [CrossRef]
  22. Petrlík, M.; Báča, T.; Heřt, D.; Vrba, M.; Krajník, T.; Saska, M. A robust UAV system for operations in a constrained environment. IEEE Robotics and Automation Letters 2020, 5, 2169–2176. [Google Scholar] [CrossRef]
  23. Wang, Y.; Lu, Q.; Ren, B. Wind turbine crack inspection using a quadrotor with image motion blur avoided. IEEE Robotics and Automation Letters 2023, 8, 1069–1076. [Google Scholar] [CrossRef]
  24. Moeini, A.; Lynch, A.; Zhao, Q. Disturbance Observer-based Nonlinear Control of a Quadrotor UAV. Adv. Control Appl. 2019, 2, 1–20. [Google Scholar] [CrossRef]
  25. Moeini, A.; Rafique, M.A.; Xue, Z.; Lynch, A.F.; Zhao, Q. Disturbance Observer-Based Integral Backstepping Control for UAVs. In Proceedings of the 2020 International Conference on Unmanned Aircraft Systems (ICUAS); 2020; pp. 382–388. [Google Scholar]
  26. Rafique, M.A. Adaptive Nonlinear Control for Unmanned Aerial Vehicles: Visual Servoing and Aerial Manipulation. Ph.d. thesis, University of Alberta, Edmonton, Alberta, Canada, 2022. [CrossRef]
  27. Bangura, M. Aerodynamics and Control of Quadrotors. PhD thesis, College of Engineering and Computer Science, The Australian National University, 2017.
  28. Bouabdallah, S. Design and control of quadrotors with application to autonomous flying. PhD thesis, Ecole Polytechnique Federale de Luasanne, Lausanne, Switzerland, 2007.
  29. Khalil, H.K. Nonlinear Systems, 3 ed.; Prentice Hall: Upper Saddle River, NJ, 2002. [Google Scholar]
  30. Jiang, Z.; Yu, Y.; Lynch, A. Nonlinear Motion Control of a Multirotor Slung Load System: Experimental Results. In Proceedings of the American Control Conference (ACC); 2024; pp. 2851–2857. [Google Scholar] [CrossRef]
  31. Lawati, M.A.; Zhang, Z.; Yan, E.; Lynch, A.F. Nonlinear Control of a Multi-Drone Slung Load System. In Proceedings of the American Control Conference (ACC); 2025; pp. 1989–1996. [Google Scholar]
Figure 1. Diagram of a quadrotor with modelling notation.
Figure 1. Diagram of a quadrotor with modelling notation.
Preprints 173955 g001
Figure 2. The proposed UAM controller structure. The control of the UAV and arm are decoupled.
Figure 2. The proposed UAM controller structure. The control of the UAV and arm are decoupled.
Preprints 173955 g002
Figure 3. UAM Configuration.
Figure 3. UAM Configuration.
Preprints 173955 g003
Figure 4. Results for fixed arm configuration ( α 1 = α 2 = 0 ).
Figure 4. Results for fixed arm configuration ( α 1 = α 2 = 0 ).
Preprints 173955 g004
Figure 5. Results for the moving arm configuration.
Figure 5. Results for the moving arm configuration.
Preprints 173955 g005
Figure 6. Pick and place application results: (a) UAV pose and (b) position errors.
Figure 6. Pick and place application results: (a) UAV pose and (b) position errors.
Preprints 173955 g006
Table 3. Control Gains
Table 3. Control Gains
Parameter Value Parameter Value
k 1 0.4 k 2 0.5
k 3 0.5 k 4 7
k d f 1 λ 3
Γ 0.001 k d τ 5
k ψ 1
Table 4. Object pick and place sequence
Table 4. Object pick and place sequence
Time t Desired Position p d Desired Yaw ψ d Arm configuration Cube Location
0 p d 1 ψ d 1 Home Table 1
20 p d 1 ψ d 1 Extending Table 1
27 p d 1 + h ( t 27 ) ψ d 1 Extended Table 1
29 p d 1 + h ( t 27 ) ψ d 1 Extended UAM
32 p d 1 ψ d 1 Retracting UAM
40 p d 1 + p d 2 p d 1 1 + exp ( ( t 45 ) ) ψ d 2 1 + exp ( ( t 45 ) ) Home UAM
60 p d 2 ψ d 2 Extending UAM
67 p d 2 + h ( t 67 ) ψ d 2 Extending UAM
70 p d 2 + h ( t 67 ) ψ d 2 Extended Table 2
73 p d 2 ψ d 2 Retracting Table 2
80 [ 0 , 0 , 0 ] T 0 Home Table 2
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.
Copyright: This open access article is published under a Creative Commons CC BY 4.0 license, which permit the free download, distribution, and reuse, provided that the author and preprint are cited in any reuse.
Prerpints.org logo

Preprints.org is a free preprint server supported by MDPI in Basel, Switzerland.

Subscribe

Disclaimer

Terms of Use

Privacy Policy

Privacy Settings

© 2025 MDPI (Basel, Switzerland) unless otherwise stated