Top Banner
Gait control by foot placement for humanoid robots F.J.B.M. Botden DC 2013.007 Master open space assignment Coach(es): ir. P.W.M van Zutven Supervisor: prof. dr. H. Nijmeijer Technische Universiteit Eindhoven Department Mechanical Engineering Dynamics and Control Group Eindhoven, March, 2013
35

Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Sep 10, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Gait control by foot placementfor humanoid robots

F.J.B.M. Botden

DC 2013.007

Master open space assignment

Coach(es): ir. P.W.M van Zutven

Supervisor: prof. dr. H. Nijmeijer

Technische Universiteit EindhovenDepartment Mechanical EngineeringDynamics and Control Group

Eindhoven, March, 2013

Page 2: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

2

Page 3: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Contents

1 Introduction 9

2 A 2D biped with massless legs 112.1 Derivation of the model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2 Impact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3 Derivation of the FPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.4 Simulation results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3 A 3D biped with massless legs 193.1 Derivation of the model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.2 Foot placement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.3 FPE not applicable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.4 Introduction FPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.5 Prediction for mass position m∗ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.6 State transformation without impact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253.7 Simulation approach using FPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.8 Simulation results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

4 Conclusions and Future Work 33

3

Page 4: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

4

Page 5: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Abstract

Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid robot must be able to avoid falling and return to a balanced configuration. This is called pushrecovery and can be achieved using proper foot placement. Depending on the freedom of movement,one or multiple steps are taken to accomplish this goal. It is expected that foot placement can also beused to achieve controlled bipedal walking: gait control.Current foot placement strategies are limited to push recovery or restricted to bipeds with linear dy-namics. The purpose of the present study is to achieve gait control by foot placement, for both a 2Dbiped and a 3D biped model with nonlinear dynamics.For the 2D biped model, the biped velocity at the upright standing configuration is controlled using anextension of the foot placement strategy FPE, which is normally used for 1-step push recovery. Simu-lations shows that desired reference velocities are obtained for various numbers of steps. For the 3Dbiped model, gait control is achieved using a new foot placement strategy, called FPP. This strategy isalso verified in simulation, showing that gait control can be achieved for multiple reference paths. Thefindings are beneficial for dynamical analysis, simulation and gait control of bipedal robots.

5

Page 6: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

6

Page 7: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Glossary of symbols

Lmbfx0, z0x1, z1qφθLgαtx−

x+

w, uHf

vvpeakvrefK, P , EθFPE

nkx0, y0, z0x1, y1, z1χβrv−

τσxv, yvrefm∗

e∗dis, e∗angedis, eanghdt

Length biped legPoint mass bipedBase positionFoot position2D Cartesian coordinates with respect to b2D Cartesian coordinates with respect to fGeneralized coordinateAngle of stance leg in (x, z)-planeAngle of swing leg in (x, z)-planeLagrangianGravitational constantAngle between stance and swing legTimePre-impact statePost-impact stateFunctions coupling pre- and post-impact statesAngular momentum with respect to fCartesian velocity of the massMass velocity at the peak configurationDesired mass velocity at the peak configurationKinetic, potential and total energy respecitvelyAngle θ for which vpeak is achievedNumber of biped stepsBiped step number3D Cartesian coordinates with respect to b3D Cartesian coordinates with respect to fAngle of stance leg in (x, y)-planeAngle of swing leg in (x, y)-planeFoot placement radiusPre-impact velocity vectorAngle between swing leg and vector v− in (x, y)-planeAngle between vector x and vector v− in (x, y)-plane2D coordinate frame, placed at m, with xv in direction of v−

Reference pathMass position for predicted peak configurationDistance and angle error of m∗ with respect to refDistance and angle error of m with respect to refHeight of mSize timestep

7

Page 8: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

8

Page 9: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Chapter 1

Introduction

Humanoid robotics is an emerging technology that will become part of our daily life in the comingdecades [1, 2]. Researchers and engineers are already developing humanoid robots that show varioushuman-like characteristics. In the future, these robots should substitute people in a variety of tasks inindustry, household, services, care etc.

The Dynamics and Control Group of the Eindhoven University of Technology is active in the researchfield of bipedal humanoid robots. The main goal is to achieve dynamically stable, efficient and human-like bipedal walking. It is expected that gait control can be achieved by proper foot placement.

Currently, two important foot placement strategies exist.

The first strategy is called the foot placement estimator (FPE) [4, 5, 6].The FPE strategy can be used for 1-step push recovery of a 2D biped model. The strategy states that thestepping angle should be such, that after impact, a balanced biped configuration is achieved.For every timestep, the proper pre-impact foot placement angle is calculated, using an impact modeland energy balance. The impact model couples the pre-impact and post-impact configuration of thebiped. The energy balance couples the post-impact configuration with the balanced, upright standingconfiguration.The swing leg is controlled to equal the calculated foot placement angle, such that when impact actuallytakes place, the balanced standing configuration will be achieved after impact.

The second strategy is based on capture regions [7]. N -step capturability is informally defined as theability of a biped to come to a stop without falling by taking N or fewer steps. The N -step captureregion is the set of points to which a biped in a given state can step to become (N − 1)-step capturable.By calculating the capture regions, multi-step push recovery can be achieved. However, it is importantto note, that the equations of motion must be linear. This linearity is what makes the model valuableas an analysis and design tool, as it allows us to make closed-form predictions. Therefore, the strategyis only used for 3D biped models with telescopic legs. With telescopic legs, the mass position is kept ata fixed height, which results in linear equations of motion.

