Orientation Control System: Enhancing Aerial Maneuvers for Quadruped Robots

For legged robots, aerial motions are the only option to overpass obstacles that cannot be circumvent with standard locomotion gaits. In these cases, the robot must perform a leap to either jump onto the obstacle or fly over it. However, these movements represent a challenge because during the flight phase the Center of Mass (CoM) cannot be controlled, and the robot orientation has limited controllability. This paper focuses on the latter issue and proposes an Orientation Control System (OCS) consisting of two rotating and actuated masses (flywheels or reaction wheels) to gain control authority on the robot orientation. Because of the conservation of angular momentum, their rotational velocity can be adjusted to steer the robot orientation even when there are no contacts with the ground. The axes of rotation of the flywheels are designed to be incident, leading to a compact orientation control system that is capable of controlling both roll and pitch angles, considering the different moment of inertia in the two directions. We tested the concept with simulations on the robot Solo12.


Introduction
Legged robots are designed for traversing rough terrain. Different types of gaits, such as trot [1] or crawl [2], have been developed for quadrupedal robots. Thanks to progress over the last two decades, robots have become lighter and stronger, which has enabled them to perform with agile locomotion. However, sometimes it is not possible for the robot to move around or over an obstacle with the gaits mentioned above, and jumps are required.
When the robot is in the air, the CoM moves on a ballistic trajectory, and this is completely defined by the lift-off position and velocity. On the other hand, the base orientation can be changed so as to exploit the conservation of the system's angular momentum. This means that it is possible to control the base angular velocity by changing the inertia of the robot, e.g., changing the configuration of the joints. Nevertheless, the majority of quadrupeds are designed with light legs, resulting in limbs that have little influence on the total angular momentum.
Quadrupedal animals, like cats, can rearrange their tails and trunks to correct their orientations during a fall [3]. Much work in the field of robotics has made use of an additional link, such as a tail, as in [4,5]. This link rotates around an axis that does not pass through the robot's CoM. The distances between the axis of rotation and the CoM of both trunk and tail have a large effect on the total inertia, even with a small tail mass. However, the placement of the additional link makes the resulting robot asymmetric. Moreover, due to its limited range of motion, a tail can be used only for a single jump, not for a repeated sequence [6].
To circumvent these drawbacks, in [7][8][9] the authors attached a morphable inertial tail with 3 Degrees of Freedom (DoFs) (pitch, yaw, and telescoping) on a monopod, a biped and a quadruped, respectively, to enhance the agility of locomotion and to improve safety in landing.
It is possible to obtain a similar result by creating repetitive circular motions with the feet, like in [10]. Moving the feet outwards increases the robot's total inertia, so if a leg is extended during half of the motion and retracted in the other half, a net angular momentum results on the trunk, causing a rotation. In [11] the authors proposed special heavy boots for Mini Cheetah and used a neural network to calculate online joint trajectories. However, this solution unnecessarily increased the inertia of the legs, complicating the locomotion problem, which could no longer rely on the massless leg assumption.
Another option is to use a Control Moment Gyroscope (CMG). This consists of a wheel, spinning at a constant angular velocity, inside two or three actuated gimbals. Tilting the wheel's axis of rotation generates gyroscopic torque. This system is widespread in spacecraft reorientation [12], but less frequently exploited in robot locomotion, either wheeled [13] or legged [14]. The CMG presents interesting capabilities, but the presence of a pan-tilt unit to drive the gyroscope makes it impractical to mount it on a small, lightweight robot.
Flywheels represent an additional option for controlling a robot's orientation. Changing the angular velocity of a rotating mass attached to the trunk generates a torque that can reorient the robot. This device was first applied for spacecraft orientation [15], and only sporadically investigated in legged locomotion for controlling pitch orientation, both for bipeds [16,17] and quadrupeds [18,19]. Compared with tails, flywheels do not have position limits, and, since their rotational axes pass through the CoM, angular momentum results in holonomic [20]. To get a fast response, it is necessary to have an abrupt change in the flywheel's angular velocity (angular acceleration). Using a brake avoids the employment of a motor able to deliver higher torques [21], keeping the system compact. The motor slowly accelerates the wheel to a certain speed to store angular momentum and, when a reorientation is required, the break stops its spin. Since the effect of the break is unidirectional, a limitation of this approach lies in the fact that it is only possible to generate a rotation of the base in the opposite direction of the flywheel's angular velocity, making the approach unsuitable for applications where continuous controllability is required. On the other hand, direct-drive controlled flywheels can create accelerations in both directions, and can implement continuous control laws.
The benefits of this kind of OCS are multiple.

