Modelling, Analysis and Control of OmniMorph: an Omnidirectional Morphing Multi-rotor UAV

This paper introduces for the first time the design, modelling, and control of a novel morphing multi-rotor Unmanned Aerial Vehicle (UAV) that we call the OmniMorph. The morphing ability allows the selection of the configuration that optimizes energy consumption while ensuring the needed maneuverability for the required task. The most energy-efficient uni-directional thrust (UDT) configuration can be used, e.g., during standard point-to-point displacements. Fully-actuated (FA) and omnidirectional (OD) configurations can be instead used for full pose tracking, such as, e.g., constant attitude horizontal motions and full rotations on the spot, and for full wrench 6D interaction control and 6D disturbance rejection. Morphing is obtained using a single servomotor, allowing possible minimization of weight, costs, and maintenance complexity. The actuation properties are studied, and an optimal controller that compromises between performance and control effort is proposed and validated in realistic simulations. Preliminary tests on the prototype are presented to assess the propellers' mutual aerodynamic interference.


Introduction
Over the last decade, the design, perception, and control of Unmanned Aerial Vehicles (UAVs) have substantially evolved in terms of functionalities and capabilities indoors or outdoors.Research now considers the use of UAVs as Aerial Robotic Manipulators that can interact physically with the environment [1] and humans [2]; contactbased inspection [3], object manipulation [4], and assisting human workers [5] are some of the typical tasks.This led to the development of new multi-rotor aerial vehicles (MRAVs) and especially to the exploration of designs different from the popular underactuated multirotors that use fixed coplanar/collinear propellers (i.e., quadrotors, hexarotors, and their variants).The new designs rely on choosing the number, position, and orientation of the propellers to provide the multirotor with different actuation properties and abilities to achieve a specific task [6].Morphing designs with varying arm length and consequent proper controller tuning have also been proposed in the literature [7,8,9,10].Recently, several works addressed the design of omnidirectional multirotors.Omnidirectionality is the property of the robot to sustain its weight in any orientation.In the literature, different actuation strategies to achieve omnidirectionality have been proposed.In [11], a novel metric to assess the omnidirectional property of a generic multirotor aerial vehicle was presented.This metric is calculated numerically from the force set of the platform, and as such it relies on the platform geometry and thrusters; moreover, it allows a direct assessment of a platform's omnidirectional property given its weight.[11] also showed the use of this metric in the process of upgrading the design presented in [12], by placing the propellers on a virtual sphere centered around the platform's Center of Mass (CoM).In the following, we categorize omnidirectional designs into three main classes.The first class uses fixedly tilted bi -directional propellers (which generate thrust in both directions by inverting their sense of rotation).The authors in [13] presented one of the first omnidirectional prototypes, where they placed eight bidirectional propellers on the edges of a cube.The novelty of their design is the optimization-based placement and orientation of the propellers, where the cube shape was chosen to ensure a rotationinvariant inertia tensor.Another omnidirectional design with fixed propellers was presented in [14] and [15], achieving omnidirectional wrench generation with six and eight bi-directional propellers, respectively.
The second class, like the design proposed in [16], optimizes the orientation of fixed uni -directional propellers (i.e., able to produce thrust in only one direction, or, in other words, to rotate in only one sense) to achieve omnidirectionality while equally distributing the thrust produced by each propeller and aiming for an isotropic (sphere-like) shape of the corresponding force set.In fact, [16] showed that the minimal number of 7 (seven) uni-directional propellers is necessary to achieve omnidirectional position and orientation tracking.Later, [12] presented a working prototype of the design with experiments.The third class of omnidirectional platforms relies on a morphing design.Uni-or bi-directional propellers actively tilted by servo motors are used.[17] proposes a quadrotor with propellers individually tilting about their radial axis.The authors of [18] use the same idea (independently controlled radially tilting thrusters) for an hexarotor.Another version of their design was presented in [19], in which double propeller groups were used, two propellers rotating in opposite directions on each rotation axis to increase the platform efficiency and payload capacity in addition to increased force bounds along different directions.Design aimed at optimizing control effort is an established approach in aerial platforms [20] and it is even more critical for multirotor aerial robots, as they are typically characterized by limited flight endurance.The advantage of the third design approach relies on the possibility of optimizing the energy consumed for a given desired orientation, which is obtained by aligning together as much as possible the propeller spinning directions for a given orientation, in a way that each propeller tends to be as much counter aligned as possible to the gravity force.This also allows for balancing dexterity and energy efficiency based on the needs imposed by specific tasks [21] [22].Indeed, the configuration in which all the directions are aligned is more energetically efficient.In that configuration, the propeller forces are all parallel to each other but the thrust is uni-directional; when this is not the case, there are propeller forces that cancel each other without actively contributing to the motion.That is the price paid to achieve multi/omnidirectionality.From a control allocation point of view, fixedpropeller multirotors in [13], [14], [12] are controlled by (pseudo)inverting the wrench map between the propellers' speeds and the total body wrench.Those systems are affine in the control inputs and the tilting angles of the propellers are constant design parameters.A similar control approach is used in [15], where a different rotor input allocation is proposed, based on the infinitynorm minimization; in this way, propellers' speed constraints are implicitly taken into account, even though with no guarantees.For the second type of omnidirectional platforms, in [12] a dynamic inversion plus input allocation strategy is proposed.The input allocation modifies the minimum norm solution found by inverting the allocation matrix to ensure that the rotational speeds are positive.For a fixed-propeller hexarotor that is fully actuated but not omnidirectional, [23] proposes a Nonlinear Model-Predictive Controller.The control of the third class of platforms is challenging, as the tilting angle must also be determined, which appears nonlinearly in the dynamics.Feedback linearization at the jerk level has been proposed [17], thanks to the fact that the time-differentiation the system is affine in the (new) control inputs.In [18], a change of variables is used to obtain a static allocation matrix not dependent on the tilting angle; that is pseudoinverted, and the initial inputs are then computed.Both these methods require the full allocation matrix to be non-singular and may result in unfeasible inputs due to neglected input bounds.[19] proposes a jerk-level control in which the optimal control inputs are obtained by weighted pseudoinversion of the full allocation matrix.As input constraints are not considered, the inputs are saturated before being integrated and sent to the actuators.The control method avoids singularities by adding a bias to the desired tilting angle in case of a large condition number of the wrench map matrix.In this work, we overcome some of the limitations of existing concepts and controllers of omnidirectional platforms.Specifically, the contributions of this work are as follows.
• A novel omnidirectional morphing platform design concept, OmniMorph, is proposed.The platform belongs to the third class described in this section and exploits the synchronized drive of all propellers by only one servo motor.This choice allows keeping at the bare minimum the additional payload used to carry additional servo motors in the other designs seen before. 2 OmniMorph Design and model

