Biped Walking on a Low Friction Floor
Shuuji KAJITA, Kenji KANEKO, Kensuke HARADA, Fumio KANEHIRO, Kiyoshi FUJIWARAand Hirohisa HIRUKAWA
National Institute of Advanced Industrial Science and Technology (AIST)Tsukuba Central 2, 111 Umezono, Tsukuba, Ibaraki, 3058568 JapanEmail:
{
s.kajita,k.kaneko,kensuke.harada,fkanehiro,kfujiwara,hiro.hirukawa
}
@aist.go.jp
Abstract
—Biped walking on a low friction ﬂoor is analyzedin this paper. For a given walking pattern, we can calculatea necessary friction coefﬁcient which allows the robot to perform the expected motion. To reduce the maximum necessaryfriction coefﬁcient, a pattern generation based on previewcontrol theory is explained. We also describe a calculationof slip concerned ZMP, which provides a good prediction of falling caused by slips. Finally, we test a walk of 1.35 [km/h]on low friction environment using a humanoid robot HRP2. The robot could successfully walk over the slippery areawhose friction coefﬁcient is 0.14.
I. I
NTRODUCTION
For a practical use of a humanoid robot, it is required totraverse on
real
environments which are not conditioned tooffer ﬂat and ﬁrm support of the feet. A robot for indooruse does not need to handle uneven or deforming ground,but it still needs to handle various level of slipperinesssince a ﬂoor can become very slippery with water, oilor powders. Such conditions are dangerous not only fora robot but also for a human. For example, 3,397 Japanesedied from slipping or tripping on ﬂat ground in 2002 [1].In the ﬁeld of ergonomics and biomechanics, therefore,intensive research works have been performed to analyzeslipping and slip induced falling [2]–[4]. However, it seemslike there still exist controversy on the conditions whichresult falling [5].Back to the ﬁeld of robotics, a few works treated a bipedlocomotion on slippery environment. Boone and Hodginssimulated a running biped on a ﬂoor with low frictionarea [6]. Their srcinal running controller could negotiatefriction coefﬁcients as low as 0.28. By introducing reﬂexcontrol strategy, their robot could run over surfaces withcoefﬁcients as low as 0.025. Park and Kwon simulateda 12DOF biped robot walking on slippery surface [7].They designed a controller to enlarge the frictional forceat slipping and it allowed their robot to traverse a surfacewith friction coefﬁcient as low as 0.3.In this paper, we examine a biped walk on slippery ﬂoorusing precalculated walking pattern. For a given walkingpattern and known friction coefﬁcient, we want to answerthe following basic questions.Q1: Can we predict the occurrence of slip?Q2: Can we predict falling ?We believe answering these questions are valuable not onlyfor robotics but also for our daily life.The rest part of this paper is organized as follows.Section II tries to answer Q1, prediction of slipping. It alsodescribes a walking pattern generation which may reducethe occurrence of slip. Section III answers Q2, predictionof falling. It is shown that a simple measure based on ZeroMoment Point can well predict the occurrence of falling.Section IV describes our experiment of actual humanoidrobot walking on a low friction environment. Section Vsummarizes the results and concludes this paper.II. W
ALKING
P
ATTERN AND
F
RICTION
C
OEFFICIENT
A. FootGround Interaction
Suppose a robot foot is slipping on a horizontalﬂoor(Fig.1(a)). The foot is subjected by distributed forcevectors (small black arrows) generated by microscopicinteractions between the sole and the ﬂoor surface. Thoseforce vectors can be integrated as the total ﬂoor force vector
f
, which can be measured by a force sensor embeddedin the foot. Its tangential magnitude
f
t
and the verticalmagnitude
f
z
has a relationship of
f
t
=
µf
z
,
(1)where
µ
is dynamic friction coefﬁcient.
f
t
f
z
slip direction
(a)
f
µ
1
f
(b)
Fig. 1. Forces acting from ﬂoor to robot
When the foot is not slipping, we have
f
t
< µ
s
f
z
,
(2)where
µ
s
is static friction coefﬁcient. For simplicity, wespecify
µ
s
=
µ
in this paper. As the result, we can assumethat the force vector
f
always lies inside or on the surfaceof the friction cone(Fig.1(b)).
B. Friction Requirement for a Given Walking Pattern
A humanoid robot can be modeled as a set of rigidbodies connected by joints(Fig.2). Let
n
be the numberof joints, so the robot consists of
n
+ 1
links. We deﬁnethe
0
th frame on the pelvis as
Σ
0
, whose position and
0780384636/04/$20.00 ©2004 IEEE
Proceedings of 2004 IEEE/RSJ International Conference onIntelligent Robots and SystemsSeptember 28  October 2, 2004, Sendai, Japan
3546
orientation are
p
0
and
R
0
with respect to the world frame
Σ
w
. We also deﬁne a vector of joint angles
θ
(
n
×
1
). Awalking pattern is determined by a set of time proﬁles of
p
0
,
R
0
and
θ
.
Σ
w
Σ
0
Fig. 2. A model of humanoid robot
From a given walking pattern, we can calculate the totallinear momentum of the robot.
P
=
n
i
=0
m
i
˙
c
i
,
(3)where
m
i
and
c
i
are the mass and the center of mass of the
i
th link respectively.By differentiating this linear momentum, we can obtainthe vertical and tangential forces during the walking as
f
z
= ˙
P
z
+
Mg,
(4)
f
t
=
˙
P
2
x
+ ˙
P
2
y
,
(5)where
M
is the total mass of the robot,
g
is the gravityacceleration.If the forces
f
z
and
f
t
are not obtained from the ﬂoor,the robot will not behave as expected. Now, let us deﬁne
necessary friction coefﬁcient
as
µ
nec
≡
f
t
/f
z
.
(6)
µ
nec
indicates the minimum friction coefﬁcient to keep therobot on the ground without slip. The nonslip condition(2) can be rewritten as
µ
nec
< µ.
(7)If this inequality is satisﬁed for a given walking pattern,we can conclude that the robot will walk without slip.
C. Walking Pattern for a Low Friction Environment
In this section, we outline a walking pattern generationbased on preview control theory [8]. With this method, wecan easily modify the necessary friction coefﬁcient of thewalking pattern.Under proper condition a walking dynamics can beapproximated by
p
x
=
x
−
z
c
g
¨
x,
(8)
p
y
=
y
−
z
c
g
¨
y,
(9)where
(
x,y
)
represent the horizontal displacement of thewhole robot’s center of mass (CoM),
z
c
is the height of the CoM and
(
p
x
,p
y
)
is the ZeroMoment Point (ZMP)[9]. Fig. 3 shows a suggestive model for these equations.The CoM of the robot is represented by a running cartand the leg conﬁguration is represented by a mass lesspedestal table. A walking pattern generation is equivalentto calculate the cart motion so that it yields the prescribedZMP.
ɺɺ
x
x
c
z
x
p
O
τ
=
zmp
0
M
Fig. 3. A cart table model
Equation 8 can be rewritten as a standard system equation by taking the jerk (
u
x
≡
...
x
) as its input
1
.
ddt
x
˙
x
¨
x
=
0 1 00 0 10 0 0
x
˙
x
¨
x
+
001
u
x
p
x
=
1 0
−
z
c
g
x
˙
x
¨
x
.
(10)The system output
p
x
follows the reference
p
ref x
byapplying the following
preview controller
[10].
u
x
(
k
) =
−
G
I k
i
=0
e
(
i
)
−
Gx
(
k
)
−
N
L
j
=1
G
p
(
j
)
p
ref x
(
k
+
j
)
,
(11)where
G
I
and
G
are the feedback gains and
G
p
(
j
)
is apreview gain which care about the reference ZMP up to
N
L
steps future.
e
(
i
)
is the tracking error of ZMP and
x
(
i
)
is the state vector,
e
(
i
)
≡
p
x
(
i
)
−
p
ref x
(
i
)
,
x
(
i
)
≡
[
x
(
i
) ˙
x
(
i
) ¨
x
(
i
) ]
T
.
1
Hereafter, we only explain the sagittal(
x

z
) motion but the lateral (
y

z
) motion can be easily obtained by the same procedure.
3547
TABLE IW
ALK PARAMETERS TO EVALUATE SLIPS AND FALLING
Height of CoM
z
c
: 0.814 [m]Sagittal step length: 0.3 [m]Lateral step width: 0.19 [m]Step period: 0.8 [s]Single support duration: 0.7 [s]Double support duration: 0.1 [s]Speed at steady walking: 0.375 [m/s]1.35 [km/h]Number of steps: 4 [steps]Total travel distance: 1.2 [m]
The gains of the preview controller are determined tominimize the following performance index.
J
=
∞
i
=
k
{
Q
e
e
(
i
)
2
+ ∆
x
T
(
i
)
Q
1
0 00
Q
2
00 0
Q
3
∆
x
(
i
)+
R
∆
u
2
(
i
)
}
,
(12)where
Q
e
,Q
1
,Q
2
,Q
3
and
R
are nonnegative weights,
∆
x
(
i
)
≡
x
(
i
)
−
x
(
i
−
1)
is the incremental state vectorand
∆
u
(
i
)
≡
u
(
i
)
−
u
(
i
−
1)
is the incremental input.Table I lists the walk parameters used to determine thereference ZMP. In all simulations and experiments of thispaper, we used consistent walking patterns generated fromthe same reference ZMP, since the occurrence of slips andfalls might be highly inﬂuenced by the walking speed, thestep length and other conditions.From the same ZMP reference, we can still generatewalking patterns with different characters by adjusting theweight of (12). A walking pattern with smaller necessaryfriction coefﬁcient
µ
nec
can be obtained by enlarging theweight
Q
3
, because it penalizes the horizontal accelerationof CoM. We made three walking patterns for
Q
3
=0
.
0
,
0
.
5
,
1
.
0
, and the necessary friction coefﬁcients areshown in Fig. 4 and Table II. As expected, by enlarging
Q
3
, we got a walking pattern with smaller
µ
nec
which ismore suitable for lower friction environment.
0123456700.020.040.060.080.10.120.140.160.180.2
µ
n e c
[ − ]
time [s]Q
3
=0.0Q
3
=0.5Q
3
=1.0
Fig. 4. Necessary friction for walking patterns
Fig. 5 shows the walking pattern of
Q
3
= 0
.
0
. This isa setting of our usual walking pattern generation, wherethe ZMP tracks the reference with good accuracy. Fig. 6
TABLE IIW
ALKING PATTERN AND NECESSARY FRICTION COEFFICIENTS
Walking pattern maximum
µ
nec
Q
3
= 0
.
0
0.196
Q
3
= 0
.
5
0.146
Q
3
= 1
.
0
0.131Other parameters are
Q
e
= 1
.
0
,Q
1
=
Q
2
= 0
.
0
,R
= 1
.
0
×
10
−
6
is the walking pattern of
Q
3
= 1
.
0
, which realizes smallnecessary friction coefﬁcient. As observed in the graph,the ZMP does not accurately track the reference with thissetting. Nevertheless, this is also a valid walking pattern.These patterns of CoM and reference ZMP were translated into the actual walking pattern of
(
p
0
,
R
0
,
θ
)
by usinginverse kinematics.
0123456700.20.40.60.811.2
z m p x [ m ]
zmp ref xzmp01234567−0.1−0.0500.050.10.15
z m p y [ m ]
time [s]zmp ref yzmp
Fig. 5. Walking pattern of
Q
3
= 0
0123456700.20.40.60.811.2
z m p x [ m ]
zmp ref xzmp01234567−0.1−0.0500.050.10.15
z m p y [ m ]
time [s]zmp ref yzmp
Fig. 6. Walking pattern of
Q
3
= 1
.
0
D. Trajectory Error Caused by Slip
The trajectory errors caused by slips were evaluatedby simulation. We used OpenHRP, which is a dynamicsimulator developed in the Humanoid Robotics Project(HRP) [11]. Simulated robot model is HRP2, a 30 DOFhumanoid robot which was also developed in HRP. Fig.7 illustrates the simulation result at
µ
= 0
.
08
usingthe walking pattern of
Q
3
= 0
. The reference pelvistrajectory
p
ref
0
and the footholds are plotted by dotted
3548
lines. Since slip occurred in the simulation, the simulatedpelvis trajectory
p
0
(bold line) and the foot placements(broken lines) did not follow the reference.
00.20.40.60.811.2−0.5−0.4−0.3−0.2−0.100.10.20.30.40.5 x [m]
y [ m ]
Reference Achievedµ = 0.08
Fig. 7. Simulation result of walking on a low friction ﬂoor
µ
= 0
.
08
,walking pattern of
Q
3
= 0
To evaluate the amount of slip, we deﬁned the followingindex.
SlipIndex
≡

