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.
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 [1–7] 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 . 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 [9–11]. The effects of Lc can be compensated with ZMP, making a real robot's CoM dynamics the same as those of a LIP . 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 [15–22] 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. . The term “hybrid zero dynamics” or HZD comes from the extension of zero dynamics to (hybrid) robot models in Ref. . 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. , angular momentum is chosen to represent a biped's state and it is regulated by stance ankle torque. In Ref. , 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. , angular momentum is explicitly used for designing nonholonomic virtual constraints. In Ref. , 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. , the accuracy of the angular-momentum-based LIP model during the continuous phase is emphasized; as opposed to Ref. , 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.
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,33–35], 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 ) 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 [37–39] 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,40–42].
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.  and are used here to demonstrate the utility of the proposed results. We will use both Rabbit  and Cassie Blue, shown in Fig. 1, to illustrate the developments in the paper. Experiments will be conducted exclusively on Cassie.
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.
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 , 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.  (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 , where q0 is an absolute angle (referenced to the z-axis of the world frame) and are body coordinates2. Furthermore, we reference the contact point (i.e., stance ankle) to the origin of the world frame.
where . The state space of the model is . For each , g(x) is a matrix when the robot is fully actuated or matrix when the robot has one degree of underactuation. In natural coordinates for , g is independent of .
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.
A detailed derivation of the impact map is given in Ref. , showing that it is linear in the generalized velocities.
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:
: CoM position in the frame of the contact point, which is aligned to the sagittal plane.
: CoM velocity in x-direction. The velocity in z-direction is denoted by
: y-component of Angular momentum about CoM.
L: y-component of Angular momentum about contact point.
ua: ankle torque at the contact point.
and we assume that . 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.
In general, zc depends on q, and Lc depend on both q and . While and depend on q, , and the motor torques u, it is more typical to replace the motor torques by the ground reaction forces. In particular, one uses and , 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, , and the motor torques, u.
The remarks made above on zc, , and Lc apply here as well.
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, , 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 , summarize some general properties of L, and highlight some of its advantages versus . More specific advantages of using L in the zero dynamics and the LIP model will be discussed in Secs. 4 and 6.
where is the angular momentum about the center of mass, is the linear velocity of the center of mass, m is the total mass of the robot, and is the vector emanating from the contact point to the center of mass.
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, , and linear momentum, ; see Fig. 3. From Eq. (9), we see that there exists momentum transfer between these two quantities. If increases, it must “take” some momentum away from , and vice versa. For normal bipedal walking, oscillates about zero. functions to store momentum , 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 and separately , or use as an input to regulate balance by waving the torso, arms, or swing leg [52,53] or even a flywheel . Here, instead of moving limbs to generate a certain value of , we view as a result of the legs and torso moving to fulfill other tasks. In this paper, we observe and take it into consideration through L and do not seek to regulate it directly as an independent quantity.
- Second, because 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 zeroand we know that the (body motor) torques show up in ; 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 satisfieswhere 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 is zero and the ground is level, then , 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.(15)
Figure 4 shows the evolution of L, vcLc and during a step for both Cassie and Rabbit, when walking speed is about 2 m/s, , and no stance ankle torque is applied. Figure 5 shows the evolution of L, 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.
where , which is more directly comparable to Eq. (16). In this paper we frequently plot L scaled by the coefficient so that it can be more directly compared to (same units and similar magnitudes).
At this point, no approximations have been made and both models are valid everywhere that . Hence, the two models are still equivalent representations of the center of mass dynamics for all trajectories satisfying . We'll next argue that the models are not equivalent when it comes to approximations.
This is the well-known LIP model proposed by Kajita and Tani .
which is used in Refs. [33,34]. In Ref. , 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 in a real robot than the states of Eq. (19) capture the evolution of . 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 is then identically zero. For a real robot with and 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 is much larger than 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 and three with respect to , whereas has relative degree one with respect to . Because integration is a form of low-pass filtering, the lower relative degree makes more sensitive to the omission of the term.
In Fig. 6, we have used the models (19) and (20) to predict the values of and L at the end of a step. We plot instead of L to make the scale and units comparable. The blue line is the true trajectory of L (resp. ) 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. ), in the full simulation model, and the flatter the prediction, the more faithful is the representation.
Figure 7 shows the (relative) sizes of these error terms.
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 (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 close to zero, while the LIP-based controller is unable to regulate effectively. The reason is that, at the end of a step, the linear momentum was transferred to centroidal angular momentum due to the movement of Rabbit's heavy legs (see Eq. (18)), resulting in a small , which misleads the LIP controller into choosing a small foot displacement. In the ALIP model, L is less affected by momentum transfer between and 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.
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 and ua on the system are independent due to the superposition property. So if dropping the 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 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 , adjusting the step duration [46,57], ankle torque during continuous phase , 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.
|Relative degree three||L c, zc|
|Relative degree one||ua|
|Initial condition for next continuous phase||, L(0)|
|Phase duration||Step time|
|Relative degree three||L c, zc|
|Relative degree one||ua|
|Initial condition for next continuous phase||, L(0)|
|Phase duration||Step 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 ;
each step has constant duration T > 0; and
a desired swing leg horizontal position, , can be achieved at the end of the step.
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 .
is the end time of step k, so that
is the beginning time of step k + 1 and is the end time of step k + 1.
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. . As shown in Fig. 10, 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 is the limit from the right of the model's solution at the time of impact, in other words its value “just after” impact.
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.
We remind the reader that:
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.
In the following, we break down the evolution of L from t to , 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 .
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 to.
5.3.3 From to.
5.4 Stability Analysis of the ALIP for .
independent of α and the eigenvalues of the Poincaré map are . Hence, for all , the fixed point is exponentially stable and moreover, Eq. (35) is bounded-input bounded-state stable with respect to the command, .
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 , since it cannot be simply set to zero for walking with a nonzero stance width.
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 .
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 and 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. , 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 .
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. , 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.
where ua is the torque affecting the stance ankle as in Sec. 2.3, and are actuators affecting the body coordinates, qb. When the robot is underactuated, is an empty column vector.
and note that ua should respect relevant ankle torque limits and ZMP constraints when .
h is at least twice continuously differentiable and ua is at least once differentiable.
- The virtual constraints (39) are designed to identically vanish on a desired nominal solution (gait) of the dynamical model (6) with , where the solution meets relevant constraints on motor torque, motor power, ground reaction forces, and work space. To be clear, y vanishing meansfor , where is the angular momentum about the contact point, evaluated along the trajectory.(41)
- The functionis full rank and injective in an open neighborhood of the nominal solution .(45)
- there exists an invertible differentiable function such that(46)
the swing-phase zero dynamics, that is, the dynamics of the robot compatible with , exists and can be parameterized by .
6.3 Zero Dynamics and Approximate Zero Dynamics.
when . 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.
The state is included in Eq. (48) because, at hybrid transitions, τ is reset to zero, that is, . As discussed above, this reduced-order model is exact along all trajectories of the full-order model for which .
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 . If the virtual constraints in Eq. (39) are hybrid7 invariant for constant [15,65,66], then
Consequently, the closed-loop system would possess a family of exponentially stable periodic orbits parameterized by . 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. , 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 . 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.
|0.2||0.04||2 × 10−4|
|0.1||0.01||2 × 10−4|
|0.0||0.00||1 × 10−4|
|0.2||0.04||2 × 10−4|
|0.1||0.01||2 × 10−4|
|0.0||0.00||1 × 10−4|
Because the Poincaré map is computed over two steps, the ALIP's largest eigenvalue is .
6.5 Non-Periodic Walking.
The desired angular momentum, , determines the fixed point of the Poincaré map and hence the walking speed of the robot. While varying causes the walking speed to change, the analysis of the controller has only been presented for a constant value of . Reference  analyzes gait transitions in the formalism of the hybrid zero dynamics when 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 . The experimental work reported in Sec. 9 includes examples of rapidly varying , 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 .
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.
7 Integrating Virtual Constraints and Angular-Momentum-Based Foot Placement
For later use, we denote the value of h0 at the beginning of the current step by . When referring to individual components, we'll use , 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 , which sets the height of the CoM with respect to the ground, is constant and equal to H.
that will be used to define quantities that vary throughout the step to create stance and swing leg trajectories.” The reference trajectories of and 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 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 signs may vary with the convention used on other robots.
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.  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.
The Kalman Gain K(k) is obtained following the algorithm described in Ref. [74, Sec. 3.2].
8.3 Inverse Kinematics.
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.  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].
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.
Remark. In our experiments, 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 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
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.
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. [9–11], 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. , L can be regulated by controlling the center of mass velocity just before impact, as well.
The authors thank Omar Harib and Jiunn-Kai Huang for their assistance in the experiments.
National Science Foundation (Award ID: 1808051; Funder ID: 10.13039/100000001).
Toyota, USA (Funder ID: 10.13039/100004362 ).
All vectors discussed in this paper are column vectors.
A 3D version of the angular momentum transfer formula is
When CoM height is a constant H, .
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.
With a slight difference in the sign due to .
The required kinematic and dynamics functions are generated with FROST .
Experiment Video Compilation https://youtu.be/o8msaembEu8
Michigan Robotics: Dynamic Legged Locomotion Lab YouTube Channel https://www.youtube.com/channel/UCMfDV8 rkQqWhUwnTAYAq0tQ
Appendix A: Constant Pendulum Length
At this point, no approximations have been made and the models is valid everywhere that . An interesting aspect of this pendulum model is that it does not depend on , and thus imperfections in achieving the virtual constraint rc = R have a smaller effect here than in Eq. (17), where would appear when , or in Eq. (16), where both and would appear.
For , the value is . 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
where u is the vector of motor torques, is the spring torques, and 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.
We note that being invertible and being positive definite both follow from being positive definite. Later, we need to be invertible; this is an assumption similar to that in Eq. (42). Equation (B5) is what we will focus on from here on.
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, is close to diagonal. This controller provides improved tracking performance over the straight-up PD implementation in Ref. .