Abstract
This paper deals with the real-time walking of a multi-legged robot over difficult terrains using a balance stabilization method in order to achieve a fast speed and robust locomotion with minimal tracking errors. The stabilization method is described through a ZMP-based online pattern-generation scheme inspired by bio-mimetic stepping leg transferences with an active balance control so as to reduce the propagation of instability while performing rapid stepping actions for a fast walking gait in the presence of external disturbances. The proposed control system uses a force-position controller [14] which takes impact dynamics into consideration to compensate for the effect of external perturbations during walking by estimating impulsive forces in real-time. Using the proposed stabilization method, the robot plans appropriate footholds on the ground in order to achieve a reasonable average walking speed over difficult terrains in a natural environment. The success and performance of the proposed method is realized through dynamic simulations and real-world experiments using a six-legged hexapod robot.
1. Introduction
In the context of legged locomotion in known environments, high gain position control methods are developed to approximate accurate results in precise navigation. However, an ideal dynamic model of the robot and the environment with velocity matching is required during robot-environment interactions [1].
These problems are particularly problematic in legged locomotion where the leg-terrain interactions are not fixed. Furthermore, the small and imperfect selection of appropriate footholds on a difficult terrain can induce significant slipping/tripping or even the trembling of the robot. In legged locomotion over uneven terrain, compliant control is studied in [2]. However, the planned trajectories are always executed with errors due to slip, modelling and inaccurate knowledge of the terrain. Therefore, there is a need to develop a method with an active balance control [1], in contrast to passive walkers [3, 4] which are not flexible enough to be used in difficult terrains.
1.1. Literature Review and Related Work
In difficult terrains, the locomotion of a walking robot becomes foothold-oriented. That is, it is imperative that the robot is able to plan appropriate footholds in order to avoid slipping, tripping and drifting away from its reference track. A foothold selection method is addressed in [5]. For statically stable walking, the usual approach in addressing stability is to inspect the polygons formed by the supporting legs on the ground. Thus, in order to ensure static stability, the centre of mass must lie within the support polygon (SP) formed by the supporting legs on the ground. This implies that if the motion is interrupted, the robot will remain in a stable position. These kinds of statically stable gaits are generally useful for really low walking velocities only. However, under rapid leg transferences, the dynamic forces involved dominate the static forces, and this criterion is not sufficient to ensure stable locomotion on difficult terrains. In order to ensure dynamic stability while walking at fast speeds, zero moment point (ZMP) based stability criteria are generally used, as discussed in research studies [6, 7, 8 & 9].
Although these studies provide excellent algorithms to aid the robot in negotiating uneven terrains while using adaptive and compliant walking, the implementation is limited to quadruped robots only and the proposed work does not suggest a solution to compensate for the effects of slip for fast-speed walking in natural environments. In natural environments, tripping/trembling due to the slip phenomenon marks one of the important issues that must be dealt with in order to realize stable navigation at a reasonable walking speed. Therefore, and in contrast, this paper aims to propose a balance stabilization method with the help of an active balance control in order to prevent instability due to slip propagation over difficult terrains with an attempt to achieve fast-speed and robust hexapedal locomotion.
The work presented here is an extension of our earlier work [14], where we addressed the improvement of the navigability of a walking robot through the use of sensor fusion so as to estimate translational and rotational drift errors, an attempt to prevent or reduce slip propagation while traversing in uneven terrains. In [14] we mainly focused on motion-planning based on the impact dynamics involved in adaptive walking. To accomplish this feat, we proposed a control framework constituting a modified (with the impact dynamics into consideration) hybrid force-position controller to deal with the environmental disturbances. Though the experimental results of [14] yielded a significant improvement in walking stability at low speeds, the method however suffered from low dynamic stability at higher speeds, especially in the presence of unexpected perturbations.
In the light of these findings, we now aim to improve the robustness of legged locomotion at higher speeds for navigation over difficult terrains by describing a balance stabilization method that enables the robot to recover from the effects of external disturbances and attain a reasonable walking speed with minimal tracking errors. We focus most of our interest on evaluating the instability with regard to disturbed balance while walking under the effect of external disturbances. The ground reaction forces measured by the force sensing resistors embedded in the feet, coupled with the rate sensors' feedback, are used to estimate the ground conditions and the robot's posture. During locomotion, the controller approximates the ground reaction forces online (i.e. in real-time) and utilizes this sensory information as a control-input to the control algorithm. When the control of the robot is interrupted by an unexpected action due to an external disturbance, the locomotion gait is redesigned, satisfying the stability constraints. The newly generated gait pattern passes through the stability verification based on the ZMP criteria.
The experimental robot used in this work consists of a six-legged hexapod robot about 46cm long, 36cm wide and 33cm tall, and weighing approximately 3kg and with 3 degrees of freedom per leg. The joints' angle references are sent as PWM signals to Hitec HS-645 servos so as to actuate the joints through a wireless protocol using the BlueSmirf communication module. The robot is equipped with a 3-axis force sensor on each foot, position sensors to measure joint angles, and an on-board inertial measuring unit (IMU) for attitude control. An on-board differential GPS and compass module provide information about the absolute world position and orientation of the robot in a global frame of reference. The second part of the paper describes the design and modelling of the robot. Simulations are carried out in an open dynamic simulation environment using the software physics engine “AGEIA PhysX” provided by the Microsoft Robotics Developer Studio [15].
2. Terrain Adaptation
The prototype robot used for experiments has previously been reported in our earlier work [10 - 14]. The design constitutes the kinematic configuration of a hexapod robot, with each leg acting as an independent serial manipulator with three degrees of freedom. Fig. 1 shows the actual prototype of our robot. The legs are numbered from 1 to 6. Legs 1, 2, and 3 correspond to the legs on the right side of the robot's body while the left side legs are numbered as 4, 5 and 6.
In our controller, we incorporate the same underlying impact-dynamics as we described in [14] to compensate the impulsive forces during walking over rough terrains.
The stability criterion used in this paper is based on the computation and evaluation of the zero-moment-point (ZMP) of the robot computed online and the normalized dynamic energy stability margin [16, 17]. A study in [17] has shown experimentally that the normalized dynamic energy stability margin presents the most accurate stability criteria when the robot's dynamics are considered over rough terrains. These stability criteria are used throughout this paper as performance measures to demonstrate the efficiency of the proposed approach through computer simulations and actual experiments on a prototype hexapod robot.
Impact in walking occurs during the footfalls (every time a foot touches the ground) with a non-zero velocity and has been recognized by researchers in science and engineering as the largest loss in terrestrial locomotion in both animals and robots. The objective is to achieve zero normal and tangential velocities at the supporting footholds when a leg makes the transition from a non-contact state to a contact state, as investigated in [18, 19].
Let
Where,
Multiplying both sides of Eq. 1 & Eq. 2 by the mass of leg “m”, we get the lateral and longitudinal components of our desired reaction force, as in (3).
Therefore, the total desired reaction force
Thus,
From the above formulations, we deduce that the
Given the Coulomb friction model [20] to describe the friction force proportional to the normal load times the combined coefficient of ground friction µ, the robot will not be susceptible to the translational or rotational slip/skid phenomenon provided that the condition described in Eq. 5 is satisfied.
Where,
The control objective is, therefore, focused on keeping the robot's balance stabilized such that the inequality in Eq. 5 is always satisfied. The ideal case assumes that neither rebound nor slew is present at the impact instant, but it is only valid for the case when the impulse forces satisfy the relation described in Eq. 5.

