Professional Documents
Culture Documents
Variable-Speed Quadrupedal Bounding Using Impulse Planning: Untethered High-Speed 3D Running of MIT Cheetah 2
Variable-Speed Quadrupedal Bounding Using Impulse Planning: Untethered High-Speed 3D Running of MIT Cheetah 2
( , ) ( , )
600
FzF
Force (N)
400 FzH
− ( , ) 200
αz αz
0
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
(a)
160
Force (N)
FxF
60
0
αx FxH
Fig. 2. Simplified Sagittal Plane Model of the MIT Cheetah 2 Robot. −60 αx
The legs are modeled as massless, and the effect of the legs on the body’s
−160
dynamics are included as forces at the shoulder of the robot similar to [18]. 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35
Time (sec)
(b)
to balance the impulse created by gravity as stance duration
decreases. Previously, we mainly addressed this problem Fig. 3. Force profile when Tstance = 133 msec and Tswing = 220 msec.
in [8]. This impulse planning algorithm also provides hori- Top: vertical force profile. Bottom: horizontal force profile.
zontal impulse in order to decrease oscillation in pitch while
maintaining forward running speed. The proposed algorithm The body’s mass m and inertia I are 33 kg and 2.9 kg m2
was successfully implemented on the robot utilizing a unique respectively, length l of the body is 0.7 m, and the center
high-bandwidth actuation of the MIT Cheetah 2 [5]. The of mass is located in the middle of the body. All the inertial
robot was able to run on a hard treadmill surface as well as and kinematic parameters are drawn from the CAD model of
a rough and soft grass field without any changes in controller, MIT Cheetah 2 robot. γFx and γH x
are the relative horizontal
showing that the proposed algorithm is robust to various distance from the shoulder to the foot (see Figure 2) and
ground stiffnesses. introduced to include the effect of the horizontal change in
The remainder of the paper is organized as follows: foot position change relative to the shoulder as the robot runs
Section II explains a simple but accurate model that de- forward. Provided that the horizontal leg stroke during stance
scribes important dynamic behaviors of the robot. Section III is 0.4 m (the value chosen by considering the length of the
explains the underlying principles of the impulse planning leg during the stance 0.5 m) and touch-down and take-off
algorithm that allow bounding gaits with different speeds. happen in symmetric configurations of the leg, the values of
Section IV details how the controller is implemented on the γFx and γHx
start with 0.2 m and decrease at the rate of the
robot. Section V summarizes the experimental results of the running speed v during stance.
bounding gait of the MIT Cheetah 2. Section VI concludes The model is symmetric in the fore-aft direction, and
the paper. dynamics in the direction of x and z are decoupled from
each other. Therefore, we can assume that the control of the
II. S IMPLIFIED S AGITTAL P LANE M ODEL vertical and horizontal directions will be separate problems.
A quadruped runner can be modeled as a two-legged This can be clearly seen from the equations of motion above.
sagittal plane model, as shown in Figure 2, because we
restrict our attention to the bounding gait where front and III. P ERIODIC L IMIT C YCLE D ESIGN USING I MPULSE
hind pairs of the leg act as in sync [19]. The generalized P LANNING
coordinates of the robot are taken as q := (x, z, θ) where x
If we integrate the first two equations of the dynamic
and z are the horizontal and vertical position of the body’s
model in (1) with respect to time over an interval [0, T ]
center of mass and θ is the angle of the body. This model
where 0 is the beginning of the step and T is the end of
assumes massless legs and the effect of the leg on the body’s
the step, then the integrated equation becomes,
dynamics is included in the horizontal ground reaction forces
x z
FF,H and vertical ground reaction forces FF,H at the foot Z T
of the front and hind legs. The equations of motion of the m(ẋ(T ) − ẋ(0)) = (FFx + FH
x
)dt
0
body are shown below. Z T Z T (2)
z z
m(ż(T ) − ż(0)) = − mgdt + (FF + FH )dt
0 0
mẍ = FFx + FH x
mz̈ = −mg + FFz + FH z This integrated form of the dynamics clearly depicts the
l
l
principle that change in linear momentum during the stride
I θ̈ = FFz cos θ + γFx + FH
z
− cos θ + γH x (1) shown in the left hand side of the equation equals the net
2 2
impulse created by total external forces shown in the right
l l hand side of the equation. Therefore, if force profiles for
+ FFx − sin θ + z + FH x
sin θ + z
2 2 FFx , FH
x
, FFz and FH
z
are chosen such as to make the net
5164
impulses created by external forces zero as following, Figure 3(a), which are parametrized as,
Z T
Fiz = h(αiz , si , Tstance , Tswing ), for i = F, H, (5)
(FFx + FHx
)dt = 0 (3)
0
Z T Z T where αz is the scalar value representing the magnitude of
− mgdt + (FFz + FHz
)dt = 0, (4) the force profile, as depicted in Figure 3(a), Tstance is the
0 0 duration of the stance where the legs affect the dynamics
then momentum at the start of step and at the end of the step of the body by the forces at the shoulder, and Tswing is
will be unchanged. Accordingly, the values of ẋ and ż at the the duration of the swing where the leg is not touching the
start of the gait and at the end of the gait will be same, ground. Because horizontal leg stroke during the stance is
satisfying the periodicity condition on ẋ and ż. Figure 3 set to 0.4 m, Tstance can be calculated as 0.4/v. si is the
shows an example of force profiles that satisfies (3) and (4). normalized time representing percentage of the stance phase
Vertical forces are selected to be positive completed and given by,
R T to balance with
the impulse created by the gravity − 0 mgdt. Horizontal
t−tmin
tmax −t i
min , for 0 ≤ si ≤ 1
forces of front and hind foot are chosen to be positive and i i
si = si = 0, for si < 0 (6)
negative to make the impulses created by them cancel each
si = 1, for si > 1
other.
Equation (4) is also used to scale the vertical impulse For the sake of brevity, the parameters tmin and tmax are
i i
created by FFz and FH z
as the running speed varies in order selected so that stance phase of the front legs starts at the
to balance the vertical impulse created by gravity. Given beginning of the gait and stance phase of the hind legs starts
that the relative distance in which the robot contacts the in the middle of the gait as illustrated in Figure 3.
ground during the stance is limited by the workspace of the
leg, the stance duration should be decreased as the running 1 1
tmin
F = 0, tmax
F = Tstance , tmin
H = T, tmax
H = T + Tstance
speed increases. Hence, duty cycle of the bounding gait 2 2
should decrease accordingly unless the duration of swing The force profile of the front leg is made up of 3rd -order
decreases significantly. The experimental data of dog running Bézier polynomials, where the Bézier coefficients are given
show that the stance time decreases as the running speed by,
increases, whereas the swing time remains constant over a z
wide range of speeds [20], [21]. Following this observation α [0.0 0.8 1.0 1.0] for si ≤ speak
βz = (7)
from biology, swing time is chosen to be constant as speed αz [1.0 1.0 0.8 0.0] for si > speak
varies in this paper. Then, the duty cycle decreases as running where, speak is the parameter to change the position of the
speed increases. As duty cycle decreases, a greater yet proper peak. Here, we set speak = 0.5 (the peak occurs in the middle
amount of vertical force must be provided to make the body of stance phase), but will adjust this value to speak = 0.3
jump up off the ground within decreased stance time while during the running experiment explained in Section V. The
also providing enough swing time for leg protraction and coefficients in (7) are chosen to ensure smooth continuity
retraction. between the two Bézier polynomials, and for easy scaling of
Horizontal force is selected to decrease pitch oscillation. the force profile. Additional simplification can be done by
We can make the direction of force at the front leg FF and assuming the same scalar value αz for the front and hind
hind leg FH point toward the center of mass by choosing legs.
horizontal force FFx to be negative and FH x
as to be positive Duration of the swing phase Tswing was chosen to be 0.22
as shown in Figure 3. By making the forces point toward the sec which is taken from the swing duration of Cheetah and
center of mass, we can reduce the moment arm of the forces Greyhound during galloping [20], [21].
with respect to the center of mass. This reduced moment arm 2) Modulation of Stance Duration: From the previous
decreases torque acting upon the body, thereby decreasing section, we can see that only two remaining parameters
motions in pitch. We set the magnitude of FFx and FH x
remain undefined for describing the vertical force profile,
identical to satisfy (3). which are the duration of stance Tstance and the magnitude of
In this rest of section, we will provide the details of how the force profile αz . Here, we will draw the relation between
to choose the force profiles. those two parameters using (4) which is rewritten here as,
Z T Z T
A. Vertical Force Profiles - Duty Cycle Modulation via z z
(FF + FH )dt = mgdt (8)
Vertical Impulse Scaling 0 0
This section presents the selection of vertical force profiles where T := Tstance + Tswing is the total duration of one
which not only make net vertical impulse zero but also step. Because the area under the Bézier curve can be simply
modulate the duty cycle of the running gait to achieve calculated by averaging the Bézier coefficients multiplied by
variable duty-cycle running. the length of duration, (8) is rewritten by,
1) Selection of Force Profile: The vertical forces FFz
and FH z
are chosen as time-dependent profiles shown in 2αz cTstance = mgT, (9)
5165
3 3
C. Periodic Limit Cycle
2 2
Periodic orbits have been found by searching for fixed
θ̇ (rad/s)
θ̇ (rad/s)
1 αx = 75N 1 αx = 75N
αx = 50N αx = 50N
0
αx = 25N
0
αx = 25N
points of the following Poincaré return map, as defined by
−1 αx = 0N −1 αx = 0N P : {(x, t) |t = 0 } → {(x, t) |t = T }1 ,
−2 −2
−3 −3 x∗ = P(x∗ , Tstance , αx ), (14)
−10 −5 0 5 10 −10 −5 0 5 10
θ (rad) θ (rad) A large number of fixed points have been computed
3 3 numerically for Tstance ∈ [0.0571 0.133] sec (corresponds
2 2
to the running speed v from 7 m/sec to 3 m/sec) and
θ̇ (rad/s)
θ̇ (rad/s)
1 αx = 75N 1 αx = 75N
αx = 50N αx = 50N αx ∈ [0 200] N using MATLAB’s fmincon function.
0 0
αx = 25N αx = 25N Figure 4 shows obtained periodic orbit for Tstance =
−1 αx = 0N −1 αx = 0N
−2 −2 114, 89, 73, 62 msec (v = 3.5, 4.5, 5.5, 6.5 m/sec) and αx =
−3 −3 0, 25, 50, 75 N. It is observed that larger values of αx provide
−10 −5 0
θ (rad)
5 10 −10 −5 0
θ (rad)
5 10 periodic orbits with smaller pitch oscillation. However, the
value cannot be increased excessively because of the friction
Fig. 4. Phase plot of body pitch angle θ for periodic orbit for various values cone constraints in the foot-ground interface. Therefore, we
of v and αx . Red dashed line represents the front leg stance phase. Black selected 50 N as the value of αx to make the friction
dotted line represents the hind leg stance phase. Start of the stance phase
is represented by the circle. Blue line represents the airborne durations. coefficient less than 0.2. We used the same value of αx over
Top Left: v = 3.5 m/sec Bottom Left: v = 4.5 m/sec Top Right: v = the range of stance duration Tstance ∈ [0.0571 0.133] sec
5.5 m/sec Bottom Right: v = 6.5 m/sec (v ∈ [3 7] m/sec) because, as observed in Figure 4, the ef-
fect of αx on the pitch oscillation does not vary significantly
where c = E 12 [0.0 0.8 1.0 1.0] + 12 [1.0 1.0 0.8 0.0] is
as speed changes.
the unit area under the force profile when αz = 1 and
Linearizing (14) about the fixed point x∗ corresponding to
Tstance = 1. From (9), αz is given by,
the periodic orbit results in a discrete linear system, which
mgT is given by,
αz = (10)
2cTstance ∆x[i + 1] = A∆x[i], (15)
Equation (10) will be used to calculate the magnitude of
where ∆x = x − x∗ , and
force profile αz when Tstance is given. Now, all the param-
eters associated with the vertical force profile are defined ∂P
A= . (16)
given the value of Tstance . Figure 3(a) shows an example of ∂x x=x∗
force profile when Tstance = 0.133 sec. Calculation of the largest eigenvalue of matrices A corre-
sponding to the Tstance ∈ [0.0571 0.133] sec and αx ∈
B. Horizontal Force Profiles - Decreasing Pitch Oscillation [0 200] N revealed that the obtained periodic orbits are
The horizontal forces FFx and FH x
are chosen to be unstable.
time-dependent profiles as shown in Figure 3(b), which are
D. Feedback Control
parametrized as,
In order to obtain locally stabilized periodic orbits, we
Fix = h(αx , si , Tstance , Tswing ), for i = F, H, (11) introduce a simple feedback controller during the stance
phase. The following simple PD control is added onto the
where, αx is the magnitude of the force profile. Horizontal vertical force profile Fiz obtained in (5),
Force Profiles are also selected as 3rd -order Bézier polyno-
mials, and the Bézier coefficients of the front leg are given Ffzb = −kpz (zi − zd ) − kdz (z˙i ), for i = F, H, (17)
by, where, zF and zH are the height of the front and hind
−αx [0.0 0.8 1.0 1.0] for si ≤ 0.5 shoulders, kpz is the stiffness, kdz is the damping, zd is the
βfx = (12) set point value for the height of the shoulders which is
−αx [1.0 1.0 0.8 0.0] for si > 0.5
set to 0.5 m. We could use a time-dependent trajectory for
The Bézier coefficients of the hind leg are given by, the set point obtained from the corresponding periodic orbit
x to exactly track the open-loop trajectory, but this causes
x α [0.0 0.8 1.0 1.0] for si ≤ 0.5
βh = (13) different sets of trajectories for different values of Tstance
αx [1.0 1.0 0.8 0.0] for si > 0.5
and αx . Because our focus is to obtain a stable periodic orbit
Because the areas of front and hind leg profiles cancel for various Tstance rather than to follow exact trajectories, a
each other as shown in Figure 3(b), (3) is satisfied. single set point value for all cases of Tstance and αx is sought
In the next section, we will search for periodic orbits after in this paper.
where the vertical force profiles with various values of 1 Application of a time-dependent force profile creates a non-autonomous
Tstance and horizontal force profiles with various values of dynamic system, resulting in a Poincaré section with states x and time t
αx are applied to the simplified model. [22].
5166
7 Shoulder Joint Shoulder Joint
Shoulder Joint
3 (0,0)
6.5
2.5 Knee Joint
6 Knee Joint
2
Speed (m/sec)
5.5 1.5
′
5 1
0.8
4.5
0.7 Foot
Foot ( , )
4
0.6
3.5 0.5
3 0
(a) (b) (c)
0 500 1000 1500 2000 2500 3000
Stiffness (N/m) Fig. 6. (a) MIT Cheetah’s leg consisting of three links. First and third
links are kept in parallel each other by parallelogram mechanism. (b) Two
Fig. 5. The largest eigenvalues of linearized Poincaré map for kp,z ∈ links kinematic conversion of original link structure. Using the torques ush
0 0
[0, 3000] and v ∈ [3, 7]m/sec. and ukn at shoulder and knee joints, forces F x and F z are generated.
(c) An actuator to create ab/adduction torque uab for each leg.
The following simple feedback is added onto the horizon-
tal force profile Fix to regulate the running speed. in two degree of freedom links. The first actuator torque
ush rotates the link represented by the thick solid black line,
Ffxb = −kdx (ẋi − v), for i = F, H (18) providing rotation of all three links relative to the body. The
second actuator torque ukn rotates the link represented by the
where, kdz is the damping, and v is the desired running
dashed red line, yielding rotation of the second link while
speed. Damping kd,x and kd,z are chosen to be 40 Ns/m
the first and third links are kept in parallel. Because the first
and 120 Ns/m respectively for the simulation. These are the
and third links are parallel, the original link structure can be
maximum values possible before the real-hardware becomes
kinematically converted to a mechanism with only two links
unstable due to the noise caused by the numerical differen-
shown in Figure 6(b). In addition to actuators for the knee
tiation of the encoder signal.
and shoulder angles, there is one more actuator to create
Because the feedback is added onto the original force
ab/adduction torque uab for each leg (see Figure 6(c)).
profile and influences the dynamics of the system, the be-
havior of the system will be changed accordingly. Therefore, A. Application of Force Profile and Feedback
new fixed points should be calculated numerically. A large
In this section, we obtain a static force/torque relationship
number of fixed points have been computed for different
to create horizontal, lateral, and vertical forces, and the
values of Tstance ∈ [0.0571, 0.133] sec and kpz ∈ [0, 3000].
rolling torque (F x , F y , F z , τ x in Figure 7) using the joint
x̄∗ = P(x̄∗ , kpz , Tstance ). (19) torques in each pair of legs. We could calculate the exact
required actuator torques to provide the desired horizontal
The eigenvalues of the linearized Poincaré map A for and vertical direction ground reaction forces by solving the
kp,z ∈ [0, 3000] and Tstance ∈ [0.0571, 0.133] are calculated, inverse dynamics, but a static force/torque relationship is
and the largest eigenvalues are plotted in Figure 5. The only considered in this paper instead. This approximation
result shows that addition of the feedback yields a stable in calculating the control inputs is reasonable because the
periodic orbit for a wide range of the value of kpz for robot’s leg is relatively light compared to the body (less than
all Tstance ∈ [0.0571, 0.133]. kpz is selected as 500 N/m
because the value provides a stable periodic orbit for all
Tstance ∈ [0.0571, 0.133]. We would like to note that this
value of stiffness 500 N/m is very small and around 10% of
,
the stiffness value used in the previous trotting experiments
of MIT Cheetah where only an impedance controller was
Forward
used [7], meaning designed force profiles will play an Shoulder
important role in control design to create bounding motions.
IV. I MPLEMENTATION OF THE ALGORITHM Knee
5167
10% of body mass).
The procedure for obtaining the relationship is two-fold.
Figure 8 depicts this procedure. In the first step, an auxiliary
( , )
planar coordinate system x0 zL 0
rotated from the xz coordi- ,
ab Shoulder Joint
nate system with ab/adduction angle qL is attached on the
shoulder joint (see Figure 8(a)). In this planar coordinate
system, we can obtain a mapping of the forces FLx and FLz
0 0
Knee Joint
′
at the left foot shown in Figure 8 to the torques ush L and uL
kn
′
′
where, Jx0 zL0 is the manipulator Jacobian obtained by taking (a) (b)
the partial derivative of the position of the foot relative to
the shoulder in x0 zL0
coordinates with respect to the knee and Fig. 8. Generation of the lateral force F y , vertical force F z , and rolling
0
torque τ x using forces FLz , FR z 0 and torques uab , and uab in two legs
shoulder joint angles. For the right leg, the same procedure is L R
contacting with the ground. yb and zb are the position of the center of the
followed. Then, the horizontal force F x is just the summation left and right shoulder joints in frontal plane, and ψ is the rolling angle of
0 0
of left and right horizontal forces FLx and FRx as shown in ab are ab/adduction angles of the left and right legs.
the body, qL,R
0
Figure 8(a). In order to avoid unnecessary yaw torque, FLx T
Now, to obtain Jfrt , the principle of virtual work is used.
0
and FRx are chosen to be the same, thereby obtaining, !T
0 0 1 x ∂qfloat T T
FLx = FRx = F . (21) Ffrt δqfrt = (Bfrt ufrt ) δqfrt (27)
2 ∂qfrt
T
In the second step, we obtain a linear operator Jfrt which where, Bfrt is the matrix which maps actuator torques to
maps a vector Ffrt := [F y F z τ x ]T to a vector ufrt := generalized torques. Substituting (26) into (27), and taking
0 0
[FLz FRz uab ab T
L uR ] (see Figure 8(b)) as following, the transpose yields,
T
ufrt = Jfrt Ffrt (22) consist T T ∂qfloat T consist T T
(δqfrt ) Q Ffrt = (δqfrt ) Q Bfrt ufrt
To systematically obtain the mapping, we define the gen- ∂qfrt
(28)
eralized coordinates of floating base frontal dynamics as,
T
T ab ab T Now, we can obtain Jfrt by rewriting (28),
qfrt := [qfloat , zL , zR , qL , qR ] ∈ R7×1 (23)
+ ∂qfloat T
where, qfloat = [yb , zb , ψ]T and yb and zb are the position ufrt = QT Bfrt QT T
Ffrt = Jfrt Ffrt (29)
∂qfrt
of the body, ψ is the roll angle, zL and zR are the length
of the left and right legs in frontal plane, qL ab ab
and qR are where, M + is a pseudo-inverse of matrix M . Fi-
ab/adduction angles of left and right legs (see Figure 8(b)). nally, using (20), (21), and (29), the joint torques
Because two legs are contacting the ground and forming ush sh kn kn ab ab x y
L , uR , uL , uR , uL , uR which generate F , F , F , τ
z x
a closed loop structure, we have to take into account the can be calculated.
constraints that the feet are not moving with respect to the To implement the algorithm we obtained in Section III,
ground. Let pf ∈ R4×1 be the vector which has the elements which combines the force profile and feedback with low gain,
of horizontal and vertical foot position of the left and right F z and F x are selected as,
legs in the frontal plane. Then, the constraints can be written F x = Fix − kp,x (x − xd ) − kd,x (ẋ − ẋd )
(30)
as, F z = Fiz − kp,z (z − zd ) − kd,z ż, for i = F, H
∂pf where, xd is the desired trajectory for the horizontal motion
δpf = δqfrt ≡ 0. (24)
∂qfrt to produce a leg swing motion with the desired speed v, and
Because of this constraint
on the foot, the system has zd is the desired shoulder height which is chosen as 0.48 m.
only 7 − rank ∂q ∂pf
= 3 degrees of freedom and its To regulate the lateral sway and rolling motion of the body,
frt
dynamics can hence be fully described using minimal co- F y and τ x are chosen as,
consist
ordinates qfrt ∈ R3×1 [10]. The relation between virtual Fy = −kp,y yb − kd,y y˙b
(31)
displacements of generalized coordinates δqfrt and minimal τx = −kp,ψ ψ − kd,ψ ψ̇
consist
coordinates δqfrt can be obtained by,
To regulate yaw motion, the following feedback is calculated,
consist
δqfrt = Qδqfrt (25)
Fiy,φ = Gsign −kp,φ (φ − φd ) − kd,φ φ̇ (32)
where, Q ∈ R7×3 is the linear operator which satisfies,
where, φd is the desired yaw angle, and Gsign = 1 and −1
∂pf for front leg and hind leg. This feedback is added to the force
Q=0 (26)
∂qfrt Fy in (31).
5168
5
Speed (m/sec)
4
3
2
1
0
0 5 10 15 20 25 30 35
10
Fig. 9. Stance Machine for front and hind legs.
Pitch (deg)
5
B. Swing Phase Control and Detection of Impact with the
Ground 0
400
the bounding experiment, if the z direction force during
200
swing phase is larger than this logged nominal force by some
margin, this additional force is assumed to be caused by the 0
impact with the ground and touchdown is declared. However,
this could lead to a delay in the detection of ground impact 38.1 38.2 38.3 38.4 38.5 38.6 38.7
Time (sec)
during bounding.
Fig. 11. Vertical Forces applied at the foot due to the force profile (dashed
C. Finite State Machine blue), feedback (dotted black), and a combination of both (solid red). White
The last step of the implementation process is to introduce and grey region indicate vertical forces at the front legs and hind legs,
respectively. Top: v = 3.6m/sec and λ = 0.02. Bottom: v = 6.9m/sec
a state machine to manage the transition between stance and λ = 0.76.
and swing phase for each leg. Two independent finite state
machines for each pair of front and hind legs is proposed trajectory of the swing phase to scale horizontal movement.
while the transition of a pair of left and right legs occurs By multiplying λ, the commanded speed becomes vcmd =
together. Timing synchronization between the front pair of λv. Therefore, when λ = 0, the leg only moves in the
legs and hind pair of legs is done by adjusting the duration vertical direction so the robot bounds only vertically, and
of the stance Tstance and swing Tswing according to the error when λ = 1, the leg moves with the full horizontal stroke
measured at the transition between phases. The state machine length of 0.4 m thereby providing the bounding with the
is illustrated in Figure 9. The transition from swing to stance desired speed v.
occurs when the leg strikes the ground. Transition from The experiment starts with λ = 0 and v = 3.5 m/sec,
stance to swing takes place when time reaches Tstance + ttd and the values of λ and v are gradually increased by
where ttd is the touchdown time when the leg strikes the the operator to reach faster speeds. During the experiment,
ground. the MIT Cheetah 2 successfully increases its speed from
0 m/sec to 4.5 m/sec stably (see Figure 10 top) while
V. E XPERIMENTS pitch dynamics are mostly bounded between −5 deg and
This section documents the experimental results of the 8 deg (see Figure 10 bottom) as predicted by the simulation
controller. The experiment starts with the robot standing on (see Figure 4). The top speed was 4.5 m/sec obtained by
four legs until an operator initiates bounding. At the first setting v = 6.9 m/sec and λ = 0.76. However, there is
step, the time-dependent force profile depicted in Figure 3 is a noticeable error between the commanded speed vcmd and
applied, and once the stance phase of the first step is finished robot’s running speed when the robot runs fast. This could
(the legs are airborne), the finite state machine for each pair be due to the ground impact loss which increases as the
of legs starts. We introduce a scaling parameter λ ∈ [0 1] running speed increases. An additional algorithm is required
and multiply it by xd in (30) and the desired horizontal to compensate impact loss for high-speed running.
5169
0.0 sec 0.5 sec 1.0 sec 1.5 sec 2.0 sec 2.5 sec 3.0 sec
Figure 11 depicts the vertical force applied at the front [5] S. Seok, A. Wang, D. Otten, and S. Kim, “Actuator design for high
(white region) and hind (grey region) leg with v = 3.6 m/sec force proprioceptive control in fast legged locomotion,” in IEEE/RSJ
International Conference on Intelligent Robots and Systems, 2012, pp.
and v = 6.9 m/sec (on the bottom). It is observed that 1970–1975.
feedback (dotted black line) is significantly smaller than the [6] S. Seok, A. Wang, M. Y. Chuah, D. Otten, J. Lang, and S. Kim,
predefined force profile (dashed blue line), showing that the “Design principles for highly efficient quadrupeds and implementation
on the mit cheetah robot,” in IEEE International Conference on
predefined force profile plays a major role in providing the Robotics and Automation, 2013, to Appear.
bounding gait with the desired duty ratio. [7] D. J. Hyun, S. Seok, J. Lee, and S. Kim, “High speed trot-
The control algorithm was further tested to make the MIT running: Implementation of a hierarchical controller using proprio-
ceptive impedance control on the MIT cheetah,” 2014.
Cheetah 2 run on a grass field. Without changing any control [8] H.-W. Park, M. Y. Chuah, and S. Kim, “Quadruped bounding control
parameters, a stable dynamic untethered running was also with variable duty cycle via vertical impulse scaling,” in Intelligent
successfully achieved on the soft grassy field. Figure 12 Robots and Systems (IROS), 2014 IEEE/RSJ International Conference
on, Sep 2014.
depicts snapshots of bounding on the grassy field at the [9] M. Hutter, H. Sommer, C. Gehring, M. Hoepflinger, M. Bloesch, and
intervals of 0.5 sec. R. Siegwart, “Quadrupedal locomotion using hierarchical operational
space control,” The International Journal of Robotics Research, 2014.
[10] M. Hutter, “StarlETH & co.- design and control of legged robots with
VI. C ONCLUSION compliant actuation,” Ph.D. dissertation, ETH ZURICH, 2013.
[11] M. H. Raibert, Legged Robots that Balance. Cambridge, MA: MIT
We have successfully demonstrated stable quadruped Press, 1986.
[12] V. Barasuol, J. Buchli, C. Semini, M. Frigerio, E. de Pieri, and D. Cald-
bounding gaits over speeds ranging from 0 m/sec to well, “A reactive controller framework for quadrupedal locomotion on
4.5 m/sec. A prescribed vertical and horizontal force profile challenging terrain,” in Robotics and Automation (ICRA), 2013 IEEE
is combined with a low gain PD control on the height of International Conference on, May 2013, pp. 2554–2561.
[13] S. Coros, A. Karpathy, B. Jones, L. Reveret, and M. van de Panne,
shoulders and feedback on running speed, providing stable “Locomotion skills for simulated quadrupeds,” ACM Trans. Graph.,
quadruped bounding in simulation. Next, scaling of vertical vol. 30, no. 4, pp. 59:1–59:12, July 2011.
impulse to balance with the vertical impulse due to gravity [14] H. M. Herr and T. A. McMahon, “A galloping horse model,” The
International Journal of Robotics Research, vol. 20, no. 1, pp. 26–37,
yields multiple periodic orbits with a wide selection of stance 2001.
durations. The horizontal force profile is chosen to decrease [15] M. Haberland, J. Karssen, and M. W. S. Kim, “The effect of swing
oscillations in pitch while making net horizontal impulse leg retraction on running energy efficiency,” in IEEE/RSJ International
Conference on Intelligent Robots and Systems, Sep. 2011, pp. 3957–
zero. The proposed controller has been successfully validated 3962.
in experiments on the MIT Cheetah 2, achieving stable [16] J. Karssen, M. Haberland, M. Wisse, and S. Kim, “The optimal swing-
untethered high-speed 3D running over a wide range of speed leg retraction rate for running,” in IEEE International Conference on
Robotics and Automation, May. 2011, pp. 4000–4006.
without re-tuning or re-optimizing the control parameters. [17] M. Wisse, A. L. Schwab, R. Q. van der Linde, and F. C. T. van der
During 4.5m/s bounding, the recorded power consumption Helm, “How to keep from falling forward: Elementary swing leg action
from the battery is about 700 W, corresponding to a cost of for passive dynamic walkers,” IEEE Transactions on Robotics, vol. 21,
no. 3, pp. 393–401, June 2005.
transport of 0.5. In near future, we will test the speed limit [18] A. Valenzuela and S. Kim, “Optimally scaled hip-force planning: A
as well as different gait control approach for quadrupedal running,” in Robotics and Automa-
tion (ICRA), 2012 IEEE International Conference on, May 2012, pp.
1901–1907.
R EFERENCES [19] M. H. Raibert, “Trotting, pacing and bounding by a quadruped robot,”
Journal of Biomechanics, vol. 23, Supplement 1, no. 0, pp. 79 – 98,
[1] M. Raibert, K. Blankespoor, G. Nelson, R. Playter, and the Big- 1990, international Society of Biomechanics.
Dog Team, “Bigdog, the rough-terrain quadruped robot,” in Proceed- [20] L. D. Maes, M. Herbin, R. Hackert, V. L. Bels, and A. Abourachid,
ings of the 17th World Congress, 2008, pp. 10 823–10 825. “Steady locomotion in dogs: temporal and associated spatial coordina-
[2] Boston Dynamics. (2012) Cheetah robot runs 28.3 mph; a bit tion patterns and the effect of speed,” Journal of Experimental Biology,
faster than usain bolt. Youtube Video. [Online]. Available: vol. 211, no. 1, pp. 138–149, 2008.
http://youtu.be/chPanW0QWhA [21] P. E. Hudson, S. A. Corr, and A. M. Wilson, “High speed galloping
[3] C. Gehring, S. Coros, M. Hutter, M. Bloesch, M. Hoepflinger, and in the cheetah (acinonyx jubatus) and the racing greyhound (canis
R. Siegwart, “Control of dynamic gaits for a quadrupedal robot,” in familiaris): spatio-temporal and kinetic characteristics,” Journal of
Robotics and Automation (ICRA), 2013 IEEE International Conference Experimental Biology, vol. 215, no. 1, pp. 2425–2434, 2012.
on, May 2013, pp. 3287–3292. [22] T. S. Parker and L. O. Chua, Practical numerical algorithms for
[4] C. Semini, N. G. Tsagarakis, E. Guglielmino, M. Focchi, F. Cannella, chaotic systems. Springer New York, 1989.
and D. G. Caldwell, “Design of HyQ: a hydraulically and electrically [23] R. Murray, Z. Li, S. Sastry, and S. Sastry, A Mathematical Introduction
actuated quadruped robot,” Proceedings of the Institution of Mechan- to Robotic Manipulation. Taylor & Francis, 1994.
ical Engineers, Part I: Journal of Systems and Control Engineering,
vol. 225, no. 6, pp. 831–849, 2011.
5170