Quick viewing(Text Mode)

Legged Robots on Rough Terrain: Experiments in Adjusting Step Length

Legged Robots on Rough Terrain: Experiments in Adjusting Step Length

Legged on Rough Terrain: Experiments in Adjusting Step Length

Jessica Kate Hodgins

November 1989 CMU-CS-89-151

Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy in Computer Science at Carnegie Mellon University

Copyright Q1989 Jessica Kate Hodgins

This research was sponsored by contract MDA903-85-K-0179 from the Defense Advanced Research Projects Agency, Information Sciences Technology Office, and by a grant from the System Development Foundation. The views and conclusions contained in this document are those of the author and should not be interpreted as representing the official policies, either expressed or implied, of any of the sponsoring agencies.

Abstract

To travel on rough terrain, a legged system must use the available footholds, even when they

are isolated or hidden by obstacles. This thesis addresses the task of adjusting the length of each step to place the feet on available footholds, in the context of a dynamic biped that actively balances itself as it runs. In order for the biped to use specific footholds, the control system must simultaneously satisfy the constraints for stability and the constraints dictated by the geometry of the terrain. I explored three methods for controlling step length each of which adjusted a different parameter of the running cycle. The parameters were forward running speed, running height, and duration of ground contact. All three control methods were successful in manipulating step length, but the forward speed method

provided accurate control of step length (average absolute error 0.07 m) and the widest range of step lengths (from 0.1 m to 1.1 m). In laboratory demonstrations the biped used step length adjustment to place its feet on targets, leap over obstacles, and run up and Clown a short flight of stairs.

Acknowledgments

I would like to thank the members of the Leg Laboratory for their support and encourage- ment. I am grateful to Marc Raibert for helping me over many rough spots and tbr his unflagging enthusiasm and remarkable intuitions. Jeff Koechling, Ben Brown, Mike Chep- ponis, and Dave Barrett patiently answered my many questions. Thanks to Matt Mason for stepping in as my advisor when the need arose.

The CMU Computer Science Department was most generous in allowing me to complete the latter part of my research at MIT. Sharon Burks, of course, was the one who made all the administrative tangles disappear.

Thanks also to my friends in Pittsburgh and in Boston who were always willing to go out for ice cream when work in the lab demanded it. And finally, many thanks to my

parents for getting me started on the right foot.

iii

Contents

Abstract i

Acknowledgments iii

Contents iii

Chapter 1. Introduction 1 1.1 Statement of Problem: Control of Step Length ...... 7 1.2 Overview of the Thesis ...... 12

Chapter 2. Background 13 2.1 Machine Locomotion ...... 13 2.2 Animal Locomotion ...... 19

Chapter 3. Experimental Methods 23 3.1 Experimental Apparatus: Planar Biped ...... 26 3.2 Control Algorithms ...... 32 3.3 Experiments with the Planar Biped ...... 35

Chapter 4. Forward Speed 43 4.1 What Determines Forward Speed? ...... 44 4.2 Controlling Forward Speed ...... 46 4.2.1 Oscillations in Forward Speed ...... 48 4.2.2 Modeling Error ...... 54 4.3 How Well Is Forward Speed Controlled? ...... 57 4.4 Using Forward Speed to Control Step Length ...... 60

Chapter 5. Flight Duration 65 5.1 What Determines Flight Duration? ...... 66 5.2 Controlling Flight Duration ...... 68

v vi CONTENTS

5.2.1 Desired System Energy ...... 68 5.2.2 Actual System Energy ...... 69 5.2.3 Controlling the Energy ...... 71 5.3 How Well Is Flight Duration Controlled? ...... 74 5.4 Using Flight Duration to Control Step Length ...... 76

Chapter 6. Stance Duration 81 6.1 What Determines Stance Duration? ...... 82 6.2 Controlling Stance Duration ...... 86 6.3 How Well Is Stance Duration Controlled? ...... 88 6.4 Using Stance Duration to Control Step Length ...... 94

Chapter 7. Direct Placement 101 7.1 A Fourth Method for Controlling Step Length? ...... 102 7.2 In Combination with Other Methods ...... 104

Chapter 8. Control of Step Length 107 8.1 Comparison of the Three Methods ...... 107 8.1.1 Range of Step Lengths ...... 109 8.1.2 Accuracy ...... 113 8.1.3 Other Criteria for Evaluation ...... 114 8.2 Demonstrations ...... 115 8.2.1 One-dimensional Rough Terrain ...... 116 8.2.2 Two-dimensional Rough Terrain ...... 122

Chapter 9. Summary 127 9.1 Control of Step Length ...... 128 9.2 Results ...... 132 9.3 Demonstrations ...... 135 9.4 Future Research ...... 136 9.4.1 Combining Methods ...... 136 9.4.2 Other Demonstrations ...... 137 9.4.3 Three-dimensional Rough Terrain ...... 137 9.4.4 Reflexes ...... 138 9.5 Conclusion ...... 139

Bibliography 141 Chapter 1 Introduction

Legged vehicles may someday travel on terrain that is too rough for wheeled and tracked vehicles of comparable size. To travel on rough terrain, legged vehicles will have to use the best footholds they can reach, even those which are isolated or hidden by obstacles. The problem of traveling over rough terrain includes many sub-problems, including terrain sensing, path planning, selections of foothold, and adjustment of step length. This thesis concentrates on the last of these problems, the need to adjust the length of each step so the feet are placed on chosen footholds.

The ability to adjust step length permits a legged system to use the best foothold within reach or to approach an obstacle in a way that allows the system to step or leap over it.

When a legged system runs on a smooth surface, all the terrain is available as footholds and the length of its steps can vary freely. When a legged system runs on rough terrain, however, the nature of the terrain may dictate where it can place its feet and the length of its steps. The ability to adjust step length allows a legged system to run across rough terrain by using the regions of the terrain that provide good footholds while avoiding the others.

Figure 1-1 illustrates the need for positioning the foot and controlling step length in order to negotiate obstacles. The foot must be in the correct position on takeoff to clear the blocks. If the position of the foot is too close to the blocks, the machine kicks the blocks at the beginning of the jump. If the position of the foot at takeoff is too far away, the machine lands on top of the blocks. The top photograph shows a good placement that allowed the 2 INTRODUCTION

Figure 1-1. Planar one-legged hopping machine leaping. In order to leap over an obstacle success- fully, a legged system must choose a foothold that is properly positioned with respect to the obstacle, and it must place its foot on that foothold. The correct foot placement in the top photograph was a matter of good luck. In the middle photograph, the foot was too close to the stack of blocks when the leap began; in the bottom photograph, it was too far away. In each photograph action is from right to left, with lines indicating the paths of foot and hip (Raibert 1986). foot to clear the blocks and the machine to continue running. If this legged system had

the ability to adjust step length, it could adjust the steps preceding the blocks so that the position of the foot at takeoff was correct every time and each leap was successful.

I have studied the control of step length for a restricted class of legged systems--

dynamically stable legged systems running with a single-foot gait. For the legged systems I have considered, a running step contains a ballistic flight phase during which no feet touch the ground and a stance phase when a single foot is in contact with the ground. At the end of the flight phase, one foot touches the ground and a spring in the leg compresses. Halfway through stance, the spring expands and the body accelerates upward. The next

flight phase begins when the foot is pulled off the ground.

The control of step length is an interesting problem for a dynamically stable legged system. The act of positioning tile feet with respect to available footholds interacts with the stability and general behavior of the system. Each placement of a foot on the ground causes the body to accelerate, influencing the system's forward speed and direction of travel. A system that controls placement of the feet must simultaneously satisfy the geometric constraints dictated by the locations of good footholds and the dynamic constraints of

stability.

On each step there is a location on the ground where the foot should be placed if balanced steady-state running is to continue, the balance foothold. If the terrain limits the choice of footholds, the foot will not necessarily be able to be placed on the balance foothold.

The legged system can either take action before the touchdown to make the desired foothold coincide with the balance foothold or it can take corrective action after the touchdown to

restore the nominal running pattern.

Once the problem of placing feet on chosen footholds is solved, a dynamic legged system should be able to traverse more difficult terrain than a static system of comparable size and

reach. A dynamic system need not maintain support continuously in time, nor must there be a continuous path of closely spaced footholds to allow a gradual transfer of support from one support tripod to another. A dynamic system can use its flight phase to leap over regions that do not offer any good footholds. Generally, a dynamic system can use its kinetic energy to bridge from one foothold to another, and it does not require a broad base 4 INTRODUCTION of support at each foothold. These potentialadvantages are obtained by dynamic legged systems at the expense of more difficultyin placingthe feeton footholds.Foot placement istrivia]fora staticallystablesystem, once a reachablefootholdhave been chosen.

All of the experiments describedin thisthesiswere performed on the planar biped running machine shown in figure 1-2 (Hodgins, Koechling, and Raibert 1986). The machine is mechanically constrained to move in the plane. It can travel fore and aft, up and down, and rotate in the plane, but it cannot move sideways or rotate about the roll and yaw axes.

The hips are located approximately at the center of mass of the machine. A sensor measures the machine's location in the laboratory and the control system is provided with a model of the shape and location of the terrain.

Figure 1-2. Photograph of the planar biped running up and down a flight of three stairs. The control system adjusts the length of the machine's steps so that the feet land approximately in the center of each stair. The machine is shown running from left to right at about 0.5 m/s. Light sources indicate the paths of the feet. Each step is 7 inches high and 12 inches deep. po "" " " • •

,' , : ,,,,

× X ! 2 One-dimensional Terrain

Figure 1-3. One-, two-, and three-dimensional rough terrain. In each drawing a legged system is shown at touchdown on some of the footholds. An approximate path of the foot is depicted by tim dotted line. In one-dimensional terrain, the footholds all lie along a straight line in front of the legged system. Because the footholds vary in spacing, the legged system must make adju,_tments in step length to place the feet on desired footholds. In two-dimensional terrain, the footholds va,ry i_l both forward and vertical spacing. The system must be able to adjust the length of i_;s steps accurately despite varying liftoff and landing altitudes. In three-dimensional terrain, the footholds vary in forward, vertical, and lateral spacing and the legged system must control the length, height, and direction of its steps. (i INTRODUCTION

Figure 1-3 illustrates three kinds of rough terrain. In the most general case, each foot placement occurs in three dimensions with the length, height, and direction of each step under control. I simplify the problem by considering first a one-dimensional problem, in which all footholds lie on a line and only length of the step must be controlled. Next I consider a two-dimensional problem, in which all footholds lie in a vertical plane, and both tt_e length and height of the step must be controlled. I do not address the three-dimensional problem in which the legged system must control the length, height, and direction of its steps. I also do not consider footholds which are slanted or slippery or terrain which does not match the terrain map.

I consider first the one-dimensional case, involving only forward positions of the foot. I assume level terrain and an obstacle-free, straight-line path from the present position of the system to a series of target footholds, one or more steps away. This simplified rough t,errain is like a set of stepping stones arranged in a straight line. The system must adjust the length of its steps to match the spacing of the stepping stones. An even simpler version of the task uses just one stepping stone, with adjustments occurring on the several steps prior to the placement of the foot on the stepping stone.

In this thesis, I identify and discuss several methods that allow a legged system to adjust tim length of its steps. One method adjusts the forward speed of the system to control the step length, the second adjusts flight duration, and the third adjusts stance duration. I describe laboratory experiments that test these methods using the planar biped. Finally, I evaluate the methods by comparing the error in step length and the difference between the maximum and minimum step lengths produced by each method.

The planar biped has used adjustments in step length to step reliably on a target. The biped landed on the target with the highest precision when adjustments in forward speed were used to control the length of the steps before the target. On a typical run of ten consecutive trials, the average absolute error was 0.02 m. Without control of step length, the error is uniformly distributed, with a range of plus or minus the step length (+0.55 m) and an average absolute error of 0.28 m.

On two-dimensional rough terrain, footholds vary in both forward and vertical separa- tion and running on two-dimensional rough terrain requires an extension to the methods for running on one-dilnensional rough terrain. The control of flight duration is extended to produce the desired flight duration independent of the liftoff and touchdown altitude. The planar biped has run up and down a flight of three stairs using control of flight duration to adjust for the varying altitudes of the footholds and adjustments in forward speed to control step length. Figure 1-2 shows a photograph of the machine running up and down stairs.

1.1 Statement of Problem: Control of Step Length

This thesis addresses one of the problems faced by a dynamic legged system running on

I. J-I step length //-...

// // / // , , _ _, stance flight travel travel

Figure 1-4. The step length is the distance between two successive footholds. The distance traveled during the stance phase plus the distance traveled during the flight phase equals the step length. The length of a step can be modified by changing the forward speed, duration of the stance phase, or duration of the flight phase. In the biomechanics literature, "step length" refers to the distance t.raveled by the body while the foot is on the ground, but that is not the definition used in this thesis. 8 INTRODUCTION rough terrain:the controlofsteplength.I developand evaluatealgorithmsthatallowa dynamicallystableleggedsystemtorunoverknown roughterrainina balancedfashionby controllingthelengthofitssteps.

Iexplorethreemethodsforcontrollingsteplength.Each method adjustsoneparameter ofthesteplengthwhileleavingtheothersunchanged.The lengthofa stepisthedistance traveledduringthestancephaseplusthedistancetraveledduringtheflightphase(figureI- ,_1): L_t_v = &_T_+ &.fT/, (1.1) where &_and &/ are the forward running speeds during the stance and flight phases, and

T_ and T/ are the durations of the stance and flight phases. The distance traveled by the body during a given period is the product of the duration of the period and the forward speed during the period. Therefore, variations in the duration of the flight phase, duration of the stance phase, or forward running speed will influence the step length.

For example, reducing forward speed while maintaining constant flight and stance du- rations will reduce the distance traveled during the step. Similarly, shortening the flight duration while maintaining a constant forward speed will reduce the distance traveled while the system is in the air and decrease the step length. Shortening stance duration while i_laintaining a constant tbrward speed will reduce the distance traveled by the hip while the foot is on the ground and decrease the step length. These observations suggest three methods for controlling step length while maintaining ba]anced running:

• Forward Speed -- For given stance and flight durations, forward speed determines step length. The control system manipulates the forward running speed by choosing the position of the foot at touchdown to accelerate or decelerate the system on each step. If the foot is placed ahead of the body one-half the distance the body will travel while the foot is on the ground, the motion of the body during stance is symmetric and the forward speed is unchanged at liftoff. If the foot is placed forward of this point, forward speed decreases; if placed behind, forward speed increases. The control system could

manipulate forward speed in this way to control step length.

• Flight Duration -- With constant forward speed, the duration of flight determines the 9

distance traveled during flight. The duration of the flight phase is determined by the vertical energy of the system when the foot leaves the ground and the difference between the altitude of the body at liftoff and touchdown. The control system adjusts the ,energy

in the system during stance by modulating the thrust delivered by the leg actuator. This thrust makes up for mechanical losses and produces the desired changes in the duration of the flight phase from one step to the next. The control system could adjust the flight duration so that the balance foothold coincides with the desired foothold. The calculation for placing the foot to maintain balanced running could operate unchanged.

• Stance Duration -- The distance the center of gravity of the body travels during stance

is the product of the average forward speed during stance and the duration of stance. Ideally, the duration of stance is a function only of the mass of the body and the stiffness of the leg, i.e., the natural frequency. The control system could adjust the stance duration by modulating the stiffness of the leg. Variations in stance duration could be used to produce steps of varying lengths.

The three methods for controlling step length are illustrated in figure 1-5. Each method adjusts one parameter of the running cycle to produce the desired step length, leaving the other two parameters unchanged. The best control of step length will probably be achieved by combining the three methods to adjust several parameters at once. However, in order to learn more about each method, I measured behavior while adjusting just one parameter at a time. The division of step length into flight duration, stance duration, and forward speed is not the only possible decomposition, however, this decomposition corresponds naturally to the control algorithms used by our machines for running without adjustments in step length.

Each of the three proposed methods allows the algorithm that places the foot at touch- down to operate unchanged. The foot is still placed on the balance foothold but the pa- rameters of the step are adjusted so that the balance foothold coincides with the desirable location on the terrain and balance is maintained while step length is adjusted.

One might ask what would happen if the control system temporarily ignored the need for balance, and placed the foot exactly on the chosen foothold. I call this approach direct lO INTRODUCTION placement (figure 1-6). Direct placement could be expected to place the foot precisely on target footholds, but at the expense of stability whenever there was a substantial discrepancy between the locations of the target foothold and the balance foothold. The system might recover its balance on subsequent steps if the discrepancy were small, and tip over entirely if tile discrepancy were large. In general, direct placement could not be used to control several consecutive steps because stability would be lost and forward speed would be uncontrolled.

If one of the three methods for controlling step length described earlier were used to move the balance foothold close to the desired terrain foothold, then direct placement might be used to placed the foot precisely on the desired terrain foothold. The separation between

