## Abstract

Low-dimensional models are ubiquitous in the bipedal robotics literature. On the one hand is the community of researchers that bases feedback control design on pendulum models selected to capture the center of mass dynamics of the robot during walking. On the other hand is the community that bases feedback control design on virtual constraints, which induce an exact low-dimensional model in the closed-loop system. In the first case, the low-dimensional model is valued for its physical insight and analytical tractability. In the second case, the low-dimensional model is integral to a rigorous analysis of the stability of walking gaits in the full-dimensional model of the robot. This paper seeks to clarify the commonalities and differences in the two perspectives for using low-dimensional models. In the process of doing so, we argue that angular momentum about the contact point is a better indicator of robot state than linear velocity. Concretely, we show that an approximate (pendulum and zero dynamics) model parameterized by angular momentum provides better predictions for foot placement on a physical robot (e.g., legs with mass) than does a related approximate model parameterized in terms of linear velocity. We implement an associated angular-momentum-based controller on Cassie, a 3D robot, and demonstrate high agility and robustness in experiments.

## 1 Introduction

Models of realistic bipedal robots tend to be high-dimensional, hybrid, nonlinear systems. This paper is concerned with two major themes in the literature for “getting around” the analytical and computational obstructions posed by realistic models of bipeds.

On the one hand are the broadly used, simplified pendulum models [17] that provide a computationally attractive model for the center of mass dynamics of a robot. When used for control design, the fact that they ignore the remaining dynamics of the robot generally makes it impossible to prove stability properties of the closed-loop system. Despite the lack of analytical backing, the resulting controllers often work in practice when the center of mass is well regulated to match the assumptions underlying the model. Within this context, the dominant low-dimensional pendulum model by far is the so-called linear inverted pendulum model, or LIP model for short, which captures the center of mass dynamics of a real robot correctly when, throughout a step, the following conditions hold: (i) the center of mass (CoM) moves in a straight line and (ii) the robot's angular momentum about the center of mass (Lc) is zero (or constant). This latter condition can be met by designing a robot to have light legs, such as the Cassie robot by Agility Robotics , or by deliberately regulating Lc (close) to zero [8]. When Lc cannot be regulated to a small value, a model predictive control (MPC) law based on the LIP model has been proposed to minimize zero moment point (ZMP) tracking error and CoM jerk [911]. The effects of Lc can be compensated with ZMP, making a real robot's CoM dynamics the same as those of a LIP [12]. Alternatively, Lc can be approximately predicted and used for planning [5,13].

On the other hand, the control-centric approach called the hybrid zero dynamics provides a mathematically rigorous gait design and stabilization method for realistic bipedal models [1522] without restrictions on robot or gait design. In this approach, the links/joints of the robot are synchronized via the imposition of “virtual constraints,” meaning the constraints are achieved through the action of a feedback controller instead of contact forces. As opposed to physical constraints, virtual constraints can be reprogrammed on the fly. Like physical constraints, imposing a set of virtual constraints results in a reduced-dimensional model. The term “zero dynamics” for this reduced dynamics comes from the original work of Ref. [23]. The term “hybrid zero dynamics” or HZD comes from the extension of zero dynamics to (hybrid) robot models in Ref. [24]. A downside of this approach, however, has been that it lacked the “analytical tractability” provided by the pendulum models1, and it requires nontrivial time to find optimal virtual constraints for a realistic model.

While CoM velocity is the most widely used variable “to summarize the state” of a bipedal robot, angular momentum about the contact point has also been valued by multiple researchers. In Ref. [29], angular momentum is chosen to represent a biped's state and it is regulated by stance ankle torque. In Ref. [30], the relative degree of three property of angular momentum motivated its use as a state variable in the zero dynamics. In Refs. [31,32], control laws for robots with an unactuated contact point were proposed to exponentially stabilize them about an equilibrium. In Ref. [20], angular momentum is explicitly used for designing nonholonomic virtual constraints. In Ref. [33], angular momentum is combined with the LIP model to yield a controller that stabilizes the transfer of angular momentum from one leg to the next through continuous-time (single-support phase) control coupled with a hybrid model that captures impacts that occur at foot strike. In Ref. [34], the accuracy of the angular-momentum-based LIP model during the continuous phase is emphasized; as opposed to Ref. [33], angular momentum is allowed to passively evolve according to gravity during each single-support phase, and foot placement is used to regulate the angular momentum at the end of the ensuing step.

### 1.1 Objectives.

The objectives of this paper are twofold. First, we seek to contribute insight on how pendulum models relate among one another and to the dynamics of a physical robot. We demonstrate that even when two pendulum models originate from the same (correct) dynamical principles, the approximations made in different coordinate representations lead to nonequivalent approximations of the dynamics of a (realistic) bipedal robot. Second, we seek a rapprochement of the most common pendulum models and the hybrid zero dynamics of a bipedal robot. Both of these objectives are addressed for planar robot models. The extension to 3D is not attempted here, primarily to keep the arguments as transparent as possible.

The first point that approximations made in different coordinate representations lead to nonequivalent approximations of the dynamics of a real robot is important in practice; hence, we elaborate a bit more here, with details given in Sec. 6. Let us only consider trajectories of a robot where the center of mass height is constant, and therefore, the velocity and acceleration of the center of mass height are both zero. In a realistic robot, the angular momentum about the center of mass, denoted by Lc, contributes to the longitudinal evolution of the center of mass, though it is routinely dropped in the most commonly used pendulum models. Can dropping Lc have a larger effect in one simplified model than another?

In the standard 2D LIP model, the coordinates are taken as the horizontal position and velocity of the center of mass and the time derivative of Lc is dropped from the differential equation for the velocity. It follows that the term being dropped is a high-pass filtered version of Lc, due to the derivative. Moreover, the derivative of Lc is directly affected by the motor torques, which are typically “noisy” (have high variance) in a realistic robot. On the other hand, in a less frequently used representation of a 2D inverted pendulum [20,3335], the coordinates are taken as angular momentum about the contact point and the horizontal position of the center of mass, and Lc is dropped from the differential equation for the position. In this model, Lc (and not $L˙c$) shows up in the second derivative of the angular momentum about the contact point. It follows that variations in Lc are low-pass filtered in the second representation as opposed to high-pass filtered in the first, and thus, speaking intuitively, neglecting Lc should induce less approximation error in the second model. More quantitative results are shown in the main body of the paper.

In this paper, we focus on the underactuated single-support phase dynamics and assume an instantaneous double-support phase. The reader is referred to existing literature on how pendulum models [9,36] and hybrid zero dynamics [3739] handle noninstantaneous double-support phases; the topic is not discussed in this paper. We provide models for a robot with nontrivial feet. While most of the results are demonstrated for robots with point feet, we briefly show that the conclusions we obtained for robots with point feet still apply to robots with nontrivial feet. Further studies of how pendulum models and hybrid zero dynamics handle nontrivial feet can be found in Refs. [9,4042].

### 1.2 Summary of Main Contributions.

This paper makes the following contributions to pendulum models and zero dynamics:

• Starting from a common physically correct set of equations for real robots, we sequentially enumerate the approximations made to arrive at various reduced order pendulum models. This is done for bipedal robots with and without ankle torque.

• Several advantages of using angular momentum about the contact point as a key variable to summarize the dynamics of a bipedal robot are discussed and demonstrated.

• We show that a pendulum model parameterized by the center of mass horizontal position and angular momentum about the contact point provides a higher fidelity representation of a physical robot than does the standard LIP model, which is a pendulum model parameterized by center of mass horizontal position and velocity. We identify the source of improvement as how the angular momentum about the center of mass is treated in the two models.

• For a set of non-holonomic virtual constraints, we derive the zero dynamics in a set of coordinates compatible with an angular-momentum-based pendulum model. We provide a precise sense in which the pendulum model is an approximation to the zero dynamics and demonstrate what this means for closed-loop stability of the full-order robot model.

• We formulate a foot placement strategy based on a high fidelity, one-step-ahead prediction of angular momentum about the contact point.

• We show that foot placement planned on the basis of angular momentum provides improved speed control over a policy based on the standard LIP model and longitudinal velocity.

• We demonstrate experimentally that our proposed controller achieves highly dynamic gaits on a Cassie-series bipedal robot.

The fifth and the last contributions were introduced in Ref. [34] and are used here to demonstrate the utility of the proposed results. We will use both Rabbit [43] and Cassie Blue, shown in Fig. 1, to illustrate the developments in the paper. Experiments will be conducted exclusively on Cassie.

Fig. 1
Fig. 1
Close modal

Rabbit is a 2D biped with five links, four actuated joints, and a mass of 32 kg; see Fig. 2. Each leg weighs 10 kg, with 6.8 kg on each thigh and 3.2 kg on each shin. The Cassie robot designed and built by Agility Robotics weighs 32 kg. It has 7 deg of freedom on each leg, 5 of which are actuated by motors and 2 are constrained by springs; see Fig. 2. A floating base model of Cassie has 20 degrees-of-freedom. Each foot of the robot is blade-shaped and provides five holonomic constraints when firmly in contact with the ground. Though each of Cassie's legs has approximately 10 kg of mass, most of the mass is concentrated on the upper part of the leg. In this regard, the mass distribution of Rabbit is more typical of current bipedal robots seen in labs, which is why we include the Rabbit model in the paper.

Fig. 2
Fig. 2
Close modal

### 1.3 Organization.

The remainder of the paper is organized as follows: Section 2 introduces the full hybrid model of a bipedal robot with instantaneous double-support phases. It also provides the robot's center of mass dynamics in different coordinates. Section 3 summarizes several desirable properties of angular momentum about contact point. Section 4 goes through the approximations that must be made to the center of mass dynamics in order to arrive at the most popular pendulum models. The approximation errors of the resulting pendulum models are analyzed and compared. Section 5 uses a one-step-ahead prediction of angular momentum to decide foot placement. This provides a feedback controller based on predicted angular momentum that will stabilize a 3D pendulum. Section 6 provides background on a feedback control paradigm based on virtual constraints and the attendant zero dynamics. One of the pendulum models is shown to be a clear approximation to the zero dynamics, and the implications for stability analysis are discussed and illustrated by numerical computation. In Sec. 7, we design the virtual constraints for a Cassie-series bipedal robot. In Sec. 8, we provide our path to implementing the controller on Cassie Blue. Additional virtual constraints are required beyond a path for the swing foot, and we provide “an intuitive” method for their design. Section 9 shows the results of experiments. Conclusion is given in Sec. 10.

## 2 Swing Phase and Hybrid Model

This section introduces the full-dimensional swing-phase model that describes the mechanical model when the robot is supported on one leg and a hybrid representation used for walking that captures the transition of support legs. The section concludes with a summary of a few model properties that are ubiquitous when discussing low-dimensional pendulum models of walking.

### 2.1 Full-Dimensional Single-Support Model.

We assume a planar bipedal robot satisfying the specific assumptions in Ref. [15, Chap. 3.2] and [30], which can be summarized as a revolute point contact with the ground, no slipping, all other joints are independently actuated, and all links are rigid and have mass. The gait is assumed to consist of alternating phases of single-support (one “foot” on the ground), separated by instantaneous double-support phases (both feet in contact with the ground), with the impact between the swing leg and the ground obeying the noncompliant, algebraic contact model in Ref. [44] (see also [15, Chap. 3.2]).

The contact point with the ground, which we refer to as the stance ankle, can be passive or actuated. Even when actuated, the stance ankle is “effectively weak” in the sense that only limited ankle torque can be applied by the motor before the foot rotates about one of its extremities. Of course, the swing ankle torque is not limited by foot rotation and hence it is not “weak.” To accommodate both actuation scenarios, we will routinely separate the stance ankle actuation from other actuators on the robot so that it can be either set to zero or appropriately exploited.

