Next Article in Journal
Graph-Density-Aware Joint Energy-Latency Optimization in Multi-UAV IoT Networks Using Dueling Deep Q-Network
Previous Article in Journal
Energy-Aware Adaptive Communication Topology with Edge-AI Navigation for UAV Swarms in GNSS-Denied Environments
Previous Article in Special Issue
Real-Time UAV-Based Oil Pipeline and Visual Anomaly Detection Using YOLOv26n: A Dataset and Edge-Deployment Study
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Hybrid Geometric Computed Torque Control of a Quadrotor with an Attached 2-DOF Robotic Arm

by
Stamatina C. Barakou
1,2,*,
Costas S. Tzafestas
1,3 and
Kimon P. Valavanis
2
1
School of Electrical and Computer Engineering, National Technical University of Athens, 15773 Athens, Greece
2
Department of Electrical and Computer Engineering, University of Denver, Denver, CO 80210, USA
3
Institute of Robotics, Athena Research Center, 15125 Athens, Greece
*
Author to whom correspondence should be addressed.
Drones 2026, 10(4), 274; https://doi.org/10.3390/drones10040274
Submission received: 24 February 2026 / Revised: 7 April 2026 / Accepted: 8 April 2026 / Published: 10 April 2026
(This article belongs to the Special Issue Autonomy Challenges in Unmanned Aviation)

Highlights

What are the main findings?
  • A hybrid geometric-computed torque controller that preserves the full and coupled 8-DOF Euler–Lagrange dynamics and reduces end-effector tracking error by 46% and joint tracking error by up to 66% compared to decoupled PD control.
  • The hybrid architecture resolves the underactuation problem without requiring mass matrix approximations by leveraging the geometric controller for desired attitude computation and the computed torque controller for coupled dynamics compensation.
What are the implications of the main findings?
  • Accounting for inertial coupling between the quadrotor base and manipulator is essential for precise aerial manipulation, particularly during simultaneous base and arm motion.
  • The proposed hybrid framework provides a practical control architecture that can be integrated with existing geometric flight controllers, enabling improved manipulation accuracy for real-world aerial manipulation platforms.

Abstract

This research presents a hybrid geometric computed torque control method for an aerial manipulation system composed of a quadrotor UAV and a 2-DOF planar manipulator. The fully coupled system’s dynamic model is derived following the Euler–Lagrange (E-L) formulation. The proposed control architecture leverages the geometric controller provided by the RotorS simulator as a high-level quadrotor trajectory tracking module. Tracking reference commands are generated using the geometric SE(3) position controller, which computes desired translational and angular accelerations from position/velocity and attitude/angular rate errors, respectively, serving as input to the low-level computed torque controller that explicitly accounts for the coupled 8-DoF aerial manipulator system dynamics. The desired generalized acceleration vector q ¨ des combines quadrotor translational and rotational acceleration commands with a PD-based joint acceleration command for the attached manipulator. The computed torque controller produces generalized forces for the coupled system, which are subsequently separated into quadrotor forces and moments and manipulator joint torques. The resulting quadrotor forces and moments are mapped to rotor speeds using the standard RotorS control allocation matrix, while the manipulator joints are controlled at the torque level via ROS built-in effort controllers. Extensive simulated experiments demonstrate the effectiveness of the coupled hybrid approach compared to decoupled control strategies, showing significant improvements in tracking accuracy and dynamic response.

1. Introduction

Unmanned Aerial Vehicle (UAV) research and development has expanded significantly in the last two decades. Passive applications include, for example, search and rescue [1] and fire monitoring [2], among many others. However, a multitude of more advanced applications require active environmental interaction, such as transmission line inspection [3] and assembly operations [4], which include precise manipulation capabilities beyond traditional navigation and control.
Aerial manipulation [5] addresses these challenges, utilizing multirotor UAVs equipped with robotic arms for autonomous, semi-autonomous, or teleoperated tasks that are hazardous or impractical for humans. Aerial manipulation presents significant control challenges, as attached manipulators generate external forces and torques that destabilize multirotor (quadrotor) flight dynamics. The combined system exhibits complex nonlinear behavior due to underactuation and strict weight constraints [6], requiring real-time control solutions that are at least capable of managing coupled dynamics.
Relevant control strategies that consider different levels of coupling between the multirotor and the manipulator have been thoroughly analyzed in the literature [7]. This analysis reveals that fully coupled control techniques achieve high precision at the expense of significant implementation complexity due to their underlying interdependent dynamics. To address computational challenges, partially decoupled dynamics, low-DOF manipulator designs, and hybrid control methods are considered [7], including recent approaches that explicitly model and compensate for coupling disturbances during highly dynamic arm motion through variable inertia parameters and feedforward compensation [8], as well as learning-based methods that estimate manipulator-induced disturbances through offline trained neural networks without requiring prior knowledge of arm inertia [9]. The obtained results, mostly through simulations, consider partially coupled and decoupled approaches as trade-offs, where decoupled methods offer simplicity but often result in limited precision in dynamic tasks due to ignoring coupling effects. On the other hand, nonlinear [10] and model-based controllers [5,11] consider coupled control schemes because of their ability to handle complex dynamic interactions; for example, MPC-based approaches achieve position errors below 2 cm in contact tasks but require quasi-static assumptions and known environment parameters [10]. Geometric control methods have shown promise in outdoor experiments [12], with center of inertia modeling on SE(3) enabling successful object retrieval under external disturbances, though at the cost of avoiding rather than compensating coupling through kinematic restructuring, resulting in position errors of approximately 50 cm under dynamic conditions. Meanwhile, pure computed torque control has proven effective for aerial manipulation systems [13], albeit using simplified mass matrix formulations that decouple translation–attitude interactions to overcome computational complexity.
In this research, a hybrid control strategy is presented for an aerial manipulation system composed of a quadrotor and a 2-DOF planar manipulator. The proposed approach combines geometric control [14] with model-based computed torque control to explicitly address the dynamic coupling between the quadrotor UAV and the attached manipulator. The control architecture leverages the well-established geometric SE(3) controller provided by the RotorS simulation framework as a high-level trajectory tracking module for quadrotor translational and rotational motion. At the low level, a fully coupled model-based computed torque controller is derived and implemented using an 8-DOF E-L formulation of the full quadrotor–manipulator system. The derived dynamic model explicitly accounts for translational–rotational coupling of the quadrotor, quadrotor–arm coupling, and manipulator inter-joint dynamics. The computed torque controller uses the desired translational and angular accelerations generated by the geometric controller together with PD-based joint acceleration commands for the manipulator to generate dynamically consistent generalized forces for the fully coupled system.
Three simulated experiments are conducted as case studies using the following: (i) the proposed hybrid controller of the fully coupled aerial–manipulator system and (ii) a standard RotorS geometric controller [14] with the same 2-DOF manipulator, controlled using a decoupled PD strategy with gravity compensation. The results show the benefits of the hybrid approach in handling dynamic coupling effects and in reducing aerial platform disturbances during aerial manipulation. Wind disturbance is considered in Case 2 and Case 3 to also evaluate robustness to aerodynamic disturbances. To the best of the authors’ knowledge, this represents the first implementation of a hybrid geometric-computed torque controller for fully coupled model-based aerial manipulation systems.
The rest of this paper is organized as follows. Section 2 describes the system configuration and the kinematic model of the quadrotor and the 2-DOF planar arm. Section 3 presents the system dynamics. Section 4 discusses the control architecture, while Section 5 presents the obtained results. Section 6 concludes this paper.

2. Kinematics Model

The aerial manipulation system consists of a quadrotor UAV with an attached 2-DOF planar manipulator. As shown in Figure 1, the following coordinate frame convention is adopted:
  • Inertial frame ΣI: This is the world-fixed reference frame;
  • Body frame Σb: The quadrotor body-fixed frame with its origin at the center of mass and the Y-axis pointing into the paper (⊗);
  • End-effector frame Σee: This is located at the manipulator distal end.
Figure 1. System configuration with reference frames.
Figure 1. System configuration with reference frames.
Drones 10 00274 g001
The attached manipulator consists of two revolute joints; both joint axes are parallel to the quadrotor’s lateral axis (yb-direction), enabling planar motion in the sagittal plane (xb-zb plane). It is considered that the position of the link’s center of mass and the end-effector are computed via forward kinematics expressed in the body-fixed frame, and these are obtained geometrically, as seen in Figure 1.
The complete system configuration is described by the following generalized coordinate vector:
q = [ x , y , z , ϕ , θ , ψ , θ 1 , θ 2 ] T R 8
where
  • p = [x, y, z]T represents the quadrotor center of mass position expressed in the inertial frame ΣI;
  • Φ = [ϕ, θ, ψ]T denotes the Euler angles (roll, pitch, yaw) describing the orientation of the body-fixed frame Σb relative to the inertial frame ΣI;
  • η = [θ1, θ2]T contains the manipulator joint angles defined in the body-fixed frame Σb.
The positive/negative sign convention results from the specific configuration, as presented next.
  • Y-axis rotation joints: The Y-axis points into the paper (⊗);
  • Positive angles are clockwise when viewed from the front and are consistent with the right-hand rule;
  • Vertical reference: θ1 = 0° corresponds to the arm hanging straight down;
  • Motion direction: Positive angles rotate clockwise → movement toward negative (-)xb direction.

2.1. Quadrotor Kinematics

The quadrotor kinematic equations are as follows:
(2) p ˙ = R t p ˙ b , (3) ω b = Q ( ϕ , θ ) Φ ˙
where
Q ( ϕ , θ ) = 1 0 sin θ 0 cos ϕ sin ϕ cos θ 0 sin ϕ cos ϕ cos θ
RtSO(3) is the rotation matrix from the body-fixed to the inertial frame. The body-fixed frame’s angular velocity ω b R 3 is related to the Euler-rate vector Φ ˙ . p ˙ b defines the linear velocity expressed in the body-fixed frame.

2.2. Manipulator Kinematics

Following the clockwise-positive convention with the Y-axis pointing inwards, the forward kinematics of the manipulator are derived using systematic kinematic chain analysis. Joint1 (θ1) is attached at the quadrotor body-fixed frame origin Σb (quadrotor COM). Joint2 (θ2) is located at the elbow between the two links. Link1 of length L1 and Link2 of length L2 are connected to Joint1 and Joint2, respectively.
Specifically, the center-of-mass position of Link1, given in (5), is obtained by extending halfway along Link1 from Joint1, as follows:
p 1 , C O M b = L 1 2 sin ( θ 1 ) 0 L 1 2 cos ( θ 1 )
The center-of-mass position of Link2 is obtained by starting from the elbow (Joint2) position and adding a displacement of length L2/2 along the direction of Link2, expressed in the quadrotor body-fixed frame.
The position of Joint2 is
p J 2 b = L 1 sin ( θ 1 ) 0 L 1 cos ( θ 1 )
The unit direction vector of Link2 is
e ^ L 2 = sin ( θ 1 + θ 2 ) 0 cos ( θ 1 + θ 2 ) .
The center-of-mass position of Link2 is computed as [15]
p 2 , COM b = p J 2 b + L 2 2 e ^ L 2
Substituting (6) and (7) into (8) leads to
p 2 , COM b = L 1 sin ( θ 1 ) L 2 2 sin ( θ 1 + θ 2 ) 0 L 1 cos ( θ 1 ) L 2 2 cos ( θ 1 + θ 2 )
The position of the end-effector, given in (10), is defined as a point-mass located at the distal end of Link2 at a distance L2 from Joint2 along the direction of the second link, as follows:
p e e b = L 1 sin ( θ 1 ) L 2 sin ( θ 1 + θ 2 ) 0 L 1 cos ( θ 1 ) L 2 cos ( θ 1 + θ 2 )
The linear velocities of the link centers of mass and end-effector, expressed in the quadrotor body-fixed frame, are obtained via the Jacobians of their position vectors with respect to the joint coordinates [15], expressed as follows:
p ˙ i b ( η ) = J p i ( η ) η ˙ , η = [ θ 1 , θ 2 ] T ,
where J p i ( η ) R 3 × 2 is formed by obtaining the partial derivatives as
J p i ( η ) = p i b θ 1 p i b θ 2
The Jacobian terms are obtained by differentiating the corresponding position expressions for the link centers of mass and the end-effector given in (5), (9), and (10). Specifically, the Link1 velocity Jacobian terms are
(13) p 1 , C O M b θ 1 = L 1 2 cos ( θ 1 ) 0 L 1 2 sin ( θ 1 ) (14) p 1 , C O M b θ 2 = 0 3 × 1
The Link2 velocity Jacobian terms are
(15) p 2 , C O M b θ 1 = L 1 cos ( θ 1 ) L 2 2 cos ( θ 1 + θ 2 ) 0 L 1 sin ( θ 1 ) + L 2 2 sin ( θ 1 + θ 2 ) (16) p 2 , C O M b θ 2 = L 2 2 cos ( θ 1 + θ 2 ) 0 L 2 2 sin ( θ 1 + θ 2 )
The end-effector velocity Jacobian terms are
(17) p e e b θ 1 = L 1 cos ( θ 1 ) L 2 cos ( θ 1 + θ 2 ) 0 L 1 sin ( θ 1 ) + L 2 sin ( θ 1 + θ 2 ) (18) p e e b θ 2 = L 2 cos ( θ 1 + θ 2 ) 0 L 2 sin ( θ 1 + θ 2 )

