Abstract

This paper discusses the importance of a nontumbling gait, a gait that allows preventing complete tumbling of the robot. Nontumbling gait is made possible by the effect of the swing leg which may contact the ground even when the robot is affected by an external disturbance. Such an effect is present in both static walking and dynamic walking. Stability criterion required to maintain the nontumbling gait is then considered and proposed through generalized directional normalized energy stability margin. The validity of the introduced criterion is evaluated by a tumbling experiment with a simplified walking robot model. The concept is also applied to the gait control of the newly developed walking robot TITAN-XIII.

1. Introduction

Over the past few years the development of various multilegged robots has gained significant traction. However, most of the advances have been made in the direction of mechanical design and high-level control systems. There has been little discussion about such important subject as stability of multi-legged locomotion, and most of the scholars continue to rely on normalized energy stability margin, or NESM [1]. In one of our previous works we proposed a directional normalized energy stability Margin [2], or , which allowed us to estimate robot’s stability at any given direction. In this paper, we will further investigate the properties and possible applications of DNESM . We will do so through the discussion about the effect that swinging leg may have on the stability of a multi-legged robot during its motion.

2. Nontumbling Gait

When a multi-legged robot cannot maintain a planned stable walking or running due to some disturbance, for example, wind, its movement can be described by one of the two tumbling states: complete tumbling, and partial tumbling (it should be noted that under tumbling we understand a disruption of a planned walking sequence under the influence of external disturbance). Complete tumbling is a state when robot tumbles until its body hits the ground, whereas partial tumbling is a state when robot inclines, but does not overturn due to the effect of the swing legs which hit the ground and help to maintain standing posture. Figures 1 and 2 illustrate partial tumbling in detail.

Let us assume that the robot is performing a statically stable crawling gait and maintaining stability by forming a supporting triangle with legs , , and . Disturbance energy is applied to the body of the robot as shown in Figure 1(a). When disturbance energy is large, robot may start tumbling around the line connecting and , and the swing leg may hit the ground. If disturbance energy is very large, the robot may overturn completely. However, if it is not, robot will maintain a standing posture with a newly formed supporting polygon . This latter state is what we call a partial tumbling in a static walking.

Let us assume that the robot is preforming a dynamically stable trot gait and maintaining a planned dynamic motion while keeping the ZMP of the body on the line connecting and . Disturbance energy is applied as shown in Figure 2(a). If disturbance energy is very large, the robot may tumble completely. However, if it is not, the robot will maintain a standing posture with a newly formed supporting polygon in case of Figure 2(b) or in case of Figure 2(c). This latter state is what we call a partial tumbling in a dynamic walking.

Both complete and partial tumbling are, of course, not desirable, and they should be avoided. From practical viewpoint, however, partial tumbling is acceptable, unlike complete tumbling, because it would not damage the body, and resuming normal walking sequence or running in case of partial tumbling is not difficult from the control system standpoint.

Until now, there were many discussions about the stability criteria for statically stable walking, such as: static stability margin [3], energy stability margin [4], normalized energy stability margin [1], energy stability margin accounting for dynamic effects [5, 6], and, finally, directional normalized energy stability margin. But all of these criteria only consider the conditions required to maintain a statically stable posture and never consider the phenomena that happen when tumbling occurs.

As for the stability of dynamic walking, as far as we know, the discussion about it has not been done before, and dynamic walking was considered unstable from the beginning. In this context, an idea about “stability” being an intrinsic property of dynamic walking may sound contradictory.

From practical viewpoint, even if normal planned walking motion is disrupted, it is important to prevent complete tumbling and turn it into partial tumbling, because this may help to prevent robot’s damage and to return to normal static or dynamic walking.

We would like to specifically define the gait that prevents complete tumbling and turns it into partial tumbling as a “nontumbling gait,” or “NT gait.” We would also like to discuss about the conditions that should be met in order to perform an NT Gait.

3. Generalized Concept of the Directional Normalized Energy Stability Margin, or

3.1. Definition of Directional Normalized Energy Stability Margin