1.
Flywheels can correct orientation errors (e.g., due to disturbances or tracking inaccuracies in the angular momentum achieved at the lift-off) during flight in a continuous manner.

2.
They can track a time-varying reference, e.g., the robot can land with a desired angular velocity (possibly zero) and orientation.

3.
Even in the presence of contact, the landing phase can be enhanced or dynamic gaits, such as a trot, stabilized, by significantly reducing trunk oscillations.

4.
The presence of these additional joints, the only functions of which are to control orientation, provides the possibility of relieving the efforts of the legs.
In more complex scenarios, like for a somersault, limbs and OCS can operate in parallel to achieve a rotational angle larger than that achievable only with legs (e.g., due to torque limitation).

Proposed Approach and Contribution
This work introduces a compact OCS, based on two flywheels, mounted on the trunk of the lightweight quadruped Solo12 [22]. The open-source hardware and software are reported in [23]. Figure 1 shows the OCS mounted on the trunk of the robot. The contributions of the paper are the following: • the design of a novel OCS that enables effective control of the orientation of a legged robot during a jump, while keeping the design simple. In particular, the axes of rotation of the flywheels are set to be incident, enabling continuous controllability in both directions of roll and pitch, while keeping the device compact. • simulations with the quadruped Solo12 were conducted and demonstrated the effectiveness of the proposed approach.

Outline
The remainder of this paper is organized as follows. In Section 2, the law of conservation of the total angular momentum is described. In Section 3, the design principles are presented, together with the strategy for simultaneously controlling the robot's roll and pitch orientations. Section 4 presents the simulation in different scenarios that demonstrate the capability of our OCS to reject disturbances and to track angular references when there is no contact with the ground, and to dampen base oscillation after touch-down. Conclusions and a possible evolution of the work are reported in Section 5.

Background
The starting point for any OCS is the Euler's equation. For any mechanical system, the time derivative of the angular momentum, L computed in respect to a reference point O, fixed in an inertial frame, equals the sum of the moments M i applied to the system with respect to the same reference point:L When the result of the external moments applied to the system is zero, and the Euler's equation simplifies to: which is known as conservation of angular momentum. Referring to legged robots, this condition occurs when the system is not in contact with the ground or with other objects, e.g., during a fall or the flight phase of a jump. In this case, it is possible to change the angular velocity of the base link, thereby changing the joint positions and velocities, as a result of the non-holonomy of the total angular momentum [24]. If the angular momentum of a certain body changes, then one of the others must change to maintain the total sum as constant.

Preliminary Analysis
Most quadruped robots are designed in such a way that the largest amount of the mass is located in the main body. As a consequence, the contribution of the moments due to the acceleration of other bodies (i.e., leg links) is moderate. As an example, consider the case of Solo12. Even if each limb accounts for about 13.4% of the total mass, changes in the total inertia of the robot come with the motion of only the upper leg (thigh) and the lower leg (calf), since the displacement of distribution of the hip mass with the system's CoM is approximately constant. In view of this, each limb is responsible for only 7.5% of the total mass in varying the total inertia of the robot. Flywheels can be used to alleviate the lack of control authority.

Orientation Control System
In this section, a procedure to select the inertia of the flywheels is presented, together with a strategy to exploit them so as to simultaneously control the robot's roll and pitch orientations.

Bounds on the Inertia
Investigation for the selection of the flywheels' inertia can be performed with the Elroy's Beanie model, depicted in Figure 2. This consists of two rigid bodies connected through their CoMs with a revolute joint. One of the bodies represents the robot in its nominal configuration and the other models the OCS, here represented by a single wheel for the sake of simplicity. The aim was to examine the rotational dynamics of the system as a whole. To simplify the analysis, in the following only the effects on the pitch angle of the robot was considered, keeping in mind that the same arguments also apply to the roll. Let us identify the moment of inertia of the robot in the nominal configuration as I r and the moment of inertia of the two flywheels as I f , both referred to the system's CoM. The angular momentum L of this system can be written as: whereθ andγ are, respectively, the robot;s pitch rate and the angular speed of the wheel. The robot is driven to reach a desired pitch rateθ des by acting on the wheel speed. Without loss of generality, one can assume the flywheel is stationary with the robot at the instant at which the reorientation maneuver starts (γ 0 = 0), having a system angular momentum of L 0 = I r + I f θ 0 . Under the condition of conservation of the angular momentum, this quantity is constant over time and it is possible to estimate the lower bound for I f , given a desired pitch rate and the maximum velocity of the flywheelsγ max : where ∆θ = θ 0 −θ des is the base velocity variation. Figure 3 reports the lower bound of I f given the desired base velocity variation and the maximum velocity of the actuator.