2.3. Combined System Kinematics

World Frame Positions: The position of each term in the world frame is given by the following general transformation [15]:
p i , C O M W = p + R t p i , C O M b
The Link1 COM expressed in the world frame is
p 1 , C O M W = x y z + R t L 1 2 sin ( θ 1 ) 0 L 1 2 cos ( θ 1 )
The Link2 COM expressed in the world frame is
p 2 , C O M W = x y z + R t L 1 sin ( θ 1 ) L 2 2 sin ( θ 1 + θ 2 ) 0 L 1 cos ( θ 1 ) L 2 2 cos ( θ 1 + θ 2 )
The end-effector COM expressed in the world frame is
p e e W = x y z + R t L 1 sin ( θ 1 ) L 2 sin ( θ 1 + θ 2 ) 0 L 1 cos ( θ 1 ) L 2 cos ( θ 1 + θ 2 )
Velocity Relationships: The velocity of each term expressed in the world frame is obtained by taking the following time derivative [15]:
p ˙ i , C O M W = p ˙ + R ˙ t p i , C O M b + R t p ˙ i , C O M b
Using the rotation matrix R ˙ t = R t S ( ω b ) , where ωb denotes the angular velocity expressed in the body-fixed frame, the following is obtained:
p ˙ i , C O M W = p ˙ + R t ( ω b   ×   p i , C O M b + p ˙ i , C O M b )
Unified System Velocity: The complete system velocity relationships can be expressed in matrix form as [15]
p ˙ i , C O M W = J i , v q ˙
where J i , v R 3 × 8 is the velocity Jacobian matrix for term i, mapping the system velocity q ˙ (generalized velocity vector) to the component’s linear velocity in the world frame.
The velocity Jacobian for component i may be written as
J i , v = I 3 R t S ( p i , C O M b ) Q R t p i , C O M b θ 1 R t p i , C O M b θ 2 ,
where S(·) denotes the skew-symmetric matrix associated with the cross product.

3. Dynamic Model

The E-L formulation is followed. The Lagrangian is derived as
L ( q , q ˙ ) = T ( q , q ˙ ) U ( q )
where T is the total kinetic energy and U is the total potential energy of the combined system. All manipulator kinematics are expressed in the quadrotor body-fixed frame Σb and mapped to the inertial frame via Rt. Angular velocities are expressed in the body-fixed frame.

3.1. Kinetic Energy Analysis

Following [15], the total kinetic energy is
T = T q u a d + T l i n k 1 + T l i n k 2 + T e e
The quadrotor kinetic energy is
T q u a d = 1 2 m b p ˙ T p ˙ + 1 2 ω b T I b ω b
where mb is the quadrotor mass, p ˙ = [ x ˙ , y ˙ , z ˙ ] T is the quadrotor linear velocity, ωb is the quadrotor angular velocity in the body-fixed frame, and Ib = diag(Ixx, Iyy, Izz) is the quadrotor inertia tensor. Using the kinematic relationship of the quadrotor (3), the following is obtained:
ω b = Q Φ ˙ = Q [ ϕ ˙ , θ ˙ , ψ ˙ ] T
The Link1 kinetic energy is
T l i n k 1 = 1 2 m 1 p ˙ 1 , C O M W T p ˙ 1 , C O M W + 1 2 ω 1 T I 1 ω 1
Using the expression (24) from the kinematic analysis, the Link1 COM velocity in the world frame is
p ˙ 1 , C O M W = p ˙ + R t ( ω b × p 1 , C O M b + p ˙ 1 , C O M b )
Using the Link1 velocity Jacobian (13), the following is obtained:
p ˙ 1 , C O M b = p 1 , C O M b θ 1 θ ˙ 1 = L 1 2 cos ( θ 1 ) 0 L 1 2 sin ( θ 1 ) θ ˙ 1
Likewise, the Link1 angular velocity consists of the quadrotor rotation plus the joint rotation, as follows:
ω 1 = ω b + θ ˙ 1 e y
where ey = [0, 1, 0]T is the unit vector of the joint axis yb, expressed in Σb. Thus, ω1 and ω2 are expressed in Σb.
The Link2 kinetic energy is
T l i n k 2 = 1 2 m 2 p ˙ 2 , C O M W T p ˙ 2 , C O M W + 1 2 ω 2 T I 2 ω 2
Using the expression (24) from the kinematic analysis, the Link2 COM velocity in the world frame is
p ˙ 2 , C O M W = p ˙ + R t ( ω b × p 2 , C O M b + p ˙ 2 , C O M b )
Using the Link2 velocity Jacobians (15) and (16), the following is obtained:
p ˙ 2 , C O M b = p 2 , C O M b θ 1 θ ˙ 1 + p 2 , C O M b θ 2 θ ˙ 2
The Link2 angular velocity includes both joint rotations, as follows:
ω 2 = ω b + θ ˙ 1 e y + θ ˙ 2 e y
The manipulator link rotational kinetic energy is computed about the body-fixed yb-axis. Since the manipulator is planar and both joints rotate about the same axis, each link’s angular velocity is parallel to yb. Consequently, only the principal moment of inertia about this axis, Iyy, contributes to the link rotational kinetic energy.
For the point mass end-effector, the following is obtained:
T e e = 1 2 m e e p ˙ e e W T p ˙ e e W
where
p ˙ e e W = p ˙ + R t ( ω b × p e e b + p ˙ e e b )

3.2. Potential Energy Analysis

The total potential energy consists of the gravitational potential energy of all masses, as follows [15]:
U = U q u a d + U l i n k 1 + U l i n k 2 + U e e
Gravitational Potential Energy: The quadrotor potential energy is
U q u a d = m b g e z T p
Each link and end-effector potential energy is expressed as [16]
U l i n k i = m i g e z T p i , C O M W
where ez = [0, 0, 1]T extracts the Z-component (height).
Substituting the world frame positions from the kinematic analysis, namely (20), (21), and (22), into (43), the following is obtained:
U l i n k 1 = m 1 g z + e z T R t L 1 2 sin ( θ 1 ) 0 L 1 2 cos ( θ 1 )
U l i n k 2 = m 2 g z + e z T R t L 1 sin ( θ 1 ) L 2 2 sin ( θ 1 + θ 2 ) 0 L 1 cos ( θ 1 ) L 2 2 cos ( θ 1 + θ 2 )
U e e = m e e g z + e z T R t L 1 sin ( θ 1 ) L 2 sin ( θ 1 + θ 2 ) 0 L 1 cos ( θ 1 ) L 2 cos ( θ 1 + θ 2 )

3.3. Lagrangian Formulation

The complete system dynamics are described by [15]
d d t L q ˙ L q = τ
where L = T U is the Lagrangian, with T representing total kinetic energy and U , total potential energy.
Substituting the calculated kinetic and potential energies, the complete Lagrangian is
L = T q u a d + T l i n k 1 + T l i n k 2 + T e e (48) U q u a d U l i n k 1 U l i n k 2 U e e
This leads to the following standard robotic equation of motion [17]:
M ( q ) q ¨ + C ( q , q ˙ ) q ˙ + G ( q ) = τ
where M(q) is the symmetric positive-definite mass matrix, C ( q , q ˙ ) gives Coriolis and centrifugal terms, and G(q) represents gravitational effects.

3.4. Kinetic Energy Matrix Derivation

The total kinetic energy of the system can be written in the quadratic form [16]
T = 1 2 q ˙ T M ( q ) q ˙
where M ( q ) R 8 × 8 is the symmetric positive-definite mass matrix.
Due to the coupling between translational, rotational, and manipulator dynamics, the mass matrix has the block structure of a floating-based system, as follows [18]:
M ( q ) = M q q M q η M η q M η η
where M q q R 6 × 6 represents quadrotor–quadrotor inertial coupling, M q η R 6 × 2 holds the quadrotor–manipulator coupling, M η q = M q η T R 2 × 6 represents manipulator–quadrotor coupling, and M η η R 2 × 2 is the manipulator–manipulator coupling.
Quadrotor–Quadrotor Block: The quadrotor block Mqq is obtained by collecting the terms of the kinetic energy associated with the quadrotor generalized velocities [ x ˙ , y ˙ , z ˙ , ϕ ˙ , θ ˙ , ψ ˙ ] T . Using the component velocity relationship in (24), the kinetic energy expansion yields translational, rotational, and translation–rotation coupling terms. The M q q R 6 × 6 block has the form
M q q = M t t M t r M r t M r r
where Mtt is the translational inertia block, Mrr is the rotational inertia block, and Mtr captures translation–rotation coupling with M r t = M t r T .
The translational inertia block Mtt contains kinetic energy terms associated with the translational velocity p ˙ b = [ x ˙ , y ˙ , z ˙ ] T . From the velocity expression in (24), the translational velocity p ˙ b appears identically in the kinetic energy of the quadrotor, both links, and the end-effector. As a result, each mass contributes additively to the translational inertia. Therefore, the translational block is given by
M t t = ( m b + m 1 + m 2 + m e e ) I 3 × 3
The translation–rotation coupling block arises from the rotational term R t ( ω b × p i , C O M b ) in the velocity expression (24). This term represents the linear velocity induced at each link and the end-effector center of mass due to the rotational motion of the quadrotor base about an offset position p i , C O M b . When expanding the kinetic energy, cross terms between the translational velocity p ˙ b and the rotation-induced velocity ω b × p i , C O M b produce translation–rotation coupling terms in the mass matrix. Using the cross product identity a × b = − S(b)a [15] and the relation ω b = Q Φ ˙ , the translation–rotation block becomes
(54) M t r = ( m 1 S ( R t p 1 , C O M b ) + m 2 S ( R t p 2 , C O M b ) (55) + m e e S ( R t p e e b ) ) R t Q
where the skew-symmetric operator is defined as
S ( a ) = 0 a z a y a z 0 a x a y a x 0
By symmetry of the inertia matrix, M r t = M t r T .
The rotational inertia block Mrr is obtained by expressing the rotational kinetic energy of the quadrotor, links, and end-effector in terms of the Euler-rate vector Φ ˙ . Using the relation ω b = Q Φ ˙ , the inertia terms can be grouped to form the rotational block of the mass matrix, as follows:
M r r = Q T ( I b + I 1 , y y e y e y T + I 2 , y y e y e y T + m 1 S ( p 1 , C O M b ) T S ( p 1 , C O M b ) + m 2 S ( p 2 , C O M b ) T S ( p 2 , C O M b ) + m e e S ( p e e b ) T S ( p e e b ) ) Q
The first term represents the rotational inertia of the quadrotor body. The second and third terms account for the planar rotational inertia of the two manipulator links about the yb axis. The remaining terms arise from the parallel-axis effect due to the offset of each mass from the quadrotor center, captured using the skew-symmetric formulation [15].
Quadrotor–Manipulator Coupling Block: The quadrotor–manipulator block M q η R 6 × 2 has the following form:
M q η = M t η M r η
where M t η R 3 × 2 represents the translational coupling between the quadrotor linear motion and manipulator joint velocities, and M r η R 3 × 2 represents the rotational coupling between quadrotor attitude dynamics and joint motion.
The translation–joint coupling block M emerges from the cross terms between the quadrotor translational velocity p ˙ b and the joint velocities of the link and end-effector centers of mass. Specifically, when expanding the kinetic energy T i = 1 2 m i | p ˙ b + R t ( ω b × p i b + p ˙ i b ) | 2 , the cross term ( 2 p ˙ b · R t p ˙ i b ) creates coupling between the quadrotor translation and joint velocities. Taking the second derivatives 2 T p ˙ b θ ˙ j leads to
M t η = m 1 R t p 1 , C O M b θ 1 0 + m 2 R t p 2 , C O M b θ 1 p 2 , C O M b θ 2 (59) + m e e R t p e e b θ 1 p e e b θ 2
The rotation–joint coupling block M arises from two distinct sources in the kinetic energy expansion. The first source emerges from the cross term 2 ( ω b × p i b ) · p ˙ i b , where the quadrotor angular velocities ω b = Q Φ ˙ interact with joint-induced motions of displaced masses. Taking the mixed derivatives 2 T Φ ˙ θ ˙ j yields the skew-symmetric coupling terms. The second source comes from the rotational inertia coupling between the quadrotor angular motion and joint angular velocities through the link inertias Ij,yy. This results in
M r η = m 1 Q T S ( p 1 , C O M b ) p 1 , C O M b θ 1 0 + m 2 Q T S ( p 2 , C O M b ) p 2 , C O M b θ 1 p 2 , C O M b θ 2 + m e e Q T S ( p e e b ) p e e b θ 1 p e e b θ 2 (60) + I 1 , y y Q T e y 1 0 + I 2 , y y Q T e y 1 1
Manipulator–Manipulator Block: The manipulator–manipulator block emerges from the joint motion terms in the kinetic energy expansion. From the velocity relationship (24), the joint motion contribution ( R t p ˙ i b ) creates kinetic energy terms of the form 1 2 m i | R t p ˙ i b | 2 . Expanding the joint velocities p ˙ i b = p i b θ 1 θ ˙ 1 + p i b θ 2 θ ˙ 2 and taking the second derivatives 2 T θ ˙ i θ ˙ j , the mass matrix elements become the products of velocity Jacobians. Additionally, the rotational kinetic energy of each link about its joint axis contributes the inertia terms Ij,yy.
The manipulator–manipulator block M η η R 2 × 2 has the following form:
M η η = m 1 J 1 T J 1 + m 2 J 2 T J 2 + m e e J e e T J e e + I 1 , y y + I 2 , y y I 2 , y y I 2 , y y I 2 , y y .
J 1 = p 1 , C O M b θ 1 0 , J 2 = p 2 , C O M b θ 1 p 2 , C O M b θ 2 , J e e = p e e b θ 1 p e e b θ 2 .
Computing the dot products analytically results in
M η η , 11 = m 1 L 1 2 4 + m 2 L 1 2 + m 2 L 2 2 4 + m 2 L 1 L 2 cos ( θ 2 ) (63) + m e e L 1 2 + m e e L 2 2 + 2 m e e L 1 L 2 cos ( θ 2 ) (64) + I 1 , y y + I 2 , y y
M η η , 12 = M η η , 21 = m 2 L 2 2 4 + m 2 L 1 L 2 2 cos ( θ 2 ) (65) + m e e L 2 2 + m e e L 1 L 2 cos ( θ 2 ) (66) + I 2 , y y
M η η , 22 = m 2 L 2 2 4 + m e e L 2 2 + I 2 , y y

3.5. Coriolis Matrix Computation

The Coriolis matrix C ( q , q ˙ ) R 8 × 8 is computed using Christoffel symbols as follows [17]:
C i j = k = 1 8 Γ i j k q ˙ k
where q ˙ k denotes the velocity associated with the k-th generalized coordinate.
Christoffel symbols are defined as
Γ i j k = 1 2 M i j q k + M i k q j M k j q i
where Mij indicates the (i, j)-th element of the mass matrix M(q) [11].
Coriolis Matrix Structure: Due to the coupled aerial–manipulator system, the Coriolis matrix contains velocity-dependent terms arising from quadrotor motion, manipulator motion, and their interactions. The Coriolis matrix can be written as
C ( q , q ˙ ) = C q q C q η C η q C η η
where C q q R 6 × 6 contains velocity-dependent terms acting on the quadrotor base due to base motion, C q η R 6 × 2 represents coupling effects induced by manipulator joint velocities on the quadrotor dynamics, C η q R 2 × 6 captures velocity-dependent torques on the manipulator joints caused by quadrotor motion, and C η η R 2 × 2 corresponds to the Coriolis and centrifugal effects of the manipulator subsystem.
The Cηη coupling terms are substituted with partial derivatives from the mass matrix in Appendix C. The remaining Coriolis terms arise from the configuration dependence of the coupled mass matrix blocks. In particular, attitude-dependent coupling terms in both C and Cηq originate from ∂M/∂Φ, derivatives of the base inertia block Mqq with respect to Φ and η, and contribute to Cqq, and since Mηη is independent of θ1 and depends only on θ2, the Cηη block is derived from the partial derivatives of Mηη [15]. The complete partial derivative expressions for all blocks are provided in Appendix C.

3.6. Gravity Vector Derivation

The gravity vector G ( q ) R 8 is obtained from partial derivatives of the following expression [15]:
G i = U q i
where qi denotes the i-th generalized coordinate of the system state vector q.
Although the full gravity vector of the coupled system is derived via the E-L formulation for completeness, in the implementation, the quadrotor weight is compensated by the RotorS geometric position controller [14]. In particular, gravity appears through the term g e 3 (where e 3 = [ 0 0 1 ] T denotes the unit vector along the world-frame z-axis) in the commanded translational acceleration and is converted to thrust by projecting the commanded force onto the body-fixed z-axis. To avoid double counting, the base gravity terms are therefore not injected through G(q) in the computed torque law. The system operates near hover, and the manipulator gravity depends primarily on the joint configuration; hence, for the planar arm, the joint gravity terms are evaluated using a reduced model under the small-roll-and-pitch assumption [11].
Quadrotor Gravity Terms: The quadrotor gravity terms for translation are
U x = 0 , U y = 0 , U z = ( m b + m 1 + m 2 + m e e ) g
The gravity terms associated with quadrotor attitude are retained in symbolic form for simplicity as follows:
U ϕ = g i = 1 , 2 , e e m i ϕ e z T R t p i , C O M b
U θ = g i = 1 , 2 , e e m i θ e z T R t p i , C O M b
U ψ = g i = 1 , 2 , e e m i ψ e z T R t p i , C O M b
Joint Gravity Terms: Using the general form (75), the joint gravity terms for each joint lead to
G θ 1 = U θ 1 = g [ m 1 θ 1 e z T R t p 1 , COM b + m 2 θ 1 e z T R t p 2 , COM b + m e e θ 1 e z T R t p e e b ]
G θ 2 = U θ 2 = g [ m 2 θ 2 e z T R t p 2 , COM b + m e e θ 2 e z T R t p e e b ]
Under the small-roll-and-pitch-angle assumption, where the quadrotor maintains approximately level flight [11] ( R t I ), the joint gravity terms reduce to
G θ 1 = g [ m 1 L 1 2 sin ( θ 1 ) + m 2 L 1 sin ( θ 1 ) + m 2 L 2 2 sin ( θ 1 + θ 2 ) + m e e L 1 sin ( θ 1 ) + m e e L 2 sin ( θ 1 + θ 2 ) ]
G θ 2 = g m 2 L 2 2 sin ( θ 1 + θ 2 ) + m e e L 2 sin ( θ 1 + θ 2 )

4. Control Design

4.1. Control Architecture Overview

The aerial manipulation system employs a hybrid control strategy that combines the stability of geometric control [14,19] with the fully coupled computed torque control method. The architecture is designed to leverage geometric control error calculation, while computed torque control captures the complete 8-DOF E-L dynamics model between the quadrotor and the planar 2-DOF robotic arm. The geometric controller receives position and attitude references from the trajectory planner and computes desired accelerations x ¨ des and desired angular accelerations ωacc,des using position errors ep = xxd, velocity errors e v = x ˙ x ˙ d , and attitude errors derived from the SE(3) manifold. Additionally, a separate PD control law generates desired joint accelerations for the manipulator using joint position errors eθ = θdθ and joint velocity errors e θ ˙ = θ ˙ d θ ˙ , computed as θ ¨ i , des = k p , i e θ , i + k d , i e θ ˙ , i for each joint. The computed torque method then utilizes these combined outputs—geometric accelerations for the quadrotor and PD accelerations for the manipulator—as desired acceleration inputs q ¨ des for the full 8-DOF system, computing the required generalized forces through (49). This creates a hierarchical structure where geometric control provides reference trajectory tracking through error formulations, while the computed torque ensures proper handling of the system’s coupled dynamics through complete mass matrix, Coriolis, and gravity compensation.
In addition, a challenge encountered in pure computed torque implementations, as demonstrated in [13], is the requirement for desired roll and pitch angles in the quadrotor translational control law in the mass matrix computation, leading to approximations that compromise the unified dynamics model. The hybrid approach resolves this limitation by leveraging the geometric controller’s generation of desired attitude commands; the controller computes the required roll and pitch angles to achieve desired translational motion through thrust vectoring, eliminating the need for mass matrix approximations. The overall control architecture of the system is shown in Figure 2.

4.2. Geometric Controller

The geometric controller in RotorS [14] follows the approach of [19] for quadrotor control on SE(3), which provides singularity-free attitude representation and almost global stability guarantees. The term almost global refers to the fact that asymptotic stability holds for all initial attitude errors less than 180° [19].
Position Control: Translational dynamics control is based on position and velocity tracking errors defined in the world frame. The position error is computed as
e p = p p d
where p R 3 represents the current quadrotor position and p d R 3 is the desired position trajectory.
The velocity error requires transformation from the body-fixed frame to the world frame:
e v = R v v d
where RSO(3) is the rotation matrix from the body-fixed frame to the world frame, v R 3 is the body-fixed frame velocity, and v d R 3 is the desired world frame velocity.
The desired acceleration is computed through a PD control law with gravity compensation as follows [14]:
a d = 1 m ( K p e p + K v e v ) g e 3 p ¨ d
where K p , K v R 3 × 3 are positive definite gain matrices, g is gravitational acceleration, e3 = [0, 0, 1]T is the unit vector in the z-direction, and p ¨ d is the desired acceleration feedforward term.
Attitude Control: The attitude control follows a geometric approach on SO(3), avoiding singularities inherent in Euler angle representations. The desired rotation matrix RdSO(3) is constructed from the desired thrust direction and heading. A detailed derivation of the complete desired rotation matrix Rd can be found in [19].
The attitude error is computed using the following matrix-based error function that ensures almost global convergence:
E R = 1 2 ( R d T R R T R d )
The attitude error vector e R R 3 is extracted from the skew-symmetric matrix ER using the vee operator.
The angular velocity error accounts for the desired angular velocity in the body-fixed frame, as follows:
e ω = ω R T R d ω d
where ω d R 3 represents the desired angular velocity, containing the desired yaw rate.
The angular acceleration command is computed using proportional derivative control with an additional nonlinear term, as follows:
α d = K R norm e R K ω norm e ω
where K R norm = K R T I b 1 and K ω norm = K ω T I b 1 are normalized gains that make the tuning independent of the inertia matrix, and I b R 3 × 3 is the quadrotor inertia matrix.
The RotorS implementation includes an additional term of the form ω × ω in the angular-acceleration command. Since ω × ω ≡ 0, this term does not affect the command and is omitted in (85) for clarity.
The geometric controller outputs ad and αd serve as the reference accelerations for the computed torque controller.

4.3. Computed Torque Controller

The computed torque controller implements the unified 8-DOF E-L dynamics of the coupled quadrotor–manipulator system to generate model-consistent control inputs for trajectory tracking. While the control allocation follows the RotorS framework, the generalized forces supplied to the allocator are computed from the full coupled dynamics model derived in Section 3.
Control Law Formulation: For the unified system dynamics expressed in Equation (49) and no external disturbances, the general computed torque control law is [13]
τ = M ( q ) v + C ( q , q ˙ ) q ˙ + G ( q )
where v is the auxiliary control input defined as
v = q ¨ d + K d e ˙ + K p e
In this equation, e = qdq is the tracking error, and Kp, Kd are positive definite gain matrices.
Hybrid Control Strategy: In the proposed hybrid architecture, the auxiliary control input v is not constructed explicitly using joint-space error feedback. Instead, the desired acceleration vector q ¨ des is generated externally by combining the geometric controller for the quadrotor and PD control laws for the manipulator joints. These accelerations are then injected directly into the inverse dynamics model. This approach preserves the model-based feedforward compensation properties of computed torque control while allowing the use of well-established geometric error formulations for quadrotor motion. This substitution yields the following proposed control law:
τ total = M ( q ) q ¨ des + C ( q , q ˙ ) q ˙ + G ( q )
where q ¨ des R 8 is the desired acceleration vector for the coupled system.
The generalized coordinate vector is partitioned as
q = q b η , q b = p Φ
where p = [x, y, z]T is the quadrotor position expressed in the inertial frame, Φ = [ϕ, θ, ψ]T are the quadrotor Euler angles, and η = [θ1, θ2]T are the manipulator joint angles.
The desired acceleration vector q ¨ des is constructed by combining quadrotor and manipulator reference accelerations, as follows:
q ¨ des = q ¨ b , des η ¨ des
The quadrotor desired accelerations are generated by the geometric controller as
q ¨ b , des = a d , geo α d , geo
where ad,geo and αd,geo are computed using Equations (82) and (85), respectively. These accelerations encode position, velocity, and attitude tracking errors expressed directly on the SE(3) manifold.
Desired joint accelerations for the planar 2-DoF manipulator are generated using independent PD control laws, as follows:
η ¨ des = k p , 1 ( θ 1 , d θ 1 ) + k d , 1 ( θ ˙ 1 , d θ ˙ 1 ) k p , 2 ( θ 2 , d θ 2 ) + k d , 2 ( θ ˙ 2 , d θ ˙ 2 )
The generalized control input computed from the inverse dynamics, τ total R 8 , is partitioned according to the base and arm coordinates q = [ q b T , η T ] T , where q b R 6 and η R 2 , as follows:
τ total = u b τ arm , u b = f W τ Φ
Here, f W R 3 is a virtual inertial-frame force and τ Φ R 3 is the generalized rotational force to the Euler-rate vector Φ ˙ . Since the quadrotor is underactuated, only the thrust component along the body-fixed z-axis is realizable; therefore, the commanded thrust is obtained by projecting fb onto the body-fixed z-axis, while the corresponding body-frame torque τquad = QTτΦ is allocated to the rotors. The arm torque command is τ arm = [ τ θ 1 , τ θ 2 ] T .
The unified E-L model is written in generalized coordinates as q = [ p T , Φ T , η T ] T ; hence, the rotational generalized forces τ Φ R 3 are connected to the Euler-rate vector Φ ˙ . However, the multirotor rotational dynamics and control allocation are naturally expressed in the body-fixed frame in terms of the body torque τquad and body angular acceleration ω ˙ b . Using (3), the virtual moment yields:
τ Φ = Q ( ϕ , θ ) T τ quad , τ quad = Q ( ϕ , θ ) T τ Φ
Similarly, differentiating (3) gives the acceleration mapping
ω ˙ b = Q ( ϕ , θ ) Φ ¨ + Q ˙ ( ϕ , θ ) Φ ˙ , Φ ¨ = Q ( ϕ , θ ) 1 ω ˙ b Q ˙ ( ϕ , θ ) Φ ˙
Equations (94) and (95) are used to interface the Euler-angle inverse dynamics model with the RotorS allocation, which expects body moments.
Note that the RotorS mixer is parameterized by a matrix that maps the vector [ α b T , f z ] T to squared rotor speeds, where αb is an inertia-normalized moment command (units of rad/s2). In our implementation, the inverse dynamics model yields the generalized Euler torque τΦ, which is converted to the body torque τquad = QTτΦ and then normalized as α b = I b 1 τ quad before being passed to the mixer.

4.4. Control Allocation

The control allocation translates the computed generalized forces from the coupled dynamics equations into actuator commands for the 8-DOF system. This implementation takes the total system forces and torques computed by the computed torque controller and distributes them between the quadrotor rotors (four actuator outputs) and manipulator joints (two actuator outputs). This creates six independent control inputs for an 8-DOF system, resulting in an underactuated configuration where the quadrotor’s lateral forces fx and fy must be generated indirectly through attitude control rather than direct actuation.
Quadrotor Allocation: The quadrotor allocation follows the RotorS framework implementation [14], which builds upon Lee’s geometric control foundation [19]. The allocation matrix maps desired body torques and total thrust to individual rotor velocities through the following dynamically generated configuration matrix:
τ x τ y τ z f z = A m ω 1 2 ω 2 2 ω 3 2 ω 4 2
where fz represents the total thrust generated by the system, τ denotes the torques acting on the center of gravity, and ωi are the individual rotor angular velocities. The allocation matrix A m R 4 × 4 is constructed from the following quadrotor configuration:
A m = c T c T c T c T 0 d c T 0 d c T d c T 0 d c T 0 c T c M c T c M c T c M c T c M
where cT is the rotor thrust coefficient, cM is the rotor moment coefficient relating the thrust to drag moment, and d is the distance from the vehicle center of mass to each rotor.
The rotor velocities are computed using the Moore–Penrose pseudo-inverse
ω 1 2 ω 2 2 ω 3 2 ω 4 2 = A m τ x τ y τ z f z
The rotor speed mapping in RotorS is implemented at the acceleration level as
τ f z = A m diag ( I , 1 ) α f z
Thus, the RotorS allocator expects commanded angular acceleration and thrust, while the inverse dynamics model outputs generalized base wrench components (fW, τquad). Therefore, the computed base wrench is converted into
ω acc = I b 1 τ quad
f z = f W · z ^ body
where Ib is the quadrotor inertia matrix, τquad are the quadrotor torques from the computed torque, and fW are the quadrotor forces projected onto the body-fixed z-axis to obtain thrust.
Manipulator Allocation: The computed joint torques from the unified dynamics are directly commanded to the joint motors (i.e., direct torque control) using ROS effort controllers. The manipulator joint torques are extracted from the total control vector from Equation (93).
The extracted torques are directly commanded to the joint motors with the following safety limits:
τ 1 , c m d = τ θ 1
τ 2 , c m d = τ θ 2
with actuator saturation applied to ensure | τ i , c m d |   0.5 Nm for safety. This limit is physically justified by the system parameters; given the link masses m1 = m2 = 0.04 kg, link lengths L1 = L2 = 0.15 m, and end-effector mass mee = 0.01 kg, the maximum static gravity torque at Joint 1 with both links fully extended horizontally is approximately τmax ≈ (m1L1/2 + m2L1 + meeL1)g ≈ 0.11 Nm, giving a safety margin of 4.5× over the maximum expected static load, consistent with lightweight servo actuator specifications for manipulators of this scale. When saturation becomes active in more aggressive trajectory scenarios, standard anti-windup strategies such as command scaling and torque prioritization would be required to prevent integrator windup and maintain stability.
It is worth noting that torque-level joint control, as implemented here via ROS effort controllers, is practically realizable using modern servo actuators such as the Dynamixel series operating in the current control mode.

5. Simulated Experiments

This section evaluates the influence of dynamic coupling between a quadrotor and a 2-DoF planar manipulator on tracking performance. The aerial manipulation platform consists of a Hummingbird quadrotor rigidly attached to a two-link planar arm (rod geometry), as illustrated in Figure 1. All simulated experiments are conducted in the RotorS simulator [14] using the Gazebo physics engine. Table 1 presents the system parameters used in all simulated experiments. It should be noted that the results presented in this work are specific to the 2-DOF planar manipulator configuration with the parameters given in Table 1.
To evaluate the effectiveness of the proposed control strategy, three simulation test cases of increasing complexity are conducted. The objective is to assess the impact of dynamic coupling between the quadrotor and the manipulator by comparing the fully coupled E-L model with the hybrid controller to the geometric controller with a decoupled PD controller with gravity compensation for the arm. Both platforms share identical physical parameters. The quadrotor geometric controller gains (Kp, Kv, KR, Kω) are the default pre-tuned gains provided by the RotorS simulator for the Hummingbird platform [14], kept identical for both controllers to ensure a fair comparison. The manipulator joint gains kp,i and kd,i were tuned independently for each controller following Appendix A. Both controllers run at 200 Hz; reference commands are published at 50 Hz. Table 2 presents the quantitative results. Bold values indicate the better-performing controller for each metric. Metrics are computed over the steady-state interval (t ∈ [10, 20] s), excluding the initial transients. Throughout this section and in all figures and tables, CT refers to the proposed hybrid geometric computed torque controller derived in Section 4, and PD refers to the baseline decoupled controller consisting of the standard RotorS geometric controller for the quadrotor base and independent PD control with gravity compensation for the manipulator joints. The CT controller receives position, velocity, and acceleration feedforward references for both the quadrotor and manipulator joints, while the PD controller receives only position and velocity references, as acceleration feedforward cannot be meaningfully utilized within a decoupled direct-torque architecture.
Both controllers receive identical trajectory commands at t = 0.01 s from identical initial conditions (θ1 = θ2 = 0 rad), verified from the recorded bag files. The delay observed in the PD controller response across all cases reflects the decoupled architecture’s limitation. When arm motion begins, inertial coupling forces a disturbance in the quadrotor attitude, and since the PD controller has no knowledge of this coupling, the quadrotor attitude loop must reactively settle before accurate joint tracking is possible. The CT controller avoids this by generating anticipatory attitude adjustments through M, pre-compensating the coupling forces.
All three case studies are conducted under nominal conditions with no external disturbances, consistent with the assumptions under which the CT controller is derived (Section 4.3). To assess the effect of disturbances on both controllers, two additional wind robustness experiments are conducted at the end of Case 2 and Case 3, in which a lateral wind gust is applied during the arm trajectory execution and a constant wind is applied during the aerial manipulation case. These experiments are not intended to demonstrate robustness of the CT controller but to characterize the comparative performance degradation of the coupled versus decoupled architectures when the no-disturbance assumption is violated.

5.1. Case 1: Hovering Quadrotor with Arm Ramp Response

As an initial validation experiment, a joint-space ramp trajectory is applied to the first arm joint while the second joint is held fixed at zero. This experiment is designed to evaluate joint-level tracking performance and showcase coupling effects between the manipulator and the quadrotor base under static flight conditions.
Joint1 is commanded to move between symmetric angular limits using smooth ramp transitions, while Joint2 remains fixed throughout the experiment. The quadrotor hovers at a fixed position pd = (0, 0, 1), while the arm executes a sequence of ramp commands in θ1. Starting from the equilibrium configuration (θ1, θ2) = (0, 0), Joint1 is ramped (over 1 s) to its positive limit θ1 = +0.3 rad and held for 5 s, returned to center, then ramped to θ1 = −0.3 rad and held for 5 s before returning to center. Joint2 remains at θ2 = 0 throughout. This sequence is executed once.
Figure 3 shows the quadrotor orientation during Case 1. The CT controller exhibits larger transient pitch excursions (±0.13 rad) during the ramp transitions, compared to ±0.03 rad for the PD controller. This behavior arises from the coupled system dynamics; the CT controller generates anticipatory attitude adjustments through the off-diagonal terms of the mass matrix to accelerate the arm joint toward the commanded set point, resulting in a 66% reduction in the mean joint tracking error (Table 2). Between transitions, the CT controller returns to near-zero pitch more rapidly than the PD controller. This trade-off between transient attitude deviations and improved joint tracking accuracy is inherent to the coupled control strategy.
Figure 4b shows the joint angle response during Case 1. The CT controller tracks the ramp reference with minimal delay, reaching the commanded ±0.3 rad within approximately 2 s of ramp completion, whereas the PD controller requires approximately 5 s to converge to each set point. Joint2, which is commanded to remain at zero, exhibits transient coupling disturbances during each Joint1 transition for both controllers. However, the CT controller recovers more rapidly due to the cross-coupling compensation incorporated in the mass matrix. Figure 4a confirms these observations, demonstrating that the CT controller achieves near-zero steady-state error between transitions, while the PD controller exhibits prolonged settling.
Figure 5 shows the quadrotor position tracking error during Case 1. The CT controller exhibits brief transient peaks in the range of 0.07–0.09 m during the ramp transitions, returning to the baseline hovering error of approximately 0.035 m within 2 s. In contrast, the PD controller accumulates a sustained position error of 0.13–0.14 m while the arm is held at ±0.3 rad. This error arises from the shifted center of mass, which the decoupled position controller cannot compensate.

5.2. Case 2: Hovering Quadrotor with Arm Trajectory Tracking

In the second experiment, the quadrotor again hovers at pd = (0, 0, 1) m while both arm joints simultaneously track the smooth sinusoidal references
θ 1 , d ( t ) = 0.3 sin ( 2 π · 0.5 t ) ,
θ 2 , d ( t ) = 0.2 sin ( 2 π · 0.5 t + π 2 ) ,
with velocity and acceleration feedforward supplied to the CT controller. The PD method receives only the position and velocity references. The trajectory lasts 15 s, after which both joints return to zero. This scenario excites the full Coriolis and centrifugal coupling between the arm’s degrees of freedom and the quadrotor attitude at a frequency (0.5 Hz). The phase offset between the two joints ensures that the combined center-of-mass motion is not purely planar, stressing the cross-coupling compensation.
Figure 6 shows the quadrotor orientation. The pitch axis, which is directly coupled to the arm motion through the planar kinematic chain, exhibits the most significant difference between the two controllers. During steady-state tracking (t ∈ [10, 25] s), the CT controller maintains pitch oscillations below 0.02 rad, whereas the PD controller exhibits sustained oscillations of approximately ±0.07 rad at the arm trajectory frequency. Roll disturbances remain negligible for both controllers (on the order of 10−3 rad), consistent with the planar geometry of the manipulator.
Figure 7a shows the quadrotor position tracking error norm and Figure 7b shows the quadrotor position tracking error per axis (x, y, z) with CT and PD overlaid during Case 2. Prior to the arm trajectory (t < 6 s), both controllers maintain comparable hovering accuracy of approximately 0.035 m, attributable to a steady-state altitude offset induced by the additional manipulator weight. Once the arm motion begins, the PD controller exhibits oscillations in the range of 0.04–0.09 m at the arm trajectory frequency (0.5 Hz) mostly along the x-axis, consistent with the pitch coupling induced by the planar arm motion: the uncompensated arm swing produces periodic pitch disturbances that drive translational drift in x. The CT controller maintains near-zero x and y errors during the steady state, while the z-axis offset remains comparable between both controllers.
Figure 8 shows the joint tracking errors during Case 2. Joint1 exhibits a noticeable difference between the two controllers, with the CT controller maintaining errors below 0.02 rad, whereas the PD controller displays persistent oscillations within the range of 0.04–0.06 rad. Case 2 employs larger arm trajectory amplitudes (0.3 rad and 0.2 rad) compared to Case 3 (0.2 rad and 0.15 rad), resulting in higher peak joint velocities and, consequently, stronger Coriolis coupling forces. This increase in dynamic coupling accounts for the larger Joint2 tracking errors observed in this scenario. The 82% reduction in pitch RMS (Table 2) is directly attributable to the Coriolis coupling block C, which captures the periodic disturbance torques induced by the 0.5 Hz sinusoidal arm trajectory and preemptively compensates them before they propagate to the quadrotor attitude loop. The PD controller, lacking this term, cannot anticipate these disturbances and exhibits sustained pitch oscillations at the arm trajectory frequency.

Robustness to Wind Disturbance

To assess robustness to external aerodynamic disturbances, the Case 2 scenario is repeated under a simulated lateral wind gust of 2 m/s applied along the world-frame x-axis for a duration of 3 s, injected at t = 7.5 s during the sinusoidal arm trajectory execution. The gust is generated using the RotorS Gazebo wind plugin applied to the quadrotor base link, with identical conditions for both controllers. No disturbance observer or wind feedforward term is present in either controller; the comparison therefore isolates the inherent disturbance rejection arising from the coupled versus decoupled dynamic compensation architectures. Both controllers experience performance degradation under the disturbance, as expected since the CT controller is derived under the assumption of no external disturbances (Section 4.3).
Figure 9 shows the quadrotor pitch during the wind experiment. At gust onset, the CT controller generates an immediate corrective pitch response through the coupled inverse dynamics, producing a transient peak of −0.32 rad that resolves within approximately 3 s of gust termination. The PD controller responds reactively through the geometric attitude loop alone, reaching a larger peak of −0.40 rad and sustaining oscillations for a further 5 s as the uncompensated arm coupling continuously re-excites the pitch channel at the arm trajectory frequency (0.5 Hz).
Figure 10 decomposes the position error by axis. CT reduces the peak x-axis error from 0.71 m (PD) to 0.55 m and achieves a 23% reduction in mean position error over the post-gust interval. The PD controller cannot suppress the x-axis oscillations because the uncompensated periodic arm swing continuously regenerates pitch coupling disturbances that drive x-axis drift—an interaction captured by C in the CT formulation but absent from the decoupled PD architecture.
Figure 11 shows the joint tracking errors. Joint 1 under CT converges rapidly after the startup transient and remains near zero throughout the gust and recovery, while PD exhibits persistent oscillations driven by uncompensated coupling between arm motion and post-gust attitude transients. The CT startup transient on Joint 1 arises from the coupled inverse dynamics generating large initial torque commands as the full 8-DOF system accelerates from rest and is unrelated to the wind disturbance injected at t = 7.5 s. Joint 2 presents the inherent trade-off of the coupled architecture discussed in the caption; future work will address this through disturbance observer integration and selective joint decoupling strategies. Although both controllers experience performance degradation under the disturbance, the CT controller consistently demonstrates lower peak position error (0.55 m vs. 0.71 m), lower mean position error (0.13 m vs. 0.17 m), better pitch rejection (RMS 0.121 rad vs. 0.138 rad), and lower accumulated error (IAE 2.04 vs. 2.80 m·s), confirming that the coupling compensation terms remain effective under external aerodynamic disturbances even though the controller is derived under nominal no-disturbance conditions.

5.3. Case 3: Quadrotor Trajectory with Simultaneous Arm Trajectory

In the last experiment, the quadrotor tracks a circular trajectory in the horizontal plane while the arm simultaneously executes sinusoidal joint trajectories. The quadrotor reference is
(106) x d ( t ) = 0.3 cos ( 2 π · 0.08 t ) , (107) y d ( t ) = 0.3 sin ( 2 π · 0.08 t ) , (108) z d = 1.0 m , ψ d = 0 ,
corresponding to a circle of radius R = 0.3 m at a frequency of 0.08 Hz, with the velocity and acceleration feedforward. The arm references are
(109) θ 1 , d ( t ) = 0.2 sin ( 2 π · 0.5 t ) , (110) θ 2 , d ( t ) = 0.15 sin ( 2 π · 0.5 t + π 2 ) ,
again with velocity and acceleration feedforward. The combined motion lasts 15 s.
Because the quadrotor is accelerating laterally while the arm moves, the inertial coupling terms in the E-L model are time-varying and non-negligible. The primary metric is the end-effector tracking error in the world frame, e ee = p e e d p ee , where the desired end-effector position is obtained by composing the desired quadrotor pose with the forward kinematics evaluated at the desired joint angles. This metric captures the combined effect of quadrotor position/attitude errors and arm joint tracking errors on the task space accuracy of the manipulator.
As shown in Figure 12, and specifically in Figure 12a, the CT controller demonstrates significantly faster convergence compared to the PD controller. Specifically, CT reaches steady state in approximately 3 s, whereas PD requires approximately 7 s and exhibits more oscillatory behavior. During steady-state operation (t ∈ [10, 20] s), the CT controller maintains a position tracking error of approximately 0.035 m, while the PD controller oscillates within the range of 0.04–0.08 m. At t ≈ 21 s, both controllers exhibit a transient spike corresponding to the termination of the circular trajectory and the subsequent return-to-origin maneuver (a 0.3 m step change in reference). Notably, the CT controller recovers more rapidly from this disturbance.
Figure 12b shows the drone orientation during Case 3. During steady-state tracking (t ∈ [10, 20] s), pitch deviations remain below 0.02 rad under CT control, whereas the PD controller exhibits sustained oscillations of approximately 0.05 rad at the arm trajectory frequency (0.5 Hz). These oscillations can be attributed to uncompensated inertial coupling between the manipulator motion and the quadrotor attitude dynamics. By incorporating cross-coupling terms derived from the mass and Coriolis matrices, the CT controller effectively compensates for these interactions and produces anticipatory attitude corrections. Both controllers display larger transient responses during the initial convergence (t ≈ 7 s) and at trajectory termination (t ≈ 21 s), with the CT controller recovering faster in both cases.
Figure 13, presents the end-effector position in the world frame for both controllers compared against the desired trajectory. In the x- and y-axes, the CT controller tracks the desired end-effector path with smaller deviations, whereas the PD controller exhibits larger deviations due to the slower convergence of the quadrotor base. During steady-state operation (t ∈ [10, 20] s), the CT end-effector position closely follows the desired reference in both horizontal axes, while the PD controller shows persistent offsets and delayed response.
In the vertical axis (z), both controllers maintain the end-effector near the desired height of approximately 0.70 m. However, the CT controller exhibits slightly larger oscillations (±0.005 m), attributable to its active coupling compensation that induces small pitch variations. Overall, the mean end-effector tracking error is reduced from 0.066 m (PD) to 0.036 m (CT), corresponding to a 46% improvement, as seen in Table 2.
Figure 14a shows the absolute joint tracking error for both controllers. During steady-state operation (t ∈ [10, 20] s), the CT controller achieves Joint1 errors below 0.005 rad, compared to persistent oscillations of 0.02–0.04 rad for the PD controller. Joint2 exhibits similar behavior, with the CT controller maintaining errors of approximately 0.01 rad, whereas the PD controller oscillates within the range of 0.01–0.02 rad. The periodic oscillations observed in the PD joint errors at the trajectory frequency further confirm that the decoupled controller cannot adequately reject the coupling disturbances induced by the simultaneous quadrotor and arm motion. In contrast, the CT controller suppresses these disturbances through the feedforward acceleration term and the coupled mass matrix, which appropriately distributes the required torques.
Figure 14b presents the end-effector tracking error norm in the world frame. During steady-state operation (t ∈ [10, 20] s), the CT controller maintains an end-effector error of approximately 0.035 m, whereas the PD controller oscillates within the range of 0.04–0.10 m at the arm trajectory frequency.
The sustained oscillations observed in the PD error reflect the combined effect of uncompensated coupling on both the quadrotor base position and the arm joint tracking. In contrast, by accounting for the full coupled dynamics, the CT controller effectively suppresses these oscillations and achieves a 46% reduction in the mean end-effector tracking error (Table 2).
Figure 15 shows the end-effector tracking error by axis. The x and y components confirm that the PD controller exhibits persistent oscillations in the horizontal plane, with amplitudes ranging approximately from ±0.05 to ±0.10 m, whereas the CT controller maintains errors close to zero during steady-state operation. The z-axis error shows a consistent offset of approximately 0.03–0.04 m for both controllers, which can be attributed to a steady-state altitude tracking error caused by the additional weight of the manipulator on the quadrotor base.
The 46% reduction in mean end-effector tracking error (Table 2) reflects the combined effect of the time-varying coupling terms M, C, and Cηq during simultaneous quadrotor lateral acceleration and arm motion. In this scenario, the inertial coupling terms are most significant, as the lateral acceleration of the quadrotor base generates time-varying reaction forces on the arm joints that the CT controller compensates through the off-diagonal mass matrix blocks, while the PD controller cannot account for these interactions.

Robustness to Wind Disturbance

To assess robustness under persistent aerodynamic loading during the most demanding scenario, the Case 3 experiment (circular quadrotor trajectory with simultaneous sinusoidal arm motion) is repeated under a constant lateral wind of 2 m/s, applied along the world-frame x-axis using the RotorS Gazebo wind plugin, with identical conditions for both controllers. Neither controller incorporates a disturbance observer or integral action; consequently, both exhibit a steady-state position bias along the wind direction of approximately 0.58–0.67 m, attributable to the unrejected constant aerodynamic force. The comparison therefore evaluates relative disturbance rejection performance within this constrained operating regime, focusing on whether the coupled dynamics compensation of CT retains its advantage over the decoupled PD architecture under persistent wind. Metrics are computed over the steady-state window t ∈ [6, 16] s, excluding initial transients.
Figure 16 shows the quadrotor position tracking error norm during the Case 3 wind experiment. The CT controller reaches a stable steady-state level by t ≈ 6 s, with a small ripple (±0.01 m) at the arm trajectory frequency (0.5 Hz), consistent with the residual Coriolis coupling oscillation observed in the no-wind Case 3 scenario. The PD controller exhibits persistent oscillations of amplitude ±0.05–±0.07 m throughout the steady-state window, driven by the uncompensated interaction between the constant aerodynamic disturbance, the arm inertial coupling, and the quadrotor attitude loop. These oscillations are not present in the no-wind Case 3 results, confirming that wind disturbance amplifies the coupling-induced position errors that the CT controller suppresses through M and C but that the PD controller cannot compensate.
Figure 17 shows the quadrotor orientation during the Case 3 wind experiment. The steady-state pitch bias of −0.28 rad is common to both controllers and represents the geometric attitude required to partially resist the 2 m/s aerodynamic force through thrust vectoring in the absence of integral compensation. Within this biased operating point, CT suppresses the coupling-induced pitch oscillations to ±0.02 rad, compared to ±0.06 rad for PD—a threefold reduction in oscillation amplitude attributable to the C Coriolis compensation block, which captures the periodic torques generated by simultaneous arm motion and quadrotor lateral acceleration. The CT transient pitch excursion at onset (0.647 rad) is larger than for PD (0.381 rad) due to the aggressive coupled inverse dynamics response to the simultaneous disturbances; both controllers reach comparable steady-state pitch levels by t ≈ 6 s.
Figure 18 shows the end-effector tracking error norm in the world frame, which is the primary performance metric for Case 3. During steady-state operation (t ∈ [6, 16] s), the CT controller maintains a near-constant EE error of approximately 0.66 m with minimal oscillation, while the PD controller exhibits persistent oscillations between 0.65 and 0.83 m at the arm trajectory frequency. The low-amplitude ripple observed in the CT end-effector error (±0.01 m) reflects the continuous coupled torque adjustments generated by the inverse dynamics model as it actively compensates the interaction between the constant aerodynamic bias, the circular quadrotor acceleration, and the arm joint motion—a characteristic of model-based coupled control that is distinct from instability. The oscillatory component in the PD EE error arises from the compounding of uncompensated coupling effects: the arm motion generates periodic inertial forces that disturb the quadrotor attitude, which in turn displaces the EE base position in the world frame, producing oscillations that the decoupled architecture cannot anticipate or suppress. The CT controller eliminates this oscillatory component through the time-varying coupling terms M, C, and Cηq, consistent with the 46% EE error reduction reported for the no-wind Case 3 scenario (Table 2). Under 2 m/s constant wind, the relative improvement narrows to 11% mean and 17% peak EE error reduction, as the dominant error source shifts from coupling-induced oscillations to the unrejected aerodynamic bias—confirming that disturbance observer integration is the key next step for deployment under persistent wind conditions.

