Humanoid Push Recovery: Capture Point, DCM and Step Placement

Can a humanoid stop after a push? Calculate capture point and DCM motion, finite-foot N-step capture regions, touchdown deadlines and recovery foot placements.

#Capture point #DCM #Humanoid #N-step capturability #Push recovery #Step placement

A push changes a humanoid robot’s momentum almost instantly. The robot may recover by shifting its center of pressure within the stance foot, or it may need one or more rapid steps. This capture point calculator answers the practical question: can the robot stop without stepping, and, if it must step, where should its feet land and how soon?

Engineers and students can use it to explore humanoid push recovery, compare stepping capabilities, and check the reduced dynamics behind a balance controller. Enter the robot’s mass and constant center of mass height, its horizontal position and velocity immediately before the push, and the horizontal impulse. Impulse is force integrated over time, in N·s; use a measured impulse or the area under a short force pulse. The direction is measured from forward x toward left y.

Set the physical foot dimensions and a center of pressure edge inset. The inset reserves space between the allowed pressure point and the physical edge. Then enter the maximum distance between successive stance ankles, the minimum interval between steps, and the delay from the push to the first touchdown. All feet keep the same forward orientation. The initial stance ankle is the origin.

The results distinguish capture without stepping, capture within the selected step budget, and states requiring more steps or lying beyond finite-step capture. The instantaneous capture point is the horizontal divergent component of motion, or DCM, for this constant-height model. Its location combines both center of mass position and velocity; judging balance from position alone misses the effect of momentum.

The foot plan shows reachable first landing boundaries for one, two and the selected number of total recovery steps. A boundary can be absent when that capture region is empty. These capture regions are nested inside the dashed maximum-step circle. These are landing locations for the chosen first touchdown delay, allowing any admissible constant center of pressure before touchdown. The numbered footprints and touchdown table give one constructive recovery sequence. Play the time slider to follow the DCM and center of mass through that sequence.

The timing envelope shows how delay reduces the distance beyond the usable foot from which recovery remains possible. The latest touchdown result applies to the selected total step budget, with later steps at the minimum interval. Negative timing slack means the first step must be faster.

This tool implements the linear inverted pendulum and finite-foot capturability method. It does not model hip or arm angular momentum, finite push duration, foot collisions, terrain obstacles, friction limits, actuator torque limits, double-support transfer, or swing-leg trajectories. Ankle displacement divided by time would not be a swing-foot speed prediction. Validate reachable foot locations and timing in a whole-body model before using them in robot control.

How it is calculated

The impulse is applied at the CoM: Δv=J/m\Delta\mathbf v=\mathbf J/m. With ω=g/h\omega=\sqrt{g/h}, the horizontal LIP equations are c¨=ω2(c−p)\ddot{\mathbf c}=\omega^2(\mathbf c-\mathbf p), ξ=c+c˙/ω\boldsymbol\xi=\mathbf c+\dot{\mathbf c}/\omega, and ξ˙=ω(ξ−p)\dot{\boldsymbol\xi}=\omega(\boldsymbol\xi-\mathbf p). Constant CoP intervals are integrated analytically, including the stable CoM component. These are the constant-height horizontal specialization of Englsberger et al. (2015), and Pratt et al. (2006), pp. 3–4 of the attached paper.

Koolen et al., attached author manuscript pp. 7–15, provide step-time/length constraints, equivalent constant CoP, and backward N-step capturability. This tool extends that construction to identical, fixed-yaw rectangular feet. Let B=[−a,a]×[−b,b]B=[-a,a]\times[-b,b] be the inset CoP rectangle, LL the ankle step limit, q=e−ωTminq=e^{-\omega T_{min}}, and D(R)\mathbb D(R) a disk of radius RR. The post-touchdown capture sets obey