In order to generate an NT gait resistant to large disturbing forces applied to robot’s body from any direction, our first step was to introduce Directional Normalized Stability Margin, a new stability criterion that takes into account the dynamic effects of a tumbling motion, including the effect of the swinging leg when it forms a new ground foothold, as well as a directional disturbing force.

We proposed before and defined it as the minimum amount of input energy applied in the form of horizontal force with a yaw angular direction required to tumble an object, divided by weight of the robot itself. DNESM was expressed as follows:

In this criterion, we assume the phenomenon of instantaneous time, when robot’s movement is measured in discrete time snapshots; therefore, even though is created by a certain input force which is, in turn, caused by an input energy , we may neglect such parameters as acceleration under the influence of that force, feet slipping, and so forth. Input energy is applied to the center of gravity of the object in the form of force that acts in the horizontal plane on the yaw angle and generates velocity .

3.2. Calculation of

Let us summarize the calculation of for a walking robot with an -legged supporting posture.

We assume that a walking robot is affected by an input energy that generates horizontal input velocity of the CG (Figure 3). Yaw direction of is variable, and its magnitude is defined by the amount of energy required to overturn the robot. Additionally, robot body has a horizontal velocity . Therefore, we are considering that rotational velocity is generated by both and .

and are neighboring ground contact points. Edges of the supporting polygon and CG of the robot may be denoted as , and correspondingly.

Main condition for overturning the robot is moving its CG from initial position to a position —an unstable equilibrium in rotation around axis.

Thus, for the edge of the supporting polygon connecting th and th foothold may be easily computed through (2):

Variables, necessary for computation of via (2), can be calculated through the following equations.(1), height difference between original CG position and its highest possible position above : where for which Also, a maximum angular displacement of robot’s CG can be found as where (2)Coefficient for a axis: for which coefficient (3)Similarly, coefficient : where is the direction angle of robot’s body velocity .

3.3. Expansion of for the Generalized Case of Partial Tumbling

As it was explained above, in presence of the swinging leg, when disturbing force is high enough to cause robot’s rotation around a given edge of the supporting polygon, the leg may block robot’s motion. In order to explain this tumbling sequence in detail, let us refer to Figure 1. There are two possible stages of rotation, and we will refer to them as “first rotation” and “second rotation.”

We will be using the case of a crawling gait pictured in Figure 1 as an illustration to our explanation and subsequent calculations.

In case of Figure 1, first rotation is a rotation of robot’s CG around edge of the supporting polygon (top view diagram shown in Figure 4(a)). If input energy is sufficient, and so is input velocity , it may force the robot to overturn around . If that is the case, leg loses its contact with the ground, while leg , on contrary, gains it. This motion results in a change of the supporting polygon from to (Figures 1(b) and 4(b)).

If initial disturbing energy is high enough, robot’s movement can continue in a second rotation phase either around (in plane, Figure 4(b)) or around (in plane, Figure 5), depending on the position of the swinging leg and direction of motion of the CG.

For the purpose of illustration, let us suppose that second rotation occurs around , as in Figure 4(b). Let us discuss the process of calculation of in such case in detail.

3.3.1. Calculation of for the First Rotation

For the first rotation, we will not be calculating a typical as the one we discussed before. This is because previously we were suggesting that disturbance input energy should be sufficient to rotate CG around edge on angle . But in case of partial tumbling, the motion of robot’s CG is constrained by existing swing leg (e.g., ). Thus, it needs to be moved on angle , or the angular distance which swing leg should travel before hitting the ground (Figure 6).

In such case, we can substitute angle with angle . Therefore, we must first calculate angle based on the coordinates of swing leg before its collision with the ground. It can be expressed as where is the height of the swing leg and is the distance between projection of on a horizontal plane and edge of the supporting polygon.

In turn, distance can be easily calculated as

New position of robot’s CG in rotation around edge can be calculated from (4) by substituting with which can be found through (11) and (12):

Knowing , the new position of CG, we can calculate the height difference between it and initial position :