The current foot placement strategies are limited.

For the FPE strategy, the biped configuration must be fixed after impact, in order to keep the total en-ergy constant and apply the energy balance. This is not the case when the FPE strategy is repeated

9

Page 10: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

for multiple biped steps. As a result, the biped can overshoot the balanced configuration, 2D bipedalwalking is achieved, but the motion is uncontrolled.The capture point strategy on the other hand ensures a controlled walking gait, but it can only be usedfor 3D biped models that have telescopic legs. For a 3D biped with non-telescopic legs, the dynamicsare non-linear and the strategy is not applicable.

In this report, solutions to both problems are presented. The goal is to achieve gait control by footplacement for both 2D and 3D bipedal walking.

The report consists of two parts.In chapter 2, the FPE strategy is extended for controlled planar bipedal walking. The strategy is usedto control the biped’s velocity at the upright standing configurations. A simple 2D biped model ispresented to verify the foot placement strategy in simulation.In chapter 3, a new foot placement strategy is derived for a 3D biped model with non-telescopic legs.The strategy is called the foot placement predictor (FPP) and is based on a prediction of the center ofmass position at a later time instant. The strategy can be used for position-controlled walking, to letthe biped follow a predefined path. A simple 3D biped model is presented to verify the foot placementstrategy in simulation.Finally, conclusions and recommendations are given in chapter 4.

10

Page 11: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Chapter 2

A 2D biped with massless legs

In this chapter, a simple 2D inverted pendulum model is presented, which is used to determine theproper foot placement for push recovery.First, the model is derived and the equations of motion are calculated. Next, a 2D impact model isused to estimate the state of the system immediately following impact. Using this information, a footplacement estimator (FPE) [4, 5, 6] can be derived. The FPE is extended for velocity-controlled bipedalwalking. Finally, the foot placement strategy is verified in simulation.

2.1 Derivation of the model

Consider a simple biped, with two straight legs of length L, point feet and point mass m (Figure 2.1).The standing foot is pinned to the ground at base b. The legs are assumed to be massless, so their mo-tion does not cause additional dynamics to the system. Consequently, the swing leg has no influenceon the calculation of the FPE point.

z0

x0

φ

θ

LL

f

m

b

Figure 2.1: Schematic of 2D biped model

11

Page 12: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

First, the biped rotates about point b, the base of the robot. The position of the mass can be expressedwith respect to coordinate system (x0,z0), using the generalized coordinate q = φ. This is the angle ofthe stance foot with the axis z0.The configuration of the swing leg is determined by the joint angle θ. Since the swing leg has no mass,contact with ground can be achieved at any desired moment. This way, the position of the foot f iscontrolled to match the FPE position.

The equation of motion for this inverted pendulum model is found from the Euler-Lagrange equation:

d

dt

(δLδq

)=δLδq

(2.1)

Here the generalized coordinate is equal to q = φ and the Lagrangian can be written as:

L = T − V =1

2m(Lφ)2 −mgL cos(φ) (2.2)

with T and V the kinetic and potential energy respectively.

This results in the equation of motion:

φ =g

Lsin(φ) (2.3)

For simulations, the state space formulation is used. The state is equal to x = [x1 x2]> = [φ φ]>. The

derivative of the state can be written as:

x =

[x2

gL sin(x1)

](2.4)

2.2 Impact

Impact occurs if the swing leg end comes in contact with the ground. It is assumed that at the momentof impact, the swing and stance leg swap their role. So the stance foot lifts from the ground and theswing foot stays on the ground without slipping or rebounding.

Figure 2.2 shows the impact model for the 2D biped. A frame (x1,z1) is placed at point f , whichbecomes the new base b after impact. The generalized coordinate immediately following impact, φ+,is the angle with respect to the axis z1. The corresponding angular velocity is denoted by φ+. Togetherthey form the state after impact:

x+ =

[φ+

φ+

](2.5)

In order to find the FPE position, it is necessary to estimate the state after impact. The state after impact(denoted by +) is related to the state just prior to impact (denoted by −) by functions w1 and w2, foundfrom the 2D impact model in Figure 2.2.[

φ+

φ+

]=

[w1(φ

−)

w2(φ−)

](2.6)

12

Page 13: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

φ−

z0

x0

L

m

b

v+

f

L

α

α

v−

φ+

x1

z1

Figure 2.2: Impact 2D biped model

First, a relation for the angle φ is found from the geometry of the model. The ground is assumed tobe flat and leveled. Also, the swing and stance leg have the same length L. Therefore, the coordinatetransformation is simply described by:

φ+ = −φ− (2.7)

Next, conservation of angular momentum about point f is used to find a relation for the angular veloc-ity φ, as stated by Wight [4]. The velocity of the mass just before and just after the impact, denoted byv− and v+ respectively, are shown in Figure 2.2. The velocity of the mass reduces with a factor cos(α)when impact occurs.

(Hf )+ = (Hf )

− (2.8)

mLv+ = mLv− cos(α) (2.9)

mL(Lφ+) = mL(Lφ−) cos(α) (2.10)

Putting relations (2.7) and (2.10) together, results in an equation which describes the state immediatelyfollowing impact as a function of the state just prior to impact:[

φ+

φ+

]=

[ −φ−cos(α)φ−

](2.11)

