You are on page 1of 7

Continuous Jumping for Legged Robots on Stepping Stones via Trajectory

Optimization and Model Predictive Control


Chuong Nguyen∗ , Lingfan Bao∗ , and Quan Nguyen

Abstract— Performing highly agile dynamic motions, such as


jumping or running, over uneven stepping stones has remained
a challenging problem in legged robot locomotion. This paper
presents a framework that combines trajectory optimization
and model predictive control to perform consecutive jumping
on stepping stones. In our approach, we firstly utilize tra-
jectory optimization for full-nonlinear dynamics to formulate
arXiv:2204.01147v1 [cs.RO] 3 Apr 2022

periodic jumps for various jumping distances. A jumping


controller based on model predictive control is then designed
for dynamic jumping transitions, enabling the robot to achieve Fig. 1: The Unitree A1 robot performing continuous jumping on stepping
continuous jumps on stepping stones. The proposed framework stones with random distance and unknown height perturbation. Video
is also validated to be robust to platforms with unknown available: https://www.youtube.com/watch?v=jBGY1K1UbhM.
height perturbations and model uncertainty (e.g. unknown
load). Moreover, experiments are also conducted to show the
robustness of our jumping controller on an unknown uneven on the whole body motion [9]. In addition, robot motion
platform. has little impact on the robot configuration during the flight
I. I NTRODUCTION phase, just accumulating trajectory errors in landing and
subsequent phases. These problems make the continuous
The capability of navigating uneven terrain with discrete
jumping on stepping stones is highly challenging.
footholds such as stepping stones is a remarkable advan-
The continuous jumping on stepping stones requires the
tage of legged robots over their wheeled counterparts. This
whole-body coordination while respecting all constraints of
primary advantage has highly attracted research attention
robots’ actuators. Thus, it is crucial to design an optimization
recently, resulting in a considerable number of works on
approach to optimize the whole-body motions. The optimiza-
walking of legged robots over stepping stones with control-
tion is also essential to maximize the jumping performance
based ([1],[2],[3]) and learning-based ([4],[5],[6]) frame-
to enable the robot to traverse over large gaps between
works. To the best of our knowledge, there is no work
stones. In this paper, we design a trajectory optimization
addressing the problem of continuous jumping on stepping
(TO) framework to generate optimal periodic gait references,
stones in the field of quadruped robots.
which will then be used for continuous jumps. The opti-
There exits a number of recent works on single jumping
mization framework utilizes the full-body dynamic model
for legged robots based on a variety of dynamic models,
to achieve optimal whole-body coordination for continuous
including simplified dynamics [7], centroidal dynamics [8],
jumps while satisfying all actuators’ limits.
and full-body dynamics ([9],[10]). In [11], the authors pro-
Model Predictive Control (MPC) has recently widely been
pose a method to perform multiple bounding, then a single
used in legged robots’ locomotion due to its capability to
jump over an obstacle. For that task, a Model Predictive Con-
handle continuous transitions between contact states and
trol (MPC) for a simplified robot model in 1D is proposed
execute in real-time [12],[13],[14]. However, in these works,
to plan bounding motions approaching a predefined position
the MPC is designed for stabilizing gaits with short flight
to executive a jump. The jumping trajectory is computed
time and small variations of body orientation. In our work,
based on the simplified 2D dynamic model, in which leg
we design a jumping controller based on MPC to achieve the
dynamics are neglected. Different from existing works, we
continuous jumping transitions and tackle with a wide range
are interested in consecutive jumping on stepping stones.
of body orientation and long flight phases. We combine
Unlike walking ([1]-[6]), the jumping motions on stepping
the MPC and joint PD controller, leveraging the reference
stones come with additional challenges: (1) high efficient
from the trajectory optimization. This combination allows
jumping transitions, (2) hard impact on the environment,
the robot to consecutively jump over long and challenging
and (3) long aerial time. The jumping transitions occur in
stepping stones at high accuracy. In addition, it shows the
a very short contact time and with a limited terrain surface.
robustness to unknown height perturbation of the platform
Hard impact requires efficient real-time controllers to handle
and model uncertainty (e.g. carrying an unknown load).
the ground reaction force (GRF) to mitigate its perturbation
The contribution of the work is summarized as follows:
The authors are with the Department of Aerospace and • We propose a framework that allows quadruped robots
Mechanical Engineering, University of Southern California, USA: to perform consecutive jumping on stepping stones. The
vanchuong.nguyen@usc.edu, lingfanb@usc.edu,
quann@usc.edu trajectory optimization for periodic jumping based on
∗ These authors have contributed equally to this work full-body dynamics is proposed to generate a set of
Jumping Controller