Also, from (9), we can define coefficient , and, from (8), we can calculate . Subsequently, from (2), it is easy to find for edge of the supporting polygon:

3.3.2. Calculation of for the Second Rotation

It is important to highlight that after the first rotation, the robot’s body acquires a residual velocity (Figures 4(b) and 6). Projection of this residual velocity on a horizontal plane represents a body velocity , which is an initial condition for the second rotation.

Another important point is that we cannot vary angle (direction of the input velocity ) during the second rotation. This is because robot’s motion in this stage is not independent but is only a continuation of the motion initiated at the stage of first rotation under the influence of previously applied disturbance energy . Thus, the directions of , horizontal projection of residual velocity, and input velocity for the second rotation coincide. Therefore, the physical meaning of for the second rotation is how much energy is required to overturn the robot around the edge of the supporting polygon in addition to the existing residual energy from the first rotation (represented in the form of residual velocity ).

In such case, can be calculated through (2), with a consideration that , and . Thus, , and equation for its calculation will look like

Height difference must be calculated in regard to , position of CG after the first rotation:

Finally, (2) for calculation of can be written as

After all those calculations, computed for both rotations, expressed in (15) and (18), can be combined, thus giving an understanding of total dynamic normalized energy stability margin for a given posture in presence of the swinging leg: where represents an energy required to perform first rotation and represents an additional energy required for robot to continue tumbling motion.

4. Basic Tumbling Experiment with Consideration about the Swinging Leg

As in our previous study on Directional Normalized Energy Stability Margin [2], we validated the calculation of by performing a numerical simulation and then conducting a tumbling experiment with a simple model of a robot, measuring manually and comparing our results with a simulation for the same model.

In order to perform a validation of with swinging leg consideration, we conducted an experiment with a similar, but slightly modified setup.

Tumbling experiment setup is shown in Figure 7(a). It consisted of the following elements: a pendulum with a hammer 1 (mass: 470 g) attached to a connecting rod 2 and rotating on a shaft 3; a robot model 4 (mass: 490 g) with lightweight legs (mass of each leg is 2.3 g), Figure 7(b); as mass of the legs is small compared to mass of the body, they can be neglected; supporting pillars 5; rotary table 6 for positioning the body against hammer 1, and a vertical scale 7 for measuring the value of .

For the purpose validation, body 4 also had an additional “swinging” leg—a shorter leg elevated 5 mm above the surface. After the application of impact force and subsequent first rotation around an edge of the existing supporting polygon, swinging leg prevented overturning and helped to create a secondary supporting polygon (second rotation stage).

Experimental process was done to measure the lowest height of the pendulum that defined a corresponding potential energy required to overturn the body around the edge of a secondary supporting polygon. After several iterations for each angular position, we were able to make a measurement of with a certain precision.

Results of the experiment were then compared to the results of numerical simulation for the tumbling model and are shown in Figure 8.

5. Discussion about Actual Application of

Currently, we are developing a new walking robot, TITAN-XIII (Figure 9). This is a lightweight machine built specifically for research on gait control and stability of multi-legged locomotion. Although work on the robot is not yet completed, we decided to apply the theory of and examine stability of TITAN-XIII beforehand.

To do that, we developed a numerical simulation based on the geometry of TITAN-XIII performing a trotting gait, and calculated in all stages of motion for all edges of all possible supporting polygons. Main purpose of such simulation was to measure the minimum of throughout the motion sequence and suggest ways to improve locomotion stability, thus creating a Non-Tumbling gait for a particular robot.

Subsections below discuss the specifics of the simulation and its results.

5.1. Simulation Assumptions

Similar to previous simulations, walking simulation was done with the following assumptions.(i)External energy is supplied to the system in a horizontal plane, and, thus, lays in the horizontal plane as well.(ii)Friction in the footholds is infinite, and slipping does not occur. (iii)Legs are massless, and robot’s mass is concentrated in the body. (iv)Angular velocity of the body . (v)Simulation is conducted with an assumption that the surface is flat. (vi)In simulated trotting gait, change of the supporting pair of legs happens instantaneously.