13

Page 14: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

2.3 Derivation of the FPE

The FPE angle is the joint angle θ that corresponds to the desired stepping location.

Figure 2.3 shows three relevant biped configurations. The model switch from the pre-impact configu-ration (left) to the post-impact configuration (middle) can take place at any desired time instant, becausethe biped legs are massless. The mass velocity v− reduces to v+, due to the impact. After impact, thevelocity further reduces, until the mass height reaches a maximum at the peak configuration (right,with φ = 0). The foot placement should be such, that the velocity at this peak configuration, vpeak,equals a desired velocity vref .

L

m

f

v+

b

L

φ+

x1

z1

K+, P+

L

m

f

vpeak

b

L

x1

z1

Kpeak, Ppeak

Post-impact configuration Peak configuration

θ

L

m

L

b f

z0

v−

x0

Pre-impact configuration

φ−

θ

Impact model Energy balance

Figure 2.3: Three relevant biped configurations. The pre-impact angle θ should be such, that adesired peak velocity is achieved, vpeak = vref .

The joint angle θ just before the impact, determines the pre-impact configuration of the biped. Thepost-impact state is found from the 2D impact model, presented in Section 2.2. The velocity vpeak canbe found from energy conservation between the post-impact configuration and the peak configuration:

K+ + P+ = Ppeak +Kpeak (2.12)

1

2m(Lφ+)2 +mgL cos(φ+) = mgL+

1

2mv2peak (2.13)

The post-impact energies are denoted by the +-sign. The energies at the peak configuration are denotedby the word ’peak’. K and P stand for the kinetic and potential energy respectively.

The velocity vpeak must equal a desired velocity vref .For vref = 0, the total energy after impact is converted solely into potential energy and the biped ends

14

Page 15: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

in a balanced standing configuration.For vref > 0, the biped passes the peak configuration with a velocity specified by vpeak = vref and thebiped continues to fall forward.

Relation (2.11) is used to express the state after impact [φ+ φ+]> in terms of the state just before impact[φ− φ−]>. Substitution of (2.11) in (2.13) yields:

1

2m(Lφ− cos(α))2 +mgL cos(−φ−) = mgL+

1

2mv2peak (2.14)

Furthermore, the angles α and φ− are written as a function of θ according to:

α = π − θ (2.15)

φ− =π − θ2

(2.16)

Substitution of (2.15) and (2.16) into (2.14) gives

1

2m(Lφ− cos(π − θ))2 +mgL cos

(π − θ2

)= mgL+

1

2mv2peak (2.17)

The joint angle θ for which the desired peak velocity vref is achieved, is called the FPE angle θFPE . TheFPE angle can be calculated from (2.17) by prescribing the peak velocity vpeak = vref .

Since it is not known in advance what the angular velocity φ− will be just prior to impact, at each timeinstant the current angular velocity is used to find the angle θFPE .The joint angle θ is changed to the value of θFPE at each time instant. This is possible, because theswing leg is massless and has no inertia.When the impact does occur, the current angular velocity is equal to φ− and the joint angle θ is properlyset.

2.4 Simulation results

The equation of motion from (2.3) is implemented in Matlab and numerically integrated using theode15s solver. For each time instant, the FPE angle θFPE is calculated with (2.17).An event function on the foot height states when the actual impact occurs. The biped gets a new initialcondition as the swing leg becomes the stance leg. This process is repeated for the number of steps nthat are taken. After the last step, the simulation is stopped when the biped meets its upright standingconfiguration (φ = 0).

For each step, the peak velocity vpeak must equal a desired velocity vref . Since impact reduces the totalenergy in the system, the desired velocity must decrease at each step. The first reference velocity mustbe smaller than the initial velocity.

For the following simulation, the biped takes 3 steps.Reference velocity vref is halved for every step, except for the last step, which is set to zero. See Table2.1 for the simulation settings.

15

Page 16: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Setting Value Unitn 3 -φ 0 radφ 4 rad/svrefs [2 1 0] m/sm 1 kgL 1 m

Table 2.1: Simulation settings

Figure 2.4a shows the angles φ and θ. It can be seen that the biped takes a step at 0.11, 0.53 and 1.18seconds. At these moments, the model switch takes place and φ becomes negative. For every timeinstant, the joint angle θ equals the FPE angle θFPE . After the last step, θ is constant and the bipedconfiguration is fixed. Finally, the simulation is stopped when angle φ is equal to zero. In this case at2.18 seconds.In Figure 2.4b the mass height is plotted over time. It can be seen that impact occurs at differentheights and with different time intervals.

0 0.5 1 1.5 2 2.5

0

1

2

3

t [s]

Ang

le[rad

]

φθ

(a) Angle φ and joint angle θ

0 0.5 1 1.5 2 2.5

0.9

0.95

1

t [s]

h[m

]

(b) Mass height

Figure 2.4: Relevant angles and corresponding mass height during 3 step simulation

The FPE angle and the time that impact occurs, depend on the amount of energy that is left in thesystem and the desired velocity of the mass at the peak configurations.In Figure 2.5 the successful operation of the FPE principle is shown by plotting the actual energies, theestimated post-impact energies and the desired reference energies at the peak configurations.