Concept and Design
The OmniMorph platform consists of 8 bidirectional propellers attached to the main body frame, placed on the vertices of a cube centered at the CoM, as in Figure 1.The idea of this work is to design a morphing platform, i.e., capable of tilting its propellers, that can span while flying, a variety of configurations in between two extreme cases: a dexterous but less energetically efficient omnidirectional configuration and an efficient but underactuated unilateral thrust configuration.More than that, we ask that all propellers tilt in a synchronized way, meaning they can be all attached to a single extra actuation unit (a tilting mechanism) driven by only one servo motor.That reduces the complexity and the weight of the prototype, allowing for a higher payload.Note that each propeller tilts about a different axis of the same amount, which we call the tilting angle α.The change in the orientation of the propellers (morphing), changes (i.e., it morphs) the force and moment feasible sets.When all rotors are parallel to each other (i.e.titling angle α equal to zero) the force set is a thin line, i.e., the generated total thrust can be produced only along one axis, making the vehicle underactuated (UA)-see Figure 1 left.In this case, the platform is, from the actuation point of view, equivalent to the standard underactuated quadrotor, hexarotor, and so on: only 4 Degrees of Freedom (DoF) are independently controlled, the 3D position and the heading angle.This configuration is the most energetically efficient and it is recommended in tasks in which the control of the full orientation or full wrench is not essential.When the tilting angle α assumes positive values, the feasible force set morphs into a polyhedron with non-zero volume.The larger the tilting angle the larger the volume.The total thrust can be generated in all three orthogonal directions, to a certain extent, depending on the tilting angle value.Ultimately, the vehicle can assume an OD configuration similar to the vehicle developed in [13]-see Figure 1, right.Such a configuration allows controlling the 6D full pose of the vehicle sustaining its weight in any possible orientation.A representation of the polytopes of feasible forces of OmniMorph for different values of α computed as in [6] is given in Figure 2.
In the following, the design concept of Omni-Morph is detailed.We define a reference frame attached to the robot as a set of an origin and three orthogonal axes: where the propellers are numbered as in Figure 3.
In [24], an optimal fixed orientation of the propellers to attain omnidirectionality is found.Especially, in [24], the authors define the coordinates of the spinning axis of their fixedly tilted propellers, let us call them zB i , and they collect them into the matrix where Let us now define as bi the coordinates of the unit vector, centered on O i , that describes the axis of rotation of propeller i−th to bring its spinning axis from the direction described in (2) to a configuration in which it is parallel to zi , thus bringing the robot from the configuration described in [24] into the unilateral-thrust configuration.We have that bi is given by the cross product between zi and e 3 , where e i is the i−th column of the identity matrix I 3 ∈ R 3×3 .Very interestingly, bi is orthogonal to bj ∀i ∈ {1, 4, 5, 8}, ∀j ∈ {2, 3, 6, 7}, similarly to Figure 3, where the dotted lines representing the rotational axes of the propellers are orthogonal to each other.More than that, we note that by rotating the cube generated by those axes of π 12 radians (i.e., 15 deg) around z B , one obtains that the propellers' tilting axes lie along the edged of the cube formed by the propellers.Let us call these new propeller tilting axes b i .Such a symmetric configuration greatly simplifies the mechanical realization of the tilting mechanism, and, as it will be more clear in the following, it allows for transitioning between UDT and omnidirectional configurations.Eventually, that configuration is conveniently chosen for OmniMorph and is reported in Figure 3.To summarize formally, the positions of the centers of the propellers are given in (1), and the attitude is described as follows.Define a frame attached to each propeller and y ′ i is chosen orthogonal to the first two.Denote the rotation matrix between F B and F ′ i with R ′ i .Eventually, the rotation between F B and each propeller's frame of OmniMorph, , where R X () R Z () are the elementary rotations about the X and Z axes.Each propeller exerts its thrust along the axis z i which is rotated by α about an axis lying along the edges of the cube that connects the propellers' centers.