Flywheels' Axes of Rotation
The orientation of the axis of rotation of each flywheel influences their contribution to the total angular momentum. To meet the specification of controlling both the robot roll and pitch, the axes of rotation of the left and right wheels, identified in the base reference frame with the unit vectorsâ l andâ r , are set to be incident, laying on a plane parallel to the xy−plane of the base reference frame (see Figure 4). To remove unnecessary complications, the authors designed two identical modules, to be mounted on the trunk of Solo12, symmetrically, with respect to the robot's sagittal plane. Let denote α ≤ π/2 with the non-negative incident angle between the wheels' axes of rotation and the robot's lateral direction. The matrix: maps the flywheel moments into scalar torques u = τ f l τ f r T about the flywheel axeŝ a l andâ r (expressed in the base frame). As long as C is in full column rank, it is possible to control both roll and pitch angles. If α = 0, the roll becomes uncontrollable through the OCS; otherwise, if α = π/2, the pitch becomes uncontrollable. The angle is selected considering the ratio of the eigenvalues along the x and y directions of the ellipsoid of the robot's inertia( Figure  5): In the case of Solo12, this angle is about 40 • . With these considerations in mind, the angular momentum produced by the wheels, expressed in the robot base frame, was: in which ω f l = ω f lâl and ω f r = ω f râr are the angular velocity vectors of the two wheels, and ω f l and ω f r are the angular speeds provided to each flywheel by its actuation system. The latter equation shows that the difference of the two angular speeds impacts on roll rotations, while their difference can be used to adjust the pitch, see Figure 6. Using the definition of C, (7) is rewritten as:

Inertia Selection
Once the desired inertia I f is selected, according to the 2D Elroy's Beanie model, it is used to realize the 3D OCS (Figure 7). Two identical flywheels were designed to have the shape of hollow cylinders. This shape increases the inertia by locating the mass far away from the rotation axis.
The inertia tensor expressed in its principal axes, xx , I f ,yy , I f ,zz , depends on the cylinders' inner and outer radii, r and R, its height h and material density ρ: Notice that in the Elroy's Beanie model, there is a single body that models the complete OCS. The inertia introduced in the Elroy's Beanie model has to be split between the two flywheels: I f ,zz = I f /(2 cos(α)). The parameters R and h can be set to have a compact OCS and ρ depends on the chosen material, which was stainless steel in our case. The inner radius r could be adjusted to obtain the desired inertia. Spokes with negligible mass connected the wheel to the motor shaft. All the parameters are reported in Table 1, together with the selected inertia and mass of a single flywheel.

Flywheels' Control Law
To derive a control law based on the robot's base orientation, we made use of (2), expressing all the contributions to the time derivative of total angular momentum with respect to the base reference frame: From this expression, the moment on the base caused by the acceleration of the flywheels is defined, and can be used as a feedback torque τ f b : and ω b r are, respectively, the desired and actual angular velocities of the base: Projecting the moment τ f b onto the flywheel axes with C T , the control action u yields