For each impact, the actual kinetic, potential and total energies after impact are equal to the correspond-ing estimated post-impact energies. This ensures that the energies at the peak configurations matchthe energies corresponding to the desired reference velocities. At 0.11, 0.53 and 1.18 seconds, the solidlines meet the dotted lines.The kinetic energy reduces when impact takes place. This is expected, as described in section 2.2. Theamount of kinetic energy reduction depends on the foot placement angle α. In between the momentsof impact, the total energy is constant. Changing the angle θ has no effect on the total amount of energyin the system, because the swing leg is massless.

16

Page 17: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

At the end of the simulation, the biped reaches an upright standing configuration and the velocityshould be zero. In can be seen that after the last step, all kinetic energy is converted into potentialenergy.

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2 2.40

20

40

60

80

t [s]

Ene

rgy[J]

KPEK+

P+

E+

KrefPrefEref

Figure 2.5: Simulation result for 3 steps. The relevant energies are shown: actual kinetic, potentialand total energy (K, P , E respectively), estimated post-impact kinetic, potential and total energy,based on impact model (K+, P+, E+ respectively) and reference kinetic, potential and total energyat peak configuration (Kref , Pref , Eref respectively).

Figure 2.6 shows that at the peak configurations, the actual velocity of the mass is equal to the corre-sponding desired reference velocity. The peak velocity is halved for the first two steps. For the last stepthe peak velocity is (almost) equal to zero.

0 0.5 1 1.5 2 2.50

2

4

t [s]

v[m

/s]

v [m/s]vref

Figure 2.6: The actual Cartesian velocity v and the desired peak velocities vref for 3 steps

17

Page 18: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Various numbers of steps can be taken. The reference velocities can be chosen at random, as long as ateach step the velocity is decreasing. An example is given in Figure 2.7. Here, 10 steps are taken. Thepeak velocities are randomly decreasing with a factor between 0% and 50%, except for the first and thelast step.The first reference velocity is chosen equal to 3.99 m/s, which is slightly smaller than the initial ve-locity of 4 m/s. This results in a short time interval before the first step is taken. A time interval ofapproximately 0.018 seconds, as can be seen in the zoomed area depicted at the top of the figure. Thelast reference velocity is chosen equal to 0 m/s.

Figure 2.7: The actual cartesian velocity v and the desired peak velocities, vref for 10 steps

The only side note is that for both simulations, the peak velocity at the last step has a small error fromzero. This is due to numerical errors. When the kinetic energy K is close to zero, this results in abigger error for the velocity v, since K and v are quadratically dependent:

K =1

2mv2 (2.18)

Example given: if the kinetic energy is not 0 J but 0.00005 J due to numerical errors, then the velocityequals 0.01 m/s, for a mass of 1 kg.Except for the small numerical error at the balanced configuration, the simultation results are as ex-pected.

Formerly, the FPE method was used for 1-step push recovery of a 2D biped. By extending this method,velocity-controlled 2D bipedal walking is achieved. Multiple steps can be taken. However, for eachbiped step, impact occurs and the kinetic energy reduces. After the initial push, no extra energy can beadded to the system because the legs are massless. Therefore, the reference velocity must decrease eachconsecutive biped step. Keeping this rule in mind, random reference velocities can be chosen and goodresults are obtained for various numbers of steps. Simulations show that the biped velocity is equalto the desired velocities at the peak configurations. Prescribing these velocities ensures a controlledwalking gait, because the biped motion is limited to the 2D plane.

18

Page 19: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Chapter 3

A 3D biped with massless legs

In this chapter, the 2D biped model used in Chapter 2 is extended to a 3D biped model. First, the3D model is presented and the equations of motion are derived. Also, the range for foot placement isderived.Next it is shown, that the FPE algorithm is not applicable for the 3D nonlinear inverted pendulummodel. Therefore a different estimator is derived, called the foot placement predictor (FPP).Simulations are made to show that the biped can follow a reference track. To achieve gait control, theerror must be bounded over infinite time, even though individual steps may diverge from the trajectory.

3.1 Derivation of the model

Consider the 3D biped model in Figure 3.1. The legs are again assumed to be massless.

z0

x0

φ

θ

L

L

f

m

b

χ

βy0

Figure 3.1: Schematic of 3D biped model

19

Page 20: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

The position of the mass is described by the generalized coordinates q = [φ, χ]. Contact of the foot fwith the ground can be achieved at any desired moment, using the joint angles [θ, β].

The equations of motion for this inverted pendulum model are found from the Euler-Lagrange equa-tions:

d

dt

(∂L∂qj

)=∂L∂qj

(3.1)

Here, j = 1, 2 represents the jth degree of freedom and the Lagrangian can be written as:

L = T − V =1

2m(Lφ)2 +

1

2m(L sin(φ)χ)2 −mgL cos(φ) (3.2)

This results in the equations of motion:

φ = sin(φ) cos(φ)χ2 +g

Lsin(φ) (3.3)

χ =−2φχtan(φ)

(3.4)

The state is equal to x = [x1 x2 x3 x4]> = [φ χ φ χ]>. The derivative of the state can be written as:

d

dt

x1x2x3x4

=

x3x4

sin(x1) cos(x1)x24 +

gL sin(x1)

−2x3x4/ tan(x1)

(3.5)

3.2 Foot placement

For the 3D model, contact of the foot f with the ground can take place at any desired moment usingthe joint angles [θ, β]. The moment of impact is predefined to take place when the mass height is equalto 95 cm. Since the swing leg has no mass, it is only necessary to calculate the foot placement at thisparticular moment.

