Static Balancing of Wheeled-legged Hexapod Robots

Locomotion over different terrain types, whether flat or uneven, is very important for a wide range of service operations in robotics. Potential applications range from surveillance, rescue, or hospital assistance. Wheeled-legged hexapod robots have been designed to solve these locomotion tasks. Given the wide range of feasible operations, one of the key operation planning issues is related to the robot balancing during motion tasks. Usually this problem is related with the pose of the robot’s center of mass, which can be addressed using different mathematical techniques. This paper proposes a new practical technique for balancing wheeled-legged hexapod robots, where a Biodex Balance System model SD (for static & dynamic) is used to obtain the effective position of the center of mass, thus it can be recalculated to its optimal position. Experimental tests are carried out to evaluate the effectiveness of this technique and modify and improve the position of hexapod robots’ center of mass.


Introduction
Service robotics demands are increasing, and service robots need to be able to perform different tasks in distinct settings, with different terrain types that may be flat or uneven [1]. On one hand, wheeled mobile platforms are robust and facilitate fast displacement over flat or regular surfaces, but are limited in irregular or uneven terrains. On the other hand, legged mobile platforms require more effort to control and maintain stability, but can more easily displace through uneven terrains, since they only require isolated safe foot holds. Usually legged systems move slower than wheeled ones [2]. Due to the above, there is an increasing interest (see [3]) in developing novel mobile machines or robots with useful features to displace over almost any surface type, such as wheeled-legged robots.
Wheeled-legged robots combine the best features of two locomotion types: wheel efficiency and velocity alongside legged robots' capability to deal with difficult terrains. Service activities where time can be a matter of life and death, such as search and rescue missions or hospital assistance, are examples of tasks that might benefit significantly from such systems [4][5][6][7][8][9][10][11][12][13][14][15][16][17][18][19]. These hybrid systems, robots with legs ending in wheels, can move by driving on the wheels while adjusting with legs to slow changes in terrain height. The robot switches to legged locomotion if larger obstacles prevent driving [2,3]. Although these kinds of robots are able to switch from one locomotion type to the other, most of the active research focuses on combining both locomotion types as an active suspension system as presented by De Viragh et al. [4], Carbone and collaborators [5], and Copilusi and colleagues [6,7]; these studies use a kinematics approach to generate velocity commands for wheels, and also consider incorporating the whole body dynamics of the root to generate torque commands for each of the joints, including the wheels [8]. In addition, other research, like that of Chen and colleagues [9] and Bai and co-workers [10], explores transformable robots which are able to transform their wheels into legs, or use them as legs to reproduce a wheeled or legged locomotion. Other valuable examples are reported in [11] to [16] with insight on kinematics, stiffness, dynamics, stability, path planning, and control aspects.
The equations of motion, including the non-holonomic constraints are incorporated into the control structure of a two-wheeled mobile robot [17]. Other studies, such as those of Carbone et al. [18,19], address the kinematics/statics/dynamics of a leg for design and control purposes. Wheeledlegged robots have motion and balance issues because of their conceptual design of implementing two locomotion types in each extremity; this causes the robot to swipe during a legged locomotion or vibrate during a wheeled locomotion (having straight legs). Such issues increase when the robot uses omnidirectional wheels or Mecanum wheels instead of common wheels, since these kinds of wheels have no controllable degrees of freedom (DoF), like the rollers of the Mecanum wheels.
This paper presents the static balancing of a wheeled-legged hexapod robot to adjust its center of mass to improve its motion an operation performance. A Biodex Balance System is used to obtain practically the real position of the center of mass of the robot. The obtained test results of such a balance system allow for recalculation of the robot's center of mass using zero moment point criteria. Experimental results are discussed to show the performance improvement of the robot by carrying out its static balancing.