Results of Simulations
To validate our OCS, three simulations on different scenarios are reported. The authors wanted to test the capability of the proposed approach in terms of the following: to reject a disturbance when the robot was in the flight phase of a jump, and to dampen trunk oscillations after touch-down, and to work in parallel with the joints of the legs to achieve a highly dynamic motion. All the simulations were performed using ROS [25], together with Gazebo [26]. The physics-related parameters are reported in Table 2. References for the joints of the legs were computed off-line using Crocoddyl, an optimal control library for robots based on Differential Dynamic Programming (DDP) algorithms. It uses Pinocchio for fast computation of robot dynamics and the analytical derivatives. References q re f ,q re f and τ re f for joint positions, velocities and torques were then executed on-line with a proportional-derivative joint controller: The OCS was commanded to track base orientation references using the control law introduced in Section 3.4 coded in Python. (The video with all the simulations is available at web page https://www.mdpi.com/article/10.3390/s23001234/s1, see Supplementary Material) The necessity of having an OCS was revealed in the first test, as disturbance occurred when the robot had no contact with the ground. During the flight phase of a forward jump, 0.1 s after the lift-off, an external disturbance moment was applied to the robot's base, deflecting the robot's orientation. This disturbance was set to τ dist = 0.2 0.8 0.0 T N · m and applied for 0.05 s. If the flywheels were not used, Solo12 fell after touch-down. Instead, when using the flywheels it was possible to drive the robot to a safe configuration after landing (Figure 8), without the need to implement a specific landing strategy, such as the one in [27]. The second test demonstrated the ability of the OCS to reorient the base. The robot fell from a height of 1.0 m with an initial pitch orientation of 30 • and zero base angular velocity. If Table 2. Physics-related parameters used to simulate the robot dynamics in Gazebo.

Parameter Value
Step the flywheels were not actuated, the robot touched the ground with the same initial orientation and the trunk oscillated. If the OCS was enabled, it drove the robot's base to be horizontal when it was still in the air and the oscillations after touch-down were drastically reduced, both in the pitch angle and forward direction ( Figure 9). Finally, the ability of the flywheels to relieve the efforts of the leg joints to achieve a highly dynamic movement was shown with a back-flip ( Figure 10). For this, we targeted a space application, carrying out a simulation with lunar gravity acceleration (1.62 m/s 2 ). In this way, it was possible to obtain high jumps with a long flight phase, without having to select more powerful actuators. The leg joint trajectory computed off-line described a purely vertical jump of 1 m, having a flight phase that lasted 2 s. Right after the lift-off, the flywheels started the reorientation task of performing a back-flip, by means of a spin of 360 • on the pitch. For this maneuver, the value of the incident angle α was set to 0 • , since no roll rotation was required. Our hardware design allowed manual change of this value before performing the task. This simulation demonstrated that the OCS alleviated the effort applied on the legs. Indeed, it would not have been possible to do a back-flip without the flywheels, because the legs were only used to achieve the linear motion.

Conclusions
This work presented the design of a novel OCS, composed of two flywheels, that enable control of the trunk of a legged robot's platform, increasing the accuracy of aerial maneuvers during the under-actuated phases (i.e., flight phase), as well as enhancing stability when in contact by damping the oscillations. The novelty of the design, which involves flywheels attached with incident rotational axes on the trunk, is that it allows control of the orientations in both the roll and pitch directions, while keeping the device compact. The effect is optimized considering the inertial property of the mechanical structure. Several simulations were performed with the quadruped Solo12 that demonstrated the effectiveness of the proposed approach in the following: to reject disturbances during the flight phase, to stabilize the platform after touch-down, even in absence of a specific landing strategy, and to achieve a fast reorientation maneuver (a back-flip) in a reduced gravity environment.
Possible applications of the presented OCS include, but are not limited to, efficient adjustment of the posture of quadruped robots walking or jumping on uneven terrains. As proved in the third simulation (back-flip), our approach improves the capabilities of quadrupeds in space application, enabling fast locomotion by means of leaps, ensuring a reactive control action on the robot's angular momentum. Furthermore, the method presented in Section 3 in designing the OCS does not depend on a specific platform, and, thus, it can be replicated for reorienting mechanical structures with different morphologies, e.g, monopods or bipeds. A construction worker's backpack could contain two flywheels with incident rotation axes, which, in the event of a fall from scaffolding, could be used to reorient a human body for impact on the ground with an upright posture, using the same controller proposed in this work.  In future works, the authors plan to demonstrate our concept performing experiments with a real platform. The control strategy for defining the base's desired angular velocity could be improved using Nonlinear Model Predictive Control (NMPC), which takes into consideration future samples of the orientation reference. This feature is expected to allow the stabilization of The OCS alleviated the effort requested of the leg joints, that, in this case, could only be used to accomplish the vertical motion. The red, green and blue lines represent the axes of the inertial (world) reference frame. the yaw to a desired value, so that, if it is not locally controllable, enhances the non-holonomy property of the angular momentum, i.e., doing a preliminary roll and pitch maneuver. A control strategy that may lead to the same result is dynamic feedback linearization, widely used for flight with quadricopters.
The following abbreviations are used in this manuscript: