Complex
Here we limit the discussion to leaping transitions, namely transitions that take the robot from
I1010={FB,RB}toI0000={}. The transitions directly to the two 2-DOF systems adjacent to the
start (I1000 andI0010) are impossible, so a path through one of the ends of this edge is required,
namely the robot must put down either the front or rear leg.
3.2.1 Leg Strategy
The saturated torque assumption yields a binary control input for each leg, pushing forwards+or backwards−, and the combined leg strategyS∈[+,−]×[+,−]on the robot is then specified by an
ordered pair such as(+,+).
These four distinct control inputs are each capable of exciting a multitude of pathways through the directed graph of Fig. 3.3, yielding the large variety of leaps we explore empirically in Sec- tion 3.3. Furthermore, the half circle legs imply that, for the moost part,(+,+)produces a forward lunge, while(−,−)produces a flip. The rest of this section will focus on(+,+)as an example of the insight afforded by the grammar of leaps enumerated in (2) – (7), however all four basic strate- gies (and a representative selection of the varied leaps achievable by suitably coordinating their relative timing) are documented in the experimental section.
3.2.2 Coordination Timing
Choose as a reference time the touchdown of the front leg, and consider the relative timings of the other transitions. The second leg will touch down att2, which is a coordination time,C, that can be
chosen arbitrarily. More complicated leg strategies that depart from the assumptions of Section 4.1 may have a higher dimension coordination timing, and might well explore a slightly richer subgraph of Fig. 3.3.a than the more restricted leaping grammar we focus on in this chapter. The time of transition to the air for each leg,t1aandt2a, are implicitly defined based on the Hamiltonian flow and
the liftoff guard condition on the hybrid dynamics,a(f(t)) =0, which in a deterministic world are fixed by the choice of jumping strategySand are a smooth functionT :R→Rof the coordination
timingC,
t1a=T1Sa(C); t2a=T2Sa(C) (1)
where in this examplet1a=T1(+a,+)(t2). A closed form for T is not explicitly needed, but even
without it some basic properties will trivially be true, such as 0<T1aandt2<T2a.
3.2.3 Transition Paths
Now we can write out all of the possible state transitions for a jump, based on the set of possible cell transitions described above. The transition path, i.e., the “leap-word”, is an ordered list, and the
set of words that are possible are thus (with the zero time transition states suppressed, as well as the always present initialI1010and finalI0000states),
(I0110,I0010,I0001)⇔t1∗a<t2 (2) (I0110,I0101,I0001)⇔0<t2<t1∗a,t1a<t2a (3) (I0110,I0101,I0100)⇔0<t2<t1∗a,t2a<t1a (4) (I1001,I0101,I0001)⇔t2∗a<t2<0,t1a<t2a (5) (I1001,I0101,I0100)⇔t2∗a<t2<0,t2a<t1a (6) (I1001,I1000,I0001)⇔t2<t2∗a (7)
as shown in Fig. 3.3.b. Specific physical parameters may well make some words impossible. For RHex the front leg tends to lift off the ground first, and so the (4) word is not realizable.
Additionally there can be degenerate “double” transitions that are quite interesting, such as the basic jump whent2=0. The restriction that T1a is strictly greater than zero, and T2a is strictly
greater than t2, along with the fact that for RHex T1Sa(0)6=T2Sa(0)∀S, eliminates all higher order
degeneracies.
3.3
Experiments
In order to explore various regions of the space of jumping controllers,(S,C), and to test the claim that the underlying topological construction predicts interesting behavioral consequences, we have run over 100 trials sampling the space6. Each of the four leg strategies was tested with a sampling of coordination timing parameter values. As RHex actually has 3 legs in the plane, in these experiments the “leading” leg was disabled, i.e. the front leg for(+,+), middle leg for(+,−)and(−,+), and rear leg for(−,−), but we will relax this requirement later.
Here we report on the height, displacement, and pitch at apex7, with the(+,+)case highlighted in Fig. 3.4, and the remaining cases shown in Fig. 3.5. Full data tables, including additional mea- surements are available at the end of this chapter in Section 3.5, and the video attachment to [91]
6In order to minimize the effect of battery charge level and other time varying effects, the trial order was randomized an the batteries were never allowed to fall below 75% of full.
-0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 0.2 0.25s -5 0 5 10 15 20 25 30 35 40 mm mm deg (16) (15) (14) (12) (11) 250 300 350 400 450 500 550 600 140 160 180 200 220 240 260 280 300 z x φ
Figure 3.4: Apex height (black square), displacement (red triangle), and pitch (blue circle) for
(+,+)jumping strategy at various relative leg timings.
shows a selection of behaviors. The top of Fig. 3.4 lists the coordination “word”, (2) – (7), and de- picts in a graphical cartoon the different paths through the cell complex, with vertical lines marking approximate transition points8. It is clear that depending on what combinations of these metrics the task requires, several different regions in this space could be useful.
The repeatability can be quantified by comparing the results of 20 additional (+,+) jumps (listed in Table 3.1) to a linearly interpolated estimate based on Fig. 3.4. This shows an RMS error of 4.3 mm inz, 12.4 mm inx, and 1.4◦inφ.
But beyond demonstrating which control strategies result in what kinds of jumps, this data clearly shows notable changes near the boundaries between transition paths through the cell com- plex. For example, the height achieved by the(+,+)strategy has a nearly discontinuous jump just
8Paths start at the triangle, end at the square where they transition to the interior (aerial state), and paths outside the triangle represent the bottom face. This data was coded by hand from high speed video of each trial. Takeoff ambiguity is the main reason these transitions are approximate.
-0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 0.2 0.25s -140 -120 -100 -80 -60 -40 -400 -300 -200 -100 0 250 300 350 400 450 500 z x φ deg mm mm -0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 0.2 0.25s -50 -40 -30 -20 -10 0 50 100 150 200 250 300 160 180 200 220 240 deg mm mm -150 -0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 0.2 0.25s 50 -100 0 100 200 300 400 100 200 300 400 500 deg mm mm -100 -50 0
Figure 3.5: Apex height (black square), displacement (red triangle), and pitch (blue circle) for
(−,−), top,(+,−), middle, and(−,+), bottom, jumping strategies at various relative leg timings. aftert2=0 — there is a noteworthy advantage in height to letting the front leg start before the rear
leg. A similar jump is also present in the pitch however, which may or may not be a good thing depending on the task.
Qualitatively, the leaping strategies are quite different. The (+,+) strategy yields mostly a forward leap, while the (−,−) strategy yields largely a flipping behavior, though for t2>0 the
robot does not quite complete the flip and instead lands on its nose. The (+,−) strategy causes the robot to jump more or less vertically into the air. The(−,+)strategy is mostly a flip, but had trouble for positive values oft2. In those trials (as well as a couple for(−,−)) the front leg, which
is pushing backwards, stretched back along the ground until it hit the middle leg support. Since the motor was at full torque, the leg stuck to the corner of the frame for a short time. Therefore the front leg leading jumps in this strategy would benefit from a more subtle controller to avoid this.
3.3.1 Extensions
Here we present some anecdotal results that lie outside the scope of this thesis, however can still be informed by the methods presented here.
Three Legged Jumps
RHex actually has six legs, and not two. While it is easy to anchor the dynamics to the sagittal plane by keeping pairs of legs together, that still leaves three legs. Formally, the third leg will increase the number of hybrid states though not the dimension of the ground reaction complex (which is fixed by body dynamics). However in rigid, non-singular cases only two legs can actually maintain contact on the ground at a time.
However with compliance, and when operating near a singularity (such ast2=0, a common
occurrence on RHex) it is possible for the three legs to be used, but it may or may not be useful. Initial tests have shown that in the (+,+) case the third leg can only add about 1cm to the final height. In contrast, for the(+,−)case including the middle leg (in the−direction) added 7cm to the apex height, or about a 30% gain in potential energy.
Reversing Strategies
In a rigid system, reversing the direction of force applied by a motor will simply bleed off some of the energy that is already in the system. However for the compliant half circle legs of RHex, when the leg is moving forward and therefore on the round half of the leg, reversing the torque9 will sometimes cause the leg to jam and unfold, producing a novel motion. The reverse is not true — if the leg is pushing backwards it will be on the point of the toe, and reversing the direction will
9A rapid reversal of motor torque requires well hardened electronics with adequate flyback protection, however the electronics in RHex were designed with this in mind [65].
usually just lift the leg off of the ground early, or if it did jam simply curl the leg up and slow down the robot. A less extreme reversal has been used in the past [128] to correct the pitch instability of pronk, though the role of the compliant legs was not fully understood. Note that this strategy is taking advantage of the shape change that the compliance allows, but does not recover any energy stored in the unfolded spring.
Since the principle motivation for leg reversal is pitch stabilization, we have tested a hand tuned reversing strategy on the(+,+)jump witht2=0, as this may be the most used jump on RHex but
does have about 15◦ of unwanted pitch at apex (more by the time the robot lands). In these initial tests, we have found that in fact stubbing the toe at the end of stroke causes about 20◦ of pitch correction, albeit at the cost of forward velocity which dropped by 18%. Surprisingly though the stubbed toe experiments did show a slight (2cm) gain in maximum height, which we attribute in part the compliant leg being stretched by this behavior, pushing the robot upwards. Overall the reversing jump had less total energy, but the change in pitch and slight height benefit make it a useful strategy in certain situations.
3.4
Behaviors
This section applies the preceding catalogue of open loop controllers to the generation of several useful behaviors.
3.4.1 Leaping Behaviors
There are many cases where the apex state after a jumping transition is inherently useful. In order to cross a small gap, RHex has previously been shown (but not published) to be capable of crossing a 40cm gap (using the middle and rear legs only). This has been extended to 50.5cm (1 body length) using the(+,+)strategy andt2=0.02, a 26% increase. The backflip has been better studied as a
way to recover a preferred orientation [152], but has always been completed by rolling on the nose (i.e. never leaving theI1000={FB}state), implying an apex height of 27cm (though this work did
a 48cm apex height (300% of standing height). Because both of these behaviors entail leap-words virtually identical to that past work, we attribute most of the gains to the substantially improved hardware of the current generation robot [65].
While the backflips achieve the highest apex, they are pitched nearly vertical at that state. Fig. 3.5 reveals a new leap excited by the(+,−)strategy achieving a 23cm apex (143% of standing height) at less than 5◦pitch. Adding the third pair of legs yields a 30cm apex (nearly 200% of stand- ing height) at 17◦pitch. To the best of our knowledge such a near-level vertical leap has never before been elicited from RHex and represents an immediately beneficial consequence of enumerating the entire space of dynamic transitions.
3.4.2 Gap Crossing
A variety of compound jumping behaviors benefit significantly from the ability to select a specific initial leap. For example, several high kinetic energy RHex gaits have relatively small basins which can be very effectively “prepared” [27] by selecting the apex state from rest via a leap. However, here, we focus on compound jumps across bigger obstacles than any single leap can afford. Specifi- cally, a leap-step behavior initiated by a 3 legged(+,+)leap witht2=0, achieves a high, near-zero
pitch apex with significant forward velocity when a reversing strategy is used. Followed by a simple spring-mass stride (with the SLIP parameters adjusted by hand) [72], this leap-step crosses a gap of 60cm (almost 120% of body length), as shown in Fig. 3.6, representing to the best of our knowledge a 20% gain over the farthest gap jump previously achieved by any general purpose legged robot [23].
3.4.3 Jumping on to a Ledge
Another useful application of jumping is to gain access to a high step or ledge. Past quasi-static work on a similar robot has allowed the robot to access an incredible 53% of the body length10[39],
the equivalent of a 27cm step up for XRL. By inspecting the results in Fig. 3.4, it appears that a
(+,+) leaping strategy with a large t2 may be advantageous (i.e. push with the front legs well
10This work used leg length as the scale, however we feel that under these strategies the robot is gaining much more of an advantage from body length than from leg length.
Figure 3.6: XRL crossing a 60cm gap. Frames taken every 100ms from a high speed video. before the rear legs), as it reaches a significant height with some forward velocity and a moderate pitch. A timing parameter of aboutt2=0.18 was found to be the best, and was capable of lifting
the robot onto a 27cm ledge with either a two or three legged strategy, about the same as the best quasi-static behavior.
For a compound jump onto a ledge, a leap-step similar to the gap crossing behavior reached a ledge of 29cm, a slight improvement. However the previous section reveals far higher leaps are possible, though with significant pitching. This suggests a different compound jump whose initial leap terminates at a vertically pitched apex that vault the legs above a far higher ledge, with the hope of grabbing and pulling the robot up onto it during the second stride. A(−,−)leap witht2=0.06
achieves such a (nearly vertical) high apex with some net horizontal displacement. This leap-grab, with no modification, is indeed capable of hooking the robots legs onto a 73cm high table, or 145% of the body length (450% of leg length), as shown in Fig. 3.1.
The second stride in this compound jump, intended to pull the robot up onto the ledge, is not easy to achieve in the present open loop setting (see also Figure 6.1 and discussion in Chapter 6). Absent specialized climbing feet [165], the robot will typically slip off even a coarse-sandpaper- surfaced ledge, as it tries to gain purchase. Extensive tuning (requiring well over 400 attempts) finally achieved a successful stride whose properties lie beyond the scope of this thesis (requiring
leg compliance in extension — the rear legs are nearly completely uncurled — and subtle sliding interaction), yet likely is encompassed within the more general self-manipulation framework (Chap- ter 4). To the best of our knowledge, this compound jump enables to robot to climb onto a ledge higher than that achieved by any previous general purpose legged robot, nearly doubling the best reported prior effort (53% of body length, or 230% of leg length [39]).