Model of the OmniMorph
In this section, the dynamics equations of Omni-Morph are given.Let us define an inertial frame The dynamic equations of the robot, expressed as Newton-Euler equations of an actuated rigid body, are as follows, where the translational dynamics is expressed in the inertial frame and the rotational dynamics in the body frame.We indicate as ω the angular velocity of F B w.r.t.F W expressed in F B , with m the robot mass, and with J ∈ R 3×3 its rotational inertia.
B are the total force and torque applied to the CoM, expressed in F B .The rotational kinematics of the robot is: where [ω] × is the skew symmetric matrix associated to ω.Each rotor produces a thrust force and a drag moment which we model, similarly to [25], as follows.
where c f , c τ > 0 are the thrust and drag coefficient, respectively, and w i is a scalar with a module equal to the norm of the propeller angular velocity and a sign defined such that w i > 0 when the thrust produced by the propeller has the same direction of z i .The drag moment is always opposite to the angular velocity of the propeller; as a consequence, k i = −1 for propellers with descending chord (i.e., producing thrust in the same direction of the angular velocity, also called 'counterclockwise') and k i = +1 for propellers with ascending chord (i.e., producing thrust in the opposite direction of the angular velocity, also called 'clockwise').The applied body forces and torques are the results of all propellers and their orientation: Fully Actuated unless u ω = 0 Fully Actuated, Redundant where c τ f = c τ /c f .We indicated with f B i the thrust force of the i-th propeller expressed in F B , and with τ B fi and τ B di the torque produced by the same propeller's thrust at the CoM and the effect of the propeller's drag torque at the CoM, respectively.We denote with u the input of the system, consisting of the single morphing angle α and the rotor speeds contained in the vector u w such that Based on ( 6) and ( 7), we have that the actuation wrench is The full expression of A(α) is at the end of Sec.2.3.

