Preliminary design, modeling and control of a fully actuated quadrotor UAV

In this paper a preliminary study on a new concept of fully actuated Unmanned Aerial Vehicle (UAV), named ODQuad (OmniDirectional Quadrotor), is presented. By exploiting two additional actuators, the designed UAV can simultaneously modify the tilting angle of all the propellers, in such a way to decouple position and attitude motions. This solution, differently from other fully actuated UAVs with tilted propellers, avoids internal forces and energy dissipation, due to non-parallel propellers’ axes. A preliminary mechanical design and the kinematic and dynamic models are developed. Moreover, a motion control scheme, based on a hierarchical two loop, has been designed. Simulations are provided in order to show the feasibility of the concept and the effectiveness of the control scheme.


I. INTRODUCTION
Vertical Take Off and Landing (VTOL) Unmanned Aerial Vehicles (UAVs) offer several advantages over standard mobile robots operating on ground in many application scenarios (e.g., inspection and manteinance services [1], data collection and exploration operations [2], precision agriculture [3]).More recently, aerial manipulators (i.e., UAVs equipped with grippers or robotic arms) opened up a new stream of applications, e.g., in assembly of structures in remote environments, maintenaince operations and payload transportation [4], [5].
A typical configuration of a VTOL UAV is that of a multi-rotor vehicle, i.e., an aerial vehicle equipped with four or more coplanar propellers.A classical multi-rotor vehicle is an underactuated system, since thrusts generated by propellers are directed along parallel axes, orthogonal to the plane of the propellers [6].In fact, in order to change its position and/or counteract external disturbances, a rotation of vehicle's body is required.This limitation may become severe in some applications, e.g., manipulation tasks involving contact with the environment [7], and/or limit the distrubance counteraction capabilities of the system.
In order to overcome this problem, recently, the interest of the research community has focused on omnidirectional platforms, which combine the advantages of existing multirotor systems with the agility and the maneuverability of fully actuated UAVs.One of the most common approaches is based on the use of tilted propellers A tilt-wing mechanism has been proposed in [8] and [9], where a vehicle This work was supported in part by the European Commission through the Horizon 2020 Program under Grant 644271 (AEROARMSAErial RObotic system integrating multiple ARMS and advanced manipulation capabilities for inspection and maintenance).
School of engineering University of Basilicata Potenza, Italy {michelangelo.nigro,francesco.pierri,fabrizio.caccavale}@unibas.itequipped with four wings, that can be rotated from vertical to horizontal position, is designed.Such a solution requires at least seven actuators, in order to decouple position and orientation control, thus resulting in an overactuated system.Other overactuated quadrotor UAVs with titling propellers has been proposed in [10], where 4 additional control inputs are adopted for tilting the propeller's arms, and in [11], where 4 motors are adopted for propellers rotation and 8 servomotors are used for tilting each propeller.The adoption of overactuated platforms increases the system weight, due to additional motors, and the complexity of the control because of the need of handling both vertical and lateral air flows.To overcome this problem, hexarotors with tilted propellers have been proposed.In [12] each rotor is mounted in a fixed configuration rotated about two axes.The two angular parameters defining the rotor tilting are obtained via optimization, aimed at reducing the control effort magnitude.Adoption of an hexacopter in lieu of the quadrotor configuration allows to increase the system payload and the robustness to faults, at the expense of a slightly more complex mechanical structure.An eight-rotor configuration is adopted in [13].
To increase the efficiency, in [14], a new UAV concept is proposed, with an additional motor aimed at tilting all propellers at the same time, where the tilting angle is computed by an high-level slow-rate controller.The use of a single motor reduces the energy consumption and the total mass, allowing to drive the platform from a configuration energetically efficient, but underactuated, to a fully actuated, but less efficient, one.
More recently, in [15], an hexarotor with independently tiltable rotors is designed and experimentally tested, where the tilting angle of the rotors is computed on line via a suitable control allocation scheme: this solution, however, does not avoid internal wrenches caused by counteracting actuators and uses redundant control inputs.
In [16], the tilting angle of the propellers of a quadrotor is simultaneously controlled by two additional actuators by employing a parallelogram mechanism; the idea is to change the orientation of all propellers, keeping them aligned along the same direction: hence, this solution does not suffer from energy dissipation, due to internal wrench caused by counteracting actuators and uses six inputs to control six Degrees of Freedom (DOFs); a feedback linearization approach is adopted for motion control, requiring acceleration feedback.
The aim of this paper is to present a new concept of an aerial vehicle, named ODQuad (OmniDirectional Quadrotor), able to fly in any position with any orientation, having the same main features of the solution in [16], i.e., avoiding internal wrenches and redundant inputs.To this purpose, a novel mechanical design is adopted, where the frame, on which the four rotors are mounted, is rotated via two rotational joints realizing a two-axis (roll and pitch) gimbal mechanism.In this way, the adoption of complex closedchain mechanisms is avoided.Although the approach is developed for a quadrotor configuration, it might be easily exploited for other multirotor configurations.
In detail, a preliminary mechanical design of the system is carried out, and kinematic and dynamical models are developed; the obtained results will be exploited to design and build a first prototype of the ODQuad.Also, a motion scheme, based on a hierarchical approach used for underactuated multirotor systems, is designed and tested in simulation: the scheme computes in real time the angles of the gimbal joints, based on the required forces and moments to achieve the desired motion.
Finally, the main features of the designed system are summarized and discussed, together with a brief description of the ongoing work.