Figure 1-5. Three methods for controlling step length. The top drawing portrays a normal step. The others show longer steps produced by the adjusting one of the parameters of the step. The s(_cond drawing has a higher forward speed, the third an extended flight phase, and the fourth an (:xtended stance phase. In each case increasing one of the parameters of the step produces a longer step length. Decrea_sing any of the three parameters will produce a shorter step length. 11 the balance foothold and the actuM placement would then be small enough for the system to regain its balance on subsequent steps.

1.2 Overview of the Thesis

Chapter 2 reviews relevant work on robot and animal locomotion. Chapter 3 describes the planar biped running machine used as the experimental apparatus for the work in this thesis.

This chapter also explains the algorithms used when the biped runs without adjustments in step length and describes the experiments used to test and compare the three methods fbr control of step length. Chapters 4, 5, and 6 discuss in detail the three methods for controlling step length. Each method is tested independently so that its attributes and limitations can be understood. Chapter 7 discusses direct placement, the technique of placing the foot directly on the desired foothold. Direct placement cannot be used alone

Figure 1-6. Direct placement ignores the balance foothold and places tile foot directly on the foothold. In this example displacing the foot from the balance foothold and placing it directly on the stepping stone allows the legged system to avoid stepping in the stream. The forward speed decreases as a result of the displacement of the foot from the balance foothold and the length of the next step is reduced. 12 INTRODUCTION as a method for controlling step length but it can be used to improve the accuracy of the other three methods. Chapter 8 compares the three methods for controlling step length and describes demonstrations of locomotion across rough terrain made possible with the control of step length. The last chapter summarizes the work described in this thesis and suggests directions for future research. Chapter 2 Background

Results from several fields are relevant to research in rough terrain locomotion. Studies of traversing rough terrain with legged vehicles show how other researchers have approached the problem of developing algorithms for rough terrain locomotion. Studies of humans and animals running on rough terrain work towards understanding tile techniques used by animals and suggest how machine locomotion might be achieved.

2.1 Machine Locomotion

Research in on rough terrain has focused on the statically stable case in which the legged system always maintains a static equilibrium with at least three feet on the ground. Earlier, I described the problem of rough terrain locomotion as consisting of several problems: sensing the terrain, planning a path, choosing a sequence of footholds, and adjusting step length to use the chosen footholds. The description applies to both the static and dynamic legged systems but the problem I am particularly interested in, the use of specified footholds, is much easier for a statically stable legged system than for a dynamically stable one. The control system for a statically stable legged system has merely to lift the foot from its current location, over any intervening obstacles, and place it on the desired foothold. The footholds be within reach and must be chosen so that the legged system does not tip over; the center of gravity must remain inside the support :region provided by

13 14 BACKGROUND the legs. Obstacles that might make the leg swing difficult are usually avoided by planning operations that occur before the foot begins to move. As a result, researchers working on statically stable rough terrain locomotion have concentrated on building a terrain map from sensor information, choosing suitable footholds, and reacting when the terrain does not match the map. Research has included extensive testing of algorithms in simulation and the study of physical machines in the laboratory and, more recently, in natural environments.

The first walking machines to attempt locomotion on rough terrain used a fixed pattern of gait (Morrison 1968; McGhee 1976). Kinematic linkages moved the legs in a stepping pattern. These legged vehicles had no feedback and could not adapt to variations in the terrain, but they could successfully walk over small obstacles. The Iron Mule Train (Mor- rison 1968) is one example of a legged vehicle with a fixed pattern of locomotion. It was a prototype of a vehicle that was intended to follow foot soldiers over unpaved surfaces and carry supplies. It had eight legs that were grouped into two sets of four. Each set of four legs operated in lockstep, and the vehicle was supported by one set at a time. The prototype machine was able to step off a curb, an obstacle about one-third the lengtlh of its leg. Similar mechanisms are now used in toys. Through persistence and good fortune, the toys can often climb over obstacles about a quarter of their leg length in height.

The first control and sensing system placed on a legged robot was a human. In 1968, Mosher and his colleagues built the GE quadruped transporter (Mosher 1968; Liston 1964; Liston 1970). The quadruped transporter walked on rough terrain with a human providing control and sensing. The human drove the machine by making crawling motions with his arms and legs. A hydraulic force-reflecting master-slave servo caused the four legs of the vehicle to follow the motions of the operator, and provided force information from the legs of the vehicle back to the arms and legs of the operator. Despite the intense concentration required to drive the machine, Mosher was able to make it amble along at about 5 mph, climb a stack of railroad ties, and walk through an orange grove. These experiments showed that a legged machine could move effectively on rough terrain, provided it has excellent sensing and control systems, such as those provided by a human.

Computers were first used for the control of walking machines shortly after the devel- opment of the quadruped transporter with its human control. Researchers spent several 15 years building machines and making them walk on smooth terrain before they again con- sidered rough terrain. Progress in rough terrain locomotion continued, however, in the testing of algorithms for foothold selection and in the interpretation of terrain information in simulation.

Okhotsimski and Platonov in the U.S.S.R. (1973) simulated a six-legged vehicle with insect-style legs walking on simple forms of rough terrain. The terrain consisted of combina- tions of pits and boulders with vertical sides and flat bottoms or tops. Their simulation used a hierarchical controller with separate controllers for leg motion, leg coordination, foothold selection, body motion, and route selection. For each obstacle, the controller used a routine of the lowest possible level and deviated as little as possible from a wave or tripod gait. Their simulated six-legged machine was able to walk into and out of pits and up and down short staircases.

Okhotsimski and Platonov (1975) also developed algorithms for foothold selection using more complicated three-dimensional terrain. The simulator used information about the distance to the obstacles and knowledge about the machine's physical limitations to find feasible footholds. For this more complicated terrain they abandoned the use of a wave or tripod gait and used a free gait to allow more flexibility in the use of the legs. The simulated machine walked using the sequence of support polygons with the additional guidelines that the maximum force for any leg should be minimized and that the reaction force should be kept as close to the center of the friction cone as possible. Computation time was of great importance to the researchers, and simple models of the terrain and the machine were used to reduce the computation.

McGhee and Iswandhi (1979) also worked on the problem of choosing appropriate footholds for a six-legged walking machine, given a desired motion trace for the body and a model of the terrain. They proposed an algorithm for finding a sequence of acceptable footholds. Provided the vehicle was stable, legs closest to their kinematic limits in the direction of motion of the body were lifted. Legs with the largest kinematic range in the direction of motion were placed first. These heuristics extend each support state forward and increase the probability that it will overlap with the next support state. By maximizing the number of legs in the air, they emphasized adaptability and avoidance of deadlock or 16 BACKGROUND situations where no leg could be swung forward. The algorithm found a suboptimal solution because it looked only one step ahead rather than considering the entire trajectory. The re- stricted lookahead, however, reduced the complexity of the problem. Computer simulation indicated that this heuristic approach generally found a sequence of appropriate footholds when the motion trace contained a large number of appropriate sequences. The approach was usually successful unless the motion trace contained a forbidden region comparable in size to the body.

Hirose (1984) developed hierarchical algorithms to control the terrain-adaptive gait of a statically stable quadruped. The highest level of the algorithm was navigation planning. Because this level was not automated, Hirose, like Okhotsimski and McGhee, assumed that the algorithm started with a trace of the desired motion of the body. The second level provided gait control so that the machine tended to converge to a crab-like motion. The lowest level of the algorithm provided basic motion regulation, including such functions as controlling the pitch and height of the body and preventing collisions between the legs.

Hirose used a heuristic approach to providing gait control. The forward swing of a rear leg is restricted so that when the foot is placed, the body's center of gravity is in a position that allows the other rear leg to be lifted. This coordination between the rear legs helps to keep the machine out of configurations that cause deadlock by ensuring that a foot can always be lifted. The search for a foothold for a rear leg begins by looking at positions that allow the corresponding front leg to be swung next. This ordering of the search means that the desired swing leg sequence is used whenever possible. Finally, feet on opposite sides of the body are placed on the same side of the motion trace so that the relative foot positioning of the crab gait is maintained.

Hirose demonstrated the feasibility of these algorithms through computer simulations. The simulated quadruped walked across terrain with holes, crossed a river, and made local modifications to the motion trace to avoid a large hole.

Several groups of researchers went on to test their walking machines on rough terrain in the laboratory and in the real world. Okhotsimski and his co-workers (Okhotsimski et al.

1977; Gurfinkel et al. 1981; Devjanin et al. 1983) built a series of machines, that culminated in a six-legged walker. McGhee's group at the Ohio State University (McGhee 198(}) built 17 a that could follow a pattern of footholds selected by an operator. More recently, Waldron and McGhee (1986) built a large hexapod that has walked up and down slopes of natural terrain and stepped over obstacles.

Okhotsimski and his co-workers continued their work on six-legged walkers by building a series of machines (Okhotsimski et al. 1977; Gurfinkel et al. 1981; Devjanin et al. 1983). The early versions were prototype machines with two legs in front and wheels in the back. The legs had three degrees of freedom, contact sensors in the feet, and joint angle and rate sensors. The machines were controlled with analog computers. One of the early machines had a two-link feeler for exploring its environment. A second series of machines had stronger legs and a passive foot with three degrees of freedom. The final machine in this series was a six-legged walker (Gurfinkel et al. 1981), 0.7 m long and weighing 10kg. The legs were powered by electric motors. Pitch and roll information was provided by a vertical gyroscope.

This six-legged machine walked over rough terrain either with commands from an oper- ator or in an autonomous mode (Devjanin et al. 1983). The operator specifed the forward and angular speed of the vehicle as well as the step length and stepping frequency. In this mode, the legged vehicle walked over minor obstacles (0.03 m) while maintaining its body orientation within 1 degree. In the autonomous mode, a range finder is used to gain infor- mation about the terrain. When an obstacle is located, the range finder looks higher and to the left and right to determine the size of the obstacle. If the obstacle is small enough, the machine climbs onto it, otherwise it walks around it.

McGhee's group at the Ohio State University (OSU) also built a hexapod (McGhee 1980). Their machine was larger, 1.3 m long and 1.4m wide, and weighed 103 kg. Digital computers were used for the control. It had a top forward speed of 0.2 m/s. Most legged vehicles have used an operator to specify direction and speed of travel on smooth terrain. The OSU hexapod could operate in this mode, but it could also use what was termed precision footing. The operator pointed out footholds with a laser as the hexapod walked on rough terrain (Ozguner, Tsai, and McGhee 1984). The machine used stereo cameras to locate the foothold in three dimensions. It then evaluated the foothold based on leg kinematic limits and vehicle stability and placed a front foot on the foothold if it was acceptable (McGhee 1983). The rearward legs used these same footholds, and motion 18 BACKGROUND proceeded with a follow-the-leader gait similar to that used by walking-stick insects (Cruse 1979).

Waldron and McGhee (1986) built a second OSU hexapod, the adaptive suspension vehicle (ASV). This vehicle is much larger than the first OSU hexapod--5.2 m long, 2.4 m wide, 3.0 m high---and weighed 2700 kg. An operator rode on board, and leg coordination and foothold selection were performed by control computers. A range sensor provides information on the terrain 10m in front of the machine; long range terrain information is provided by the human operator. This machine is the first one I have discussed that can carry its own power supplies. This attribute, as well as its size, indicate that natural outdoor terrain is the appropriate test arena. The ASV was able to walk up and down gra_ssy slopes, through cornfields, and step over railroad ties.

Song investigated obstacle-crossing gaits for hexapod walking machines (Waldron and Song 1988). He studied four types of rough terrain: gradients, ditches, vertical steps, and isolated walls. For each kind of terrain, Song suggested walking techniques and calculated the maximum size that could be crossed by the ASV hexapod. The techniques for crossing obstacles included lowering the walking height of the body, adjusting the body attitude to move the center of gravity of the body and to extend the working range of the legs, varying the pattern of usage of the legs to achieve the necessary reach, using the belly for support, and falling onto the front legs when descending from an obstacle.

All the projects I have described so far have relied on knowledge or sensing of the terrain and have made no explicit attempt to react to terrain that was unexpected. Several researchers have built reflexes into their machines that allow the machines to respond when a leg bumps an unexpected obstacle or a foot slips. Hirose (1984) used a reflex similar to one ibund in insects to allow his quadruped to climb stairs without a priori terrain inforraation. Wong and Orin (1988) used a prototype leg from the ASV to study the detection of ground contact and the slipping of a foot using information from sensors in the joints.

Hirose (1984) built and controlled a statically stable quadruped with pantograph legs. The pantograph mechanism is a mechanical linkage which allows the vertical and f0re/aft leg motion to be decoupled so that one motor can be used for the support function of the leg and a second for the forward swinging of the leg. Hirose's algorithms used simple 19 reflexes to deM with the terrain. To climb over objects and to walk up and down steps, the control system for his quadruped used a probing strategy. A leg moved forward slowly until a contact sensor mounted on the foot detected an obstacle. When an obstacle was encountered, the foot was raised a fixed amount before continuing its forward motion. When the leg had swung far enough forward, the foot was lowered until a load cell indicated that the leg was bearing an adequate load. This probing strategy is similar to the elevator reflex observed in locusts (Pearson and Franklin 1984).

Wong and Orin (1988) implemented two reflex responses for a prototype leg of the OSU hexapod. Using pressure and velocity information from hydraulic actuators at the joints, they were able to detect foot contact and foot slippage. In keeping with the reflex model, the detection and resulting action were simple so the control system could respond quickly. In bench tests, the foot contact reflex was used to reduce the pressure peaks at touchdown, and the foot slippage reflex was used to halt slipping.

2.2 Animal Locomotion

The observations that insects use an elevator reflex and a follow-the-leader gait were key to progress in statically stable locomotion of machines over rough terrain. Researchers who are interested in machines that can run dynamically over rough terrain can gain insight from studies of animals that run dynamically. It would be wonderful to understand how goats clamber up the sides of the Grand Canyon or how dogs bound across rocky fields, but quantitative studies of animals in their native habitat are difficult. Humans may not be as graceful or as adept at rough terrain locomotion, but they are studied more easily.

Lee, Lishman, and Thomson (1982) studied regulation of gait in long jumping. This problem is very similar to the one under consideration in this thesis because in the long jump a sequence of steps must end with the foot on a particular point, the edge of the takeoff board. They analyzed the movements of skilled long jumpers as they sprinted 30 to 40 m toward a takeoff board 0.2 m wide. The run-up must be fast because the forward speed carries the athlete forward during the jump. During the last few steps before the jump, the 20 BACKGROUND

"gather"phase,the athletepreparesforthe finalverticalthrustthatinitiatesthe jump. The athletemust placehisorherfootclosetothefrontedgeoftheboardbecausethejump ismeasuredwithrespecttotheboard.The subjectsofthisexperimentexhibitedsurprising accuracy:thestandarderrorwas about0.08m forforwardvelocitiesof9 m/s (20mph).

Lee and hisco-workersfound thatthe run-up consistedof two phases. During the initialacceleration,subjectsused a stereotypedpatternof steplengthsand a constant verticalimpulseto providelifteach time the footwas on the ground. When they were about 6m from thetakeoffboard,theathletesbegan adjustingsteplengthto accountfor the accumulatederrorfrom thefirstpartoftherun-up.Lee and hisco-workersobserved thattheirsubjectsadjustedsteplengthprimarilyby changingthe verticalimpulseduring stance to control the distance traveled during flight. A larger vertical impulse results in a longer flight time, and a longer step.

Warren, Lee, and Young (1985) studied how runners adjust step length when required to place their feet on randomly specified footholds on a treadmill. They recorded the movement of the lower limbs of humans running on a treadmill. Targets were placed on a tape running on top of the treadmill. The treadmill moved at a constant speed throughout the experiments. Subjects were instructed to stay a specific distance back from the front of the treadmill and to step on targets when they appeared. They found that subjects primarily controlled step length by adjusting the vertical component of the impulse against the ground, while maintaining constant forward running speed. They also checked horizontal impulse, reach forward of the foot for landing, and timing of the heel strike. None of these varied with change in step length.

Warren and his co-workers used a decomposition of the step length similar to the one I use in this thesis. They examined the contribution of the vertical component of the impulse against the ground, forward running speed, the reach forward of the foot for landing, and the timing of the heel strike. I have chosen to study the effect of adjustments in forward speed, flight duration, and stance duration on the length of the step. Figure 2-1 shows both decompositions of the step length.

Patla, Robinson, Samways, and Armstrong (1989) explored the question of how step length is adjusted while running on flat, level terrain. In their experiments, human runners 21

stance duration flight duration

v

forwardspeed

direct placement ==..3 "-I step length

thrust

forward speed timing of heel strike

forward reach of the foot ,4 step length

Figure 2-1. The three methods of adjusting step length I have proposed are shown in the top drawing: forward speed, flight duration, and stance duration. The methods that Warren and his co-workers (Warren, Lee, and Young 1986) used in their studies of humans adjusting step length are shown in the bottom drawing: forward speed, the vertical component of the impulse delivered to the ground during stance (thrust), the timing of heel strike, and the forward reach of the foot at heel strike. Both parameterizations of the step result in the selection of adjustments in forward speed as a method for controlling step length. The vertical component of the impulse delivered to the ground during stance determines the vertical speed at liftoff. If the altitude of the body is the same at liftoff and touchdown, the vertical speed at liftoff determines the flight duration and this method is equivalent to the flight duration method in the upper drawing. Delaying or advancing heel strike also affects flight duration by changing the altitude of the body at touchdown. Warren's final method, adjustment of the reach forward of the leg at touchdown, is similar to the method which uses adjustments in stance duration to control step length. For the planar biped, the reach forward of the foot at touchdown is a function of the forward speed and stance duration. For a given forward speed, controlling stance duration also controls the reach forward of the foot at touchdown. C',ontrolling reach directly results in the method I call direct placement (top drawing). 22 BACKGROUND

were required to adjust the length of one step between short, normal, and long, according to a signal from the experimenter. Both the length of the adjusted step and the timing of the signal were varied. The stance period just prior to the adjustment occurred when the foot was on a force platform, so the data included ground force information as well as ground contact times. The experimenters were able to determine which parameters were adjusted and how the choice of parameters was affected by timing of the signal. The results indicate that both horizontal and vertical impulse were adjusted to control step length and that the timing of the signal for adjustment affected the parameters used to perform the adjustment. For example, when the cue occurred late in the step, the adjustment was made during the flight phase.

Patla's conclusion that both horizontal and vertical impulse are used to control step length disagrees with Warren's conclusion that adjustments in vertical impulse are the primary technique for controlling step length. This discrepancy may result from different experimental designs: the subjects in Warren's experiment ran on a treadmill while Patla's subjects ran on the ground. The treadmill may have artificially constrained the runner's forward speed to be constant, whereas the overground runners could vary their forward speed freely. Chapter 3 Experimental Methods

The methods for controlling step length were experimentally tested with a dynamically stable, planar, two-legged running machine. A running step for this machine includes a ballistic flight phase during which neither foot touches the ground and a stance phase during which one foot provides support. The transition between flight and stance occurs when the feet touch or leave the ground. During the flight phase the body falls ballistically and one leg is positioned forward in anticipation of touchdown. During the first part of the stance phase, the spring in the leg compresses and the vertical speed of the body decreases to zero. In the second part of the stance phase, the spring expands returning stored energy to upward motion of the body. During steady-state running, each step is very similar to the previous one except that each leg provides support on alternate stance phases. Figure 3-1 illustrates the cyclic bouncing motion of the body and the alternating swinging motion of the legs.

In a typical experiment the planar biped runs with an alternating gait. The control system receives instructions about the desired forward speed, hopping height, and stiffness of the leg springs from a control panel operated by a human driver or from a series of predetermined set points stored in the control code. A rope is attached to the machine and runs up to the ceiling, across two pulleys and down to a handle. A human wrangler holds the handle. During normal running, the rope is slack but when the wrangler senses that the machine is about to fall over, he or she pulls down on the handle, lifting the machine into the air and protecting it from further damage.

23 24 EXPERIMENTAL METHODS

The control computer records data during the experiments. The data are analyzed off-line to determine the cause of failures and evaluate the performance of the machine.

Figure 3-2 shows data recorded while the planar biped was running. The top graph shows

the compression and expansion of the springs as each leg rebounds off the ground. The

second graph shows the angle of the legs with respect to the body as the legs swing back and forth in alternation. The third graph shows the altitude of the hip as the body bounces

up and down.

This project involved many people. The planar biped was designed by Ben Brown,

Marc Raibert, and Jeff Miller. The on-board electronics were built by Mike Chepponis.

Jeff Koechling and I did the final assembly of the machine and wrote tile original control

program. The first control program for the biped was based on a control program written

by Marc Raibert for a quadruped running machine. The control algorithms reflect the

three-part control developed by Marc Raibert for the first Leg Laboratory machine, a two-

Figure 3-1. Photograph of the planar two-legged running machine used for experiments in adjusting step length. The biped ran fi'om right to left in front of the camera and a flash was used to capture an image of the machine in the center of the frame. Light sources were attached to the hip and feet. The light on one foot was blinking and generated a dashed line in the image. The light on the other foot was on continuously and generated a solid line. 25

0.15 _ leg 1 .... leg 2

0.00 m m ..a 0 1 2 3

20

! em o N_ -lO10 i.

-20

_ 0.8 f

0.5

_ 0.4 :2 0.2

0.0 I I I 0 1 2 3

oo 6

4

0 I I . _...i 0 1 2 3

,_" 1.5 ¢,v

1.0- 0.5-

O.Oi m I ._.d 0 1 2 3 time (s)

Figure 3-2. Data for the planar biped showing six running steps with the legs used in alteration. These graphs illustrate the bouncing motion that underlies running. The top curve shows compres- sion of the air springs as the legs are used for support in alternation. The second curve shows the angles of the two legs with respect to the body in the fore-aft plane. The legs operate 180 degrees out of phase. The third curve shows the height of the hip above the floor. The fourth curve shows the body attitude, and the bottom curve shows the forward speed of the machine. Data files are identi- fied by a code consisting of a letter indicating tile source of the data (B-planar biped or S-simulation), numbers indicating the year, the date, and the number of experiments already performed that day. (B88.263.0) 26 EXPERIMENTAL METHODS

dimensional, one-legged running machine. The community nature of some of these activities make it difficult to select the appropriate pronoun. In general, I use "we" when referring to ideas developed in the Leg Laboratory as a whole and 'T' when referring to ideas for which I was primarily responsible.

The first section of this chapter describes the mechanical hardware of the robot and the other equipment required for its operation. The second section describes the control algorithms that produce the steady-state running behavior illustrated in figure 3-1. The last section explains the experiments used to test each method for controlling step length.

3.1 Experimental Apparatus: Planar Biped

The planar biped has two telescoping legs connected to the body by pivot joints that form hips. Each hip has a hydraulic actuator that positions the leg fore and aft. An actuator within each leg changes the leg length, and an air spring makes the leg springy in the axial direction. The biped is mechanically constrained by a boom and pivot to move fore and aft, up and down, and to rotate about the pitch axis. Figure 3-3 shows the machine in greater detail. Table 3-1 gives the physical parameters of the machine.

Each leg contains a hydraulic actuator that acts in series with an air spring. Figure 3-4 shows a more detailed diagram of the leg. While the foot is on the ground, the hydraulic actuator is used to lengthen the leg to add energy to the system. The actuator is al,;o used to shorten the legs, to keep each one out of the way while the other is on the ground. To shorten or lengthen the legs the control computer sends an electrical signal to a servovalve on the leg. The servovalve regulates the flow of oil to the leg actuator piston and produces a corresponding velocity of the hydraulic actuator. The air spring is passive, and the air cylinder is sealed while the foot is on the ground. During flight a supply line replaces the air lost during the previous stance phase. More information on the design of the leg can be found in Raibert et al. (1983).

Figure 3-5 illustrates the kinematics of the hip. Lengthening or shortening the hydraulic actuator moves the leg fore and aft. If the body is level, lmm of movement of 1;he hip 27 actuator corresponds to approximately 1 cm of movement of the foot with respect to the hip. The valves which drive the hip actuators are pressure control valves. The valve translates an electrical signal into a pressure differential across the actuator. The pressure differential corresponds to the force generated by the actuator or in the case of the biped, to a torque about the hip.

f---- BODY

_.¥ FOR PITCH MOTIOI/TETHER BOOM

Figure 3-3. Diagram of the planar, two-legged running machine used for experiments in adjusting step length. The body is an aluminum frame on which are mounted hip actuators and computer interface electronics. Each hip has one hydraulic actuator that positions the leg fore and aft. An actuator within each leg changes its length, and an air spring makes the leg springy in the axial direction. Sensors measure the lengths of the legs, the positions and velocities of the hip actuators, pressures in the air springs, and contact between the feet and the floor. An umbilical cable connects the machine to hydraulic, pneumatic, and electrical power supplies and to the control computer, all of which are located nearby in the laboratory. The arrangement of body, legs, hips, and actuators provides a means to control the position of the feet with respect to the body, to generate an axial thrust with each leg, and to provide hip torques during running. The tether boom constrains the machine to planar motion with three degrees of freedom, fore and aft, up and down, and rotation in the plane. The tether boom is instrumented to measure body pitch angle, vertical position, and horizontal position in the room. 28 EXPERIMENTAL METHODS

Boom radius 2.54m (8.3 ft) Circle circumference 15.92 m (26.2 ft) Total mass 14.8 kg (32.7 lbm ) Body length 0.75 m (30 in) width 0.23 m (9 in) hip spacing 0.090 m (3.54 in) mass 11.5 kg (25 lbm) moment of inertia 0.4 kg-m 2 (1370 lbm-in 2) Leg total mass 1.66 kg (3.66 lbm) unsprung mass 0.29 kg (0.64 lbm) moment of inertia 0.13 kg-m 2 (444 lbm-in 2) Hip actuator Bore 1.613 cm (0.625 in) Rod diameter 0.953 cm (0.375 in) Area 1.27 cm 2 (0.197 in 2) Stroke 0.051 m (2.0 in) Hip sweep +0.52 rad (+30 °) Valves Hydraulic Research #2223271 rev. A two-stage, pressure control Maximum velocity 0.500 m/s (19.7in/s) Maximum force 2630 nt (591 lb) Leg actuator Bore 1.27 cm (0.500 in) Rod diameter 0.953 cm (0.375 in) Area 0.554 cm 2 (0.0859 in2) Stroke 0.067m (9.0in) Valves Moog model 30, two-stage, flow control Maximum velocity 3.42 m/s (11.21 ft/s) Maximum force 1146 nt (258 lb) Maximum leg length 0.67 m (26.4 in) Minimum leg length 0.44m (17.3in) Air spring Bore 2.86 cm (1.125 in) Area 6.42 cm 2 (0.994 in 2) Length 0.10m (4.0in) Computer DEC VAX 11-785, 6 msec sampling interval Hydraulic supply System pressure 20.7 mpa (3000 psi) Maximum flow 631 cm3/s (38.5 in3/s)

Table 3-1. Physical parameter values of the planar biped. Most of these values were stable for all of the experiments described in this thesis. 29

Although the biped is referred to as a planar machine, its motion is in fact constrained to the face of a sphere (figure 3-6). The boom pivots at the base, allowing the machine to run around the circle and to jump up and down. It also has a swivel joint at the end of the boom closest to the machine; this joint allows the machine to rotate in the plane of the running motion.

The constraint provided by the boom simplifies the problem of sensing the machine's position and orientation on the circle. The angle of the boom on the circle is measured by a potentiometer at the base. This sensor provides information about the biped's position on the circle (z). Information about the altitude of the body (z) is provided by a another

__ Position Sensing Element

/- .... Actuator Rod Hydraulic Servo /: Valve

\ "_-_ Hydraulic Manifold Block

"\--Hydraulic Actuator

Wt "_'_-- Guide Tube

r _--- Bearings / j-- Actuator Rod /--Air Piston / J Air Spring

._ _ LegChamberTube rs Foot Switch Mechanism

Figure 3-4. Diagram of the leg used in the running machine. A hydraulic actuator acts !inseries with an air spring. The spring produces the passive bouncing motion of the machine. The hydraulic actuator drives the resonant bouncing motion of the machine and to retract the leg during flight. It also acts in conjunction with the air spring to determine the axial force the leg exerts on the ground. Sensors measure hydraulic actuator length, overall leg length, pressure in the spring, and contact between the foot and the ground. 30 EXPERIMENTAL METHODS potentiometermounted at the base that measures the angleof the boom with respectto the floor.A thirdpotentiometer islocated between the boom and the machine and measures

the angleof the body with respectto horizontal(¢).

The machine alsohas a number of sensorsforinternalmeasurements. Potentiometers

measure the length of the legand the positionof the leg actuator.The angle between the

legand the body is calculatedfrom the lengthof the hip actuator,which is measured by a

potentiometerin parallelwith the hip actuator.A tachometer measures the velocityof the

hip actuator. Sensors mounted on the feetmeasure the pressurein the airspring. On/off

switchesin each foot pad determine ifthe foot isin contact with the ground.

With the exceptionofthe hip actuator,each ofthe lengthmeasurements isdifferentiated

to provide a velocity.The differencingalgorithm uses two positionreadings(xi and xi+k)

body

actuator r

leg

Xfh foot

Figure 3-5. Kinematics of planar two-legged running machine. The length of the leg is r, the angle between the leg and vertical is 8 and the pitch angle of the body is ¢. The length of the hip actuator determines 7. 8 = 7 - ¢ - 90°. The foot position relative to the hip is X.fh = r sin 8. The kinematics for the second leg are similar except that the hip actuator is attached to the other side of the body. 31

separated by some period of time (kAt) to compute a velocity:

xi "_ xi - Zi-k (3.1) kAt

This operation delays the velocity measurement by kAt/2 and magnifies noise in the position

measurements. Increasing k reduces the noise but increases the delay. The size of k varies

for different sensors. Forward speed (&) varies slowly so a large k (5) is used when At is

6ms. The velocity of the leg (.), on the other hand, can change rapidly, so k is small (2)

fbr the leg velocity computation.

Each sensor is calibrated by setting the element being measured to a series of different

values using external measuring devices. The raw sensor value is read at each setting. The

sensors are assumed to be linear, and a linear fit to the points provides a scale and zero

offset that convert the raw sensor value to the appropriate units for that sensor (meters,

degrees, or psi).

The biped is powered by a hydraulic pump. Two hydraulic hoses run along the boom.

s "

I II I , /

• g • s • s

top

/////////// ///////////

left side front

Figure 3-6. The boom constrains the biped's motion to the face of a sphere. The boom pivots at the base and allows the machine to run around the circle and to jump up and down. The boom also has a swivel joint at the end closest to the machine which allows the machine to rotate in the plane of the running motion. These three degrees of freedom allow the machine to move fore and aft, up and down, and to rotate in the plane. 32 EXPERIMENTAL METHODS

One containshigh pressureoil(3000psi)and the othercarriesthe low pressurereturnflow

(between 0psi and 500psi).Fluctuationsin the hydraulicsupply pressureare reduced by a largeaccumulator locatednear the pump and a smallaccumulator mounted on the machine.

A second, small accumulator mounted on board reduces the fluctuationsin the return line pressure.In additionto the hydraulicsupply lines,the boom alsocarriesan airsupply line

(120psi)which isused to restorethe restingpressurein the airspringsaftereach bounce.

The controlcomputer isa DEC VAX-II/785}. The biped isconnected to the UNIBUS of the VAX by a pairof bus driversand a cablethat runs from the controlcomputer, along the boom, to electronicsboards mounted on the machine. These boards perform analog to digitalconversionsforthe sensorreadingsand digitalto analog conversionsto drivethe hip and leg valves.

The computer program that controls the biped is part of a device driver built into a modified version of the UNIX$ operating system kernel. A real-time clock interrupts the processing every 6ms, and the control code for the biped is executed. The control code consists of three main parts. The first part reads the sensors, scales the raw values, and computes the velocities. The second performs calculations based on the state of the machine (flight or stance) and calculates the control signals which will cause the servovalves to produce the desired behavior. The final portion of the code sends the control signals to the valves. More information on the computer programs used to control the biped and the other Leg Laboratory running machines can be found in Raibert et al. (1985) and

Chepponis (1987).

3.2 Control Algorithms

The goal of the biped control system is to produce dynamically stable, steady-state running.

The operator specifies the forward speed and hopping height, and the control system adjusts the running behavior to match the commands. The control system relies on a three-part t VAX is a trademark of Digital Equipment Corporation :_ UNIX is a trademark of AT&T Bell Laboratories 33 decomposition of the problem. One part regulates the amplitude of the machine's bouncing motion, another maintains the body in a level attitude, and the third stabilizes the for- ward running speed. The three-part control emphasizes the separate actions of controlling hopping height, body attitude, and forward speed.

Hopping Height

Hopping is a resonant bouncing motion stimulated by an actuator that excites the spring- mass system formed by the leg and body. The height of each hop is determined by the mechanical losses during the hopping cycle and by the thrust developed in the leg actuator

during stance. The control system sustains the bouncing motion by adding energy on each cycle.

The control system transforms the desired hopping height into a desired energy level for the system. During stance, energy is stored in the compression of the spring, in the altitude of the body, and in the vertical and horizontal speed and rotation rate of the body.

The leg actuator is extended to make the energy in the system equal the desired energy at the time of liftoff.

Body Attitude

The control system maintains a level body attitude during running by applying torques to the body during stance. Friction between the foot and the ground permits a torque; to be applied to the body during stance without causing the foot to slip on the ground. A linear servo moves the body toward a level attitude whenever the foot is on the ground:

v = kp(¢d - ¢) + kvq_, (3.2)

where v is the signal sent to the hip valve, ¢ is the body attitude, ¢d is the desired body attitude with respect to the horizontal (generally 0degrees), and ¢ is the body rotation rate. The gains of the proportional-derivative servo, kp and kv, are chosen empirically. For

most experiments kp = 25 and kv = 5. 34 EXPERIMENTAL METHODS

Forward Running Speed

During each flight period the control system manipulates forward running speed by choosing a forward position for the foot that accelerates the body appropriately during the next support interval. For steady-state running the control system places the foot in the center of the distance the body is expected to travel during stance. When this foot placement is used the motion of the body during stance is symmetric and the forward speed at liftoff is the same as the forward speed at touchdown (figure 3-7). We call the location that produces this symmetric motion the neutral point. When the control system displaces the foot from the neutral point, the body accelerates, with magnitude and direction proportional to the

magnitude and direction of the displacement. The discrepancy between the measured speed and the desired speed determines how far the foot must be displaced from the neutral point.

The neutral point is estimated from the forward speed (5:) and the previous stance duration (Ts). Combining the neutral point calculation with the correction term for errors in forward speed provides an equation for the position of the foot with respect to the hip at touchdown:

Xfh - --2 + - (3.3)

where X]h is the forward position of the foot with respect to the vertical projection of the

t neutral point

Figure 3-7. The neutral point is the center of the distance that the body travels while the foot is on the ground. In the left drawing the foot is placed closer to the center of mass than to the neutral point, and as a result the body falls forward and accelerates. In the center drawing the foot is placed on the neutral point, and the forward speed at liftoff is equal to the forward speed at touchdown. In the right drawing the foot is farther in front of the center of mass than the neutral point, and the machine's forward speed is reduced. 35