5.2. Parameters of Robot’s Motion

The equations used to control CG position and its velocity are as follows.

Position of CG is calculated as where , , .

CG velocity is calculated as and minimum initial velocity is .

As it is clear from (21) and Figure 11, robot’s body velocity is the highest in the beginning of each step. As the motions progress, it decreases, and, at the point when robot’s CG is located above the supporting line, robot’s body velocity reaches its minimum. After this, it enters a phase of acceleration and reaches minimum initial velocity towards the end of the current step and the beginning of the next step.

Such sophisticated velocity control, despite introducing rapid acceleration and deceleration, allows achieving greater speed and greater stability of the posture. Specifics of this approach are discussed in [7].

In the context of validation of , consideration of robot’s body velocity brings the simulation closer to real life and allows making better judgements about the applicability of .

We have conducted several types of simulation where robot was performing a step of a trot gait. Simulation types are as follows.(i)Varying swing leg height. (ii)Varying CG height. (iii)Varying velocity simulations.

5.3. Locomotion Stability Map

Simulation that we performed, was based on a trot gait with a fixed stride (150 mm). We were calculating the minimum throughout the motion sequence. By varying the wideness of the posture, we obtained different minimum measurements of . Each simulation was conducted in 30 different configuration positions across the service area for that particular stride (service area for 150 mm stride is shown in dark grey in Figure 10, and is the middle point of the stride).

Position of a stride’s middle point defined the posture.

Simulation allowed us to generate a stability map, a simple representation of safe and unsafe postures and footholds (Figure 10). Light green areas represent zones with most stable postures, while pinkish areas show most unstable postures.

5.4. Direction of Minimum during Motion

Firstly, we studied basic behavior of , such as the changes in direction of minimum during a step of our model of TITAN-XIII. Although walking cycle consists of two steps performed by interchanging pairs of legs, due to symmetrical nature of the examined walk, it is enough to consider only one step.

Changes of throughout one step of a simulated TITAN-XIII walking robot performing trot gait are presented in Figure 11, and actual contour of for each measurement can be seen in Figure 12.

It is interesting to notice that, during the motion, direction of minimum changes (Figure 12). From Figure 11, it is clear that this happens because of the changes of robot’s velocity (Figure 11). Additionally, the way changes throughout the step is not trivial. In points 0 to 2, stability is low as the velocity is high and directed forward. As the decrease of body velocity becomes significant, stability increases (points 3 to 5), achieving its maximum in point 5, where velocity is minimum, and posture is effectively a square. starts decreasing in point 6 and achieves a local minimum in point 8, but because a pair of swinging legs is moved forward and velocity is not yet high enough, the minimum stability is directed backwards.

A sudden increase of stability in point 9 is of particular interest. It occurs because of the increase of velocity (directed forward) that counteracts the negative effect of the swinging pair of legs which affect and decrease it in the backward direction.

Finally, at point 10, when the step is finished and another pair of legs becomes supporting, equals to measurement in point 0, and contours in 0 and 10 are symmetrical.

It is important to highlight that this simple analysis shows that Directional Normalized Energy Stability Margin (or ) can be used to estimate stability of multi-legged robot in every moment throughout the motion. Not only it provides the insights about which phase of the step is most stable and unstable, but it also shows interesting effects that posture and velocity control may have on stability during walking.

5.5. Varying Height of the Swing Leg

In order to gain more insights about how different parameters of robot’s posture influence , we performed a simulation with varying swing leg height: 5, 10, and 15 mm above the ground for each series of the simulation. Position of robot’s CG remained at 232 mm above the ground.

Dependency between and height of the swing leg is shown in Figure 13. It is clear that the increase of swing leg height results in decrease of multi-legged locomotion stability, as indicated by .

5.6. Varying Height of Robot’s CG

