This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

Bipedal Walking on Constrained Footholds:
Momentum Regulation via Vertical COM Control

Min Dai, Xiaobin Xiong, and Aaron Ames The authors are with the California Institute of Technology. {mdai, xxiong, ames}@caltech.edu
Abstract

This paper presents an online walking synthesis methodology to enable dynamic and stable walking on constrained footholds for underactuated bipedal robots. Our approach modulates the change of angular momentum about the foot-ground contact pivot at discrete impact using pre-impact vertical center of mass (COM) velocity. To this end, we utilize the underactuated Linear Inverted Pendulum (LIP) model for approximating the underactuated walking dynamics to provide the desired post-impact angular momentum for each step. Desired outputs are constructed via online optimization combined with closed-form polynomials and tracked via a quadratic program (QP) based controller. This method is demonstrated on two robots, AMBER and 3D Cassie, for which stable walking behaviors with constrained footholds are realized on flat ground, stairs, and randomly located stepping stones.

I INTRODUCTION

Humans can traverse a variety of terrain types with ease, including: flat surfaces, ascending and descending stairs, and discrete stepping stones with height variations. One of the central goals of the bipedal walking robot community is to develop humanoid robots that can locomote on these diverse terrain types with the ease and dynamic stability displayed by humans—this requires locomoting in environments with constrained footholds. In the context of fully-actuated humanoids, such problem can be realized by specifying desired center of pressure (COP) trajectories utilizing reduced order zero-moment-point models [1, 2, 3, 4] under the assumption of ankle actuation. However, these methods do not generalize to walking with limited contact area [5] on the ground, where the COP cannot be changed even in the presence of the ankle actuation. The result is that the robot becomes underactuated [6, 7, 8], thus motivating the study of underactuated walking with constrained footholds.

Underactuated walking is primarily described as a periodic motion where orbital stability is characterized by the eigenvalues of Poincaré map [9, 10] associated with the limit cycle. Using this definition of stability, many approaches for generating stable walking behaviors have used offline optimization [11, 12]. One example is the hybrid zero dynamics (HZD) framework [9, 7, 13] where the “stepping stones” problem has been studied. Previous work with a gait library [14], and control barrier function (CBF) [15, 16, 17] and learning [18] to modulate the foot placement [19] has had some success. However, these methods work favorably for small perturbations of the nominal periodic orbits that are designed to be exponentially stable within their regions of attraction. Despite interpolating among gait library and implementing CBF constraints improved the success rate notably, it perturbs the system away from the HZD manifold and thus breaks the formal guarantee of stability.

Refer to caption
Figure 1: 3D robot Cassie walking upstairs, downstairs, and on random stepping stones.

A philosophically different approach to generate underactuated walking is based on the approximation of the underactuated dynamics with reduced order models (ROMs) [20, 21, 22, 23, 24, 25], which stabilize the robot COM dynamics largely using foot placement planning. For instance, [24, 26] apply Linear Inverted Pendulum (LIP) [27] model to approximate the underactuated robot dynamics. Stepping controllers [23, 28, 26] that change the desired step sizes are then synthesized in closed-form to stabilize the horizontal COM states. However, these approaches can not be applied for walking with constrained footholds.

The non-periodic nature of walking on constrained footholds, and the need to precisely place the feet on these footholds in a dynamic fashion, prevents the application of existing methods. The goal is to develop a new methodology that enables dynamic constrained-foothold locomotion, with reactive online planning, by combining the strengths of the two aforementioned approaches into a unified framework. The key idea in achieving this goal is to stabilize the underactuated dynamics of the robot—expressed in the COM horizontal coordinates—and control the hybrid dynamics via the discrete dynamics corresponding to the footstrike.

To embed the walking behaviors generated on the underactuated dynamics, we use the underactuated LIP model to approximate the continuous dynamics of the robot during stance, which determines the step duration and desired momentum at the beginning of each step. The desired vertical COM velocity is then realized via online recursive optimization on the vertical COM trajectory. The desired trajectories of the torso configuration and the swing foot are constructed with closed-form polynomials. Finally, a task-space quadratic program based feedback controller is formulated for tracking the desired trajectory. To demonstrate the generality of the proposed approach, it is realized on two robots with different morphology—AMBER and Cassie—wherein both robots can walk stability in various scenarios with constrained footholds.

II Preliminaries on Dynamics of Walking

This section provides the technical preliminaries on the underactuated robot dynamics.

Hybrid Dynamics. Let QQ be the nn-dimensional configuration space for a robot in the floating-base convention where nn is the unconstrained degree of freedom. A set of generalized coordinates is given by q=[pb;ϕb;qb]Q=SE(3)×Qbq=[p^{b};\phi^{b};q^{b}]\in Q=SE(3)\times Q^{b}, where pbp^{b} and ϕb\phi^{b} is the position and orientation in Cartesian coordinates of the body frame attached to a fixed location on the robot, and qbq^{b} is a set of body coordinates.

Bipedal walking considered in this work is characterized as a single-domain hybrid control system [3, 7]. The continuous swing phase is modeled as a single support phase (SSP), assuming that the robot is subject to contact holonomic constraints with the stance foot and the ground. The Lagrangian dynamics of the robot can be written as:

D(q)q¨+H(q,q˙)=Bτ+Jc(q)TF\displaystyle D(q)\ddot{q}+H(q,\dot{q})=B\tau+J_{c}(q)^{T}F (1)
Jc(q)q¨+J˙c(q,q˙)q˙=0\displaystyle J_{c}(q)\ddot{q}+\dot{J}_{c}(q,\dot{q})\dot{q}=0 (2)

where D(q)n×nD(q)\in\mathbb{R}^{n\times n}, H(q,q˙)nH(q,\dot{q})\in\mathbb{R}^{n}, Bn×mB\in\mathbb{R}^{n\times m} are the inertia matrix, the collection of centrifugal, Coriolis and gravitational forces, and the actuation matrix, respectively. τm\tau\in\mathbb{R}^{m} is the input torque, Jc(q)n×hJ_{c}(q)\in\mathbb{R}^{n\times h} is the Jacobian matrix of the holonomic constraint associated with contact, and FhF\in\mathbb{R}^{h} is the corresponding constraint wrench.