We assume a world frame (x, z) with the right-hand rule. We assume the swing-phase (pinned) Lagrangian model is derived in coordinates $q:=(q0,q1,…,qn)∈Q$, where q0 is an absolute angle (referenced to the z-axis of the world frame) and $qb:=(q1,…,qn)$ are body coordinates2. Furthermore, we reference the contact point (i.e., stance ankle) to the origin of the world frame.

With the above sets of assumptions, the robot in single support is either fully actuated or has one degree of underactuation. Moreover, q0 is a cyclic variable, meaning that the kinetic energy and the inertia matrix are independent of q0. It follows that the dynamic model can be expressed in the form
$D(qb)q¨+C(q,q˙)q˙+G(q)=B(q)u$
(1)
where the vector of motor torques $u∈ℝn$ and the torque distribution matrix has full column rank. The model is written in state space form by defining
$x˙=[q˙D−1(qb)[−C(q,q˙)q˙−G(q)+B(q)u]]=:f(x)+g(x)u$
(2)

where $x:=(q;q˙)$. The state space of the model is $X=TQ$. For each $x∈X$, g(x) is a $2(n+1)×(n+1)$ matrix when the robot is fully actuated or $2(n+1)×n$ matrix when the robot has one degree of underactuation. In natural coordinates $(q;q˙)$ for $TQ$, g is independent of $q˙$.

### 2.2 Full Dimensional Hybrid Model.

In the above, we implicitly assumed left-right symmetry in the robot so that we could avoid the use of two single-support models—one for each leg playing the role of the stance leg—by relabeling the robot's coordinates at impact, thereby swapping their roles. Immediately after swapping, the former swing leg is in contact with the ground and is poised to take on the role of the stance leg.

The result of the impact and the relabeling of the states provides an expression
$x+=Δ(x−)$
(3)
where $x+:=(q+;q˙+)$ (resp. $x−:=(q−;q˙−)$) is the state value just after (resp. just before) impact and
$Δ(x−):=[Δq(q−)Δq˙(q−) q˙−]$
(4)

A detailed derivation of the impact map is given in Ref. [15], showing that it is linear in the generalized velocities.

A hybrid model of walking is obtained by combining the single-support model and the impact model to form a system with impulse effects [45]. A noninstantaneous double-support phase can be added [37,39], but we choose not to do so here. Even though the mechanical model of the robot is time-invariant, we will allow feedback controllers for Eq. (2) that are time varying. So that the hybrid model in closed-loop can be analyzed with tools developed for time-invariant hybrid systems, we do the standard “trick” of adding time as a state variable via $τ˙=1$. The guard condition (aka switching set) for terminating a step is
$S:={(q,q˙)∈TQ | pswz(q)=0, p˙swz(q,q˙)<0}$
(5)
where $pswz(q)$ is the vertical height of the swing foot. It is noted that $S$ is independent of time. Combining Eqs. (2) and (3) with the guard set and time gives the hybrid model
$Σ:{x˙=f(x)+g(x)ux−∉Sτ˙=1x+=Δ(x−)x−∈Sτ+=0.$
(6)

It is emphasized that the guard condition for resetting the “hybrid time variable,” τ, is determined by foot contact.

### 2.3 Center of Mass Dynamics in Single Support.

While Eq. (2) is typically high dimensional and nonlinear, standard mechanics yields simpler equations for the evolution of the center of mass. For succinctness, we only consider the planar case and define the following variables:

• $(xc,zc)$: CoM position in the frame of the contact point, which is aligned to the sagittal plane.

• $vc$: CoM velocity in x-direction. The velocity in z-direction is denoted by $z˙c$

• $Lc$: y-component of Angular momentum about CoM.

• L: y-component of Angular momentum about contact point.

• ua: ankle torque at the contact point.

In addition, we note the following (standard) result
$L=Lc+m[xczc]∧[x˙cz˙c]$
(7)
where $∧$ is the 2D version of cross product
$[xczc]∧[x˙cz˙c]:=([xc0zc]×[x˙c0z˙c])•[010]$

We refer to Eq. (7) as the angular momentum transfer formula because it relates angular momentum determined about two different points.3

In the following, we provide the CoM dynamics for two sets of coordinates
$(xc,vc)(xc,L), and(θc,L)$
where
$θc:=atan(xc/zc)$
(8)

and we assume that $zc>0$. We will subsequently dedicate Sec. 4 to establishing connections between pendulum models and zero dynamics, which will allow the zero dynamics to be intuitively grounded in physics.

Case 1: (xc, vc) horizontal position and velocity—differentiating Eq. (7) and using $vc=x˙c$ results in
$x˙c=vcv˙c=gzcxc+z¨czcxc−L˙cmzc+uamzc$
(9)

In general, zc depends on q, $z˙c$ and Lc depend on both q and $q˙$. While $L˙c$ and $z¨c$ depend on q, $q˙$, and the motor torques u, it is more typical to replace the motor torques by the ground reaction forces. In particular, one uses $z¨c=g−1mFz$ and $L˙c:=ddtLc=xcFz−zcFx+ua$, where Fx and Fz are the horizontal and vertical components of the ground reaction forces. In turn, the ground reaction forces can be expressed as functions of q, $q˙$, and the motor torques, u.

Case 2:$(xc,L)$ angular momentum and horizontal position—manipulating Eq. (7) and using $L˙=mgxc+ua$ results in
$x˙c=Lmzc+z˙czcxc−LcmzcL˙=mgxc+ua$
(10)

The remarks made above on zc, $z˙c$, and Lc apply here as well.

Case 3:$(θc,L)$ alternative absolute angle (cyclic variable)—Differentiating Eq. (8) yields
$θ˙c=L−Lcmrc2(qb)$
(11)
where $rc=xc2+zc2.$ Combining Eqs. (7) and (11) yields
$θ˙c=L−Lcmrc2L˙=mgrc sin(θc)+ua$
(12)

It is remarked that the derivatives of the generalized coordinates only appear through Lc. In the following, we will keep the discussion primarily focused on Eq. (10), but most of the results apply to Eq. (12) as well; see Appendix  A.

## 3 Angular Momentum About Contact Point

In this paper, we are focusing on the angular momentum about the contact point, L, as a replacement for the center of mass velocity, $vc$, which is used as an indicator of walking status in many other papers [7,22,46,47]. Specific to this paper, L is also a state of the zero dynamics. Before we proceed to that, it is beneficial to explain why L can replace $vc$, summarize some general properties of L, and highlight some of its advantages versus $vc$. More specific advantages of using L in the zero dynamics and the LIP model will be discussed in Secs. 4 and 6.

We first need to answer why L can replace $vc$ as an indicator of walking. The relationship between angular momentum and linear momentum for a bipedal robot in its sagittal plane is
$L=Lc+pc∧mvc$
(13)

where $Lc$ is the angular momentum about the center of mass, $vc=[vc, z˙c]$ is the linear velocity of the center of mass, m is the total mass of the robot, and $pc=[xc, zc]$ is the vector emanating from the contact point to the center of mass.

For a bipedal robot that is walking instead of doing somersaults, it is reasonable to focus on gaits where the angular momentum about the center of mass oscillate about zero (e.g., arms are not rotating as in a flywheel). The oscillating property of $Lc$ is discussed in Refs. [48,49]. When $Lc$ oscillates about zero, Eq. (13) implies that the difference between L and $pc∧mvc$ also oscillates about zero, which we will write as
$L−pc∧mvc=Lc oscillates about 0$
(14)

From Eq. (14), we see that we approximately obtain a desired linear velocity by regulating L.4 Hence, in walking robots without a flywheel, one can replace the control of linear velocity with control of angular momentum about the contact point.

What are the advantages to using L?

• The first advantage of controlling L is that it provides a more comprehensive representation of current walking status because it is the sum of angular momentum about the center of mass, $Lc$, and linear momentum, $pc∧mvc$; see Fig. 3. From Eq. (9), we see that there exists momentum transfer between these two quantities. If $Lc$ increases, it must “take” some momentum away from $vc$, and vice versa. For normal bipedal walking, $Lc$ oscillates about zero. $Lc$ functions to store momentum [50], but importantly it can only store it for a short amount of time. When designing a foot placement strategy, it is important to take the “stored” momentum into account.

When balancing on one foot for example, some researchers plan $Lc$ and $vc$ separately [51], or use $Lc$ as an input to regulate balance by waving the torso, arms, or swing leg [52,53] or even a flywheel [54]. Here, instead of moving limbs to generate a certain value of $Lc$, we view $Lc$ as a result of the legs and torso moving to fulfill other tasks. In this paper, we observe $Lc$ and take it into consideration through L and do not seek to regulate it directly as an independent quantity.

• Second, because $L˙=mgxc+ua$ depends only on the CoM position, it follows that L has relative degree three with respect to all inputs except the stance ankle torque, where it has relative degree one. Here, relative degree is the number of times we need to take the time derivative of the output to see the input. For example, when ankle torque is zero
$L⃛=mgx¨c$
and we know that the (body motor) torques show up in $x¨c$; hence L has relative degree three with respect to the motor torques. Consequently, the evolution L is only weakly affected by motor torques of the body, that is ub, during a step. In Figs. 4(a), 4(d), and 5(a) we see that the trajectory of L consistently has a convex shape when stance ankle torque is zero, irrespective of model or speed. We'll see later the same property in experimental data.
• The discussion so far has focused on the single-support phase of a walking gait. Bipedal walking is characterized by the transition between left and right legs as they alternately take on the role of stance leg (aka support leg) and swing leg (aka non-stance leg). In double support, the transfer of angular momentum between the two contact points satisfies
$L2=L1+p2→1∧mvc$
(15)
where $p2→1$ is the vector from point 2 (the new stance leg position) to point 1 (the previous stance leg position). Hence, the change of angular momentum between two contact points depends only on the vector defined by the two contact points and the center of mass velocity. In particular, angular momentum about a given contact point is invariant under the impulsive force generated at that contact point. Consequently, we can easily determine the angular momentum about the new contact point by Eq. (15) when impact happens without resorting to approximating assumptions about the impact model. Moreover, if $z˙c$ is zero and the ground is level, then $p2→1∧mvc=0$, and hence L2 = L1. We note that pendulum models parameterized with CoM velocity often assume continuity at impact, which is not generally true for real robots.
Fig. 3
Fig. 3
Close modal
Fig. 4
Fig. 4
Close modal
Fig. 5
Fig. 5
Close modal

Figure 4 shows the evolution of L, vcLc and $L˙c$ during a step for both Cassie and Rabbit, when walking speed is about 2 m/s, $z˙c=0$, and no stance ankle torque is applied. Figure 5 shows the evolution of L, $vc, Lc$ for Rabbit walking at a range of speeds from −1.8 m/s to 2.0 m/s. Figures 4 and 5 also show the continuity property of L at impact.

## 4 Comparison of Approximate Models for Center of Mass Dynamics

Each of the dynamical models (9), (10), and (12) is valid along all trajectories of the full-dimensional model. This section systematically goes through the models in Sec. 2.3 and looks for connections with low-dimensional pendulum models. Subsequently, Sec. 6 makes connections between pendulum models and the zero dynamics.

### 4.1 Constant Pendulum Height.

If CoM height is constant, i.e., $zc=H, z˙c=0$, and $z¨c=0$, then Eqs. (9) and (10) become
$x˙c=vcv˙c=gHxc−L˙cmH+uamH$
(16)
and
$x˙c=LmH−LcmHL˙=mgxc+ua$
(17)
respectively. Equation (17) can be rewritten as
$x˙c=vp−LcmHv˙p=gHxc+uamH$
(18)

where $vp=LmH$, which is more directly comparable to Eq. (16). In this paper we frequently plot L scaled by the coefficient $1mH$ so that it can be more directly compared to $vc$ (same units and similar magnitudes).

At this point, no approximations have been made and both models are valid everywhere that $zc(q)≡H$. Hence, the two models are still equivalent representations of the center of mass dynamics for all trajectories satisfying $zc(q)≡H$. We'll next argue that the models are not equivalent when it comes to approximations.

Dropping the $L˙c$ term in Eq. (16) results in
$x˙c=vcv˙c=gHxc+uamH$
(19)

This is the well-known LIP model proposed by Kajita and Tani [46].

Dropping $Lc$ in Eq. (17) results in
$x˙c=LmHL˙=mgxc+ua$
(20)

which is used in Refs. [33,34]. In Ref. [33], Eq. (20) is used instead of Eq. (19) so that the easy “update” property of L at impact can be used. In this paper, we demonstrate that during the continuous phase, the states of Eq. (20) much more accurately capture the evolution of $(xc,L)$ in a real robot than the states of Eq. (19) capture the evolution of $(xc,vc)$. Moreover, we will make use of this improved accuracy in the design of a feedback controller. To distinguish the model (20) from (19), we will denote it by ALIP, where A stands for Angular Momentum.

For a robot with a point mass, the two models (19) and (20) are equivalent, because $Lc$ is then identically zero. For a real robot with $Lc$ and $L˙c$ that are non-negligible, however, we argue that Eq. (20) is more accurate than Eq. (19) primarily because of two properties,

• Relative amplitude: Based on our observations, the ratio of $L˙c/mgxc$ is much larger than $Lc/L$ over a wide range of walking velocities; thus the simplification (Eq. (20)) introduces relatively less error than Eq. (19).

• Relative degree: L has relative degree two with respect to $Lc$ and three with respect to $L˙c$, whereas $vc$ has relative degree one with respect to $L˙c$. Because integration is a form of low-pass filtering, the lower relative degree makes $vc$ more sensitive to the omission of the $Lc$ term.

In Fig. 6, we have used the models (19) and (20) to predict the values of $vc$ and L at the end of a step. We plot $LmH$ instead of L to make the scale and units comparable. The blue line is the true trajectory of L (resp. $vc$) during a step. The red line shows the predicted value of L (resp. vc) at the end of the step as evaluated instantaneously at each point in time (as it would be by a predictor running online). The red line would be perfectly flat if Eqs. (20) and (19) perfectly captured the evolution of L (resp. $vc$), in the full simulation model, and the flatter the prediction, the more faithful is the representation.

Fig. 6
Fig. 6
Close modal
The prediction errors of Eqs. (19) and (20) caused by neglecting $Lc$ and $L˙c$, respectively, satisfy
$x˙e=vev˙e=gHxe−L˙cmH$
(21)
and
$x˙e=LemH−LcmHL˙e=mgxe$
(22)
where (xe, Le) are the differences in the trajectories of Eqs. (20) and (17); similarly, (xe, ve) are the differences in the trajectories of Eqs. (19) and (16). Direct solution of these two sets of differential equations for zero initial conditions leads to
$ve(t2,t1)=e1(t2,t1)=e2(t2,t1)+e3(t2,t1)$
(23)
$Le(t2,t1)mH=e2(t2,t1)$
(24)
where
$e1(t2,t1)=−1mH∫t1t2cosh(ℓ(t2−τ))L˙c(τ) dτe2(t2,t1)=−1mH∫t1t2ℓsinh(ℓ(t2−τ))Lc(τ) dτe3(t2,t1)=−1mH(Lc(t2)−cosh(ℓ(t2−t1))Lc(t1))$

Figure 7 shows the (relative) sizes of these error terms.

Fig. 7
Fig. 7
Close modal

If we view $Lc$ as a disturbance and prediction error as an output in Eqs. (21) and (22), we obtain the corresponding Laplace transforms and Bode plots shown in Fig. 8.

Fig. 8
Fig. 8
Close modal

### 4.2 Simulation Comparison.

We compare controllers designed on the basis of the ALIP and LIP models in simulation. (The controller design is discussed in Sec. 5.) The results shown in Fig. 9 demonstrate the advantage of using ALIP over LIP for controller design. The initial hip velocity is set to 0.5 m/s and hip position is centered over the contact point. The goal of each controller is to regulate $vc$ (resp., L) to zero, with foot placement as the decision variable and step duration constant. In the plots, we observe that the ALIP-based controller regulates L closely to zero and thus has an average $vc$ close to zero, while the LIP-based controller is unable to regulate $vc$ effectively. The reason is that, at the end of a step, the linear momentum was transferred to centroidal angular momentum $Lc$ due to the movement of Rabbit's heavy legs (see Eq. (18)), resulting in a small $vc$, which misleads the LIP controller into choosing a small foot displacement. In the ALIP model, L is less affected by momentum transfer between $vc$ and $Lc$ because L captures their sum, and thus the ALIP model suggests better foot placement. Though with a LIP controller it is possible to regulate velocity through ZMP (ankle torque) during continuous phase, we argue that with an ALIP controller, the capability of ZMP can be reserved for better purposes than compensating for model error.

Fig. 9
Fig. 9
Close modal

### 4.3 Non-Zero Ankle Torque.

In Secs. 4.1 and 4.2, we have demonstrated the accuracy of a pendulum model parameterized with L when ankle torque is zero. According to Eq. (10), the effect of $Lc$ and ua on the system are independent due to the superposition property. So if dropping the $Lc$ term has little effect on the model accuracy when ua is zero, it should still have little effect on the model accuracy when ua is nonzero. Though the $Lc$ trajectory itself will be changed when ua is nonzero, its pattern is still similar.

## 5 Stabilizing the ALIP Model

In this section, we provide a means to regulate angular momentum about the contact point to approximately achieve a desired walking speed. Specifically, the ALIP model (20) is used to form a one-step ahead prediction of angular momentum, L. In combination with the angular momentum transfer formula (15), a feedback law results for where to place the swing foot at the end of the current step so as to achieve a desired angular momentum at the end of the ensuing step. In robot locomotion, this is typically called “foot placement control” [4,7,55,56].

L can also can be controlled through vertical CoM velocity at the end of a step [33], adjusting the step duration [46,57], ankle torque during continuous phase [29], which has a relative degree one relation to L, or by other torques applied at the body coordinates during the continuous single-support phase [31,32,58], which have a relative degree three relation to L. We summarize these general methods5 to regulate L in Table 1.

Table 1

Methods to regulate L for walking

Continuous phase
Relative degree threeL c, zc
Relative degree oneua
Transition event
Initial condition for next continuous phase$xc(0)$, L(0)
Phase durationStep time
Continuous phase
Relative degree threeL c, zc
Relative degree oneua
Transition event
Initial condition for next continuous phase$xc(0)$, L(0)
Phase durationStep time

### 5.1 Gait Assumptions.

When designing the foot placement controller, we assume the gait of the robot is controlled such that:

• the height of the center of mass is constant, that is $zc≡H>0$;

• each step has constant duration T > 0; and

• a desired swing leg horizontal position, $psw→CoMx des$, can be achieved at the end of the step.

We'll explain how to accomplish these objectives via the method of virtual constraints in Secs. 6 and 7.

### 5.2 Notation.

We distinguish among the following time instances when specifying the control variables.

• T is the step time.

• Tk is the time of the kth impact and thus equals $kT$.

• $Tk−$ is the end time of step k, so that

• $Tk+$ is the beginning time of step k + 1 and $Tk+1−$ is the end time of step k + 1.

• $(Tk−−t)=(T−τ(t))$ is the time until the end of step k.

The superscripts + and – on Tk are necessary because of the (potential) jump in a trajectory's values from the impact map; see Ref. [15]. As shown in Fig. 10, $x(Tk−)$ is the limit from the left of the model's solution at the time of impact, in other words its value “just before” impact, while $x(TK+)$ is the limit from the right of the model's solution at the time of impact, in other words its value “just after” impact.

Fig. 10
Fig. 10
Close modal
With this notation, the reset map for the ALIP becomes
$xc(Tk+)=psw→CoMx(Tk−)L(Tk+)=L(Tk−)$
(25)

after noting that Eq. (15) simplifies to L being constant across impacts when the ground is level and the vertical velocity of the center of mass is zero.

• $pst→CoM, psw→CoM$ are the vectors emanating from stance/swing foot to the robot's center of mass. The stance foot defines the current contact point, while the swing foot is defining the point of contact for the next impact and is therefore a control variable.

• Also, for the implementation of the control law on the 3D biped Cassie in Sec. 7, we need to distinguish between L and Lx, the y and x components of the angular momentum (sagittal and frontal planes), respectively.

### 5.3 Foot Placement in Longitudinal Direction.

The control objective will be to place the swing foot at the end of the current step so as to achieve a desired value of angular momentum at the end of the ensuing step. The need to regulate the angular momentum one-step ahead of the current step, instead of during the current step, is because in Eq. (20)L is passive when stance ankle torque is set to zero; in other words, it is not affected by the actions of the other actuators during the current step. The only way to act on its states is through the transition events.

The closed-form solution of Eq. (20) at time T and initial time t0 is
$[xc(T)L(T)]=A(T−t0)[xc(t0)L(t0)]$
(26)
where
$A(t)=[cosh(ℓt)sinh(ℓt)/(mHℓ)mHℓsinh(ℓt)cosh(ℓt)]$

and $ℓ=gH$.

In the following, we break down the evolution of L from t to $Tk+1−$, for three key time intervals or instances with the aim of forming a one-step-ahead prediction of angular momentum about the contact point.

#### 5.3.1 From t to $Tk−$⁠.

From the second row of Eq. (26), an prediction for the angular momentum about the contact point at the end of current step, $L̂(Tk−,t)$, can be continuously updated by
$L̂(Tk−,t)=mHℓsinh(ℓ(Tk−−t))xc(t)+cosh(ℓ(Tk−−t))L(t)$
(27)

Forming the running prediction in Eq. (27), versus a fixed prediction based on the values of xc and L at the beginning of the step, allows disturbances to be taken into account.

#### 5.3.2 From $Tk−$to$Tk+$⁠.

This involves applying the reset map (25), yielding
$xc(Tk+)=psw→CoMx(Tk−)$
(28)
$L̂(Tk+,t)=L̂(Tk−,t)$
(29)

#### 5.3.3 From $Tk+$to$Tk+1−$⁠.

Similar to Eq. (27), the angular momentum at the end of the next step is predicted by
$L̂(Tk+1−,t)=mHℓsinh(ℓT)xc(Tk+)+cosh(ℓT)L̂(Tk+,t)$
(30)
Solving Eqs. (27)(30) so that
$L̂(Tk+1−,t)=Ly des$
a desired value of angular momentum at the end of a step, (which can be obtained by $Ly des=mHvx des$), yields a formula for the desired swing foot position at the end of the current step, given the value of desired angular momentum at the end of the next step
$psw→CoMx des(Tk−,t):=Ly des−cosh(ℓT)L̂(Tk−,t)mHℓsinh(ℓT)$
(31)
Remark. Instead of the deadbeat control (31), it is possible to asymptotically approach a desired value of $Ldes$ with the control law
$psw→CoMx des(Tk−,t):=1−αmHℓsinh(ℓT)Ly des+α−cosh(ℓT)mHℓsinh(ℓT)L̂(Tk−,t)$
(32)
which achieves
$(Ly des−L̂(Tk+1−,t))=α(Ly des−L̂(Tk−,t))$
(33)

for $α∈[0,1)$. Hence, for α = 0, Eq. (32) reduces to Eq. (31).

### 5.4 Stability Analysis of the ALIP for $Ldes$⁠.

Consider the ALIP model (20) with zero ankle torque and reset map (25). To compute the Poincaré map, we take the Poincaré section as $S:={(xc,L,τ) | τ=0+}$, which is the set of states just after impact. Computing Eq. (20) over one step and using swing foot position with respect to the center of mass, ufp, as an input, yields
$[xc(T+)L(T+)]=[00mHℓsinh(ℓT)cosh(ℓT)][xc(0+)L(0+)]+[10]ufp(T−)$
(34)
Next, applying the feedback law (32) with $Ldes$ a constant results in the Poincaré map being
$[xc(T+)L(T+)]=[α−cosh(ℓT)(α−cosh(ℓT))cosh(ℓT)mHℓsinh(ℓT)mHℓsinh(ℓT)cosh(ℓT)][xc(0+)L(0+)]+[1−αmHℓsinh(ℓT)0]Ldes$
(35)
The Poincaré map has fixed point
$[xc∗L∗]=[1−cosh(ℓT)mHℓsinh(ℓT)LdesLdes]$
(36)

independent of α and the eigenvalues of the Poincaré map are $(α,0)$. Hence, for all $0≤α<1$, the fixed point is exponentially stable and moreover, Eq. (35) is bounded-input bounded-state stable with respect to the command, $Ldes$.

### 5.5 Lateral Control and Turning.

From Eq. (17), the time evolution of the angular momentum about the contact point is decoupled about the x- and y-axes. Therefore, once a desired angular momentum at the end of the next step is given, lateral control is essentially identical to longitudinal control and Eq. (31) can be applied equally well in the lateral direction.6 We add a superscript x to Lx to make it clear that we are working in the frontal plane. The question becomes how to decide on $Lx des(Tk+1−)$, since it cannot be simply set to zero for walking with a nonzero stance width.

For walking in place or walking with zero average lateral velocity, it is sufficient to obtain $Lx des$ from a periodically oscillating ALIP model
$Lx des(Tk+1−)=±12mHWℓsinh(ℓT)1+cosh(ℓT)$
(37)

where W is the desired step width. The sign is positive if next stance is left stance and negative if next stance is right stance. Lateral walking can be achieved by adding an offset to $Lx des$.

To enable turning, we assume a target direction is commanded and associate a frame to it by aligning the x-axis with the target direction while keeping the z-axis vertical. To achieve turning, we then define the desired angular momentum $Ly des$ and $Lx des$ in the new frame and use the hip yaw-motors to align the robot in that direction.

## 6 Pendulum Models, Zero Dynamics, and Overall System Stability

This section establishes connections between the pendulum models of Sec. 2.3 and the swing phase zero dynamics as developed in Ref. [15], or more precisely, approximations of the zero dynamics. This is accomplished by analyzing how the zero dynamics are driven by the states of a bipedal robot's full-order model and its feedback controller when the closed-loop system is evolving off the zero dynamics manifold. As a main contribution, the analysis will yield conditions under which the driving terms are small and hence do not adversely affect the stability predictions associated with the exact zero dynamics. A secondary contribution of the section will be a presentation of the swing phase zero dynamics for a more general set of “virtual constraints” than those developed in Refs. [15,20,59].

### 6.1 Intuitive Background.

An initial sense of the meaning and mathematical foundation of the swing phase zero dynamics can be gained by considering a floating-base model of a bipedal robot, and then its pinned model, that is, the model with a point or link of the robot, such as a leg end or foot, constrained to maintain a constant position respect to the ground. The given contact constraint is holonomic and constant rank, and thus using Lagrange multipliers (from the principle of virtual work), a reduced-order model compatible with the (holonomic) contact constraint is easily computed. When computing the reduced-order model, no approximations are involved, and solutions of the reduced-order model are solutions of the original floating-base model, with inputs (ground reaction forces and moments) determined by the Lagrange multiplier.

Virtual constraints are relations (i.e., constraints) on the state variables of a robot's model that are achieved through the action of actuators and feedback control instead of physical contact forces. They are called virtual because they can be reprogrammed on the fly without modifying any physical connections among the links of the robot or its environment. We use virtual constraints to synchronize the evolution of a robot's links, so as to create exponentially stable motions. Like physical constraints, under certain regularity conditions, they induce an exact low-dimensional invariant model, called the zero dynamics, due to the highly influential paper [23].

Each virtual constraint imposes a relation between joint variables, and by differentiation with respect to time, a relation between joint velocities. As a consequence, for the virtual constraints studied in this paper, the dimension of the zero dynamics is the number of states in the robot's (pinned) model minus twice the number of virtual constraints (which can be at most the number of independent actuators). As explained in Ref. [60], the computation of the motor torques to impose virtual constraints parallels the Jacobian computations for the ground reaction forces in a pinned model.

### 6.2 Allowing Non-Holonomic, Time-Varying Virtual Constraints.

In this section, we choose L as one of the states of the zero dynamics so that fully actuated and underactuated biped models can be addressed simultaneously; we suppose that the torque distribution matrix B(q) in Eq. (1) can be split so that
$B(q)u=:Ba(q)ua+Bb(q)ub$
(38)

where ua is the torque affecting the stance ankle as in Sec. 2.3, and $ub∈ℝn$ are actuators affecting the body coordinates, qb. When the robot is underactuated, $Ba(q)$ is an empty column vector.

We define n virtual constraints as an output zeroing problem of the form
$y=h(q,L,τ)=h0(q)−hd(xc,L,τ)$
(39)
where τ captures time dependence. Note that we are abusing notation and using y in a second sense for compatibility with numerous other publications on HZD methods. As in Sec. 2.3, we use L instead of other functions of $q˙$ because L has relative degree three with respect to all actuators except stance ankle torque, while $q˙$ has relative degree one. Hence, the relative degree of y is determined by q once ua is fixed. Indeed, while ub is used for imposing the virtual constraints, ua can be used for shaping the evolution of xc and L directly. We assume a feedback law, ua, of the form
$ua(xc,L,τ)$
(40)

and note that ua should respect relevant ankle torque limits and ZMP constraints when $y≡0$.

Following Refs. [15,23,61], we make the following specific regularity assumptions for the virtual constraints:

1. h is at least twice continuously differentiable and ua is at least once differentiable.

2. The virtual constraints (39) are designed to identically vanish on a desired nominal solution (gait) $(q¯(t),q¯˙(t),u¯(t))$ of the dynamical model (6) with $τ(t)=t$, where the solution meets relevant constraints on motor torque, motor power, ground reaction forces, and work space. To be clear, y vanishing means
$h0(q¯)−hd(x¯c,L¯,τ)≡0$
(41)
for $0≤t≤T$, where $L¯(t)$ is the angular momentum about the contact point, evaluated along the trajectory.
3. The decoupling matrix
$A(q):=∂h(q,L,t)∂qD−1(q)Bb(q)$
(42)
is square and invertible along the nominal trajectory, so that, from Refs. [61] and [62], by treating ua as a known signal, there exists a feedback controller of the form
$ub=:γ(q,q˙,τ)+γa(q,L,τ)ua$
(43)
resulting in the closed-loop dynamics
$y¨+Kdy˙+Kpy=0,$
(44)
with $Kd>0$ and $Kp>0$ positive definite.
4. The function
$[yy˙xcL]$
(45)
is full rank and injective in an open neighborhood of the nominal solution $(q¯(t),q¯˙(t)) ∀t$.

From Refs. [15,23,61], the above assumptions imply that $(y,y˙,xc,L)$ is a valid set of coordinates for the full-order swing phase model (2). In particular,

1. there exists an invertible differentiable function $Φ$ such that
$[qq˙τ]=Φ(y,y˙,xc,L,τ), and$
(46)
2. the swing-phase zero dynamics, that is, the dynamics of the robot compatible with $y≡0$, exists and can be parameterized by $(xc,L)$.

### 6.3 Zero Dynamics and Approximate Zero Dynamics.

From Assumptions A1 to A4, it follows that the swing-phase zero dynamics exists and for $ξ=(xc,L,τ)$ can be expressed as
$ξ˙=fzero(ξ)$
(47)

when $y≡0$. As with the popular pendulum models, the dimension of Eq. (47) is low; it has two states plus time. Unlike the pendulum models, Eq. (47) is exact. Moreover, tools are known for relating periodic orbits of the hybrid version of Eq. (47) to corresponding orbits in the full-order model (6), including their stability properties; see Sec. 6.4.

On the basis of Eq. (10) evaluated at Eq. (46), the zero dynamics (47) can be written more explicitly as
$x˙c=Lmzc(xc,L,τ)+z˙c(xc,L,τ)zc(xc,L,τ)xc−Lc(xc,L,τ)mzc(xc,L,τ)L˙=mgxc+ua(xc,L,τ)τ˙=1$
(48)

The state $τ˙=1$ is included in Eq. (48) because, at hybrid transitions, τ is reset to zero, that is, $τ+:=0$. As discussed above, this reduced-order model is exact along all trajectories of the full-order model for which $y≡0$.

If one of the virtual constraints in Eq. (39) is $zc−H$, that is, the center of mass height is regulated to a constant, then the zero dynamics (exactly) simplifies to
$x˙c=LmH−Lc(xc,L,τ)mHL˙=mgxc+ua(xc,L,τ)τ˙=1.$
(49)

This model is nonlinear and time-varying through Lc and possibly, the feedback control policy chosen for the stance ankle torque, ua. We've argued in Sec. 4 that Lc can be dropped from the model. Doing so results in the ALIP model, (20). Hence, the ALIP model is an approximate swing-phase zero dynamics when the center of mass height is controlled to a constant.

### 6.4 Consequences for Closed-Loop Stability of the Full-Order Model.

When the foot placement policy (32) is applied to Eq. (49) with the reset map (25), the resulting closed-loop system is a (small) perturbation of a hybrid system that possesses a family of exponentially stable periodic orbits parameterized by $Ldes$. If the virtual constraints in Eq. (39) are hybrid7 invariant for constant $Ldes$ [15,65,66], then

• Equation (49) with impact map (25) is the hybrid zero dynamics, and

• An exponentially stable periodic solution of the hybrid zero dynamics is also an exponentially stable solution of the full order closed-loop system for appropriate choices of the feedback gains Kp and Kd in Eq. (44).

Consequently, the closed-loop system would possess a family of exponentially stable periodic orbits parameterized by $Ldes$. If the virtual constraints are not hybrid invariant, then Eq. (49) with Eq. (25) does not form a hybrid zero dynamics in the sense of Ref. [15], but rather a limit restriction dynamics [67, pp. 102]. Moreover, via the Brouwer Fixed Point Theorem, Ref. [67, Theorem 6, pp. 105] shows each exponentially stable periodic solution of the limit restriction dynamics corresponds to an exponentially stable periodic solution of the full model for appropriate design of the feedback gains in Eq. (44).

To illustrate the correspondence between exponentially stable motions of the ALIP and the full-order model, we turn to the Rabbit model controlled via virtual constraints that implement the foot placement control law (32), the center of mass at a constant height, the torso upright, and adequate foot clearance. We then numerically estimate the Jacobian of the Poincare map for the closed-loop full-order model and compare its dominant eigenvalues to the dominant eigenvalue of the closed-loop ALIP model; see Ref. (34).

In Table 2, for various values of α in the step placement feedback controller, we show the dominant eigenvalue from the ALIP model and the dominant eigenvalue from the numerically estimated Poincaré map. We see that the dominant eigenvalue of the full-order closed-loop system corresponds to the dominant eigenvalue of the ALIP model for $0≤α≤0.9$. The remaining eigenvalues of the full model are (very) small due to the gains chosen in Eq. (44). In fact, the zero dynamics captures the “weakly actuated,” slow part of the full-order model that is evolving under the influence of gravity.

Table 2

Largest eigenvalues of ALIP and Rabbit under different α, for a two-step Poincaré map

αALIPRabbit
0.90.810.781
0.80.640.601
0.70.490.442
0.60.360.299
0.50.250.168
0.40.160.052
0.30.090.013
0.20.042 × 104
0.10.012 × 104
0.00.001 × 10−4
αALIPRabbit
0.90.810.781
0.80.640.601
0.70.490.442
0.60.360.299
0.50.250.168
0.40.160.052
0.30.090.013
0.20.042 × 104
0.10.012 × 104
0.00.001 × 10−4

Because the Poincaré map is computed over two steps, the ALIP's largest eigenvalue is $α2$.

### 6.5 Non-Periodic Walking.

The desired angular momentum, $Ldes$, determines the fixed point of the Poincaré map and hence the walking speed of the robot. While varying $Ldes$ causes the walking speed to change, the analysis of the controller has only been presented for a constant value of $Ldes$. Reference [68] analyzes gait transitions in the formalism of the hybrid zero dynamics when $Ldes$ is switched “infrequently,” meaning the closed-loop system is moving from a neighborhood of one periodic orbit to another. References [69,70] generalize tools from Input-to-State Stability (ISS) of ODEs to the case of hybrid models. These results apply to time-varying $Ldes$. The experimental work reported in Sec. 9 includes examples of rapidly varying $Ldes$, turn direction, and ground height.

### 6.6 Varying Center of Mass Height.

We have seen that the difference between the zero dynamics of a real robot and a pendulum model is the term related to Lc. In previous sections, we have shown that the Lc term has very little effect on the L dynamics when zc is constant. [In the sentence beginning “In previous sections, we have….” Please specify which section or subsection “in previous sections” refers to here.] This observation can be extended to the case when zc is not constant but virtually constrained by $(xc,L,τ)$.

In Fig. 11, we illustrate that when zc is a function of time, the pendulum dynamics can still be used to predict accurately the zero dynamics of Rabbit.

Fig. 11
Fig. 11
Close modal

## 7 Integrating Virtual Constraints and Angular-Momentum-Based Foot Placement

In this section, we generate virtual constraints for a 3D robot such as Cassie. As in Ref. [71], we leave the stance toe passive. Consequently, there are nine (9) control variables, listed below from the top of the robot to the end of the swing leg,
$h0=[torso pitchtorso rollstance hip yawswing hip yawpst→CoMzpsw→CoMxpsw→CoMypsw→CoMzswing toe absolute pitch]$
(50)

For later use, we denote the value of h0 at the beginning of the current step by $h0(Tk−1+)$. When referring to individual components, we'll use $h03(Tk−1+)$, for example.

We first discuss variables that are constant. The reference values for torso pitch, torso roll, and swing toe absolute pitch are constant and zero, while the reference for $pst→CoMz$, which sets the height of the CoM with respect to the ground, is constant and equal to H.

We next introduce a phase variable
$s:=t−Tk−1+T$
(51)

that will be used to define quantities that vary throughout the step to create stance and swing leg trajectories.” The reference trajectories of $psw→CoMx$ and $psw→CoMy$ are defined such that:

• at the beginning of a step, their reference value is their actual position;

• the reference value at the end of the step implements the foot placement strategy in Eq. (31); and

• in between a half-period cosine curve is used to connect them, which is similar to the trajectory of an ordinary (non-inverted) pendulum.

The reference trajectory of $psw→CoMz$ assumes the ground is flat and the control is perfect:

• at mid stance, the height of the foot above the ground is given by zCL, for the desired vertical clearance.

The reference trajectories for the stance hip and swing hip yaw angles are simple straight lines connecting their initial actual position and their desired final positions. For walking in a straight line, the desired final position is zero. To include turning, the final value has to be adjusted. Suppose that a turn angle of $ΔDkdes$ radians is desired. One half of this value is given to each yaw joint:
$+12ΔDkdes→swing hip yaw; and−12ΔDkdes→stance hip yaw$

The signs may vary with the convention used on other robots.

The final result for Cassie Blue is
$hd(s):=[00(1−s)h03(Tk−1+)+s(−12(ΔDk))(1−s)h04(Tk−1+)+s(12(ΔDk))H12[(1+cos(πs))h06(Tk−1+)+(1−cos(πs))psw→CoMx des(Tk−)]12[(1+cos(πs))h07(Tk−1+)+(1−cos(πs))psw→CoMy des(Tk−)]4zCL(s−0.5)2+(H−zCL);0]$
(52)

When implemented with an input–output linearizing controller8 so that h0 tracks hd, the above control policy allows Cassie to move in 3D in simulation.

## 8 Practical Implementation on Cassie

This section resolves several issues that prevent the basic controller from being implemented on Cassie Blue.

### 8.1 IMU and EKF.

In a real robot, an IMU and an EKF are needed to estimate the linear position and rotation matrix at a fixed point on the robot, along with their derivatives. Cassie uses a VectorNav IMU. We used the Contact-aided Invariant EKF developed in Refs. [73] to estimate the torso velocity. With these signals in hand, we could estimate angular momentum about the contact point.

### 8.2 Filter for Angular Momentum.

Angular momentum about the contact toe could be computed directly from estimated $[q,q˙]$, but it is noisy. We used a Kalman filter to improve the estimation. The models we used are
$Prediction: L(k)=AL(k−1)+Bu(k)+δCorrection: L obs(k)=CL(k)+ε$
(53)
where $A=B=C=1, u(k)=(mgxc(k)+ua(k))ΔT$. The variables δ and ε are the variance of the noise terms. The update formula for angular momentum is
$L(k)=(I−K(k)C)(AL(k−1)+Bu(k))+K(k)L obs(k)$
(54)

The Kalman Gain K(k) is obtained following the algorithm described in Ref. [74, Sec. 3.2].

### 8.3 Inverse Kinematics.

Input–output linearization does not work well in experiments [71,75,76]. To use a passivity-based controller for tracking that is inspired by Sadeghian et al. [62], we need to convert the reference trajectories for the variables in Eq. (50) to reference trajectories for Cassie's actuated joints
$qact=[torso pitchtorso rollstance hip yawswing hip yawstance knee pitchswing hip rollswing hip pitchswing knee pitchswing toe pitch]$
(55)

Iterative inverse kinematics is used to convert the controlled variables in Eq. (50) to the actuated joints.

### 8.4 Passivity-Based Controller.

We adapt the passivity-based controller developed in Ref. [62] to achieve joint-level tracking. This method takes the full-order model of robot into consideration and, on a perfect model, will drive the virtual constraints asymptotically to zero. The derivation is given in the Appendix. More trajectory tracking controllers that address model uncertainty, compliance and hybrid biped model are discussed in Refs. [65,77,78].

### 8.5 Springs.

On the swing leg, the spring deflection is small and thus we are able to assume the leg to be rigid. On the stance leg, the spring deflection is non-negligible and hence requires compensation. While there are encoders on both sides of the spring to measure its deflection, direct use of this leads to oscillations. The deflection of the spring is instead estimated through a simplified model.

### 8.6 COM Velocity in the Vertical Direction.

When Cassie's walking speed exceeds one meter per second, the assumption that $vCoMz≈0$ breaks down due to the spring and imperfect low level control, and Eq. (29) is no longer valid. Hence, we use
$L(Tk+)=L(Tk−)+mz˙c(Tk−)(psw→CoMx(Tk−)−pst→CoMx(Tk−))$
(56)
From this, the foot placement is updated to
$psw→CoMx des(Tk−)=Ldes(Tk+1−)m(Hℓsinh(ℓT)−z˙c)cosh(ℓT)−(L(Tk−)+mz˙c(Tk−)pst→CoMx(Tk−))cosh(ℓT)m(Hℓsinh(ℓT)−z˙c)cosh(ℓT)$
(57)

Remark. In our experiments, $vCoMz$ becomes negative at the end of a step when the robot is walking fast. If we still use Eq. (31) to decide foot placement, which is based on the reset map (29), in the lateral direction $Lx(Tk+)$ will be overestimated. This in turn leads to the lateral foot placement being commanded further from the body than it should be. At the end of the next step, the magnitude of Lx will be larger than expected, requires even further lateral foot placement from the body. The final phenomenon is abnormally large step width.

## 9 Experimental Results

The controller (Fig. 12) was implemented on Cassie Blue. The closed-loop system consisting of robot and controller was evaluated in a number of situations (Fig. 15) that are itemized below.

• Walking in a straight line on flat ground: Cassie could walk in place and walk stably for speeds ranging from zero to 2.1 m/s.

• Diagonal walking: Cassie is able to walk simultaneously forward and sideways on grass, at roughly 1 m/s in each direction.

• Sharp turn: While walking at roughly 1 m/s, Cassie Blue effected a 90 deg turn in six steps, without slowing down.

• Rejecting the classical kick to the base of the hips: Cassie was able to remain upright under “moderate” kicks in the longitudinal direction. The disturbance rejection in the lateral direction is not as robust as the longitudinal, which is mainly caused by Cassie's physical design: small hip roll motor position limits.

• Finally we address walking on rough ground: Cassie Blue was tested on the iconic Wave Field of the University of Michigan North Campus. The foot clearance was increased from 10 cm to 20 cm to handle the highly undulating terrain. Cassie is able to walk through the “valley” between the large humps with ease at a walking pace of roughly 0.75 m/s, without falling in all tests. The row of ridges running east to west in the Wave Field is roughly 60 cm high, with a sinusoidal structure. We estimate the maximum slope to be 40 deg. Cassie is able to cross several of the large humps in a row, but also fell multiple times. On a more gentle, straight grassy slope of roughly 22 deg near the laboratory, Cassie can walk up it with no difficulty with 20 cm foot clearance.

Fig. 12
Fig. 12
Close modal

The experimental data are analyzed in Figs. 1315. The figures support the advantages of using L to indicate robot status and the accuracy of ALIP model, as discussed in Secs. 3 and 4.

Fig. 13
Fig. 13
Close modal
Fig. 14
Fig. 14
Close modal
Fig. 15
Fig. 15
Close modal

## 10 Conclusions

We established connections between various approximate pendulum models that are commonly used for heuristic controller design and those that are more common in the feedback control literature where formal stability guarantees are the norm. The paper clarified commonalities and differences in the two perspectives for using low-dimensional models. In the process of doing so, we argued that models based on angular momentum about the contact point provide more accurate representations of robot state than models based on linear velocity. Specifically, we showed that an approximate (pendulum or zero dynamics) model parameterized by angular momentum provides better predictions on a physical robot (e.g., legs with mass) than does a related approximate model parameterized in terms of linear velocity, basing the foot placement planned on angular momentum model provides improved speed control of the robot. While ankle torque, if available, can achieve small changes in angular momentum during a step, the limitations of foot rotation about its extremities prevent ankle torque from achieving large changes in angular momentum during a step. For this reason, we focused our analysis on regulating angular momentum about the contact point step-to-step and not within a step. We implemented a one-step-ahead angular-momentum-based controller on Cassie, a 3D robot, and demonstrated high agility and robustness in experiments. Using our new controller, Cassie was able to accomplish a wide range of tasks with nothing more than common sense task-based tuning: a higher step frequency to walk at 2.1 m/s and extra foot clearance to walk over slopes exceeding 22 deg. Moreover, in the current implementation, there is no optimization of trajectories used in the implementation on Cassie. The robot's performance is currently limited by the hand-designed trajectories leading to joint-limit violations and foot slippage. These limitations will be mitigated by incorporating optimization and/or constraints via MPC.

In addition to the foot placement scheme described in this paper, the ALIP model can be combined with many other control methods that have been implemented on the LIP model: it can be used with ZMP in an MPC scheme as in Refs. [911], or used with Capture Point as in Refs. [4,5], or used with an estimated Lc [13,14]. As has already been done in Ref. [33], L can be regulated by controlling the center of mass velocity just before impact, as well.

## Acknowledgment

The authors thank Omar Harib and Jiunn-Kai Huang for their assistance in the experiments.

## Funding Data

• National Science Foundation (Award ID: 1808051; Funder ID: 10.13039/100000001).

• Toyota, USA (Funder ID: 10.13039/100004362 ).

## Footnotes

1

The approaches in Refs. [2528] to build reduced-order models via embeddings are a step toward attaching physical significance to the zero dynamic models.

2

All vectors discussed in this paper are column vectors.

3

A 3D version of the angular momentum transfer formula is $L=Lc+[xc,yc,zc]⊤×m[x˙c,y˙c,z˙c]⊤$

4

When CoM height is a constant H, $L−mHvc=Lc$.

5

With the exception of the method based on regulating Lc, each of the methods listed in Table 1 can be applied to a pendulum model parameterized with L. For humans, Lc is mainly utilized when we are about to fall off a support structure, such as when balancing on a tightrope. In bipedal robots without a flywheel, the effect of Lc on L is weak, due to multiple factors such as kinematic constraints, torque limits, and being relative degree three with respect to body torques. Lc is an ineffective means of regulating L for the same reasons that dropping Lc in the ALIP model does not introduce significant inaccuracy.

6

With a slight difference in the sign due to $Lx=−mgyc$.

7

Hybrid invariance means that if y and $y˙$ are zero before the impact, they will also be zero after the impact. References [63,64] show how to systematically modify a given set of virtual constraints to achieve hybrid invariance.

8

The required kinematic and dynamics functions are generated with FROST [72].

9

Experiment Video Compilation https://youtu.be/o8msaembEu8

10

### Appendix A: Constant Pendulum Length

Suppose that one component of the virtual constraints in Eq. (39) is $rc(q)−R$, where R is a constant. Then, $y≡0$ yields rc = R, simplifying (12) to
$θ˙c=L−LcmR2L˙=mgR sin(θc)+ua$
(A1)

At this point, no approximations have been made and the models is valid everywhere that $rc(q)≡R$. An interesting aspect of this pendulum model is that it does not depend on $R˙$, and thus imperfections in achieving the virtual constraint rc = R have a smaller effect here than in Eq. (17), where $z˙$ would appear when $zc≠H$, or in Eq. (16), where both $z˙c$ and $z¨c$ would appear.

As with (17), the model (A1) is driven by the strongly actuated states $qb,qb˙$ through Lc and the same discussion applies. Dropping Lc in Eq. (10) results in
$θ˙c=LmR2L˙=mgR sin(θc)+ua$
(A2)
which is nonlinear in θc. However, for R =1 and a step length of 60 cm, $maxθc≈π/6$, and for 70 cm, $maxθc≈π/4$, giving simple bounds on the approximation error
$1π/6∫0π/6(θ−sin(θ))dθ<0.0061π/4∫0π/4(θ−sin(θ))dθ<0.02$
Moreover, if desired, one can chose K to set
$1θmax|∫0θmax(Kθ−sin(θ))dθ|=0$

For $θmax=π/4$, the value is $K≈0.95$. While a linear approximation is useful for having a closed-form solution, numerically integrating the nonlinear model (A2) in real-time is certainly feasible.

The discussion on the approximate zero dynamics can be repeated here. The associated impact map is nonlinear and can be linearized about a nominal solution.

### Appendix B: Passivity-Based Input-Output Stabilization

The material presented here adapts the original work in Ref. [62] to a floating-base model
$D(q)q¨+H(q,q˙)=Bu+Js⊤τs+Jg(q)⊤τg$
(B1)

where u is the vector of motor torques, $τs$ is the spring torques, and $τg$ is the contact wrench. During the single-support phase, the blade-shape foot on Cassie provides five holonomic constraints, leaving only foot roll free. To simplify the problem, we also assume the springs are rigid, adding two constraints on each leg. These constraints leave the original 20 degrees-of-freedom floating base model with 11 degrees-of-freedom.

The constraints mentioned above can be written as
${Jsq¨=0Jg(q)q¨+J˙g(q)q˙=0$
(B2)
Combining (B1) and (B2) yields the full model for Cassie in single support,
$[D−Js⊤−Jg⊤Js00Jg00]︸D̃[q̈τsτg]︸f+[H0J˙gq˙]︸H̃=[B00]︸B̃u$
(B3)
For simplicity, we assume that the components of q have already been ordered such that $q=[qc,qu]T$, where qc are the coordinates chosen to be controlled and qu are the free coordinates. Define $λ=[qu,τs,τg]T$ and partition (B3) as
${D̃11q¨c+D̃12λ+H̃1=B̃1uD̃21q¨c+D̃22λ+H̃2=B̃2u$
(B4)
The vector λ can be eliminated from these equations, resulting in
$D¯q¨c+H¯=B¯u$
(B5)
where
$D¯=D̃11−D̃12D̃22−1D̃21H¯=H̃1−D̃12D̃22−1H̃2B¯=B̃1−D̃12D̃22−1B̃2$

We note that $D̃22$ being invertible and $D¯$ being positive definite both follow from $D̃$ being positive definite. Later, we need $B¯$ to be invertible; this is an assumption similar to that in Eq. (42). Equation (B5) is what we will focus on from here on.

For the passivity-based controller, the error dynamic for $y:=qc−qr$ and is designed to be [79]
$D¯y¨+(C¯+kd)y˙+kpy=0$
(B6)
where $C¯$ is the Coriolis/centrifugal matrix in $H¯$ and it is chosen such that $D¯˙=C¯+C¯⊤$. From Eqs. (B5) and (B6), we have
$u=B¯−1(D¯q¨r+H¯)−B¯−1(kpy+(C¯+kd)y˙)$
(B7)
Compared with a standard input–output linearization controller, whose error dynamics and command torque are
$y¨+kdy˙+kpy=0 and$
(B8)
$u=B¯−1(D¯q¨r+H¯)−B¯−1D¯(kpy+kdy˙)$
(B9)

the passivity-based controller induces less cancelation of the robot's dynamics, and if kp and kd are chosen to be diagonal matrices, the tracking errors are approximately decoupled because, for Cassie, $B¯−1$ is close to diagonal. This controller provides improved tracking performance over the straight-up PD implementation in Ref. [71].

## References

1.
Miura
,
H.
, and
Shimoyama
,
I.
,
1984
, “
Dynamic Walk of a Biped
,”
Int. J. Rob. Res.
,
3
(
2
), pp.
60
74
.10.1177/027836498400300206
2.
Kajita
,
S.
,
Kanehiro
,
F.
,
Kaneko
,
K.
,
Yokoi
,
K.
, and
Hirukawa
,
H.
,
2001
, “
The 3D Linear Inverted Pendulum Mode: A Simple Modeling for a Biped Walking Pattern Generation
,”
Proceedings IEEE/RSJ International Conference on Intelligent Robots and Systems. Expanding the Societal Role of Robotics in the Next Millennium (Cat. No. 01CH37180)
, Maui, HI, Oct. 29–Nov. 3, pp.
239
246
.
3.
Blickhan
,
R.
,
1989
, “
The Spring-Mass Model for Running and Hopping
,”
J. Biomech.
,
22
(
11–12
), pp.
1217
1227
.10.1016/0021-9290(89)90224-8
4.
Pratt
,
J.
,
Carff
,
J.
,
Drakunov
,
S.
, and
Goswami
,
A.
,
2006
, “
Capture Point: A Step Toward Humanoid Push Recovery
,”
Sixth IEEE-RAS International Conference on Humanoid Robots
,
IEEE
,
Genova, Italy
, Dec. 3–6, pp.
200
207
.10.1109/ICHR.2006.321385
5.
Englsberger
,
J.
,
Ott
,
C.
,
Roa
,
M. A.
,
Albu-Schäffer
,
A.
, and
Hirzinger
,
G.
,
2011
, “
Bipedal Walking Control Based on Capture Point Dynamics
,”
IEEE/RSJ International Conference on Intelligent Robots and Systems
,
IEEE
,
San Francisco
, CA, Sept. 25–30, pp.
4420
4427
.10.1109/IROS.2011.6094435
6.
Wang
,
T.
, and
Chevallereau
,
C.
,
2011
, “
Stability Analysis and Time-Varying Walking Control for an Under-Actuated Planar Biped Robot
,”
Rob. Auton. Syst.
,
59
(
6
), pp.
444
456
.10.1016/j.robot.2011.03.002
7.
Xiong
,
X.
, and
Ames
,
A. D.
,
2019
, “
Orbit Characterization, Stabilization and Composition on 3D Underactuated Bipedal Walking Via Hybrid Passive Linear Inverted Pendulum Model
,” IEEE/RSJ International Conference on Intelligent Robots and Systems (
IROS
),
IEEE
,
Macau, China
, Nov. 3–8, pp.
4644
4651
.10.1109/IROS40897.2019.8968162
8.
Popovic
,
M.
,
Hofmann
,
A.
, and
Herr
,
H.
,
2004
, “
Zero Spin Angular Momentum Control: Definition and Applicability
,”
Fourth IEEE/RAS International Conference on Humanoid Robots,
IEEE
,
Santa Monica, CA
, Nov. 10–12, pp.
478
493
.10.1109/ICHR.2004.1442139
9.
Kajita
,
S.
,
Kanehiro
,
F.
,
Kaneko
,
K.
,
Fujiwara
,
K.
,
,
K.
,
Yokoi
,
K.
, and
Hirukawa
,
H.
,
2003
, “
Biped Walking Pattern Generation by Using Preview Control of Zero-Moment Point
,”
IEEE International Conference on Robotics and Automation,
IEEE
,
Taipei, Taiwan
, Sept. 14–19, pp.
1620
1626
.
10.
Nishiwaki
,
K.
, and
Kagami
,
S.
,
2006
, “
High Frequency Walking Pattern Generation Based on Preview Control of ZMP
,” IEEE International Conference on Robotics and Automation (
ICRA 2006
),
IEEE
,
Orlando, FL
, May 15–19, pp.
2667
2672
.10.1109/ROBOT.2006.1642104
11.
Wieber
,
P.-B.
,
2006
, “
Trajectory Free Linear Model Predictive Control for Stable Walking in the Presence of Strong Perturbations
,”
Sixth IEEE-RAS International Conference on Humanoid Robots
,
IEEE
,
Orlando, FL
, May 15–19, pp.
137
142
.10.1109/ICHR.2006.321375
12.
Englsberger
,
J.
, and
Ott
,
C.
,
2012
, “
Integration of Vertical Com Motion and Angular Momentum in an Extended Capture Point Tracking Controller for Bipedal Walking
,” 12th IEEE-RAS International Conference on Humanoid Robots (
Humanoids 2012
),
IEEE
,
Osaka, Japan
, Nov. 29–Dec. 1, pp.
183
189
.10.1109/HUMANOIDS.2012.6651518
13.
Seyde
,
T.
,
Shrivastava
,
A.
,
Englsberger
,
J.
,
Bertrand
,
S.
,
Pratt
,
J.
, and
Griffin
,
R. J.
,
2018
, “
Inclusion of Angular Momentum During Planning for Capture Point Based Walking
,” IEEE International Conference on Robotics and Automation (
ICRA
),
IEEE
,
Brisbane, QLD, Australia
, May 21–15, pp.
1791
1798
.10.1109/ICRA.2018.8461140
14.
Lee
,
S.-H.
, and
Goswami
,
A.
,
2007
, “
Reaction Mass Pendulum (RMP): An Explicit Model for Centroidal Angular Momentum of Humanoid Robots
,”
IEEE International Conference on Robotics and Automation
,
IEEE
,
Roma, Italy
, Apr. 10–14, pp.
4667
4672
.10.1109/ROBOT.2007.364198
15.
Westervelt
,
E. R.
,
Grizzle
,
J. W.
,
Chevallereau
,
C.
,
Choi
,
J. H.
, and
Morris
,
B.
,
2018
,
Feedback Control of Dynamic Bipedal Robot Locomotion
,
CRC Press
,
Boca Raton, FL
.
16.
Yang
,
T.
,
Westervelt
,
E.
,
Serrani
,
A.
, and
Schmiedeler
,
J. P.
,
2009
, “
A Framework for the Control of Stable Aperiodic Walking in Underactuated Planar Bipeds
,”
Auton. Robots
,
27
(
3
), pp.
277
290
.10.1007/s10514-009-9126-y
17.
Martin
,
A. E.
,
Post
,
D. C.
, and
Schmiedeler
,
J. P.
,
2014
, “
Design and Experimental Implementation of a Hybrid Zero Dynamics-Based Controller for Planar Bipeds With Curved Feet
,”
Int. J. Rob. Res.
,
33
(
7
), pp.
988
1005
.10.1177/0278364914522141
18.
Zhao
,
H.
,
Horn
,
J.
,
Reher
,
J.
,
Paredes
,
V.
, and
Ames
,
A. D.
,
2015
, “
A Hybrid Systems and Optimization-Based Control Approach to Realizing Multi-Contact Locomotion on Transfemoral Prostheses
,” 54th IEEE Conference on Decision and Control (
CDC
),
IEEE
,
Osaka, Japan
, Dec. 15–18, pp.
1607
1612
.10.1109/CDC.2015.7402440
19.
Reher
,
J.
,
Cousineau
,
E. A.
,
Hereid
,
A.
,
Hubicki
,
C. M.
, and
Ames
,
A. D.
,
2016
, “
Realizing Dynamic and Efficient Bipedal Locomotion on the Humanoid Robot Durus
,” IEEE International Conference on Robotics and Automation (
ICRA
),
IEEE
,
Stockholm, Sweden
, May 16–21, pp.
1794
1801
.10.1109/ICRA.2016.7487325
20.
Griffin
,
B.
, and
Grizzle
,
J.
,
2015
, “
Nonholonomic Virtual Constraints for Dynamic Walking
,” 54th IEEE Conference on Decision and Control (
CDC
),
IEEE
,
Osaka, Japan
, Dec. 15–18, pp.
4053
4060
.10.1109/CDC.2015.7402850
21.
Agrawal
,
A.
,
Harib
,
O.
,
Hereid
,
A.
,
Finet
,
S.
,
Masselin
,
M.
,
Praly
,
L.
,
Ames
,
A. D.
,
Sreenath
,
K.
, and
Grizzle
,
J. W.
,
2017
, “
First Steps Towards Translating Hzd Control of Bipedal Robots to Decentralized Control of Exoskeletons
,”
IEEE Access
,
5
, pp.
9919
9934
.10.1109/ACCESS.2017.2690407
22.
Da
,
X.
, and
Grizzle
,
J.
,
2019
, “
Combining Trajectory Optimization, Supervised Machine Learning, and Model Structure for Mitigating the Curse of Dimensionality in the Control of Bipedal Robots
,”
Int. J. Rob. Res.
,
38
(
9
), pp.
1063
1097
.10.1177/0278364919859425
23.
Byrnes
,
C. I.
, and
Isidori
,
A.
,
1991
, “
Asymptotic Stabilization of Nonlinear Minimum Phase Systems
,”
IEEE Trans. Autom. Control
,
36
(
10
), pp.
1122
1137
.10.1109/9.90226
24.
Westervelt
,
E. R.
, and
Grizzle
,
J. W.
,
2002
, “
Design of Asymptotically Stable Walking for a 5-Link Planar Biped Walker Via Optimization
,”
IEEE International Conference on Robotics and Automation
,
IEEE
,
Washington, DC
, May 11–15, pp.
3117
3122
.10.1109/ROBOT.2002.1013706
25.
Poulakakis
,
I.
, and
Grizzle
,
J. W.
,
2009
, “
The Spring Loaded Inverted Pendulum as the Hybrid Zero Dynamics of an Asymmetric Hopper
,”
IEEE Trans. Autom. Control
,
54
(
8
), pp.
1779
1793
.10.1109/TAC.2009.2024565
26.
Hereid
,
A.
,
Kolathaya
,
S.
,
Jones
,
M. S.
,
Van Why
,
J.
,
Hurst
,
J. W.
, and
Ames
,
A. D.
,
2014
, “
Dynamic Multi-Domain Bipedal Walking With Atrias Through Slip Based Human-Inspired Control
,”
Proceedings of the 17th International Conference on Hybrid Systems: Computation and Control
, Berlin, Germany, Apr. 15–17, pp.
263
272
.
27.
Liu
,
J.
,
Zhao
,
P.
,
Gan
,
Z.
,
Johnson-Roberson
,
M.
, and
Vasudevan
,
R.
,
2020
, “
Leveraging the Template and Anchor Framework for Safe, Online Robotic Gait Design
,” IEEE International Conference on Robotics and Automation (
ICRA
),
IEEE
,
Paris, France
, May 31–Aug. 31, pp.
10869
10875
.10.1109/ICRA40945.2020.9197017
28.
Chen
,
Y.-M.
, and
Posa
,
M.
,
2020
, “
Optimal Reduced-Order Modeling of Bipedal Locomotion
,” IEEE International Conference on Robotics and Automation (
ICRA
),
IEEE
,
Paris, France
, May 31–Aug. 31, pp.
8753
8760
.10.1109/ICRA40945.2020.9197004
29.
Sano
,
A.
, and
Furusho
,
J.
,
1990
, “
Realization of Natural Dynamic Walking Using the Angular Momentum Information
,”
IEEE International Conference on Robotics and Automation
,
IEEE
,
Cincinnati, OH
, May 13–18, pp.
1476
1481
.10.1109/ROBOT.1990.126214
30.
Westervelt
,
E. R.
,
Grizzle
,
J. W.
, and
Koditschek
,
D. E.
,
2003
, “
Hybrid Zero Dynamics of Planar Biped Walkers
,”
IEEE Trans. Autom. Control
,
48
(
1
), pp.
42
56
.10.1109/TAC.2002.806653
31.
Grizzle
,
J. W.
,
Moog
,
C. H.
, and
Chevallereau
,
C.
,
2005
, “
Nonlinear Control of Mechanical Systems With an Unactuated Cyclic Variable
,”
IEEE Trans. Autom. Control
,
50
(
5
), pp.
559
576
.10.1109/TAC.2005.847057
32.
,
M.
, and
Featherstone
,
R.
,
2013
, “
Angular Momentum Based Controller for Balancing an Inverted Double Pendulum
,”
Romansy 19–Robot Design, Dynamics and Control
,
Springer
,
New York
, pp.
251
258
.
33.
Powell
,
M. J.
, and
Ames
,
A. D.
,
2016
, “
Mechanics-Based Control of Underactuated 3D Robotic Walking: Dynamic Gait Generation Under Torque Constraints
,” IEEE/RSJ International Conference on Intelligent Robots and Systems (
IROS
),
IEEE
,
Daejeon, South Korea
, Oct. 9–14, pp.
555
560
.10.1109/IROS.2016.7759108
34.
Gong
,
Y.
, and
Grizzle
,
J.
,
2021
, “
One-Step Ahead Prediction of Angular Momentum About the Contact Point for Control of Bipedal Locomotion: Validation in a Lip-Inspired Controller
,” IEEE International Conference on Robotics and Automation (
ICRA
),
IEEE
,
Xi'an, China
, May 30–June 5, pp.
2832
2838
.10.1109/ICRA48506.2021.9560821
35.
Griffin
,
B.
, and
Grizzle
,
J.
,
2017
, “
Nonholonomic Virtual Constraints and Gait Optimization for Robust Walking Control
,”
Int. J. Rob. Res.
,
36
(
8
), pp.
895
922
.10.1177/0278364917708249
36.
Xiong
,
X.
,
Reher
,
J.
, and
Ames
,
A. D.
,
2021
, “
Global Position Control on Underactuated Bipedal Robots: Step-to-Step Dynamics Approximation for Step Planning
,” IEEE International Conference on Robotics and Automation (
ICRA
),
IEEE
,
Xi'an, China
, May 30–June 5, pp.
2825
2831
.10.1109/ICRA48506.2021.9561961
37.
Hamed
,
K. A.
,
,
N.
,
Gruver
,
W. A.
, and
Dumont
,
G. A.
,
2012
, “
Stabilization of Periodic Orbits for Planar Walking With Noninstantaneous Double-Support Phase
,”
IEEE Trans. Syst., Man, Cybern., Part A
,
42
(
3
), pp.
685
706
.10.1109/TSMCA.2011.2169246
38.
Ma
,
W.-L.
,
Hamed
,
K. A.
, and
Ames
,
A. D.
,
2019
, “
First Steps Towards Full Model Based Motion Planning and Control of Quadrupeds: A Hybrid Zero Dynamics Approach
,” IEEE/RSJ International Conference on Intelligent Robots and Systems (
IROS
),
IEEE
,
Macau, SAR, China
, Nov. 3–8, pp.
5498
5503
.http://ames.caltech.edu/ma2019first.pdf
39.
Reher
,
J. P.
,
Hereid
,
A.
,
Kolathaya
,
S.
,
Hubicki
,
C. M.
, and
Ames
,
A. D.
,
2020
, “
Algorithmic Foundations of Realizing Multi-Contact Locomotion on the Humanoid Robot Durus
,”
Algorithmic Foundations of Robotics XII
,
Springer
,
New York
, pp.
400
415
.
40.
Kamioka
,
T.
,
Kaneko
,
H.
,
Takenaka
,
T.
, and
Yoshiike
,
T.
,
2018
, “
Simultaneous Optimization of ZMP and Footsteps Based on the Analytical Solution of Divergent Component of Motion
,” IEEE International Conference on Robotics and Automation (
ICRA
),
IEEE
,
Brisbane, Australia
, May 21–25, pp.
1763
1770
.10.1109/ICRA.2018.8460572
41.
Choi
,
J. H.
, and
Grizzle
,
J. W.
,
2005
, “
Planar Bipedal Walking With Foot Rotation
,”
Proceedings of the American Control Conference,
IEEE
,
Portland, OR
, June 8–10, pp.
4909
4916
.10.1109/ACC.2005.1470773
42.
Paredes
,
V.
, and
Hereid
,
A.
,
2020
, “
Dynamic Locomotion of a Lower-Limb Exoskeleton Through Virtual Constraints Based ZMP Regulation
,”
ASME
Paper No. DSCC2020-3170.10.1115/DSCC2020-3170
43.
Chevallereau
,
C.
,
Abba
,
G.
,
Aoustin
,
Y.
,
Plestan
,
F.
,
Westervelt
,
E.
,
de Wit
,
C. C.
, and
Grizzle
,
J.
,
2003
, “
Rabbit: A Testbed for Advanced Control Theory
,”
IEEE Control Syst. Mag.
,
23
(
5
), pp.
57
79
.10.1109/MCS.2003.1234651
44.
Hurmuzlu
,
Y.
, and
Chang
,
T.-H.
,
1992
, “
Rigid Body Collisions of a Special Class of Planar Kinematic Chains
,”
IEEE Trans. Syst., Man, Cybern.
,
22
(
5
), pp.
964
971
.10.1109/21.179836
45.
Grizzle
,
J. W.
,
Abba
,
G.
, and
Plestan
,
F.
,
2001
, “
Asymptotically Stable Walking for Biped Robots: Analysis Via Systems With Impulse Effects
,”
IEEE Trans. Autom. Control
,
46
(
1
), pp.
51
64
.10.1109/9.898695
46.
Kajita
,
S.
, and
Tani
,
K.
,
1991
, “
Study of Dynamic Biped Locomotion on Rugged Terrain-Derivation and Application of the Linear Inverted Pendulum Mode
,”
IEEE International Conference on Robotics and Automation
,
IEEE
,
Sacramento, CA, USA
, Apr. 9–11, pp.
1405
1406
.10.1109/ROBOT.1991.131811
47.
Harib
,
O.
,
Hereid
,
A.
,
Agrawal
,
A.
,
Gurriet
,
T.
,
Finet
,
S.
,
Boeris
,
G.
,
Duburcq
,
A.
,
Mungai
,
M. E.
,
Masselin
,
M.
,
Ames
,
A. D.
,
Sreenath
,
K.
, and
Grizzle
,
J. W.
,
2018
, “
Feedback Control of an Exoskeleton for Paraplegics: Toward Robustly Stable, Hands-Free Dynamic Walking
,”
IEEE Control Syst. Mag.
,
38
(
6
), pp.
61
87
.10.1109/MCS.2018.2866604
48.
Maus
,
M.
,
Lipfert
,
S.
,
Gross
,
M.
,
Rummel
,
J.
, and
Seyfarth
,
A.
,
2010
, “
Upright Human Gait Did Not Provide a Major Mechanical Challenge for Our Ancestors
,”
Nat. Commun.
,
1
(
1
), p.
70
.10.1038/ncomms1073
49.
Wieber
,
P.-B.
,
2006
, “
Holonomy and Nonholonomy in the Dynamics of Articulated Motion
,”
Fast Motions in Biomechanics and Robotics
,
Springer
,
New York
, pp.
411
425
.
50.
Pratt
,
J. E.
, and
Tedrake
,
R.
,
2006
, “
Velocity-Based Stability Margins for Fast Bipedal Walking
,”
Fast Motions in Biomechanics and Robotics
,
Springer
,
New York
, pp.
299
324
.
51.
Dai
,
H.
, and
Tedrake
,
R.
,
2016
, “
Planning Robust Walking Motion on Uneven Terrain Via Convex Optimization
,” IEEE-RAS 16th International Conference on Humanoid Robots (
Humanoids
),
IEEE
,
Cancun, Mexico
, Nov. 15–17, pp.
579
586
.10.1109/HUMANOIDS.2016.7803333
52.
Hofmann
,
A.
,
Popovic
,
M.
, and
Herr
,
H.
,
2009
, “
Exploiting Angular Momentum to Enhance Bipedal Center-of-Mass Control
,”
IEEE International Conference on Robotics and Automation
,
IEEE
,
Kobe, Japan
, May 12–17, pp.
4423
4429
.10.1109/ROBOT.2009.5152573
53.
Goswami
,
A.
, and
Kallem
,
V.
,
2004
, “
Rate of Change of Angular Momentum and Balance Maintenance of Biped Robots
,” IEEE International Conference on Robotics and Automation (
ICRA'04
),
IEEE
,
New Orleans, LA
, Apr. 26–May 1, pp.
3785
3790
.10.1109/ROBOT.2004.1308858
54.
Xiong
,
X.
, and
Ames
,
A. D.
,
2020
, “
Sequential Motion Planning for Bipedal Somersault Via Flywheel Slip and Momentum Transmission With Task Space Control
,”
IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)
,
IEEE
,
Las Vegas, NV
, Oct. 24–Jan. 24, pp.
3510
3517
.
55.
Raibert
,
M. H.
,
1984
, “
Hopping in Legged Systems—Modeling and Simulation for the Two-Dimensional One-Legged Case
,”
IEEE Trans. Syst., Man, Cybern.
,
14
(
3
), pp.
451
463
.10.1109/T SMC.1984.6313238
56.
Da
,
X.
,
Harib
,
O.
,
Hartley
,
R.
,
Griffin
,
B.
, and
Grizzle
,
J. W.
,
2016
, “
From 2D Design of Underactuated Bipedal Gaits to 3D Implementation: Walking With Speed Tracking
,”
IEEE Access
,
4
, pp.
3469
3478
.10.1109/ACCESS.2016.2582731
57.
,
M.
,
Herzog
,
A.
,
Moosavian
,
S. A. A.
, and
Righetti
,
L.
,
2020
, “
Walking Control Based on Step Timing Adaptation
,”
IEEE Trans. Rob.
,
36
(
3
), pp.
629
643
.10.1109/TRO.2020.2982584
58.
Gonzalez
,
C.
,
Barasuol
,
V.
,
Frigerio
,
M.
,
Featherstone
,
R.
,
Caldwell
,
D. G.
, and
Semini
,
C.
,
2020
, “
Line Walking and Balancing for Legged Robots With Point Feet
,”
IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)
,
IEEE
,
Las Vegas, NV
, Oct. 24–Jan. 24, pp.
3649
3656
.
59.
Powell
,
M. J.
,
Hereid
,
A.
, and
Ames
,
A. D.
,
2013
, “
Speed Regulation in 3D Robotic Walking Through Motion Transitions Between Human-Inspired Partial Hybrid Zero Dynamics
,”
IEEE International Conference on Robotics and Automation
,
IEEE
,
Karlsruhe, Germany
, May 6–10, pp.
4803
4810
.10.1109/ICRA.2013.6631262
60.
Grizzle
,
J. W.
, and
Chevallereau
,
C.
,
2017
, “
Virtual Constraints and Hybrid Zero Dynamics for Realizing Underactuated Bipedal Locomotion
,” arXiv:1706.01127.
61.
Isidori
,
A.
,
1997
, “
Nonlinear Control Systems
,” Springer, New York.
62.
,
H.
,
Ott
,
C.
,
Garofalo
,
G.
, and
Cheng
,
G.
,
2017
, “
Passivity-Based Control of Underactuated Biped Robots Within Hybrid Zero Dynamics Approach
,” IEEE International Conference on Robotics and Automation (
ICRA
),
IEEE
,
Singapore
, May 29–June 3, pp.
4096
4101
.10.1109/ICRA.2017.7989471
63.
Morris
,
B.
, and
Grizzle
,
J. W.
,
2009
, “
Hybrid Invariant Manifolds in Systems With Impulse Effects With Application to Periodic Locomotion in Bipedal Robots
,”
IEEE Trans. Autom. Control
,
54
(
8
), pp.
1751
1764
.10.1109/TAC.2009.2024563
64.
Chevallereau
,
C.
,
Grizzle
,
J. W.
, and
Shih
,
C.-L.
,
2009
, “
Asymptotically Stable Walking of a Five-Link Underactuated 3-D Bipedal Robot
,”
IEEE Trans. Rob.
,
25
(
1
), pp.
37
50
.10.1109/TRO.2008.2010366
65.
Ames
,
A. D.
,
Galloway
,
K.
,
Sreenath
,
K.
, and
Grizzle
,
J. W.
,
2014
, “
Rapidly Exponentially Stabilizing Control Lyapunov Functions and Hybrid Zero Dynamics
,”
IEEE Trans. Autom. Control
,
59
(
4
), pp.
876
891
.10.1109/TAC.2014.2299335
66.
Yang
,
W.
, and
Posa
,
M.
,
2021
, “
Impact Invariant Control With Applications to Bipedal Locomotion
,”
IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)
,
IEEE
,
Prague, Czech Republic
, Sept. 27–Oct. 1, pp.
5151
5158
.
67.
Viola
,
G.
,
2008
, “
Control of Underactuated Mechanical Systems Via Passivity-Based and Geometric Techniques
,” Ph.D. thesis, Università di Roma Tor Vergata.
68.
Westervelt
,
E. R.
,
Grizzle
,
J. W.
, and
De Wit
,
C. C.
,
2003
, “
Switching and pi Control of Walking Motions of Planar Biped Walkers
,”
IEEE Trans. Autom. Control
,
48
(
2
), pp.
308
312
.10.1109/TAC.2002.808489
69.
Kolathaya
,
S.
, and
Ames
,
A. D.
,
2019
, “
Input-to-State Safety With Control Barrier Functions
,”
IEEE Control Syst. Lett.
,
3
(
1
), pp.
108
113
.10.1109/LCSYS.2018.2853698
70.
Veer
,
S.
, and
Poulakakis
,
I.
,
2019
, “
Input-to-State Stability of Periodic Orbits of Systems With Impulse Effects Via Poincaré Analysis
,”
IEEE Trans. Autom. Control
,
64
(
11
), pp.
4583
4598
.10.1109/TAC.2019.2909684
71.
Gong
,
Y.
,
Hartley
,
R.
,
Da
,
X.
,
Hereid
,
A.
,
Harib
,
O.
,
Huang
,
J.-K.
, and
Grizzle
,
J.
,
2019
, “
Feedback Control of a Cassie Bipedal Robot: Walking, Standing, and Riding a Segway
,” American Control Conference (
ACC
),
IEEE
,
, July 10–12, pp.
4559
4566
.10.23919/ACC.2019.8814833
72.
Hereid, A., and Ames, A. D.,
2017, “FROST:
Fast Robot Optimization and Simulation Toolkit
,” IEEE/RSJ International Conference on Intelligent Robots and Systems (
IROS
), IEEE, Vancouver, BC, Canada, Sept. 24–28, pp. 719–726.10.1109/IROS.2017.8202230
73.
Hartley
,
R.
,
Ghaffari
,
M.
,
Eustice
,
R. M.
, and
Grizzle
,
J. W.
,
2020
, “
Contact-Aided Invariant Extended Kalman Filtering for Robot State Estimation
,”
Int. J. Rob. Res.
,
39
(
4
), pp.
402
430
.10.1177/0278364919894385
74.
Thrun
,
S.
,
2002
, “
Probabilistic Robotics
,”
Commun. ACM
,
45
(
3
), pp.
52
57
.10.1145/504729.504754
75.
Galloway
,
K.
,
Sreenath
,
K.
,
Ames
,
A. D.
, and
Grizzle
,
J. W.
,
2015
, “
Torque Saturation in Bipedal Robotic Walking Through Control Lyapunov Function-Based Quadratic Programs
,”
IEEE Access
,
3
, pp.
323
332
.10.1109/ACCESS.2015.2419630
76.
Westervelt
,
E. R.
,
Buche
,
G.
, and
Grizzle
,
J. W.
,
2004
, “
Experimental Validation of a Framework for the Design of Controllers That Induce Stable Walking in Planar Bipeds
,”
Int. J. Rob. Res.
,
23
(
6
), pp.
559
582
.10.1177/0278364904044410
77.
Gu
,
Y.
, and
Yuan
,
C.
,
2021
, “
Adaptive Robust Tracking Control for Hybrid Models of Three-Dimensional Bipedal Robotic Walking Under Uncertainties
,”
ASME J. Dyn. Syst., Meas., Control
,
143
(
8
), p.
081007
.10.1115/1.4050259
78.
Reher
,
J.
, and
Ames
,
A. D.
,
2021
, “
Inverse Dynamics Control of Compliant Hybrid Zero Dynamic Walking
,” IEEE International Conference on Robotics and Automation (
ICRA
),
IEEE
, May 30–June 5, pp.
2040
2047
.10.1109/ICRA48506.2021.9560906
79.
Ott
,
C.
,
2008
,
Cartesian Impedance Control of Redundant and Flexible-Joint Robots
,
Springer
,
New York
.