The foot touches the ground at zero height, giving θ = π−2φ. However, the foot placement can still beanywhere on a circle of radius r = L sin(φ) from mass m. See Figure 3.2a for a top view of the possiblepre-impact foot locations.The angle τ is the angle in the xy-plane between the swing leg and the pre-impact velocity vector v−.Also note that the velocity vector is not necessary in the same direction as the stance leg; σ can bedifferent from χ.

20

Page 21: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

A different frame can be used to express the foot position with respect to the velocity vector v. Frame(xv, yv) is found by rotating the original frame (x, y) about axis z with angle σ and translating the frameto the position of m, see Figure 3.2b. Also, the range of the foot placement is reduced to −π/2 < τ <π/2, thereby ensuring that the foot is always placed in the right half plane of frame (xv, yv).

m

y

x

χ

β

b

f

τ

σ

v−

r

r

(a) Range of foot placement at pre-impactconfiguration

m

y

xb

f

τ

σ

v

yv

xv

(b) Introduction frame (xv,yv) and a re-duced range for foot placement

Figure 3.2: Range for foot placement

When, at the moment of impact, the foot is placed on the left side of the pre-impact velocity vector v−,the mass will move to the right side of vector v− after the impact (and viceversa). This means that whenmultiple steps are taken with 0 < τ < π/2, the biped will make a curve to the right. On the other hand,when multiple steps are taken with −π/2 < τ < 0, the biped will make a curve to the left.Figure 3.3a gives an illustration of the 3D biped making a curve. By placing the foot on the right sideof the velocity vector for three consecutive steps, the biped makes a curve to the left. The result iscomparable with a sprinter leaning in a curve while running, see Figure 3.3b.

(a) Biped steps to walk a curve (b) Sprinter running a curve

Figure 3.3: Biped and human making a curve

21

Page 22: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

3.3 FPE not applicable

The FPE is based on energy conservation during a step. The FPE is a point on the ground where thebiped has to step such that, when its center of mass reaches the peak configuration, all its energy hasbeen converted into the peak potential energy plus a desired peak kinetic energy. For the 2D model it isshown that the FPE principle can be used to control the velocity of the biped at the peak configuration,because the biped can only make a forward motion in the fixed 2D plane.

For the 2D model, the peak configuration is defined by φ = 0. For the 3D model however, the peakconfiguration cannot be defined by a fixed configuration. However, it can be informally defined:

The peak configuration of the 3D biped, is the state of the biped after stepping, when the height of the massposition reaches a maximum.

The peak configuration depends on the stepping location and on the post-impact state of the biped.This means that multiple peak configurations are possible for a single stepping location. It also impliesthat multiple peak configurations can exist that have the same, desired, peak kinetic energy. Therefore,controlling the peak velocities does not result in a predictable motion of the biped.

3.4 Introduction FPP

The biped is supposed to follow a prescribed reference path. The FPE principle, based on energy con-version after taking a step, can not be used to control the biped motion for the 3D model. Instead, adifferent foot placement estimator is derived, called the foot placement predictor (FPP). This algorithmis based on predicting the mass position m∗ at the peak configuration.

Figure 3.4 shows a top view of the biped’s position m, the predicted peak position m∗ and referencepath ref . The reference path is depicted as a straight line, but can have various shapes. The errorsdepend on the two positions on the reference path that have the shortest distance to m and m∗.The FPP algorithm is used to find the foot placement position for which the corresponding positionm∗ has the smallest distance and angle errors, as defined in the figure by e∗dis and e∗ang respectively.

m

m∗

eang

e∗disedis

v−

ref

e∗ang

Figure 3.4: Errors, topview

22

Page 23: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

The predicted errors e∗dis and e∗ang are controlled to zero using the ode15s solver in Matlab, in order toreduce the actual errors edis and eang also to zero.

3.5 Prediction for mass position m∗

For the 3D model, multiple peak configurations are possible, depending on the post-impact state of thebiped. It is difficult to find a realistic 3D impact-model. But even if the post-impact state is found, it isnot possible to analytically calculate the peak configuration.The peak configuration can only be found by numerically integrating the non-linear equations of mo-tion over time, with the post-impact state as initial condition. Integrating until the vertical velocity ofthe mass is equal to zero, will result in the peak configuration as the mass reaches its maximal height.This approach will result in running multiple simulations for every biped step in order to find the peakposition m∗ that best fit the trajectory during the overall simulation (smallest errors). Instead of run-ning simulations inside the simulation, a different approach is used.

The foot placement predictor, FPP, is based on a prediction of the mass position m∗. Using predictionsinstead of simulations, is a faster way to find a range of peak positionsm∗ that corresponds to the rangeof foot placement locations.

First, a range of possible peak positions m∗ is defined. The location and the size of the range dependon the stepping location and on the direction of the pre-impact velocity vector v−. Figure 3.5 shows thetop-view, side-view and back-view with respect to the (xv ,yv, zv) frame, for 3 different stepping anglesτ . The range of possible peak positions m∗ is illustrated by the solid line between the extremes m∗min

and m∗max.