C0=B,Cn=(1−q)B⊕q(Cn−1⊕D(L))=B⊕D(Rn),C_0=B,\quad C_n=(1-q)B\oplus q(C_{n-1}\oplus\mathbb D(L))=B\oplus\mathbb D(R_n),
Rn=Lq(1−qn)/(1−q).R_n=Lq(1-q^n)/(1-q).

Here ⊕\oplus denotes a Minkowski sum. This rectangular-set derivation is supplied here; it does not replace the foot by its circumscribed circle.

For the selected first delay TT, capture within n≥1n\ge1 steps requires d(ξ0,B)≤e−ωT(L+Rn−1)d(\boldsymbol\xi_0,B)\le e^{-\omega T}(L+R_{n-1}). No step is needed exactly when ξ0∈B\boldsymbol\xi_0\in B. Equality at the infinite-step limit is not finite-step capture. The latest first touchdown follows by solving the finite-budget inequality for TT.

The feasible first ankle locations satisfy ∥s∥≤L\|\mathbf s\|\le L and d(s,eωT(ξ0−B))≤Rn−1d(\mathbf s,e^{\omega T}(\boldsymbol\xi_0-B))\le R_{n-1}. The map plots these nested sets. The suggested sequence keeps CoP closest to DCM and steps maximally toward the residual until the final shorter step; it attains the minimum count within this model.

Assumptions

Level ground; constant CoM height; a point body with massless legs and feet; no centroidal angular momentum. A horizontal impulse acts at time zero and changes velocity without changing position. Each stance permits any CoP inside the inset rectangular foot. CoP may move instantaneously, and touchdown switches support without changing CoM position or velocity. Feet retain their initial yaw. All horizontal ankle displacements up to the circular reach limit are permitted; no side preference or obstacle map is imposed. The first delay is at least the minimum step interval, and later steps use that interval. Zero foot dimensions with zero inset give the point-foot reference limit.

Where it applies

This is a reduced-order capture calculation, not a whole-body balance controller. Reachability depends only on ankle displacement, so results omit foot collisions, leg crossing, joint configuration, finite swing acceleration, friction, ankle torque/slew limits and terrain. The CoP inset is geometric reserve, not a measured control robustness margin. The displayed sequence uses the boundary of that inset rectangle, and later touchdown times assume the requested minimum interval is achievable.

The no-step verdict concerns the inset support rectangle of the current stance foot, not a two-foot support polygon. Capture means asymptotic stopping: playback ends six LIP time constants after the last touchdown. An infeasible or over-budget case has no touchdown schedule; playback then shows the initial divergence under the best stationary-foot CoP. A dash for a touchdown deadline means none is needed, and dashes in the schedule mean no plan was generated.

Minimum counts, deadlines and footprints are analytic and are not quantized by the picture. Isolated one-step landing points and zero-width support segments are drawn analytically and clipped exactly to the step-reach circle. Landing regions with area use a 121 × 101 signed-distance grid; very thin feasible slivers near the reach boundary may not be visible. Trajectory curves use 301 samples and timing curves 151. No time integration or grid approximation enters reported capture margins or touchdown coordinates. The LIP inset in the drawing is schematic and the foot plan uses a common horizontal scale. The published three-dimensional DCM paper also treats varying height and leg-force shaping, which are outside the constant-height LIP method used here.

References

  • Pratt, Carff, Drakunov and Goswami (2006), Capture Point: A Step toward Humanoid Push Recovery, Humanoids, pp. 200–207. DOI: https://doi.org/10.1109/ICHR.2006.321385. Open manuscript: https://www.cs.cmu.edu/~cga/legs/Pratt_Goswami_Humanoids2006.pdf
  • Englsberger, Ott and Albu-Schäffer (2015), Three-Dimensional Bipedal Walking Control Based on Divergent Component of Motion, IEEE Transactions on Robotics 31(2), pp. 355–368. DOI: https://doi.org/10.1109/TRO.2015.2405592
  • Koolen, de Boer, Rebula, Goswami and Pratt (2012), Capturability-based analysis and control of legged locomotion, Part 1: Theory and application to three simple gait models, IJRR 31(9), pp. 1094–1113. DOI: https://doi.org/10.1177/0278364912452673. Attached author manuscript (November 2011): https://ambarish.com/paper/2012_Capturability_IJRR_Part1.pdf