II. KINEMATIC STRUCTURE
The proposed vehicle is based on three components: • A platform, hosting computing hardware, electronics, batteries and sensors; • A rotor frame, that supports the propellers; • A mobile frame, that connects the platform and the rotor frames.The three components are sketched in Fig. 1.A rotational joint connects the platform to mobile frame (roll joint, see Fig. 1(b)), while the mobile frame and the rotor frame are connected via another rotational joint (pitch joint, see Fig. 1(c)) with axis orthogonal to the previous one.
During the motion, the vehicle modifies the orientation of the rotor frame to generate a thrust component along an arbitrary direction.In this way, the platform can assume any orientation independently from that of the rotor frame.
Let us define the following relevant coordinate frames: • Inertial coordinate frame, Σ{O, x, y, z}; • The coordinate frame Σ 0 {O 0 , x 0 , y 0 , z 0 }, attached to the platform in such a way that the axis x 0 coincides with the axis of the roll joint; mobile frame in such a way that the axis x 1 coincides with the axis of the pitch joint; • The coordinate frame Σ 2 {O 2 , x 2 , y 2 , z 2 }, attached to the rotor frame in such a way that the axis x 2 coincides with x 1 .It is worth noticing that Σ 0 , Σ 1 and Σ 2 , without loss of generality, have been chosen such that O 0 ≡ O 1 ≡ O 2 .The relative orientation between the coordinate frames is given by the following rotation matrices where α is the pitch angle, β is the roll angle, c α = cos α, s α = sin α, c β = cos β and s β = sin β and R j i denotes the orientation of Σ i with respect to Σ j .

III. MODELING
The dynamic model of the system can be derived by considering the Euler-Lagrange formulation, in which the mechanical system is characterized by the function where T and U denote the total kinetic and potential energy, respectively.The Lagrange equations are given by where q i is the i-th generalized coordinate of the system and ζ i is the corresponding generalized force.The chosen generalized coordinates are where p 0 ∈ IR 3 is the position of O 0 with respect to the inertial frame, φ 0 = [ϕ ϑ ψ] T ∈ IR 3 is the vector of Euler angles (e.g., roll-pitch-yaw angles) representing the platform orientation with respect to the inertial frame, and δ = [α β] T ∈ IR 2 collects the gimbal joint positions.

A. Kinematics
Let us consider a coordinate frame, Σ C0 , attached to the center of mass, C 0 , of the platform and having the same orientation of Σ 0 .The position of C 0 with respect to the inertial frame can be expressed as where R 0 is the rotation matrix expressing the platform orientation with respect to the inertial frame and the vector r 0 0,C0 denotes the position of C 0 with respect to O 0 , expressed in Σ 0 .By differentiating (6), the linear and angular velocities of Σ C0 are given by where ω * is the angular velocity of the coordinate frame Σ * ( * = C 0 , 0), expressed in the inertial frame, and S(•) is the skew-symmetric operator performing the cross product [17].Equation ( 7) can be expressed in terms of the generalized coordinates as follows ṗC0 = J P0 (q) q ω C0 = J O0 (q) q, where the Jacobian matrices J P0 ∈ IR 3×8 and J O0 ∈ IR 3×8 are given by Preprint version accepted at 2019 International Conference on Unmanned Aircraft Systems (ICUAS).
Final version available at http://ieeexplore.ieee.org/ where the vector r 1 1,C1 represents the position of is the rotation matrix expressing the orientation of Σ 1 with respect to the inertial frame.Since O 1 ≡ O 0 , (11) can be rewritten as: The linear and angular velocities of Σ C1 are given by Since the Jacobian matrices J P1 ∈ IR 3×8 and J O1 ∈ IR 3×8 are given by where x 0 is the first column of R 0 .
Let us consider a coordinate frame, Σ C2 , attached to the center of mass, C 2 , of the rotor frame and having the same orientation of Σ 2 .The position of C 2 can be expressed in the inertial frame as where the vector r 2 2,C2 represents the position expresses the orientation of Σ 2 with respect to the inertial frame.Since O 2 ≡ O 0 , ( 17) can be rewritten as: The linear and angular velocities of Σ C2 are given by where x 1 is the first column of R 1 , and the Jacobian matrices J P2 ∈ IR 3×8 and J O2 ∈ IR 3×8 are given by