Two extreme post-impact situations exist.In the first case, φ is and stays equal to zero after impact. Only χ remains, corresponding to a 2Dmotion in the (xv, yv) plane. Position m∗min is reached.In the opposite case, when χ is and stays equal to zero after impact, only φ remains. This correspondsto a 2D motion in the (xv, zv) plane and the upright standing configuration is reached. The latter isonly possible when foot placement f is in line with the pre-impact velocity vector v−, so the steppingangle τ = 0.For other stepping locations, with τ > 0, it is stated in section 3.2 that position m∗ will be at the rightside of vector v−. Therefore the range is on the right side of the pre-impact velocity vector, starting atposition m∗max. For negative stepping angles, the range of m∗ is mirrored with respect to vector v−.Position m∗ will be at the right side of vector v−.

It can be seen that the size of the range decreases for increasing angle τ . The range is of maximal sizefor τ = 0 and becomes a single point when τ reaches its maximal value τmax = π/2.

The position of m∗ on the range also depends on the foot placement angle τ .For the three different angles τ that are illustrated in Figure 3.5:

• τ = 0: m∗ = m∗max

• τ ≈ π/6: m∗min < m∗ < m∗max

• τ = π/2: m∗ = m∗min

23

Page 24: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

τ = 0

mf

v−m∗

max

m∗min

m

f

m∗max

m∗min

v−

yv

xv

zv

xv

m

f

v−

m∗min = m∗

max

τ

m∗min = m∗

max

m

f

v−

m

f

τ

v−

m

f

m∗max

m∗min

v−

m∗max

m∗min

zv

yv

τ ≈ π/6 τ = π/2

m

v−

f

m∗max

m∗min m

v−

f

m∗max

m∗min m

v−

f

m∗min = m∗

max

a) b) c)

d) e) f)

g) h) i)

Top view

Side view

Back view

Figure 3.5: Three relevant views for possible ranges based on the angle τ

The relation between τ and m∗ is not linear. The energy in the system has an important outcome onthe peak position m∗. For the initial conditions that are used in the simulations, a quadratic relation isfound. see Figure 3.6. Here the size of the range is normalized, since the distance between m∗min andm∗max will be different for every angle τ .

24

Page 25: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Figure 3.6: Estimated relation between τ and m∗

3.6 State transformation without impact

The FPP algorithm is based on the estimation of the mass position when the peak configuration isreached. For the FPP algorithm, the post-impact state is not required. However, to simulate the bipedmotion, a state transformation is required.The post-impact state x+ is related to the pre-impact state x− by functions u1, u2, u3 and u4:

φ+

χ+

φ+

χ+

=

u1(φ

−)u2(χ

−)

u3(φ−)

u4(χ−)

(3.6)

The generalized coordinates immediately following impact, [φ+, χ+] can be found from the geometryof the biped at impact.The magnitude of φ doesn’t change as the stance and swing leg both have length L. The transformationof coordinate χ is illustrated in Figure 3.7. Combined, this gives the coordinate transformation:[

φ+

χ+

]=

[φ−

π + β + χ−

](3.7)

The post-impact angular velocities [φ+, χ+] can be found using a 3D impact model. However, it is diffi-cult to find a realistic 3D impact model. It can not be composed of two independent 2D impact models,because the 2D models are coupled due to the nonlinear dynamics. Therefore, it is hard to derive themagnitude and direction of the velocity vector after impact.

25

Page 26: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

m

y0

x0

χ−

β

b

f

y1

x1

χ+

Figure 3.7: Coordinate transformation of χ at impact, top view

The decision is made to not simulate the impact. This means that the kinetic energy in the system isnot reduced when taking a step.A simple model is used to give the biped an upward motion after stepping: v+x

v+yv+z

=

v−xv−y−v−z

(3.8)

||v+|| = ||v−|| (3.9)

The direction of the velocity vector is reversed in the z-direction, see (3.8). The magnitude of the veloc-ity vector is not changed, see (3.9). Therefore, the kinetic energy is not reduced.

Using this model is not very realistic, because impact is not included. The advantage however is, thatit is easier to simulate multiple steps, since the total amount of energy in the system does not decreasefor every step that the biped takes.

3.7 Simulation approach using FPP

The equations of motion from (3.5) are implemented in Matlab and numerically integrated. An eventfunction on the mass height states when the biped takes a step: when the mass height is at h = 0.95m.Foot f touches the ground as θ = π − 2φ. At this moment, the foot placement can still be anywhereon a circle of radius r = Lsin(φ), as angle β is undefined. This range is reduced and expressed as[τmin < τ < τmax], with τ being the angle of the swing leg with respect to the pre-impact velocity vectorv−, as seen in Figure 3.2.

Depending on the stepping location on this foot placement range, the 3D biped can reach differentpeak configurations. The peak configuration is the state of the biped after stepping, when the height ofthe mass position reaches a maximum. The mass position at the peak configuration is called m∗. So,

26

Page 27: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

position m∗ depends on angle τ .

When, for every angle τ , peak position m∗ is found, a choice can be made to which stepping angleresults in the best peak position m∗. Here, the best position is defined as position m∗ which has thesmallest errors e∗dis and e∗ang with respect to a predefined reference path. When these errors reduce tozero, the actual errors for position m will also reduce to zero, as seen in Figure 3.4.

For every angle τ on the foot placement range, position m∗ should be found. It is possible to calculateposition m∗ exactly by numerically integrating the equations of motion over time, with the post-impactstate of the biped as initial condition, until the mass reaches a maximal height. However, this is not inthe scope of this research. A faster method is used, based on a prediction for position m∗. The methodis called the foot placement predictor, FPP.

