Copyrighl © IFAC Inlelligenl Autonomous Vehicles. Espoo. Finland. 1995
MOTION CONTROL OF A TERRAIN-ADAPTIVE WALKING ROBOT
M. A. Jimenez and P. Gonzalez de Santos
Instituto de Automatica Industrial (C.S.l.c.) La Poveda . 28.500 Arganda del Rey. Madrid. SPAIN
Abstract: This paper is related with motion control of real walking machines over different terrains. Fiexion in links and joints produces a change in both the attitude and the position of the body which must be corrected for realistic walking. Because this phenomenon is difficult to model. this paper presents an attitudelposition control strategy based on position control. This algorithm also allows the robot to be kept level while moving over irregular terrain. Furthermore, this paper proposes a strategy to adapt a periodic gait to an irregular terrain in real time, which is based on the variation of parameters affecting leg coordination. This algorithm does not require prior knowledge of footholds. Both control strategies are aimed at a class of periodic gaits known as wave gaits. The aforementioned motion control algorithms have been tested successfully in the RIMHO walking robot. Key Words: Walking; Attitude control; Position control; Adaptation; Motion parameters.
1. INTRODUCTION
body attitude and o.r.s. position must be maintained.
The implementation of different types of gaits (wave and discontinuous gaits, basically) in the RIMHO quadruped machine (see Fig. 1) (Jimenez et al .. 1993) has pennitted to observe how body tilt and the position of the origin of the body reference system (o.r.s.) -which is considered to lie initially at the center of gravity (c.g.)- changed successively. These variations occurred principally when a leg was lifted. This phenomenon was not recorded by the position sensors because the leg actuators did not move. Furthennore, the experiments were perfonned on a rigid terrain, so defonnation effects due to foot/soil interaction were ruled out. Consequently, the aforementioned phenomenon was attributed to flexion in joints. It was observed that the change in body tilt and o.r.s. position was not compensated for in following steps. Analysis of this fact revealed that it was due to flexion-gait interaction. Hence, the machine became unstable or collided with the soil after a few locomotion cycles, pointing to a strict limitation of vehicle mobility. Therefore the desired
Modelling the flexibility of a machine is a complex problem. and the result is computationally inefficient in real time. To avoid these shortcomings. a sensor-
.. I
Fig. 1.
139
RIMHO quadruped walking machine moving over steps.
respectively. which verify the approximations sinr "" 1.
based method is proposed. In previous work, acceleration sensors and force sensors have been used. Since the RIMHO prototype does not possess this type of sensors, an attitude/position control algorithm based on simple sensors (inclinometers, contact sensors and encoders) is proposed.
r and cosy =
3. POSmON CONTROL When body tilt and o.r.s. position change, the readings of the encoders for each foot i with respect to the body reference system (rotated system). Pi' is equal to the position relative to the body reference system (level system) just before the body attitude changes, since joints have not moved. Equation (1) may be used to fmd the position of foot i, Pt;. in relation to the level body reference system. Considering that in both situations the position of each foot is the same with respect to an external reference system. the difference between the positions of the o.r.s. before and after the body tilt changes is given by vector 0 (see Fig. 2. in which a two dimensional walking model is used):
This algorithm allows the body to be kept level on both flat and irregular terrain, but a walking machine must adapt its gait for moving on an uneven terrain. Previous adaptive-gait-control algorithms involve intelligent foothold selection. Yet, it is possible to move automatically over determined terrains without sophisticated external perception sensors. Therefore, an adaptive-gait-control algorithm which takes advantage of the possibilities of blind machines is proposed. A blind machine is understood to be a vehicle that cannot know the terrain in advance. This strategy is based on periodic gaits, and gait parameters affecting leg coordination are modified for adaptive control.
(2)
Both attitude/position and adaptive-gait control strategies presented in this paper are aimed at a class of periodic gaits known as wave gaits (Song and Waldron, 1987). However, both algorithms (which will be discussed later) can be used to control a walker using other gait types. Because the wave gait optimizes the longitudinal stability margin when the body is level, attitude is servoed to keep the vehicle level. Also, motion along the longitudinal body axis is assumed.
Although calculated as a function of foot position. this vector is theoretically the same. regardless of foot i. Nevertheless. due to flex ion in joints and position errors. the 0 vector changes with the position of foot i. Therefore, using 0. to correct vehicle height is only an approximate method in which the vehicle deviates from the desired height. as checked exper:mentally. It was then decided to find the new z-coordinate for each foot by calculating the support plmle (if there are three legs in suppon) or estimating it (if all four legs are in support). using the Po. positions (or Pi if levelling control is not performed).
2. ATIITUDE CONTROL A vehicle that walks using a wave gait has to move several actuators at the same time. Thus in this case, energy expenditure is not crucial in selecting a suitable levelling method. Nevertheless, since body position changes due to mechanical problems, one very important consideration is that the levelling method must not contribute to increasing the change in body position. Therefore. the most adequate method for a realistic machine is the all-axes-Ievelling method (GonzaIez et al .• 1992). The kinematic information needed to level the body while the c.g. remains steady is given by:
(1)
Body at final level position Fig. 2. Body attitude at the beginning and end of the attitude/position control action.
where PI is the position of foot i in the rotated body reference system: Pt! is the position of foot i in the level body reference system: and are the small body rotation angles about the y-axis and x-axis.
r
e
If the vehicle is supported on three legs. it is easy to find the equation for the support plane in the body
140
correct with respect to an external reference system. In case two, attitude/position control action will start when the foot contact sensor of leg j switches from inactive to active. In this case. the action will be performed while the four legs remain in support. in accordance with the gait
reference system. Otherwise. the machine stands on its four legs. and the support plane equation cannot be found (it is an indetenninate problem). In such a case. a reasonable solution is to compute an estimate of the plane. The estimate technique used is that of linear regression as described in (Astrom and Wittenmark. 1984). The height of the body. H. is the distance from the o.r.s. to the estimated or calculated support plane. If the desired body height with respect to the support plane is Ho- the difference in height is: dG
:<
H-H 0
Fig. 2 shows the body's attitude just before a leg changes from support to transfer. When a leg lifts from the ground. attitude and o.r.s. position vary. On completion of the attitude/position control action. the body will have recovered its initial tilt and o.r.s. position. although it will be shifted a certain distance from the initial o.r.s. position with respect to an external reference system.
(3)
And so. the z-coordinate of each foot after completing altitude and levelling control must be:
(4) 5.1 Attitude/Position Transfer
If altitude control only is performed. this coordinate is given by: :<
z, -dG
Control from
Support
to
When a leg changes to transfer. there are three legs in the support phase and one leg in the transfer phase. Here the support trajectories and the transfer trajectory designed to correct body tilt and position are handled separately.
(5)
For position control in the xy-plane. the 0, and Oy approximations must be used. since it is not currently possible to determinate this displacement any other way. These values are used to compute body displacement during body levelling so that the vehicle will follow the desired trajectory.
Leg Trajectory in the Support Phase : Each supporting leg has to move from the PI position (foot i position when the vehicle falls) to the final position. Pr... I' Let us assume that the final position of a leg at the end of its support phase with the body level is Pra.1(defined by the leg stroke R). This position allows the x and y coordinates of foot i at the end of the altitude/position control to be calculated. Since this control action ends when transfer leg j touches the ground, th . position of supporting leg i at that time is the Pr... ; position. Knowing that j' the leg phase, is the time fraction of a cycle time period T that leg 1's placement lags behind leg 1. and p, the duty factor, is the normalized time period that a leg remains in the support phase. the Prni position is given by:
4. ATIlTIJDE/POSITION CONTROL STRATEGY FOR A WAVE GAIT When a vehicle moves supported on three or four legs, changes in its support forces are small. and it is possible to expect flexion in joints to be negligible compared with variations when a leg changes to transfer. A set of experiments performed to demonstrate this intuitive reasoning led to the conclusion that it is correct to carry out the attitude/position control algorithm six times per locomotion cycle (Jimenez, 1994). Then the altitude/position control will be implemented upon either of the following events: Case 1) When a leg changes from support to transfer. Case 2) When a front leg changes from transfer to support
where j) is the local phase providing the normalized time period elapsed from placement of leg i until leg j finishes its transfer phase: v is the current velocity of the vehicle: T is the time of a locomotion cycle: and d is given by (3).
In case one. the attitude/position control action begins when the foot contact sensor of leg j switches from active to inactive. Here. the duration of the anitude/position control action will be the time leg j requires to contact with the ground again. Thus. when this leg finishes its transfer phase. the vehicle body will be level and the position of the o.r.S. will be
Q
To recover initial body altitude and altitude. each leg in the support phase has to move from Pn to Pr... 1 at a specific velocity V,. This speed depends on the distance that each axis moves and the time of the altitude/position control action.
141
Let us assume IQ as the time in which the change in body tilt is detected. This time can be defined as the time elapsed after fmishing the transfer phase of leg j. Since tilt and altitude correctness must end when leg j finishes its transfer phase, the time required by each supporting leg to reach final position PhI,l is I c = (1-R)T-I I-'
Q
The transfer leg will move to its final position along a rectangular trajectory with three subphases: lift-off. transfer forward. and placement. Foot velocity in each subphase depends on distances and the time Ic' So, the velocity of the lift-off and placement subphases. VI' and the transfer forward velocity, are related by the following expression:
v.,.
(7)
(12) where gait.
(1-~)T
is the return time of a leg in the wave
In the case of a realistic machine. by time IQ the c.g. has moved a distance estimated by the vector li (see equation (2». Therefore each leg in the support phase or the o.r.s. has to move the distance d (see Fig. 2) from its cmrent position to its fmal position in the attitude/position control action time. Vector d, which relates the fmal position of the o.r.s with its position at time IQ' with respect to an external reference system, is given by: d = r-li
where dl }. dx and dl2 are the distance of the lift-off, transfer forward and placement subphases respectively. If VI is set at its maximum value, then the transfer forward subphase speed will be: V V
(8)
5.2 Attilude/Position Support
where r is the vector that relates the final o.r.s. position with its position at the time just before body attitude changes. with respect to an external reference system. The above expression is equivalent to:
I
mu
dx
xy
Control from
(13)
Transfer
to
Here body tilt and altitude are recovered while the four legs are in the support phase. Each leg has to move from position Pi to its final position Pr",I' This position is detennined using equation (6), but the local phase is calculated at the time <1>,,,,,, which is the time in which the support phase of any leg finishes. The time <1>,,,,, is given by:
(9)
(14) Therefore, the speed of the vehicle or speed of each foot i while carrying out the attitude/position control action is given by:
where k is the left rear leg (lrl) when the front leg, which touches the ground. is the right: on the other hand, k is the right rear leg (rrl) when the front leg. which contacts with the ground. is the left. Note that legs are referred to by their location with respect to the direction of motion (x-axis).
Leg Trajectory in Transfer Phase: In the transfer phase, the leg has to move from position Pl (position of the leg at time IQ) to the final position PrnJ (defmed by the leg stroke). Let us assume that PrtJ is the position that a leg must reach at the end of its transfer phase when the vehicle is level: then position PrnJ is given by:
Body velocity during the time of the attitude/position control action is given by (10), but te in this case is equal to :
where ro is the leg phase of the right front leg.
(11)
5. TERRAIN ADAPTIVE GAIT CONTROL
2.i irregular Terrain
where z/I.i is corrected by d the distance that the vehicle will move along the z-axis during the levelling time. The time in which the leg has to reach the final position PrnJ is Ic. given by equation (7). Q
,
Here an uneven terrain accessible by the walking machine is considered. According to Hirose' s classification (Hirose et al. 1982), this terrain could
142
restrict the leg sbOke; i.e. the initial leg stroke. Ro• must be smaller than the maximum leg stroke. R_.. It follows that the new leg stroke R/ must verify the following inequality:
be modelled as an O-type terrain. However, it is necessary to distinguish whether the ground is above or below a given plane in order to simplify adaptive strategy. In the case of a blind vehicle, only a posteriori-terrain model may be obtained. This model is defined by leg support positions and therefore is a discrete model. This model is divided into cells, of the size of a foot, where the foot was or is placed. These cells are on, above or below the base plane. Thus a terrain formed by the base plane, holes and/or protrusions is provided. The base plane is a level plane whose situation with respect to the body reference system is determined by the feet's initial support positions. This plane is used 10 compute the footholds for the legs in the transfer phase. Therefore the following classification is proposed for modelling a terrain (see Fig. 3):
The O-type terrain adaptive strategy proposed here does not require the x and y coordinates of the leg support position to be modified. However. to adapt the foot z-coordinate to the ground, it is necessary to increase the support time or transfer phase. When a leg is placed on top of a protrusion (OP-type terrain). its support time is increased; yet. when a leg finishes its transfer phase before reaching the ground (OHtype terrain), its return time is increased. To reach this objective. the leg stroke is increased according to (16) while keeping the time period constant. This restriction is imposed to recover initial locomotion as defined by the Ro. To and ~ gait parameters.
1.- O-type terrain is ground on which regular walking can be performed without hindrance. It is discrete ground with respect to the base plane. 2.- OH-type terrain is the base plane containing holes. 3.- OP-type terrain is the base plane containing protrusions.
2.3 OH-Type Terrain Adaptive Gait When a leg j reaches its final position without touching the ground (see Fig. 4). it is necessary to increase its return time (extra-return time) . To do so, the leg stroke is increased to R/. according to the aforementioned method, keeping the leg stroke center constant. While the legs in the support phase move to their new final position defined by R/ , leg j descends along a vertical trajectory with respect 10 the body reference system. This algorithm is repea.':!d until leg j touches the ground if static stability is maintained and conditions for applying the stroke C0ntrol method are verified. Otherwise, vehicle motion must be stopped until leg j contacts with the gro.und.
Then, O-type terrain results from the union of the other two types of terrain, OH-type and OP-type.
2.2 Stroke Control Method This method allows the stroke to be modified while maintaining a constant speed and is based on a method proposed by Kumar and Waldron (1989) to adapt the gait 10 previously selected footholds. This
lOH-1)pe/
b
== /
AT"rb
,lOP-1)peL
::7
Fig. 4. OH-Type terrain adaptive gait.
Fig. 3. Terrain classification. The extra-return time of leg j is determined by the amount of time by which the support time of the other legs is increased. Therefore it follows that the distance that leg j (h,) is lowered is a function of the
method increases the leg sbOke, Ro> and time period, To , while the duty factor, ~, and body speed. vo' remain constant. Leg kinematics must not, then,
143
in general any other periodic gait with time restrictions) fails on real flat terrains (such as laboratory soil). However. to use perception sensors for this soil type looks like unnecessary. Besides. the proposed algorithm can be utilized by a system with perception sensors when its infonnation is far from the real position of the soil.
z-axis velocity (v,), current stroke leg (R.), previous stroke leg (R •. / ) and desired body velocity (vo):
h. =
v, (R. -R._1 ) __
(17)
_~
2vo The new fmal position of each leg in the support phase can be determined geometrically from the new stroke leg (R.) and the fmal position previous to the leg stroke change [Xi. y;1/:
Both algorithms have been implemented in the RIMHO walking vehicle and provide it with the ability to move over terrains varying as widely as 20% slopes, 50 cm x 10 cm steps and natural terrain.
ACKNOWLEDGMENT
2.4
~P-Type
Support for this research has been provided by CICYT (Spain) under project ROB90-1 044-C02-0 I and T AP94-0783.
Terrain Adaptive Gait
When a leg j in the transfer phase contacts with the ground before its final position is reached, its support time must be increased in order to avoid instability. The new leg stroke is given by this expression:
REFERENCES Astrom. KJ. and B. Wittenmark (1984). Computer controlled systems: Theory and design. PrenticeHall.
(19)
Gonzalez. P .• P.V. Nagy and W.L. Whittaker (1992). Attitude control methods for walking machines. ASME Design Technical Conference : Flexible Mechanisms. Dynamics. and Analysis. September 13-16. Scottsdale. Arizona. DE-Vol. 47.
where tm is the time that contact with the ground was early. It is given by one of the following equations depending on whether contact with the soil occurs during the placement subphase or transfer forward subphase:
z -z
t = _'__' m
Hirose S .• H. Iwasaki and Y. Umetani (1982). The basic study of the intelligent gait con,rol of the quadruped walking vehicles. Trans. Soc instrumelll Contr. Engineers. 18(2). pp. 193-200.
(20)
V Z
t",
- z /(x -x f = _'z__ '+ I'
+ (y - Y )2 I,
Jimenez. M.A.. P. GonzaIez de Santos and M.A. Annada (1993). A four-legged walking test bed. Jst IFAC international Workshop on intelligent Autonomous Vehicles. April 18-21. University of Southampton. Hampshire. United Kingdom.
(21)
7. CONCLUSIONS Jimenez. M.A. (1994). Generation and implememation of wave gaits for quadruped robots (in spanish). Ph.D. Thesis. University of Cantabria. Spain.
This paper presents two control strategies to allow a walking machine to adapt its periodic gait to an irregular terrain maintaining the desired attitude and altitude. The attitude/position control algorithm is a simple method based on position control. which has been proved with good results in the RIMHO walking roboL It allows changes in body tilt and position due to flexion. terrain type. and terrain support failure to be corrected as was checked experimentally.
Kumar V.R. and KJ. Waldron (1989). Adaptive gait control for a walking robot. 1. of Robotics Systems. 6(1). pp. 49-76. Song. S. M. and KJ. Waldron (1987). An analytical approach for gait study and its applications on wave gaits. The int. 1. of robotics Research. Vol. 6. No. 2. pp. 60-71.
Terrain adaptive gait control allows periodic locomotion to be adapted to an uneven terrain without using complex stereoceptive sensors. It is very important to recall that the theoretical wave gait (and
144