B. Dynamics
The kinetic energy, T , for the ith body (i = 0, 1, 2) is given by where m i is the mass, M i = R i M i i R T i is the inertia tensor expressed in the inertial frame, while M i i is the inertia tensor expressed in Σ i .
The potential energy U for the ith body (i = 0, 1, 2) can be written as where ḡ = 0 0 −9.81 is the gravitational acceleration vector.By virtue of (3), ( 22) and (23) the dynamic model can be written in compact form as Preprint version accepted at 2019 International Conference on Unmanned Aircraft Systems (ICUAS).
Final version available at http://ieeexplore.ieee.org/where M (q) ∈ IR 8×8 is the inertia matrix C(q, q) ∈ IR 8×8 collects the Coriolis and centrifugal terms C(q, q) q = Ṁ (q) q − ∂ ∂q g(q) ∈ IR 8 contains the generalized gravitational forces and F q ∈ IR 8 is a term collecting friction forces and aerodynamics disturbances at low velocities.The vector ζ collects the external generalized forces acting as inputs, i.e., where f 0 and µ 0 are the force and moment, respectively, acting on the platform and τ δ ∈ IR 2 are the torques acting on the gimbal joints.The force f 0 depends on the four propellers' thrusts, σ i (i = 1, . . ., 4).Such thrusts are directed along the z 2 axis, thus the total force acting on the platform, expressed in Σ 2 , has the following expression f 2 2 = [0 0 f z ] T .By exploiting f 2 2 , f 0 can be expressed as Analogously, the moment µ 0 can be written as where µ 2 2 is the moment generated by the propellers expressed in frame Σ 2 .In turn, f 2 2 and µ 2 2 can be expressed as [6] where l > 0 is the distance from each motor to the origin O 2 , c = γ d /γ t , with γ d and γ t the drag and thrust coefficients, respectively.The torque vector τ δ is given by the sum of the torques generated by the joint actuators, τ c , and the effect of the thrusts on the joints where For control design purposes, the matrices in (24) can be written as block matrices The block decomposition allows to rearrange the dynamic model (24) as ) where the matrix dependencies have been dropped for compactness.

IV. CONTROL
In this Section, a model-based motion control scheme for the ODQuad is developed.The control scheme is inherited from the approach developed in [5] for aerial manipulators and is based on a two-loop approach.The outer loop implements the position controller: its output is the force to be applied to the vehicle's platform required to achieve the desired vehicle's position trajectory and the reference angles for the gimbal joints.The inner loop, on the basis of the vehicle's desired orientation and the reference joint angles, computes the moment and the torques for the joints required to achieve the desired angular motion.A sketch of the control block scheme is reported in Fig. 2.

A. Position controller
The position controller is based on the well-known inverse dynamics approach, aimed at achieving global linearization of the closed-loop dynamics.To this purpose, the commanded force to be applied to the platform is computed as where it has been assumed M pδ O 3×2 and F p can be neglected since, usually, it is not available without an experimental identification.This assumption, verified with an excellent approximation in practice, as shown in Section V, allows to decouple the inner and the outer loop.The auxiliary inputs γ * ( * = p, φ) are computed as Preprint version accepted at 2019 International Conference on Unmanned Aircraft Systems (ICUAS).

B. Attitude and roll-pitch controller
The force f 0,c is the control input to be applied to the platform expressed in the inertial frame.In order to compute the reference roll-pitch angles it is worth expressing the control input in the frame Σ 0 , i.e., f 0 0,c = R T 0 f 0,c , and in view of (29) relating it to the commanded total force to be provided by the four propellers, f 2 2,c .Thus By considering ( 1) and ( 2), the following equation can be derived Hence, the desired values of the joints angles and the total thrust to be delivered by the propellers can be computed as The desired velocity and acceleration of the joints can be obtained via numerical differentiation.Since, in practice, α d and β d are affected by noise, the desired velocities and accelerations are to be computed by using suitable robustto-noise filters.A possible approach is detailed in [5], where the time-varying filter proposed in [18] is adopted in order to compute both the first and second time-derivatives of the reference values.
The commanded moment to be applied to the platform and the joint torques can be computed as in (34) where the auxiliary input γ δ is computed as with K D,δ , K P,δ and K I,δ symmetric and positive definite gain matrices.It is worth noticing that F φ and F δ have been neglected for the same reasons of F p .In view of (30), the commanded total moment to be provided by the four propellers, µ 2 2,c , can be computed as Finally, the rotor thrusts can be easily obtained via (31)