Actuation Properties
First, we define the full allocation matrix F(u) ∈ R 6×9 as in [6]: with Note that F 1 only depends on α because w in (9) depends linearly on u w .Particularly, following the definition given above and considering (9), we have that F 1 = A(α) and F 2 = ∂(A(α)uw) ∂α .Following the method provided in [6], we study the actuation properties of the platform by looking at the rank of F(u) in (10).For all the points in the input space in which rank(F(u)) = 6 (full rank), the platform is fully actuated.In those points, the actuation wrench can be changed in every direction by suitably acting on the input.Instead, in all points in which rank(F(u)) < 6 (rank deficient) the platform is underactuated, this means that when the input is in those singular points there are some forbidden directions along which the actuation wrench cannot be changed.First, we note that studying the rank of F 1 (α) helps us study the rank of the full allocation matrix, F(u): • rank(F 1 (α)) = 4 is a sufficient condition for the platform to be underactuated: the rank of the full allocation matrix F(u) can be at most 5 < 6.
• rank(F 1 (α)) = 6 is a sufficient condition for the system to be fully actuated; • If rank(F 1 (α)) = 5, the full-/under-actuation needs further analysis of Hence, we study the rank of F 1 (α) for various values of α, finding that So, from what has been said so far, Omni-Morph is underactuated for α = 0.Moreover, rank(F(u w , 0)) = 5 if u w ̸ = 0 and if not all u wi are equal to each other, i.e., the total wrench can be instantaneously changed on a 'reduced' five-dimensional manifold.
The yaw acceleration can be changed as the individual thrusts generate a torque around the vertical axis of the robot.
The pitch and roll accelerations can be changed thanks to the drag moment of the propellers.The translational acceleration in the horizontal plane is clearly changeable by the thrust, but the translational acceleration along z B is not.As soon as α changes, the propellers' thrusts have a component in the vertical direction as well, which gives control of the vertical acceleration, unless the propellers' thrusts are actually zero (mathematically, u w = 0).Even if the platform is fully actuated it might not be able to fly properly because the propeller thrust intensity may be not large enough to sustain the platform's weight.
Eventually, for all other values of α, the platform is fully actuated.A schematic summary of the OmniMorph actuation properties is in Table 1.
For sufficiently large values of α, the polygon of the achievable forces, see Fig. 2 contains a sphere whose radius corresponds to the weight of the platform: the robot can sustain its weight in any orientation; thus, it is omnidirectional.
For the sake of completeness, the full allocation matrix is reported in the following, where s α and c α indicate the sin and cosine of α, respectively:

Power Consumption Analysis
To analyze the power consumption of the Omni-Morph in comparison with a non-morphing fully actuated platform, let us start by computing the input needed to enforce the static equilibrium when the platform is hovering with orientation R = I 3 ; we indicate that input as u h w (α, m) and retrieve it by inverting (9) as The power consumed by each brushless motor is equal to the scalar product between the motor torque and its angular velocity.Given that in hovering we can approximate the motor torque with the drag moment and that the drag moment is always opposing the angular velocity, we can write the power consumed by the i-th brushless motor as . The total power consumed by all the motors is then Therefore, P τ (u h w (α, m)) represents the power consumed at hovering by a platform with a certain mass m and a given tilting angle α.Let us now write the robot's mass as follows: m = m 0 (1 + ∆ m ), where ∆ m is the ratio between the mass of the propeller tilting mechanism and m 0 , which is the mass of all other components; indeed, ∆ m is given by m−m0 m0 .Now, consider instead, a non-morphing multirotor, in which a certain level of dexterity is obtained by tilting the propellers by a fixed angle α f .We ask ourselves which is the critical value of ∆ m , call it ∆m , below which a morphing design would be convenient for such a platform.Indeed, it has to be taken into account that the morphing design can efficiently hover with α = 0 (all propellers parallel to each other, so no thrust is waist into Fig.4: For a given fixed propeller tilting angle α f , a morphing design is convenient, provided that the relative mass of the tilting mechanism is lower than ∆m internal forces) but it will have to sustain a larger mass due to the tilting mechanism (∆ m > 0).On the contrary, the non-morphing platform is lighter (∆ m = 0) but due to the propellers' fixed tilt part of the thrust generated to hover is wasted in internal forces.To understand which is the maximum value of ∆ m for which the morphing design is the most efficient one, namely to compute ∆m , we numerically solve the following implicit relation between ∆ m and α: Clearly, ∆m depends on the tilting angle of the non-morphing design.The values of ∆m as a function of α f for the OmniMorph are reported in Figure 4. Intuitively, for α f = 0, namely when no dexterity is required from the fixed-propeller platform, which is then a standard uni-directional platform, one has that ∆m = 0. On the other side, for instance, for α f =20 deg, the use of a morphing platform is more power-efficient for a weight of the tilting mechanism up to 7% that of all the other components.For the OmniMorph, α f ≥ 30deg, which tells us that the morphing platform is more power-efficient than a non-morphing one even for a weight of the tilting mechanism that constitutes up to 16% of all the other components' weight.Note that the minimum α f to attain omnidirectionality depends on the maximum motor speed, the propeller type, and the mass of the vehicle.We are considering here the same bi-directional propellers as in [24] with the same maximum motor speed and a mass m 0 = 1.128kg equal to the mass of the OmniMorph without any tilting mechanism.Considering also the additional mass of the tilting mechanism, the minimum value of α for which OmniMorph is omnidirectional is α ≈ 37deg, as shown in Figure 5. Clearly, there is also a maximum value for which OmniMorph loses omnidirectionality.OmniMorph cannot sustain its weight in hovering as soon as α ≥ 72deg.
The power consumption analysis here presented is at a steady state.The power consumed in a dynamic task by the OmniMorph and by an analogous platform but with fixedly tilted propellers is discussed in Sec.4.1.

