Abstract
In this paper is presented an approach to achieving on-line modification of nominal biped gait without recomputing entire dynamics when steady motion is performed. Straight, dynamically balanced walk was used as a nominal gait, and applied modifications were speed-up and slow-down walk and turning left and right. It is shown that the disturbances caused by these modifications jeopardize dynamic stability, but they can be simply compensated to enable walk continuation.
Introduction
Humanoid robotics has been in focus of scientific community for decades. Among other topics biped locomotion is one of the most important because it is expected that robots will share the same space with humans.
Irrespective of their structure and number of degrees of freedom (DOF) involved, the basic characteristics of all biped locomotion systems are: a) the presence of unpowered DOFs formed by the contact of the foot with the ground surface, b) gait repeatability, and c) regular interchangeability of the single- and double-support phases. During the walk, two different situations arise in sequence: the statically stable double-support phase, in which the mechanism is supported on booth feet simultaneously, and statically unstable single-support phase, when only one foot of the mechanism is in contact with the ground while the other is being transferred from the back to front position. Thus, the locomotion mechanism changes its structure during the single walking cycle from an open to a closed kinematic chain.
All of the biped mechanism joints are powered and directly controllable except for the contact of the foot and the ground (it can be considered as an additional DOF), which is the only point at which the mechanism interacts with the environment. This contact is essential for the walk realization because the mechanism's position with respect to the environment depends on the relative position of the foot with respect to the ground.
The foot cannot be controlled directly but in an indirect way – by ensuring appropriate dynamics of the mechanism above the foot. Thus, the overall indicator of the mechanism behavior is the point where the influence of all the forces acting on the mechanism can be replaced by one single force. This point was termed Zero-Moment Point (ZMP) (Vukobratović M. & Juričić D. 1968, Vukobratović M. & Juričić D. 1969, Vukobratović M. & Stepanen-ko Yu., 1972). Recognition of the significance and role of ZMP in biped artificial walk was a turning point in gait planning and control.
In the gait synthesis by semi-inverse method (Vukobratović M. & Juričić D. 1968, Vukobratović M. & Juričić D. 1969, Vukobratović M. & Stepanen-ko Yu., 1972) legs trajectories are predefined while the trunk motion is determined so as to ensure dynamic equilibrium of the system as a whole (the ZMP position is within the desired area under the supporting foot). Such motion is called nominal motion.
In contemporary practice, the aim is to have the possibility of synthesizing all gait patterns (under a gait pattern we understand each gait with specifically defined parameters), and each synthesized gait is called nominal. However, such approach requires the synthesis of a huge number of different patterns, and a question arises whether one can envisage all possible cases that may be of interest, so that for each situation a most suitable one could be selected and executed. In addition, during the gait realization, a situation can often arise when small modifications of the basic regime are needed to adapt to the momentary requirements imposed on the locomotion system. We believe that, at least in some basic cases, it is not necessary to perform a new nominal synthesis but is possible to do on-line modification of an existing nominal (Vukobratović et al. 2003, (Vukobratović et al. 2004).
Mechanism structure and its nominal motion
Our idea was tested on the example of a locomotion mechanism (Fig. 1) having 20 DOFs, with all joints being rotational (Vukobratović et al. 1990). Between two joints is placed one link. A joint having more DOFs is modeled as a set of simple rotational joints, each having only one DOF. In the case of a multi-DOF joint modeling the links between single-DOF joints are considered as being of zero length, mass and moments of inertia. In Fig. 1, these “fictitious” links are denoted by dashed line (for example link 3 at the ankle joint, links 6 and 7 at the hip joint of the right leg, etc.). Accordingly, the ankle joint having 2 DOFs is represented by joints 3 and 4 (the joint axes are defined by the orts e3 and e4), hip joint of the right leg by joints 6, 7 and 8, trunk joint (waist) by joints 15 and 16. All other joints are modeled by simple rotational joints having one DOF.

Scheme of locomotion mechanism
The possibility of the mechanism's overturning about the foot edge is modeled by two “fictitious” joints in the directions of the axes x and y to detect if the mechanism as a whole will rotate in the y-z or x-z plane. Each mechanism joint is powered by a DC motor except for joints 1 and 2 under the foot representing unpowered DOFs. All parameters of the mechanism can be found in [4].
The mechanism motion is synthesized using semi-inverse method in such a way that dynamic equilibrium is permanently ensured during the walk (Vukobratović et al. 1990). Legs motion pattern was obtained by recording the performance of a human subject, and then, the trunk motion was synthesized in such a way to ensure that ground reaction force under the foot is in a certain predefined position (in our example this is the point O of the coordinate system Oxyz), ensuring simultaneously that horizontal components of the ground reaction moment are equal to zero, i.e.

Mechanism footprints and ZMP position during nominal motion
If during the walk the ZMP position comes out of the support polygon, this means that the mechanism is not performing dynamically balanced gait any more, and it collapses by rotating about the foot edge. ZMP position, being very sensitive to the changes of dynamics of the mechanism above the foot, is the best overall indicator of the mechanism dynamic equi-librium. In Fig. 3. is shown a stick diagram of the mechanism performing nominal motion.

Stick diagram of the mechanism performing nominal motion
Turning
The nominal motion modification to be considered first is the change of walk direction. Namely, very often there is a need to switch from a rectilinear motion to the right/left direction without interrupting the walk, so that it would be highly desirable to achieve such a gait by modifying nominal rectilinear motion.
First thing to be considered is how to perform turning. The angle α formed between the foot at the end of a single-support phase and the foot that up to that moment was in contact with the ground will be adopted as the measure of the extent of turning.
A smaller α corresponds to a “milder” and a larger to a “sharper” turning. Besides, care should be exercised as to the relative position of the mechanism's feet (legs) with respect to the “body”. In the case of the mechanism used (see Fig. 2) the turning will be realized by rotation at joints 7 and 10, so that both joints are activated simultaneously.
A simplest algorithm would be to perform turning so that in each half-step the leg being in the swing phase rotates so that the foot that is making contact with the ground forms an angle α with respect to the foot that was previously in contact with the ground. However, this algorithm did not perform well since the “outer” and “inner” leg followed arcs of different lengths so that soon arose the situation in which the motion could not be continued at all. A solution to this problem would be to perform deflection in the first half-step, and in the second correction of the deviation due to the foot rotation, so that in the beginning of the next step the feet are not deflected with respect to the trunk.
The next thing to be considered is the way in which foot turning by the angle α will be realized – whether once or incrementally in the course of the whole half-step, so that at the end the foot deflects by the full value of the angle α. In the present work we chose gradual increase of the turning angle.
Let the desired value of foot deflection at the end of a half-step be defined by the angle α. If the number of integration intervals during a half-step is nint the value of deflection angle to be realized in one integration interval is Mechanism footprints when α is 5°. No compensation applied
where i denotes ordinal number of the integration interval while
In the end of the second half-step the right foot becomes parallel to the left foot. After that, the procedure continues and the left foot angle relative to its previous position increases again, the right foot compensates for this deviation, and so on.
In the following figures are given examples of the algorithm application. In Figs. 4, 5 and 6 are presented footprints for the angle α of 5°, 15° and 25°, respectively, to illustrate how the change of walking direction affects dynamic equilibrium of nominal motion. From Fig. 4 it is clear that ZMP is close to its nominal position (far enough from the foot edge), and no compensation is needed. However, as is evident from Figs. 5 and 6 when angle α increases, ZMP deviation from its nominal position increases too. In Fig. 5 it is very close to the foot edge, while in Fig. 6 it goes out of the support polygon and correction of ZMP position is necessary. To compensate for ZMP deviation we propose to add a permanent gravitational moment which can be produced by body inclination. Now, a question arises which joint is most suitable for this operation. We investigated all possibilities (trunk, hip, and ankle) and fond that compensation by ankle gives the best results. In Fig. 7 are given footprints for the same case as shown in Fig. 6 (α = 25°) but with compensation at joint 3 of 3°. It can be seen that ZMP position deviations are significantly reduced and that all ZMP positions are within the support polygon. Thus, by such compensation dynamic equilibrium is preserved and the walk continuation ensured.

Mechanism footprints when α is 15°. No compensation applied.

Mechanism footprints when α is 25°. No compensation is applied.

Mechanism footprints when α is 25°. Compensation at the ankle joint (joint 3) 3°.
The next case we investigated was how to speed up and slow down the walk. Nominal motion was the same as before.
To change walking speed, moments applied at all joints have to be changed. To avoid recomputing complete dynamics we used the procedure proposed by (Hollerbach J. M. 1984) for changing robotic mechanism motion speed without recomputing completely its dynamics.
Let us remind that the mechanism dynamics is given in the following general form:
where
whereby for
We applied this method to investigate how the acceleration/deceleration of nominal (dynamically bala-nced) walk would affect its dynamic equilibrium. In Figs. 8–12 are shown the cases of walk speeding up for various values of c.

Mechanism footprints of accelerated motion for c =1.05. No compensation applied.

Mechanism footprints of accelerated motion for c =1.1. No compensation applied.

Mechanism footprints of accelerated motion for

Mechanism footprints of accelerated motion for

Mechanism footprints of accelerated motion for
The presented figures illustrate well the importance of the altered mechanism dynamics on the ZMP position. For
To achieve this we applied the same strategy as before – inclination of the body. In Figs. 13–17 are presented the correction effects when compensation was performed by joints 3 and 4 (ankle). Joint 3 compensated for deviations in the sagittal and joint 4 in the frontal plane.

Mechanism footprints of accelerated motion for

Mechanism footprints of accelerated motion for

Mechanism footprints of accelerated motion for

Mechanism footprints of accelerated motion for

Mechanism footprints of accelerated motion for
The presented examples show that the corrections made brought ZMP back to the support polygons. Figs. 18–22 illustrate the situations when the ZMP deviation was compensated by trunk joints (joints 15 and 16). It is evident that much larger inclination angles are needed for compensation. Such large compensation inclinations may jeopardize anthro-pomorphic pattern of the walk. Besides, for

Mechanism footprints of accelerated motion for

Mechanism footprints of accelerated motion for

Mechanism footprints of accelerated motion for

Mechanism footprints of accelerated motion for

Mechanism footprints of accelerated motion for
Dispersion of ZMP positions are significant, too. Hence it can be concluded that the ankle is more suitable for this purpose than the trunk.
In Figs. 23–27 are presented examples of decelarated motion (c = 0.95 − 0.5). It is evident that spatial dissipation of the ZMP trajectory is lower. This can be explained by the diminished overall influence of inertial forces, so that the ZMP trajectory converges to the trajectory of the system's gravity center, which is a sinusoide lying symmetrically between the mechanism's footprints.

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for
The next basic modification of the nominal walk is change of step length. In this paper step extention will be considered, only. To extend step maximal angle between two legs for nominal step (in Fig. 38 denoted by βnom) should be enlerged.
To compensate for ZMP deviations we applied again the same strategy, i.e. body inclination. as can be seen, both the compensation by the ankle joint (figs 28–32) and by the trunk (figs. 33–37) was successful.

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Mechanism footprints of decelerated motion for

Angles βnom and βext
Let us denote total value of angle added as βext Total amount of βext is divided between two hip joints (joint 6 for right, joint 11 for left leg) and, accordingly per each leg is added βext/2. Thus, maximal angle between legs for extended step is β = βnom + βext. As in case of turning, angle beta should be enlarged gradually. This means that in each sampling time actual value of angles 6 and 11 is enlarged by ?β=βex/nint, where nint is number of integration intervals during a half-step:
where, again, i denotes ordinal number of the integration interval while
In Fig. 39 are given footsteps of such extended gait. Dashed line denotes footsteps of the nominal gait, solid line of enlarged stride. It can be noticed that the ZMP position deviates along the footprint axis and, actually, no correction is needed.

Extended step
Step extention and spped-up for rectilinear and turning motion
In Figs. 40–49 are given examples of the combinations of basic modifications for rectilinear motion: gait speed-up and step extension. In Figs. 40 and 42 are given examples of noncompensated and in Figs. 41 and 43 are given compensated motion. Because of space limitation only two examples of speed-up gait are presented, for

Mechanism footprints of extended and accelerated motion for

Mechanism footprints of extended and accelerated motion for

Mechanism footprints of extended and accelerated motion for

Mechanism footprints of extended and accelerated motion for

Mechanism footprints of extended gait in turning left when α is 25°. No compensation applied.

Mechanism footprints of extended gait in turning left when α is 5°. No compensation applied.

Mechanism footprints of extended gait in turning left when α is 5° and accelerated motion for

Mechanism footprints of extended gait in turning left when α is 5° and accelerated motion for

Mechanism footprints of extended gait in turning left when α is 5° and accelerated motion for

Mechanism footprints of extended gait in turning left when α is 5° and accelerated motion for
It is again demonstrated that simple inclination in the appropriately selected joint (ankle joint is again used for compensation) can ensure dynamic equilibrium in spite of the nominal gait modification.
Let us now consider a combination of step extension, turning left and faster walking (Figs. 44–49). In Figs. 44, 45, 46 and 48 is presented motion without any compensation. Situation is much worse whem walk is accelerated (Figs. 46 and 48). We applied, again, same compensation strategy. Ankle joint was employed (joints 3 and 4) for compemsation in both, frontal and saggital planes. It is demnstrated that such simple strategy works and in this case
We demonstrated the applicability of our approach to solving the problem of modification of nominal walk to achieve turning, speed-up and slow-down motion. Deviations of the ZMP position could be to a large extent compensated for simply by incling the body. For the purpose of performing compensation, most appropriate joints were considered and selected.
Footnotes
Acknowledgement
This work was funded by Ministry for technology and development of Republic of Serbia under contract MIS 3.04.0019.A/1.