V. SIMULATION CASE STUDY
In order to validate the proposed UAV concept and the proposed controller, a simulation case study has been developed.
The mechanical design has been carried via CAD software, which has been used to compute masses and inertia.The main geometric and dynamic parameters of the system are reported in Table I.Then, the UAV has been modeled as a multi-body system in the MATLAB © SimMechanics environment.The control gains are reported in Table II.
It is assumed that reliable measurements of the position and the orientation of the platform are available.This assumption can be hardly fulfilled in many practical cases; however, since this paper is a preliminary feasibility study Preprint version accepted at 2019 International Conference on Unmanned Aircraft Systems (ICUAS).
Final version available at http://ieeexplore.ieee.org/  of a novel UAV concept, it looks appropriate to tackle details on sensing in a separate study.Moreover, it is assumed that measurements of the angular positions of the two joints are available as well, while velocities are obtained via numerical filtering of the corresponding variables.Measurement noise has been not introduced, to better highlight the intrinsic tracking performance of the proposed controller; in the presence of the measurement noise, however, the approach in [18] can be adopted, wich has been proven to be effective (see, e.g., the results in [5]).
In order to make a first test of the robustness of the control law, the following uncertainties have been intentionally introduced: • centrifugal and Coriolis terms have been neglected in control laws (34) and (42); • viscous friction has been modeled but not considered in the control design.The assigned desired trajectory is composed by three phases (at the end of each phase, the desired variables are kept constant for 2 s): The desired and the actual position of the gimbal joint angles are reported in Fig. 5(a), while the tracking errors are reported in Fig. 5(b).Good tracking performance are obtained as well, with a maximum error of about 0.2 and 0.4 deg.obtained by nullifying the therm M pδ , i.e.
e M % = 100 It can be noticed that the difference is almost constant and very close to zero (about 0.17%), thus confirming that the proposed approximation is feasible.The same results have been obtained along a number of different simulated trajectories.

A. Comparison with an UAV
In order to show the effectiveness of the ODQuad with respect to an under-actuated quadrotor UAV, a simulation in the presence of a disturbance force in the x 0 -y 0 plane has been carried out.The under-actuated UAV has been modeled in SimMechanics starting from the ODQuad and removing the gimbal joints and the corresponding motors; the controller in [19] has been considered and tuned in such a way to achieve the same step response achieved by the ODQuad controller (with the gians in TableII).During the simulation, a force along x 0 axis with magnitude f 0 (t) = (5 + cos(t/5)) sin(t) N, has been applied to the origin of Σ 0 (see Fig. 8), while the UAV is in hovering condition.Figure 9 shows the position error of the ODQuad (Fig. 9(a)) and the under-actuated UAV (Fig. 9(b)).It can be noticed that the ODQuad presents an error along the x axis below 2 cm while the error of the under-actuated reaches a peak of 7 cm.Moreover, the orientation of the ODQuad platform is kept below 0.5 deg; this cannot be achieved by the under-actuated UAV, since the roll and pitch angles are computed by the controller to generate the horizontal motion needed to compensate the disturbance.
Preprint version accepted at 2019 International Conference on Unmanned Aircraft Systems (ICUAS).
Final version available at http://ieeexplore.ieee.org/The capability to counteract disturbances on the horizontal plane makes the ODQuad particularly suitable for applications requiring the UAV to carry a gripper or a robotic arm in order to execute manipulation tasks.

VI. DISCUSSION AND ONGOING WORK
It is worth remarking that the designed system is conceived to provide a fully controllable platform for aerial manipulators, i.e., UAVs carrying a robotic arm to execute manipulation tasks, even in contact with the external environment.Such a capability is clearly highlighted by the results in Section V-A.In other words, the ODQuad is not designed to execute aggressive maneuvers and/or reach extreme orientations (e.g., putting the aerial platform in a vertical configuration, as in [15]).
The vehicle frame (rotor frame, mobile frame and platform) considered in the first design, is made of aluminum, which represents a good trade-off between robustness and  lightness; indeed, a low cost prototype can be developed by adopting aluminum profiles and 3-D printed ABS clamps.While the market offers several motors for propellers, the choice of gimbal motors is not trivial, since small dimensions, low weight and high bandwidth are required.Another useful feature, not common to commercial servo motors, is the possibility to control the motor at the torque level, which is important for designing and testing advanced model-based control laws.
Ongoing work is focused on the development of a detailed model of the system, including several effects not considered in this paper (e.g., noise, aerodynamic effects, adoption of position-controlled servos).
Future work will be devoted to test a first prototype in an indoor scenario, by exploiting an external localization system (i.e., an optical motion capture system).

Fig. 3 .
Fig. 3. Desired (continuous line) and actual (dashed lines) position and orientation trajectories for the platform.

Fig. 7 .
Fig. 7. Comparison of inertial matrix with the approximated matrix used in the control inputs.
Under-actuated UAV position error.

Fig. 9 .
Fig. 9. Position error in the presence of disturbance force.