Based on the geometry of the biped, the FPP method states that for positive τ , m∗ should be anywhereon the range [m∗min < m∗ < m∗max]. The location and the size of the range depend on τ as illustratedin Figure 3.5. Position m∗min is reached for the extreme case that after impact, only angular velocity χremains. Position m∗max is reached for the extreme case that after impact, position m∗ is in the samedirection as vector v−. This means that only angular velocity φ remains when the stepping location isthe same direction as v−. For negative angles τ , the range for m∗ is mirrored with respect to v−.

For every angle τ , the position of m∗ on the corresponding range is predicted. For the initial conditionsthat are used in the simulations, a quadratic relation is found, as seen in Figure 3.6. For this relation,the size of the range is normalized, because the distance between m∗min and m∗max is different for everyangle τ .The stepping angle τ will be used that gives position m∗ with the smallest errors e∗dis and e∗ang. Theseerrors can be controlled using the ode15s solver. Repeating this for every biped step, should ensure thatthe biped follows the predefined path. The actual errors edis and eang must both equal zero to achieveexactly the desired biped motion.Since no impact model is used, the total energy in the system remains constant. Therefore, a highnumber of biped steps can be simulated.

3.8 Simulation results

Various simulations are done. First, only the distance error e∗dis is controlled. Next, only the angle errore∗dis is controlled. Remember that both errors result from a prediction of positionm∗, based on the FPPmethod. The effect on the actual errors, edis and eang must still be examined.

When edis = 0 and eang 6= 0, the biped is exactly on the reference path but the direction is not in thesame direction as the reference. The biped starts to move away from the reference.When eang = 0 and edis 6= 0, the biped moves in the same direction as the reference, but it may havean offset.

Finally, in order to control both errors, a relation between errors e∗dis and e∗dis is found. Multiple simu-lations are done to find the best result. This result is given for three different reference paths, to showthat the biped can follow the path with relatively small errors.

27

Page 28: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Distance control

First, the biped motion is simulated for 50 steps, controlling the error distance e∗dis only.Table 3.1 shows the simulation settings. These settings are also used for the upcoming simulations.

setting value unit description

n 50 - number of biped steps

θmin π/2 rad minimum of actuator angle θ

θmax 15π/16 rad maximum of actuator angle θ

τmin −π/4 rad minimum of foot placement angle τ

τmax π/4 rad maximum of foot placement angle τ

dt 0.01 s size of time step

Table 3.1: Simulation settings

x(t = 0) =

φ0χ0

φ0χ0

=

π/16

π/4 + π/820

(3.10)

The reference path is a straight diagonal line in the (x, y) plane. The initial condition of the biped isdefined by (3.10). At t = 0, the biped mass m is exactly above the reference path, but with a velocityvector that points away from the reference under an angle of π/8 radians.

The simulation results are given in Figure 3.8.

In Figure 3.8a, a top view of the biped path is given. The mass position m is depicted for every timestep. Therefore, the red dots appear as a red line in the figure. For each biped step, also the step locationand the predicted peak position m∗ are depicted.

The distance error is given in Figure 3.8b for both the predicted and the actual mass position. Theerror shows an oscillating motion as the biped exhibits overshoot with respect to the reference pathmultiple times during the 50 biped steps taken. Therefore, the distance error doesn’t go to zero. Theerror however reduces to a maximum of 10 cm.

Figure 3.8c shows the actual angle error eang. The angle error peaks when the biped crosses the refer-ence path (distance error is zero). The angle error is zero when the biped moves parallel to the referencepath (distance error peaks).The angle error is not controlled and has a maximum value of 0.2 radians.

28

Page 29: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

(a) Biped path and foot placement

(b) Distance errors (c) Angle error

Figure 3.8: Simulation result for distance control, 50 steps.

29

Page 30: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Angle control

Next, the ode15s solver is used to control the angle error e∗ang.The same parameter values, simulation settings and initial values are used. The only difference is thenumber of steps, which is set to n = 25.The result can be seen in Figure 3.9.

(a) Biped path and foot placement

(b) Distance error (c) Angle errors

Figure 3.9: Simulation result for angle control, 50 steps.

30

Page 31: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

In Figure 3.9a the biped track is shown. The biped starts to move in a parallel motion with respect tothe reference path. This is expected since only the angle error is controlled. It can be seen that after 5steps, the foot is placed left and right in an alternating sequence.

Figure 3.9b shows the actual distance error. The error reduces after 6 steps, which indicates that bipedtrack is not perfectly parallel to the reference path.The explanation is found in Figure 3.9c which shows the predicted and actual angle error. The negativeangle errors are slightly bigger than the positive angle errors.

Distance and Angle control

The errors e∗dis and e∗ang can not be separately controlled, because they both depend on the same footplacement location.

Simply adding the two errors does not give the desired result. First the errors are normalized. Bytuning, a gain is found between the two errors, for which the best results are obtained. The anglecontrol is only added within the distance range of 10 cm. The total error can be defined as follows:

e∗tot = e∗dis for |e∗dis| ≥ 0.1 (3.11)

e∗tot = 5.8e∗dis

max(e∗dis)+

e∗angmax(e∗ang)

for |e∗dis| < 0.1 (3.12)

The ode15s solver is used to control the error e∗tot. The simulation results for three different referencepaths are given in Figure 3.10. Once again, the same parameter values, simulation settings and initialvalues are used. The only difference is the number of steps, which is set to n = 100.