2.A Wheeled-Legged Hexapod Robot
A family of wheeled-legged hexapod robots have been developed in Cassino since 2000. The main feature of this family of robots is their low-cost and user-friendliness based on a combination of legs and wheels intended for inspection and service at non-accessible locations, such as Montecassino Abbey, as well as tracking, assisting or directing tasks in hospitals, such as IRCCS Neuromed. The presented robot is a wheeled-legged hexapod robot ( Figure 1a) with a Mecanum wheel in each leg as end-effector (EE) (Figure 1b), which means that its rollers are attached with a rotation axis of 45° to the plane of the wheel [20]. This robot has a lightweight three-dimensional (3D) printed body onto which six hybrid legs are connected to the chest. Its body can fit into a box of 375 × 230 × 200 mm, allowing for two front legs, two lateral legs (one on each side), and two rear legs, all in frontal orientation ( Figure 2a). Its topological characteristics are presented in Table 1. Kinematic and dynamic models of the Cassino hexapod robot have been previously developed for legged locomotion using geometrical and Euler-Lagrange methods, respectively. A detailed description can be found in a study by Tedeschi and Carbone [13]. Every hybrid leg consists of three servomotors, two (180° servomotor) to enable the pure movement of the leg, and the third (continuous rotation servomotor) to activate the movement of the Mecanum wheel ( Figure 2b). This kind of leg allows the robot to move in any direction over flat surfaces and to easily avoid large obstacles by simply rolling to any position along a straight line or overcoming small obstacles by performing complex movement with a combination of legs and wheels [19]. Its control hardware is fully onboard. It consists of an Arduino Mega as the servo-controller, a servo-shield to link the 18 servomotors, and a LiPo battery (full power 4S) with a voltage reduction regulator to 5 V. A schematic diagram of the control hardware is presented in Figure 3.   One of the main operational features of this robot is its ability to move or displace on various surfaces, such as smooth and rough surfaces. This feature allows it to perform various service tasks where it is necessary to move faster over a flat surface with wheeled locomotion or to move slower but safer with legged locomotion [19]. In addition, it can face rough terrains with legged locomotion, or by raising one or more legs during a wheeled displacement to avoid and overcome obstacles. This robot functionality is well illustrated by Orozco-Magdaleno et al. [20] and Ceccarelli and colleagues [21], who explore the possibility of a wheeled, legged, and wheeled-legged locomotion. Due to the Mecanum wheels, complex displacements can also be carried out, where the robot can follow a circular trajectory without altering its local x or y axis. All operation modes of the robot are embedded in its servo controller. Namely, one can select the operation mode that he/she wishes to use. The gait planning is based on the implementation of a kinematic model, whose main formulation is reported by Tedeschi and Carbone [13] for the legged locomotion. Moreover, a specific kinematic model has also been implemented for the omni-wheeled locomotion. A user-friendly Android app was developed to implement a user interface when selecting and implementing the desired legged and omni-wheeled operation modes (see [19,20]).
The robot has an Inertial Measurement Unit (IMU) sensor mounted on its platform as a feedback on its angular displacement; it has an MPU6050 unit coupled with a 3-axis gyroscope and a 3-axis accelerometer on the same silicon along with an onboard digital motion processor (DMP) capable of processing complex 9-axis motion fusion algorithms.

Static Balancing
The goal of mobile robots is to extend the capabilities and increase the safety of human beings during dangerous service operations or environments. During these service operations, mobile robots can face different motion issues due to surface properties; the walking robots can fall, or the mobile robots can stop rolling or overturn. In addition to the above, the mechanical assembly of the robot is very important since it defines the real position of the center of mass of the robot. Therefore, there are different techniques to assure the static and dynamic balancing of the robots. An easy way to solve this problem is to implement a static balancing of the robot, using any technique to ensure the correct posture of the body with respect to the plane or surface. Static balancing is to balance the gravity so that the weight of the machine components does not produce any force at the actuators under static conditions, this also allows to correct the posture of the robot´s body. On the one hand, Wen-Yu and Lei [22] presented a static balancing method for a quadruped robot, where the stability margin of the robot and the unstable problems during a walk were studied. On the other hand, in a study by Magid and colleagues [23], a static balancing algorithm for a mobile robot with caterpillar was presented, where a function calculates the optimal position of the center of mass, depending on the terrain type and obstacle types to overcome. The other solution is to implement dynamic balancing, where a sensor's implementation is necessary to calculate and evaluate in each time lapse the optimal posture of the robot. Dynamic balancing is to balance the inertia so that the dynamic force change can be cancelled or minimized. The balancing issue becomes worst when the robot has a hybrid locomotion configuration, like the wheeled-legged or omni-wheeled-legged locomotion. Therefore, this problem should be solved by considering each locomotion type separately and together. In particular, this paper solves this problem by carrying out a static balancing to solve the ground contact and the foot hold of the robot by compensating the unbalancing with a counterweight fixed in the robot´s body. The static balancing is carried out with the obtained experimental data of a Biodex Balance System model SD (for static & dynamic). This balance system calculates in real-time the position of the center of the mass of the robot, thus it can be recalculated and compensated by adding weight to another part of the robot's body.