Reference
Joint PD for MPC
Trajectory
Optimization Reference
for periodic Gait library MPC
Trajectory
jumps

Cartesian PD Target foot


position Dstep
30 Hz Dstep
1 kHz

Fig. 2: Block diagram for the proposed framework.

references. The gait library is designed to achieve an that task. The controller executes τPCart
D at 1 kHz to derive
online gaits generation. A jumping controller based on each foot of swing legs to the predefined targets on stepping
MPC is proposed to handle jumping transitions between stones.
different jumps efficiently and guarantee accurate jumps
on stepping stones. III. T RAJECTORY O PTIMIZATION AND G AIT L IBRARY
• The proposed framework is validated on the A1 robot A. Periodic Jumping Gait Optimization
model jumping on a variety of terrains: randomly-
Due to the uneven structure of the stones and the com-
placed stepping stones, unknown perturbation of terrain
plexity of motions, the consecutive jumps require the high
height, unknown load carrying, and their combinations.
accuracy of trajectory and the whole-body coordination. In
• Experiments in hardware are carried out to validate the
addition, since the robot’s actuators are limited, the robot
efficiency of the jumping controller on uneven terrain
cannot jump without optimization. Thus, it is crucial to
with unknown perturbation.
design an optimization approach to optimize the motions.
The rest of our paper is organized as follows. The It is noted that continuous jumping on stepping stones has
overview of the proposed framework is presented in Section periodic patterns in motions. Hence, it can be formulated as
II. The trajectory optimization framework and a gait library connections of periodic jumping gaits. In this section, we
are designed in Section III. Section IV presents a proposed propose a TO framework to generate a certain number of
controller for jumping. Results from hardware experiments periodic gaits, which will be extended to consecutive jumps
and simulation are shown in Section V. Finally, Section VI with different jumping distances. Moreover, we utilize full-
provides concluding remarks. body dynamics in the optimization to generate high accuracy
jumping references and optimal whole-body coordination,
II. OVERVIEW OF THE FRAMEWORK while respecting all physical constraints.
In this section, we introduce the overview of our pro- 1) Dynamical Model for Jumping: For quadrupedal an-
posed framework for performing that the robot consecutively imals, normally their highly powerful jumping is restricted
jumps on uneven stepping stones, which is illustrated in to about a sagittal plane because of the complexity of the
the diagram (2). The trajectory optimization for periodic motion. Therefore, in this paper, we consider the robot model
jumps combines with the gait library to generate online gait on the 2D plane and the model is simplified as a rigid-body
references. The MPC-based jumping controller is designed system consisting of 5 links, and spatial vector algebra in
for feedback control and continuous jumping transition. [15] is used to construct the robot’s equations of motion :
The trajectory optimization is formulated and solved off-
line for a small number of gait references. The gait in- 
M −JcT
  
q̈ −C q̇ − g + Sτ + Sf τf