Figures 3.10a, 3.10c and 3.10e show a top view of the biped path for three different references: a straightline, a curved line and a kinked line.Figures 3.10b, 3.10d and 3.10f give the corresponding distance error.

For each reference path, good results are obtained. The biped follows the path, as the distance errorreduces to a maximum of 5 cm. This is a small error, considering the length of the biped legs is 1 m.For the kinked reference, the error increases at the kink as the biped suddenly overshoots the referencepath. This is expected since the distance error is defined as the distance between the biped mass andthe nearest reference point.

31

Page 32: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

(a) Biped path for straight reference (b) Distance error of 3.10a

(c) Biped path for curved reference (d) Distance error of 3.10c

(e) Biped path for kinked reference (f) Distance error of 3.10e

Figure 3.10: Simulation result for distance and angle control, 100 steps.

32

Page 33: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Chapter 4

Conclusions and Future Work

The main goal in the research field of bipedal humanoid robots, is to achieve dynamically stable, ef-ficient and human-like bipedal walking. Current foot placement strategies are limited to 1-step pushrecovery or restricted to bipeds with linear dynamics. However, it is expected that gait control can beachieved by proper foot placement, both for 2D and 3D biped models with nonlinear dynamics.

For the 2D biped model, an extension of the foot placement estimator (FPE) is used. The FPE methodis based on energy conservation and can be used for 1-step push recovery. The FPE method is extendedto control the velocity of a 2D biped model at the upright standing configurations. Because of thisextension, it is possible to achieve a controlled multi-step walking motion.The FPE extension is only possible for a biped model with massless legs, because the total energy afterthe impact must remain constant in order to apply the energy balance. This also means that no energycan be added to the system. Since impact is taken into account, the desired reference velocities musttherefore be decreasing for every consecutive biped step.Keeping this rule in mind, random reference velocities can be chosen and good results are obtainedfor various numbers of steps. Simulations show that the biped velocity is equal to the desired velocitiesat the peak configurations. Prescribing these velocities ensures a controlled walking gait, because thebiped motion is limited to the 2D plane.

For the 3D biped model, a new foot placement strategy is introduced, called the foot placement predictor(FPP). Other strategies, such as capture points, only work for biped models with linear dynamics. TheFPP method is based on a prediction of the mass position at the peak configuration after taking a step.For a 3D biped model, different peak configurations exist. Therefore, the peak configuration is definedas the state of the biped after stepping, when the height of the mass position reaches a maximum. Thecorresponding mass position m∗ is predicted, using the FPP method.The FPP method couples positionm∗ with the stepping angle τ . For every stepping angle, two extreme-case post-impact situations define a range of possible locations for m∗. The size of the range is normal-ized for every stepping angle in order to find a relation between the location of m∗ on this range andthe stepping angle τ . For the initial conditions that are used in the simulations, a quadratic relation isfound. Next, the foot placement is controlled such, that the corresponding distance and angle errors ofposition m∗, with respect to a predefined reference path, are closest to zero.When only the distance error is controlled, the biped exhibits overshoot with respect to the referencepath. When only the angle error is controlled, the biped moves in the same direction as the referencepath, but has an offset. In order to control both errors, a relation between the distance and angel erroris found that gives the best simulation results. The errors can not be controlled separately, because they

33

Page 34: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

both depend on the same foot placement location.Simulation results are presented for three different reference paths: a straight line, a curved line and akinked line. As expected, the position error increases when the biped is pushed away from the path, orwhen a sudden kink in the path appears. After these disturbances, the error reduces to a maximum of5 cm. This is a relatively small error, keeping in mind the length of the biped legs is 1 m. Stability is notanalytically demonstrated, but the position error appears to be bounded during the time of simulation.

This research has shown that, in simulation, foot placement strategies can be used to achieve gait con-trol, for both a 2D biped and a 3D biped model with nonlinear dynamics. The next research step is todesign a more robust foot placement controller, for a 3D biped model that does not have massless legsand takes impact into account.The results of this project are beneficial for dynamical analysis, simulation and gait control of bipedalrobots. It can help getting real humanoids, such as the humanoid robot TUlip [3], to achieve human-like gaits and to dynamically locomote through unstructured environments.

34

Page 35: Gait control by foot placement for humanoid robots · 2013. 3. 20. · Abstract Humanoid robots are used as a research tool to understand bipedal locomotion. When pushed, a hu-manoid

Bibliography

[1] B. Choi (editor): Humanoid Robots, In-Tech, Rijeka, Croatia, 2009.

[2] B. Siciliano and O. Khatib (editors): Handbook of Robotics, Springer, Berlin, 2008.

[3] Humanoid robot TUlip, for information visit www.techunited.nl/tulip

[4] D. Wight, E. Kubica and D. Wang, Introduction of the foot placement estimator: a dynamic measure ofbalance for bipedal robotics, Journal of Computational and Nonlinear Dynamics, pp 1-9, 2008.

[5] P. van Zutven, Foot placement for planar bipeds with point feet, IEEE International Conference onRobotics and Automation, pp 983-988, 2012.

[6] T. Assman, Balance recovery of a planar biped using the Foot Placement Estimator, Traineeship reportDC 2010.007, Eindhoven, 2010.

[7] T. Koolen, T. de Boer, J. Rebula, A. Goswami and J. Pratt, Capturability-based analysis and control oflegged locomotion, The International Journal of Robotics Reseach, pp 1117-1133, 2012.

35