IEEE Robotics & Automation Magazine - September 2018 - 30
for each leg, each 180° out of phase, and each periodically
wrapping as the gait advances [Figure 5(a)]. One clock cycle
corresponds to one step for its corresponding leg. The
clock cycles drive most of the trajectory interpolation for
the gait [Figure 5(c)], reliably sequencing controller events
(as opposed to triggering based on intermittent events, such
as toe strikes).
Stride Trajectory and Foot Placement
Footfalls are placed such that the robot's velocity gradually
approaches the desired direction. The controller takes a direc-
tional influence from a human operator and attempts to move
in that direction, but individual steps are not controlled by
the operator.
Each step is calculated using a feed-forward model of toe
placement based on the transverse velocity of the robot
(removing the vertical component), as illustrated in Figure 6(b).
The initial calculation would, ideally, carry the robot along its
current path, if used repeatedly in a number of steps. The
feed-forward model is augmented with proportional deriva-
tive (PD) control around the transverse velocity error in both
the x (forward) and y (right) directions, which controls the
acceleration and deceleration of the robot as new velocity
commands are issued.
The continual stepping of the feet due to the clock cycle
aids in controlling the velocity; no single footfall corrects the
robot's velocity, and frequent stepping gives more opportuni-
ties to recover from disturbances. Disturbances and model
errors will continually change the robot's velocity, so there is
no reason to attempt to enforce deadbeat control; asymptotic
control works very well in this case.
Touchdown Transitions
The virtual toe trajectory (the location of the toe for unde-
flected springs) is open-loop and continuous through stride
and touchdown and into stance. The mechanism compliance
allows for a smooth transition and gradual change in contact
forces between the toe and the ground, which impact at non-
zero velocity.
Open-loop transitions are an important feature of the con-
troller and are deliberately crafted to be independent of con-
tact sensing, because sensing the exact moment of touchdown
is deceptively difficult to achieve in practice (switches bounce,
force thresholds take time to reach, and either may be trig-
gered accidentally). In dynamic environments, it is not even
useful to know a particular instant of touchdown, because the
foot may slide, break and make contact repeatedly (chatter),
or sink into soft terrain.
One open-loop toe trajectory is continuous in the time
before and after contact but is designed to decompose into
two distinct controllers based on the real-world contact state.
Stepping uses a ground-speed-matched trajectory where the
toe vertically descends to the ground height at that point.
This method does not require knowledge of exactly when the
foot contacts the ground, and the same vertical trajectory is
followed after the foot makes contact. Before touchdown,
30
*
IEEE ROBOTICS & AUTOMATION MAGAZINE
*
september 2018
this trajectory corresponds to a ground-speed-matching
behavior, but, after touchdown, the same trajectory continues
to drive the foot into the ground, resulting in a nearly axial
restorative force. This second behavior is the trivial stance
controller for spring-mass robots, i.e., holding a constant leg
length through stance and balancing the leg angle torques
such that the contact force goes through the mass center of
the robot.
Torso Balance
After toe contact is established, contact forces begin rising
and expand the ability of the torso balance controller to apply
hip torques against the ground. A friction cone approxima-
tion limits the balancing hip torques, preventing the toe from
slipping on the ground, as illustrated in Figure 6(a). The
torque is calculated for pitch and roll DoFs using a feedback-
linearization law to force the torso upright [5]. The effect of
this behavior is added to the nominal stance behavior of leg
length forces.
Energy Injection and Damping
A large part of the robustness of the controller comes from
the addition of controlled damping. The controller following
the motor trajectory has PD gains tuned such that roughly
half of the overall leg compliance comes from the motor and
the other half from the passive springs. Having such soft gains
makes the robot more compliant and removes energy through
damping in the motors and transmission.
Energy injection replenishes the system's mechanical
energy after some is removed by damping, disturbances, or
elevation changes. Through the first half of stance, the leg
length is nominally constant, remaining a passive spring.
In the second half of stance, the leg begins extending to
drive the robot forward. The amount of extension is pro-
portional to the desired transverse velocity, as visually
indicated in Figure 6(c).
The interplay of energy injection and damping has a sta-
bilizing effect on the system. As a simple example, a vertical
hopping robot can find an open-loop, stable hopping height
by injecting a fixed amount of energy into each hop, while
leg damping removes energy proportional to the touchdown
velocity and stance duration; the energy injection will natu-
rally balance the energy removal. Figure 7 shows how physi-
cal damping can close the loop on velocity control. Similarly,
for the ATRIAS robot, periodic forcing in the forward direc-
tion (through leg extension in the second half of stance)
finds a naturally stable speed when balanced by the damping
in the legs.
Figure 8 shows how the impulses generated by distur-
bances decay as a result of damping and how periodic forc-
ing drives the robot forward without needing to directly
sense and regulate velocity. The average direction of the
envelope in Figure 8 gives the net velocity of the robot. The
controller needs to supply only periodic forcing during loco-
motion, and damping will remove the effect of extraneous
impulses due to disturbances. Damping also removes part of
IEEE Robotics & Automation Magazine - September 2018
Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - September 2018
Contents
IEEE Robotics & Automation Magazine - September 2018 - Cover1
IEEE Robotics & Automation Magazine - September 2018 - Cover2
IEEE Robotics & Automation Magazine - September 2018 - Contents
IEEE Robotics & Automation Magazine - September 2018 - 2
IEEE Robotics & Automation Magazine - September 2018 - 3
IEEE Robotics & Automation Magazine - September 2018 - 4
IEEE Robotics & Automation Magazine - September 2018 - 5
IEEE Robotics & Automation Magazine - September 2018 - 6
IEEE Robotics & Automation Magazine - September 2018 - 7
IEEE Robotics & Automation Magazine - September 2018 - 8
IEEE Robotics & Automation Magazine - September 2018 - 9
IEEE Robotics & Automation Magazine - September 2018 - 10
IEEE Robotics & Automation Magazine - September 2018 - 11
IEEE Robotics & Automation Magazine - September 2018 - 12
IEEE Robotics & Automation Magazine - September 2018 - 13
IEEE Robotics & Automation Magazine - September 2018 - 14
IEEE Robotics & Automation Magazine - September 2018 - 15
IEEE Robotics & Automation Magazine - September 2018 - 16
IEEE Robotics & Automation Magazine - September 2018 - 17
IEEE Robotics & Automation Magazine - September 2018 - 18
IEEE Robotics & Automation Magazine - September 2018 - 19
IEEE Robotics & Automation Magazine - September 2018 - 20
IEEE Robotics & Automation Magazine - September 2018 - 21
IEEE Robotics & Automation Magazine - September 2018 - 22
IEEE Robotics & Automation Magazine - September 2018 - 23
IEEE Robotics & Automation Magazine - September 2018 - 24
IEEE Robotics & Automation Magazine - September 2018 - 25
IEEE Robotics & Automation Magazine - September 2018 - 26
IEEE Robotics & Automation Magazine - September 2018 - 27
IEEE Robotics & Automation Magazine - September 2018 - 28
IEEE Robotics & Automation Magazine - September 2018 - 29
IEEE Robotics & Automation Magazine - September 2018 - 30
IEEE Robotics & Automation Magazine - September 2018 - 31
IEEE Robotics & Automation Magazine - September 2018 - 32
IEEE Robotics & Automation Magazine - September 2018 - 33
IEEE Robotics & Automation Magazine - September 2018 - 34
IEEE Robotics & Automation Magazine - September 2018 - 35
IEEE Robotics & Automation Magazine - September 2018 - 36
IEEE Robotics & Automation Magazine - September 2018 - 37
IEEE Robotics & Automation Magazine - September 2018 - 38
IEEE Robotics & Automation Magazine - September 2018 - 39
IEEE Robotics & Automation Magazine - September 2018 - 40
IEEE Robotics & Automation Magazine - September 2018 - 41
IEEE Robotics & Automation Magazine - September 2018 - 42
IEEE Robotics & Automation Magazine - September 2018 - 43
IEEE Robotics & Automation Magazine - September 2018 - 44
IEEE Robotics & Automation Magazine - September 2018 - 45
IEEE Robotics & Automation Magazine - September 2018 - 46
IEEE Robotics & Automation Magazine - September 2018 - 47
IEEE Robotics & Automation Magazine - September 2018 - 48
IEEE Robotics & Automation Magazine - September 2018 - 49
IEEE Robotics & Automation Magazine - September 2018 - 50
IEEE Robotics & Automation Magazine - September 2018 - 51
IEEE Robotics & Automation Magazine - September 2018 - 52
IEEE Robotics & Automation Magazine - September 2018 - 53
IEEE Robotics & Automation Magazine - September 2018 - 54
IEEE Robotics & Automation Magazine - September 2018 - 55
IEEE Robotics & Automation Magazine - September 2018 - 56
IEEE Robotics & Automation Magazine - September 2018 - 57
IEEE Robotics & Automation Magazine - September 2018 - 58
IEEE Robotics & Automation Magazine - September 2018 - 59
IEEE Robotics & Automation Magazine - September 2018 - 60
IEEE Robotics & Automation Magazine - September 2018 - 61
IEEE Robotics & Automation Magazine - September 2018 - 62
IEEE Robotics & Automation Magazine - September 2018 - 63
IEEE Robotics & Automation Magazine - September 2018 - 64
IEEE Robotics & Automation Magazine - September 2018 - 65
IEEE Robotics & Automation Magazine - September 2018 - 66
IEEE Robotics & Automation Magazine - September 2018 - 67
IEEE Robotics & Automation Magazine - September 2018 - 68
IEEE Robotics & Automation Magazine - September 2018 - 69
IEEE Robotics & Automation Magazine - September 2018 - 70
IEEE Robotics & Automation Magazine - September 2018 - 71
IEEE Robotics & Automation Magazine - September 2018 - 72
IEEE Robotics & Automation Magazine - September 2018 - 73
IEEE Robotics & Automation Magazine - September 2018 - 74
IEEE Robotics & Automation Magazine - September 2018 - 75
IEEE Robotics & Automation Magazine - September 2018 - 76
IEEE Robotics & Automation Magazine - September 2018 - 77
IEEE Robotics & Automation Magazine - September 2018 - 78
IEEE Robotics & Automation Magazine - September 2018 - 79
IEEE Robotics & Automation Magazine - September 2018 - 80
IEEE Robotics & Automation Magazine - September 2018 - 81
IEEE Robotics & Automation Magazine - September 2018 - 82
IEEE Robotics & Automation Magazine - September 2018 - 83
IEEE Robotics & Automation Magazine - September 2018 - 84
IEEE Robotics & Automation Magazine - September 2018 - 85
IEEE Robotics & Automation Magazine - September 2018 - 86
IEEE Robotics & Automation Magazine - September 2018 - 87
IEEE Robotics & Automation Magazine - September 2018 - 88
IEEE Robotics & Automation Magazine - September 2018 - 89
IEEE Robotics & Automation Magazine - September 2018 - 90
IEEE Robotics & Automation Magazine - September 2018 - 91
IEEE Robotics & Automation Magazine - September 2018 - 92
IEEE Robotics & Automation Magazine - September 2018 - 93
IEEE Robotics & Automation Magazine - September 2018 - 94
IEEE Robotics & Automation Magazine - September 2018 - 95
IEEE Robotics & Automation Magazine - September 2018 - 96
IEEE Robotics & Automation Magazine - September 2018 - 97
IEEE Robotics & Automation Magazine - September 2018 - 98
IEEE Robotics & Automation Magazine - September 2018 - 99
IEEE Robotics & Automation Magazine - September 2018 - 100
IEEE Robotics & Automation Magazine - September 2018 - 101
IEEE Robotics & Automation Magazine - September 2018 - 102
IEEE Robotics & Automation Magazine - September 2018 - 103
IEEE Robotics & Automation Magazine - September 2018 - 104
IEEE Robotics & Automation Magazine - September 2018 - 105
IEEE Robotics & Automation Magazine - September 2018 - 106
IEEE Robotics & Automation Magazine - September 2018 - 107
IEEE Robotics & Automation Magazine - September 2018 - 108
IEEE Robotics & Automation Magazine - September 2018 - 109
IEEE Robotics & Automation Magazine - September 2018 - 110
IEEE Robotics & Automation Magazine - September 2018 - 111
IEEE Robotics & Automation Magazine - September 2018 - 112
IEEE Robotics & Automation Magazine - September 2018 - 113
IEEE Robotics & Automation Magazine - September 2018 - 114
IEEE Robotics & Automation Magazine - September 2018 - 115
IEEE Robotics & Automation Magazine - September 2018 - 116
IEEE Robotics & Automation Magazine - September 2018 - Cover3
IEEE Robotics & Automation Magazine - September 2018 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com