hip, ;_d is the desired forward speed, and k_ is a gain. For most experiments k_ was 0.075. The foot position, X/h, is translated into a desired leg length and hip position. Linear servos lengthen the leg and move the hip to the correct angle during flight.

In the running of a two-legged machine, flight and support proceed in strict alternation. A running biped uses one leg at a time for support and positions only one leg at a time for landing. The leg being positioned or providing support is the active leg and may be controlled with the principles described above. The idle leg is shortened so that it does not strike the ground as it swings forward for the next touchdown. The angle between the body and the idle leg is held equal and opposite to the angle between the body and the active leg. This action, which we call mirroring, reduces the disturbances to the body attitude caused by the swinging of the legs.

A mechanism is needed to determine which leg is idle and which is active, and to keep

the control system synchronized to the behavior of the machine. The state machine shown in figure 3-8 performs this function. At liftoff, the idle leg becomes active and the active leg becomes idle. The state transitions are triggered by changes in the sensor readings from the machine. Touchdown is signaled by the closing of the foot switch in the active

leg. Loading occurs when the leg spring begins to compress. Bottom, or the middle of the stance period, occurs when the leg spring reaches its maximum compression and begins to extend. Unloading occurs when the leg spring has reached its full extension and liftoff is

signaled by the opening of the foot switch.

The loading and unloading states last for a very short period of time (usually 6 ms). These transition states are necessary to make sure that the leg is sufficiently loaded or

completely unloaded before any attempt is made to correct the body attitude or to swing the leg forward. Compression and thrust combine to form the stance period, which has a duration between 0.1 s and 0.2s {usually about 0.15 s). The duration of the flight phase varies from 0.2 s to 0.5 s, but the machine generally runs with a flight duration of about 0.4 s. The duty cycle of the biped is about 0.37. 36 EXPERIMENTAL METHODS

Liftoff Liftoff _ "_

/ Leg2idle__ _ ]" / .... Leg 1 idle ..... ]