Previous simulations were conducted with a consideration that robot’s center of gravity has a constant height of 232 mm above the surface (default height of the CG of TITAN-XIII). In order to understand how the decrease of CG height influences locomotion stability, we performed a set of experiments where CG height was gradually decreased to 200 mm.

As one can see from results of the simulation presented in Figure 14, decrease of robot’s CG height allows achieving a significant increase in locomotion safety. By lowering CG we were able to increase minimum to 73 mm. Thus, 16% decrease in CG, height resulted in 33% increase in .

5.7. Varying Constant Velocity

Finally, in order to understand the effect which body velocity has on safety margin, we performed a series of simulations where robot’s velocity was constant throughout the motion sequence but was incrementally increased in each modeling session. Four velocities considered were 0.1 m/s, 0.2 m/s, 0.3 m/s, and 0.4 m/s (maximum possible velocity for TITAN-XIII walking robot is 0.7 m/s).

It is obvious that an increase in the velocity would result in a decline of safety. Results of the simulation are shown in Figure 15. As one can see from the plot, the decrease of stability caused by increase in velocity is essentially linear.

5.8. as a Source of Insights about Design of Multilegged Robots

TITAN-XIII walking robot, shown in Figure 9, was specifically designed for experiments in gait control and locomotion stability of multi-legged vehicles. Before building the robot, we agreed that from design standpoint, it would be better to pursue an insect-type construction, instead of a more widespread mammal type. By insect type (Figure 16(a)), we mean a robot design which allows wide postures with an ability to position center of gravity at a low height. Mammal-type design, on the contrary, presupposes a narrow posture (Figure 16(b)) and high position of the CG.

Insect-type design of TITAN-XIII was justified by the fact that insects, due to their wide postures, have greater stability than mammals. However, such proposition lacked scientific backing. So far, there has been no significant research that aimed at studying quantitative estimation of the advantage which insect-type design has over mammal type in terms of stability.

Now, Directional Normalized Energy Stability Margin gives us an insight into how significantly different those two types of design/postures are in terms of stability. We have compared stability of insect and mammal postures presented in Figure 16. Apart from one being wider than the other, insect-type posture featured a CG height of 200 mm, while mammal-type posture had 232 mm height (not the highest TITAN-XIII is capable of, but, nevertheless, suitable for illustration).

As a result, minimum stability margin for insect posture was 73 mm, and minimum stability margin for mammal posture was only 11 mm, which constitutes only 15,1% of the stability of an insect-type posture.

Stability map provided in Figure 10 may serve as an additional illustration of the fact that not only more narrow postures have reduced stability as we suspected before, but that in case of narrow mammal-type postures, stability is reduced radically.

6. Conclusion and Future Work

In this paper, we discussed the effect that swing leg has on stability of multi-legged robots. We introduced the idea of Non-Tumbling Gait, which relies on the phenomenon occurring during tumbling of the robots when the swing leg contacts the ground and prevents overturning of the robot.

We have also explored the relationship between Non-Tumbling Gait and Directional Normalized Energy Stability Margin, or . was suggested as a stability criterion suitable for maintaining Non-Tumbling Gait. The validity of this choice was evaluated by a tumbling experiment with a simplified model of a walking robot. Additionally, the concepts of Non-Tumbling Gait and were applied to searching an optimal posture for the new quadruped walking robot, TITAN-XIII.

In our future work we will further study the application of Non-Tumbling Gait and in different settings, both in numerical simulations, with additional dynamic effects (e.g., compliance in the joints, ground friction, etc.), and also on various types of walking robots available at Fukushima Robotics Lab.

Nomenclature

Input energy, external disturbance
Input velocity generated by input energy
Body velocity
Ground contact points, heights of the supporting polygon
Edge of the supporting polygon formed by and contact points
Position of the center of gravity (CG)
Vector from ground contact point to robot’s center of gravity
Coordinates in Cartesian coordinate system
Direction angle of disturbing input energy
Angular distance from current position of robot’s CG to the position above the edge of the supporting polygon (unstable equilibrium)
Height difference between original CG position G and its highest possible position
Numerical coefficients introduced to simplify calculations.