Let 𝐱=[qT,q˙T]T𝒯𝒬\mathbf{x}=[q^{T},\dot{q}^{T}]^{T}\in\mathcal{TQ}, we define the domain (where the continuous dynamics evolve) and guard for the robot as:

𝒟\displaystyle\mathcal{D} ={𝐱=[qT,q˙T]T𝒯𝒬:zsw(q)zground0}\displaystyle=\{\mathbf{x}=[q^{T},\dot{q}^{T}]^{T}\in\mathcal{TQ}:z_{\text{sw}}(q)-z_{\text{ground}}\geq 0\} (3)
𝒮\displaystyle\mathcal{S} ={𝐱=[qT,q˙T]T𝒯𝒬:zsw(q)zground=0}\displaystyle=\{\mathbf{x}=[q^{T},\dot{q}^{T}]^{T}\in\mathcal{TQ}:z_{\text{sw}}(q)-z_{\text{ground}}=0\} (4)

where zswz_{\text{sw}} denotes the vertical swing foot position and zgroundz_{\text{ground}} is the height of the ground. As a notation clarification, we use xx and zz to denote the position of a frame relative to the stance foot in the corresponding coordinate. The subscripts represent the referred coordinate frames, i.e. ()com(\cdot)_{\text{com}} for COM and ()sw(\cdot)_{\text{sw}} for swing foot. The robot state then undergoes a discrete change given by an impact equation [29]:

𝐱+\displaystyle\mathbf{\mathbf{x}}^{+} =Δ(𝐱)if 𝐱𝒮\displaystyle=\Delta(\mathbf{x}^{-})\quad\text{if }\mathbf{x}^{-}\in\mathcal{S} (5)

where superscripts ()(\cdot)^{-}, ()+(\cdot)^{+} are used to indicate pre- and post-impact states, respectively. The impact is assumed to be instantaneous and plastic [7].

Underactuated Dynamics. We develop a model of the underactuated dynamics associated with the sagittal dynamics, i.e., for 2D walking models, with one degree of underactuation at the foot-ground contact —this will be later embedded into 3D models of walking. The underactuated coordinates, ζ\zeta, are selected to be orthogonal to the actuation vector [24, 9], e.g., ζ(q,q˙)=[xcom(q),Ly(q,q˙)]T\zeta(q,\dot{q})=[x_{\text{com}}(q),L_{y}(q,\dot{q})]^{T}, where Ly(q,q˙)L_{y}(q,\dot{q}) is the yy-component of mass-normalized angular momentum about the stance foot as the walking is in xzx-z plane. LyL_{y} can be calculated using angular momentum transfer formula:

Ly=zcom(q)x˙com(q,q˙)xcom(q)z˙com(q,q˙)+Lcomy,\displaystyle L_{y}=z_{\text{com}}(q)\dot{x}_{\text{com}}(q,\dot{q})-x_{\text{com}}(q)\dot{z}_{\text{com}}(q,\dot{q})+L^{y}_{\text{com}}, (6)

where LcomyL^{y}_{\text{com}} is the yy-component of robot’s mass-normalized centroidal momentum [30]. Given the lack of actuation at the stance foot, the angular momentum about the stance leg end is only affected by gravity. Using Newton’s second law, the continuous evolution is given by L˙y=gxcom\dot{L}_{y}=gx_{\text{com}}.

The impact model assumes instantaneous lift-off of the pre-impact stance foot; thus, contact forces are only applied at the pre-impact swing foot. The angular momentum about the swing foot is conserved. As the stance and swing leg alternates during impact, post-impact Ly+L_{y}^{+} is the angular momentum w.r.t. the swing foot before impact. Rearranging Eq. (6) and adding the reset map, we have the following hybrid model for the robot’s underactuated dynamics:

𝒵={{x˙com=1zcom(Ly+xcomz˙comLcomy)L˙y=gxcom𝐱𝒟𝒮{xcom+=xcomxswLy+=Ly+xswz˙comzswx˙com𝐱𝒮\mathcal{HZ}=\begin{cases}\begin{cases}\dot{x}_{\text{com}}=\frac{1}{z_{\text{com}}}(L_{y}+x_{\text{com}}\dot{z}_{\text{com}}-L_{\text{com}}^{y})\\ \dot{L}_{y}=gx_{\text{com}}\end{cases}\mathbf{x}\in\mathcal{D\setminus S}\\ \begin{cases}x_{\text{com}}^{+}=x_{\text{com}}^{-}-x_{\text{sw}}^{-}\\ L_{y}^{+}=L_{y}^{-}+x_{\text{sw}}^{-}\dot{z}_{\text{com}}^{-}-z_{\text{sw}}^{-}\dot{x}_{\text{com}}^{-}\\ \end{cases}~{}\mathbf{x}^{-}\in\mathcal{S}\end{cases} (7)

where the dependencies on qq, q˙\dot{q} are dropped for simplicity.

III Continuous Dynamics Approximation via LIP

Refer to caption
Figure 2: (a): An illustration of the LIP model on an inclined surface with degree α\alpha. The vertical distance z~com\tilde{z}_{\text{com}} is constant. (b): State-space phase portrait for the underactuated LIP dynamics.

Dynamics. We consider the LIP model walking on a virtual slope connecting two consecutive discrete footholds with degree α\alpha. The point mass is assumed to move in parallel to the virtual slope under leg forcing, with constant vertical distance z~com\tilde{z}_{\text{com}} (Fig. 2(a)). Using zcom=tan(α)x+z~comz_{\text{com}}=\text{tan}(\alpha)x+\tilde{z}_{\text{com}}, we can retrieve the canonical dynamics for the LIP model [31]:

x¨com=gz~comxcom=:λ2xcom.\displaystyle\ddot{x}_{\text{com}}=\frac{g}{\tilde{z}_{\text{com}}}x_{\text{com}}=:\lambda^{2}x_{\text{com}}. (8)

Although the classic LIP model uses [xcom;x˙com][x_{\text{com}};\dot{x}_{\text{com}}] as the state, to better resemble the robot’s underactuated dynamics and utilize the closed-form impact equation for the robot’s angular momentum in Eq. (7), we choose angular momentum about the stance foot as the second state. See [32] for a detailed comparison on the choice of coordinates. Given LIP has no centroidal angular momentum, applying Eq. (6), the angular momentum about the stance leg of the LIP becomes:

Ly=zcomx˙comxcomz˙com=z~comx˙com.\displaystyle L_{y}=z_{\text{com}}\dot{x}_{\text{com}}-x_{\text{com}}\dot{z}_{\text{com}}=\tilde{z}_{\text{com}}\dot{x}_{\text{com}}.

The state-space representation of LIP model dynamics can then be written as:

[x˙comL˙y]=[01z~comg0][xcomLy].\begin{bmatrix}\dot{x}_{\text{com}}\\ \dot{L}_{y}\end{bmatrix}=\begin{bmatrix}0&\frac{1}{\tilde{z}_{\text{com}}}\\ g&0\end{bmatrix}\begin{bmatrix}x_{\text{com}}\\ L_{y}\end{bmatrix}. (9)

Orbital Energy. First integral of motion of Eq. (8) leads to a conserved quantity called orbital energy [33, 34]:

E=(Lyz~com)2λ2xcom2.\displaystyle E=\left(\frac{L_{y}}{\tilde{z}_{\text{com}}}\right)^{2}-\lambda^{2}x_{\text{com}}^{2}. (10)

Geometrically, E>0E>0 corresponds to the quadrants with blue phase curves in Fig. 2(b). The top quadrant (shaded blue) is the area in the state space that results in forward walking. The orbital energy is an essential quantity as each orbital energy level describes a class of trajectories with different initial conditions and step duration.

Step Duration. For the LIP model, the pre-impact xcomx_{\text{com}} can be directly modulated by changing the step duration TT. Given the desired pre-impact xcomdesx_{\text{com}}^{des} and the initial conditions on xcomx_{\text{com}} and LyL_{y}, TT can be solved from the closed-form solution:

xcom(T)=cosh(λT)xcom(0)+1λz~comsinh(λT)Ly(0)=xcomdes.x_{\text{com}}(T)=\text{cosh}(\lambda T)x_{\text{com}}(0)+\textstyle\frac{1}{\lambda\tilde{z}_{\text{com}}}\text{sinh}(\lambda T)L_{y}(0)=x_{\text{com}}^{des}.

The solution TT of this equation depends on the location of the quadrant. For forward walking, we calculate the solution and denote it as the time-to-impact function:

T=TI(xcomdes,z~com,xcom(0),Ly(0)).\displaystyle T=T_{I}(x_{\text{com}}^{des},\tilde{z}_{\text{com}},x_{\text{com}}(0),L_{y}(0)). (11)

Remark: This LIP model is the canonical LIP [2] without ankle actuation, and the Hybrid-LIP [26] without the double support phase. It was also used in the capture point approach [23]. The use of the LIP in this paper is most similar to [26, 23, 35], which is for approximating the continuous dynamics of a walking robot.

IV Walking Synthesis

This section presents our main contribution: an online planning and control methodology to stabilize 𝒵\mathcal{HZ} for walking on constrained footholds. We focus on the stabilization of the underactuated dynamics of walking via designing appropriate desired output trajectories. The high-level philosophy is similar to that of the HZD and these using ROMs in [26, 28]. Assuming sufficient control capabilities of the robot actuators, reasonable desired trajectories of the actuated DoFs or functions of them (e.g., selected outputs) can be tracked by a low-level controller. The hybrid underactuated dynamics are determined by the desired output trajectories, and the continuum of walking can be described as maintaining the pre- or post-impact underactuated states in certain viable regions in the state space.

Refer to caption
Figure 3: (a) Illustration of the set of allowable post-impact states (shaded blue regions) in the state space to ensure forward walking for the LIP (a-LIP) and the robot (a-robot). (b) Illustrations of the output definitions on a planar robot. (c) An example of the desired swing foot trajectories.

This concept of viable regions can be illustrated using a reduced order model. For the LIP model, if the post impact xcom+<0x_{\text{com}}^{+}<0, Ly+>0L_{y}^{+}>0, and E+>0E^{+}>0 (indicating the post-impact state is in the blue shaded region in Fig. 3(a-LIP)) then the LIP is positioned such that it can cross its mid-stance position. If we describe the condition to enable walking continuation as the COM passes the mid-stance position, then the three inequality constraints are both sufficient and necessary for the LIP model to continue walking.

To transfer the condition to a robot, we first perform a change of coordinate for Eq. (7) using zcom=tan(α)xcom+z~comz_{\text{com}}=\text{tan}(\alpha)x_{\text{com}}+\tilde{z}_{\text{com}} for the underactuated continuous dynamics:

{x˙com=1z~com(Ly+xcomz~˙comLcomy)L˙y=gxcom\displaystyle\begin{cases}\dot{x}_{\text{com}}=\frac{1}{\tilde{z}_{\text{com}}}(L_{y}+x_{\text{com}}\dot{\tilde{z}}_{\text{com}}-L_{\text{com}}^{y})\\ \dot{L}_{y}=gx_{\text{com}}\end{cases} (12)

Notice that if z~˙com0\dot{\tilde{z}}_{\text{com}}\approx 0 and |Lcomy|Ly|L^{y}_{\text{com}}|\ll L_{y}, the robot’s continuous underactuated dynamics resembles the continuous dynamics of the LIP model in Eq. (9). Indeed, it has been shown in the literature [24, 26, 28] that the state-space phase portrait for robot dynamics is topologically similar to that of the LIP model, and the centroidal momentum is small in magnitude. Given the similarity of the continuous dynamics between the underactuated LIP and the robot, we propose to use the post-impact orbital energy to approximate the condition for the robot to continue walking. If the post-impact orbital energy E+[Emin,Emax]E^{+}\in[E_{\text{min}},E_{\text{max}}] (for Emin,Emax>0E_{\text{min}},E_{\text{max}}>0) along with Ly+>0L_{y}^{+}>0 and xcom+<0x_{\text{com}}^{+}<0, then the robot’s underactuated state takes a value such that next step can be taken. A physical interpretation for choosing Emin>0E_{\text{min}}>0 is to overcome the bounded integrated model error, and that for having EmaxE_{\text{max}} is to avoid dynamically infeasible impact time given bounded control input in reality.

The closed-form impact map for robot’s underactuated dynamics in Eq. (7) indicates that we can satisfy the specified post-impact conditions by regulating the pre-impact states. To ensure xcom+<0x_{\text{com}}^{+}<0, we propose to approximately control xcomx_{\text{com}}^{-} to some ratio ϵ(0,1)\epsilon\in(0,1) of the current step length using step duration TsT_{s}. For orbital energy, in this work we simply let Emin=Emax=EE_{\text{min}}=E_{\text{max}}=E^{*}, which is a desired post-impact orbital energy we choose. We then regulate Ly+L_{y}^{+} such that E+(xcom+,Ly+)=EE^{+}(x_{\text{com}}^{+},L_{y}^{+})=E^{*}, which can be modulated with the pre-impact vertical velocity z˙com\dot{z}_{\text{com}}^{-} as indicated in Eq. (7).

Output Synthesis. Given the desired post-impact conditions, we now introduce our novel planning strategy. First, given the upcoming stone configuration, we define ldesl_{des} and hdesh_{des} to be the distance and height of the next foot placement relative to the stance foot. Together with ϵ\epsilon, the step duration TsT_{s} is determined by the LIP time-to-impact using Eq. (11) as Ts=TI(ϵldes,z~com(𝐱+),xcom(𝐱+),Ly(𝐱+))T_{s}=T_{I}(\epsilon l_{des},\tilde{z}_{\text{com}}(\mathbf{x}^{+}),x_{\text{com}}(\mathbf{x}^{+}),L_{y}(\mathbf{x}^{+})) where 𝐱+\mathbf{x}^{+} is the post-impact state and z~com=zcomhdesldesxcom\tilde{z}_{\text{com}}=z_{\text{com}}-\frac{h_{des}}{l_{des}}x_{\text{com}}.

The desired walking behavior is encoded by the desired output trajectories. The outputs are 𝒴=𝒴a𝒴d\mathcal{Y}=\mathcal{Y}_{a}-\mathcal{Y}_{d}, where 𝒴a:TQm\mathcal{Y}_{a}:TQ\to\mathbb{R}^{m}, 𝒴d:Rm\mathcal{Y}_{d}:R\to\mathbb{R}^{m} are the actual and desired outputs. Using a simple planar robot in Fig. 3(b) for illustration, the following outputs for the sagittal dynamics is picked:

𝒴a(𝐱)=[ϕother(q)zcom(q)xsw(q)zsw(q)]T\displaystyle\mathcal{Y}_{a}(\mathbf{x})=\begin{bmatrix}\phi_{\text{other}}(q)&z_{\text{com}}(q)&x_{\text{sw}}(q)&z_{\text{sw}}(q)\end{bmatrix}^{T}
𝒴d(τ,αf,udes(t))=[ϕotherdzcomdxswdzswd]T\displaystyle\mathcal{Y}_{d}(\tau,\alpha_{f},u_{des}(t))=\begin{bmatrix}\phi_{\text{other}}^{d}&{z_{\text{com}}^{d}}&{x_{\text{sw}}^{d}}&{z^{d}_{\text{sw}}}\end{bmatrix}^{T} (13)

where ϕother\phi_{\text{other}} is an vector output for other angles with robot-dependent dimension. For instance, it can be torso angle alone for robots similar to Fig. 3(b) or also includes additional swing foot pitch angle for robots with feet. The superscript dd stands for the desired trajectory. ss is a monotonically increasing phasing variable defined as s:=tTss:=\frac{t}{T_{s}}, where tt is the time measured from the beginning of the current step. αf=[ϕotherfd,zcomfd,ldes,hdes]\alpha_{f}=[\phi^{d}_{\text{other}f},z^{d}_{\text{com}f},l_{des},h_{des}] represent the desired pre-impact posture. The desired trajectories are synthesized to 1) satisfy the final position of the swing foot, and 2) realize the chosen post-impact orbital energy EE^{*}. A flowchart of the synthesis is provided in Fig. 4.

Refer to caption
Figure 4: Overview of the approach to walking synthesis.

IV-1 Closed-form Polynomials

The desired trajectories of the outputs other than the vertical COM are designed via phase-based polynomials [26], the coefficients of which are determined by the post-impact state in the beginning of each step and the pre-impact posture at the end of each step.

The user-specified desired pre-impact posture, including final COM z position and final other angles, can be designed in different ways. The simplest version is to have ϕotherfd\phi^{d}_{\text{other}f} being constant and set zcomfd=z~+ϵhdesz_{\text{com}f}^{d}=\tilde{z}^{*}+\epsilon h_{des} with z~\tilde{z}^{*} a user-defined constant for all steps, i.e. the torso is always at a constant angle and the vertical COM position w.r.t. to the sloped surface is relatively constant. To achieve more natural-looking behaviors, i.e. walking using a higher COM height with a shorter step, a nonlinear optimization on the kinematics level can be solved given the stone configuration. Once the pre-impact posture is determined, polynomial-based trajectories can be easily designed to construct the desired continuous trajectories in the SSP.

Taking the desired swing foot trajectory as an instance of this approach, we follow the construction in [26] to let the swing foot step onto the desired location (see Fig. 3 (c)):

xswd(s)\displaystyle{x^{d}_{\text{sw}}}(s) =(1bh(s))xsw(𝐱+)+bh(s)ldes\displaystyle=(1-b_{h}(s))x_{\text{sw}}(\mathbf{x}^{+})+b_{h}(s)l_{des} (14)
zswd(s)\displaystyle{z^{d}_{\text{sw}}}(s) =bv(s)\displaystyle=b_{v}(s) (15)

where bhb_{h} and bvb_{v} are sets of Bézier polynomials [7]. The coefficients of bhb_{h} are [0,0,0,𝟏3][0,0,0,\mathbf{1}_{3}], where 𝟏N\mathbf{1}_{N} indicates a row vector of size NN with all elements being 1. The coefficients of bvb_{v} are [zsw(𝐱+),zswmax𝟏3,hdes,hdes+zswneg][z_{\text{sw}}(\mathbf{x}^{+}),z^{\text{max}}_{\text{sw}}\mathbf{1}_{3},h_{des},h_{des}+z^{\text{neg}}_{\text{sw}}], where zswmaxz_{\text{sw}}^{\text{max}} determines the swing clearance, and zswnegz_{\text{sw}}^{\text{neg}} is a small negative value to ensure the swing foot striking on the step location. Trajectories for other angles can be designed similarly.

IV-2 Online Optimization for Vertical COM Trajectory

The vertical COM trajectory is designed as follows to stably regulate the post-impact underactuated state as desired. Under constrained footholds, xsw=ldesx_{\text{sw}}^{-}=l_{des} and zsw=hdesz_{\text{sw}}^{-}=h_{des} are pre-determined by the stone configuration. We directly control the post-impact Ly+L_{y}^{+} and thus the post-impact orbital energy E+E^{+} by modulating z˙com\dot{z}_{\text{com}}^{-}, which can be considered as an discrete input to the hybrid system. Hence, we denote the desired z˙com\dot{z}_{\text{com}}^{-} as udesu_{des}. From Eq. (7), it can be calculated as:

udes=1ldes(L^desL^y(𝐱)+hdesx˙^com).\displaystyle u_{des}=\frac{1}{l_{des}}(\hat{L}_{des}-\hat{L}_{y}^{-}(\mathbf{x})+h_{des}\hat{\dot{x}}_{\text{com}}^{-}). (16)

where ^\hat{\cdot} is used to denote the estimation of a parameter and L^des\hat{L}_{des} corresponds to the desired orbital energy EE^{*} as:

E=(L^desz~^com+)2gz~^com(x^com+)2,E^{*}=\left(\frac{\hat{L}_{des}}{\hat{\tilde{z}}_{\text{com}}^{+}}\right)^{2}-\frac{g}{\hat{\tilde{z}}_{\text{com}}}(\hat{x}_{\text{com}}^{+})^{2},

where x^com+=x^comldes\hat{x}_{\text{com}}^{+}=\hat{x}_{\text{com}}^{-}-l_{des} and z~com+=z^comhdeshdes+ldes+x^com+\tilde{z}_{\text{com}}^{+}=\hat{z}_{\text{com}}^{-}-h_{des}-\frac{h_{des}^{+}}{l_{des}^{+}}\hat{x}^{+}_{\text{com}}. If a two-step preview of the stone configuration is available, the parameters hdes+,ldes+h_{des}^{+},l_{des}^{+} are the new desired stone configuration after impact. If only the next upcoming stone configuration is known, then this term can be ignored. Again recall that the exact tracking of EE^{*} is not necessary to achieve stable walking. The estimation of pre-impact underactuated states x^com\hat{x}_{\text{com}}^{-} and L^y\hat{L}_{y}^{-} is performed using LIP solution with the time-to-impact function in Eq. (11). Other pre-impact states including zcomz_{\text{com}}^{-} and x˙^com\hat{\dot{x}}_{\text{com}}^{-} are approximated by weighted averages of the desired pre-impact ones and the current ones.

To realize the desired pre-impact vertical COM velocity, we apply a shrinking horizon Model Predictive Control (MPC) style planning to recursively optimize the desired vertical COM trajectory from the current state [zcom(t),z˙com(t)]T[z_{\text{com}}(t),\dot{z}_{\text{com}}(t)]^{T} at time tt to the desired pre-impact state 𝐳=[zcomfd,udes]T\mathbf{z}^{-}=[z^{d}_{\text{com}f},u_{des}]^{T}. The horizon shrinks at each walking step as the robot is approaching towards the impact event. Consider the double integrator dynamics for the vertical COM trajectory with the state being 𝐳\mathbf{z} and input being uz=z¨comu^{z}=\ddot{z}_{\text{com}}. The input should satisfy the contact condition that ukzgu^{z}_{k}\geq-g with gg being the gravitational constant for all kk. Given TsT_{s}, the continuous dynamics is discretized with dt=TstNdt=\frac{T_{s}-t}{N} with NN being the number of discretization. The optimization problem then is:

minukz,𝐳k\displaystyle\underset{u^{z}_{k},\mathbf{z}_{k}}{\text{min}} k=0Nukz2\displaystyle\quad\sum_{k=0}^{N}\|u^{z}_{k}\|^{2} (17)
s.t. 𝐳k+1=Az𝐳k+Bzukz\displaystyle\mathbf{z}_{k+1}=A^{z}\mathbf{z}_{k}+B^{z}u^{z}_{k} (Double Integrator)
ukzg,\displaystyle u^{z}_{k}\geq-g, (Contact Constraint)
𝐳0=[zcom(t),z˙com(t)]T,\displaystyle\mathbf{z}_{0}=[z_{\text{com}}(t),\dot{z}_{\text{com}}(t)]^{T}, (Initial Condition)
𝐳N=𝐳.\displaystyle\mathbf{z}_{N}=\mathbf{z}^{-}. (Pre-impact Condition)

The simple dynamics of the MPC allows it to be solved at the same frequency as the low-level controller. The first solution of the input u0zu^{z}_{0} is used as the desired vertical COM acceleration in the following feedback controller.

Feedback Controller. With the synthesized trajectories, we apply a task-space quadratic program (QP) based controller [36, 37, 38, 39] to optimize the tracking on the desired trajectories while respecting the constrained dynamics, physical motor torque limits, and ground contact forces. At each control loop, q¨,τ,F\ddot{q},\tau,F are chosen as the optimization variables. The QP is formulated as:

minq¨,τ,Fn+m+h\displaystyle\underset{\ddot{q},\tau,F\in\mathbb{R}^{n+m+h}}{\text{min}} 𝒴¨a(q,q˙)𝒴¨d𝒴¨tQ2\displaystyle\quad||\ddot{\mathcal{Y}}_{a}(q,\dot{q})-\ddot{\mathcal{Y}}_{d}-\ddot{\mathcal{Y}}^{t}||^{2}_{Q} (18)
s.t. Eq.(1),(2),\displaystyle\quad\text{Eq.}~{}\eqref{eq:eom},\eqref{eq:hol}, (Dynamics)
AGRFFbGRF,\displaystyle\quad A_{\text{GRF}}F\leq b_{\text{GRF}}, (Contact)
τlbττub,\displaystyle\quad\tau_{lb}\leq\tau\leq\tau_{ub}, (Torque Limit)

where QQ is a weight matrix, and 𝒴¨t\ddot{\mathcal{Y}}^{t} is the target acceleration of the output that enables exponential tracking. The target accelerations on the outputs are Kp𝒴Kd𝒴˙-K_{p}\mathcal{Y}-K_{d}\dot{\mathcal{Y}}, where Kp,KdK_{p},K_{d} are the PD gains. Note for vertical COM output, 𝒴¨t=0\ddot{\mathcal{Y}}^{t}=0 as the planning starts from the current states. The controller then attempts to have the 𝒴¨a\ddot{\mathcal{Y}}_{a} track MPC-generated desired acceleration u0zu^{z}_{0}. The affine contact constraint on FF approximates the contact friction cone constraint. τlb\tau_{lb} and τub\tau_{ub} are the lower and upper bounds of the torques. Solving this QP yields the optimal torque that is applied on the robot.

Refer to caption
Figure 5: The robot Cassie (left) and AMBER (right).

V Results

V-A Robot Models and Simulation Setup

We evaluate the proposed approach on two different robots, AMBER and Cassie, shown in Fig. 5. AMBER is a custom-built planar bipedal robot that resembles the basic mathematical model of a point-footed five-linkage walker [7]. The robot Cassie is a 3D underactuated bipedal robot built by Agility Robotics. Relativistically, Cassie has more complex dynamics but has an inertia distribution closer to the LIP model. We simulate AMBER using a custom MATLAB simulation which integrates the dynamics using ODE45 with event-based triggering for contact detection. Cassie is simulated in C++ using the open-sourced repository from Agility Robotics [40] which uses Gazebo environment with ODE physics engine. The procedure of the control implementation is summarized in Fig. 4. Both the MPC and QP based low-level controller are solved using QPOASES [41] at 1kHz on both robots. In the latter of this section, we show that regardless of the model difference, complexity, and simulation environment, both robots can be controlled to walk on constrained footholds using the proposed approach.

Refer to caption
Figure 6: Illustration of robot AMBER walking on flat ground (ldes=0.7l_{des}=0.7m), upstairs ({l,h}des=[0.5,0.2]\{l,h\}_{des}=[0.5,0.2]m), downstairs ({l,h}des=[0.4,0.1]\{l,h\}_{des}=[0.4,-0.1]m), and randomly placed stepping stones with constrained footholds. All trials with periodic stone configurations result in convergence to periodic walking behaviors. See accompanying video for more results.

V-B Simulation Results on AMBER

We first present the results of walking on AMBER where walking is tested on different scenarios as shown in Fig. 6. A variety of desired footholds with distance (0.10.1m to 0.80.8m) and height (0.2-0.2m to +0.25+0.25m) are tested, resulting in the underactuated dynamics converged to periodic orbits with COM forward speed ranging from 0.4m/s to 1.6m/s. For the vertical COM trajectory as in Fig. 7, the desired pre-impact COM vertical velocity udes(t)u_{des}(t) has small oscillations within a step in our gait synthesis. More importantly, the actual pre-impact z˙com\dot{z}^{-}_{\text{com}} converges the pre-impact udesu_{des} at each step under the MPC planning. The method is also tested on the stepping stone problem with randomly varying stone distance between 0.20.2m and 0.70.7m and height between ±0.25\pm 0.25m.

Refer to caption
Figure 7: An example of the COM zz trajectory planning from online MPC. The red circles represent the impact events. Note that MPC only updates acceleration, so there is no difference in the actual and desired position and velocity. The actual position and velocity of vertical COM satisfy the pre-impact boundary condition set in the MPC.

The parameter E=0.5E^{*}=0.5 is used in all scenarios except for some extremely long or short periodic steps, where a large EE^{*} is needed for the robot to cross the mid-stance position and a small EE^{*} is required to generate a dynamically feasible step duration. The behavior is generally robust to the choice of EE^{*}, different EE^{*} corresponds to different walking speeds.

The parameter ϵ\epsilon is noticed to have a large allowable range for randomly generated stepping stones, i.e., ϵ[0.5,0.7]\epsilon\in[0.5,0.7] results in the successful traversing of randomly generated stepping stone (uniform distribution between 0.1m to 0.7m) for 1000 consecutive steps. In periodic walking, we find that the stability of walking on stairs is relatively sensitive to choice ϵ\epsilon. Although we can get stable periodic stairs walking through mild parameter tuning using constant ϵ\epsilon for all steps, it is more reasonable to design ϵ\epsilon based on stone configurations like TsT_{s}. Intuitively, higher ϵ\epsilon means larger xcomx_{\text{com}}^{-} and LyL_{y}^{-}. Compare Eq. (16) with z˙com=hdesldesx˙com\dot{z}_{\text{com}}=\frac{h_{des}}{l_{des}}\dot{x}_{\text{com}} for LIP model, as |LdesLy||L_{des}-L_{y}^{-}| gets larger, the difference between udesu_{des} and the nominal COM zz velocity for LIP increases, which may introduce undesired large COM oscillation. Future work is needed to understand this behavior and then design a corresponding feedback strategy for choosing ϵ\epsilon.

V-C Simulation Results on 3D Cassie

Now we present the simulation results on Cassie. Since the current framework addresses planar foothold constraints, we apply it in the sagittal plane of the walking on Cassie. The stabilization in the coronal plane is achieved by applying the H-LIP stepping controller in [26], where the lateral foot placement yswy_{\text{sw}} is planned to stabilize COM yy dynamics. The yaw angles are controlled to simply let the robot walk forward. Additionally, since Cassie has actuated ankles with small feet in its sagittal plane, we zero the ankle torque on the stance foot during walking to mimic the foot underactuation.

Similarly, we apply the approach to control Cassie to walk on flat ground, up and down stairs, and on randomly placed stones. The motion is initiated from standing using an existing standing controller that provides a forward COM velocity before transiting to walking. The rest of the control procedures follow identically to Algorithm 1 with ϵ=0.6\epsilon=0.6, E=0.6E^{*}=0.6, ϕfd=0\phi^{d}_{f}=0 and z~=0.75\tilde{z}^{*}=0.75m. Under our control, Cassie successfully walked over these constrained footholds as shown in the gait-tiles in Fig. 1. More importantly, as we can see from the phase portrait Fig. 8, the robot’s underactuated states converged to the group of orbits corresponding to E=0.6E^{*}=0.6. Similar results happen for all scenarios (e.g. in Fig. 9), see the supplementary video for more details. Although the framework is implemented in simulation for a 3D robot, we have only characterized constrained footholds walking in the sagittal plane. The application of the H-LIP stepping controller in the coronal plane essentially assumes the stepping stones are sufficiently wide (see Fig. 9). To achieve actual stepping stones behaviors in 3D, we need to plan the coordination between the sagittal plane and coronal plane. Potentially, characterizations of the walking with both E<0E<0 and E>0E>0 could be unified to enable momentum regulations through impact for 3D walking.

In the meantime, we are trying to have the proposed approach demonstrated on the hardware of Cassie for verification. So far, we have implemented the planning and control approach on the secondary PC of Cassie. We have verified the control loop can be solved at 1kHz in an Intel NUC PC core. Experiment results are expected to come in the future.

Refer to caption
Figure 8: Trajectories of Cassie in the phase plot of walking upstairs (a) and downstairs (b) vs the nominal state trajectory of the LIP of E=0.6E^{*}=0.6 (black thickened line). The gait-tiles can be seen in Fig. 1.
Refer to caption
Figure 9: Phase plot (left) and gait-tiles (right) of Cassie walking on randomly located stepping stones in a different view (compared to Fig. 1).

VI Conclusion

To conclude, we present an online planning and control framework to generate stable walking for underactuated bipedal walking on a variety of terrains with constrained foot locations. The proposed approach controls the angular momentum via the vertical COM state in the walking synthesis. We successfully realized the approach in simulation on two bipedal robots for walking on constrained foot locations with various settings, showing a strong premise to enable bipedal robots to locomote in challenging and real environments with discrete contact locations.

References

  • [1] G. Wiedebach, S. Bertrand, T. Wu, L. Fiorio, S. McCrory, R. Griffin, F. Nori, and J. Pratt, “Walking on partial footholds including line contacts with the humanoid robot atlas,” in 2016 IEEE-RAS 16th International Conference on Humanoid Robots (Humanoids).   IEEE, 2016, pp. 1312–1319.
  • [2] S. Kajita, F. Kanehiro, K. Kaneko, K. Fujiwara, K. Harada, K. Yokoi, and H. Hirukawa, “Biped walking pattern generation by using preview control of zero-moment point,” in 2003 IEEE International Conference on Robotics and Automation (Cat. No. 03CH37422), vol. 2.   IEEE, 2003, pp. 1620–1626.
  • [3] J. Reher and A. D. Ames, “Dynamic walking: Toward agile and efficient bipedal robots,” Annual Review of Control, Robotics, and Autonomous Systems, vol. 4, pp. 535–572, 2021.
  • [4] A. Goswami and P. Vadakkepat, Humanoid robotics: a reference.   Springer, 2019.
  • [5] G. Wiedebach, S. Bertrand, T. Wu, L. Fiorio, S. McCrory, R. Griffin, F. Nori, and J. Pratt, “Walking on partial footholds including line contacts with the humanoid robot atlas,” in 2016 IEEE-RAS 16th International Conference on Humanoid Robots (Humanoids), 2016, pp. 1312–1319.
  • [6] R. Tedrake, “Underactuated robotics: Learning, planning, and control for efficient and agile machines course notes for mit 6.832,” Working draft edition, vol. 3, 2009.
  • [7] J. W. Grizzle, C. Chevallereau, R. W. Sinnet, and A. D. Ames, “Models, feedback control, and open problems of 3d bipedal robotic walking,” Automatica, vol. 50, no. 8, p. 1955–1988, 2014.
  • [8] I. R. Manchester, U. Mettin, F. Iida, and R. Tedrake, “Stable dynamic walking over uneven terrain,” The International Journal of Robotics Research, vol. 30, no. 3, pp. 265–279, 2011.
  • [9] E. R. Westervelt, J. W. Grizzle, and D. E. Koditschek, “Hybrid zero dynamics of planar biped walkers,” IEEE transactions on automatic control, vol. 48, no. 1, pp. 42–56, 2003.
  • [10] S. Collins, A. Ruina, R. Tedrake, and M. Wisse, “Efficient bipedal robots based on passive-dynamic walkers,” Science, vol. 307, no. 5712, pp. 1082–1085, 2005.
  • [11] A. Hereid, E. A. Cousineau, C. M. Hubicki, and A. D. Ames, “3d dynamic walking with underactuated humanoid robots: A direct collocation framework for optimizing hybrid zero dynamics,” in 2016 IEEE Int. Conf. on Rob. and Autom. (ICRA), 2016, pp. 1447–1454.
  • [12] Z. Manchester and S. Kuindersma, “Variational contact-implicit trajectory optimization,” in Robotics Research.   Springer, 2020, pp. 985–1000.
  • [13] H.-W. Park, K. Sreenath, A. Ramezani, and J. W. Grizzle, “Switching control design for accommodating large step-down disturbances in bipedal robot walking,” in 2012 IEEE International Conference on Robotics and Automation.   IEEE, 2012, pp. 45–50.
  • [14] Q. Nguyen, X. Da, J. Grizzle, and K. Sreenath, “Dynamic walking on stepping stones with gait library and control barrier functions,” in Algorithmic Foundations of Robotics XII.   Springer, 2020, pp. 384–399.
  • [15] A. D. Ames, X. Xu, J. W. Grizzle, and P. Tabuada, “Control barrier function based quadratic programs for safety critical systems,” IEEE Transactions on Automatic Control, vol. 62, no. 8, p. 3861–3876, 2016.
  • [16] Q. Nguyen, A. Hereid, J. W. Grizzle, A. D. Ames, and K. Sreenath, “3d dynamic walking on stepping stones with control barrier functions,” in 2016 IEEE 55th Conference on Decision and Control (CDC).   IEEE, 2016, pp. 827–834.
  • [17] Q. Nguyen, A. Agrawal, W. Martin, H. Geyer, and K. Sreenath, “Dynamic bipedal locomotion over stochastic discrete terrain,” The International Journal of Robotics Research, vol. 37, no. 13-14, pp. 1537–1553, 2018.
  • [18] N. Csomay-Shanklin, R. K. Cosner, M. Dai, A. J. Taylor, and A. D. Ames, “Episodic learning for safe bipedal locomotion with control barrier functions and projection-to-state safety,” 2021.
  • [19] Q. Nguyen, A. Agrawal, X. Da, W. C. Martin, H. Geyer, J. W. Grizzle, and K. Sreenath, “Dynamic walking on randomly-varying discrete terrain with one-step preview.” in Robotics: Science and Systems, vol. 2, no. 3, 2017.
  • [20] M. H. Raibert, Legged robots that balance.   MIT press, 1986.
  • [21] S. Rezazadeh and et al., “Spring-mass walking with atrias in 3d: Robust gait control spanning zero to 4.3 kph on a heavily underactuated bipedal robot,” in ASME 2015 dynamic systems and control conference.   American Society of Mechanical Engineers, 2015.
  • [22] M. Wisse, C. G. Atkeson, and D. K. Kloimwieder, “Swing leg retraction helps biped walking stability,” in 5th IEEE-RAS International Conference on Humanoid Robots, 2005.   IEEE, 2005, pp. 295–300.
  • [23] J. Pratt, T. Koolen, T. De Boer, J. Rebula, S. Cotton, J. Carff, M. Johnson, and P. Neuhaus, “Capturability-based analysis and control of legged locomotion, part 2: Application to m2v2, a lower-body humanoid,” The Int. J. of Rob. Res., vol. 31, no. 10, pp. 1117–1133, 2012.
  • [24] M. J. Powell and A. D. Ames, “Mechanics-based control of underactuated 3d robotic walking: Dynamic gait generation under torque constraints,” in 2016 IEEE/RSJ Int. Conf. on Intell. Rob. and Sys. (IROS).   IEEE, 2016, pp. 555–560.
  • [25] C. Hubicki, J. Grimes, M. Jones, D. Renjewski, A. Spröwitz, A. Abate, and J. Hurst, “Atrias: Design and validation of a tether-free 3d-capable spring-mass bipedal robot,” The International Journal of Robotics Research, vol. 35, no. 12, pp. 1497–1521, 2016.
  • [26] X. Xiong and A. Ames, “3d underactuated bipedal walking via h-lip based gait synthesis and stepping stabilization,” arXiv preprint arXiv:2101.09588, 2021.
  • [27] S. Kajita, F. Kanehiro, K. Kaneko, K. Fujiwara, K. Yokoi, and H. Hirukawa, “A realtime pattern generator for biped walking,” in IEEE Int. Conf. on Rob. and Autom. (ICRA), vol. 1, 2002, pp. 31–37.
  • [28] Y. Gong and J. Grizzle, “Angular momentum about the contact point for control of bipedal locomotion: Validation in a lip-based controller,” 2021.
  • [29] Y. Hurmuzlu and D. B. Marghitu, “Rigid body collisions of planar kinematic chains with multiple contact points,” The international journal of robotics research, vol. 13, no. 1, pp. 82–92, 1994.
  • [30] D. E. Orin and A. Goswami, “Centroidal momentum matrix of a humanoid robot: Structure and properties,” in 2008 IEEE/RSJ Int. Conf. on Intell. Rob. and Sys.   IEEE, 2008, pp. 653–659.
  • [31] S. Kajita, F. Kanehiro, K. Kaneko, K. Yokoi, and H. Hirukawa, “The 3d linear inverted pendulum mode: a simple modeling for a biped walking pattern generation,” in Proceedings 2001 IEEE/RSJ Int. Conf. on Intell. Rob. and Sys. (IROS), vol. 1, 2001, pp. 239–246 vol.1.
  • [32] Y. Gong and J. Grizzle, “Zero dynamics, pendulum models, and angular momentum in feedback control of bipedal locomotion,” 2021.
  • [33] S. Kajita and K. Tani, “Study of dynamic biped locomotion on rugged terrain-derivation and application of the linear inverted pendulum mode,” in Proceedings. 1991 IEEE International Conference on Robotics and Automation, 1991, pp. 1405–1406.
  • [34] J. E. Pratt and S. V. Drakunov, “Derivation and application of a conserved orbital energy for the inverted pendulum bipedal walking model,” in Proceedings 2007 IEEE International Conference on Robotics and Automation.   IEEE, 2007, pp. 4653–4660.
  • [35] X. Xiong and A. D. Ames, “Slip walking over rough terrain via h-lip stepping and backstepping-barrier function inspired quadratic program,” IEEE Robot. Autom. Lett., 10.1109/LRA.2021.3061385, 2021.
  • [36] K. Bouyarmane, K. Chappellet, J. Vaillant, and A. Kheddar, “Quadratic programming for multirobot and task-space force control,” IEEE Transactions on Robotics, vol. 35, no. 1, pp. 64–77, 2018.
  • [37] P. M. Wensing and D. E. Orin, “Generation of dynamic humanoid behaviors through task-space control with conic optimization,” in 2013 IEEE International Conference on Robotics and Automation.   IEEE, 2013, pp. 3103–3109.
  • [38] X. Xiong and A. D. Ames, “Motion decoupling and composition via reduced order model optimization for dynamic humanoid walking with clf-qp based active force control,” in In 2019 IEEE/RSJ Int. Conf. on Intell. Rob. and Sys. (IROS), 2019.
  • [39] H. Duan, J. Dao, K. Green, T. Apgar, A. Fern, and J. Hurst, “Learning task space actions for bipedal locomotion,” arXiv preprint arXiv:2011.04741, 2020.
  • [40] A. Robotics, https://www.agilityrobotics.com/robots#cassie.
  • [41] H. Ferreau, C. Kirches, A. Potschka, H. Bock, and M. Diehl, “qpOASES: A parametric active-set algorithm for quadratic programming,” Mathematical Programming Computation, vol. 6, no. 4, pp. 327–363, 2014.