Control
This section introduces a control law that allows OmniMorph to follow a desired 6D trajectory switching between the underactuated and the fully actuated configurations to account for the minimization of trajectory tracking error and the minimization of the input u w .Let us define q = [ p⊤ , ω⊤ ] ⊤ .Given a reference trajectory for the UAV, indicated through the superscript (•) d , we compute the reference acceleration of the robot, call it qr , using a PD feedback control plus a feedforward term.The following desired input acceleration is obtained: where , with ∨ from so(3) to R 3 being the inverse of the hat map [26], e p = p d − p, and e ω = ω d − ω.We now design an inner control loop to track qr thanks to suitable inputs α * and u * w , chosen as the solution to: where the cost function is composed of three terms: is to minimize the norm of the input, J 2 = ||q r − q|| 2 W2 to ensure tracking of the desired trajectory, and The maximum rate of change ϵ α is here defined as symmetric but in the general case they may also be non-symmetric and the analysis still holds.The term J 1 has an equivalent effect to minimizing the norm of the drag moments, as it differs from the input norm by a constant coefficient.
In order to solve problem (15), which is not a QP problem because the first constraint is nonlinear in the optimization variables, we proceed as follows.
Consider the following problem for a fixed value of α, indicated as ᾱ.
Problem ( 16) is now a QP problem as α is not an optimization variable anymore, and, as a consequence, the bilateral constraint is linear in the optimization variables.
At each time step ( 16) is solved three times for three different values of ᾱ = {α Hence, at each time step, the solutions α * and u * w that correspond to the lowest value of the cost function are selected.A schematic representation of the proposed control scheme is in Figure 6.The block that feeds the optimization with the three different values of α also performs a saturation to make sure that the values of α provided by the controller comply with the platform kinematics constraints.Especially, the propellers are allowed to assume values between 0 and 60 deg.We saw that the theoretical maximum value of α for OmniMorph to sustain its weight in any configuration was about 70 deg; however, we decided to be more conservative than the theoretical upper bound to keep always enough thrust in the vertical direction to account for model uncertainties, rejection of external disturbances, low battery levels, etc.In principle, the selection of the parameter ᾱ ∈ may be done following different methods.Here we proposed a simple method that allows keeping the value of the tilting angle constant or changing it in the two possible directions accounting for the bound on the variation of α.Other approaches such as an exhaustive search or more efficient sampling algorithms are possibilities, and their assessment is left for future work.
Note that, by tuning the weights W i , the control input negotiates between low input effort and low tracking error.We recall that, thanks to its redundancy, the robot is able to follow a certain desired trajectory with different values of the control inputs.

Simulations
Numerical simulations have been carried out using a Unified Robot Description Format (URDF) description of the OmniMorph and ordinary differential equation (ODE) physics engine in Gazebo.The control software has been implemented in Matlab-Simulink.The interface between Matlab and Gazebo is managed by a Gazebo-genom3 plugin 2 .A Simulink s-function embedding qpOases QP solver 3 has been used for the optimization problem.The mass and inertia of the robot are m = 1.3150 kg and The other parameters are The tilting angle α is saturated at 60 deg, a value sufficient to reach the omnidirectionality, as it will be in the real robot.A PD controller has been used to generate the reference trajectory of the robot's CoM, but any other suitable controller could be used for that purpose, e.g., based on dynamic inversion, etc.Indeed, the main contribution of this work from a control point of view is the optimization, and PD gains are not of primary importance for showing the work's contribution.Fine gain tuning, although important for performance enhancement, is, thus, considered out of the scope of this work.The PD gains have been handcrafted and set once and for all.All the following results are purposely obtained with the same PD controller gains, to highlight the contribution of the optimization.Advanced methods 2 https://git.openrobots.org/projects/mrsim-gazebo 3https://github.com/coin-or/qpOASESfor automatic gain tuning based, e.g., on neural networks [27], reinforcement learning [28], or stochastic optimization [7] have been proposed in the literature, and they can be considered for refining the performance of the controlled system in future work.We show two different simulation scenarios, let us refer to them as Case A and Case B, in which the robot's desired trajectory is the same, but the optimization gains are different.Especially, the trajectory includes moving upwards/downwards, translating with a tilted attitude, and rotating by 360 degrees on the spot-see Figures 7a and 7b In Figure 7c, we report a comparison between the results of the two simulation scenarios.One can appreciate as in Case A the robot performs better in terms of tracking (the average position and attitude errors are, respectively, 0.011 m and 0.062), at the expenses of a higher motor torque; the tilting angle is increased and kept at the highest value along the task execution.On the contrary, in Case B, the errors are higher (mean square position and attitude errors are, respectively, 0.044 m and 0.068), but the motor torque is, as expected, lower, and the propeller tilting angle is decreased as soon as the robot only moves vertically (as soon as the underactuated mode is enough to perform the desired motion).The efficiency is higher in Case B with the value of energy related to the drag moment equal to 1162.3 J against 2080.7 J in Case A. Note that, in a trajectory tracking task like the one shown here, there is another source of power consumption besides the power consumed by the drag: it is the power needed to accelerate the propellers.If dE is the instantaneous variation of the kinetic energy of all the eight propellers, the instantaneous power is computed as dE dt .Considering the mass of each propeller equal to 0.01kg, the total energy consumed to accelerate all the propellers is equal to 65.5 J in Case A and 225.3 J in Case B. This suggests that only a minor part of the energy is spent to accelerate the propellers, and Case B remains the most efficient scenario.One can act on W 3 to reduce the propeller acceleration.We carried out the same simulation as in Case B but increasing the weight on the propeller acceleration to W 3 = 10 −4 ; we obtained a total consumed energy to accelerate the propellers equal to 87.7 J.The total corresponding tracking errors were comparable to Case B: 0.0412 cm in position and 0.063 in attitude.

Simulations at a fixed α
We performed simulations in Case A and Case B with a fixed value of α = 45 deg-see Fig. 8.The total consumed energy is around 1400 J in both cases, namely in between the energy consumed by OmniMorph to perform an analogous task in Case A and Case B. The ratio between the energy consumed by the fixed-propeller robot and OmniMorph ultimately depends on the specific task, e.g., on the portion of vertical motion and hovering, not requiring large values of α.However, it is worth noting that fixedly tilted propellers seem to offer less room to tune the efficiency, as the power consumption corresponding to the same reference trajectory remains basically the same for Cases A and B. Instead, OmniMorph offers the possibility to exploit the additional degree of freedom to reach the desired balance between efficiency and performance.

Experiments
In this section, we present preliminary results to experimentally assess the propellers' mutual simulation results to assess the robustness of the proposed controller to aerodynamic interferences.

Simulations with diminished propeller performance
Based on the previous results, in this section, we show two simulations to assess the robustness of the proposed controller against decreased propeller performance.Especially, the actual c f of OmniMorph is lower than the nominal one known by the controller.In reality, the amount varies for each propeller depending on the others' spinning velocity and α.The assessment of an update low for c f based on experimental data is left for future work.As a worst-case scenario, we considered in the simulations that the actual thrust coefficient is constant and 35% lower than the nominal one.While the platform successfully carries out the task in Case A, although with a slightly higher tracking error than in the ideal case, in Case B the robot fails to recover from high tracking errors seemingly due to the scarce dexterity in the horizontal directions caused by low values of α; however, Case B is still successful when c f is 30% lower than the nominal one.That suggests that, in the presence of such a mismatch between the model and the system, high priority should be given to the tracking performance to improve robustness.However, we simulated the worst-case scenario in which the mismatch is constantly high and is the same for all propellers, while in the real platform, the top propellers would likely suffer from considerably lower interference.Figure 12 collects the results in the two aforementioned cases.The position error is the most affected in both cases.Recordings of the simulations are provided in the attached multimedia material.

Conclusions
This work presented the design concept of Omn-iMorph, a novel morphing multirotor that can range between omnidirectionality and underactuation thanks to actively tilting propellers.The design leverages one single servomotor to synchronously tilt all the propellers, thus reducing the mechanical complexity and the additional payload.The dynamics model was presented, and the actuation properties depending on the propeller tilting angles were studied.Hence, a controller was proposed to negotiate between input effort and tracking performance.Simulations in a realistic Gazebo environment were presented.A preliminary prototype was built and tests were carried out to assess the propeller aerodynamic interferences on the real prototype, and additional simulation results to assess the robustness against them were shown.
In the future, experiments on the real prototype will be carried out, and predictive controllers will be tested.Computing the online changes of the allocation matrix due to aerodynamic interferences depending on all individual propeller speeds and on α, and incorporating such information on the optimal control is left as interesting future work.Increasing the dimensions of the prototype to allow better spacing of the propellers will also be considered.Equipping the OmniMorph with physical interaction capabilities in an interesting future direction.

Declarations
• Acknowledgments The authors thank Gianluca Corsini for contributing to the simulator and Aaron Saini for the code to plot the feasible force sets.

Fig. 2 :
Fig. 2: Sets of feasible forces for different values of α.The three components of the thrust in the body frame are displayed.OmniMorph is omnidirectional when a sphere with a radius equal to the robot's weight is inscribed inside the polytope of feasible forces.
is coincident with the robot CoM and the three axes, x B , y B , and z B , are aligned with the edges of a cube of side length L. Let us define a point at the i-th propeller's center as O pi , and its position in the body-fixed frame as p B pi .Then, we define, as done in [24], the matrix P = [p B p1 , ..., p B p8 ].Particularly, we have that

Fig. 3 :
Fig. 3: Representation of OmniMorph in which the axes of rotation of the propellers, lying along the cube edges, are highlighted.

Table 1 :
Actuation properties for different values of α.Grey circles are the propellers' planes.Each is associated with a local frame, and a body-fixed frame is in the middle of the robot.The RGB convention is used to indicate the x-, y-, and z-axis, respectively.The direction of the thrust produced by the individual propellers is represented with a thick black arrow.

Fig. 5 :
Fig.5: Radius of the maximum inscribed sphere is the feasible force set in Figure2for different values of α.When this is equal to its weight, OmniMorph can sustain its weight in all orientations.
minimize the propeller spinning accelerations.The quantities α * k−1 and u * w,k−1 are the solution of the optimization problem (15) at the previous time step.|| • || Wi is the 2-norm weighted by the positive definite weight matrix W i .Alternatively, if the bounds on the propeller accelerations are identified, as in [23], J 3 could be also expressed as a unilateral constraint.The equality constraint in (15) is the system's dynamics, where we have indicated the inertia matrix as M = mI 3 0 3 0 3 J , the vector of the gravity and Coriolis terms as µ = −mge 3 −ω × Jω , and J R = R 0 3 0 3 I 3 ; the second, unilateral, constraint in (15) expresses the input constraint, where C, b are properly defined constant quantities; the last constraint is on the rate of change of α.

Fig. 8 : 2 , 2
Fig. 8: Results of the Gazebo simulations in Case A (red) and Case B (blue) for the propeller tilting angle fixed at α = 45 deg.The power consumption remains almost identical in the two cases.
Top: results for Case A with actual c f lower than the nominal one by 35%.Bottom: results for Case B with actual c f lower than the nominal one by 30%.The results of the ideal cases are superimposed in dotted lines.
• Funding This work was partially funded by European Commission projects Horizon2020 AUTOASSESS (101120732) and MSCA project Flyflic (101059875).• Conflicts of interest The authors have no relevant financial or non-financial interests to disclose.• Code or data availability Data sets generated during the current study are available from the corresponding author on reasonable request.• Authors' Contributions Y. Aboudorra contributed to deriving the modeling, the control law, designing the simulator, and writing the manuscript, as well as to the background literature research.C. Gabellieri contributed to the theoretical analysis, controller implementation, and manuscript writing, as well as to the background literature research; she worked on the simulation results and the multimedia files.R. Brantjes contributed to testing the prototype and to the manuscript writing.Q. Sablé contributed to the OmniMorph design and to building and testing the prototype.A. Franchi is the initiator of the OmniMorph research idea, he did the fundraising and is the PI of the research project.He contributed to the modeling and the control law, and to the manuscript writing, as well as to the background literature research.• Ethics approval Not Applicable • Consent to participate Not Applicable • Consent for publication Not Applicable