terpolation policy computes a new reference for the next = (1)
−JcT 0 fc J˙c (q)q̇
jump prior to landing on the next stone based on the actual
measured distance of Dstep . This reference is updated to the where q := [x; z; qpitch ; qJ ] is a vector of generalized
jumping controller: {τd , pd , ṗd , θd , ωd , fd } for MPC, and coordinates, in which x, z, qpitch are the CoM position and
{qJ,d , q̇J,d } for joint PD controller. The MPC and joint PD body’s pitch angles respectively, and qJ is a vector of
controller are updated at 30 Hz and 1 kHz respectively. joint angles. M is the mass matrix, C is represented for
During a transition to the next jump, it is important to Coriolis and centrifugal terms, g denotes gravity vector, Jc
enforce precise footstep placement on stepping stones in is the spatial Jacobian expressed at the contact foot, S and
order to keep the robot on the terrain and avoid accumulated Sf ric are distribution matrices of actuator torques τ and
errors. We utilize a feedback Cartesian PD controller for the joint friction torques τf ric , fc is the spatial force at
T=0.1 T=0.2 in comparison with a weight for torque (e.g. wτ = 0.005
wq = 1).
Periodic Jumps For periodic jumps in (2a), the constraints for periodic
Front-leg contact All-leg contact
motions are enforced based on the velocity at the beginning
T=0.4
and the end of each jump being identical, while the position
T=0.2
along x-axis differs by a desired jumping distance Ddes .
Here, we denote q̄ as a generalized coordinated excluding
Flight Rear-leg contact
xcom from q, i.e. q = [xcom ; q̄].
For foot position constraints in (2b)&(2c), d is pre-
Fig. 3: Periodic jumping phases. Each periodic jumping motion consists defined distance between front feet and rear feet. Geometric
of four phases
(T=0.1s) (T=0.2s) (T=0.2s) (T=0.3s) constraints are imposed to ensure that: (a) the whole robot
body and legs have a good clearance with discrete terrain,
and (b) each robot part does not collide with others.
the contact feet. The dimension of Jc and fc depend on
Having presented an optimization approach to generate
the phase of gait, and number of legs in contact with the
individual periodic jumping gait, we will next design a
ground. In addition, we also denote positions of front feet as
method for the gait library to generate online jumping
pF = [pxF ; pzF ], and positions of rear feet as pR = [pxR ; pzR ].
references.
2) Contact Schedule: To set up the trajectory optimiza-
tion, it is necessary to pre-define the contact schedule. In- B. Jumping Gait Library
spired by nature, we formulate each jump consisting of four
In order to adapt to the change of terrain structure quickly,
sequential phases: front-leg contact phase, double contact,
it is important to have a policy to update the reference for
rear leg contact, and flight phase. All phases are solved via
full-body motion quickly. However, since solving for the
off-line optimization. To establish a periodic jump, the initial
trajectory optimization for full-body dynamics in real-time
pose of the first phase is identical to the final pose of the
is not applicable due to the complexity of the problem,
last phase (see Fig. 3).
we design a gait library and gait interpolation policy to
3) Cost function and Constraints: The periodic trajectory update the reference at the beginning of each jump quickly.
optimization is formulated as follows: This idea is efficient in our previous work [1] for walking
N
X on stepping stones, which inspires our design for jumping
minJ = wq kqJ,k − qJ,ref k22 + wτ kτk k22 motions presented as follows.
k=1 The optimization framework in the previous section is
s.t. Periodic jumps: used to generate a gait library consisting of four periodic
q̄N = q̄1 , xN = x1 + Ddes , q̇N = q̇1 (2a) jumping gaits with step lengths Dstep = {0.6, 0.7, 0.8, 0.9}
meters. Note that specifically for the A1 robot with limited
Foot position:
physical capacity, it can only reach up 0.9m for periodic
pF,k = 0, in front-leg and all-leg contact (2b) jumping. Having this gait library, we then do gait interpo-
pR,k = [−d; 0], in all-leg and rear-leg contact (2c) lation to get the desired jumping gait with an arbitrary step
pzF,k ≥ 0, pzR,k ≥0 (2d) length between these discrete values, Dstep,j , 1 ≤ j ≤ 4.
In particular, for each nominal step length Dstep,j , 1 ≤
Full-body dynamics constraints (1) (2e)
j ≤ 4, the reference trajectory βj = [q; q̇; τ ; f ] is utilized
Pre-landing configuration: for linear interpolation. The result Beziér coefficients β for
q̇J,k = 0 (k ∈ [(N − 10) : N ]) (2f) each random value of step length Dstep is computed as
Joint angle limits: qJ,min ≤ qJ,k ≤ qJ,max (2g) Dstep − Dstep,j
γ(Dstep ) = (3)
Joint angular velocity limits: |q̇J,k | ≤ q̇J,max (2h) Dstep,j+1 − Dstep,j
Torque limits:|τk | ≤ τmax (2i)
GRF z
limits:fmin ≤ fkz z
≤ fmax (2j) β(Dstep ) = (1 − γ(Dstep ))βj + γ(Dstep )βj+1 (4)
Friction cone limits:|Fkx /Fkz | ≤ µ (2k) Note that since all values of the gait library are limits
Geometric constraints (2l) concerning the solution from optimization, the interpolated
values β are also satisfied with the physical constraints.

In the cost function, qJ,k is a joint angle, and τk is a joint IV. J UMPING C ONTROLLER
torque at the iteration k th ; wq , wτ are corresponding weights In this section, we design a jumping controller to perform
of these optimization variables. Note that since the primary continuous jumps. Our proposed controller combines MPC
goal of the optimization is to maximize the performance and high-frequency PD controller, leveraging references
of the robots to jump over a large gap between stepping from full-body TO. This combination allows the robot to
stones, we do not over-regulate the use of joint torques. achieve efficient jumping transitions and accurate jumping
Therefore, we use a dominant weight for the joint positions trajectories on uneven stepping stones.
(a) Case I: Random distance. The stepping stone are randomly placed with step length in the large range from 60cm to 90cm

(b) Case II: Random distance and random height perturbations. The stepping stone are randomly placed with step length in the large range
of 60cm to 90cm. The gap height varies randomly between −6cm to +5cm, which is unknown to the robot

(c) Case III: Random distance and unknown mass. The stepping stones are randomly placed with step length in the in the range of
60 : 90(cm). The robot carries a load of 2kg, up to 17% of robot weight, which is unknown to the controller
Fig. 4: Simulation: The robot performs successful jumps on uneven stepping stones. Video: https://www.youtube.com/watch?v=jBGY1K1UbhM

1) Jumping Controller: Firstly, we revisit a simplified controller specifically for jumping to control a wide range
rigid body dynamics model in the vertical plane as follows: of the body orientation and achieve long flight phases.
Highly agile and accurate motions on stepping stones
P2 require accurate tracking of the jumping reference of contact
i=1 fi
p̈ = − g, (5a) force profile and widely-varying pitch angle. An error in
m
2 body position or orientation before taking off usually ends
d X
up a significant deviation from reference upon landing. In
(Iω) = ri × fi , (5b)
dt i=1 order to ensure high tracking performance for the jumping
where p is the CoM position in the world frame; ri = motion in real time, we leverage the reference from trajec-
[rix ; riz ] and fi = [fix ; fiz ] denotes position of contact point tory optimization utilizing full-body dynamics in Section III
relatively to CoM, and contact force of foot ith respectively in our controller design, which combines MPC for body
in the world frame; ω = θ̇k is angular velocity of the body; motions and a high-frequency PD controller in the joint
θ is a pitch angle. Then by define x = [p; θ; ṗ; θ̇, g], g is space. In particular, the MPC problem is formulated as a
gravity, f = [f1 ; f2 ], the dynamics is rewritten as following: sequential quadratic programming (QP) with moving horizon
to compute the optimal GRF, which minimizes the weighted
ẋ(t) = Ac x(t) + Bc (r1 , . . . , rn ) f (t), (6) tracking errors of the body’s trajectory reference and the

03×3 I3×3 03×1
 GRF reference obtained from Section III:
 >
where Ac = 03×3 03×3 eg , eg = 0 −1 0 , X−1
t+N

 01×3 01×3 0
 min kxk − xd,k kPk + kfk − fd,k kQk , (8a)
02×2 02×2 k=t
Bc =  I2×2 /m I2×2 /m , [ri ]× = [−riz , rix ]. s.t. xk+1 = Ak xk + Bk fk , ∀k = t, ..., t + N − 1 (8b)
I −1 [r1 ]× I −1 [r2 ]× cmin ≤ Ck xk ≤ cmax , ∀k = t, ..., t + N − 1 (8c)
k k
which will then be formulated in discrete time: Dk xk = 0, ∀k = t, ..., t + N − 1 (8d)
xk+1 = Ak xk + Bk fk . (7)
in which a contact force reference fd from Section III; Pk
The work [12] and [14] initially propose a MPC to keep and Qk are the weighted diagonal matrices at step k; N is
the robot balanced while performing locomotion with the a number of predicted horizon. The equation (8c) captures
short flight time. Our work, on the other hand, designs a constraints related to friction cone and force limits, while the
equation (8d) is represented for the shifting contact schedule. TABLE I: A1 Robot Parameters
For the reference in moving horizons, when a predicted Parameter Symbol Value Units
horizon exceeds the take off time (at the end of rear-leg Max Torque τmax 33.5 Nm
contact), the reference of states and contact forces at this Max Joint Speed q̇max 21 rad/s
Total robot mass m 12 kg
horizon takes the values at the take off time. To improve
Trunk dimension l, w, h 0.361, 0.194, 0.114 m
the tracking performance, in the cost function (8), we also
Trunk Inertia Ixx , Iyy , Izz 0.017, 0.056, 0.065 kg.m2
enforce dominant weights regarding to states and contact Leg Link Lengths l1 , l 2 0.2 m
force components at the last horizon comparing with other
horizons. This allows us to put more weights on minimizing
the errors before taking off.
where J (qj ) is the foot Jacobian at the configuration qj ; R
The above problem can be reformulated as a dense form
is the rotation matrix which transforms from body to world
of constrained QP as follows:
frame; Kp and Kd are diagonal matrices of proportional
1 T and derivative gains; pf and vf,d are actual foot position
min F Ht Ft + FtT bt , (9a)
2 t and velocity; and the desired foot position pf,d on the
s.t. cmin
t ≤ Ct Ft ≤ cmax
t , (9b) next stepping stone in world frame is measured at the
beginning of a pre-landing configuration predefined in the
where
TO framework.
T
Ht = 2Bqp,t SBqp,t + 2α (10a) We reapply MPC for the stance legs when that legs
T
bt = 2Bqp,t S(Aqp,t xt − Xt,d ) − 2αT Ft,d (10b) impacts the ground (end of the flight phase). Note that
the time when the other leg touches the ground is usually
Here, Aqp,t and Bqp,t are constructed using Ak and Bk , earlier or later than expected, causing a mismatch between
∀k = t, ..., t + N − 1, xt is a current states at time step t. the predicted contact schedule and actual contact states. For
Xt,d and Ft,d are the reference of states and GRF, which the jumping on stepping stones with the very limited contact
concatenate references in the considered moving horizons time, this issue accumulates errors along with the motions,
from t to t + N − 1. Please refers [16] for more details on affecting the accuracy of the next jumping. To improve the
how to formulate the MPC as the constrained QP in general. accuracy, we enforce the availability of actual contact states.

The solution fM P C that takes the value at the first horizon In particular, at the time all legs have impact with the ground,
of solution Ft in (9) will be utilized to compensate the errors we recompute the MPC started with double contact.
between actual and reference jumping:
V. R ESULTS
∆τM P C = J (qj )> [fM

P C − fd ], (11)
A. Numerical Simulation
That compensation will be combined with the joint PD Having developed the framework based on trajectory
controller, leveraging the reference of the torque and joint optimization and model predictive control, we will now
profiles obtained from the TO in Section III. This results in validate its effectiveness on the A1 robot model. We use
a feed forward torque applying to the robot actuators: the open-source optimization toolbox Casadi to set up and
τf f = ∆τM P C + τd + τPjoint solve for the trajectory optimization for periodic jumps, and
D , (12)
then design simulation platforms based on Matlab-Simscape.
Three different simulation cases are considered for jumping
τPjoint
D = Kp,j (qJ,d − qJ ) + Kd,J (q̇J,d − q̇J ) (13)
on stepping stones as follows:
This combination allows us to achieve accurate tracking • Case I- Random distance (Fig.4a): The desired distance
performance and robust to uncertainties, which will be between two adjacent stepping stones is randomly se-
validated in Section V. lected as below:
2) Jumping Transitions: Jumping transitions play a cru-
cial role to guarantee successful continuous jumps on step- Ld = [67, 78, 71, 79, 63, 77, 70, 86, 67, 80](cm)
ping stones. To achieve high efficiency jumping transitions, • Case II- Random distance and random height pertur-
we combine the MPC presented above with the Cartesian bations (Fig.4b):
PD controller for foot placement control. The MPC outputs
the optimal contact force based on the moving horizons Ld = [67, 78, 71, 79, 63, 77, 70, 86, 67, 80](cm),
leveraging the reference from the current jump to the next hd = [−4, 0, 3, 5, 0, −6, 4, 0, −5, 0](cm).
jump (see Fig. 2 for illustration). The optimal force will
be converted to torque J (qj )> R> fM∗
P C , applying to con-
The difference of the height of the stones hd is mea-
tact legs. For the swing legs, we utilize the Cartesian PD sured relatively to the original height of the first stone.
controller for accurate foot placement on the next stepping Note that the height perturbation is unknown to the
stones as follows robot. We also use the same distances between stepping
> >
stones as in the Case I to validate the robustness of our
τPCart
D = J (qj ) R [Kp (pf,d − pd ) + Kd (vf,d − vf )], framework on the unknown structure of the terrain.
actual reference Thign Calf

0.6 40

Torque (N m)
20
Y (m)

0.4

0
0.2
-20
0 1 2 3 4 5 6 7
X (m) -40
0 1 2 3 4 5 6 7 8 9 10
(a) CoM trajectory Time (s)

(a) Front leg


Body Pitch Angle (deg)

20
0 40
-20

Torque (N m)
20
-40
-60 0
-80
0 1 2 3 4 5 6 7 8 9 10 -20
Time (s)
-40
(b) Pitch angle 0 1 2 3 4 5 6 7 8 9 10
Time (s)
Fig. 5: Case I- Tracking performance of the jumping controller The A1 (b) Rear leg
robot successively jumps on stepping stones with a stochastic gap distance.
Fig. 7: Case II- Torque profile. The actuators’ torques are within the limits
during consecutively jumping motions.
actual reference
0.6
Body Pitch Angle (deg)

20
0

Fx =Fz
-20
0
-40
-60
-80 -0.6
0 1 2 3 4 5 6 7 8 9 10
0 1 2 3 4 5 6 7 8 9 10
Time (s) Time (s)

Fig. 6: Case II- Tracking performance of the jumping controller. The Fig. 8: Case II- Friction cone limits. The force commands satisfies
robot jumps on the stepping stones with random distance and unknown |Fx /Fz | ≤ 0.6 to prevent slippery during jumping motions.
random height perturbations.
actual reference
Body Pitch Angle (deg)

20
0
-20
• Case III- Carrying unknown load (Fig.4c). The robot -40
carries a load of 2kg, about 17% of the robot weight, -60
-80
which is unknown to the controllers. The stepping stone 0 1 2 3 4 5 6 7 8 9 10
distances are also set up similarly to the Case I to show Time (s)

the efficiency of our controllers in compensating the Fig. 9: Case III- Tracking performance of our controllers with unknown
unknown disturbance introduced to the robot model. mass. The robot continuously jumps on the stepping stones while carrying
a mass of 2(kg), which is unknown to the controllers
The Fig. 5 shows the tracking performance of our design
controllers for the Case I. Our controllers ensure the high
accuracy tracking of body orientation and position during B. Experimental Verification
contact phases, enable the robot traversing over stepping We demonstrate experiments in hardware to verify the
stones at high accuracy. We believe that our work is the efficiency of our jumping controller. The experiments aim to
first one successfully demonstrating continuous jumping on show the robustness of the controller to the change of initial
uneven stepping stones on the quadruped robots. configuration, which is unknown to the robot. The robot
For the Case II, Fig.6 shows that even with unknown parameters and its actuation capabilities are summarized in
fluctuation in the height of stepping stone, our controller Table I. The experiments are set up as follows:
is still able to track the orientation reference and guarantee • Baseline experiment (see Fig.10a): The robot stands
successful jumps. Fig.7 and Fig.8 show the torques satisfy up and jumps forward 60cm from a predefined initial
the actuation limits, and the outputs of the MPC are within configuration.
friction cone limits. • Experimental comparisons (see Fig.10b, 10c): We con-

Note that for Case II & III, we utilize the same controller sider a perturbation to the initial configuration (e.g.
parameters as case I to validate the robustness of our frame- putting a box of height under the front feet), then
work to unknown disturbance. Fig.9 shows our controller compare our proposed controller with the controller in
is capable of tracking the references, ensuring continuous the baseline experiment. Note that the height of the box
jumping on uneven stepping stones while carrying an un- is unknown to both controllers.
known mass. For the baseline experiment, the reference for jumping is
(a) Baseline experiment (b) Joint PD controller (c) Our controller
Fig. 10: Experiments: Motion snapshots from jumping forward with (a) baseline experiment: flat ground + joint PD controller , (b) uneven platform +
joint PD controller, and (c) uneven platform + our controller. Video available: https://www.youtube.com/watch?v=jBGY1K1UbhM

computed from trajectory optimization, which will then be terrain with one-step preview,” Robotics: Science and Systems, vol. 2,
utilized by the joint PD controller in [9],[10] to tracking the 7 2017.
[2] Q. Nguyen, A. Hereid, J. W. Grizzle, A. D. Ames, and K. Sreenath,
reference in the joint space. “3d dynamic walking on stepping stones with control barrier func-
For the experimental comparisons, we change the robot’s tions,” in IEEE 55th Conference on Decision and Control (CDC),
initial configuration by putting a box of 5cm in height under pp. 827–834, IEEE, 12 2016.
[3] Q. Nguyen, A. Agrawal, W. Martin, H. Geyer, and K. Sreenath,
the front legs. The height of the box is about 33% of the “Dynamic bipedal locomotion over stochastic discrete terrain,” The
initial height of the robot. We evaluate the performance International Journal of Robotics Research, vol. 37, pp. 1537–1553,
of our controller with others based on the actual jumping 12 2018.
[4] V. Tsounis, M. Alge, J. Lee, F. Farshidian, and M. Hutter, “Deepgait:
distance the robot can achieve to see if the rear legs traverse Planning and control of quadrupedal gaits using deep reinforcement
over the box and reach the target. learning,” in IEEE International Conference on Robotics and Automa-
As we can see from Fig. 10b, simply utilizing the same tion, 2020.
[5] Z. Xie, H. Y. Ling, N. H. Kim, and M. van de Panne, “Allsteps:
joint PD controller as the baseline experiment causes the Curriculum-driven learning of stepping stone skills,” in Proc. ACM
jumping to fail. It is due to the fact that there is no control SIGGRAPH / Eurographics Symposium on Computer Animation,
feedback for body orientation and positions, and the joint 2020.
[6] A. Siravuru, A. Wang, Q. Nguyen, and K. Sreenath, “Deep visual per-
PD controller works only in the joint space. Therefore, it can ception for dynamic walking on discrete terrain,” in 2017 IEEE-RAS
not compensate for the errors of the jumping trajectory when 17th International Conference on Humanoid Robotics (Humanoids),
adding the unknown disturbance to the initial configuration. pp. 418–424, IEEE, 2017.
[7] Y. Ding, A. Pandala, and H.-W. Park, “Real-time model predictive
As a result, it accumulates significant errors before taking control for versatile dynamic motions in quadrupedal robots,” in
off, and can only jump a very short distance. Our controller 2019 International Conference on Robotics and Automation (ICRA),
combines MPC and high frequency PD controller at joint Montreal, Canada, pp. 8484–8490, IEEE, May 2019.
[8] M. Chignoli, “Trajectory optimization for dynamic aerial motions of
level, considering real time feedback from body orientation legged robots,” Master’s thesis, MIT, 2021.
and body position during contact phases, as well as jumping [9] Q. Nguyen, M. J. Powell, B. Katz, J. D. Carlo, and S. Kim, “Optimized
references from optimization. This combination guarantees jumping on the mit cheetah 3 robot,” in 2019 International Conference
on Robotics and Automation (ICRA), pp. 7448–7454, IEEE, 2019.
high tracking performance while compensating the unknown [10] C. Nguyen and Q. Nguyen, “Contact-timing and trajectory op-
disturbance, as illustrated in Fig. 10c. timization for 3d jumping on quadruped robots,” arXiv preprint
arXiv:2110.06764, 2021.
VI. C ONCLUSION AND F UTURE WORK [11] H.-W. Park, P. M. Wensing, and S. Kim, “Jumping over obstacles
We have presented a framework to address the remaining with mit cheetah 2,” Robotics and Autonomous Systems, vol. 136,
p. 103703, 2021.
problem in continuous jumping on long and challenging [12] J. Di Carlo, P. M. Wensing, B. Katz, G. Bledt, and S. Kim, “Dynamic
uneven stepping stones. This framework takes advantage locomotion in the mit cheetah 3 through convex model-predictive
of trajectory optimization, model predictive control, and control,” in 2018 IEEE/RSJ International Conference on Intelligent
Robots and Systems (IROS), pp. 1–9, IEEE, 2018.
full-body dynamics to realize the capability of robot for [13] D. Kim, J. D. Carlo, B. Katz, G. Bledt, and S. Kim, “Highly dynamic
consecutively jumping on this challenging terrain in real quadruped locomotion via whole-body impulse control and model
time. The efficiency is validated on various conditions: predictive control,” in arXiv preprint arXiv:1909.06586, 2019.
[14] G. Bledt, M. J. Powell, B. Katz, J. Di Carlo, P. M. Wensing, and
random distance of stepping stones, and its combination S. Kim, “Mit cheetah 3: Design and control of a robust, dynamic
with unknown height perturbations and unknown mass the quadruped robot,” in 2018 IEEE/RSJ International Conference on
robot carrying. In addition, we also conduct experiments in Intelligent Robots and Systems (IROS), pp. 2245–2252, IEEE, 2018.
[15] R. Featherstone, Rigid body dynamics algorithms. Springer, 2014.
hardware to prove the efficiency of MPC for jumping. Our [16] J. L. Jerez, E. C. Kerrigan, and G. A. Constantinides, “A condensed
future work will realize the continuous jumping on stepping and sparse qp formulation for predictive control,” in 50th IEEE Con-
stones on hardware. ference on Decision and Control and European Control Conference,
pp. 5217–5222, Dec 2011.
R EFERENCES
[1] Q. Nguyen, A. Agrawal, X. Da, W. C. Martin, H. Geyer, J. W. Grizzle,
and K. Sreenath, “Dynamic walking on randomly-varying discrete

You might also like