p
0
(
t
)
−
p
ref
0
(
t
)

dt
(13)Fig. 8 shows
SlipIndex
of simulated walk using threewalking patterns and friction coefﬁcients between 0.08 and0.2.
0.080.10.120.140.160.180.200.050.10.150.20.250.30.35 friction coefficient µ [−]
S l i p I n d e x [ m * s ]
Q
3
=0Q
3
=0.5Q
3
=1.0
Fig. 8. Amount of slip on various friction coefﬁcients
Although it was expected that
Q
3
= 1
.
0
gives thesmallest
SlipIndex
by its small
µ
nec
, it was not clear.
Q
3
= 1
.
0
gave even the largest
SlipIndex
at
µ
= 0
.
16
whiletheoretically slip will not occur at this friction coefﬁcient.From this simulation, we could not conﬁrm that a walkingpattern having smaller
µ
nec
gives smaller amount of slip.We need further analysis on this subject as well as thecheck of the accuracy of OpenHRP simulator.III. S
LIP
I
NDUCED
F
ALLING
A. Simulated Falling
When a robot walks on a ﬂoor of very low friction, itmay fall by slipping. Fig. 9 shows an example of the falling
33.05[s]34.40[s]
34.65[s]35.15[s]
Fig. 9. Simulated slip induced falling. Walking pattern
Q
3
= 0
,µ
=0
.
05
. Arrows indicate the slip direction of the support foot.
process. We used a walking pattern of
Q
3
= 0
and set theﬂoor friction coefﬁcient as
0
.
05
.The robot started slip toward the left at the third step(top left) and inclined because of the fast slip speed of the left foot (top right). That body inclination resultedthe unexpected touchdown of the right foot, then a slipto the opposite direction started (bottom left). The slipof the right foot quickly evolved, and ﬁnally, the robotlost balance at all (bottom right). Note that the fallingprocess was not limited to this, but many variations wereobserved depending on the walking pattern and the frictioncoefﬁcient.In our simulation, all walking patterns of Table II fellwhen
µ
≤
0
.
05
. Therefore, the necessary friction coefﬁcients
µ
nec
gives too conservative ﬁgure(more than twice)to predict the risk of slip induced falling.
B. Slip and ZMP calculation
Now, we reconsider the cart table model of Fig. 3.For simplicity, we treat the two dimensional case(sagittalmotion) in this subsection.Suppose a reference cart motion was given as
x
ref
(
t
)
.According to the ZMP equation (8) the corresponding ZMPwill be
p
x
=
x
ref
−
z
c
g
¨
x
ref
.
However, this is valid as long as the table does not slip.Indeed, the possible acceleration of the cart is bounded by
3549
the friction between the table and the ﬂoor.
f
x
=
M
¨
x
≤
µMg
¨
x
≤
µg
As illustrated in Fig.10, if the cart attempts to acceleratewith
¨
x
ref
> µg
, the table starts slipping with an acceleration of
µg
−
¨
x
ref
which compensates the excessiveacceleration. As the result, the cart can only accelerate
µg
in the world frame. In this situation, the ZMP is given bythe following equation.
p
x
=
x
ref
−
µz
c
(14)
τ
=
zmp
0
µ
=
ɺɺ
x g
O
µ
= −
ɺɺ ɺɺ
ref tbl
x g x
x
p
x
µ
1
M
Fig. 10. Carttable on a low friction ﬂoor: The friction coefﬁcientbetween the table and the ﬂoor is
µ
.
C. Slip concerned ZMP
Taking into account of the above consideration, let uscalculate the ZMP of a humanoid robot of Fig.2 for a givenfriction coefﬁcient.The horizontal ﬂoor reaction force
f
t
at slipping is
f
t
=
µf
z
=
µµ
nec
˙
P
2
x
+ ˙
P
2
y
,
(15)where
µ
nec
is the necessary friction coefﬁcient,
P
is thelinear momentum calculated from the walking pattern.To treat slip and nonslip condition, we introduce aparameter
γ
∈
[0
,
1]
as
γ
=
µ/µ
nec
(if
µ
nec
> µ
),
1
(else). (16)
0
≤
γ <
1
at slipping, and
γ
= 1
at nonslipping. Using
γ
, we can calculate a slip concerned ZMP as follows.
p
x
=
c
x
−
γ
˙
P
x
c
z
+ ˙
L
y
˙
P
z
+
Mg,
(17)
p
y
=
c
y
−
γ
˙
P
y
c
z
−
˙
L
x
˙
P
z
+
Mg,
(18)where
[
c
x
,c
y
,c
z
]
is the position of the total CoM and
L
is the angular momentum around the CoM. In this paper,we refer the ZMP calculated by these equations as
slipconcerned ZMP
2
.
2
Rigorously speaking, we should say that Eq.(17) and (18) representthe
true
ZMP.
Fig. 11 illustrates this slip concerned ZMP (slipZMP inshort) at
µ
= 0
.
05
and the srcinal ZMP. While the srcinalZMP trajectory (thin solid line) always runs in the middleof the support area (boundaries are shown by dashedlines), the slipZMP (bold line) grazes the boundaries. Thisindicates that the walking with low friction is less stable.
0123456700.20.40.60.811.2
z m p x [ m ]
zmpslip zmpsup. area01234567−0.15−0.1−0.0500.050.10.15
z m p y [ m ]
time [s]zmpslip zmpsup. area
Fig. 11. ZMP, Slip concerned ZMP
(
µ
= 0
.
05)
and support area.Walking pattern of
Q
3
= 0
As a quantitative measure, we calculated the
StabilityIndex
which is deﬁned by the minimumdistance between the slipZMP and the edges of thesupport polygon (convex hull).
StabilityIndex
is deﬁnedto be positive when the slipZMP is inside of the supportpolygon and to be negative when the slipZMP is outof the polygon. Fig. 12 shows the
StabilityIndex
corresponding to Fig.11.
01234567−0.0500.050.10.15
S t a b i l i t y I n d e x [ m ]
time [s]
Fig. 12.
StabilityIndex
of walking pattern of
Q
3
= 0
with
(
µ
=0
.
05)
For a given walking pattern and the friction coefﬁcient,the minimum value of
StabilityIndex
indicates the risk of falling. Fig. 13 visualizes
min
(
StabilityIndex
)
for thefriction coefﬁcients between 0.01 and 0.15. The plots thatgo less than zero at
µ
≤
0
.
05
explain the simulation resultsthat all walking pattern fell at
µ
≤
0
.
05
.IV. W
ALK
E
XPERIMENT ON A
L
OW
F
RICTION
F
LOOR
In this section we describe preliminary walking experiments on low friction ﬂoors using a humanoid robot HRP2 [12]. The soles of HRP2 are covered by a rubberlikematerial, which offer the friction coefﬁcient
µ >
1
.
0
onthe lab ﬂoor. We tested two settings of low friction. The
3550