Balancing Issues in Motion Operation
An important key issue during motion operations is the stability of the wheeled-legged hexapod robot. This problem can be classified in two different types: dynamic (running, rolling, and hopping) and static (walking). In static stability, the vertical projection of the center of mass of the robot must always be within the support polygon of the legs which have ground contact (Figure 4). Dynamic stability is needed when the center of mass (CoM) is outside or on the border of the support polygon.
When the CoM is outside of the support polygon, the robot will fall over when no additional forces and movement are made with the legs [24]. For an arbitrary support polygon, the stability margin is the shortest distance from the vertical projection of the center of gravity to any point on the boundary of the support pattern in the horizontal plane [24]. There are other solutions for solving the stability problem, like the one described by Murray and Sastry [25], where the criterion of the zero moment point (ZMP) is presented. ZMP is defined as the point on the ground where the net moment of the inertial forces and the gravity forces has no component along the horizontal axes. For a dynamic stable locomotion, it is necessary to have the ZMP in the support polygon at all stages of the locomotion gait [26,27].

Biodex Balance System SD
The Biodex Balance System SD is a medical device for neuro rehabilitation, vestibular physiotherapy, and balance training. This device was designed to improve balance, increase agility, develop muscle tone, and treat a wide variety of pathologies. The two main parts of the system are the display module, where the user can choose between balance analysis or training, and the foot platform, where the patient is located for the evaluation. The primary components of the Biodex Balance System SD are presented in Figure 5a. This system has four different analysis formats: postural stability, limits of stability, athlete single leg, and fall risk. In particular, the postural analysis, our area of interest, allows to evaluate the real center of mass of the patient, or of the robot in this case, by producing random movements or shakes with the foot platform to destabilize the patient.
The postural stability testing screen is presented in Figure 5a, where it shows the real position of the center of mass of the patient in respect to the foot platform.

Tests
Two postural tests were carried out with the aforementioned wheeled-legged hexapod robot. Regarding the above system, the robot is located at the center of the foot platform ( Figure 6). Each test is composed of one test trial of 10 s, with a platform setting in one (the bigger instability), and a stance for both feet. The test results are presented in Figure 7 and Table 2. The test results of the balance system report the balance trace in a graphic, which shows the real position of the CoM of the robot in each movement that is needed to become stabilized. It also presents two numerical values, the medial/lateral and the anterior/posterior.
The medial/lateral (M/L) stability index represents the variance of foot platform displacement in degrees, from level, for motion in the frontal plane, and is represented by Equation (1), where COB is the initial center of balance, zero; X is the displacement in degrees of the COB over the x axis along the test; and 200 is the number of samples. The anterior/posterior (A/P) stability index represents the variance of foot platform displacement in degrees, from level, for motion in the sagittal plane, and is represented by Equation (2), where Y is the displacement in degrees of the COB over the y axis along the test. Thus, according with the test results presented in Table 2, the center of mass of the robot moves 0.36° over the x axis and 0.42° over the y axis. To compensate the mismatch of the center of mass of the robot, the zero moment point (ZMP) criteria is applied in the next section.