6. Conclusions and Discussion

This research presents a fully coupled hybrid geometric computed torque control approach for a quadrotor equipped with a 2-DOF planar robotic arm. Following the systematic E-L modeling methodology, the full 8-DOF dynamics equations capturing all coupling effects between the aerial vehicle and manipulator are derived. The proposed hybrid control architecture combines geometric control [14] for quadrotor translational and rotational motion with a low-level computed torque controller that explicitly exploits the complete coupled dynamics of the aerial–manipulator system. Case studies between the fully coupled and decoupled system demonstrate that the proposed hybrid controller achieves improved trajectory tracking performance in all test cases over decoupled control approaches. During quasi-static arm positioning (Case 1), the mean joint tracking error is reduced by 66% (from 0.057 rad to 0.019 rad), and the quadrotor position error by 52% (from 0.083 m to 0.040 m), at the expense of slightly larger transient pitch excursions due to the anticipatory coupling torques from the aggressive ramp transition. The integrated absolute error over the full run is reduced by 50% (from 2.33 to 1.17 m·s), confirming that the CT controller accumulates a lower total error despite the larger initial transient pitch excursions.
During continuous arm trajectory tracking in hover (Case 2), the pitch disturbance RMS is reduced by 82% (from 0.056 rad to 0.010 rad), and the quadrotor position error by 52% (from 0.065 m to 0.031 m). The PD controller requires 23.5 s to reach steady-state position accuracy, compared to 10 s for CT, indicating that the uncompensated coupling forces prevent the PD controller from settling within the standard experiment duration.
In the simultaneous quadrotor and arm trajectory tracking (Case 3) scenario, the coupled controller achieves a 46% reduction in mean end-effector tracking error (from 0.066 m to 0.036 m), a 61% reduction in mean joint tracking error, and a 74% reduction in pitch RMS, while maintaining comparable actuator effort (Table 2). These results validate the effectiveness of considering dynamic coupling in aerial manipulation systems and highlight the importance of accounting for inertial coupling, Coriolis, and centrifugal effects in the control design of aerial manipulation platforms, particularly during simultaneous base and manipulator motion. The CT controller reaches steady state at 10 s compared to 24.5 s for PD, a 2.4× improvement in convergence speed attributable to the anticipatory coupling compensation in M.
Additional wind disturbance experiments on Case 2 (2 m/s lateral gust, 3 s) and Case 3 (2 m/s constant lateral wind) confirm that the CT controller retains its advantage over the decoupled PD baseline under aerodynamic disturbances, achieving up to 23% reduction in position error and 17% reduction in end-effector error. This relative improvement narrows under constant wind as the unrejected aerodynamic bias dominates over the coupling-induced oscillations that CT suppresses, motivating disturbance observer integration and adaptive compensation as primary directions for future work.
Future research directions include the integration of adaptive control terms to handle system uncertainties, experimental validation of the proposed work, and extension to cooperative manipulation tasks, building upon our previous research [20,21,22]. A dedicated parameter identification study will further support the hardware implementation of the proposed CT controller, which relies on accurate system model knowledge. Regarding the small-roll-and-pitch assumption ( R t I ) used in the joint gravity evaluation (Section 3.6), the attitude ranges observed across all simulation cases confirm its validity during steady-state operation. Roll remains below ±0.001 rad in Cases 1 and 2 and below ±0.010 rad in Case 3. Pitch remains below ±0.03 rad during steady state across all cases, with larger transient excursions of up to ±0.25 rad occurring only during the initial arm motion phase. At these steady-state attitude ranges and given the lightweight manipulator links (m1 = m2 = 0.04 kg), the resulting approximation error in joint gravity torques is bounded by approximately 0.004 Nm, which is negligible compared to the commanded torque range of 0.03–0.05 Nm RMS. Full gravity compensation without this assumption is planned for the hardware implementation. These developments will enhance the robustness and practical applicability of the proposed hybrid control framework for real-world aerial manipulation scenarios.

Author Contributions

All authors contributed to this study’s conception and design. Material preparation, data collection, and analysis were performed by S.C.B., C.S.T. and K.P.V. The first draft of the manuscript was written by S.C.B., and all authors commented on previous versions of the manuscript. All authors have read and agreed to the published version of the manuscript.

Funding

Stamatina C. Barakou is a Fulbright Scholar, and this work was financially supported by the State Scholarships Foundation (IKY), Greece. This research was also partially supported by the project “Applied Research for Autonomous Robotic Systems” (MIS5200632), which is implemented within the framework of the National Recovery and Resilience Plan (NNRP) “Greece 2.0” (Measure: 16618—Basic and Applied Research) and is funded by the European Union—NextGenerationEU.

Data Availability Statement

The original contributions presented in this study are included in the article. Further inquiries can be directed to the corresponding author.

Conflicts of Interest

The authors declare no conflicts of interest.

Appendix A. Controller Gains

Table A1 and Table A2 present the complete controller gains used for both the proposed CT controller and the PD baseline across all three simulation cases. The same gains were used for all cases.
Table A1. CT controller gains (all cases).
Table A1. CT controller gains (all cases).
ComponentParameterValue
PositionKp,x, Kp,y, Kp,z4.0
Kv,x, Kv,y, Kv,z2.2
AttitudeKR,x, KR,y0.7, KR,z = 0.035
Kω,x, Kω,y0.1, Kω,z = 0.025
Arm Joint 1kp,1350.0
kd,112.0
Arm Joint 2kp,2150.0
kd,210.0
Arm saturation | τ i , cmd | ≤0.5 Nm
Table A2. PD baseline controller gains (all cases).
Table A2. PD baseline controller gains (all cases).
ComponentParameterValue
PositionKp,x, Kp,y, Kp,z4.0
Kv,x, Kv,y, Kv,z2.2
AttitudeKR,x, KR,y0.7, KR,z = 0.035
Kω,x, Kω,y0.1, Kω,z = 0.025
Arm Joint 1kp,11.0
kd,10.04
Arm Joint 2kp,20.5
kd,20.02
Arm saturation | τ i , cmd | ≤0.5 Nm
Note that the CT and PD arm gains are not directly comparable; the CT gains kp,i and kd,i represent desired acceleration commands (rad/s2/rad) that feed into the inverse dynamics model, whereas the PD gains represent direct torque commands (Nm/rad). The CT controller can employ higher acceleration gains because the coupled dynamics are explicitly compensated through the inverse dynamics.
The quadrotor geometric controller gains are the default pre-tuned values provided by the RotorS simulator for the Hummingbird platform [14] and are kept identical for both controllers, ensuring full reproducibility of the quadrotor base dynamics. For the CT controller, the manipulator joint gains kp,i and kd,i are selected using the pole-placement criterion for second-order linear systems. With perfect model knowledge, the computed torque law reduces the closed-loop joint error dynamics to the decoupled linear system e ¨ i + k d , i e ˙ i + k p , i e i = 0 [15], where the natural frequency and damping ratio are given by ω n , i = k p , i and ζ i = k d , i / ( 2 k p , i ) , respectively. The gains kp,1 = 350 and kd,1 = 12 correspond to ωn,1 = 18.7 rad/s and ζ1 = 0.32, and kp,2 = 150 and kd,2 = 10 correspond to ωn,2 = 12.2 rad/s and ζ2 = 0.41. These were selected to achieve fast convergence within the 0.5 Hz arm trajectory bandwidth while maintaining quadrotor attitude RMS below 0.02 rad during steady-state tracking. For the PD with a gravity compensation controller, the gains K p = diag ( 1.0 , 0.5 ) Nm/rad and K d = diag ( 0.04 , 0.02 ) Nm·s/rad were tuned independently by increasing Kp until incipient oscillation was observed, then reducing by 50% and setting Kd for adequate damping, following the manual tuning procedure for robot joint PD controllers described in [15]. The tuning objective for both controllers was minimization of mean joint tracking error subject to quadrotor attitude RMS below 0.06 rad, applied identically.

Appendix B. Mass Matrix Block Summary

For convenient reference, Table A3 collects the final analytical expressions for all mass matrix blocks derived in Section 3.4, including the Jacobian partial derivatives used in M and M. The notation follows the main text as follows: S(·) denotes the skew-symmetric operator, Q(ϕ, θ) is the Euler-rate mapping matrix, RtSO(3) is the rotation matrix from body to inertial frame, and ey = [0, 1, 0]T is the unit vector along the joint rotation axis. Note: p i b denotes p i , C O M b for brevity.
Table A3. Mass matrix block expressions and Jacobian partial derivatives.
Table A3. Mass matrix block expressions and Jacobian partial derivatives.
BlockExpression
Mtt ( m b + m 1 + m 2 + m e e ) I 3 × 3
Mtr m 1 S ( R t p 1 b ) + m 2 S ( R t p 2 b ) + m e e S ( R t p e e b ) R t Q
Mrt M t r T
Mrr Q T ( I b + ( I 1 , y y + I 2 , y y ) e y e y T + m 1 S ( p 1 b ) T S ( p 1 b )
+ m 2 S ( p 2 b ) T S ( p 2 b ) + m e e S ( p e e b ) T S ( p e e b ) ) Q
M m 1 R t p 1 b θ 1 0 + m 2 R t p 2 b θ 1 p 2 b θ 2
+ m e e R t p e e b θ 1 p e e b θ 2
M m 1 Q T S ( p 1 b ) p 1 b θ 1 0 + m 2 Q T S ( p 2 b ) p 2 b θ 1 p 2 b θ 2
+ m e e Q T S ( p e e b ) p e e b θ 1 p e e b θ 2
+ I 1 , y y Q T e y 1 0 + I 2 , y y Q T e y 1 1
Mηq M q η T
Mηη,11 m 1 L 1 2 4 + m 2 L 1 2 + m 2 L 2 2 4 + m 2 L 1 L 2 cos θ 2
+ m e e L 1 2 + m e e L 2 2 + 2 m e e L 1 L 2 cos θ 2 + I 1 , y y + I 2 , y y
Mηη,12 = Mηη,21 m 2 L 2 2 4 + m 2 L 1 L 2 2 cos θ 2 + m e e L 2 2 + m e e L 1 L 2 cos θ 2 + I 2 , y y
Mηη,22 m 2 L 2 2 4 + m e e L 2 2 + I 2 , y y
Jacobian partial derivatives used in M and M
p 1 b θ 1 L 1 2 cos θ 1 , 0 , L 1 2 sin θ 1 T
p 1 b θ 2 0
p 2 b θ 1 L 1 cos θ 1 L 2 2 cos ( θ 1 + θ 2 ) , 0 , L 1 sin θ 1 + L 2 2 sin ( θ 1 + θ 2 ) T
p 2 b θ 2 L 2 2 cos ( θ 1 + θ 2 ) , 0 , L 2 2 sin ( θ 1 + θ 2 ) T
p e e b θ 1 L 1 cos θ 1 L 2 cos ( θ 1 + θ 2 ) , 0 , L 1 sin θ 1 + L 2 sin ( θ 1 + θ 2 ) T
p e e b θ 2 L 2 cos ( θ 1 + θ 2 ) , 0 , L 2 sin ( θ 1 + θ 2 ) T

Appendix C. Coriolis Matrix Expressions

Throughout this appendix, J1, J2, and Jee are the body-frame velocity Jacobians from Appendix B; p 1 , C O M b and p 2 , C O M b , p e e b are the body-frame COM positions defined in Section 2.2; S(·) denotes the skew-symmetric operator defined in Section 3.4; and the scalar coefficients c11, c12, c31, and c32 are defined locally to express the joint-angle derivatives of M. The Coriolis matrix is assembled from Christoffel symbols, as described in Section 3.5. The partial derivatives of the mass matrix blocks are given below.
Manipulator block ∂Mηη/∂q: Since Mηη depends only on θ2, all derivatives with respect to the translational coordinates, ϕ, θ, ψ, and θ1 are zero. The only non-zero derivatives are
(A1) M η η , 11 θ 2 = ( m 2 L 1 L 2 + 2 m e e L 1 L 2 ) sin θ 2 (A2) M η η , 12 θ 2 = m 2 L 1 L 2 2 + m e e L 1 L 2 sin θ 2 (A3) M η η , 22 θ 2 = 0
leading to the closed-form block
C η η = h ( θ 2 ) θ ˙ 2 ( θ ˙ 1 + θ ˙ 2 ) θ ˙ 1 0 , h = m 2 L 1 L 2 2 + m e e L 1 L 2 sin θ 2
Translation–joint coupling block ∂M/∂q: The attitude derivatives are
(A5) M t η ϕ = R t ϕ m 1 J 1 + m 2 J 2 + m e e J e e (A6) M t η θ = R t θ m 1 J 1 + m 2 J 2 + m e e J e e (A7) M t η ψ = R t ψ m 1 J 1 + m 2 J 2 + m e e J e e
where ∂Rt/∂ϕ, ∂Rt/∂θ, and ∂Rt/∂ψ are given in Section 3.5. The joint-angle derivatives are
(A8) M t η θ 1 = R t c 11 c 12 0 0 c 31 c 32 (A9) M t η θ 2 = R t 0 c 12 0 0 0 c 32
where
c 11 = m 1 L 1 2 sin θ 1 + ( m 2 + m e e ) L 1 sin θ 1 (A10) + m 2 L 2 2 + m e e L 2 sin ( θ 1 + θ 2 ) (A11) c 12 = m 2 L 2 2 + m e e L 2 sin ( θ 1 + θ 2 ) c 31 = m 1 L 1 2 cos θ 1 + ( m 2 + m e e ) L 1 cos θ 1 (A12) + m 2 L 2 2 + m e e L 2 cos ( θ 1 + θ 2 ) (A13) c 32 = m 2 L 2 2 + m e e L 2 cos ( θ 1 + θ 2 )
Rotation–joint coupling block ∂M/∂q: The attitude derivatives are
(A14) M r η ϕ = Q T ϕ m 1 S ( p 1 , C O M b ) J 1 + m 2 S ( p 2 , C O M b ) J 2 + m e e S ( p e e b ) J e e (A15) M r η θ = Q T θ m 1 S ( p 1 , C O M b ) J 1 + m 2 S ( p 2 , C O M b ) J 2 + m e e S ( p e e b ) J e e
where
(A16) Q T ϕ = 0 0 0 0 sin ϕ cos ϕ 0 cos ϕ cos θ sin ϕ cos θ (A17) Q T θ = 0 0 cos θ 0 0 sin ϕ sin θ 0 0 cos ϕ sin θ
The joint-angle derivatives are
(A18) M r η θ 1 = Q T m 1 S ( p 1 , C O M b ) J 1 θ 1 + m 2 S ( p 2 , C O M b ) J 2 θ 1 + m e e S ( p e e b ) J e e θ 1 (A19) M r η θ 2 = Q T m 2 S ( p 2 , C O M b ) J 2 θ 2 + m e e S ( p e e b ) J e e θ 2
where the second-order partials ∂Ji/∂θj are obtained by differentiating the Jacobian column expressions listed in Appendix B with respect to θj.
Base block Cqq: The derivatives of Mqq with respect to attitude angles and joint angles involve products of rotation matrix partials and skew-symmetric operators whose full expansion exceeds 200 terms. These are evaluated numerically via central differences on M(q) to numerical precision, following standard practice for floating base systems [15]. The skew-symmetry property M ˙ 2 C is verified at each time step with relative residual ϵskew < 5 × 10−4 across all experiments, confirming that the numerical Christoffel computation is consistent with the analytical mass matrix derived in Appendix B.

References

  1. Almurib, H.; Nathan, P.; Kumar, T. Control and path planning of quadrotor aerial vehicles for search and rescue. In Proceedings of the SICE Annual Conference, Tokyo, Japan, 13–18 September 2011; pp. 700–705. [Google Scholar]
  2. Wu, Y.; Wu, S.; Hu, X. Multi-constrained cooperative path planning of multiple drones for persistent surveillance in urban environments. Complex Intell. Syst. 2021, 7, 1633–1647. [Google Scholar] [CrossRef] [Scilit]
  3. Ruggiero, F.; Lippiello, V.; Ollero, A. Aerial Manipulation: A Literature Review. IEEE Robot. Autom. Lett. 2018, 3, 1957–1964. [Google Scholar] [CrossRef] [Scilit]
  4. Aerial Robotics Cooperative Assembly System. EU Research. 2011–2015. Available online: https://cordis.europa.eu/project/id/287617 (accessed on 7 April 2026).
  5. Korpela, C.; Orsag, M.; Danko, T.; Oh, P. Insertion tasks using an aerial manipulator. In Proceedings of the IEEE International Conference on Technologies for Practical Robot Applications (TePRA), Woburn, MA, USA, 14–15 April 2014. [Google Scholar]
  6. Khamseh, H.B.; Janabi-Sharifi, F.; Abdessameud, A. Aerial manipulation—A literature survey. Robot. Auton. Syst. 2018, 107, 221–235. [Google Scholar] [CrossRef] [Scilit]
  7. Barakou, S.C.; Tzafestas, C.S.; Valavanis, K.P. Control Strategies for Real-Time Aerial Manipulation with Multi-Dof Arms: A Survey. In Proceedings of the 2025 International Conference on Unmanned Aircraft Systems (ICUAS), Charlotte, NC, USA, 14–17 May 2025. [Google Scholar]
  8. Li, Z.; Li, H.; Xu, Q.; Yu, X.; Basin, M.V. Coupling Disturbance Modeling and Compensation for Aerial Manipulator in Highly Dynamic Motion. IEEE Trans. Cybern. 2024, 55, 124–135. [Google Scholar] [CrossRef] [Scilit] [PubMed]
  9. Wu, Y.; Zhou, Z.; Wei, M.; Cheng, H. Robust and Energy-Efficient Control for Multi-task Aerial Manipulation with Automatic Arm-switching. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Yokohama, Japan, 13–17 May 2024. [Google Scholar]
  10. Lee, D.; Seo, H.; Kim, D.; Kim, H.J. Aerial Manipulation using Model Predictive Control for Opening a Hinged Door. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Paris, France, 31 May–31 August 2020. [Google Scholar]
  11. Kim, S.; Choi, S.; Kim, H.J. Aerial Manipulation Using a Quadrotor with a Two DOF Robotic Arm. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Tokyo, Japan, 3–7 November 2013. [Google Scholar]
  12. Guo, P.; Xu, K.; Deng, H.; Liu, H.; Ding, X. Modeling and control for aerial manipulation based on center of inertia on SE(3). Nonlinear Dyn. 2023, 111, 369–389. [Google Scholar] [CrossRef] [Scilit]
  13. Bulut, N.; Turgut, A.; Arikan, K.B. Computed Torque Control of an Aerial Manipulation System with a Quadrotor and a 2-DOF Robotic Arm. In Proceedings of the 16th International Conference on Informatics in Control, Automation and Robotics, Prague, Czech Republic, 29–31 July 2019. [Google Scholar]
  14. Furrer, F.; Burri, M.; Achtelik, M.; Siegwart, R. RotorS—A Modular Gazebo MAV Simulator Framework. In Robot Operating System (ROS); Springer: Cham, Switzerland, 2016; Volume 1, pp. 595–625. [Google Scholar]
  15. Siciliano, B.; Sciavicco, L.; Villani, L.; Oriolo, G. Robotics: Modelling, Planning and Control; Springer: London, UK, 2009. [Google Scholar]
  16. Spong, M.W.; Hutchinson, S.; Vidyasagar, M. Robot Modeling and Control; John Wiley & Sons, Inc.: Hoboken, NJ, USA, 2005. [Google Scholar]
  17. Murray, R.M.; Li, Z.; Sastry, S.S. A Mathematical Introduction to Robotic Manipulation; CRC Press: Boca Raton, FL, USA, 1994. [Google Scholar]
  18. Featherstone, R. Rigid Body Dynamics Algorithms; Springer: New York, NY, USA, 2008. [Google Scholar]
  19. Lee, T.; McClamroch, M.L.N.H. Geometric tracking control of a quadrotor UAV on SE(3). In Proceedings of the 49th IEEE Conference on Decision and Control (CDC), Atlanta, GA, USA, 15–17 December 2010. [Google Scholar]
  20. Barakou, S.C.; Tzafestas, C.S.; Valavanis, K.P. Real-Time Applicable Cooperative Aerial Manipulation: A Survey. In Proceedings of the International Conference on Unmanned Aircraft Systems (ICUAS), Warsaw, Poland, 6–9 June 2023. [Google Scholar]
  21. Barakou, S.C.; Tzafestas, C.S.; Valavanis, K.P. A Survey of Modeling and Control Approaches for Cooperative Aerial Manipulation. In Proceedings of the International Conference on Unmanned Aircraft Systems (ICUAS), Chania-Crete, Greece, 4–7 June 2024. [Google Scholar]
  22. Barakou, S.C.; Tzafestas, C.S.; Valavanis, K.P. A Review of Real-Time Implementable Cooperative Aerial Manipulation Systems. Drones 2024, 8, 196. [Google Scholar] [CrossRef] [Scilit]