Inputs

InputSymbolUnitDefault
Robot massmkg75
CoM heighthm0.85
Gravityg0m/s^29.81
Initial CoM x
All ground coordinates are relative to the initial stance ankle.
x0m0
Initial CoM yy0m0
Initial velocity xvx0m/s0.05
Initial velocity yvy0m/s0
Push impulseJ_pushN*s70
Push direction
+x is forward; +y is left; positive angles turn from x toward y.
alpha_pushdeg20
Foot lengthfoot_lm0.24
Foot widthfoot_wm0.13
CoP edge inset
Shrinks the available CoP rectangle inward from each physical foot edge.
insetm0.01
Maximum step length
Maximum displacement between successive stance ankles in any horizontal direction.
L_maxm0.55
Minimum step intervalT_mins0.3
First touchdown delay
Time from the impulse to the first touchdown, including response and swing.
T_firsts0.38
Step budgetN_budget4
Recovery timet_plays0.24

Results

With the default inputs above, the calc gives:

ResultValue
LIP recoveryStepping can capture
Minimum recovery steps2
Capture point x0.273 m
Capture point y0.094 m
No-step capture margin-0.167 m
First landing x0.535 m
First landing y0.128 m
Latest touchdown for budget0.477 s
Touchdown timing slack0.097 s
Budgeted capture margin0.065 m

Checked against sources

Each case below was calculated by this calc and agrees with the value from its source (within the tolerance where one is shown).

Koolen Figure 4: 2D capture point

Source: Koolen et al. (2012), DOI 10.1177/0278364912452673, author manuscript Figure 4 (p. 9) and Figure 6 (p. 11). Published unit-magnitude model parameters and plotted initial state give ICP (0.3, 0.1); Figure 6 shows a nonempty one-step region. Checks transfer of the published vector example and its single-step feasibility.

Inputs: Robot mass = 1 kg; CoM height = 1 m; Gravity = 1 m/s²; Push impulse = 0 N·s; Push direction = 0 deg; Foot length = 0 m; Foot width = 0 m; CoP edge inset = 0 m; Maximum step length = 1 m; Minimum step interval = 1 s; First touchdown delay = 1 s; Recovery time = 0 s; Initial CoM x = -0.4 m; Initial CoM y = 0.4 m; Initial velocity x = 0.7 m/s; Initial velocity y = -0.3 m/s; the others as above.

ResultSourceThis calc
Capture point x0.3 m0.3 m
Capture point y0.1 m0.1 m
Minimum steps for selected timing1 ± 0.0011

Koolen Figure 5: three-step recovery

Source: Koolen et al. (2012), DOI 10.1177/0278364912452673, author manuscript Figure 5, p. 10. The initial ICP distance read from the published plot is approximately 0.54 (about ±0.01); the caption independently identifies a three-step-capturable initial state with minimum step time and maximum step length both one. CoM position and velocity here are chosen only to reproduce that plotted ICP distance; the full plotted CoM trajectory is not claimed.

Inputs: Robot mass = 1 kg; CoM height = 1 m; Gravity = 1 m/s²; Push impulse = 0 N·s; Push direction = 0 deg; Foot length = 0 m; Foot width = 0 m; CoP edge inset = 0 m; Maximum step length = 1 m; Minimum step interval = 1 s; First touchdown delay = 1 s; Recovery time = 0 s; Initial velocity x = 0.54 m/s; the others as above.

ResultSourceThis calc
Minimum steps for selected timing33

Related Resources

Responses

Your email address will not be published. Required fields are marked *

L ading...