Zero Moment Point Criterion
Apart from the realization of the relative motion of the mechanism's links, the most important task of a locomotion mechanism during the motion is to preserve its balance or stability, which is achieved by ensuring the foot's ground contact. In general, the total ground reaction consists of three components of the force R (Rx, Ry, Rz) and moment M (Mx, My, Mz) [29]. Since the friction force acts at the point of contact of the foot with the ground, and the foot on the ground is at rest, those components of the force R and moment M that act in the horizontal plane will be balanced by friction. Therefore, the horizontal reaction force (Ry, Rz) represents the friction force that is balancing the horizontal component of the force FA, whereas the vertical reaction moment My represents the moment of friction reaction forces that balances the vertical component of the moment MA and the moment induced by the force FA [30]. Thus, the zero moment point (ZMP) is defined as that point on the ground at which the net moment of the inertial forces and the gravity forces has no component along the horizontal axes. According with Table 2, the CoM of the robot is displaced 0.36° over the x axis and 0.42° over the z axis, namely, the robot's whole body is unbalanced (Figure 8). In the particular case of the wheeled-legged hexapod robot, it is necessary to compensate the reaction Ry on the opposite corner of the robot´s body ( Figure 9). The static model of the robot is carried out by solving its free-body diagram, considered statically to calculate the reacting forces (Figures 9 and 10). Figure  10 presents the force distributions of the robot, where W is the weight of the robot, a uniformly distributed load, which behaves as an acting force; R forces are the reacting forces from the legs for a static equilibrium. Considering the unbalancing presented in Figure 8, and the diagram of Figure 9, it is necessary to add an extra weight to balance the system. Thus, by implementing Equations (3) and (4), where Ry is the total reaction force and Extra W is the extra weight to compensate the unbalancing, the counterweight is defined according to the equilibrium equations, which can be written for the model in Figure 10 in the simplified form R =R +R +R +R +R +R Specifically, for this robot the compensation of the robot´s unbalancing is solved by adding an extra weight of WExtra = 250 g at the location shown in Figure 11. The position of the counterweight is defined by the total lengths of the robot to compensate the total static unbalancing. Achievement of a proper balancing is then verified using the Biodex Balance System SD as shown in Figures 5 and 6.

Experimental Tests
Experimental tests were carried out to verify the correction of the balance of the robot. Such tests were carried out with the balanced and unbalanced robots. For the tests, an omni-wheeled locomotion operation was selected, where the robot follows a diagonal path (Figure 12a). Ultrasonic sensors are fixed over the robot to measure the displacement of the robot (Figure 12b). On the one hand, Figure 13 presents the photo sequence of the test with unbalancing, where it can be observed that the robot is not able to follow the proposed path. The above is due to the wheels' ground contact; since it is not equal in each leg, Mecanum wheels do not roll well. In each time lapse, the robot tries to displace, but the low ground contact in some of the legs is stopping the robot and also turning it. On the other hand, Figure 14 presents the photo sequence of the test when the robot is balanced and able to follow and complete the proposed path. The above is due to correct ground contact of the wheels. In each time lapse it is observed that the robot is rolling smoothly. Tests results are presented in Figure 15. Figure 15a presents the comparison between the target and the real displacement of the robot when it is unbalanced. In this case, it can be shown that the robot does not reach the target value of 60 cm, instead it reaches just 36 cm. In addition, it can be observed that during the displacement the robot has different perturbations, which make the robot oscillate. Figure 15b presents the comparison between the target and the real displacement of the robot when it is balanced. It can be observed that the robot displaces with a better linearity and less oscillations. The robot reaches the target value with an overshoot of 2 cm. Therefore, the proposed method for the static balancing of the wheeled-legged hexapod robot is correct. Correct balancing and ground contact of the robot is very important to improve its motion performance significantly. (a1) (a2) (a3) (a4) (a5) Figure 13. Photo sequence of the tested path with unbalancing: (a1) t = 0 s; (a2) t = 3 s; (a3) t = 6 s; (a4) t = 9 s; (a5) t = 12 s.

Conclusions
This paper addresses the balance and ground contact of the wheels and legs for wheeled-legged hexapod robots. In particular, the center of mass location has proven to play a significant role in the practical operation strategies of multi-legged locomotion. Accordingly, this paper proposes a static balancing procedure to achieve proper robot locomotion. The main contribution of the paper is the implementation of a practical method to obtain the center of mass of the robot by using a Biodex Balance System SD. This method allows to identify and correct the center of mass location. Experimental tests demonstrated the improved motion performance of the wheeled-legged hexapod robot during an omni-wheeled operation. Thus, the robot can move or displace from any point A to any point B in less time, being able to carry out service activities, like search and rescue or hospital assistance, where time is of great importance. Accordingly, the proposed static balancing procedure can be applied in other mobile robots to improve their motion performance.