of 13
Supplementary Materials for
A bipedal walking robot that can fly, slackline, and skateboard
Kyunam Kim
et al.
Corresponding author: Soon-Jo Chung, sjchung@caltech.edu
Sci. Robot.
6
, eabf8136 (2021)
DOI: 10.1126/scirobotics.abf8136
The PDF file includes:
Supplementary Text
Sections S1 to S7
Figs. S1 to S3
Tables S1 and S2
References (
74
79
)
Other Supplementary Material for this manuscript includes the following:
Movies S1 to S8
Supplementary
Text
Section
S1.
Experimental
data
for
walking
on
a
loosely-tensioned
rope
Figure
S1
presents
the
experimental
data
for
walking
on
a
loosely-tensioned
rope.
The
top
plot
shows
the
CoM
x
position
(horizontally
away
from
the
rope)
and
z
position
(upward),
each
plotted
against
the
y
position
(along
the
rope).
The
rope
is
deflected
downward
under
the
weight
of
the
robot,
which
makes
the
mean
z
position
increase
as
the
robot
moves
from
the
center
of
the
rope
toward
the
higher
attachment
point.
A
back-and-forth
movement
is
seen
in
the
y
direction
as
the
robot
takes
each
step,
shifting
its
CoM
from
one
foot
to
the
other
and
back,
as
described
in
the
trajectory
of
Fig.
5.
The
middle
plot
shows
the
evolution
in
time
of
the
tracking
error
in
the
sagittal
and
frontal
planes.
We
notice
periodic
disturbances
in
the
frontal
plane
caused
by
the
foot
advancing
to
a
point
on
the
pulled-down
rope,
which
is
at
a
higher
position
relative
to
where
the
robot
stands.
The
sagittal
plane
has
a
small
tracking
error
compared
to
the
frontal
plane
because
there
is
no
disturbance,
since
the
steps
are
made
in
the
frontal
plane.
The
bottom
plot
shows
the
commanded
propeller
thrust
signals
with
respect
to
time.
Section
S2.
Energy
consumption
and
Cost
of
Transportation
analysis
Although
energy
efficiency
is
not
the
focus
of
the
LEO
design,
the
Cost
of
Transportation
(CoT)
was
analyzed
to
present
the
current
limitations
of
such
a
hybrid
locomotion
system
and
to
inform
future
researchers
interested
in
this
direction
about
potential
challenges
that
have
to
be
addressed.
While
hovering,
LEO
consumes
an
average
of
992
W,
out
of
which
933
W
are
powering
the
propellers
and
59
W
are
powering
the
on-board
electronics
and
leg
actuators.
This
power
consumption
is
almost
cut
in
half
when
LEO
is
walking
on
the
ground,
drawing
an
average
of
544
W,
which
is
split
between
445
W
for
propellers
and
99
W
for
electronics
and
legs.
These
power
measurements
were
made
by
measuring
the
energy
required
to
recharge
LEO’s
battery after performing a walking or flying maneuver. Therefore, they include the overall power
consumption as well as the battery charge/discharge losses. With the relatively small batteries
used on LEO, the resulting flight endurance is about 100 seconds and the walking endurance
is about 3.5 minutes. The limiting factor is the 29 Wh capacity of the battery powering the
propellers.
In Fig. S2, the CoT for different animals, insects, and robotic systems as well as LEO during
its two main locomotion modes are plotted. When walking at a speed of 20 cm/s, the measured
CoT for LEO was
108
. When flying at 1 m/s, the CoT was
48
, and it decreased to
15
.
5
at
the flight speed of 3 m/s. The robots used for comparison have CoT values that are lower
than LEO’s, but they are lacking LEO’s multi-modal capabilities. The data used for the plot is
summarized in Table S2 and in (
74
).
Section S3. LEO’s nonlinear tracking controller: Exponential convergence
proof
The construction of the proof follows (
77
). The closed-loop dynamics is given by:
m
`
2
̇
!
e
+
k
!
e
+
k
I
Z
t
t
0
!
e
dt
0
=
ext
(6)
where
!
e
= ̇
̇
r
is the composite error term that includes both the angular position and
rate errors. By introducing the term
̇
y
=
k
I
!
e
, we can write Eq. 6 as a linear system with a
state-dependent coefficient matrix
A
(
t
)
:
̇
!
e
̇
y
=
km
1
`
(
t
)
2
m
1
`
(
t
)
2
k
I
0
!
e
y
=:
A
(
t
)
!
e
y
.
(7)
where
`
(
t
)
is regarded as an external time-varying term for Eq. 6.
We show that the system in Eq. 7 is contracting (i.e., exponentially converging to a sin-
gle trajectory globally from any initial condition (
78
)). We construct a positive definite ma-
trix
P
=
mb
b
1
, with a parameter
b
2
(0
,
p
m
)
. The symmetric matrix
(
PA
)
sym
=
1
2
(
PA
)
+
(
PA
)
>
is given by:
(
PA
)
sym
=
k
I
b
k
`
2
1
2
k
I
1
2
kbm
1
`
2
1
2
`
2
1
2
k
I
1
2
kbm
1
`
2
1
2
`
2
bm
1
`
2
.
Note that
(
PA
)
sym
is negative definite uniformly in time if the following conditions hold:
b<kk
1
I
`
2
and
b
2
(
b
1
,b
2
)
,
with
b
1
and
b
2
being the roots of
det (
(
PA
)
sym
)=0
.
(8)
Combining these conditions with the condition for positive definiteness of matrix
P
,
b
needs
to be chosen as follows:
b
2
max
(0
,b
1
)
,
min
b
2
,
k
k
I
`
2
,
p
m
◆◆
.
We define the generalized virtual displacement vector as
z
=[
!
e
,
y
]
>
, where
!
e
and
y
are infinitesimal displacements at fixed time. We compute the rate of change as follows:
d
dt
z
>
P
z
=
z
>
(
PA
)+(
PA
)
>
z
2
max
((
PA
)
sym
)
k
z
k
2
2
2
max
((
PA
)
sym
)
max
(
P
)
z
>
P
z
where
max
is the maximum eigenvalue of the argument matrix.
From contraction analysis (Lemma 6 in (
77
)), all system trajectories converge exponentially
fast to a single trajectory
z
!
0
with a convergence rate of
2
max
((
PA
)
sym
)
min
(
P
)
. In the presence
of a time-varying disturbance term
ext
with the bounded time derivative
̇
ext
, we obtain the
following error bound from Lemma 7 in (
77
):
lim
t
!1
Z
!
e
0
k
!
e
k
2
p
b
2
+1
(
P
)
max
((
PA
)
sym
)
sup
t
k
̇
ext
k
2
where
(
P
)
is the condition number of
P
. Here, we use the fact that
k
!
e
k
2
k
z
k
2
and that
the disturbance appears in the right-hand side of Eq. 7 as
0 ̇
ext
>
.
Using hierarchical combination (
78
) between the dynamics of
!
e
and
̃
, we prove the con-
vergence of
̃
to the following error ball:
lim
t
!1
Z
̃
0
k
̃
k
2
p
b
2
+1
k
(
P
)
max
((
PA
)
sym
)
sup
t
k
̇
ext
k
2
By comparing the previous equation with Eq. 4, the
function is defined accordingly. Note
here that
max
((
PA
)
sym
)
<
0
as
(
PA
)
sym
is negative definite under the conditions mentioned
in Eq. 8.
Section S4. Modeling of propeller forces and moments for LEO
Suppose the
i
-th propeller is exerting a thrust force
f
i
at its location
p
i
with respect to the body
frame
B
. The thrust can be modeled as
f
i
=
f
i
ˆ
z
i
=
c
i
!
2
i
ˆ
z
i
, where
c
i
is a constant,
!
i
is the spin
speed, and
ˆ
z
i
is a unit vector in the direction of the propeller thrust (
79
). At the same time, the
propeller is also exerting a moment
i
=(
p
i
p
ref
)
f
i
±
i
f
i
=
f
i
μ
i
on the body about a point
p
ref
. For LEO,
p
ref
is either 1) the ground contact point in case LEO is walking on the ground,
or 2) the CoM location if LEO is flying. In both cases, we assume
p
ref
is on the sagittal plane,
that is, its body-
y
component is zero. The scalar
i
is a constant capturing the drag moment
that becomes scaled by the applied thrust, whose sign is determined by the spin direction of the
propeller. If the propellers are vertically oriented, then
i
is the only source of yaw moment;
however, if the propellers are tilted, the moment contribution of
i
becomes negligible as the tilt
angle increases. The vector
μ
i
=(
p
i
p
ref
)
ˆ
z
i
±
i
ˆ
z
i
points in the direction of the moment,
but it is not necessarily a unit vector. We denote the collective moment from all propellers as
=
P
4
i
=1
i
.
Note
that
p
i
and
z
ˆ
i
are
functions
of
propeller
placement
only,
and
if
the
propellers
remain
fixed
to
the
body,
these
vectors
are
also
constant.
Consequently,
the
propeller
thrust
force
and
moment
become
functions
of
the
propeller
speeds
only.
Therefore,
once
a
solution
of
Eq.
5
is
found,
it
is
transformed
into
Pulse-Width
Modulation
(PWM)
signals
and
sent
to
propeller
BLDC
motors
to
physically
control
their
speeds.
Section S5. Derivation of no-slip conditions for moment set definition
Consider again the Inverted Pendulum model (Fig. 3B). We investigate a representative case
where no rotation has been applied to the pendulum. Hence, the pendulum is vertical and its
angular velocity is zero. In addition, we assume the pendulum has a constant length. Under this
scenario, we seek the no-slip conditions derived in terms of ground reaction forces and propeller
thrusts.
Following the frame definitions in Fig. 3C, let us define the position coordinates of the
propellers with respect to the CoM in the body frame
B
as
p
1
=[
a, b, c
]
>
,
p
2
=[
a,
b, c
]
>
,
p
3
=[
a,
b, c
]
>
,
p
4
=[
a, b, c
]
>
,
where
a, b, c >
0
. In addition, we let the coordinates of the unit direction vectors of the propeller
thrusts as
ˆ
z
1
=
sin
p
2
,
sin
p
2
,
cos
>
,
ˆ
z
2
=
sin
p
2
,
sin
p
2
,
cos
>
,
ˆ
z
3
=
sin
p
2
,
sin
p
2
,
cos
>
,
ˆ
z
4
=
sin
p
2
,
sin
p
2
,
cos
>
.
Note that
p
k
and
ˆ
z
k
(
k
=1
,
2
,
3
,
4)
are defined with respect to the body basis whereas the ground
reaction force
f
r
is defined with respect to the inertial basis. However, under the assumption of
the pendulum being vertical, these two bases are coincident.
Taking this into account and using Newton’s second law on both frontal and sagittal planes,
we obtain
m
`
̈
(s)
=
f
rx
+
sin
p
2
(
f
1
f
2
+
f
3
+
f
4
)
m
`
̈
(f)
=
f
ry
+
sin
p
2
(
f
1
+
f
2
+
f
3
f
4
)
0=
f
rz
mg
+cos
(
f
1
+
f
2
+
f
3
+
f
4
)
With the dynamics of
(s)
and
(f)
in Eq. 2 and by ignoring the propeller drag moment factor
k
given a relatively large tilt angle
, we also obtain
m
`
2
̈
(s)
=
(
c
+
`
)
sin
p
2
+
a
cos
(
f
1
f
2
+
f
3
+
f
4
)
m
`
2
̈
(f)
=
(
c
+
`
)
sin
p
2
+
b
cos
(
f
1
+
f
2
+
f
3
f
4
)
Solving for the friction forces, we have
f
rx
=
`
1
(
f
1
+
f
2
f
3
f
4
)
c
sin
p
2
+
a
cos
f
ry
=
`
1
(
f
1
f
2
f
3
+
f
4
)
c
sin
p
2
+
b
cos
f
rz
=
mg
(
f
1
+
f
2
+
f
3
+
f
4
)cos
The no-slip conditions arise from the linear static friction condition as
|
f
rx
|
s
f
rz
,
|
f
ry
|
s
f
rz
,f
rz
0
.
By using our previous notation
f
z
for the net vertical thrust
(
f
1
+
f
2
+
f
3
+
f
4
)cos
, the
vertical
component
of
the
reaction
force
is
re-written
in
an
obvious
form
as
f
rz
=
mg
f
z
.
Note
that
the
condition
f
rz
0
is
satisfied
during
LEO’s
walking
as
the
net
vertical
propeller
thrust
we
apply
is
less
than
the
weight
of
LEO
to
prevent
the
loss
of
ground
contact.
One
may
obtain
the
same
results
from
a
more
general
case
of
a
rigid
body
pendulum
whose
equations
of
motion
can
be
derived
using
the
Lagrangian
method.
Since
a
rigid
body
has
six
degrees-of-freedom,
a
total
of
six
second-order
equations
would
be
obtained.
For
the
no-slip
pendulum,
three
of
the
equations
describe
its
rotational
motion,
and
the
remaining
three
are
solved
for
the
ground
reaction
forces,
all
of
which
have
rather
complex
expressions.
With
our
assumptions,
however,
the
equations
are
substantially
simplified,
and
the
same
expressions
for
f
r
can
be
obtained.
Furthermore,
a
careful
examination
of
these
equations
reveals
that
the
stance
foot
does
not
slip
when
the
net
moment
about
the
CoM
is
zero
for
the
particular
case
of
a
point-mass
pendulum.
Section S6. Solution of the optimized control allocation
To solve this optimization problem efficiently without a numerical solver, we reparameterize the
problem with a single parameter
c
=
k
u
k
1
. Let
̃
B
be the
B
walk
matrix with an additional row
of ones, such that
̃
Bu
=
d
c
since all elements of
u
are nonnegative. The new optimization
formulation becomes:
min
c
subject to
0
4
1
f
min
4
1
̃
B
1
d
0
+
̃
B
1
0
3
1
c
f
d
z
/
cos(
)
c
(9)
where
0
n
1
is a vector of
n
zeros and
4
1
=
1111
>
. Note that the first inequal-
ity is taken element-wise. The problem of finding
c
resumes to the following straightforward
inequality:
c
=max
(
f
d
z
cos(
)
,
f
min
4
1
̃
B
1
d
0
col
4
̃
B
1
)
Here,
col
4
(
̃
B
1
)
refers to the fourth column of
̃
B
1
and
is the element-wise division. Note
that
col
4
(
̃
B
1
)
is strictly positive from the existence of a
u
+
>
0
such that
B
walk
u
+
=
0
, and
thus, the element-wise division operation does not change the direction of the inequality signs
in Eq. 9. After obtaining
c
,
u
is computed as
u
=
̃
B
1
d
c
.
Section
S7.
Propeller
tilt
angle
trade-off
As
described
in
the
section
“Distributed
propellers
and
motors,”
the
propellers
are
tilted
inwards
by
the
angle
=25
to
increase
LEO’s
control
authority
during
ground
locomotion
at
the
ex-
pense
of
hover
efficienc
y.
Figure
S3
shows
the
effect
of
varying
the
tilt
angle
on
the
hover
efficiency
as
well
as
the
maximum
moment
while
on
the
ground.
Here,
the
hover
thrust
effi-
ciency
is
defined
as
the
net
vertical
thrust
divided
by
the
sum
of
propeller
thrusts
in
hover.
The
moments
are
given
for
an
upright
configuration
(
i
=
i
=0
)
and
include
the
no-slip
constraint
(with a friction coefficient of 0.84) as developed for
T
walk
,
no
slip
. As seen in Fig. S3, the control
effectiveness at
=25
is enhanced substantially, while keeping the hover thrust losses low.
This angle could be adjusted or actively controlled to optimize LEO for a specific use case.
0.0
0.2
0.4
0.6
0.8
Position y-axis (along rope) [m]
0.05
0.00
0.05
Position [m]
x position
z postition
5
0
5
Tracking
error
[deg]
̃
s
̃
f
0
10
20
30
40
50
Time [s]
0
5
Thruster
force [N]
f
1
f
2
f
3
f
4
Fig. S1. Experimental data for walking on a loosely-tensioned rope.
10
7
10
6
10
5
10
4
10
3
10
2
10
1
10
0
10
1
10
2
10
3
10
4
Mass[kg]
10
1
10
0
10
1
10
2
CoT
Fig. S2. Mass vs. Cost of Transportation for different walkers, flyers, and robots.
The data
are provided in Table S2 and in (
74
). The solid line between the data points of LEO represents
a range of CoT achievable by combining the two locomotion modes of LEO.