Abstract
Several factors need to be taken into account when generating a feasible optimized trajectory. The optimization process heavily relies on the dynamic model of the system. Currently, there are various drone designs available, categorized based on their actuation status. In this study, we apply a trajectory optimization technique to a fully actuated hexacopter (FA-Hex), which is a new application to the best of our knowledge. This type of vehicle has been successfully integrated into several practical applications. Unlike the under-actuated hexacopter (UA-Hex), the FA-Hex can perform maneuvers with minimal banking angles, significantly enhancing the drone’s maneuverability. Our research focuses specifically on trajectory optimization for the FA-Hex and demonstrates the adaptability of our method to different scenarios. We discuss two specific applications: a drone filming without a gimbal joint and a drone with a cable-suspended pendulum. We compare the simulation results with the UA-Hex model to highlight the differences in maneuverability between the two systems. The trajectory optimization is performed offline using CasADi in the MATLAB framework.
Introduction
Aerial robotic systems have found extensive applications in various fields, including package delivery, photography, rescue operations, and construction inspection.1,2 These missions have led to the development of different types of vehicles tailored to meet specific requirements. Nowadays, aerial systems utilize cable-suspended loads for package delivery in various environments. Additionally, vehicles designed for photography and inspection purposes often integrate a gimbal joint to ensure optimal camera positioning. In these cases, minimizing drone weight and optimizing trajectory and energy consumption are essential objectives. However, striking a balance between control and vehicle design is critical to achieving optimal performance. Aerial vehicle systems can be classified based on their actuation level as under-actuated (UA), fully-actuated (FA), and over-actuated (OV) systems. 3 A quad-rotor drone serves as a common example of an UA system, which relies on total thrust and three torques as virtual control inputs. However, these virtual control inputs are insufficient to directly control all 6 degrees of freedom (DoF) of the system. On the other hand, a FA system possesses a number of virtual controllers equal to the DoF, matching the number of actuators. Conversely, OV drones have an excess number of actuators, enabling them to handle actuator failures using various control allocation techniques. FA vehicles have a more extensive range of maneuvers compared to UA ones. Some drones can adapt to online actuation changes by employing additional servo motors that consider the tilt angle of the motors.
Indeed, hexacopters can be classified as either UA or FA systems based on their actuator configuration. Hexacopters with actuators in one plane, which typically means they have fixed propellers, are considered UA systems. On the other hand, hexacopters equipped with tilting actuators, often known as coaxial hexacopters or hexacopters with tilting propellers, are recognized as FA systems. The ability of the latter to tilt their actuators provides them with greater control authority and maneuverability, allowing them to be fully actuated and perform more complex maneuvers compared to the former.
This work’s primary contribution lies in its flexible approach to solving trajectory optimization problems, which can be adapted to suit a wide range of drone applications. The emphasis lies on scenarios where drones track specific objects through photography. In such cases, it is vital for the drone to maintain a clear field of view of the target by moving with minimal banking angles. Improving the trajectory sent to the low-level controller enhances the drone’s ability to accomplish assigned tasks effectively. Additionally, the FA-Hex can be used for package delivery with the help of a cable-suspended pendulum mechanism. This setup enables the drone to reduce oscillations and perform precise maneuvers, even in challenging and static environments.
Design and control strategies
Various vehicle design and control strategies have been developed and utilized to manage the dynamics of FA drones. Employing these vehicles offers the key advantage of independent attitude and altitude control by decoupling their dynamics. 4 Non-linear control based on full geometric control, ensuring precise position tracking, is applied by Franchi et al. 5 and Ryll et al. 6 Stability of the resulting controller is established using Lyapunov techniques. Furthermore, Rajappa et al. 7 proposes an optimal design for the tilted angle based on the active set of possible wrenches exerted by the FA drone, using a feedback linearization control approach with a PID controller to decouple position and orientation control. Another approach is presented in Odelga et al., 8 by adding a tilting mechanism to the motors of the UA drone, incorporating two servo actuators to rotate the rotor’s angle in radial and tangential directions around the arm. Feedback-linearization control is employed for managing the drone’s dynamics. To handle environmental perturbations, Arizaga et al., 9 uses adaptive control for the FA-Hex drone. Similarly, Arizaga et al. 10 proposes adaptive sliding mode control for FA-Hex drones with a cable-suspended pendulum, compensating for the inability to measure the load’s position by developing an extended gain observer-based adaptive sliding mode approach.
Trajectory optimization
Generating a reference trajectory to be tracked by the lower-level controllers is a demanding task when working with FA vehicles. Currently, the literature review on trajectory optimization primarily focuses on UA vehicles. Therefore, it becomes a challenging problem to develop an optimal controller that generates desired positions and orientations for FA vehicles. The research in this area can be categorized into two main approaches. Firstly, a differential flatness approach is utilized to obtain a smooth and feasible trajectory.11–14 Secondly, the dynamical model is incorporated as a constraint in the optimization problem.15–17 Utilizing the differential flatness approach in formulating the optimization problem has shown to reduce computational time. It has been demonstrated by Sreenath and Lee
14
that the UA quad-rotor drones are differential flat systems, which can be characterized by the following flat output vector: position
We organize the remainder of the paper as follows. In Sections and, we present the mathematical model of the FA-Hex and the extended model that incorporates a cable-suspended pendulum, and in Section “Trajectory optimization problem”, we formulate the proposed trajectory optimization problem. In Section “Simulations” the simulation results are presented based on the defined optimization problem.
Model and system variables
The importance of the dynamical system in achieving workable results, as mentioned earlier, makes it necessary to define the mathematical model of the system we’re looking at. In this section, we present the dynamic model of the FA-Hex and its extension to include the cable-suspended pendulum. The model is derived from Newton’s Euler equation, while taking into account the following assumptions:
The drone is assumed to be a rigid body. The drone is assumed to be symmetric with respect to its axis, and its inertia matrix is diagonal and denoted as
FA-Hex modeling
The modeling approach of the drone involves two main frames: the inertial frame