('Compress-f_ (Thrust-1 "} ( Load-2 ) (Compress-2_

State Trigger Event Actions

FLIGHT Active leg leaves ground Interchange active and idle legs (liftoff) Lengthen active leg for landing Position active leg for landing Shorten idle leg Mirror angle of active hip with idle hip

LOADING Active leg touches ground Zero hip torque of active leg (touchdown) Keep idle leg short Lock idle hip

COMPRESSION Air spring on active leg shortens Servo pitch with active hip (support) Keep idle leg short Mirror angle of active hip with idle hip

THRUST Air spring on active leg Extend active leg lengthens (bottom) Servo pitch with active hip Keep idle leg short Mirror angle of active hip with idle hip

UNLOADING Air spring on active leg approaches Shorten active leg full length (no support) Zero hip torque of active leg Keep idle leg short Mirror angle of active hip with idle hip

Figure 3-8. State machine used to control the biped. The state shown in the left column is entered when the event listed in the center column occurs. The actions in the right column take place until the next state transition. States advance sequentially during normal running. 37

3.3 Experiments with the Planar Biped

In a typicM experiment the biped runs around the circle with an alternating gait. The control system follows a predetermined series of set points for forward speed, hopping height, and leg stiffness. When the control system reaches the end of the sequence of set points, it sounds a buzzer, indicating to the operator that the experiment is complete.

While the machine is running, the control computer records the sensor readings, veloci- ties and other computed variables. The control system records 2500 samples of each variable in a fixed-length buffer. Data are recorded every time the control program executes (every

6 ms) if the experiment is short or if the data are needed for debugging the mechanical hardware. For longer experiments, the data are recorded less often (usually every 60 ms) to allow data to be recorded over a longer period of time. At any time during the experiment the operator can choose to save the most recent data entries in a file stored on the control computer.

The data are examined with an interactive graphic display program. The plotting

program runs on either an Evans and Sutherland PS/2 vector stroke display or a Sun workstationt running the X window system. Recorded variables can be graphed against time or against another variable in a phase plot. The program includes a cartoon representation of the biped so that the user can see the state of the machine as seen by the sensors. The data can be played back through the cartoon so the user can watch the behavior of the machine in slow motion. The program also includes an interpreter tor a subset of the C

programming language. This interpreter is used to manipulate the data arrays and perform off-line debugging.

The remainder of this section discusses the specific experiments used to develop and

test the control of step length. I have proposed three methods for controlling step length: adjustments in forward speed, flight duration, or stance duration. Each method adjusts one variable while holding the other two constant to produce a step of the desired lengt:h.

Larger, and perhaps more accurate, changes in step length could be achieved by allowing more than one of the three variables to vary at a time. However, I chose to allow only one

t Sun workstation is a trademark of Sun Microsystems 38 EXPERIMENTAL METHODS variable to vary and to study the methods in isolation. By exploring the advantages and shortcomings of each method independently, I hope to gain insight into how they might best be combined.

Each of the three methods operates in a similar fashion. To produce the desired step length, the controller determines the correct value for the adjusted variable and takes action so that the velocity or duration specified by the adjusted variable is correct. If the control of the adjusted variable is accurate and that control does not affect the two unadjusted variables, then the resulting step length will equal the desired step length.

The task of implementing one of the methods for controlling step length contains two

subproblems: first, the adjusted variable must be accurately controlled and, second, that control must be used to accurately control step length. The experiments for testing the control of step length reflect these two subproblems: one experiment demonstrates control of the adjusted variable and another demonstrates control of step length using adjustments of that variable.

In the first experiment the biped runs forward while the adjusted variable (forward speed, for example) takes on a variety of desired values. Each set point is used for sixteen steps and then the set point switches to the next value in a predetermined pattern. The other two variables (flight and stance duration, for example) are also controlled but to a constant value rather than a varying one. The forward speed, flight duration, and stance duration on each step are stored for later analysis.

Figure 3-9 shows data from an experiment in controlling forward speed. The top graph shows the actual and desired forward speed. If adjustments in forward speed are to be

successfully used for controlling step length, not only must forward speed be well controlled but that control must not disturb the control of the other two variables. The bottom two

graphs in figure 3-9 show flight and stance durations during the experiment. The variation in forward speed affects the flight duration slightly but has no discernible effect on stance duration.

The second set of experiments demonstrates that step length is controlled. In these

experiments, the biped runs forward following a pattern of step lengths. Each step length is used for eight steps in a row. The two variables which are not adjusted are controlled to 39 constant nominal values. The adjusted variable has a value determined by the desired step length and the nominal values for the two other variables.

Figure 3-10 shows data from an experiment in controlling step length through adjust- ments in forward speed. The top graph shows the desired and actual step length. The

_" 0.6

....'...°°..... • . ..° • . • "...°...'°'..- . ".,..o...'.°.°. .. • ".o.°'°.°..° • 0.4 "" "'"

_ o.2

0.0 I I I 0 50 100 130

_' 0.2

O .._

¢_ 0.1-

0.0 I I I 0 50 100 150 step number

Figure 3-9. Data from experiment in controlling forward speed. In the top graph the solid line indicates the desired forward speed and the dots represent the forward speed actually generated. The biped ran for sixteen steps at each desired forward speed and then the speed was changed to the next value in the pattern. The bottom two graphs show the flight and stance durations, during the experiment. Flight duration varied slightly in response to the changes in forward speed. There is no noticeable variation in stance duration. (B87.248.4) 40 EXPERIMENTAL METHODS

E 1.5

1.0

0.5

o.o u n i i 0 50 1_ 150 2_ 250

2 °,, ° .,. °," ,,°, • o°° , ° ,_ " °, . •

• °,, ,_ ,,° • °,, o o °'° ° ° • • . °.• ,, , • .'° 0 °° "°'o° °." o•, .. ,j , °.,°o,, • ," •o° °,

"_ 1 • • • • • •• %°°• • • ° 0°'° ° * : °0° • °• °°.. °°°°'°.

,*o°°°°° °°o o • • o°,O• •. ,,_°" ,°°,°,°

.o°°', ,00°,°oO 0 I I I I I 0 50 100 150 200 250

_" 0.6

O ".'t

0.4 """'",.." • '"_'.''...... '"'" ".-"."''" o"".....• ",. o',', _,.'.%,_. ,,.. '. •••"..." ":'"'". o"""".....""'"" "'" ". """ "" ""• o"• "" "'" -":" ..".".'."_',:

c_0 0.2

0.0 I I I I I 0 50 100 150 200 250

0.2-

o •._ o, o ,, •

. _o. 0.°°. o°.°,,°°, °°o° ,, °°° °0, 0,,, ,, ,,,,0 ,o,, °,° ,°°°°, • ° ,,,,° o,° °,° • °., • • • °.°_°'''°°°,,°,.°o°°°°°,.°o'°'°°°°.° 00 0, ,_o_°°'°_°°°°_°o_°°°°°,, .°_ ° _ ,_ -o • °_°-°-°'°°,°°°-,° -°°°--°° o 0.1-

0.0 I I I I I 0 50 100 150 200 250 step number

Figure 3-10. Forward speed is adjusted to provide control of step length. The desired step length is changed every eight steps. In the top graph, the solid line indicates the desired step length and the dots represent the step length that was actually generated. The second graph shows the adjustments in forward speed that were used to produce the correct step length. The bottom two graphs show the stance and flight durations for the experiment. The forward speed varies to produce steps of the correct length. Flight duration and stance duration remain approximately constant. (B88.102.0) 41 next three graphs show the three variables. The adjusted variable, forward speed, varies ill response to the changes in desired step length and the estimates for flight and stance duration. Flight and stance duration remain approximately constant.

The results of these experiments are used to determine how each variable contributes to the error in step length and also to measure the performance of each method. I compute three measures of the error: the average of the absolute value, the mean, and the standard deviation. The average absolute error provides an intuitive measure of the magnitude of the error. The mean shows whether there is an offset in the control. The standard deviation indicates the variability in the control.

The errors for each variable cannot be compared directly because the units are not the same. To allow comparison, the error measures are converted to the same units. The error measures for forward speed (m/s) are converted to meters by multiplying by the sum of the nominal value for the flight duration and stance duration (0.55s). Similarly, the error measures for flight and stance duration are converted to meters by multiplying by the nominal value for forward speed (1.1m/s). This technique provides an approximate estimate for the contribution of each error to the total error in step length.

I compute the range and accuracy of each method. The range is the difference between the minimum and maximum achievable step length. The accuracy is the mean and standard deviation of the error in step length for a given experiment.

The range of a method for controlling step length depends on the choice of the nominal values for the two unadjusted variables. For example, if the nominal value for forward speed was doubled, the range of step lengths possible through adjustments in flight duration or stance duration would also double. I addressed this problem by using the same set of nominal values in each experiment. The nominal values were approximately in the middle of the range of achievable values for each variable and lie in a region where each variable was accurately controlled.

The pattern of step lengths used in the experiments affects the measured accuracy of the methods. The best solution to this problem would be to test all three methods on the same pattern of step lengths. But the methods have different ranges and a pattern that fully exercised one method would contain only a few step lengths that were within the range 42 EXPERIMENTAL METHODS of a second method. Instead, I tested each method on a similar pattern of step lengths.

The patterns were the same, but each one was scaled so that it fell within the range of the

method. Each change in desired step length reflected approximately the same percentage

of the range for each method.

The experimental results shown in the thesis are the best results obtained for each

experiment. However, the data are typical in that the results shown are not significantly

better than other experiments performed with the same control algorithms. Chapter 4 Forward Speed

Chapter 1 defined the central problem of this thesis: the need to control step length in order to use specific footholds. I propose three methods for controlling step length: adjustments in forward speed, flight duration, and stance duration. This chapter explores the first of these methods, the control of step length through adjustments in forward speed.

A legged system can take a longer step by running faster. If the stepping frequency remains constant while the forward speed increases, the system will travel farther during each step. Similarly, if the system decreases forward speed but maintains the same stepping frequency, it will take shorter steps. Both the distance traveled during flight and the distance traveled during stance are influenced by a change in forward speed (figure 4-1).

Figure 4-1. If the flight and stance durations remain unchanged, a higher forward speed increases the distance traveled during flight and the distance traveled during stance. Similarly, a lower forward speed decreases the distance traveled by the body during stance and the distance traveled during flight. As the bracket shows, a change in forward speed affects both the distance traveled during stance and the distance traveled during flight.

43 44 FOaWAaD SPEED

The length of a step is the duration of the step multiplied by the forward speed of the legged system: Lstep = Tstep_C, (4.1) where Lstep is the length of the step, T_tep is the duration of the step, and & is the average forward speed during the step. If the legged system runs faster but with the same stepping frequency, it will travel farther between touchdowns. Similarly, if it runs more slowly, the step length will be shorter. These observations form the basis of the first method for adjusting step length explored in this thesis: using adjustment of forward speed to control step length.

The first section of this chapter examines events in the running cycle that influence

forward speed. The placement of the foot with respect to the center of mass of the body at touchdown and the torques applied between the leg and the body during stance both affect forward speed. I have chosen to control forward speed through the placement of the foot at touchdown. The second section describes the algorithm for choosing a foot position at touchdown that will produce the correct forward speed. The correct foot position depends on the actual forward speed, the desired forward speed, and the length of the stance phase. The third section of this chapter presents data showing that forward speed is accurately controlled using this algorithm. When the biped follows a pattern of forward speeds varying between 0.25 m/s and 2.0 m/s, the average of the absolute value of the error in forward speed is 0.063 m/s. Tile final section shows that control of forward speed can be used to provide accurate control of step length over a wide range of step lengths. When the biped follows

a pattern of step lengths ranging from 0.1 m to 1.0 m, the average of the absolute value of the error in step length is 0.07 m.

4.1 What Determines Forward Speed?

During the flight phase, the forward speed of a legged system is essentially constant. There- fore, the acceleration or deceleration of the body during the stance phase determines the [orward speed throughout the step. The forward speed during stance is determined by the 45 forward and vertical speed at touchdown, the placement of the foot with respect to the center of mass of the body, the horizontal component of the leg extension for thrust, and torques applied between the body and the leg. I have chosen to use the placement of the foot at touchdown to control forward speed. I assume that the horizontal component of

the leg extension for thrust and the torques applied between the body and the leg have constant magnitude and that their effect on forward speed can be ignored. Placement of the foot can be used to stabilize running speed at a constant speed or to make the system speed up or slow down.

During each stance phase, the forward speed undergoes a cyclic variation. In the first part of stance, the forward speed of the body decreases because forces in the leg push backwards on the body. Once the hip has passed over the foot, the forward speed increases

again because the leg force pushes the body forwards. If the motion of the body is symmetric and the body spends the same amount of time accelerating as decelerating, then the forward speed at liftoff will equal the forward speed at touchdown. The horizontal distance from the foot to the center of mass at touchdown will be equal and opposite to the horizontal distance at liftoff. We call the foothold that generates this symmetric behavior the neutral

point.

To increase or decrease running speed, the control system displaces the foot from the neutral point. This action generates an acceleration of the body, with magnitude and direction related to the magnitude and direction of the displacement. If the foot is placed closer to the center of mass of the body than the neutral point, the body falls forward and accelerates by liftoff. If the foot is placed farther than the neutral point, the machine's forward speed is lower at liftoff. The difference between the measured speed and the desired speed, the desired acceleration, determines how far the foot is displaced from the neutral point. 46 FORWARD SPEED

4.2 Controlling Forward Speed

This section considers the control algorithms used to stabilize and adjust forward running speed. The algorithm for control of forward speed is based on the following idea: for a,given running speed, hopping height, and leg stiffness there is a unique position of the foot, the neutral point, that leaves the forward speed unchanged after the bounce.

The neutral point is the center of the locus of points on the ground that the center of mass of the body passes over while the foot is on the ground. I assume that the center of mass of the body is located at the hip. A simple estimate for the length of the locus is the

forward speed of the body multiplied by the length of time the foot is expected to be in contact with the ground. If the forward speed needs to be adjusted, the foot is displaced from the neutral point.

Combining the neutral point calculation with the adjustment of forward speed yields the following equation for the placement of the foot at touchdown:

- -- + k_(2 - Xd), (4.2) Xfh -- 2

where X]h is the forward position of the foot with respect to the vertical projection of the hip (figure 4-2), T_ is a prediction of the duration of the next stance phase, & is the

forward speed, 32d is the desired forward speed, and k_ is a gain. The gain, k,, has been experimentally determined to be 0.075. I call the location specified by X/h the balance foothold. After the control system finds Xfh, a kinematic transformation determines the hip angle that would position the foot with respect to the hip as specified, and a linear servo

Xfh

Figure 4-2. The forward extension of the foot with respect to the vertical projection of the hip is X/h. At touchdown, X]h is determined by the neutral point and a correction term for the desired change in forward speed. 47 drives the hip actuator (Hodgins, Koechling, and Raibert 1986).

This control scheme provides only approximate regulation of forward speed. The control of forward speed is not consistent or accurate enough to allow precise control of step length.

This control scheme sometimes causes oscillations in forward speed. Figure 4-3 shows two examples of oscillations, one on on alternating steps and one in cycles of three or four steps.

A second problem with this control scheme is that the actual forward speed rarely equMs the desired value--there is usually a steady-state error. Figure 4-4 shows data where the actual speed is consistently less than the desired speed. These data are typical. Both problems prevent the use of this control scheme as part of a method for controlling step length.

As I will show later, these problems do not necessarily indicate that placement of the foot is not a good way to control forward speed. Rather, the model of the running machine

0 I I I I 0 1 2 3 4

"_ 4- E

0 I I I I I I I 0 1 2 3 4 5 6 7 time (s)

Figure 4-3. Data recorded from the planar biped as it ran forward at "constant" speed. The horizontal lines show the periods of time when a foot was in contact with the ground. The top graph shows an oscillation in forward speed corresponding to the alternation between the legs. The bottom graph shows a three-step oscillation cycle in forward speed that occurs when pitch is not properly controlled. The regions of the graphs where forward speed is nearly constant correspond to the flight phase. The sharp changes in forward speed occur during the stance phase (B86.341.1 and B87.336.1). 48 FORWARDSPEED

used to motivate equation 4.2 is too simple. Improving the measurement of the body and leg angles and the estimate of stance duration reduced the step-to-step oscillations in forward speed. Reducing pitch disturbances prevented most of the longer oscillation cycles. Improving the model of the behavior during stance reduced the steady-state error and made the measured speed track the desired speed more closely. Together, these improvements made control of forward speed accurate and consistent enough to allow the control of step

length.

4.2.1 Oscillations in Forward Speed

Oscillations in forward speed come in several varieties: step-to-step oscillations that cor- respond to the alternation between the legs and longer oscillations of three or four steps. An error in foot position at touchdown on one leg is one cause of step-to-step oscillations in forward speed. Errors in the estimate of stance duration and in the servo that positions the leg for landing both cause step-to-step oscillations. Longer oscillation cycles are usually accompanied by oscillations in pitch. Reducing disturbances to pitch reduces the size of these oscillations substantially.

_" 2

0 I I I I I ,,I 0 1 2 3 4 5 6 time (s)

Figure 4-4. Data recorded from the planar biped as it ran forward at "constant" speed. The bold line indicates the desired forward speed and the solid line indicates the measured speed. The horizontal lines show tile period of time when a foot was in contact with the ground. There is an offset between the desired and actual forward running speeds. (B87.184.3) 49

Step-to-step Oscillations

A small error in the placement of the foot at touchdown causes a substantial error in forward speed. When the error in foot placement differs between the two legs, the forward speed increases on one step and decreases on the next, resulting in the behavior characterized as step-to-step oscillations. How does a change in the foot position at touchdown affect forward speed? The equation used for placement of the foot at touchdown contains a term for correcting forward speed by changing the foot position. That term can also be used to predict how an error in foot position will affect forward speed. For a given change in foot placement, Ax]h, the change in forward speed, A_, is predicted by the error term in equation 4.2:

AX]h = k_A:i: (4.3)

A_- Ax$h (4.4) k_

The gain, k_, has been experimentally determined to be about 0.075. Equation 4.4 predicts that an error of 0.01 m in the forward position of the foot on one step and an error of -0.01 m on the next step will cause an oscillation of +0.13 m/s in forward speed.

Equation 4.2 provides insight into what kind of error causes oscillations. If one of the variables in equation 4.2 exhibits a step-to-step error or if the foot is not positioned at X]h

on alternating touchdowns, then forward speed will increase on one step and decrease on the next.

Small errors in stance duration cause substantial errors in the calculation of the neutral

point. For example, when the machine runs at 1 m/s, an error of 0.02 s in the estimate of stance duration causes an error of 0.01m in the neutral point estimate:

ATs2 (4.5) AXfh - 2

(O.02s)l m/s = 0.01 m. (4.6) AXfh = 2

The previous argument showed that an error of 0.01 m in foot position produced an error of 0.13 m/s in forward speed. Therefore, an error in stance duration of 0.02 s on one leg causes the forward speed to oscillate between l m/s and 0.87m/s or 1.13m/s. This oscillation is =t=7%of the desired speed. The resolution of the stance duration measurement is only 0.006 s 50 FORWARD SPEED and an error in the prediction of the stance duration of 0.02 s is fairly common. Because of mechanical differences between the legs, the previous stance time for a given leg is, in

general, a more accurate estimate of the next stance time for that leg than the last stance

time from the other leg. Separating the stance duration estimates for the two legs reduced

step-to-step oscillations in forward speed.

Step-to-step oscillations also occur when the servo that positions the foot for touchdown

does not get the foot to the right position on each touchdown. The top graph in figure 4-5

shows a step-to-step oscillation in forward speed that is due to poor performance of the

servo for foot placement. The middle graph shows the position of foot 1 with respect to

the hip. The desired position is shown as a bold line and reflects the noise in the forward

speed calculation. At touchdown (the vertical dotted lines) the foot is shy of the desired

position, resulting in an increase in forward speed. The bottom graph shows similar data

for foot 2, but here the foot lands just forward of the desired position on each touchdown

and the forward speed decreases. Since the legs are used in alternation, the forward speed

oscillates from step to step.

The magnitude of the oscillations in forward speed shown in the top graph in figure 4-5

are about ±0.1 m/s. The error in the positioning of the hip actuator is about a millimeter. Because of the kinematics of the machine, this error translates to about a centimeter of

error in foot placement. Earlier I showed that a centimeter of error in the foot position on

each leg is enough to generate an oscillation of about +0.13m/s in forward speed, which is

roughly the size of the observed oscillation.

A proportional-derivative servo is used to move the leg to the correct angle for landing.

Since the problem with the servo occurred when the foot was near the desired position and

with plenty of servo time remaining, it was not the result of poorly tuned gains. Instead,

stiction prevented the hip from moving the remaining small distance to the desired position.

To reduce the stiction, I added a dither term to the control. With dithering, the valve signal

is increased by 2% of the maximum signal on one time tick and decreased by that amount on the next tick. The foot now moves to within 0.5 mm of the desired position at touchdown

and the step-to-step oscillations in forward speed are greatly reduced.

If the servo that positions the foot fails to get the foot to the correct place by touch- 51

_" 2

I I I I 0 1 2 3 4

o

O.lO[

0.00 / i I I 0 1 2 3 4

0.10- ,

o :_.

t-,.l

0.00 I I 0 1 2 3 4 time (s)

Figure 4-5. The top graph shows a step-to-step oscillation in forward speed. The horizontal lines indicate the stance phase. The flat portions of the forward speed curve occur during flight, and the sharp changes occur during stance. The middle graph shows the position of foot 1 with respect to tile hip. The desired position is shown as a bold line and reflects the noise in the forward speed calculation. At touchdown (the vertical dotted lines), the foot is just shy of the desired position, resulting in an increase in forward speed during the next stance phase. The bottom graph shows similar data for foot 2, but here the foot lands just forward of the desired position, thereby causing the speed to decrease. Since the legs are used in alternation, the forward speed oscillates from step to step. The setpoint for leg 2 is higher because the control system tries to compensate for the increase in forward speed caused by the previous step on leg 1. Similarly, the foot position for leg 1 includes a correction term to make up for the deceleration produced by leg 2. (B86.341.1) 52 FORWARD SPEED down, the forward speed will be disturbed. An equivalent error occurs if the control system incorrectly measures the location of the foot. Several sensors and knowledge of the kine- matics of the machine are required to compute the horizontal displacement of the foot with respect to the hip.

The measurement of the location of the foot relative to the hip depends on the pitch measurement, the length of the hip actuator, and the length of the leg. Errors in any of tile three cause the foot to be incorrectly positioned for touchdown. An error in pitch angle causes both feet to be misplaced by an equal amount, resulting in a constant offset. If the actuator measurement for one leg is in error, then the forward speed oscillates from step-to-step. An error in the leg length must be substantial before it noticeably affects the forward position of the foot.

The control of forward speed is sensitive to errors in the pitch angle of the body or the angle between the leg and the body (0). Given an error in pitch of i degree, a nominal landing leg length of 0.58 m, a forward speed of 1.0 m/s, and a stance duration of 0.15 s, the error in foot position caused by an error I degree of in pitch is

Axfh = r(sin 0 -- sin(O -- 1)) (4.7)

Axyh = 0.58re(sin(7.5)- sin(6.5))= 0.01m. (4.8)

An error of 0.01rn in foot position produces a change of 0.13m/s in Ibrward speed. A similar argument holds if the measurement of one hip actuator had a ] degree error and the other was correct. In that situation the forward speed would have a step-to-step oscillation of ±0.07 m/s.

The problems caused by errors in pitch and hip angles are reduced by automatically adjusting the calibrations for these variables before each set of experiments. The biped is commanded to run in place while the hip angle offsets are adjusted by the control system.

The process is complete when the forward speed is zero and the step-to-step oscillations in forward speed disappear. Figure 4-6 shows the result of adjusting the hip angle offsets.

The offsets were adjusted by an amount proportional to the observed error and osci]lation in forward speed after every ten steps. After 50 steps (or 30 s) the zero offsets reached a nearly constant value and the machine ran in place with almost no oscillation in forward speed. 53

Longer Oscillation Cycles

Longer oscillation cycles in forward speed are usually accompanied by oscillations in the pitch angle of the body. When the body pitch angle deviates from level during flight, the control system corrects the attitude during the next stance phase by exerting a torque between the body and the leg while the foot is on the ground. The neutral point model for control of forward speed assumes symmetric hip torque during stance. The torque applied to control the attitude of the body violates that assumption and affects forward speed. Because of this interaction, an oscillation in pitch induces an oscillation in forward speed. The oscillation in forward speed can be corrected by reducing the magnitude of the pitch oscillations or by anticipating the effect of pitch correction on forward speed. I chose to reduce the disturbances to pitch.

0.5

0.0 .#$0_, rg"L'aJ_ Iig_,lt tr_,i,._,t_ tll_r V, uJ.t.,_l _.V,,i._j_,_/.taaLr ...... _,_.._,_,_"t .,_.a,,j, l..,,yr,, ,-"'a 50 ,t,40 ,. , t

_o

-1.0

0.003

4.a I

o 0.002 ...... I leg 1

_D N ..(:_ 0.001 . ¢._ ...... -.

0.000 t I l I I...... leg 2 ..,.J 0 10 20 30 40 50 time (s)

Figure 4-6. Tuning of [lip angle calibration. The top graph shows forward speed as tuning pro- gresses. In the beginning of the experiment (0- 7s), the forward speed shows a constant offset from the desired value of zero as well as a step-to-step oscillation. After tuning, the forward speed is nearly constant. The bottom graph shows the values of the calibration variable for the hips. Every t,en steps, the offsets are adjusted based on the error in forward speed. After 50 steps (o:r 30s), the offsets have reached a stable value and the forward speed is within -t-0.05m/s of the desired value. The initial values for the zero offsets were obtained from a manual three-point calibration. (B88.132.1) 54 FORWARDSPEED

Body pitch oscillations can be minimized by swinging the legs in counter-oscillation. We call this mirroring. The angle between the idle leg and the body is held equal and opposite to the angle between the active leg and the body. The idle leg mirrors the motions of the active leg. Without mirroring, conservation of angular momentum causes the body to pitch nose-down during flight when the active leg is swung forward. With mirroring, the angular momentum of the active leg is nearly equal and opposite to that of the idle leg. The body does not pitch much in response to the motion of the legs.

The effect of mirroring is shown in figure 4-7. The portion of the graph to the left of the dotted line shows the pitch oscillation that occurs when mirroring is not used. Mirroring was used for the data shown to the right of the dotted vertical line. The pitch oscillation is reduced after a few steps. The middle graph shows pitch velocity and the bottom graph shows forward speed for the same time period. The oscillation in forward speed is reduced by mirroring.

4.2.2 Modeling Error

The previous section discussed oscillations in forward speed. This section discusses a ,_econd problem with control of forward speed, modeling error. Figure 4-4 showed that control of forward speed had a constant error when the desired value for the forward speed was constant. Most of the steady-state error resulted from the assumption tlhat forward speed during stance is equal to forward speed during flight and that the neutral point was one-half the distance the body would travel during stance. A more complete model of the fc)rward speed during stance reduces this error.

The equation for the neutral point (Ts&/2) assumes that forward speed during stance is constant and equals forward speed (luring flight. In fact, forward speed at touchdown and liftoff are equal to forward speed during flight but forward speed during stance is not. Forward speed decreases during the first half of stance when the foot is in front of the hip and increases again during the second half after the foot is behind the hip. Figure 4-8 illustrates this phenomenon.

For steady-state running, forward speed during flight is higher than the average for- 55 ward speed during stance. The estimate of forward speed during stance can be :refined by multiplying forward speed during flight by a constant: i'8 = ksk/. Data from running experiments show that k_ is about 0.93.

The second modeling error is caused by the fact that the machine's motion during stance is asymmetric; consequently for steady-state running the foot is not placed in the center of the distance the body will travel during stance. A least squares fit to determine

2O

L} .I,*-"4 10

0 i 15

-10

._ 100

.: - - I

:> .= -I00

-200

4

0 I I I 0 5 10 15 time (s)

Figure 4-7. The left half of each graph shows behavior when mirroring is not used. Mirroring was turned on at the dotted vertical line (after 7.25 s). The body pitch oscillation shown in the top graph is reduced after a few steps. The middle graph shows the pitch velocity and the bottom graph shows the forward speed. Oscillations in forward speed are also reduced by mirroring because reducing the pitch oscillations reduces the hip torque necessary to correct the body pitch angle during stance. (1387.325.3) 56 FORWARD SPEED tile correct position of the foot for steady-state running produces k,_pksTsS_with knp = 0.4 and ks = 0.93.

The improved prediction of the neutral point provides a new version of equation 4.2:

XSh = knpksTs& + k_(&- &d). (4.9)

The least squares fit that determined knp and ks also indicates that k_ should be 0.075.

The foot placement calculation given in equation 4.9 was designed for steady-state running. I would also like to account for running where the forward speed at liftoff is not equal to the forward speed at touchdown. The forward speed (_) changes during the stance phase from one value at touchdown to another value at liftoff (presumably Xd). Assuming that the change is linear in time, the average forward speed during stance is ks(& + :_d)/2. This new estimate for the forward speed during stance leads to a final version of equation 4.2:

Xfh = k,wTs ks(& 2+ Xd) + k_(ic- iCd) (4.10)

The control system uses this equation in the experiments in controlling forward speed and in the experiments in controlling step length through adjustments in forward speed.

_' 2-

0 I I I I I 0.0 0.2 0.4 0.6 O.S 1.0 time (s)

Figure 4-8. The relatively flat parts of the forward speed curve occur during flight when the external forces acting on the machine in the horizontal direction are small. The stance phases are marked by the horizontal lines. During the first part of stance the foot is in front of the hip and the forward speed decreases. After the foot is behind the hip, the body accelerates again. (B87.184.3) 57

4.3 How Well Is Forward Speed Controlled?

To test the control of forward speed, the control system specified a pattern of forward speeds ranging from 0.25 m/s to 2.0 m/s. The biped ran at each desired speed for 16 steps and then the desired speed changed to the next value in the pattern. Figure 4-9 shows the data from the experiment. The average of the absolute value of the error in forward speed is

0.063 m/s. The mean and standard deviation of the error are -0.016 m/s and 0.081 m/s, indicating that forward speed was well controlled in this experiment. Figure 4-10 shows the same data as a scatter plot. The solid line indicates where the points would lie if the control were perfect and the vertical spread of points indicates the error in the control.

The forward speed is generally slightly less than the desired value for high velocities and is slightly greater than the desired value for low velocities.

Errors in the control of forward speed come from three sources: modeling, measurement, and low-level control. In order for forward speed to be accurately controlled, the ,system must have an accurate model of the behavior during stance so that it can compute the foot position that will produce the desired forward speed. The control system must also have an accurate notion of the foot's position so that it can move it to the correct position.

And finally, the low-level control must move the foot so that it is in the right location by touchdown. Each of the three sources of error will now be discussed in more detail.

....l r...... _. °.l... l • "_ -.'.....'..:.. ..%-...... "-"l..%...... [ .'-...-...- .. 0 I I I 0 50 100 150 step number Figure 4-9. Desired and actual running speed. Tile solid line indicates the desired forward speed and the dots represent the forward speed actually generated. The biped ran for sixteen steps at each desired forward speed before the desired speed was changed to the next value in the pattern. The stance duration was 0.14s and the flight duration was 0.47s. The average of the absolute value of tile error in forward speed is 0.063 m/s. (B87.248.4) 58 FORWARD SPEED

The model of the machine's behavior during stance relies on several simplifying assump- tions. Each assumption introduces some error into the control of forward speed. I assume hip torque does not affect the forward speed of the body. The correction term for the error in forward speed is assumed to be constant independent of forward speed. Forward speed during stance is assumed to be a fixed fraction of forward speed during flight. Similarly, the asymmetric motion of the machine during stance is assumed to be independent of forward speed and stance duration. Each of these simplifying assumptions introduces error in the control of forward speed.

The second source of error in the control of forward running speed is measurement error.

Measurement is essential to the computation of both the desired and actual foot positions. The desired foot position depends on the measured forward speed and the measured duration of a previous stance phase. The calculated foot position depends on measurements of the pitch angle of the body, the length of the hip actuator, and the leg length.

The forward speed of the body is computed by differentiating the forward position of

2.5

,_ 2.0

1.5 "

0.0 ! ! ! 0.0 0.5 1.0 1.5 2.0 2.5 desired forward speed (m/s)

Figure 4-10. The vertical columns of dots show the range of forward velocities observed for a given desired forward speed. Each dot represents the forward speed produced for a given desired forward speed during a single step. (B87.248.4) 59 the body. This differentiation amplifies the noise in the position measurements and delays the velocity information. The control system requires accurate measurements of h)rward speed during flight, when forward speed is nearly constant and delay is not a problem. The measurement of stance duration is a more serious source of error in the control of forward speed. Stance duration is the length of time between the closing of the foot switch at touchdown and the opening of the switch at liftoff. The foot switches are checked every 0.006 s. If the machine runs at i m/s, an error of 0.006 s in stance duration corresponds to an error of 0.044 m/s in forward speed. The resolution of the stance duration measurement is barely adequate for good control of forward speed.

The servo mechanism that positions the foot relies on measurements of the foot position. Several sensors are important here: the pitch angle of the body, the angle between the body and the legs (computed from the length of the hip actuators), and the length of the legs. If pitch is incorrect, forward speed will be off by a constant factor. If the length of a hip actuator is incorrect, forward speed will oscillate from step to step. Although standard three-point linear cMibration of these sensors was not adequate for good control of forward speed, the tuning process does a good job. The measurement of these variables no longer appears to be a significant source of error in the control of forward speed.

The third source of error in forward running speed is the low-level control or implemen- tation of the control of forward speed. The control system must get the foot to the right location before touchdown or the forward speed will not be correctly adjusted. Position- ing the leg correctly is not difficult because the servo has enough time to position the leg accurately.

In summary, error in forward speed comes from three sources: modeling, sensing, and control. Inaccuracies in the models are the largest source of error. It should be possible to improve the performance by allowing the relationship between forward speed during flight and forward speed during stance to vary with forward speed and stance duration.

The measurement of stance duration also contributes to errors in forward speed. Adding electronic hardware to the machine to compute the stance duration with a higher resohtion would probably improve the control of forward speed. 60 FORWARD SPEED

4.4 Using Forward Speed to Control Step Length

Adjustments in forward speed work well as a method for controlling step length. This method can achieve a wide range of step lengths with good accuracy. In this experiment, the biped followed a pattern of step lengths ranging from 0.1 m to 1.0m. The average absolute error in step length was 0.07 m.

In order to follow a pattern of step lengths, the control system requires an equation for forward speed that will produce a step of the desired length. The distance traveled during a step is given by:

Lstep = T.fJc.f + Ts5:s. (4.11) where Lstep is the length of the step, Tf is the duration of the flight phase, Ts is the duration of the stance phase, and _f and _ are the forward speeds during flight and stance.

Equation 4.11 holds for steady-state running. When forward speed or stance duration vary, however, the distance traveled during a step is the sum of three parts: the distance traveled during the second half of one stance phase (approximately 1/2T_), the distance traveled during flight (TfS:/), and the distance the foot extends on the next touchdown,

7T_xs T/ _c.f X]h

1. Lstep !

Figure 4-11. The length of the step is the sum of three parts: the distance traveled during the second half of the one stance phase (1/2T_/:,), the distance traveled during flight (T/x/), and the distance the foot is extended for touchdown (X/h). 61

(X/h). Figure 4-11 shows this division of the step length into three parts: 1 L_,_p = _Ts_8 + T.:_,:+ X:h. (4.12)

For steady-state running, Xfh _ 1/2T8_ and equation 4.12 simplifies to equation 4.11. For running where the forward speed is allowed to vary, Xfh will depend on the forward speed of the next step.

The control system for step length is designed to specify a desired forward speed during the flight phase. To do so it must determine the forward speed for the next flight phase that will produce the correct step length. The previous section used the following equation to determine forwaxd speed during stance:

2s = ks 2 +2 _------_]' (4.13) where 2 is the present forward speed and 2i is the expected forward speed during the next flight phase. Equation 4.13 is substituted into equation 4.12, and the equation is solved to determine the the forward speed during flight in terms of the desired step length: 1

_] -- Lstep- ._ksTsx-1 Xfh. (4.14)

This equation provides the framework for the control of step length. If the controller for forward speed produces the required forward speed, and the flight duration, stance duration, and forward extension of the foot for the next touchdown are predicted accurately, then the biped will take a step of the correct length.

Unfortunately, the forward extension of the foot on the next touchdown is difficult to predict. The forward extension of the foot on the touchdown for one step (step i) depends on the desired forward speed for the next step (step i + 1) which is not known yet. In general, it is necessary to know the complete sequence of footholds in advance in order to calculate the Xlh of the first step. Even if the entire sequence of step lengths is known in advance, any error in forward speed would require unanticipated changes in the forward extension of the foot at the first touchdown of step i and would cause an error in the length of step i - 1. In practice, the control system can make a reasonable guess as to what the forward extension of the foot is likely to be by using the present forward speed and stance duration as estimates of the upcoming forward speed and stance duration. 62 FORWARD SPEED

To evaluate this method of controlling step length, the biped followed a pattern of step lengths ranging from 0.1 m to 1.0m. After the machine took eight steps of a particular length, the desired step length was switched to the next value in the pattern. The control system used equation 4.14 to choose the forward speed that would produce the correct step length and equation 4.10 to choose the foot placement that would produce that forward speed. Flight and stance duration remained approximately constant.

Figure 4-12 shows data recorded during this experiment in controlling step length. The average of the absolute error in step length was 0.07 m. The mean and standard deviation of the error were 0.05 m and 0.07 m. The data show that there were step-to-step oscillations in step length. These are manifestations of oscillation in forward speed. Efforts to eliminate step-to-step oscillations in forward speed were not completely successful.

Figure 4-13 shows the same data reproduced as a scatter plot. The vertical spread of the points indicates the size of the error, which is larger for longer step lengths. The scatter plot of desired forward speed versus forward speed did not show this trend. An error in flight duration or stance duration that is constant irrespective of speed appears as a larger error in step length for longer steps. Longer steps require a higher forward speed; therefore a constant error in the stepping frequency is multiplied by a larger number and results in a larger error.

Error in step length can be attributed to error in the control of flight duration, stance

E 1.5

e_0 N 1.o

0.5

_,oS" 0.0 I I I I 0 50 100 150 200 250 step number

Figure 4-12. Desired forward speed is manipulated to adjust step length. The desired step length is changed every eight steps. The solid line indicates the desired step length and the dots represent the step length that was actually generated. (B88.102.0) 63

o

1.5

1.0 • . ',. !

• | 0.5

| • •

o.of| i i i o.o 0.5 1.o 1.5 desired step length (m)

Figure 4-13. The vertical columns of dots show the range of step length achieved for a given desired step length. Longer step lengths are not as accurately controlled as shorter step lengths. (B88.102.0)

Error Scaled Error Variable average absolute error average absolute error forward speed 0.112 m/s 0.062 m flight duration 0.020 s 0.022 m stance duration 0.009 s 0.010 m

Table 4-1. The average of the absolute value of the error in forward speed, flight duration, and stance duration.

Error Scaled Error Variable mean standard deviation mean standard deviation

forward speed -0.091 m/s 0.111 m/s -0.050 m 0.061 m flight duration 0.017 s 0.017 s 0.019 m 0.019 m stance duration -0.003 s 0.006 s -0.003 m 0.007 m

Table 4-2. The mean and standard deviation of the error in forward speed, flight duration, and stance duration. 64 FORWARD SPEED duration, or forward speed. The control system adjusts forward speed and maintains nom- inal values for the flight and stance durations to produce a desired step length. When any of the three parameters deviate from its desired value, the actual step length will deviate as well.

Table 4-1 shows the average of the absolute value of the error in forward speed, flight duration, and stance duration. Table 4-2 shows the mean and standard deviation for the error in each of the three variables. The rightmost column of each table shows the error measures scaled by the nominal values for the other variables. The error measures for the error in forward speed are multiplied by the nominal values for the cycle time (0.55s); the error measures for the error in flight and stance duration are scaled by the nominal value for forward speed (1.1m/s). These scaled values all have units of length, and can be compared. Errors in control of forward speed are responsible for most of the error in step length. The standard deviation of the scaled error in forward speed is three times the standard deviation of the scaled error in flight duration and nine times that of stance duration. These calculations imply that roughly 70% of the error in step length is due to error in forward speed. Chapter 5 Flight Duration

The previous chapter discussed one method for controlling step length: adjustments in forward speed. This chapter explores a second method: control of step length through adjustments in flight duration. If a legged system needs to take a long step, it can jump high into the air and, assuming a fixed forward speed, travel farther during the flight phase.

The long period of flight increases the length of the step and enables the legged system

to reach a foothold farther along the path of travel. Similarly, a legged system can take a shorter step by making a shallow jump and reducing the distance traveled during flight.

The length of the flight phase can be used in this way to adjust the step length. Figure 5-1 illustrates that the distance traveled during flight is adjusted when flight duration is varied and the distance traveled during stance remains unchanged.

Figure 5-1. A longer flight duration increases the distance traveled during flight; a shorter flight duration decreases the distance traveled during flight. The distance traveled during stance remains unchanged. The bracket marks the portion of the step that is adjusted when flight duration is varied.

65 66 FLIGHT DURATION

The length of a step is the distance traveled by the body during flight plus the distance traveled during stance:

Lstep = (T/ + Ts)&, (5.1) where L_tep is the length of the step, T] is the duration of flight, T_ is the duration of stance, and 5_is the average forward speed during the step. If the flight duration, T], is increased, the distance between two touchdowns, Lst_p, increases. Similarly, decreasing T.f decreases L_tep if T_ and _ remain unchanged. This equation motivates the second method for controlling step length: adjustments in flight duration.

Flight duration is determined by the energy stored in the leg spring and by ,energy added to the system while the foot is in contact with the ground. The first section of this chapter explores the relationship between the events in the stance period and the length of the following flight phase. Flight duration can be controlled through manipulation of the energy in the system during stance. The second section derives the equations necessary for the control of flight duration. The third section evaluates the control of flight duration. The planar biped follows a pattern of flight durations ranging from 0.2 s to 0.5 s with an average absolute error of 0.033 s. The final section demonstrates that flight duration can be used to adjust step length. When the biped follows a pattern of step lengths ranging from 0.1 m to 1.0 m, the average error in step length is 0.07 m. This method provides approximately the same accuracy as the previous method for controlling step length, adjustments in forward speed but does not provide as wide a range of possible step lengths.

5.1 What Determines Flight Duration?

Flight duration is determined by vertical velocity at liftoff and the altitude of the body at liftoff and touchdown. Because of the ballistic nature of the flight phase, the control system cannot significantly alter the length of the flight phase after liftoff has occurred. The control system must take action during the preceding stance phase to adjust the state of the machine so that the correct flight duration is produced. Therefore, a prediction of the duration of the next flight phase is needed, given the state of the machine during stance. 67

Flight duration can be predicted from the energy stored in the leg springs and from the vertical motion of the body during stance. When a legged system lands on the ground, the spring in the stance leg begins to store the energy that was previously contained in the vertical motion and altitude of the body. As stance continues, the spring extends returning the stored energy to vertical and horizontal motion of the body. Eventually, the foot is pulled off the ground by the upward motion of the body, and the system again becomes airborne. While the legged system is on the ground, the actuator in the leg pushes against the ground to add energy to the system. The leg actuator can add energy either just to make up for losses in the system and maintain a constant hopping height or to produce a higher or lower vertical velocity at liftoff and a longer or shorter flight phase.

During each running step, the energy in a legged system goes through a cyclic variation as it is transformed among its various forms: potential, kinetic, and elastic. Potential energy is a function of the position of the system above the ground. Kinetic energy is a function of the velocities of the parts of the system. Elastic energy is the energy stored in springs in the legs.

When the planar biped bounces against the ground, its behavior is much like that of a spring/mass oscillator. The spring/mass model lands on the ground; the spring compresses, stores energy, and then extends, thereby returning energy to the vertical motion of the mass.

Figure 5-2 shows the energy in a spring/mass model as it bounces vertically. At the highest point of flight, t = 0, all of the system energy is potential energy stored in the height of

150 -

100- --" --_ I- "_" _. _ . _ i- total .... potential 50 ...... kinetic elastic ...... / "_ ...... 0 ...... ,- //'"" " """"_" -_ ...... i ...... ,. t ).0 0.2 0.4 0.6 time (s)

Figure 5-2. The energy in a spring/mass model bouncing vertically. At the highest point ot"flight, the left edge of the graph, all of the system energy is potential energy stored in the height of the body. (S.88.279.0) 68 FLIGHT DURATION the body. At this point the correspondence between system energy and duration of flight is clear--both are determined by the altitude of the body at the highest point of flight. At the beginning and end of stance, system energy is a function of vertical velocity and height of the body. During stance some of the system energy is stored in the compression of the spring. I assume that all the energy in the spring will be returned to vertical motion of the body; therefore system energy during stance also provides a prediction of the length of the subsequent flight phase.

5.2 Controlling Flight Duration

The control system modulates the energy in the system during stance to control the duration of the next flight phase. If the energy is too low or too high, the control system extends or retracts the leg actuator to do work on the system and adjust the energy. If the energy is correct at liftoff, then the subsequent flight phase will last for the desired length of time.

To control flight duration by adjusting the energy during stance, the control system needs three equations. What is the energy required to produce a desired flight duration? What is the actual energy in the system? And finally, given the desired and actual energies, what action should the control system take to make them equal by liftoff?

5.2.1 Desired System Energy

Energy at the highest point of flight is easily related to flight duration. The body and legs are not moving vertically and the leg springs are at their rest position. The energy in the horizontal and rotational motion of the body can be ignored because these quantities are approximately constant throughout the step. The system energy at the highest point of flight is mgz, where m is the mass of the system, g is the acceleration of gravity, and z is the height of the body. From this it is possible to calculate the duration of the flight phase for any given landing altitude, Ztd. Because the maximum height of the body is a function of the flight duration, we can derive an equation for the system energy that will produce a 69 particular flight duration.

Throughout flight the altitude of the body is

z = Zto + _tot- lzgt2, (5.2) where zto is the height of the body at liftoff, z,to is the vertical velocity of the body at liftoff, and t is the time since liftoff. The maximum height of the body occurs at t = z,to/g. If the altitude of the body is the same at touchdown and liftoff, then the length of time the system will spend in flight is

2_1o Tf = --. (5.3) g

Equations 5.3 and 5.2 are combined to find the maximum height of the body as a function of the flight duration:

Zma_ = Zto + ---g-.gT] (5.4)

Equation 5.4 allows the calculation of system energy in terms of flight duration and altitude of the body at liftoff:

Equation 5.5 tells the control system the required system energy to produce a flight phase of the correct duration.

5.2.2 Actual System Energy

'lb control flight duration, the control system must calculate the energy in the system during stance. The system energy is the sum of the gravitational potential, kinetic, and elastic energies: E = + Eko+ E.. (5.6)

Gravitational potential energy is determined by the altitude of the various masses in the system:

Epe = g(mbZb nt- mhlZhl 4- mtlZlt), (5.7) 70 FLIGHT DURATION where mb is the mass of the body, mhz is the mass of the upper leg, and mll is the mass of the lower leg. Similarly, Zb is the vertical position of the center of mass of the body, Zhl is the vertical position of the center of mass of the upper leg, and zll is the vertical position of the center of mass of the lower leg.

Kinetic energy is determined by the vertical velocities of the body and legs. The energy due to the horizontal and rotational motion of the body is ignored under the assumption that it is constant during steady-state running. The remaining kinetic energy is a function of the vertical velocities of the body parts:

The energy stored in the air spring is computed from the pressure in the compressed spring. Figure 5-3 shows a drawing of the air spring. Assuming adiabatic compression of the air (no losses due to heat transfer):

povg = pv', (5.9) where p is the pressure of the air in the spring, p0 is the resting pressure of the air, v is the volume of the air, v0 is the resting volume of the air, and 7 is the ratio of specific heats for air used to describe adiabatic compression and expansion (7 = 1.4). The volume of the air spring is the length (rs) multiplied by the area of the piston:

v = rsAs, (5.10)

actuatorrod air piston air springchamber

f f

L.,= L, /'sO As

Figure 5-3. Drawing of the air spring in the leg illustrating the variables needed to calculate the energy in the air spring. The length of the air spring is r,. The resting length is fully long and is represented by rs0. The pressure in the air spring is p. The force generated by the air spring is f. As is the area of the air spring. 71 where As is the area of the air spring. Substituting into equation 5.9 yields

rs -- PO1/"/_ rsOg _- 1/"/ • (5.11)

Differentiating equation 5.11 yields

1 _/'r _-1/_-1 drs=--po rsop dp (5.12) 7 where rs is the length of the air spring, and rs0 is the resting length of the air spring. The force generated by the air spring, f, is the area of the piston multiplied by the pressure drop across the piston. The energy in the air spring is computed:

E_ = - f drs sO = - A_ (p - p_) drs 80 =

: \P/ _ ' • where P_tm is the atmospheric pressure.

Equations 5.7, 5.8, and 5.13 are combined to compute the total energy of the system. Energy data recorded during biped running are shown in figure 5-4. Three stance phases are shown in the data. Potential energy moves up and down as a function of the altil;ude of the body. It reaches its highest value at the midpoint of flight when it is the only non-zero component of the energy calculation. Kinetic energy increases from the midpoint of flight until touchdown, decreases until the lowest point of stance, and increases again until liftoff. The elastic energy is zero except during stance when it reflects the compression of the leg spring.

Total energy is constant during flight. At touchdown a small increase in total energy occurs. Because the energy calculation considers only the vertical component of the kinetic energy, any transfer from rotational or horizontal energy will cause the total energy to fluctuate. During stance, total energy decreases because of losses due to friction in the leg and inefficiencies in the leg spring. Energy is added to the system during the second half of stance and total energy increases. At liftoff total energy decreases slightly as the unsprung mass of the foot is accelerated to match the velocity of the body. 72 FLIGHT DURATION

0.15 __ leg 1 em leg 2

. ' 0.05 , .' , ,• "g_ 0.10 ...... ," 7 .' " 0.0o I I I I 0.0 0.5 1.0 1.5 2.0

I.O-

N

0.8

0.6

0.4 I I I I 0.0 0.5 1.0 1.5 2.0 time (s)

Figure 5-4. The top graph shows total, potential, kinetic, and elastic energies for several steps of running. Total energy is constant during flight and decreases during the first half of stance as energy is lost due to friction and losses in the springs. During the second half of stance total energy increases again as the leg actuator extends. Potential energy increases during flight until the machine :reaches its maximum altitude and then decreases until mid-stance. Kinetic energy is zero at the top of flight, increases until touchdown, and then decreases again until the leg reaches its maximum compression. The elastic potential energy is zero during flight and then increases as the spring compresses. The elastic energy curve is not symmetric about the middle of stance because most of the thrust occurs during the second half of the stance phase. The middle graph shows the deflection of the air springs in the legs, and the bottom graph shows the altitude of the body. (B87.49.3) 73

5.2.3 Controlling the Energy

The previous two sections computed the energy that would produce the desired flight du- ration and the actual energy in the system. The last step is an algorithm for making the actual energy equal the desired energy by liftoff. The control system adds energy through- out stance by lengthening the hydraulic actuator in the leg. The control system adds energy in a triangle-shaped wave, with the largest fraction of the energy added in the mMdle of stance. This function approximates the shape of the magnitude of force in the leg during stance. During the time interval ti to ti+l the energy added is

/_h,(t,+_) (5.14) AE = Jrh_(t,) Fr.hl, where Fr is the force in the leg and .hi is the velocity of the hydraulic actuator in the leg. Adding the energy in a function that is approximately the same shape as the force curve means that .ht is almost constant and the control problem is simplified.

The velocity of the hydraulic actuator is controlled by a signal to the leg valve. The signal is modified only at discrete time intervals or ticks (0.006 s). The desired velocity of the hydraulic actuator is

AE .hl = F_At' (5.15) where At is the length of a tick. The hydraulic valves on the legs of the planar biped are flow-control valves and produce a flow of oil proportional to the electrical signal. The flow of oil corresponds to the velocity of the actuator:

q = .hlAh, (5.16) where q is the desired flow through the valve and Ah is the area of the hydraulic actuator. The signal that produces the desired velocity of the actuator is

7" -- kq.hl, (5.17) for some constant kq. This equation assumes a constant supply pressure; in actuality, pressure fluctuates with flow. A model of the valve's behavior when there is pressure across 74 FLIGHT DURATION the actuator is Fr Pa -- "_h (5.18) (5.19) q - kvJs-E ' (5.20) where p_ is the pressure across the actuator, Ap_ is the available pressure (if Ap_ ,( 0 no positive motion is possible), Ps is the supply pressure, pr is the return pressure, and kv is 0.359 m_pSfrom the valve specification. Substituting equation 5.16 into equation 5.20 yields

i'hlAh r = k.x/-A_" (5.21)

Equations 5.14, 5.15, and 5.21 provide the control system with an algorithm for ad- justing the energy in the system by extending the hydraulic actuator. All the equations necessary for controlling flight duration have now been formulated: equation 5.5 specifies the energy that will produce the desired flight duration, equations 5.7, 5.8, and 5.13 com- pute the energy in the system, and equations 5.14, 5.15, and 5.21 provide an algorithm for adjusting the actual energy in the system so that it matches the desired energy by liftoff.

5.3 How Well Is Flight Duration Controlled?

To test the control of flight duration, the biped followed a pattern of flight durations ranging from 0.2s to 0.5s. Figure 5-5 shows the data, from the experiment. A range of flight durations from 0.15 s to 0.5 s is possible with this control scheme and mechanical hardware. The average absolute error in flight duration was 0.033 s. The mean and standard deviation of the error in flight duration were 0.003 s and 0.050 s, indicating that the control of flight duration was moderately accurate.

Figure 5-6 shows a scatter plot of the actual flight duration against the desired flight duration. The solid line shows where the points would lie if control were perfect. At the high end the points fall below the line, and the flight duration was too short. The points begin to form a horizontal line at the high end, indicating that no further increase in flight duration is possible with this control scheme and mechanical hardware. 75

Errors in the control of flight duration are caused by errors in modeling, sensing, and low-level control. The adjustment of flight duration relies on an implicit model of the correspondence between the energy in the system and flight duration. Many sensors are required to compute the energy in the system, and what appears on the basis of the sensors

_ 0.6- c- O ",_ _ 0.4

°,-,i = 0.2 .° ..

0.0 ! ! j 0 50 100 150 step number

Figure 5-5. The solid line indicates the desired flight duration, and the dots represent the actual flight duration that was achieved. The forward speed of the machine was 1.2m/s and the stance duration was 0.15s. (B88.336.12)

0.0 I ! 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 desired flight duration (s)

Figure 5-6. The vertical columns of dots show the range of flight durations achieved for a given desired flight duration. Each dot represents the flight duration that was produced for a given desired flight duration during a single step. (B88.336.12) 76 FLIGHT DURATION to be the correct system energy may not produce the desired flight duration. A low-level servo must make the system energy equal the desired energy by liftoff. If the control system fails at this task, the flight duration will not be correct. These three sources of error are now discussed in more detail.

A model is used to specify the system energy that will produce the desired flight du- ration. This model works well. The energy in the system at the highest point of flight corresponds closely to the subsequent flight duration. Models are also used to compute the energy in the system based on the sensor readings. Because the energy is constantly shifting among its component parts the accuracy of these models is difficult to determine.

Sensing is not a significant source of error in the control of flight duration. The ,energy calculation depends on the position and velocity of each body part and on the pressure and length of the air spring. The position measurements are not a significant source of noise. Velocity measurements are obtained by differencing position measurements. The differentiation introduces a delay of 0.006 s in the velocity information. As a result, the control system's notion of the energy in the system is delayed by 0.006 s. This delay is small, but because the servo time is brief (0.15s), the delay has some effect. The final sensor needed for the energy calculation is the pressure in the air spring. There is no evidence that this sensor is a significant source of error.

The largest source of error in the control of flight duration is the low-level servo that attempts to make system energy equal desired energy. The total energy is continually changing during stance, decreasing because of losses and increasing because of the addition of energy through the extension of the hydraulic actuator. The control system has no model of the losses in the system so it only reacts after the losses become evident in the system energy. The control system must move the leg actuator while the leg is loaded and the spring is compressed. And finally, the time for controlling the energy is short. All of these factors contribute to errors in the energy at liftoff and corresponding errors in the flight duration. 77

5.4 Using Flight Duration to Control Step Length

Adjustments in flight duration work well as a method for controlling step length. This method can achieve a fairly wide range of step lengths with good accuracy. In this experi- ment, the biped attempted to follow a pattern of step lengths ranging from 0.1 m to 1.0 m. The average absolute error for the step lengths that were within range was 0.07m.

To follow a pattern of step lengths, the control system requires an equation fbr the flight duration that will produce a step of the desired length. Step length is a function of flight duration, stance duration, and forward speed during flight and stance:

Lst_p = TIff + TsJcs, (5.22) where Lstep is the step length, _ is the expected forward speed during the next stance phase, _f is the expected forward speed during the next flight phase, and T8 is the expected stance duration for the next step. Step length is the sum of the distance traveled ,during the second half of one stance phase, the flight phase, and the first half of a second stance phase. For constant forward speed and stance duration, the distance traveled during each stance phase is the same and adjustments in the flight duration can be used to control the step length.

Equation 5.22 is used to compute the flight duration that will produce a step of the correct length:

Tf = Lstep - TsScs (5.23)

This equation provides the framework for the control of step length. If the forward velocities and the stance duration are accurately predicted and the flight duration is well controlled, then the biped will take a step of the correct length.

To test the control of step length, the biped followed a pattern of step lengths. The control system used equation 5.23 to compute the required flight duration from the desired step length. The flight duration controller attempted to achieve that flight duration. The forward speed and stance duration controllers held the forward speed and stance duration at their nominal values. 78 FLIGHT DURATION

Figure 5-7 shows data recorded as the biped followed a pattern of step lengths, using adjustments in flight duration to control the step length. The step lengths used in the experiment ranged from 0.1m to 1.1m, the nominal forward speed was 1.1m/s, and the nominal stance duration was 0.15 s.

Using adjustments in flight duration, the biped is able to run with step lengths between

0.3 m and 0.7 m. Within this range, the average error in step length is 0.07 m. The mean and standard deviation of the error in step length are -0.04m and 0.09 m.

Error Scaled Error Variable average absolute error average absolute error forward speed 0.11 m/s 0.06 m flight duration 0.05 s 0.06 m stance duration 0.02 s 0.02 m

Table 5-1. The average of the absolute value of the error in forward speed, flight duration, and stance duration.

Error Scaled Error Variable mean standard deviation mean standard deviation

forward speed -0.010 m/s 0.14 m/s -0.006 m 0.080 m flight duration 0.016 s 0.078 s 0.018 m 0.086 m stance duration -0.001 s 0.024 s -0.001 m 0.026 m

Table 5-2. The mean and standard deviation of the error in forward speed, flight duration, and stance duration.

1.5

_o __ 1.0

0.5

0.0 I I I I I 0 50 100 150 200 250 step number

Figure 5--7. The solid line indicates the desired step length, and the dots represent the step length that was actually generated. (B88.106.10) 79

Figure 5-8 shows a scatter plot of desired step length versus actual step length for the same experiment. For short steps, the vertical spread of the points is approximately centered on the line, but for longer steps the points fall mostly beneath the line. On the right side of the graph, a longer desired step length does not produce a longer step because the method has reached its maximum step length, given the nominal values for forward speed and stance duration.

Errors in step length are caused by poor control of flight duration, forward speed, or stance duration. Table 5-1 shows the average absolute error for each variable. Table 5-2 shows the mean and the standard deviation of the errors. The right half of each table shows the error measurements scaled by the nominal values for the other variables. This action converts the error measurements for each variable into the same units and allows for comparison. Control of flight duration and forward speed contribute about equally to the error in step length. Errors in the control of stance duration do not contribute significantly to the error in step length.

E 1.5

em

1.0

. i:' !

0.5 | •

0.0 I I I 0.0 0.5 1.0 1.5 desired step length (m)

Figure 5-8. The vertical columns of dots show the range of step length achieved for a given desired step length. The solid line indicates where the points would lie if control were perfect. (B88.106.10)

Chapter 6 Stance Duration

The previous two chapters discussed controlling step length through adjustments in forward speed and flight duration. This chapter describes the third method for controlling step length, using adjustments in the duration of stance phase. With flight duration and forward speed held constant, a longer stance duration increases the distance traveled during stance and results in a longer step. Similarly, a shorter stance duration produces a shorter step if flight duration and forward speed remain constant. Figure 6-1 illustrates the portion of the step that is adjusted when stance duration is varied.

The length of a step is the distance traveled by the body during flight plus the distance traveled during stance: = +

Figure 6-1. A longer stance duration increases the distance traveled during stance and a shorter stance duration decreases the distance traveled during stance. The bracket indicates the portion of the step that varies when stance duration is adjusted.

81 82 STANCE DURATION where Lst_p is the length of the step, T I is the flight duration, Ts is the stance duration, and is the average forward speed during the step. If the stance duration, Ts, is increased and the forward speed, &, remains unchanged, the distance the body travels during stance and the length of the step increases. Similarly, decreasing T8 decreases Lstep if T.f and &remain unchanged. These observations motivate the third method for controlling step length.

The first section of this chapter discusses parameters of the running cycle that influence stance duration. Stance duration is primarily determined by the stiffness of the leg. The second section discusses the control of stance duration for the planar biped. Each leg of the biped contains an air spring. The resting pressure of that spring determines the stiffness of the legs and, because the stance phase is a resonant bounce, the duration of the stance phase. The third section demonstrates that stance duration is well controlled by this algorithm. When the biped follows a pattern of stance durations that vary between 0.11 s and 0.20 s, the average absolute error in stance duration is 0.005 s. This error value indicates that the control of stance duration is accurate, within 5% of the desired value.

The final section of this chapter demonstrates that step length can be controlled through adjustments in stance duration. The range of step lengths achieved with this method is much smaller than the range achieved by adjusting either forward speed or flight duration. The range of step lengths is small because the possible adjustment in stance duration is small. Stance duration can be varied over a smaller range than the other component of the stepping fl'equency, flight duration. As a result, the range of step lengths is much narrower--only 0.2m for stance duration but 0.5 m for flight duration. Within the very small range of step lengths, the step length was well controlled. When the biped followed a pattern of step lengths ranging from 0.4 m to 0.6 m, the average absolute error in step length was 0.03 m.

6.1 What Determines Stance Duration?

The behavior of a running legged system, whether animal or robot, can be modeled by a spring-mass oscillator (McMahon 1985). During the flight phase, the legged system falls 83 through the air under the acceleration of gravity. When the foot touches the ground, a spring in the leg compresses to absorb the energy of the body's motion. Then the legs extend to transfer the stored energy back into motion of the body and legs. A simplified version of this activity is represented by the spring-mass model shown in figure 6-2. The accompanying graphs describe the forces on the ground during stance and the exchange between kinetic and potential energies for the spring-mass model and the planar biped running machine. Although the curves for the two systems differ in some features, the simple model describes much of the behavior of the more complicated robot.

Simple models such as the spring-mass model axe useful because they provide insight into the behavior of more complicated systems like the planar biped that cannot be analyzed in their entirety. I would like to know which state variables affect the rebound time of the robot. I do not have an equation for the stance duration of the biped, but McMahon (1988) derives the following equation for the stance duration of a spring-mass model bouncing vertically given the vertical velocity at touchdown (_td) and the natural frequency of the system (_o):

a)0 g This equation shows that the vertical velocity at touchdown and the natural frequency of the spring-mass oscillator determine how long the model spends in contact with the ground. If the spring has stiffness k and the model has mass m, then the natural frequency is _k"/m. The mass of the system is constant so the stiffness of the spring and the vertical velocity determine the duration of stance for the spring-mass model.

The planar biped differs in many ways from the simple spring-mass model. The spring- mass model is predicated on a massless, lossless, linear spring with no preload, and all motion is assumed to be vertical. The lower leg and foot of the planar biped are not massless; they must be decelerated when the foot touches down and accelerated agMn at liftoff. The air spring does not return as much energy as it stores, and the hydraulic actuator extends during stance to make up for losses. The air spring in the leg of the biped is a hardening spring, not a linear spring. Because it has a nonzero resting pressure, the air spring, unlike the model, has a preload. And finally, the planar biped's motion during stance is not strictly vertical when it runs with non-zero forward speed. 84 STANCE DURATION

bodymass

bodymass jhydraulic valve

actuator

,_._linear spring

air spring _ mass /////////

1500 _'_ 1500 -

_ looo lOoo-

0 I I I 0 I I I 0.0 0.2 0.4 0.6 0.8 0.0 0.2 0.4 0.6 0.8 time (s) time (s)

E 150 E 150 -

100 _ j,, ,/ total _ 100 "x / _ total © __ . __ potential o " J __ . w potential 50 ...... kinetic 50- ...... kinetic: __ __. elastic ___ . elastic ...-./ \.-...." ..,_....:': 0 -'"" ,l'.." \ "i'.._ a a 0 ,"'" i/'. .'X i'", i I 0.0 0.2 0.4 0.6 0.8 0.0 0.2 0.4 0.6 0.8 time (s) time (s)

Figure 6-2. A spring-mass oscillator can be used to model the running behavior of a legged animal or robot. The graphs on the left show data generated by a simulation of a spring-mass model. The graphs on the right show data recorded during a laboratory experiment with the planar biped. The mass, stance duration, and flight duration of the simulation were all chosen to match the parameters for this step of the physical machine. The top graphs show the forces on the ground during stance. The bottom graphs show the transfer between potential, kinetic, and elastic energies for the two systems. The spring-mass model uses a linear spring but the biped leg has an air spring, which is a hardening spring. As a result, the force in the middle of stance reaches a higher peak for the biped. Since the air spring in the biped leg has a non-zero resting pressure, it has a preload. Therefore, the force on the machine's leg has a constant offset when compared to the force on the spring-mass model. The spring-mass model is lossless so the total energy is constant throughout the step. The data from the planar biped show that total energy decreases during the first half of stance and increases again during the second half. The planar biped loses energy in the impact with the ground and in the compression and extension of the air spring during stance. Energy is added by extending the hydraulic actuator during the second half of stance so that the total energy in the system before and after the bounce is unchanged. ($88.279.4 and B87.49.3) 85

Although the air spring in the lower leg of the biped is not linear, an equivalent linear stiffness can be calculated. McMahon (1988) shows how to calculate the equivalent linear stiffness from the duration of the flight and stance phases and the mass of the system.

Duration of flight is used to calculate touchdown velocity: Z'td = gTf/2. Equation 6.2 is then solved numerically to determine the natural frequency w0. The equivalent linear stiffness is mw02. Figure 6-3 shows the effective linear stiffness of the air spring in the biped for a range of stance durations. When the biped runs with an alternating gait (one foot on the ground at a time), it runs with stiffnesses between 5.0kN/m and 13.0kN/m.

McMahon (1988) uses data from Cavagna, Heglund, and Taylor (1977) to compute the effective linear stiffness for the stance legs of a dog weighing 17.5-kg. The stiffness of the dog is near 8.8 kN/m for a slow trot and 18.0 kN/m for a fast trot. The biped weighs slightly less than the dog (15.8kg) and generally runs with a softer spring. The natural frequency

_" 0.25 . o

,z ". 0.20 .

e O'l o

0.15 -

o o to

0.10

0.05 -

0.00 I t J 0 5000 10000 15000 effective spring stiffness (nt/m)

Figure 6-3. Effective linear stiffness of the air spring. A stiffer spring produces a shorter stance duration. Each point on the graph represents a separate step on leg 1. The machine was hopping in place, and the resting pressure in the air spring was varied from step to step. The natural frequency, _0, was computed from the measured stance duration and touchdown velocity by numerically solving equation 6.2. The effective spring stiffness was then computed as k = mw2o, using the biped's mass of 15.8 kg. (B88.164.5) 86 STANCE DURATION of the biped ranges from 18 s-1 to 29 s -1 ; the natural frequency of a trotting dog is between 22s -1 and 32s -1.

The air spring in the lower leg of the biped is not lossless. Figure 6-4 shows a hysteresis curve for the air spring. The upper limb of the curve reflects the first half of stance, when energy is stored in the spring. The lower limb of the curve shows the second half of stance, when energy is returned to motion of the body and leg, and additional energy is provided to the system by extending the actuator in the leg. The bold line shows the force-length relationship of a lossless spring with an equivalent linear stiffness and no preload.

_" 1000-

800-

600-

400

200

0 I I I 0.00 0.02 0.04 0.06 0.08 O.10 spring length (m)

Figure 6-4. Hysteresis curve for the air spring. The higher limb of the curve reflects the first half of stance when energy is being stored in the spring. The lower limb of the curve shows the second half of stance when the energy is returned to the motion of the body and upper leg and energy is added to the system by extending the actuator in the leg. The force is computed from the pressure in the air spring and the area of the piston. The area of the piston is 0.0006424 m 2 and the resting pressure was 45.5 psi for this bounce. The bold line shows the force-length relationship of a lossless spring with an equivalent linear stiffness (ll.8kN/m) and no preload. (B88.271.1) 87

6.2 Controlling Stance Duration

The previous section discussed the relationships among the period of rebound for a spring- mass oscillator, the stiffness of the leg, and the vertical velocity at touchdown. Like the spring-mass oscillator, the stance duration of the planar biped is a function of the stiffness of the leg and the forward and vertical velocities at touchdown. In theory, any of these three variables could be used to control stance duration although the effect of the vertical and horizontal velocity on stance duration is much smaller than that of leg stiffness. I have chosen to use the stiffness of the spring to control stance duration.

The stiffness of the spring is determined by the volume of the air spring, the size of

the piston, and the resting pressure of the air in the chamber. Tile volume of the air spring and the size of the piston are mechanical properties of the planar biped. The control system adjusts the resting pressure to manipulate the stiffness of the spring and the stance duration. Figure 6-5 plots stance duration for a range of resting pressures. The biped runs with resting pressures between 100 psi and 10 psi, and the corresponding stance durations are between 0.1 s and 0.2 s. The data are approximated by the least squares fit shown in

figure 6-5. Two different fits are used, one for each leg, to account for mechanical differences between the legs. These functions are used to predict the resting pressure of the air spring that produce the desired stance duration.

The control system must have a mechanism for controlling the resting pressure in the air spring so that it has the correct value at each touchdown. A diagram of the pneumatic circuit used to control resting pressure is shown in figure 6-6. The resting air pressure is controlled by opening and closing supply and exhaust valves during each flight phase. The tbot contains a pressure transducer that is used to sense the pressure in the air spring. An air hose runs fi'om the foot up the leg to a pair of pneumatic solenoid valves attached to the body. One valve is used to exhaust the pressure in the air spring to atmosphere and the other allows 120 psi air to enter the air spring from the supply line. During flight the supply and exhaust valves are opened as needed to adjust the measured resting pressure of the air spring to the correct value for the next stance phase. During stance both valves are closed and the air spring is passive. 88 STANCE DURATION

6.3 How Well Is Stance Duration Controlled?

The previous section described how the resting air pressure was manipulated during each flight phase to control stance duration. This section presents data that show how well stance duration is controlled and discusses improvements to the control.

Figure 6-7 shows the performance of the planar biped as it of follows a pattern of stance durations. The machine ran forward at lm/s while the desired stance duration changed to a new vMue every eight steps. The average of the absolute value of the error in stance duration is 0.005 s. The mean and standard deviation of the error in stance duration were

-0.002 s and 0.007 s. The data often show a step-to-step oscillation in the control. The size of this oscillation is small (0.006 s or 0.012 s) and is indicative of the low resolution of the stance duration measurement.

Figure 6-8 shows the same data presented as a scatter plot. The vertical spread of

0.25-

O

0.20 -

0.15 -

0.10 -

0.05

0.00 I I I I I 0 20 40 60 80 100 resting air pressure (psi)

Figure 6-5. The graph shows the stance durations produced by a range of resting air spring pressures while the machine hops in place with a flight duration of approximately 0.38 s. The solid line shows the least squares fit to the data. The fit was later used to predict the resting pressure that would produce the desired time of stance. (B88.265.6) 89 the points indicates the accuracy of the control. In the middle of the range the points are approximately centered around the line. At the high end all points fall below the line, and

_'_ hip

hydraulic piston

solenoid valves

sealed port I'_t3_t.T._..._ _ pneumatic piston

sealed port _ _ air spring chamber

atmosphere120 psi _ _k------rubber foot

orifice

Figure 6-6. A diagram of the pneumatic circuit that allows the resting pressure in the air spring to be controlled during each flight phase. The foot contains a pressure transducer that measures the pressure in the air spring. A supply line with 120 psi air feeds the supply valve. When the machine is in flight and the resting pressure in the leg is less than the desired value, the supply valve is opened until the pressure reaches the correct value. If the pressure is too high, the exhaust valve is opened and air is allowed to escape until the pressure decreases to the desired value. Both valves close before touchdown and remain closed throughout the stance phase.

0.2

O j..-=... O.1-

O.Oi I I I 0 50 100 150 step number

Figure 6-7. The solid line indicates the desired stance duration and the dots represent the stance durations that were actually generated. The forward speed of the machine was approximately 1.0 m/s and the flight duration was 0.38 s. (B88.243.4) 90 STANCE DURATION at the low end all points are above. This distribution indicates that the highest and lowest desired stance durations in the pattern were out of range.

Errors in the control of stance duration are the result of errors in modeling, sensing, and low-level control. The model for the control of stance duration assumes that the stance duration is a linear function of the resting pressure of the air spring and ignores the effect of variations in forward or vertical velocity. Measurement of the resting pressure of the air spring and the length of the stance duration are important to the accurate control of stance duration. If stance duration is to be accurately controlled, the low-level servo must accurately control the resting pressure in the spring. The control system has a long time to adjust the resting pressure, and the valves are fast compared to the rate of pressure rise.

As a result, controlling the pressure within 2 psi is not difficult. Each of these three sources of error are now discussed in more detail.

Modeling stance duration as a linear function of the resting pressure in the air spring did

0.25 0 ",--I

0.20

0.15- • • •

0.10

0.05

0.00 I I I I I 0.00 0.05 0.10 0.15 0.20 0.25 desired stance duration (s)

Figure 6-8. The data from figure 6-7 shown as a scatter plot. Flight duration and forward speed were nearly constant with nominal values of 0.38 s and 1.0 m/s, respectively. The vertical spread of the points indicates the accuracy of the control. The average error in the stance duration is 0.006 s, which is the resolution of the measurement. (B88.243.4) 91 not introduce significant error because of the resting pressures that were available. Figure 6- 5 indicates that the data recorded for the biped shows a linear relationship between stance duration and the resting pressure in the air spring. Figure 6-9 shows simulation data for a spring-mass model in which the spring is an air spring. The mass of the model and the dimensions of the air spring were chosen to match those of the planar biped. The air spring is modeled as a closed cylinder with no losses due to heat transfer. The region between the two vertical dotted lines corresponds to the operating region of the air spring in the biped.

Although the curve is not linear over the entire range, the region between the two vertical lines can be reasonably approximated by a straight line.

The model used in these experiments assumed that forward speed and flight duration do not affect stance duration. This assumption was reasonable because forward speed and flight duration were relatively constant. If flight duration or vertical velocity varied significantly, that variation would affect the control of stance duration. The left graph in figure 6-10

" 0.15

o "...-t

O .

0.10

0.05

..

0.00 : I I I I 0 20 40 60 80 100 pressure (psi)

Figure 6-9. Simulation data for a spring-mass model with an air spring. The mass of the model and the dimensions of the air spring were chosen to match those of the planar biped. The air spring is modeled as a closed cylinder with no losses due to heat transfer. The region between the two vertical dotted lines corresponds to the operating region of the air spring in the biped. 92 STANCE DURATION shows the effect of variations in vertical velocity at touchdown on stance duration for the spring-mass model with a linear spring. The three lines represent three linear stiffnesses.

When the spring-mass model is bouncing on a very soft spring, a change of vertical w_locity at touchdown from -0.9m/s to -2.9m/s causes a change of 0.040 s in stance duration or

40% of the full range of possible stance durations. The right graph shows similar data for changes in forward speed. The effect of forward speed on stance duration is not so pronounced. For a change of 2.25 m/s in forward speed, the stance duration changes only

18% of its range when the spring is soft. For both vertical and forward speed, the changes are much smaller for stiffer springs.

Figure 6-11 shows similar data for the biped. The data in the left graph were produced by varying the flight duration for each of the three stiffnesses while the machine ran in place. In the right graph, the biped ran at the same three stiffnesses and three different forward velocities. The data are noisy but retain the general shape predicted by the spring- mass model. If it were necessary to vary flight duration or forward speed significantly while controlling stance duration, the models could be expanded to include the effect of variations

_" 0.25- _" 0.25-

o o •__ "/:::1 0. 0 0. 0 _

0.15 0.15

...mom.oe...m.-o "m_°°Dt°w 0.10 0.10

0.05 _ 5kN/m 0.05 _ 5kN/m m. 9kN/m m. 9kN/m ..... 13kN/m ..... 13kN/m 0.00 I I l 0.00 l I l -3.0 -2.0 -1.0 0.0 0.( 1.0 2.0 3.0 vertical velocity (m/s) forward speed (m/s)

Figure 6-10. The left graph shows the stance duration of the spring-mass model as a function of the vertical velocity at touchdown for soft, medium, and stiff springs. The model was hopping in place. The right graph shows stance duration as a function of forward speed. The model was hopping with a vertical touchdown velocity of -2.67 m/s. Variations in vertical velocity and forward speed have the greatest effect on stance duration for very soft springs. 93 in forward speed and flight duration on stance duration.

The second source of error in the control of stance duration is measurement error. To control stance duration accurately, the control system needs an accurate value for the resting pressure in the air spring and the length of the stance phase. The foot contains a pressure transducer that provides an accurate and stable reading of the pressure in the air spring.

The measurement of the duration of the stance phase is not very accurate and affects the control of stance duration.

The sampling rate of the computer is causes error in the measurement of stance dura- tion. The length of the stance phase is computed by noting the time between when tile foot switch closes at touchdown and when it opens at liftoff. Stance duration is accurate only to within 0.006 s because that is how often the computer checks to see if the foot switch has closed or opened. An error of 0.006s represents 6% of the range of possible stance durations. An electronic circuit could be used to monitor the foot switches more frequently and improve the resolution of the stance duration measurement.

Errors in the measurement of stance duration also occur because the foot switches do

0.3 - _ 0.3 E = "_.._ ° x:_ 0.2 - ., t(•,, , • "o 0.2 :':.,'::i" "

= • T: ..'. _ : • " " "" •.-:" .. . :.....-.-....-" • .. .._ ..-.:. : ..'..-.-.... :.'.: 0.1 "" " ." 0.1 -

• soft • soft • medium . medium • hard . hard 0.0 I I I 0.0 I I I -3 -2 -1 0 0 1 2 3 vertical velocity (m/s) forward speed (m/s)

Figure 6-11. The left graph shows stance duration of the planar biped as a function of the vertical velocity at touchdown for soft, medium, and stiff springs. The right graph shows stance duration as a function of the forward speed for the same three stiffnesses. Although the data are noisy, they retain the general shape predicted by the spring-mass model in figure 6-10. (B88.332.10 and B88.332.11) 94 STANCE DURATION not close at the same axial leg force regardless of leg angle. The leg angle at touchdown varies with forward speed and stance duration. When the foot is placed farther in front of the hip for touchdown, a greater axial force is required to close the switch. Redesign of the foot switches to eliminate this problem would reduce the noise in the stance duration measurement.

The final source of error in control of stance duration is the control of resting pressure.

Because the resting pressure is adjusted during flight, the servo has a long time to perform the control task. The pressure rises or drops slowly in comparison to the speed of the valves.

The pressure servo is very simple, but it reliably gets the pressure within 2 psi of the desired value before touchdown.

6.4 Using Stance Duration to Control Step Length

Although stance duration can be controlled accurately, using adjustments in stance duration is not a good method for controlling step length. When the biped followed a pat_;ern of step lengths ranging from from 0.4m to 0.6 m, the average absolute error in step length was 0.03 m. The error in step length is small for this experiment but the range of possible step lengths is also small. The range of possible step lengths is so small that this method is unlikely to be useful for controlling step length while running over rough terrain.

In order to follow a pattern of step lengths, the control system requires an equation for the forward speed that will produce a step of the desired length. The distance traveled during a step is given by Lstep = T.f:_.f + 7sxs, (6.3)

where Lstep is the step length, _] is expected forward speed during flight, 2s is expected forward speed during stance, and Ty is the expected flight duration for the next step. Equation 6.3 is correct for steady-state running when stance duration and forward speed during stance do not vary. If stance duration is allowed to vary, the equation becomes

1T _ (6.4) Lstep = TyJ:f -t---_ s s + Xfh, 95

where Xfh is the distance the foot is expected to be in front of the hip on the next touchdown. This equation reflects the fact that step length is the sum of three quantities: the distance traveled during the second half of one stance phase (1/2Tsics), the distance traveled during flight (Tfk/), and the distance the foot is extended for the next touchdown (X/h). When the duration of stance is allowed to vary, Xlh depends on the stance duration for the next step.

When the legged system uses adjustments in stance duration to follow a sequence of step lengths, Xlh depends on the desired length of the next step. In general, the entire sequence of footholds must be known in advance in order to calculate Xlh for the first step because the Xlh for one step (step i) depends on the length of the next step (step i -t- 1). Even if the entire sequence of footholds is known, any errors in the control of step length would require unanticipated changes in stance duration and Xlh would be different than predicted. In practice, the control system can make a reasonable guess as to the forward extension of the foot for the next step by using nominal values for the forward speed and the stance duration.

The desired stance duration for one step (step i) must be chosen during the flight phase of the previous step (step i - 1), if the resting pressure of the spring is to be adjusted before touchdown. If the task involves positioning the foot with respect to terrain located at a fixed position in the room, then the length of step i must be estimated so that the desired length of step i + 1 can be calculated. But the choice of stance duration for step i + 1 determines the forward extension of the foot at touchdown and therefore the length of step i. This dependency is solved by a system of simultaneous equations.

Equation 6.4 is used to compute the stance duration that will produce the desired step length: Ts = 2(Lst_p- X/h -- ic/T]) (6.5)

This equation provides the framework for the control of step length through adjustments in stance duration. Given a controller that produces the required stance duration on tile next step and accurate predictions of the forward velocities and the flight duration, the biped will take a step of the correct length.

To test the control of step length, the biped followed a pattern of step lengths. The 96 STANCE DURATION machine took eight steps of each length before the desired step length was switched to the next value in the pattern. The control system used equation 6.5 to compute the required stance duration from the desired step length. The control system chose a resting pressure for the air spring that would produce a stance duration of the correct length. Forward speed and flight duration were controlled to their nominal values.

Figure 6-12 shows the results of an experiment in controlling step length through ad- justments in stance duration. The biped followed a pattern of step lengths ranging from

0.4 m to 0.6 m. The average absolute error in step length was 0.03 m for this experiment.

The mean and standard deviation of the error in step length were -0.01m and 0.04m.

The control does not appear very accurate because the error is substantial compared to the available change in step length. In fact, however, the error over this range is smaller than the error for either of the other two methods. Figure 6-13 shows the same data replotted as a scatter plot. The points form a nearly square region indicating that the size of the error is nearly equal to the range of possible step lengths.

To produce tile desired step length, the control system adjusts stance duration and maintains nominal values for forward speed and flight duration. Table 6-1 shows the average of the absolute value of the error for all three variables. Table 6-2 shows the mean and standard deviation of each of the errors. The second column of each table shows the error

0.0 ! ! ! ! ! 0 50 100 150 200 250 step number

Figure 6-12. Graph showing the performance of the planar biped when adjustments in stance duration are used to follow a pattern of step lengths. The solid lines indicate the desired step length and the dots represent the actual step length. The desired step lengths range between 0.4m and 0.6 In which is a narrower range than that used to test the other two methods for controlling step length. The machine is marginally successful at following this pattern. (B88.265.7) 97 measures scaled by the nominal values for the other variables. For each of the other two methods for adjusting step length, the variable responsible for controlling step length was responsible for a large percentage of the error. For this method, the adjusted variable, stance duration, was the smallest contributor to error in step length. Error in forward speed contributed most heavily to the error in step length.

Errors in stance duration cause errors in forward speed. The calculation of the place- ment of the foot for the control of forward speed relies on an accurate estimate for the

_'___ 0.80.6 • ! ,/ ..: ...I..x4 " II • ,4 _ ° I_o|

0.4

0.2

0.0 I I I I 0.0 0.2 0.4 0.6 0.8 desired step length (m)

Figure 6-13. Scatter plot of the data shown in figure 6-12. The vertical spread of the points shows the error in control. (B88.265.7)

Error Scaled Error Variable average absolute error average absolute errc)r

forward speed 0.087 m/s 0.048 m flight duration 0.023 s 0.025 m stance duration 0.007 s 0.008 m

Table 6-1. The average of the absolute value of the error in forward speed, flight duration, and stance duration. 98 STANCE DURATION stance phase. Even a small error of 0.006 s in the estimate of stance duration results in an error of 0.04 m/s in forward speed and a corresponding error of 0.024 m in step length. The total range of step lengths possible through adjustments in stance duration is only 0.1m. An error as small as the resolution of the stance duration measurement (10.006s) results in

an error in step length of 25% of the range. It is not surprising, therefore, that the data points in figure 6-13 filled a nearly square region.

Forward speed does not remain constant when stance duration varies, even if the stance duration is accurately predicted. Chapter 4 used the following equation for the placement of the foot at touchdown:

X/h = k_pTs ks(k 2+ iCd)+ k_(ic - iCd). (6.6)

But the gain knp does not accurately describe the situation when stance duration varies. This modified equation was used for controlling forward speed experiments described in this chapter:

X fh = (knp + k'pT_)T_ k_(5:2+ &d) + k_(ic- _d). (6.7)

The gains knp and k_p were empirically determined to be 0.805 and -0.75. The variation in forward speed in response to variations in stance duration was reduced but not eliminated by this addition to the model.

Adjustments in stance duration is not a very successful method for controlling step

length for the planar biped. Given the nominal values I chose, the stance duration method provides only one-tenth the range of the forward speed method and one-fifth the range of the flight duration method. The accuracy is better than that of the other two methods but only because the range is so small.

Error Scaled Error Variable mean standard deviation mean standard deviation forward speed 0.072 m/s 0.076 m/s 0.040 m 0.042 m flight duration -0.019 s 0.022 s -0.021 m 0.024 m stance duration 0.000 s 0.016 s 0.0()0 m 0.018 m

Table 6-2. The mean and standard deviation of the error in forward speed, flight duration and stance duration. 99

Stance duration is unlikely to be a useful method for controlling step length because of its small range. For a nominal forward speed of 1.1m/s and a flight time of 0.33s, the minimum step length is 0.47m and the maximum is 0.58 m. If the biped runs with a nominal step length in the middle of its range, then the maximum possible change is only 10% of the nominal step length. Lee, Lishman, and Thomson (1982) found that skilled

long jumpers often made adjustments of more than 25% of their step length to land on the takeoff board, so it seems unlikely that changing the step length by varying the duration of stance alone will be sufficient for useful control of step length unless the range of step

lengths is increased.

The range of achievable step lengths possible could be increased by enlarging the range of possible stance durations. Currently the minimum stance duration is 0.1 s and the maxi- mum is 0.2 s. A stance duration significantly shorter than 0.1 s is not practical. The control system corrects the body attitude and adds energy to the system during stance, and both of these actions require a non-zero stance duration. Coincidently, 0.1 s is also the minimum stance duration seen in humans and many other animals (Cavagna, Heglund, and Taylor

1977). Even if stance duration were decreased to zero, the range of step lengths would only double. The forward speed and flight duration methods would still provide a much wider

0.5 _ 0.5- 0 0 0.4 0.4_ 0.3 _ 0.3-

0.2 0.2

0.1 0.1

0.0 0.0 0 5000 10000 15000 20000 0 200 400 600 800 1000 stiffness (nt/m) pressure (psi)

Figure 6-14. Simulation data for a spring-mass model with a linear spring (left) and an air spring (right). The left graph plots stance duration against stiffness of a linear spring. The softer the spring, the longer the stance duration. The right graph shows similar data for an air spring. The air spring has a maximum stance duration but the linear spring does not. 100 STANCE DURATION range of step lengths.

Increasing the maximum stance time is more likely to improve the range of possible step lengths. Humans, for example, are able to achieve stance times up to 0.35 s (Cavagna, Thys, and Zamboni 1976). But long stance times have a cost. For a given forward speed the leg must sweep through a greater angle if the stance duration increases. If the leg sweeps through a larger angle, the average forward speed during stance will be lower. Therefore, increasing the stance duration does not have a linear effect on the distance traveled during stance, and the resulting change in step length is smaller.

Increasing the stance time on the planar biped would require a larger air spring or a

spring with different properties. Unlike linear springs, air springs have a maximum stance duration. The operating range of resting pressures for the biped appears to include the maximum stance duration for this hardware configuration. The linear spring used in the

spring-mass model has no maximum stance duration; the softer the spring, the longer the stance duration. A plot of the stance duration as a function of the spring stiffness for the linear spring is shown on the left side of figure 6-14. The graph on the right side shows similar data for a spring-mass model with an air spring instead of a linear spring. The two curves look similar, except on the left hand edge where the linear spring increases to infinity and the hardening spring reaches a maximum stance duration and then begins to rebound faster.

Although adjusting stance duration does not work very well for adjusting step length, it is nevertheless important for animals, and presumably also for legged robots, to be able to adjust the compliance in their legs. Animals increase the stiffness of their legs and decrease the time spent in contact with the ground as they run faster (Cavagna, Heglund, and Taylor 1977). Humans hold the distance traveled during stance constant as forward speed increases from medium to fast running. A reduced stance duration and stiffer legs are required to keep the distance traveled during stance constant as speed increases (Cavagna, Thys, and Zamboni 1976). Chapter 7 Direct Placement

Each of the last three chapters described a method for controlling step length. In each case one of the parameters of the step--forward speed, flight duration, or stance duration--was adjusted early in the step to produce a step of the correct length. For each of these methods, the foothold used at touchdown is the one specified by the constraints of balance. When the parameters of the step are controlled accurately, the balance foothold coincides with the location of the desired foothold on the terrain, the step is the correct length, and balance

is not disturbed. An alternative strategy is to ignore the balance foothold and place the foot directly on the desired spot on the terrain. If the foothold is within reach the control of step length will be exact but at the cost of disturbing the balance of the legged system.

Direct placement appears to be used by some biological systems. Warren, Lee, and Young (1986) suggest that a similar technique, which they call the reach forward of the foot at touchdown, may be used for last-minute fine tuning of step length in humans. In their study of humans adjusting step length, Patla, Robinson, Samways, and Armstrong (1989) found that the timing of a signal from the experimenter specifying the adjustment in step

length affected the parameters used to perform the adjustment. When the cue occurred late in the step, the adjustment was made during the flight phase and resembled direct placement.

When a legged system runs on rough terrain, the balance foothold and the desired foothold will not coincide in general and placing the foot directly on the desired foothold will result in a disturbance to the balance and forward speed of the system. If the foothold

101 102 DIRECT PLACEMENT followingtheoneon whichdirectplacementisusedisnotconstrained,theleggedsystemcan compensateforthedisturbanceand balancedrunningcancontinue.Forexample,ifthefoot weredisplaceda smalldistanceAx from nominalon one step,thenitcouldbe displaceda distance-Ax on thenextstep,therebyrestoringforwardspeed.Directplacementcannot be used formany stepsin a row and itcannotstandaloneas a method forcontrolling steplengthbut itdoesimprovetheaccuracyofthe steplengthwhen used incombination withone ofthe othermethods forcontrollingsteplength.A parameterof the stepcan be adjustedtomake thebalancefootholdnearlycoincidewith thedesiredlocationon the terrainand thendirectplacementcan be usedforprecisepositioning.The nexttwo se.ctions elaborateon theseideas.

7.1 A Fourth Method for Controlling Step Length?

A simple experiment shows that direct placement alone is not adequate for controlling step length. The biped ran around the circle with a nominal step length of 0.62,11. After a few seconds of running, the control system was instructed to use direct placement to produce a slightly longer step length (0.65 m) while maintaining the same hopping height and stance duration. On the first of the longer steps, the foot is placed on the foothold that produces the correct step length and is placed approximately 0.03 m from the balance foothold. The foot is farther in front of the hip than the balance foothold and the forward speed decreases. The lower forward speed shortens the next step and increases the distance the foot must be displaced on the next touchdown. After only a few steps of direct placement, the foot was placed as far forward as possible on touchdown and the machine fell over. Figure 7-1 illustrates this behavior. The top graph shows forward speed and the bottom graph shows the displacement of the foot from the balance foothold.

Figure 7-2 illustrates the interaction between the displacement of the foot from the balance foothold and changes in forward speed. The machine was running at steady-state when the foot was displaced from the balance foothold. The change in forward speed

produced by each displacement is shown in the graph. If the foot was displaced more than 103

0.1 m from the balance foothold, the machine was unable to continue running. While this number varies for different speeds and for forward and rearward displacements, it indicates that for a single step direct placement has a range equal to about half the range of step lengths than can be produced through adjustments in flight duration.

The interaction between direct placement and control of forward speed is in part a result of the decision to use the placement of the foot at touchdown to control forward speed. If direct placement is used then forward speed is uncontrolled. If the control of forward speed were independent of foot placement, then direct placement might be sufficient for controlling step length. Direct placement of the foot on the desired foothold would still affect the forward speed during stance but hip torques or some other control strategy could

_" 0

-1- 1 -2 ! ! ! I 0 1 2 3 4

2 E

0 4 i me (is)

-2 --

Figure 7-1. In this experiment the biped ran with a nominal step length of 0.62 m, forward speed of 1.1 m/s, flight duration of 0.4 s, and stance duration of 0.15 s. After two seconds, the control system began to use direct placement to produce slightly longer steps (0.65 m). The top graph shows the displacement of the foot from the balance foothold. The bottom graph shows the forward speed. The longer step length forces the foot to be placed further in front of the hip than the balance foothold so the forward speed decreases. The decrease in forward speed shortens the following step and increases the distance that the foot must be displaced from the balance foothold on the next touchdown. After three steps the foot was forward as far as possible at touchdown and the machine fell over. (B.88.261.3) 104 DIRECT PLACEMENT be used to bring the forward speed back to the desired value before liftoff.

7.2 In Combination with Other Methods

Direct placement can be successfully combined with the other methods for controlling step length. The combination of adjustments in the parameters of the step and direct placement produces more accurate step lengths than any of the three methods alone. Adjustments in forward speed, flight duration, or stance duration are used to make the balance foothold co-

2 E

_9

I I I J -0.20 -0.10 O.I0 0.20 • foot displacement (m)

.| •

Figure 7-2. In this experiment the biped ran with a nominal forward speed of 1.0 m/s. Every nine steps the foot was displaced from the balance foothold for one step. Those displacements caused the forward speed to change and provided the data shown in the graph. The running was allowed to return to steady-state before the next displacement. (B88.364.3, B88.364.4, B88.364.5) 105 incide as closely as possible with the desired location on the terrain. Then direct placement is used to place the foot exactly on the right spot. The size of the displacement is substan- tially reduced by the prior adjustment of the step length and the resulting disturbmlce to forward speed and balance is small.

One experiment that illustrates the improvement in performance is the task of talking a single step of a particular length. I tested direct placement in combination with adjustments in forward speed and with adjustments in flight duration. When step length is controlled through adjustments in forward speed alone the mean and standard deviation are -0.01m and 0.025 m. When this method is combined with direct placement, the mean and standard deviation are reduced to 0.002m and 0.003 m. A similar reduction in error occurs when

direct placement is combined with adjustments in flight duration.

Combining direct placement with one of the other methods for several steps in a row is more difficult. It is impossible when adjustments in forward speed are used to control step length because forward speed cannot be adjusted on a step on which direct placement is used. However, direct placement and adjustments in either flight duration or stance duration could be combined for a number of consecutive steps. Adjustments in flight or stance duration could be used to make one step (step i) close to the correct length. Then the foot could be placed directly on the desired foothold, and step i would be exactly the right length. This action would generate a predictable but undesired change in forward speed. The control system could take this change in forward speed into account and pick a flight or stance duration for the next step (step i + 1) that would produce a step of the correct length. If flight and stance duration have sufficient range to adjust the step length in spite of the changes in forward speed, the two methods could be combined for an arbitrary number of steps. If the control system were sufficiently clever, it could choose a flight or stance duration that, when combined with direct placement on the next touchdown, would serve to bring the forward speed back towards its nominal value.

Flight duration has a wide enough range of adjustment to make this style of control feasible. Stance duration probably does not. For example, a small change in foot position (-0.01 m) produces a change in forward speed of 0.13m/s. Assuming a nominal stance duration of 0.15 s, forward speed of 1.0 m/s, and step length of 0.55 m, the flight duration 106 DIRECT PLACEMENT would have to change from 0.40 s to 0.34 s to keep the step length constant. To displace the foot from the neutral point on the next step and bring the forward speed back to its nominal value would require a flight duration of 0.33s and a second direct placement correction of

-0.01 m. These corrections are within the range of possible flight durations for the biped.

In theory, a similar strategy could be used with stance duration. However, the change in

stance duration of 0.07 s which is required for a displacement of only 0.01 m is close to the

full range of possible stance durations.

Despite the drawbacks of direct placement, it has two appealing features. First, the

action necessary for direct placement occurs late in the step and requires few assumptions

about the subsequent behavior of the machine. With the other three methods, the control

of one step (step i) occurs during the stance phase of that step or during the flight phase

of the previous step (step i - 1). With direct placement, the control occurs as late as

possible--just before the final touchdown that determines the length of step i. This quality

makes direct placement ideal for error recovery or for dealing with information about the

terrain that is received very late in the cycle. And secondly, direct placement is a much

simpler method than the other three methods for controlling step length. Unlike the other

methods, it does not require complicated models or predictions of the system's behavior.

As long as the desired foothold is within reach, the foot can be placed there on touchdown.

This feature makes direct placement a very accurate method for controlling step length in

situations when the disturbances to forward speed and balance are not a factor. Chapter 8 Control of Step Length

Chapters 4, 5, and 6 each described a method for controlling step length. The first method used adjustments of forward speed to control step length. The second controlled step length through adjustments in flight duration and the third method used stance duration to adjust step length. Experiments with the planar biped demonstrated that adjustment in either forward speed or flight duration provided accurate control of step length over a wide range of step lengths. The biped can achieve only a small range of step lengths using adjustments in stance duration. This chapter examines the performance of the three methods in more detail and then explores a few of the applications of the control of step length. The ability to control step length allows a legged system to land on a target, follow a pattern of stepping stones, and jump over or onto an obstacle. With control of step length, the planar biped consistently lands on a target marked on the floor and runs up and down a flight of three stairs.

8.1 Comparison of the Three Methods

I compare the methods for controlling step length using two metrics: accuracy and range. Accuracy is an error measure and reflects the difference between the desired and actual step lengths. Range is the difference between the minimum possible step length and the maximum one.

107 108 CONTROL OF STEP LENGTH

The accuracy of a method determines how small a foothold the legged system can use successfully. If a legged system wishes to use a foothold that is 0.1 m long and 1.0 m away, then it must be able to take a step of 1.05 m with an error of less than ±0.05 m or !it will not land safely on the foothold. Figure 8-1 illustrates the importance of accuracy for the

task of using a stepping stone to cross a stream. If the legged system aims for the center of the stepping stone, then the error in step length must be less than half the length of the

stepping stone or the legged system will land in the water.

Good accuracy does not guarantee a successful method for controlling step length. The

step length must also vary over a wide range. For example, if the legged system is running

with a step length of lm but there is no good foothold lm ahead, then it must take a

shorter or longer step to avoid stepping on an undesirable region of tile terrain. If the

undesirable region is large, the adjustment might be substantial. Figure 8-2 illustrates the

need for a wide range of possible step lengths for running on rough terrain. If the legged

system portrayed in the figure continued running with its normal step length, it would fall

::!" ... ':::::....

Figure 8-1. A legged system crossing a stream by using a stepping stone as a foothold. It must be able to take a step with an error of less than half the length of the stone or the crossing will not be successful. 109 into the hole. To avoid the hole, the legged system must take a shorter step and land before the hole or a longer step and jump over the hole.

These examples illustrate the importance of both accuracy and a wide range of feasible step lengths. The next two sections examine the maximum and minimum possible step lengths for each method and the accuracy within that range.

8.1.1 Range of Step Lengths

The range serves as a measure of the legged system's ability to adapt to the terrain. A

larger range of available step lengths allows the legged system to run across terrain with greater variation in the spacing of good footholds. The range is an upper bound on the change in step length possible on the next step. If the legged system is running with short steps, it may not be able to increase its step length to the maximum value in one step. Similarly, it may not be possible for the legged system to go from a very long step length to the shortest possible step length without one or more steps of intermediate length.

The range of each of the three methods is determined by the range of the controlled variable and by the nominal values selected for the other two variables. The nominal values bias the comparison of the range of the three methods. For example, if I had selected twice as fast a nominal forward speed, the range of step lengths possible with the flight duration and stance duration methods would double while the range of step lengths possible with the forward speed method would remain unchanged. The nominal values I chose are

Figure 8-2. A legged system avoiding a hole in the ground. To avoid the hole the system must take a short step and land on the near side of the hole or a long step and land on the far side of the hole. If it takes a step of normal length, it will fall into the hole. 110 CONTROL OF STEP LENGTH approximately in the middle of the range for each variable and reflect an operating point where all three variables are well controlled.

To determine the range of each method, I first determine the minimum and maximum values for the controlled variables. Each of these numbers, in combination with the nominal values for the other two variables, provides a prediction of the minimum or maximura step length for one of the methods. Next, I use data from the experiments in controlling step length to confirm the predicted range of each method.

Table 8-1 gives the minimum and maximum values for forward speed, flight duration, and stance duration. These values were determined experimentally and reflect the control

algorithms and mechanical characteristics of the machine. The minimum forward speed is zero. The biped can run backwards--with a negative forward speed--but I am only concerned with positive step lengths so I chose a forward speed of zero as the minimum. The maximum forward speed is 2.0 m/s. The biped is able to run at speeds greater than

5 m/s (Koechling and Raibert 1988; Koechling 1989), but I chose 2m/s as the maximum forward speed because the control of forward speed for higher speeds is less accurate. The minimum flight duration of 0.14 s is determined by the vertical force needed to close the foot switch reliably at touchdown. Shorter flight durations do not provide sufficient impact at touchdown to close the foot switch. A more sensitive foot switch would decrease the

minimum flight duration slightly. The maximum flight duration, 0.50 s, is determined by the strength of the hydraulic actuator and by the efficiency of energy recovery in the leg spring. The minimum stance duration of 0.1 s is determined by the maximum resting pressure of the air spring. The air supply line pressure is about 120 psi, and that pressure determines the maximum resting pressure of the air spring. The maximum stance duration

Controlled Variable Step Length Method minimum maximum nominal minimum maximum range forward speed 0.00 m/s 2.00 m/s 1.10m/s 0.00m 1.10m 1.10m flight duration 0.14 s 0.50 s 0.40 s 0.32 m 0.72 m 0.,10 m stance duration 0.10s 0.20s 0.15s 0.55m 0.66m 0.11m

Table 8-1. The minimum and maximum values for each controlled variable and the minimum and maximum values for the step lengths produced by each method. 111 of 0.2 s occurs with a resting pressure of 10 psi. Reducing the resting pressure further does aot cause the stance duration to increase because air springs of a given volume and piston area have a maximum rebound time. Simulation data show that the maximum rebound time for the air spring in the biped should occur with a resting pressure of about 10 psi.

Using the minimum and maximum values for the adjusted variables and the nominal values for the other two variables, it is possible to compute a range of possible step lengths for each method. The step length is

L_t_p = (Tf + T_)ic. (8.1)

To compute the minimum step lengths given in table 8-1, the nominal values for two of the variables were substituted into equation 8.1, along with the minimum value for the third variable. A similar calculation predicted the maximum step length for each method. Manipulating forward speed produces variations in step length that are more than twice the variations obtained by manipulating flight duration and more than ten times the variations of step length obtained by manipulating stance duration.

Data from the experiments on controlling step length confirm the predictions of min- imum and maximum step length given in table 8-1. Figure 8-3 shows actual step length plotted against desired step length for each control method. For each set of data, I can iden- tify the limits of the range by finding the place on the graph where an additional decrease or increase in desired step length has little or no effect on the actual step length.

The data from the forward speed method (figure 8-3A) give no indication that the method has reached either its minimum or maximum step length. I made an arbitrary choice for the maximum forward speed and in fact the biped can take longer steps than were used in the experiment.

The flight duration method (figure 8-3B) reaches its maximum step length at about 0.65 m. The step length does not increase even though the desired step length reaches 1.0 m. The prediction for the minimum step length with adjustments in flight duration is about 0.2 m. The data do not show this limit clearly because the machine often falls over when a flight duration that short is used. Even if this problem were fixed and the flight duration decreased to zero, the minimum step length would be 0.16 m, which does not increase the range substantially. 112 CONTROL OF STEP LENGTH

E 1.2

1.0 :-" .// . ¢t) 2 0.6 A. Forward Speed Method

0.4

0.2

0.0 , | t I 0.0 0.2 0.4 0.6 0.8 1.0 1.2 desired step length (m)

"_ ].0

g o.60.81.2 B. Flight Duration Method

0.4

0.2

0.0 I/ i , i I I I 0.0 0.2 0.4 0.6 0.8 1.0 1.2 desired step length (m)

,_E 1.2

_e_ 1.0

_ 0.8 0.6 C. Stance Duration Method

0.4

0.2

0.0 i/ i , , , , , 0.0 0.2 0.4 0.6 0.8 1.0 1.2 desired step length (m)

Figure 8-3. Scatter plot of actual step length against desired step length for each method. The top two graph shows data generated by using adjustments in forward speed and flight duration to follow a pattern of step lengths ranging from 0.1 m to 1.0m. The bottom graph shows data generated by using adjustments in stance duration to follow a pattern of desired step lengths ranging from 0.4 m to 0.6m. (B.88.102.0, B88.106.10, and B.88.265.7) 113

Stance duration (figure 8-3C) shows a minimum step length of 0.5 m and a maximum of 0.6 m, values close to those predicted in table 8-1. The range of this method is narrow because the range of stance durations is small. Maximum stance duration is determined by properties of the air spring. Minimum stance duration is determined by the air supply line pressure. If the supply line pressure were increased, the stance duration would decrease.

But even a zero length stance duration would only double the range of step lengths, and the stance duration method would still have a much smaller range than the other two methods.

The minimum and maximum step lengths computed using equation 8.1 and those de- termined from the experimental data are in good agreement. Both sets of ranges indicate that the forward speed method has the largest range (1.1 m), the flight duration method is next (0.4 m), and the stance duration method is the smallest (0.1 m).

The range of step lengths possible through adjustments in forward speed is large in part because the range of forward speeds is large. But the large range is also caused by the fact that a change in forward speed affects both the distance traveled during stance and the distance traveled during flight. A change in flight duration affects only the distance traveled during flight or about 75% of the step. A change in stance duration affects only the distance traveled during stance or 25% of the step.

In the experiments described in this thesis only one variable is allowed to vary during an experiment. If all three variables were allowed to vary, the range of step lengths would be greater: the minimum step length would be 0.0 m and the maximum step length would be 1.4 m for a range of 1.4 m. This range is 30% larger than the range available with variations in forward speed only.

8.1.2 Accuracy

The accuracy of a method for controlling step length can be measured by the mean and standard deviation of the error in step length. To compare the accuracy of the three methods, I performed an experiment in which the biped used each method to follow a similar pattern of step lengths. The patterns were scaled so that the minimum and maximum desired step lengths fell within the achievable range for each method of control. The control 114 CONTROL OF STEP LENGTH system used the same nominal values for the unadjusted variables in each experiment. The pattern of step lengths causes the adjusted variable to take on nearly its full range of values while the other two variables remain at their nominal values. For example, in the experiment which tested the forward speed method, ;_d varied from 0.1 m/s to 2.0 m/s while Ts was 0.15s and T/ was 0.40s.

Table 8-2 shows the measured mean and standard deviation of the error in the adjusted variable and in the step length for each method. Only steps within the range of the method were used in the calculation of the error. The adjustment in stance duration provided the most accurate control with a mean of -0.01 m and a standard deviation of 0.04 m ibr the error in step length. Adjustments in forward speed and adjustments in flight duration pro- vide less accurate control of step length. This evaluation, however, compares the accuracy of each method only within its range of possible step lengths. If adjustments in forward speed and adjustments in stance duration were tested on the same wide pattern of step lengths, adjustments in forward speed would be much more accurate since most of the step lengths in the pattern could not be produced through adjustments in stance duration.

8.1.3 Other Criteria for Evaluation

Adjustments in forward speed provide the widest range of step lengths and reasonable accuracy. The criteria of range and accuracy lead us to conclude that adjustments in forward speed is the most practical method of the three methods. However, range and accuracy are not the only possible evaluation criteria. The method of adjustment may be constrained by the nature of the steps that follow or by the level of accuracy required on

Error in Adjusted Variable Error in Step Length Method mean standard deviation mean standard deviation forward speed -0.091 m/s 0.111 m/s 0.05 m 0.07m flight duration 0.016 s 0.078 s -0.04 m 0.09 m stance duration -0.001 s 0.014 s -0.01 m 0.04 m

Table 8-2. The mean and standard deviation of the error in the adjusted variable and in the step length. 115 the step.

The method for adjusting step length may be dictated by the maneuver to be performed after the target is reached. For example, when long jumpers reach the takeoff board, they must have sufficient speed to carry them through the jump. This requirement might prevent them from using substantial changes in forward speed to adjust the length of their steps. Lee, Lishman, and Thomson (1982) found that long jumpers primarily made adjustments in flight duration to land on the takeoff board. Flight duration might be the preferred method of controlling step length for humans or it might be that adjusting forward speed to control step length during the run-up would reduce the long jumper's forward speed during the jump and therefore the distance he was able to jump. A similar argument against using adjustments of flight duration might hold if the maneuver involved jumping over an obstacle.

If high accuracy is required, then the legged system may wish to simply place its foot oil the target and make adjustments for the consequences later. Direct placement (:an be combined with one of the methods to control step length to form a method that controls the step length very accurately but with some disruption to balance. Direct placement can be combined most easily with the flight duration method. If high accuracy is required, the combination of flight duration and direct placement might be the best strategy for controlling step length.

8.2 Demonstrations

When a legged system runs on rough terrain, it must adapt the length, height, and direction of its steps to conform to the terrain. I decompose the full three-dimensional problem into three parts--one corresponding to each dimension of the step which must be controlled. Controlling only the length of the step is a one-dimensional problem, adjusting both the length and height is a two-dimensional problem, and controlling the length, height, and direction is a three-dimensional problem. Using the methods for controlling step length presented in this thesis, the biped can step on a target marked on the floor and jump over an obstacle. Two-dimensional rough terrain requires a simple extension to the control for 116 CONTROLOF STEP LENGTH one-dimensional terrain. The planar biped has successfully run up and down a short flight of stairs, demonstrating control both of the length and of the height of its steps. I reserve discussion of three-dimensional rough terrain for the section on future research in the last chapter.

8.2.1 One-dimensional Rough Terrain

Running on one-dimensional rough terrain requires the legged system to avoid unsuitable regions of the terrain or follow a path of good footholds: the legged system must be able to control the length of its step. One-dimensional problems divide naturally into two categories: those which have only a single target and those in which several consecutive steps must be correctly adjusted. Many athletic events have only a single target: long jumping, high jumping, vaulting off a springboard, hurdling, and place kicking a football. In each of these events only one step must be precisely controlled. That step is preceded by a number of steps across smooth terrain which do not need to be precisely controlled and can be adjusted so that the adjustment on the final step is small. Other tasks require that the legged system follow a sequence of consecutive targets: crossing a stream on a path of stepping ,,;tones, running along railroad tracks, or playing hopscotch. Each step must be precisely positioned or the legged system will stumble. I first discuss the single target tasks that the biped has performed: stepping on a target and leaping over an obstacle. Then I examine a multiple target task, following a pattern of stepping stones, although the biped has not yet performed this task.

Step on Target

The biped can reliably step on a, single target using adjustments in either forward speed or flight duration to control step length. In these experiments, the biped runs around the circle with a nominal forward speed, hopping height, and stance duration. The target is marked on the floor with a piece of tape. The control system knows the location of the target. When the biped is about 5m from the target, the control system begins adjusting step length so that foot 1 lands on the tape. The parameters of the steps leading up to the 117 target are adjusted so that the balance foothold coincides with the target.

As the legged system approaches the target, the control system must select step lengths that will align the legged system with the target. In general, the legged system must deviate from the nominal step length in order to land on the target. I selected a strategy that absorbs an equal fraction of the total adjustment on each step. When the control system begins adjusting step length, it computes the distance to the goal and chooses the step length closest to the nominal step length that will place the correct foot on the target in an integer number of steps. That step length then becomes the nominal step length. Each subsequent desired step length is equal to the nominal step length plus the error on the previous step.

The effect of this strategy is that the biped attempts to land on a set of equally spaced, invisible stepping stones along a path leading to the target.

Figure 8-4 illustrates the adjustment in step length as the biped approaches the target. The figure is drawn from the perspective of a viewer looking down at the floor at footprints left by the machine as it made 21 approaches to the target. The machine runs from bottom to top in the figure. The left column of dots represents the footholds used by one leg and the right column shows the footholds used by the other. At the bottom of the graph, about 5 m before the target, the control system chooses the step length that will cause leg 1 to land on the target. As the biped runs towards the target, each desired step length is equal t;o that nominal step length plus the error on the previous step. As the machine approaches the target, the dispersion in the location of the footprints decreased and the footprints converge on the target.

The task of stepping on a target has been implemented for two of the three methods. Table 8-3 gives the mean and standard deviation of the error in foot position at the target for each method. The first row of the table gives theoretical results for the error with no control of step length. I assumed a step length equal to the nominal step length ((}.55 m) and a uniform distribution of footholds around the circle. The mean of the error is zero and the maximum error is -t-0.55 m. Foot 1 must land on the target so the maximura error occurs when foot 2 lands on the target and the nearest placement of foot 1 is a full step length away. For a uniform distribution between 01 and t?2the standard deviation is

/

= _/(0_ - 01)_ (8.2) V 12 118 CONTROL OF STEP LENGTH

o Target o

-1- ! i

-4 j 1 : "Q , 1 $ -5 8

Figure 8-4. The circles mark the footprints of the machine as it repeatedly approaches and steps on the target. The graph is drawn from the perspective of a viewer looking down at the floor at footprints left by the machine at each touchdown. The left column shows the footprints of one leg, and the right column shows where the other leg stepped. The foot position is zero when the foot lands on the target. In this experiment, step length is controlled by adjusting forward speed. The adjustment necessary to put the correct leg on the target is divided equally among steps that occur in the 5 m before the target. The data shown in this figure represent 21 consecutive trials with an average absolute error of 0.02 m on the target step. (B.88.99.8 and B.88.99.9) 119

The distribution is uniform between +0.55 m so the standard deviation is 0.32 m.

The mean and standard deviation for the error in step length are computed from ex- perimental data. Both adjustments in forward speed and adjustments in flight duration represent a substantial improvement over the expected error without control of step length. Controlling step length through adjustments in forward speed consistently produces the smallest error at the target.

The last two rows of the table 8-3 show the performance of each method in combination with direct placement. Adjustments in either forward speed or flight duration are used to get the final touchdown as close to the target as possible. On the final step, the foot is placed directly on the target. The error in foot placement is essentially eliminated with this combined strategy, regardless of the method used on the steps before the target step. It is no longer possible to see a significant difference in performance between the two methods.

Leaping

When a legged system has the ability to step reliably on a single target, it has the potential to perform maneuvers that require placement of the feet with respect to features of the terrain. Leaping over an obstacle is such a maneuver. Chapter 1 contained a photograph (figure 1-1) of a planar one-legged machine leaping over a stack of blocks. The control system for that machine had no knowledge of the blocks, and an operator pushed a button to initiate the leap when the machine neared the blocks. It was successful in clearing the blocks about one time in three. On the failures, the takeoff location was too far away or too close to the blocks. With control of step length, the takeoff position is correct each time.

Error at Target Method # of trials mean standard deviation no control of step length none 0.000 m 0.320 m forward speed 21 -0.004 m 0.023 m flight duration 20 -0.051 m 0.046 m forward speed . direct placement 25 0.001 m 0.004m flight duration + direct placement 25 0.000 m 0.005m

Table 8-3. The mean and standard deviation of the error in foot placement oil a target. 120 CONTROL OF STEP LENGTH

On a good day, the biped successfully jumps over the blocks more than ten times in a row.

Either adjustments in forward speed or adjustments in flight duration can be used to align the machine with the takeoff point for the leap just as those two methods were used to step on the target in the previous section. After the machine has landed on the takeoff point, the control system must modify the normal running gait to produce the leap. On the step that lands on the takeoff point the machine brings the two legs together for a double- support stance phase called a pronk step. During the double-support stance phase, the control system thrusts hard to provide the extra height necessary for clearing the obstacle. The control system also generates a nose-up rotation of the body during stance to counter the nose-down pitch rotation produced by swinging both legs forward at once. While the machine is above the obstacle, both legs are retracted to provide more clearance. The landing step uses both legs together but is otherwise unchanged from a normal running step.

Using both legs to power the jump provides significantly more altitude for the body than could be produced by one leg. The center of mass of the machine reaches an altitude of 1.0 m when the machine jumps with both legs but an altitude of only about 0.8 m when it jumps on just one. Using the legs together allows both leg actuators to add energy and both air springs to store energy from tile previous bounce.

During the double-support stance phase the control system generates a pitch welocity in the nose-up direction. Without this nose-up pitch velocity, the body pitches nose down during the extended flight phase of the leap and it is difficult for balanced running to continue on landing. This action is similar to one used to generate a nose-down pitch velocity and cause the machine to perform a forward flip (Hodgins and Raibert 1987b). The magnitude of the pitch velocity is much smaller for the leap than for the flip, and the direction of motion is reversed.

Using these simple algorithms for leaping, the biped reliably leaps over a square obstacle 0.36m high and 0.32 m long. More complex strategies would allow it to clear a larger obstacle. One such strategy might be to flip over an obstacle, performing a full 360 degree rotation, rather than to leap over it. The distance from the hip to the top of the biped is shorter than the distance from the hip to the foot of the fully retracted legs. Although 121 this technique might seem feasible only for a legged system with the peculiar shape of the biped, humans have also experimented with flipping long jumps. In 1973, a flip was used in long jump competition. It was quickly declared illegal because it was "not what has traditionally been known as long jumping" (Ecker 1974, 1976). As a result, it is not known whether flipping would have proved to be a superior technique for humans.

Leaping is just one of many maneuvers the biped could perform after landing on a target. Other possibilities include jumping off a spring board, jumping over a series of hurdles, place kicking a football, or even jumping through a flaming hoop. Each of these tricks would require special algorithms for the step containing the maneuver, but an important part of the framework is already in place since the machine can be correctly aligned with the terrain at the start of the maneuver.

Stepping Stones

Stepping on a series of targets on consecutive steps is more difficult than stepping on a single target. Each step must be the correct length, and changes in step length cannot be spread out over several steps. The methods for controlling step length have not been tested on a pattern of random stepping stones.

The forward speed method has an inherent problem when the task involves controlling several steps in a row. In order to adjust forward speed for one step (step i), the placement of the foot at touchdown must be altered for the previous step (step i - 1). This action affects the length of step i - 1. It is impossible to control both the forward speed on step i and the length of step i - 1 after step i - 1 has begun.

In theory, the forward speed method could be used to follow a finite series of footholds.

The foot position with respect to the hip for the final step in the series (step n) is needed to calculate the foot position for the preceding step, (step n- 1). The foot position for step n - 1 is needed for step n - 2 and so on back to the first step in the series. The calculation also requires predictions of the flight and stance durations for each step. Errors in the control of forward speed require unanticipated adjustments in the forward foot position at touchdown. Each of these adjustments produces an error on the step immediately preceding the one requiring the adjustment. This interaction implies that foot placement cannot be 122 CONTROLOF STEP LENGTH the only means of adjusting forward speed and step length if there is noise in the system.

The interdependence between the position of the foot at touchdown and the control of forward speed means that adjustments in forward speed cannot be used to follow an infinite pattern of step lengths. Furthermore, unless the control of forward speed, flight duration, and stance duration are entirely accurate, adjustments in forward speed cannot be used to follow a finite pattern with arbitrary accuracy. In practice, it may be possible to predict the forward extension of the foot with sufficient accuracy to make forward speed a useful method for controlling step length even in the context of the stepping stone problem.

The stance duration method has a similar interaction with the position of the foot at touchdown. The stance duration does not depend on the foot position at touchdown, but the foot position depends on the expected length of the stance phase. If the stance duration changes, the neutral point and the balance foothold also change. As the forward speed method, the foot extension at touchdown can be calculated for each step working backwards from the final step in the series. Again, errors in control on a step result in unanticipated changes in stance duration for the step and an error in the length of the preceding step.

The control of flight duration is not linked to the foot position at touchdown and the foot position does not depend on the length of the flight phase. In theory, then, adjustments in flight duration could be used to control an infinite series of steps or to follow a finite pattern with arbitrary accuracy.

8.2.2 Two-dimensional Rough Terrain

The types of rough terrain I have discussed so far have been one-dimensional. This section describes extensions to the control of step length that allow a legged system to run on two- dimensional rough terrain and use footholds at varying altitudes. Using these algorithms the biped runs up and down a flight of three stairs. Traversing stairs is an example of a two-dimensional pattern of stepping stones. The stairs are evenly spaced--a special case of the general problem.

To run on two-dimensional rough terrain, a legged system must be able to leave the 123 ground at one altitude and land on a foothold at a different altitude while controlling the length of its steps. Accommodating variations in liftoff and landing altitudes requires only small change to the control of flight duration. The equation used to predict the flight duration, Ty, given the vertical liftoff velocity, Zlo, is 2_to T/ = (8.3) g

In chapter 5, I used this equation to compute the vertical velocity at liftoff that would produce the desired flight duration, the maximum altitude of the body required, and finally tile energy that would produce that height.

A similar series of calculations can be performed without assuming that the liftoff and landing altitudes are equal. Equation 8.3 becomes + +2g(z,o- T] = , (8.4) g where zto is the altitude of the body at liftoff and Ztd is the altitude of the body at touchdown. Solving for zlo yields

Zlo = Tyg zlo- Ztd 2 Ts (s.5) To compute the desired energy, the control system needs to know the maximum altitude during flight, Zmax. Throughout flight the height of the body is

z = -2gt 2 + i_tot+ Zlo. (8.6)

When z = zmax, t = 7zto/g. Substituting for t in equation 8.6 produces

Zmax "- 2g Using equation 8.5 to substitute for zto yields

=(Zto2-Tzt_) g 2 Zlo2- ztd + -V + Zto. (8.8) The desired energy is

E = mgz,_. (8.9)

The control of flight duration uses this new calculation for desired energy and controls the energy during stance using the same algorithms. Flight duration is now held constant despite variations in the liftoff and touchdown altitude of the body. 124 CONTROL OF STEP LENGTH

Stair Climbing

Using the modified algorithm for the control of flight duration given by equations 8.8 and

8.9, the biped has run up and down a flight of three stairs. Each stair in the staircase has a rise of 0.178 m and a run of 0.324 m. The control system knows the location and dimensions of the staircase. To execute a stair climb, the biped runs around the circle with a nominal step length equal to 0.324 m. Beginning about 5 m before the staircase, the control system uses the algorithms for stepping on a target to land 0.162 m or one-half stair length in front of the staircase. The step length is controlled with adjustments in forward speed. To climb the staircase, the control system adjusts forward speed to maintain the correct step length and adjusts thrust to keep flight duration constant despite variations in liftoff and landing altitude.

• , ••'° ° ,, ...

°°°" 0.0 ! 0.0 0.5 1.0 1.5 2.( 2.5 length (m)

Figure 8-5. Schematic representation of the staircase and the footholds that the biped used in climbing up and down the staircase. The machine ran from left to right. The top solid line indicates the path of the body. The two lower lines, one solid and one dashed, indicate the paths of the feet. The kinematics do not take into account the compression of the feet so when the biped lands on the staircase the foot appears to pass through the stair rather than coming to rest on the surface• The control system attempted to use footholds in the center of each step. (B.88.131.17) 125

Figure 8-5 shows the path of the body and legs in a successful stair climb. The top solid line indicates the path of the body. The two lower lines, one solid and one dashed, indicate the paths of the feet. The control system attempts to use footholds in the center of each stair, but not all the biped's steps are exactly the right length. In particular, the final step was shorter than expected. On a good day the biped can climb the stairs seven consecutive times without stumbling.

Chapter 9 Summary

Legged vehicles may someday travel on terrain that is too rough for wheeled and tracked vehicles of comparable size. To travel on rough terrain, legged vehicles will have to use the best footholds they can reach, even those which are isolated or hidden by obstacles. The problem of traveling over rough terrain includes many sub-problems, including sensing the terrain, planning a path, selecting a foothold, and adjusting step length. This thesis concentrated on the last of these problems, the need to adjust the length of each step so the feet are placed on chosen footholds.

I studied the control of step length in the context of systems that move dynamically. This problem is an interesting one because the act of positioning the feet with respect to available footholds interacts with the stability and general behavior of the system. Each placement of a foot on the ground causes the body to accelerate, influencing the system's forward speed and direction of travel. A system that controls placement of the feet must simultaneously satisfy the geometric constraints dictated by the locations of good footholds and the dynamic constraints for stability.

Once the problem of placing feet on chosen footholds is solved, a dynamic legged system should be able to traverse more difficult terrain than a static system of comparable size and reach. A dynamic system need not maintain support continuously in time, nor must there be a continuous path of closely spaced footholds to allow a gradual transfer of support from one support tripod to another. A dynamic system can use its flight phase to leap over regions that do not offer any good footholds. Generally, a dynamic system can use its

127 128 SUMMARY kinetic energy to bridge from one foothold to another, and it does not require a broad base of support at each foothold. These potential advantages are obtained by dynamic legged systems at the expense of greater difficulty in placing the feet on footholds.

To study placement of feet on footholds in dynamic legged systems, I considered a special kind of rough terrain, in which the footholds are unevenly spaced on a straight line in the horizontal plane. I used a planar biped running machine to evaluate three methods for controlling step length. One method adjusted the forward running speed of the system, while keeping the duration of the stance and flight phases constant. The second adjusted the duration of the flight phase, while holding constant the forward running speed and the duration of the stance phase. The third method for controlling step length adjusted the duration of the stance phase, while forward running speed and the duration of the flight phase were held constant. The various adjustments were made by varying the foot position, leg thrust, and leg stiffness on each step. The experiments showed that all three methods were able to provide changes in the step length while maintaining balance, but the forward speed method gave the widest range of adjustments with good accuracy.

Each of the three methods for controlling step length adjusts one of the parameters of the step. An alternative strategy, which I call direct placement, places the foot directly on the desired foothold. In general, this placement disturbs the legged system's balance and forward speed and requires corrective action on the next step. Direct placement cannot be used alone as a method for controlling step length; however, when it is combined with one of the other methods for controlling step length, the biped is able to step on a single target with high accuracy.

9.1 Control of Step Length

The length of a step is the distance between two successive footholds, as illustrated in figure 9-1. It is the distance traveled during the stance phase plus the distance traveled during the flight phase:

Lstep -" XsTs + _c.fTI. (9.1) 129

The distance traveled by the body during a given period is the product of the duration of the period and the forward speed. Therefore, variations in the duration of the flight phase, of the stance phase, or in the forward running speed each influence the step length. These observations suggest three methods for controlling step length while maintaining balanced running:

• Forward Speed Method--For given durations of the stance and flight phases, forward

running speed determines step length. The control system manipulates the forward

running speed by positioning the foot to accelerate or decelerate tile system on each

step. The control system can position the foot to cause zero, positive, or negative

net acceleration during the next stance phase. The forward position of the toot at

touchdown is specified by

Ts_s X/h = 7 + ke(_f - Xd), (9.2)

where Ts is expected duration of the next stance phase, _:_ is the expected forward

L. _1 F" "1 step length

/i

IIIY, IIIIIIIIX, II7 stance flight travel travel

Figure 9-1. Tile step length is the distance traveled during the stance phase plus the distance traveled during the flight phase. The length of a step can be modified by changing the forward speed, duration of the stance phase, or duration of the flight phase. [[30 SUMMARY

speed during the stance phase, xl is the present forward speed (during flight), _:a is the desired forward speed for the next flight phase, and k_ is an empirically determined gain. For the experiments described in this thesis, I estimated the forward running speed during the next stance phase to be

2 (9.3)

This estimate takes into account that the forward running speed will change from its current value to the desired value during the stance phase and that a normal pattern of deceleration and acceleration occurs during each step.

• Flight Duration Method--With constant forward speed, the duration of the flight phase determines the distance traveled during flight. The duration of the flight phase is determined by the vertical energy of the system when the foot leaves the ground and the difference between the altitude of the body at liftoff and touchdown. If the altitude of the body is the same at touchdown and liftoff, the duration of the flight phase is

2_1o Tf = _, (9.4) g

where 21ois the vertical velocity at liftoff and g i8 the acceleration of gravity.

At the peak of the flight phase, all vertical energy takes the form of potential energy of elevation, and the altitude of the body indicates the duration of the flight phase. Therefore, the measure of energy at any time during the stance phase predicts the duration of the flight phase. The control system adjusts the vertical energy throughout stance by modulating the thrust delivered by the leg actuator. This thrust makes up

for mechanicaJ losses and produces the desired changes in the duration of the flight phase from one step to the next.

The vertical energy of the system at liftoff is

E = lm_o + mgzlo, (9.5)

where zlo is the vertical altitude of the body at liftoff and m is the mass of the system.

The control system manipulates the thrust delivered by the leg during stance so that the energy at liftoff results in the correct flight duration. Combining (9.4) and (9.5), 131

provides an equation for the desired vertical energy as a function of the desired flight duration:

• Stance Duration Method--The distance the body travels during the stance phase is the product of the average forward running speed and the duration of the stance phase. The duration of the stance phase is determined, to first order, by the spring-mass oscillator formed by the system mass bouncing on the stiffness of the leg. The duration of the stance phase is approximately one half cycle of the natural oscillation, Ts _ _r/_v0, where w0 is the natural frequency of the system. The natural frequency is approximately _, where k is the stiffness of a linear approximation to the leg air spring and m is the mass supported by the leg spring, (upper leg, body, and other leg).

The control system manipulates the stiffness of the leg by controlling the resting air pressure in the leg spring during the flight phase. Data from experiments with

the running machine were used to find an empirical relationship between the resting pressure of the air spring and the duration of the stance phase. Higher pressures cause the spring to be stiffer and reduce the duration of the stance phase. This relationship is observed to be independent of vertical velocity at touchdown and forward speed, except when the spring is very soft. The control system manipulates the stance duration by adjusting the pressure of the air spring to control the distance traveled during the stance phase and the step length.

I performed two experiments for each method of controlling step length. In the first experiment, the control system specified a pattern of desired values for the adjusted pa- rameter while specifying fixed nominal desired values for the two unadjusted parameters. The purpose of this experiment was to measure the accuracy with which the adjusted parameter--forward speed, flight duration, or stance duration--could be controlled. In the second experiment, the control system specified a pattern of desired step lengths. A desired value for the adjusted parameter was determined on each step based on the desired step length and the nominal values used for the unadjusted parameters. The purpose of this experiment was to measure the precision with which step lengths could be controlled. Pre- 132 SUMMARY cise control of step length requires that the unadjusted parameters do not vary in reaction to manipulations of the adjusted parameter. For instance, when the foot is positioned to control forward speed, the action must not disturb the duration of the stance or flight phase.

Direct Placement

One might ask what would happen if the control system temporarily ignored the need for balance, and placed the foot exactly on the chosen foothold. Direct placement could be expected to place the foot precisely on target footholds, but at the expense of stability whenever there was a substantial discrepancy between the locations of the target foothold and the balance foothold. The system might recover its balance on subsequent steps if the discrepancy were small, but it would tip over entirely if the discrepancy were large.

If one of the three methods for controlling step length were used to move the balance foothold close to the desired terrain foothold, then direct placement might be used to placed the foot precisely on the desired foothold. The separation between the balance foothold and the actual placement would be small enough for the system to regain its balance on subsequent steps.

I tested direct foot placement in conjunction with the forward speed and flight duration methods for the task of stepping on a target. In both cases, foot placement errors were essentially eliminated. Whatever disturbances direct placement caused to the stability of the system in these experiments were not visible to me when I watched the biped perform this task.

Direct placement fails when the task involves a long series of footholds. In that case, the disturbances caused by direct placement generally accumulate on each step, making balance more and more difficult to maintain.

9.2 Results

To measure the precision of control for the adjusted parameters, the control system specified a pattern of desired variations for the adjusted parameter while specifying fixed nominal 133 values for the two unadjusted parameters. The nominal values were approximately Tf,nom = 0.4s, Ts,nom = 0.15s, and iCnom = 1.1m/s. These nominal values provided an operating point about which all manipulations were made. The first experiment manipulated forward speed. The forward speed ranged between 0.25 m/s and 2.0 m/s, with an average absolute error of 0.06 m/s, or 5% of the nominal forward running speed. The second experiment manipulated flight duration. Flight durations varied between 0.2 s and 0.5 s. The average absolute error in flight duration was 0.03 s, or 5% of the nominal flight duration. The third experiment manipulated stance duration. The desired stance durations varied between 0.1 s and 0.2 s. The average absolute error was 0.005s, or 1% of the nominal stance duration.

To measure the control of step length, the control system specified a pattern of desired step lengths. For the forward speed method, step lengths varied between 0.1 m and 1.1 m, with an average absolute error of 0.07m, or 12% of the nominal step length, (which was

0.6m = Xnom(T,f,nom + Ts,nom)). For the flight duration method, the average absolute error in step length was 0.07m, 12% of nominal. For the stance duration method, the average absolute error in step length was 0.03 m, 5% of the nominal step length. The error measurements for each method were made by including only those step lengths that were within the range obtainable by the method.

The three methods for controlling step length can be compared in terms of accuracy and range. Accuracy is a measure that reflects the error between the desired and actual step length. Range is the difference between the minimum and maximum possible step length. The accuracy of a method determines the foothold size that could be used successflllly by the legged system. If a legged system were to use a foothold 0.1 m long and 1.0m distant, it would need to take a step of 1.05 m with an error of less than +0.05m. Otherwise it would not land on the foothold. Good accuracy does not guarantee that a method will be successful in controlling step length. The controller must also be able to vary step length over a wide range. For example, if a system were running with a step length of 1 m but no acceptable foothold lay 1 m ahead, the system would have to take a shorter or longer step to avoid stepping on the undesirable region of the terrain. If the undesirable region were large, the required adjustment might be substantial.

Table 9-1 gives the minimum and maximum step lengths obtained with each method. 134 SUMMARY

Adjusting forward speed produced variation in step length that was twice as large as that obtained by manipulating flight duration and more than ten times as that obtained by manipulating stance duration. The range of each method was affected by the range of the adjusted parameter as well as by the nominal values selected for the two unadjusted parameters. The range of any of the methods could be altered by changing the nominal values of the three parameters. The nominal values used for the experiments were chosen to be in the middle of the range for each parameter and provided an operating point at which all three variables were well controlled.

Table 9-1 also gives the mean and standard deviation of the error in step length for each method. Forward speed and flight duration were tested using the same pattern of desired step lengths, but the error calculations included only those step lengths that fell within the range of the method. A smaller range of desired step lengths was used to test the stance duration method so that more data points would lie within the achievable range of the method. Manipulating stance duration provided the most accurate control. Manipulating forward speed and flight duration provided less accurate control of step length, but that control was provided for a much larger range of step lengths.

Range and accuracy are not the only evaluation criteria for a method for controlling step length. The choice of method may be dictated by the maneuver to be performed after the target. If the maneuver requires a high forward speed then adjustments in forward speed near to the target might be detrimental to the performance. The level of accuracy required on the step may also influence the choice of method. The forward speed method cannot be easily combined with direct placement and for situations where high accuracy is required the flight duration method might be preferable.

Step Length Error in Step Length Control Method minimum maximum range mean standard deviation forward speed 0.00m 1.10m 1.10m 0.05m 0.07m flight duration 0.32 m 0.72 m 0.40 m -0.04 m 0.09 m stance duration 0.55m 0.66m 0.11 m -0.01 m 0.04 m

Table 9-1. Maximum and minimum values for the step lengths produced by each method and the mean and standard deviation of the error in step length for each method. 135

9.3 Demonstrations

Step on Target

Using the three methods to adjust the length of its steps, the planar biped ran on simple rough terrain. One task was to place a particular foot on a target foothold. This task is similar to the one faced by a long jumper who must step accurately on the takeoff board to obtain the longest possible jump. To perform this task, the biped began adjusting its step Length about 5 m before it reached the target foothold. With no control of step length, the error would have been uniformly distributed with a range of plus or minus the step length (+0.55 m) and the standard deviation of the error would be 0.32 m. When the control system used the forward speed method for adjusting step length the mean and standard deviation of the error in foot placement were -0.004 m and 0.023 m. When the forward speed method was combined with direct placement the errors on the final step were essentially eliminated.

Leap over Obstacle

The biped leapt over obstacles by adjusting the length of its steps as it approached an ob- stacle. The approach was much like the place-foot-on-target demonstration just described. The control system adjusted step length on the approach to align the machine appropri- ately with the obstacLe prior to the leap. When it reached the target takeoff point, the biped jumped as high as it could and shortened its legs to increase clearance. The machine has jumped over a rectangular obstacle 0.36 m high and 0.32 m long on fifteen consecutive attempts. It has also jumped through a hoop.

Climb Stairs

The biped has run up and down a flight of three stairs. As the machine approached the stairs, the forward speed method was used to place a foot on a target foothold just below the first step. During the climb up and down the stairs, the control system used the forward speed method to match step lengths to the stair tread depth and it manipulated flight duration to account for stair riser heights. The precision of step length control was 136 SUMMARY degraded during stair climbing, due to the changing altitudes of the footholds. The reduced vertical velocity at touchdown during the descent of the stairs caused the duration of the stance phase and the forward running speed to decrease more than was expected, and this error resulted in shorter steps than expected. Despite these limitations, the machine usually climbed the stairs successfully and on one occasion ran up and down the stairs on seven consecutive trials.

9.4 Future Research

Several areas for future research are motivated by the work described in this thesis:

• How might the three methods for adjusting step length best be combined?

• Can the methods for controlling step length be used for running on stepping stones?

• What extensions to the methods are required for three-dimensional rough terrain?

• What reflex responses would help a legged system running on partially unknown terrain?

The remainder of this chapter discusses these areas in more detail.

9.4.1 Combining Methods

The comparison of the three methods for controlling step length provides some insight into [low the methods might best be combined. Adjustments in forward speed provide the largest range of step lengths and adjustments in flight duration provide a smaller but still useful range. These observations suggest that it would be reasonable to allocate the change in step length between forward speed and flight duration in proportion to the range of the methods. For the biped, two-thirds of the change in step length would be produced by adjustments in forward speed and one-third by adjustments in flight duration. The change in step length could also be allocated so that it tended to keep each variable in the center 137 of its working volume, or in the area of its working volume where control is most accurate.

The three methods require action at different points in the step. Control of forward speed occurs during the flight phase of the step preceding the one that is being controlled. Control of flight duration occurs during the stance phase of the step being adjusted. Direct placement occurs at the last possible moment, just before the final touchdown. These observations suggest that it might be advantageous to adjust step length throughout the step. First, a change in forward speed would be used to make most of the adjustment in step length. Part way through stance, when the effect of the adjustment in forward speed could be predicted, flight duration could be adjusted to absorb the remainder of the error. Direct placement could be used for the final positioning when very high accuracy was needed and precise control of forward speed on the following step was not crucial.

9.4.2 Other Demonstrations

The biped has demonstrated an ability to land consistently on a particular location. Many demonstrations of rough terrain tasks can be built on this framework. A short list includes jumping over, onto, or through obstacles, high jumping, long jumping, triple jumping, hurdling, place kicking a football, and performing a flip off a springboard.

The biped has performed only one task that required several consecutive footholds: running up and down a flight of three stairs. Stair climbing is a special case of the stepping- stone problem because the stairs are evenly spaced. A more rigorous test of the control of step length would be provided by using a series of randomly spaced footholds or a series of blocks that varied both in height and in spacing.

9.4.3 Three-dimensional Rough Terrain

To run on three-dimensional rough terrain, a legged system must be able to change its direc- tion of travel. A one-legged machine and a four-legged machine built in the Leg Laboratory have demonstrated this ability (Raibert 1986). The machines use algorithms that general- ize the concept of the neutral point and the control of speed to two dimensions. Although 138 SUMMARY the control of forward and lateral speed is not yet exact, the basic algorithms have been demonstrated. The algorithms could presumably be extended in a manner similar to the extensions for the control of forward speed for a planar biped.

Sensing is a more difficult problem for a three-dimensional machine than for a planar machine. A planar machine is connected to the laboratory floor by a kinematic chain even during flight, and the control system always has exact knowledge of the machine's position in the room. On three-dimensional machines, no such linkage or opportunity for simple position measurements exists. The motion of the legs with respect to the body during stance provides vertical, forward, and lateral velocity information. The velocities can be integrated during flight to provide position information. With no mechanism for resetting the position information while the machine is running, this procedure is subject to drift and may not be adequate for running over rough terrain.

An alternative sensing mechanism would provide range information. Although the control system would not know the machine's exact position, it would know the machine's position with respect to obstacles in its environment. This information is crucial for running over rough terrain.

One ramification of the use of range information is that the control system's knowledge of an obstacle's location improves as the machine approaches the obstacle. This property of the sensor information may guide the choice of an algorithm for selecting footholds. For example, when the planar biped approached a single target marked on the floor, it used steps of equal length on the approach. This algorithm distributes the necessary correction equally over all the steps in the approach and relies on the fact that the control ,;ystem knows the exact distance to the obstacle at the beginning of the run-up. If the accuracy of the terrain information improved as the machine approached the obstacle, then it might be necessary for larger adjustments in step length to take place near the obstacle.

9.4.4 Reflexes

A legged system running on rough terrain outside of the laboratory will not have a compete map of the terrain. Some footholds will prove to be slippery or soft after the legged system 139

is already committed to using them. Obstacles that were overlooked by the sensors may interfere with the normal running sequence. The ground may prove to be higher or lower than predicted. The legged system will need quick, reflex-like mechanisms to handle these unexpected events.

Other researchers have begun to address the question of reflexes for statically stable legged systems. Hirose's quadruped (1984) used a reflex response to raise its leg over obstacles encountered during the swing phase. Wong and Orin (1988) developed mechanisms for detecting foot slippage for a leg similar to the one used on the OSU ASV.

Developing a similar set of reflexes for dynamically stable locomotion is an interesting area for further research. If the control system were able to detect foot slippage, it could reduce the torques on the slipping leg or position another leg to catch the machine before it fell too far. If the system realized during flight that the ground under the next foothold

was lower or higher than expected, it might be able to extend or shorten the landing leg to compensate. And finally, direct placement could be used as a reflexive action. If the legged system realized that the next foothold was not acceptable, tile control system could simply place the foot on a better location on the terrain.

9.5 Conclusion

This thesis is only a first step in the exploration of locomotion on rough terrain. I began with a machine that used foot placement to control balance and developed algorithms that manipulated the running cycle to place the foot on particular targets while maintaining balanced running. Further research should result in both more agile mechanisms and a greater understanding of the science of legged locomotion.

Bibliography

Brooks, C. 1981. Women's hurdling: Novice to champion (Leisure Press: West Point.. NY). Cavagna, G. A., Heglund, N. C., Taylor, C. R. 1977. Mechanical work in terrestrial loco-

motion: Two basic mechanisms for minimizing energy expenditure. American Journal of Physiology 233:R243-R261.

Cavagna, G. A., Thys, It., Zamboni, A. 1976. The sources of external work in level walking and running. Journal of Physiology 262:639-657.

Chepponis, M. A. 1987. Control systems for legged locomotion. Bachelor's Thesis, Mas- sachusetts Institute of Technology, Cambridge, MA.

Cruse, H. 1979. A new model describing the coordination pattern of the legs of a walking stick insect. Biological Cybernetics 32:107-113.

Devjanin, E. A., Gurfinkel, V. S., Gurfinkel, E. V., Kartashev, V. A., Lensky, A. V., Shnei- der, A. Yu., Shtilman, L. G. 1983. The six-legged walking robot capable of terrain adap- tation. Mechanisms and Machine Theory 18:257-260.

Ecker, T. 1974. The somersault long jump. Athletic Journal 54: 12-13, 77-80.

Ecker, T. 1976. Track and field: Technique through dynamics (Tafnews Press: Los Altos, CA)

Fitch, J. M., Templer, J., Corcoran, P. 1974. The dimensions of stairs. Scientific American April:82-90.

Franklin, R. F. 1985. Research on quadrupedal locomotion over rough terrain, A summary

141 142 BIBLIOGRAPHY

of the first year's results. The Environmental Research Institute of Michigan.

Greene, P. R., McMahon T.A. 1979. Running in circles. The Physiologist. 22(6): 535-536.

Gurfinkel, V. S.., Gurfinkel, E. V., Shneider, A. Yu., Devjanin, E. A., Lensky, A. V., Shtil- man, L. G. 1981. Walking robot with supervisory control. Mechanism and Machine Theory 16:31-36.

Hirose, S. 1984. A study of design and control of a quadruped walking vehicle. International Journal of Research 3:113-133.

Hodgins, J. 1988. Legged Robots on Rough Terrain: Experiments in Adjusting Step Length. In Proceedings of the IEEE International Conference on Robotics and Phila- delphia, March 1988.

ttodgins, J., Koechling, J., Raibert, M. H. 1986. Running Experiments with a Planar Biped. In Robotics Research: The Third International Symposium, 0. Faugera_s, G. Giralt (eds.). (MIT Press, Cambridge, MA).

Hodgins, J., Raibert, M. H. 1987a. Planar biped goes head over heels. In Proceedings of the ASME Winter Annual Meeting Boston, December, 1987.

Hodgins, J., Raibert, M. H. 1987b. Biped gymnastics, In Robotics Research: The Fourth

International Symposium, B. Bolles, B. aoth (eds.). (MIT Press, Cambridge, MA).

Kaneko, M. Tanie, K., Than M. 1988. A control algorithm for hexapod walking machine over soft ground. International Journal of Robotics Research 3:294-302.

Koechfing, J. C. 1989. The Limits of Running Speed: Experiments with a Legged Robot. Ph.D. Thesis, Carnegie Mellon University, Pittsburgh, Penn.

Koechling, J., Raibert, M. 1988. How fast can a legged robot run? In Symposium in Robotics, DSC-Vol. 11, K. Youcef-Toumi, H. Kazerooni (eds.), American Society of Mechanical Engineers.

Lee, D. N., Lishman, J. R., Thomson, J. A. 1982. Regulation of gait in long jumping. Journal of Experimental Psychology 3:448-459.

Liston, R. A. 1964. Walking machine. Journal of Terramechanics 3:18-31.

Liston, R. A. 1970. Increasing vehicle agility by legs: The quadruped transporter. Presented at 38th National Meeting of the Operations Research Society of America. 143

McGhee, R. B. 1976. Robot locomotion. In Neural Control of Locomotion, R. N. Herman, S. Grillner, P. S. Stein, D. G. Stuart (eds.). (Plenum Press: New York, NY).

McGhee, R. B. 1980. Robot locomotion with active terrain accommodation. In Proceedings of National Science Foundation Robotics Research Workshop, University of Rhode Island.

McGhee, R. B. 1983. Vehicular legged locomotion. In Advances in Automation and Robotics, G. N. Saridis (ed.). (JAI Press).

McGhee, R. B., Iswandhi, G. I. 1979. Adaptive locomotion of a multilegged robot over rough terrain. IEEE Trans. Systems, Man, and Cybernetics SMC-9:176-182.

McMahon T.A. 1985. The role of compliance in mammalian running gaits. Journal of Ex- perimental Biology 115:263-282.

McMahon T.A. 1988. Compliance and gravity in running. In Biomechanics of Normal and Prosthetic Gait, BED. Vol. 4, J. L. Stein (ed.), American Society of Mechanical Engineers.

McMahon, T.A., Greene, P. R.. 1979. The influence of track compliance on running. Journal Biomechanics 12:893-904.

McMahon, T.A., Valiant, G., Frederick, E. C.. 1987. Groucho running. Journal of Applied Physiology 62: 2326-2337.

Morrison, R. A. 1968. Iron mule train. In Proceedings of Off-Road Mobility Research Sym- posium. International Society for Terrain Vehicle Systems, Washington, D.C., 381-400.

Mosher, R. S. 1968. Test and evaluation of a versatile walking truck. In Proceedings of Off- Road Mobility Research Symposium, International Society for Terrain Vehicle Systems, Washington, D.C., 359-379.

Nashner, L. M. 1980. Balance adjustments of humans perturbed while walking. Journal of Neurophysiology 44:650-664.

Okhotsimski, D. E., Gurfinkel, V. S., Devyanin, E. A., Platonov, A. K. 1977. Integrated walking robot development. In Conference on Cybernetic Models of the Human Neuro- muscular System. Engineering Foundation.

Okhotsimski, D. E., Platonov, A. K. 1973. Control algorithm of the walker climbing over obstacles. In International Joint Conference on , Stanford, CA.

Okhotsimski, D. E., Platonov, A. K. 1975. Perceptive robot moving in 3D world. In Proceed- 144 BIBLIOGRAPHY

ings of the IV International Joint Conference on Artificial Intelligence. Tbilisi, USSR, 3-8 Sept. 1975.

Ozguner, F., Tsai, S. J., McGhee, R. B. 1984. An approach to the use of terrain-preview information in rough-terrain locomotion by a hexapod walking machine. International Journal of Robotics Research 3:134-146.

Patla, A.E., Robinson, C., Samways, M., Armstrong, C.J. 1989. Visual control of step length during overground locomotion: task-specific modulation of the locomotor synergy. Journal of Experimental Psychology, 15(3).

Pearson, K. G., Franklin, R. 1984. Characteristics of leg movements and patterns of coor- dination in locusts walking on rough terrain. International Journal of Robotics Research 3:101-112.

Raibert, M. H. 1986. Legged robots that balance (MIT Press: Cambridge, MA).

Raibert, M. H., Brown, It. B., Jr. 1984. Experiments in balance with a 2D one-legged hop- ping machine. ASME Journal of Dynamic Systems, Measurement, and Control 106:75-81.

Raibert, M. H., Brown, H. B., Jr., Chepponis, M. 1984. Experiments in balance with a 3D one-legged hopping machine. International Journal of Robotics Research 3:75-92.

Raibert, M. H., Brown, H. B., Jr., Chepponis, M. Hastings, E., Koechling, J., Murphy, K., Murthy, S., Stentz, A. 1983. Dynamically Stable Legged Locomotion-Third Annual Report. CMU-RI-TR-83-20, Carnegie Mellon University, Pittsburgh, PA.

Raibert, M. H., Brown, H. B., Jr., Chepponis, M., Hodgins, J., Koechling, J., Miller, J., Murphy, K. N., Murthy, S. S., Stentz, A. J. 1985. Dynamically Stable Legged Locomotion-- Fourth Annual Report. CMU-LL-4-1985, Carnegie Mellon University, Pittsburgh, PA.

Song, S. M., Waldron, K. J. 1988. Machines that walk (MIT Press: Cambridge, MA).

Waldron, K. J., McGhee, R. B. 1986. The adaptive suspension vehicle. IEEE Control Sys- tems Magazine. 6(6):7-12.

Warren, W. H., Jr. 1986. Action modes and laws on control for the visual guidance of action. In Movement behavior: The motor-action controversy. 0. Meijer and K. Roth (eds.) (North Holland: Amsterdam).

Warren, W. H., Jr., Lee, D. N., Young, D. S. 1986. Visual control of step length during 145

running over irregular terrain. Journal of Experimental Psychology: Human Perception and Performance. 12(3):259-266.

Wong, H. C., Orin, D.E. 1988. Reflex control of the prototype leg during contact and slip-

page. In Proceedings of the IEEE International Conference on Robotics and Automation, Philadelphia, PA March 1988.