A prototype of our robot and its physical characteristics
3. Control System
Fig. 3 shows the framework of the overall control system, which mainly consists of a four subsystems, namely: a “motion planner”, a “gait generator”, a “kinematic model”, a “Balance Stabilizer” and a subsystem for the on-board sensors network. The “Balance Stabilizer” subsystem calculates the compensation signals so as to provide balance stabilization for the robot. The compensation signals calculated by the “Balance Stabilizer” are used by the motion planner coupled with the gait generator to generate a reactive gait. The “Balance Stabilizer” is responsible for providing overall stabilization through the “ZMP Control”, the “Slew Control” and the “Active Attitude Control”.
Terrain adaptation is realized with the help of force sensing resistors embedded in the feet to provide the controller with the information of ground contact, along with an onboard ultrasonic range sensor for obstacle avoidance. An independent attitude controller keeps the body of the robot levelled at an appropriate height above the terrain using the angular rates data from the on-board IMU.
The “ZMP Control” is responsible for the compensation of any posture rolling caused by the errors between the desired - or reference - ZMP and the actual ZMP computed online. The “Slew Control” subsystem inside the “Balance Stabilizer” is mainly responsible for compensating the posture instability caused by the skids and drifts between the foothold and the ground having a low friction coefficient.
The actual impulsive force during the impact is not consistent with the desired reaction force due to the reason that there exists some disturbance acting on the foot during the impact of the foot upon the ground. This disturbance is defined and evaluated as a slew force in this paper. Thus, the actual impulsive force during the impact can be represented using the desired reaction force and slew force information as described in the following equations:
Here, (
Thus, in this paper the slew force is interpreted as an external disturbance affecting the gait during leg-ground interactions. As a consequence, the forces involved at the contact points during an impact create a torsion slew, further described by the Eq. 6.
The control strategy implemented here utilizes the closed-loop system shown in Fig. 3. To attain a high speed, the motion planner devises a cyclic gait based upon bio-mimetic leg transferences with three legs in the support pattern at the start of the locomotion cycle. The leg transferences resemble a tripod stepping pattern in which a set of three alternate legs go into the swing phase altogether while the remaining three alternate legs support and propel the body in the desired direction of motion. Thus, the support polygon constitutes three contact points, as shown in Fig. 5 (top).

The slew force during an impact is estimated as the difference in the reference reaction force and the actual ground impulsive force measured during the impact
As discussed earlier, stability is ensured by evaluating the ZMP stability criteria for the cases, if the conditions are such that there is no translational or rotational slip in any direction or if an action violating the condition described in Eq. 5 is perceived. In a situation where a disturbance effect is identified, balance stabilization is achieved by re-designing the support pattern in the propel phase of the locomotion gait coupled with the active correction of the robot's posture for an overall balance control. To compensate for the disturbance effect, it is intended to increase the total normal force
If the walking surface is such that the coefficient of friction is extremely low - for instance µ=0.13, which implies a low friction/slippery surface eventually not satisfying the condition described in Eq. 5 - the support pattern is re-designed for another time so as to consider all six of the legs in the propel phase. Thus, the resulting walking gait resembles a variant of a twelve-step wave gait, in which only one leg goes into the swing phase while the remaining five legs support the body. However, the body is propelled only after the completion of the subsequent swing phase, resulting in body advancement commenced by the six legs together, as shown in Fig. 5 (bottom). This concludes an even force distribution around the two sides of the robot body, resulting in a slower, but more secure, gait in terms of dynamic stability. On perceiving an action satisfying the condition described in Eq. 5, the controller restores the former support patterns, one after the other, by decrementing the number of legs in the propel phase as an attempt to increase the gait speed. This phenomenon is further explained through the state diagram shown by Fig. 4.

Block diagram representation of the overall control framework

State diagram of Gait Transitions

Gait Generation Representation. (Top) A modified four-step tripod gait with three legs in the propel phase. (Middle) A six-step ripple stepping pattern with four legs in the propel phase. (Bottom) A twelve-step wave gait with all six legs in the propel phase. The footfall in the wave gait model is followed immediately at the end of the swing phase in the same step.
4. Experimental Results
In order to carry out experiments to realize the success and performance of the proposed control algorithm, the impulsive forces at the feet are measured using force sensors. The tests are conducted on both the simulation model and the real robot in order to address the following six main objectives:
Attitude tracking of the robot's posture.
Force feedback for real-time active-control.
Online computation of the ZMP.
Evaluation of the Stability Margin.
Computation of slip corrections (slew velocities and slew torques).
Three-axial force sensors based on quartz transducers are employed at each foot to measure the ground reaction forces, which finally are filtered using a Butterworth IIR digital filter of order five. In Fig. 6, we provide a representative sample of the attitude tracking of the robot body posture in terms of feedback and feed-forward torque commands. The tracking of the respective angular rates of the robot's body for this test is further shown in Fig. 7, which shows a comparative representation of the impact dynamics (reference data) and the actual sensor data. From Fig. 6, it can be seen that the total torque command is mostly accounted for by the feedback contribution and that the feed-forward command is almost negligible. This validates the performance of our force-position based control scheme during the impact.

Attitude tracking of the robot's posture

Tracking of the angular velocities of the CoM of the robot
In order to realize the success of the proposed balance stabilization method, experiments were initially conducted on the simulation model. The simulation results are shown by Fig. 8, which demonstrates the straight-line walking of the robot over an uneven terrain. As can be seen, the terrain is artificially created in a dynamic visual simulation environment.
Stationary masses are arbitrarily placed in the path of the robot to act as obstacles. White spots on the terrain represent the reference path to be traced. The ground is modelled with a material having a uniform coefficient of friction of 0.2 whereas the obstacles are considered having a material with a 0.15 coefficient of friction.

Pictorial representation of the robot's locomotion over different regions of an uneven terrain using a dynamic simulation engine. A: Walking through a depression, B: Walking up a hill, C: Walking down a hill, D: Walking through a depression.
In order to suggest the plausibility of the proposed method, the same experiments were repeated on the real robot. A total of 4 tests were performed, with and without using the proposed balance stabilization method. The terrain was prepared with an attempt to create a ground with an uneven surface and a variable profile of coefficients of friction. To accomplish this, sand (course & fine), mud and rolling stones were used to create humps and small mounds over an uneven ground, as is further shown by Fig. 9. Furthermore, heavy masses such as wooden planks and bricks were used as stationary obstacles in order to realize walking in a difficult natural environment. The coefficients of friction were not pre-assumed in these real world experiments as they were with the tests carried out on the simulation model. Therefore, the sensor data from the force sensing resistors embedded in the feet was used to approximate the coefficient of friction online for ground estimation. To achieve this, the controller computed the
Where,
Initial experiments were conducted without using the balance stabilization method with an average gait speed of 10cm/sec, and the tracking results of the robot locomotion are shown by the red plot in Fig. 10. Due to instability, the robot drifted off the reference track and stumbled on the ground on a number of occasions while crossing the obstacles in the regions containing rolling stones and dry sand, as further described by Fig. 15. As shown in that figure - the comparative presentation of the robot's CoM and ZMP with support polygons - the ZMP goes out of the support polygons in almost all of the four tests, suggesting the conclusion that the robot was incapable of dealing with environmental disturbances at an average gait speed of 10cm/sec. The robot locomotion was relatively levelled, without much drift or tumbling on the ground when it was steered, with an average gait speed of 2.3cm/sec to 2.5cm/sec.

Portion of the Land used for walking experiments in a natural environment with a difficult terrain. The land is categorized according to four (1, 2, 3, & 4) distinct regions based on the ground properties yielding different coefficients of friction.

A Comparative representation of the tracking errors estimated in walking experiments when using the proposed balance stabilizer with the results when not using the balance stabilizer

A Comparative representation of disturbance approximated in walking experiments when using the proposed balance stabilizer with the results when not using the balance stabilizer

Pictorial representation of the locomotion of the real robot on a natural terrain with arbitrarily placed stationary obstacles in the path of the robot. The terrain considered here contains uneven regions with sand, mud and stones. The obstacles considered are wooden logs (circular & flat), bricks and rocks.
The experiments performed on the real robot using the proposed balance stabilization method yielded the results shown in Fig. 16 & Fig. 17. As shown by Fig. 16, both the CoM and ZMP remain within the support polygons on the ground, satisfying both the static and dynamic stability constraints. Furthermore, it was possible to achieve an average walking speed of 8cm/sec to 8.3cm/sec, in comparison with the 2.5cm/sec that was achieved without using the balance stabilization method. The tracking errors are shown by the blue plots in Fig. 10. As is apparent from the comparative analysis, the displacement errors have improved from ±30cm to ±5cm and the heading errors from ±5° to ±1.5° when using the proposed method. Furthermore, the approximation of the effective slew forces during the propel phase, as shown in Fig. 11, demonstrates that the slew force has decreased significantly when using the proposed balance stabilization method. The investigation of the robot's locomotion is pictorially demonstrated in Fig. 12.
As a quantitative measure, the approximated stability margin is shown in Fig. 13. It is considered to be positive when the approximated ZMP is inside the support polygon and negative when the ZMP is outside of it. As is apparent from the red plot in Fig. 13, during the robot's walk over the terrain containing rolling stones and sand, the stability margin drastically dropped below the zero margin line, indicating the tumbling of the robot on the ground due to the inability of its walking gait to recover from instability due to external disturbances arising during the impact phases. However, when the robot was steered using the proposed stabilization method, the stability margin remained greater than zero for the most part of its walking, demonstrating an improvement in its adaptive locomotion.

A comparative representation of the stability margin index as approximated in walking experiments when using the proposed balance stabilizer with the results when not using the balance stabilizer

A comparative representation of slew velocities and slew torques estimated in walking experiments when using the proposed balance stabilizer with the results when not using the balance stabilizer
Eventually, the slew velocities and slew torques are approximated for the test experiments in order to provide a comparative representation, as shown by Fig. 14. As is clear from the figure, the slew velocities and slew torques are significantly reduced when using the proposed balance stabilization method, indicating an efficient way to handle environmental disturbances while traversing natural terrains at a fast speed.
It should be noted that the dynamic model used in this paper is not of a high quality. It is partially derived from the CAD model of the robot designed in Pro-Engineer and translated to SimMechanics so as to obtain its inertial properties and kinematic parameters, and partially from kino-dynamic manipulator modelling in the state space with parameter estimation techniques. Therefore, various deficiencies in the quality of the model have been inspected. Future work will address improvements in this regard.

Tracking of the Centre of Mass and Zero Moment Point of the robot in walking experiments when not using the proposed balance stabilizer. The support polygons on the surface are traced online in order to inspect the stability criterion.

Tracking of the Centre of Mass and Zero Moment Point of the robot in walking experiments when using the proposed balance stabilizer. The support polygons on the surface are traced online in order to inspect the stability criterion.

Posture Tracking of the robot's body to evaluate the performance of the attitude controller
5. Discussion and Conclusion
The proposed method has been applied to a six-legged walking robot in order to implement a force-position controller with a ZMP-based online pattern generation scheme to achieve robust locomotion in difficult natural terrains with an adequate walking speed. We have introduced a simple and efficient way of evaluating the dynamic stability of the robot while walking using the ZMP-based stability criterion coupled with the normalized dynamic energy stability margin. The results in simulation and on a real experimental hexapod robot show the feasibility and significance of the proposed controller.
It is proposed that an approximate analysis of the impact forces by re-designing the support patterns, together with a coulomb friction model, allows the active control of the robot's balance and the reduction of slip propagation while walking in order to realize a fast walking speed in difficult terrains. In order to utilize the force-friction relation, a posture control strategy is proposed by means of active attitude correction through sensor fusion. From the simulation and experimental results, it is evident that the proposed method is efficient enough to compensate the effect of a possible tripping/trembling action while walking at an average speed of 8.3cm/sec in a difficult natural terrain (i.e. in the presence of external disturbances).
Future work will address the deficiencies currently being considered and already identified in the robot's dynamics model. It is also intended that fault detection and diagnosis through a fault tolerant gait will be a part of any future work.