Figure 2. Control architecture.
Figure 2. Control architecture.
Drones 10 00274 g002
Figure 3. Quadrotor roll and pitch during Case 1 (hovering with arm ramp). CT exhibits larger transient pitch excursions (±0.13 rad) due to anticipatory coupling compensation via M, while PD shows smaller but sustained pitch deviations. Both controllers maintain near-zero roll, consistent with the planar arm geometry.
Figure 3. Quadrotor roll and pitch during Case 1 (hovering with arm ramp). CT exhibits larger transient pitch excursions (±0.13 rad) due to anticipatory coupling compensation via M, while PD shows smaller but sustained pitch deviations. Both controllers maintain near-zero roll, consistent with the planar arm geometry.
Drones 10 00274 g003
Figure 4. Arm ramp experiment. (a) Joint tracking error during Case 1. CT achieves near-zero steady-state error between transitions while PD exhibits prolonged settling of approximately 5 s per set point. (b) Joint angles (desired vs. actual) during Case 1. CT tracks the ±0.3 rad ramp within ≈2 s while PD requires ≈5 s to converge to each set point due to uncompensated inertial coupling.
Figure 4. Arm ramp experiment. (a) Joint tracking error during Case 1. CT achieves near-zero steady-state error between transitions while PD exhibits prolonged settling of approximately 5 s per set point. (b) Joint angles (desired vs. actual) during Case 1. CT tracks the ±0.3 rad ramp within ≈2 s while PD requires ≈5 s to converge to each set point due to uncompensated inertial coupling.
Drones 10 00274 g004
Figure 5. Quadrotor position tracking error norm during Case 1. CT shows brief transient peaks of 0.07–0.09 m returning to baseline within 2 s, while PD accumulates a sustained error of 0.13–0.14 m when the arm is held at ±0.3 rad due to the uncompensated shift in the system center of mass.
Figure 5. Quadrotor position tracking error norm during Case 1. CT shows brief transient peaks of 0.07–0.09 m returning to baseline within 2 s, while PD accumulates a sustained error of 0.13–0.14 m when the arm is held at ±0.3 rad due to the uncompensated shift in the system center of mass.
Drones 10 00274 g005
Figure 6. Quadrotor roll and pitch during Case 2 (hovering with sinusoidal arm trajectory at 0.5 Hz). CT maintains pitch below 0.02 rad while PD exhibits sustained oscillations of ±0.07 rad at arm trajectory frequency, attributed to uncompensated Coriolis coupling block C.
Figure 6. Quadrotor roll and pitch during Case 2 (hovering with sinusoidal arm trajectory at 0.5 Hz). CT maintains pitch below 0.02 rad while PD exhibits sustained oscillations of ±0.07 rad at arm trajectory frequency, attributed to uncompensated Coriolis coupling block C.
Drones 10 00274 g006
Figure 7. Arm trajectory experiment. (a) Quadrotor position tracking error norm during Case 2. CT maintains ≈0.031 m steady-state error while PD oscillates between 0.04–0.09 m at arm trajectory frequency. (b) Quadrotor position tracking error per axis during Case 2 with CT and PD overlaid. PD oscillations are concentrated along x-axis, consistent with pitch–translation coupling from planar arm motion.
Figure 7. Arm trajectory experiment. (a) Quadrotor position tracking error norm during Case 2. CT maintains ≈0.031 m steady-state error while PD oscillates between 0.04–0.09 m at arm trajectory frequency. (b) Quadrotor position tracking error per axis during Case 2 with CT and PD overlaid. PD oscillations are concentrated along x-axis, consistent with pitch–translation coupling from planar arm motion.
Drones 10 00274 g007
Figure 8. Arm joint tracking errors during Case 2. CT maintains Joint 1 error below 0.02 rad while PD exhibits persistent oscillations of 0.04–0.06 rad due to uncompensated Coriolis coupling at 0.5 Hz arm trajectory frequency.
Figure 8. Arm joint tracking errors during Case 2. CT maintains Joint 1 error below 0.02 rad while PD exhibits persistent oscillations of 0.04–0.06 rad due to uncompensated Coriolis coupling at 0.5 Hz arm trajectory frequency.
Drones 10 00274 g008
Figure 9. Quadrotor pitch during the Case 2 wind disturbance experiment (2 m/s lateral gust, 3 s duration, injected at t = 7.5 s). CT exhibits a peak of −0.32 rad resolving by t ≈ 11 s. PD reaches −0.40 rad and sustains oscillations for ≈5 s post-gust. Post-gust pitch RMS: CT 0.121 rad vs. PD 0.138 rad.
Figure 9. Quadrotor pitch during the Case 2 wind disturbance experiment (2 m/s lateral gust, 3 s duration, injected at t = 7.5 s). CT exhibits a peak of −0.32 rad resolving by t ≈ 11 s. PD reaches −0.40 rad and sustains oscillations for ≈5 s post-gust. Post-gust pitch RMS: CT 0.121 rad vs. PD 0.138 rad.
Drones 10 00274 g009
Figure 10. Quadrotor position tracking error per axis during the Case 2 wind disturbance experiment. The x-axis (gust direction) shows CT peaking at 0.55 m and PD at 0.71 m. Over t ∈ [5, 20] s, CT achieves 23% reduction in mean position error (0.13 m vs. 0.17 m) and 27% reduction in IAE (2.04 vs. 2.80 m·s). The y- and z-axes remain comparable between both controllers.
Figure 10. Quadrotor position tracking error per axis during the Case 2 wind disturbance experiment. The x-axis (gust direction) shows CT peaking at 0.55 m and PD at 0.71 m. Over t ∈ [5, 20] s, CT achieves 23% reduction in mean position error (0.13 m vs. 0.17 m) and 27% reduction in IAE (2.04 vs. 2.80 m·s). The y- and z-axes remain comparable between both controllers.
Drones 10 00274 g010
Figure 11. Arm joint tracking errors during the Case 2 wind disturbance experiment. Joint 1 (top): CT stays below 0.03 rad after startup transient; PD oscillates 0.02–0.11 rad throughout. Joint 2 (bottom): CT exhibits marginally larger oscillations than PD, attributable to pitch corrections propagating through M—an inherent trade-off of the coupled architecture. IAE joint: CT 1.14 rad·s vs. PD 1.34 rad·s.
Figure 11. Arm joint tracking errors during the Case 2 wind disturbance experiment. Joint 1 (top): CT stays below 0.03 rad after startup transient; PD oscillates 0.02–0.11 rad throughout. Joint 2 (bottom): CT exhibits marginally larger oscillations than PD, attributable to pitch corrections propagating through M—an inherent trade-off of the coupled architecture. IAE joint: CT 1.14 rad·s vs. PD 1.34 rad·s.
Drones 10 00274 g011
Figure 12. Aerial manipulation experiment. (a) Quadrotor position tracking error during Case 3 (circular trajectory with simultaneous arm motion). CT reaches steady state in ≈3 s while PD requires ≈7 s. Both controllers show transient spike at t ≈ 21 s, corresponding to trajectory termination. (b) Quadrotor orientation during Case 3. CT maintains pitch below 0.02 rad during steady state while PD exhibits sustained oscillations of ≈0.05 rad at arm trajectory frequency (0.5 Hz).
Figure 12. Aerial manipulation experiment. (a) Quadrotor position tracking error during Case 3 (circular trajectory with simultaneous arm motion). CT reaches steady state in ≈3 s while PD requires ≈7 s. Both controllers show transient spike at t ≈ 21 s, corresponding to trajectory termination. (b) Quadrotor orientation during Case 3. CT maintains pitch below 0.02 rad during steady state while PD exhibits sustained oscillations of ≈0.05 rad at arm trajectory frequency (0.5 Hz).
Drones 10 00274 g012
Figure 13. End-effector position in the world frame (desired vs. actual) during Case 3. CT tracks the desired trajectory with smaller deviations in all axes, achieving a 46% reduction in mean end-effector error compared to PD (0.036 m vs. 0.066 m).
Figure 13. End-effector position in the world frame (desired vs. actual) during Case 3. CT tracks the desired trajectory with smaller deviations in all axes, achieving a 46% reduction in mean end-effector error compared to PD (0.036 m vs. 0.066 m).
Drones 10 00274 g013
Figure 14. Aerial manipulation experiment. (a) Arm joint tracking errors during Case 3. CT achieves Joint 1 errors below 0.005 rad during steady state compared to persistent oscillations of 0.02–0.04 rad for PD. (b) End-effector tracking error norm in world frame during Case 3. CT maintains ≈0.035 m while PD oscillates between 0.04–0.10 m at arm trajectory frequency.
Figure 14. Aerial manipulation experiment. (a) Arm joint tracking errors during Case 3. CT achieves Joint 1 errors below 0.005 rad during steady state compared to persistent oscillations of 0.02–0.04 rad for PD. (b) End-effector tracking error norm in world frame during Case 3. CT maintains ≈0.035 m while PD oscillates between 0.04–0.10 m at arm trajectory frequency.
Drones 10 00274 g014
Figure 15. End-effector tracking error per axis during Case 3. PD exhibits persistent oscillations of ±0.05–±0.10 m in the horizontal plane (x, y), while CT maintains near-zero errors during steady-state operation. The z-axis offset of ≈0.03–0.04 m is present in both controllers and is attributed to the steady-state altitude error induced by the manipulator weight.
Figure 15. End-effector tracking error per axis during Case 3. PD exhibits persistent oscillations of ±0.05–±0.10 m in the horizontal plane (x, y), while CT maintains near-zero errors during steady-state operation. The z-axis offset of ≈0.03–0.04 m is present in both controllers and is attributed to the steady-state altitude error induced by the manipulator weight.
Drones 10 00274 g015
Figure 16. Quadrotor position tracking error norm during Case 3 under 2 m/s constant lateral wind (t ∈ [6, 16] s). CT maintains a steady mean error of 0.577 m with ±0.01 m ripple, while PD oscillates between 0.62 and 0.73 m. CT achieves a 14% reduction in mean and 19% reduction in peak position error.
Figure 16. Quadrotor position tracking error norm during Case 3 under 2 m/s constant lateral wind (t ∈ [6, 16] s). CT maintains a steady mean error of 0.577 m with ±0.01 m ripple, while PD oscillates between 0.62 and 0.73 m. CT achieves a 14% reduction in mean and 19% reduction in peak position error.
Drones 10 00274 g016
Figure 17. Quadrotor orientation during Case 3 under 2 m/s constant lateral wind (t ∈ [6, 16] s). Both controllers share a steady-state pitch bias of −0.28 rad from thrust vectoring against the wind; CT suppresses coupling-induced pitch oscillations to ±0.02 rad vs. ±0.06 rad for PD.
Figure 17. Quadrotor orientation during Case 3 under 2 m/s constant lateral wind (t ∈ [6, 16] s). Both controllers share a steady-state pitch bias of −0.28 rad from thrust vectoring against the wind; CT suppresses coupling-induced pitch oscillations to ±0.02 rad vs. ±0.06 rad for PD.
Drones 10 00274 g017
Figure 18. End-effector tracking error norm during Case 3 under 2 m/s constant lateral wind (t ∈ [6, 16] s). CT maintains 0.661 m mean EE error with ±0.01 m oscillation, while PD oscillates between 0.65 and 0.83 m. CT achieves 11% reduction in mean EE error (0.661 m vs. 0.741 m) and 17% reduction in peak (0.684 m vs. 0.829 m).
Figure 18. End-effector tracking error norm during Case 3 under 2 m/s constant lateral wind (t ∈ [6, 16] s). CT maintains 0.661 m mean EE error with ±0.01 m oscillation, while PD oscillates between 0.65 and 0.83 m. CT achieves 11% reduction in mean EE error (0.661 m vs. 0.741 m) and 17% reduction in peak (0.684 m vs. 0.829 m).
Drones 10 00274 g018
Table 1. System parameters.
Table 1. System parameters.
ParameterSymbolValue
Quadrotor
Quadrotor massmb0.716 kg
Quadrotor inertia (x, y)Ixx, Iyy7.0 × 10−3 kg·m2
Quadrotor inertia (z)Izz1.2 × 10−2 kg·m2
Rotor thrust coefficientcT8.549 × 10−6 N·s2/rad2
Rotor moment coefficientcM1.6 × 10−2 m
Rotor-to-CoM distanced0.17 m
Rotor drag coefficientcD 8.064 × 10−5
Manipulator
Link 1 massm10.04 kg
Link 2 massm20.04 kg
End-effector massmee0.01 kg
Link 1 lengthL10.15 m
Link 2 lengthL20.15 m
Link 1 CoM distancelc10.075 m
Link 2 CoM distancelc20.075 m
Link 1 moment of inertiaI1,yy7.5 × 10−5 kg·m2
Link 2 moment of inertiaI2,yy7.5 × 10−5 kg·m2
Table 2. Expanded metric comparison between all test cases. Steady-state metrics computed over t ∈ [10, 20] s; transient metrics computed over t ∈ [0, 8] s; IAE computed over full run. Bold indicates better-performing controller.
Table 2. Expanded metric comparison between all test cases. Steady-state metrics computed over t ∈ [10, 20] s; transient metrics computed over t ∈ [0, 8] s; IAE computed over full run. Bold indicates better-performing controller.
Case 1: RampCase 2: TrajectoryCase 3: Aerial
MetricCTPDCTPDCTPD
Steady-state metrics
Joint error mean [rad]0.0190.0570.0360.0490.0120.031
Joint error max [rad]0.2650.3000.1050.0730.0250.039
Drone pos mean [m]0.0400.0830.0310.0650.0350.053
Drone pos max [m]0.0760.1400.0340.0890.0380.083
EE error mean [m]0.0360.066
EE error max [m]0.0410.113
Pitch RMS [rad]0.0260.0120.0100.0560.0100.039
Roll RMS [rad]0.00020.00010.00010.00070.0060.007
τ1 RMS [Nm]0.0360.0410.0450.0560.0300.033
τ2 RMS [Nm]0.0120.0100.0100.0090.0060.006
Transient and integrated metrics
Peak pitch trans. [rad]0.1300.0120.2270.0030.2450.012
Peak pos trans. [m]0.0880.0350.0990.0370.3020.303
Settling time [s]<10<101023.51024.5
IAE pos [m·s]1.172.330.941.472.943.89
IAE joint [rad·s]2.173.682.422.621.261.99
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Barakou, S.C.; Tzafestas, C.S.; Valavanis, K.P. Hybrid Geometric Computed Torque Control of a Quadrotor with an Attached 2-DOF Robotic Arm. Drones 2026, 10, 274. https://doi.org/10.3390/drones10040274

AMA Style

Barakou SC, Tzafestas CS, Valavanis KP. Hybrid Geometric Computed Torque Control of a Quadrotor with an Attached 2-DOF Robotic Arm. Drones. 2026; 10(4):274. https://doi.org/10.3390/drones10040274

Chicago/Turabian Style

Barakou, Stamatina C., Costas S. Tzafestas, and Kimon P. Valavanis. 2026. "Hybrid Geometric Computed Torque Control of a Quadrotor with an Attached 2-DOF Robotic Arm" Drones 10, no. 4: 274. https://doi.org/10.3390/drones10040274

APA Style

Barakou, S. C., Tzafestas, C. S., & Valavanis, K. P. (2026). Hybrid Geometric Computed Torque Control of a Quadrotor with an Attached 2-DOF Robotic Arm. Drones, 10(4), 274. https://doi.org/10.3390/drones10040274

Article Metrics

Back to TopTop