Fully Actuated Hexacopter attached to a payload with Inertial (
The position of the drone in the inertial frame is denoted as

Forces projection in the lateral plane with the motor tilting angles
Forces and torques projections.
FA-Hex modeling with cable suspended pendulum
The FA-Hex system with the cable-suspended payload operates in a hybrid mode, which relies on the tension force in the cable, as discussed in Sreenath and Lee. 14 The payload’s behavior is modeled under two main scenarios: taut and slack cables. The transition between these modes adds intricacy to the modeling approach, thus augmenting the complexity of the optimization function. Nevertheless, by introducing a linear complementary constraint into the optimization problem, it is feasible to eliminate the necessity for the hybrid model. 15
The state vector of the model is expanded and modified to incorporate both the position and velocity of the load. This state is denoted as
Trajectory optimization problem
Optimization methods are employed to address trajectory optimization problems by minimizing a cost function, while taking into account different constraints. To achieve a viable and physically relevant solution, the optimization problem needs to encompass the system dynamics along with the practical restrictions on the states and inputs. Broadly, optimization problems fall into two primary categories: direct methods 18 and indirect methods. 16
The indirect method involves formulating the optimization problem as a boundary value problem (BVP) and solving it by defining the co-state vector. It is worth mentioning that the model of the system is incorporated into the Hamiltonian-Jacobian-Bellman equation, which is solved using the BVP approach. On the other hand, the direct optimization problem takes into account a discrete dynamical model along with its constraints. The main distinction between the two methods lies in the integration aspect. Direct methods are known for incorporating integrated solutions for the dynamical model within their approach. It is worth noting that indirect methods generally tend to be more accurate than direct methods, provided that a good initial guess can be obtained, which can be challenging in practice. However, in the realm of robotics applications, direct methods are widely utilized for designing optimal controllers. This preference is largely attributed to their expansive region of convergence. 19
In this work, our focus is on utilizing a direct method to obtain the optimal trajectory. Direct methods can be formulated using shooting and collocation methods, with the choice depending on the specific dynamical equation. When an explicit model is available, the shooting method is often employed. This method involves decomposing the trajectory into sub-optimal intervals and calculating the spline between each interval. The formulation can be done through single shooting, where only the state variables are optimized, or multiple shooting, where both control inputs and states are optimized at each control interval. The resulting discrete problem is then addressed using non-linear programming methods. 18
General problem formulation
We pose our trajectory optimization problem as follows :
FA-Hex
First, we will define the optimization problem for the FA-Hex targeting photography application.
Cost Function: The cost function to be minimized is defined as follows: Dynamical Model Constraint: The dynamical model, defined in Section “FA-Hex modeling”, is discretized using fourth-order Runge-Kutta. This model is employed to ensure the attainment of dynamically feasible states by solving Multiple-Shooting Constraint: The method involves computing the next state using the discretized model. The computed next state is constrained to align with the optimized parameter, which can be achieved by ensuring that Boundary Conditions: To ensure that the optimization problem begins and ends within feasible constraints, additional boundary constraints are included. The variables State and Input Constraint: The states and inputs of the system should not exceed their respective boundaries. To enforce this requirement, two additional equations (12, 13) are introduced to the function Waypoint Navigation Constraint: The primary objective of this work is to navigate and fly over specific points. To achieve this goal, an additional constraint is introduced:
FA-Hex with cable suspended pendulum
In this section, we will introduce the extended constraints and objective function that are used to optimize the trajectory for FA-Hex with a cable-suspended pendulum.
Cost Function: The extended cost function to be minimized on the variables is defined as follows: Here, Dynamical Model Constraint: The extended dynamical model introduced in Section ‘FA-Hex modeling with cable suspended pendulum” is also discretized using fourth-order Runge-Kutta and incorporated into the equality constraints Linear Complementary Constraint: This constraint is added to eliminate the hybrid dynamical model, assuming that either the slack mode or the taut mode is present. It is represented by Tension Boundaries Constraint: To ensure a realistic and feasible solution, it is important to impose bounds on the tension. This can be achieved by incorporating the constraint Cable Length Constraint: In addition to the complementary constraint, the length of the cable should be positive, Payload Swung Angle Constraint: To prevent swinging and potential collisions with the drone, a constraint is introduced as
The other constraints defined in the FA-Hex drone are primarily utilized as constraints for this particular application.
Simulations
The defined optimization problem is formulated as a nonlinear optimization problem using the CasADi Toolbox. 21 As mentioned earlier, this study considers two primary scenarios: simple FA-Hex and FA-Hex with a cable-suspended pendulum. A comparison between FA-Hex and UA-Hex is accomplished showing the enhancing of maneuverability of the FA-Hex. The drone parameters used to simulate the drone model are presented in Table 2.
Drone simulation parameters.
FA-Hex and UA-Hex trajectory generation
The scenario involves the drone passing through multiple waypoints. To assess the algorithm’s ability to achieve minimal banking angles, several test cases were conducted. A trajectory comprising four points is shown in Figure 3. The time allotted for this scenario is

Projection in the horizontal plane of the optimized trajectory for FA-Hex and UA-Hex drones as they fly between specified points and then return to their intial positions. The points are defined by their coordinates:

Euler angles comparison between FA-Hex and UA-Hex.
FA-Hex with cable suspended pendulum
In another application, the optimization problem is expanded, as explained in Section “FA-Hex with cable suspended pendulum”, to be solved across the optimization variables

Projection in the horizontal plane of the optimized trajectory for FA-Hex with cable suspended pendulum.
Initial guess
The initial guess plays a pivotal role in ensuring the optimization problem converges to its optimal solution. Providing a feasible initial guess that closely approximates the expected solution is essential. This step is critical for achieving convergence and reducing computational time needed to solve the problem. In this context, it is important to note that the drone is initially treated as a UA system. The differential flatness approach is employed to generate an initial guess for the problem. Furthermore, motion planning algorithms grounded in graph theory, such as the
Conclusion and extensions
In this work, we have proposed a trajectory optimization formulation for FA-Hex systems. The simulations demonstrate the feasibility of this approach by generating trajectories with minimal banking angles. However, the algorithms used in this study have certain constraints when it comes to defining the nodes and time. The algorithm shows fast performance when when the trajectory is divided into
Footnotes
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: The author(s) received funding from the ONERA – ENAC – ISAE SUPAERO federation for support the research project.
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
