You are on page 1of 12

Bounding gait control of a parallel

quadruped robot
Xu Hao and Lang Wei
School of Power and Mechanical Engineering, Wuhan University, Wuhan, China
Yue Qiao
Hubei Key Laboratory of Waterjet Theory and New Technology, Wuhan University, Wuhan, China
Shengzui Xu, Jian Bin Liao, Yu Xi and Wang Wei
School of Power and Mechanical Engineering, Wuhan University, Wuhan, China, and
Zhi-Wei Liu
School of Artificial Intelligence and Automation, Huazhong University of Science and Technology, Wuhan, China

Abstract
Purpose – The computing power of the legged robot is not enough to perform high-frequency updates for the full-body model predictive control
(MPC) of the robot, which is a common problem encountered in the gait research of the legged robot. The purpose of this paper is to propose a high-
frequency MPC control method for the bounding gait of a parallel quadruped robot.
Design/methodology/approach – According to the bounding gait characteristics of the robot, the quadruped robot model is simplified to an
equivalent plane bipedal model. Under the biped robot model, the forces between the robot’s feet and the ground are calculated by MPC. Then, the
authors apply a proportional differential controller to distribute these forces to the four feet of the quadruped robot. The robot video can be seen at
www.bilibili.com/video/BV1je4y1S7Rn.
Findings – To verify the feasibility of the controller, a prototype was made, and the controller was deployed on the actual prototype and then fully
analyzed through experiments. Experiments show that the update frequency of MPC could be stabilized at 500 Hz while the robot was running in
the bounding gait stably and efficiently.
Originality/value – This paper proposes a high-frequency MPC controller under the simplified model, which has a higher working efficiency and
more stable control performance.
Keywords Quadruped robot, Model predictive control, Bounding gait, Gait planning
Paper type Research paper

1. Introduction system (Shin et al., 2022; Morari et al., 1988). It has been
applied in many scenarios, such as the application of MPC
Quadrupeds can use different gaits to complete flexible and
in the trajectory tracking of robots (Wang et al., 2022).
efficient movements in various complex terrains. Learning and
However, for systems with high degrees of freedom such as
producing the gait of quadrupeds has always been the focus of the
legged robots, the achievable update rate of the MPC loop
research field of legged robots. Early Raibert used a virtual leg
is not sufficient to effectively handle model uncertainty and
model and a three-point control strategy to realize the motion of
external disturbances due to the computational power
various gaits (Raibert et al., 1984). The Cheetah robot developed
by Massachusetts institute of technology (MIT) adopts a unique limitation of the mobile platform. For example, Jared Di
electric drive system and uses a hierarchical controller (Seok Carlo presented an MPC-based ground reaction force
et al., 2015; Hyun et al., 2014). In the gait of a quadruped robot, control method at MIT Cheetah 3, but due to the
the dynamics of the bounding gait are characterized by a very complexity of its MPC model, the operating frequency of
short contact time between the foot and the ground and a large its MPC loop can only reach 30 Hz (Di Carlo et al., 2018).
instantaneous driving force, and the body of the robot is always in Ruben Grandia used the feedback strategy of self-
an underactuated state. differential dynamic programming to bridge the gap
Model predictive control (MPC) can use the system between the low MPC update rates and the drive command
model to predict and optimize the future behavior of the rates at MPC update rates of only 15 Hz (Grandia et al.,
2019). To solve the real-time problem of MPC algorithm,
Yezhong Huang used the iterative Linear-Quadratic-
The current issue and full text archive of this journal is available on Emerald Gaussian optimization algorithm in the design of a model
Insight at: https://www.emerald.com/insight/0143-991X.htm prediction controller and adds heuristic-based reference
input (Huang et al., 2021). However, due to the low update

Industrial Robot: the international journal of robotics research and application


50/6 (2023) 888–899 Received 12 October 2022
© Emerald Publishing Limited [ISSN 0143-991X] Revised 26 March 2023
[DOI 10.1108/IR-12-2022-0321] Accepted 3 April 2023

888
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

frequency of MPC, these methods are not suitable for the simplification is reasonable when the mass of the legs does
high-speed movement of the robot. not exceed 10% of the total mass of the robot (Di Carlo
This paper uses the simplified quadrupedal model to raise et al., 2018).
the update frequency of MPC. The simplified model of the The model is symmetrical, and the dynamics in the
quadruped robot has been used in the bounding gait. horizontal direction and vertical direction are decoupled from
Valenzuela used Optimally scaled hip-force planning to design each other. Therefore, it can be assumed that the controls in the
the desired profiles for the vertical and horizontal forces of the horizontal and vertical directions are independent. The
simplified model, but the simplified model he used is an generalized coordinate system of the robot is defined as q: ¼(x,
asymmetric structure (Valenzuela and Kim, 2012). Park used a y, u), where x, y represent the coordinates of the robot’s center
simplified model to control the bounding gait, but the vertical of mass in the horizontal direction and vertical direction u
and horizontal force distributions are solved through his own represents the pitch angle. Define the rigid body dynamics of
impulse planning algorithm (Park et al., 2015; Park et al., the robot as follows:
2021). This paper uses MPC to calculate the reaction forces
Ffx 1 Fhx
between the robot and the ground under the simplified model €x ¼ (1)
and then uses the proportional differential (PD) controller to m
distribute these forces to the four legs to complete the bounding Ffy 1 Fhy
gait control. The bounding gait controller designed in this €y ¼ g (2)
m
paper can be directly deployed on the hardware, and the update
frequency can reach nearly 500 Hz, which can improve the
performance of the robot and achieve the goal of stable Ffx rfy 1 Fhx rhy 1 Ffy rfx  Fhy rhx
u€ ¼ (3)
movement. I
After this introduction, the rest of the paper is organized as
follows: In Section 2, we analyze the characteristics of the Where m is the mass of the robot and I is the moment of inertia.
bounding gait and establish a simplified dynamic model of the The horizontal and vertical forces on the front legs are Ffx and
quadruped robot. In Section 3, the MPC controller is established. Ffy . The horizontal and vertical forces on the hind legs are Fhx
In Section 4, we use the Bezier curve to design the foot-end  
and Fhy . rfx ; rfy are the horizontal distance and vertical distance
trajectory of the robot’s swing phase and design a touchdown
detection scheme. In Section 5, physical experiments are carried between the robot’s front leg and the center of mass, and
 x y
out on the real robot, and the controller’s ability to control the rh ; rh are the horizontal distance and vertical distance
robot’s bounding gait is verified. between the hind leg and the center of mass.
By adding the force of gravity to the state quantity, let the
 
2. Model and dynamics simplification of robot state quantity of the robot be X ¼ x; x; _ u; u_ ; g , and the
_ y; y;
h i
We designed and produced a parallel quadruped robot, as shown control quantity be U ¼ Ffx ; Ffy ; Fhx ; Fhy , the state equation can
in Figure 1. The four legs of the robot are all in parallel structure. be expressed as follows:
2 3 2 32 3
2.1 Bounding gait analysis x_ 0 1 0 0 0 0 0 x
When a quadruped robot adopts a bounding gait to move, its 6 7 6 76 7
6 €x 7 6 0 0 0 0 0 0 0 76 x_ 7
two front legs simultaneously move, and so do its two hind legs 6 7 6 76 7
6 y_ 7 6 0 0 0 1 0 0 07 6 7
6 7 6 76 y 7
(Liu et al., 2017). According to the different movements of the 6 7 6 76 7
6 €y 7 ¼ 6 0 0 0 0 0 0 17 6 7
robot, a complete bounding gait cycle is disassembled into 6 7 6 76 y_ 7
6_7 6 76 7
different motion states. For convenience, we can define a state 6u 7 60 0 0 0 0 1 0 76 u 7
6 7 6 76 7
as a phase and there are four phases during the whole bounding 6 €u 7 6 0 0 0 0 0 0 07 6 7
4 5 4 54 u_ 5
gait motion (Culha and Saranli, 2011), as shown in Figure 2.
0 0 0 0 0 0 0 0 g
2.2 Model simplification and dynamic analysis 2 3
0 0 0 0
Directly and wholly modeling an actual quadruped robot 6 7
6 1=m 0 1=m 0 72 x 3
means that we will construct a considerable complex 6 7 Ff
6 0 0 7
dynamic system so that we have to overcome more 6 0 0 76 7
6 76
6 Ffy 7
7
difficulties to design an available controller. Therefore, we 166 0 1=m 0 1=m 7 76 7 (4)
need to design a simplified model for an actual quadruped 6 76
4 F x7
h5
6 0 0 0 0 7
robot we want to control. We assume that there is no 6 7 Fy
6 r y =I r x =I rhy =I rhx =I 7 h
rebounding or sliding when the legs are in contact with the 4 f f 5
ground. When the robot moves straight forward, the 0 0 0 0
robot’s motion is restricted to the sagittal plane, so a
quadruped robot can be modeled as a planar biped system Equation (4) can be abbreviated as follows:
(Park et al., 2014). As shown in Figure 3, it is a single rigid
body that only receives a force at the contact point; X_ ¼ AX 1 BU (5)
the mass of the robot is concentrated at the center of mass,
and the legs are regarded as having no mass. Such a Where A is the robot state matrix, and B is the robot control matrix.

889
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

Figure 1 (a) The brief schematic diagram of the parallel quadruped robot; (b) Model diagram of the parallel quadruped robot

Figure 2 Phase diagram of the bounding gait

890
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

Figure 3 A simplified model of the quadruped robot

2.3 Full-body model Figure 4 Robot leg configurations


As the full-body model of the robot is to be used for comparison
with the simplified model in subsequent experiments, it is
briefly described here. The full-body model treats the robot as a
single rigid body subject to forces at the contact patches (Kim
et al., 2019). The rigid body dynamics are given by the
following:

X
nc
€¼
mp f i  cg (6)
i¼1

d Xnc
ðIxÞ ¼ ri  f i (7)
dt i¼1

Where p, fi and cg are three-dimensional matrices, p represents


the robot’s position, fi represents the reaction force and cg
represents the gravitational acceleration. m is the robot’s body
mass and nc is the number of contacts. I 2 R33 is the rotational
inertia tensor, and x is the angular velocity of the body. ri is the
position of ith contact point with respect to the center of mass
of the robot. coordinate system. As shown in Figure 4, a1 and a2 represent
Compared with the simplified model, The full-body model the angles of rotation of the motor in the body coordinate
has a 12-dimensional state matrix and a 12-dimensional control system, L1 and L2 represent the length of the thigh and calf,
matrix, whereas the state matrix of the simplified model only respectively.
has seven dimensions and the control matrix only has four The forward kinematics mean that the position of the foot
dimensions. The simplification of matrix dimension will greatly can be obtained from the angles of the motors. The angle b and
reduce the computational complexity and arise the solving the length of the virtual leg L3 are determined through the law
speed. of cosines, shown as follows:
Then the MPC is applied to the simplified model and the 8  sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi

>
> a1  a2 a1  a2
full-body model, respectively, and the MPC application of the >
< L3 ¼ l1 cos 1 L2 2  L1 2 sin2
two models is similar. 2 2 (8)
>
> ða1 1 a2 Þ
>
:b ¼
2.4 Kinematics and dynamics of the leg 2
The forces calculated by MPC are in the world coordinate
system. To obtain the motor torques, the dynamics and Then, the coordinates (xb, yb) of the robot’s foot in the body
kinematics of the leg need to be transferred to the robot body coordinate system can then be obtained as follows:

891
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

xb ¼ L3 cos b X ðk 1 1Þ ¼ AX ðkÞ 1 B ðkÞU ðkÞ (15)


(9)
yb ¼ L3 sin b
where A ¼ E 1 TA, B ðkÞ ¼ TBðkÞ, E is the identity matrix and
Similarly, the inverse kinematics solution formula can be T is the system control cycle duration.
obtained; that is, the corresponding motor angle can be At time k, the system state of the next control cycles is predicted
obtained from the foot positions as follows: sequentially through the discretized state equation, and the future
8 pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi output of the system is represented by a matrix as follows:
< L3 ¼ xb 2 1 yb 2 X ðkÞ ¼ cðkÞX ðkÞ 1 lðkÞU ðkÞ (16)
(10)
: b ¼  p  arctanðyb =xb Þ Where:
2
2 3 2 3
8 X ðk 1 1jkÞ U ðkjkÞ
 2 6 7 6 7
>
> p L3 1 L1 2  L2 2 6 X ðk 1 2jkÞ 7 6 U ðk 1 1jkÞ 7
>
> a ¼  b 1 arccos 6 7 6 7
< 1
2 2L1 L3 X ðkÞ ¼ 6
6 ..
7; U ðkÞ ¼ 6
7 6 ..
7;
7
 2 (11) 6 7 6 7
>
> p L3 1 L1 2  L2 2 4 . 5 4 . 5
>
>
: a2 ¼  b  arccos
2 2L1 L3 X ðk 1 njkÞ U ðk 1 n  1jkÞ
2 3
1
The corresponding Jacobi matrix is obtained by taking the A
6 7
partial derivative of the foot positions with respect to the motor 6 27
6A 7
angles for equation (11): 6 7
cðkÞ ¼ 6 . 7;
8 6 . 7
6 . 7
>
> dxb dL3 db 4 5
>
> ¼  cosb 1 L3  sinb  n
>
> da da da A
>
>
1 1 1
>
> d x dL db 2 3
>
> b 3
< da ¼ da  cosb 1 L3  sinb  da 0
A B ðkÞ  0 0
2 2 2
(12) 6 7
>
> dy d L db 6 1 7
>
>
b
¼ 
3
 cosb  L  sinb  6 A B ðkÞ 0
A B ðkÞ  0 7
> 3 6 7
>
>
> 1
da da1 da1 lðkÞ ¼ 6 7
>
> 6 .. .. .. .. 7
>
> dy b d L 3 db 6 . . . . 7
: ¼  cosb  L3  sinb  4 5
da2 da2 da2 n1 n2 0
A B ðkÞ A B ðkÞ  A B ðkÞ
Then, the forces from the dynamic model are mapped to motor
Our optimization goal is to make the state of the system track
torques using the Jacobian of the 5-bar derived from the above
the desired reference value, where the reference value sequence
kinematics:
in the prediction time domain is defined as follows:
2 3
" # dxb dyb " # 2 3
t1 6 da da 7 F x Xref ðk 1 1Þ
6 27 b 6 7
¼6 2 7 (13) 6 Xref ðk 1 2Þ 7
t2 4 dxb dyb 5 Fby 6 7
da1 da1 X ref ðkÞ ¼ 6
6 ..
7
7 (17)
6 . 7
4 5
where t1, t2 represent motor torques Fbx and Fby are the foot Xref ðk 1 nÞ
forces in robot body coordinate system.
The relationship between the foot forces in the world Then, the optimization error cost function can be set as follows:
coordinate system and the body coordinate system is as follows:  T   T
J ðkÞ ¼ X ðkÞ  X ref ðkÞ Q X ðkÞ  X ref ðkÞ 1 U ðkÞRU ðkÞ
x x
Fb cosu sinu F
¼ (14) (18)
Fb y sinu cosu Fy
where Q is the weight of the state variable. R is the weight of the
where u represents the pitch angle of the robot, Fx and Fy control variable.
represent the horizontal and vertical foot forces in the world Convert equation (18) into quadratic programming canonical
coordinate system. form and rewrite it as follows:
1 T
3. Model predictive control J ðkÞ ¼ U ðkÞHU ðkÞ 1 U ðkÞf ðkÞ (19)
2
 
3.1 Predictive mode where H ¼ 2(lT(k)Ql(k) 1 R), f ðkÞ ¼ 2lT ðkÞQ cðkÞX ðkÞ  X ref .
According to the model in the previous section, what the After the optimization solution is completed, the control
controller needs to predict is the ground reaction forces. First, variable U ðkÞ in the prediction time domain at the current
we need to discretize the equation of state. By using the forward moment can be obtained, and the first element U(kjk) in the
Euler method to discretize equation (5) at time k (Liu et al., control variable is used as the actual control input and applied
2022), we can get the following: to the system.

892
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

At the next control moment, the system calculates the output 4. Swing phase settings
of the next control moment according to the optimization of the
4.1 Swing phase trajectory generation
current system state. This cycle continues until the entire
During the stance phase of the legs, the legs are controlled by the
control process is completed.
MPC controller, while in the swing phase, an additional controller
is required. The purpose of the swing leg control module is to
3.2 Constraint settings reposition the starting position of the leg for the next stance phase,
In practical situations, the forces of the robot legs will be providing a cushion for landing.
constrained by the ground friction and the maximum torque of the The trajectory of the swing phase can be obtained by the
motor, and the force should be within a certain range. Assuming Bezier curve(Zeng et al., 2019). The equation of the nth order
that the force constraints of each leg are the same, the force Bezier curve is as follows:
constraints of a single leg are the following inequality constraints:
n 
X
Fmin  F y  Fmax (20) n ni i
BðtÞ ¼ Pi ð1  tÞ t ; t 2½0; 1 (26)
i
mF y  F x  mF y (21) i¼0

Where Fmin and Fmax are the setting minimum and maximum Where Pi is the Bezier curve control point, n is the order of
forces in the vertical direction. m is the friction coefficient. the polynomial and t is the normalized time of the swing leg
time T s.
3.3 Force distribution of the four legs To realize the smooth motion of the swinging leg, the 11th-
After the above steps, the resultant forces of the two front legs and order Bezier curve is used to plan the swing phase trajectory of
the two hind legs are solved. Next, these forces need to be the robot. The abscissa of the endpoint of the Bezier curve is
distributed to the four legs. In practical situations, the robot may controlled by the set speed (Raibert, 1986), and its formula is as
be deflected in the yaw axis and the roll axis. To deal with these follows:
deviations, the PD feedback controller is introduced as follows:
  Tl
Px;11 ¼ vref 1 kv ðvref  vd Þ (27)
dFyaw ¼ kp;yaw ðYref  Yd Þ 1 kd;yaw Y_ ref  Y_ d (22) 2
  Where Tl is the period of the stance phase, vref is the reference
dFroll ¼ kp;roll ðRref  Rd Þ 1 kd;roll R_ ref  R_ d (23)
speed, vd is the actual speed and kv is the gain coefficient.

where kp,yaw and kp,roll are stiffnesses, kd,yaw and kd,roll are damping, 4.2 Swing phase ground collision detection
Yref and Rref are the reference values of yaw and roll and Yd and Rd When the leg swings in the air, the foot is not stressed, but due
are the actual values of yaw and roll. Y_ ref and R_ ref are the to the mass of the leg itself, there will be a torque on the motor,
reference values of yaw angular velocity and roll angular velocities, so we can calculate the virtual force of the foot through
and Y_ d and R_ d are the actual angular velocities. equation (13). It can be seen in Figure 5 that after entering the
Then, the PD feedback value in the yaw axis is combined swing phase, the virtual plantar force in the vertical direction
with the calculation result value of the MPC, and the force in increases rapidly and reversely from a stable value, then
the direction of the four legs is obtained as follows: increases in a positive direction and then decreases; this is
8
>
> Ffrx ¼ Ffx =2 1 dFyaw
>
> Figure 5 The equivalent foot force calculated by the motor feedback
>
< F x ¼ F x =2  dFyaw
fl f torque when the robot is supported without touching the ground
(24)
>
> F x
¼ F h =2 1 dFyaw
x
>
> hr
>
: F x ¼ F x =2  dFyaw
hl h

By adding this feedback, the horizontal forces of the left and right
legs will differ as the yaw angle changes; for example, when the yaw
is greater than zero, the horizontal force of the two right legs will be
less than the horizontal force of the two left legs and the robot will
generate a torque, thereby reducing the yaw value.
In the same way, the PD feedback value in the roll axis is
combined with the MPC value to obtain the forces in the y
direction of the four legs:
8 y
>
> F ¼ Ffy =2 1 dFroll
> fr
>
>
< F y ¼ F y =2  dFroll
fl f
(25)
> F y ¼ F y =2 1 dFroll
>
>
> hr h
>
: F y ¼ F y =2  dF
hl h roll

893
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

because the vertical direction of the legs of the robot shortens Table 1 Robot parameter list
away from the ground during the swing phase, and then
Item Characteristics
extends to prepare for landing, the data range is roughly –36 N
to 26 N. The virtual plantar force in the horizontal direction of Body size (L 3 W 3 H) 430 mm  280 mm  60 mm
the swing phase gradually increases, roughly from –12 N to Thigh length 92 mm
12 N. Calf length 220 mm
We use the virtual plantar force of the legs when the robot is Total mass 13 kg
suspended in the air as a reference. When the robot is moving Motor type TMotor AK80-6
on the ground with the bounding gait, if the calculated plantar Motor continuous torque 6 Nm
Motor maximum torque 12 Nm
force of a leg in the swing phase is greater than the reference
Encoder type MA702
value, we can judge that the leg has touched the ground.
IMU type Yesense YIS100
IMU Roll/Pitch precision 0.3°
5. Experiments IMU Yaw precision 0.5°
To demonstrate the effectiveness of the proposed algorithm in IMU output data rate 195 Hz
the bounding gait of the quadruped robot, experiments are Accelerometers full range 616 g
carried out on a parallel quadruped robot prototype. The robot Power supply 24 V
used in the experiment is shown in Figure 6. The robot
parameters and the sensors used on the robot are shown in
The purpose of the experiment is to compare the control effect
Table 1.
of the high-frequency MPC of the simplified model and the
low-frequency MPC of the full-body model on the robot. The
Figure 6 Diagram of parallel quadruped robot. (a) Composition of update frequency of the high-frequency MPC is close to
parallel quadruped robot; (b) Full-body diagram of parallel quadruped 500 Hz, and the update frequency of the low-frequency MPC is
robot close to 100 Hz. In the experiment, the maximum update
frequency of MPC under the full-body model can only be
around 100 Hz. We accelerate the robot from rest to a set speed
and then maintain that speed. Figure 7 shows representative
snapshots of a bounding gait cycle.
Due to the characteristics of bounding gait, there is a
moment when the four legs do not touch the ground in each
motion cycle. When the robot moves from the air to the
ground, the velocity will inevitably be lost, so the velocity will
fluctuate to a certain extent. The results in Figure 8(a) show the
velocity change when the MPC update frequency is 500 Hz.
The controller can make the robot track the set velocity stably
no matter in the acceleration stage or in the constant velocity
stage, and the result of Figure 8 (b) shows that the robot can
track the set position well. Figure 9 shows the tracking set value
of the robot’s velocity and displacement when the MPC update
frequency is 100 Hz.
Figure 10 compares the tracking effect of the robot on the
position and velocity under different MPC update frequency. It
can be found that when the MPC update frequency is 500 Hz,
and the set speed is 1.5 m/s, the velocity error fluctuation is less
than 0.2 m/s and the robot position error is about 0.1 m. When
the update frequency of MPC is 100 Hz, the velocity error and
position error are larger, the maximum velocity error reaches
0.46 m/s, the maximum position error reaches 0.23 m and the
data fluctuation range is larger. It can be found that the robot
can track the velocity and position better under the high-
frequency MPC of the simplified model.
Figure 11(a) shows that the maximum value set in the
horizontal direction is about 14 N when the MPC update
frequency is 500 Hz. The commanded force in the horizontal
direction is the largest when it just touches the ground. This is
because the speed of the robot loses when it touches the ground
from the air; the actual speed will be smaller than the reference
speed, and a larger force is required to increase the speed. As
the speed increases, the commanded force gradually decreases

894
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

Figure 7 One cycle of bounding action

Figure 8 The MPC update frequency is 500 Hz. (a) Set speed and speed tracking curve at different speeds; (b) Set position and position tracking curve
at different speeds

in the horizontal direction. The results in Figure 11(b) show that the actual speed quickly exceeds the reference speed,
that the maximum value of the vertical commanded force is after which the commanded force must be reduced to
about 90 N. The vertical commanded force of the robot leg is reduce the actual speed. The results in Figure 12(b) show
relatively large when it first touches the ground and then that the maximum value of the commanded force in
gradually decreases as the leg retracts. Then, as the leg the vertical direction is about 120 N, the change of the
lengthens, the vertical setting force also increases gradually. It commanded force is more severe and the minimum value
can be found that the change trend of the commanded force is even reaches 0.
consistent with the action of the leg. Comparing the results of Figures 11 and 12, it can be found
Figure 12(a) shows that when the MPC update frequency that under the high-frequency MPC, the change of the
is 100 Hz, the maximum commanded force in the horizontal commanded force is smoother, the change of the extreme value
direction is about 22 N, and the commanded force of the force is also smaller and the interval time of the
drops sharply in the middle of the leg, touching the ground commanded force is shorter which is beneficial to deal with
and leaving the ground, this is because the commanded sudden changes. These advantages will make the locomotion of
force is larger when the leg just touches the ground so the robot more stable.

895
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

Figure 9 The MPC update frequency is 100 Hz. (a) Set speed and speed tracking curve at different speeds; (b) Set position and position tracking curve
at different speeds

Figure 10 (a) The error between estimated velocity and reference velocity when the set speed is 1.5 m/s; (b) The error between estimated position and
reference position when the set speed is 1.5 m/s

Figure 11 Commanded forces for two cycles during 1.5 m/s bounding when MPC update frequency is 500 Hz. (a) Horizontal commanded forces;
(b) Vertical commanded forces

896
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

Figure 12 Commanded forces for two cycles during 1.5 m/s bounding when MPC update frequency is 100 Hz. (a) Horizontal commanded forces;
(b) Vertical commanded forces

To verify the adaptability of our method, we conducted greater the slope, the more obvious the impact will be.
experiments in a variety of different environments with a However, the robot can still run normally.
500 Hz MPC frequency. Grass, sand and slopes are typical
environments. As shown in Figure 13, the robot runs on 6. Conclusion
grass and sand with a bounding gait of 0.5 m/s. Grass and
sand are softer than concrete. When the robot runs on the Aiming at the problem that the achievable update frequency of
grass, the robot’s speed is relatively stable. When the robot the MPC loop is not enough to effectively deal with the
runs on the sand, there will be obvious slippage, which uncertainty and external disturbance of the model, this paper
causes a great loss of speed. proposes to simplify the quadruped robot model into a plane
Figure 14(a) shows the set speed and estimated speed on biped model to arise the frequency of MPC calculation, so that
grass. Due to the hard ground in the grass, the speed curve of the update frequency of MPC can be 500 Hz. We conducted a
the robot running on the grass is similar to that on the comparative experiment between the high-frequency MPC of
concrete ground. Figure 14(b) shows the set speed and the simplified model and the low-frequency MPC of the full-
estimated speed on sand. Because the sand is very soft, the body model to control the bounding gait. In the experiment, we
hind legs will lift the sand when it takes off, which makes it compared the tracking effect of speed and position under
difficult for the robot to reach the required speed. different MPC update frequency and the change of the
Meanwhile, due to the serious skidding of the robot, the commanded force. Compared with low-frequency MPC, high-
estimated speed is very unreliable. frequency MPC has a better effect of speed tracking and
The robot was experimented on two different angles of slope, position tracking, and the change of control force is smoother.
as shown in Figure 15, which shows the robot running on The results show that under the high-frequency MPC of the
slopes of 4° and 8°. When bounding on slopes, the robot’s simplified model, the robot can obtain better stability when it
speed will be greatly influenced. As shown in Figure 16, the adopts the bounding gait. We have also tested the robot in

Figure 13 Bounding on grass and sand

897
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

Figure 14 (a) Set speed and estimated speed on the grass; (b) Set speed and estimated speed on the sand

Figure 15 Bounding on slopes at different angles

Figure 16 (a) Set speed and estimated speed on the 4° slope; (b) Set speed and estimated speed on the 8° slope

several different terrain environments to verify the adaptability high-frequency MPC of the simplified model has more
of the algorithm. advantages in the locomotion control of the robot. In the
Because the frequent updates of dynamics within the next step, we plan to devise a high-frequency MPC with
prediction horizon within delay could ensure that more gaits such as trotting to make the robot more agile in
instantaneous approximations are always accurate, the locomotion.

898
Parallel quadruped robot Industrial Robot: the international journal of robotics research and application
Xu Hao et al. Volume 50 · Number 6 · 2023 · 888–899

References Park, H.W., Wensing, P.M. and Kim, S. (2021), “Jumping over
obstacles with MIT cheetah 2”, Robotics and Autonomous
Culha, U. and Saranli, U. (2011), “Quadrupedal bounding Systems, Vol. 136, p. 103703, doi: 10.1016/j.robot.2020.
with an actuated spinal joint”, 2011 IEEE International 103703.
Conference ON Robotics and Automation (ICRA). Park, H.-W., Park, S. and Kim, S. (2015), “Variable-speed
Di Carlo, J., Wensing, P.M., Katz, B., Bledt, G., Kim, S. and quadrupedal bounding using impulse planning: untethered
Kosecka, J. (2018), “Dynamic locomotion in the MIT high-speed 3D running of MIT cheetah 2”, 2015 IEEE
Cheetah 3 through convex Model-Predictive control”, 2018 International Conference on Robotics and Automation (ICRA),
IEEE/RSJ International Conference on Intelligent Robots and IEEE, pp. 5163-5170.
Systems (IROS). Raibert, M.H. (1986), Legged Robots That Balance, MIT press,
Grandia, R., Farshidian, F., Ranftl, R. and Hutter, M. (2019), London.
“Feedback MPC for Torque-Controlled legged robots”, Raibert, M.H., Brown, H.B. and Chepponis, M. (1984),
2019 IEEE/RSJ International Conference on Intelligent Robots “Experiments in balance with a 3d one-legged hopping
and Systems (IROS). machine”, The International Journal of Robotics Research, Vol. 3
Huang, Y., Wei, Q., Ma, H. and An, H. (2021), “Motion No. 2, pp. 75-92, doi: 10.1177/027836498400300207.
planning for a bounding quadruped robot using ILQG-based Seok, S., Wang, A., Chuah, M.Y., Hyun, D.J., Lee, J., Otten,
MPC”, Journal of Physics: Conference Series, IOP Publishing, D.M., Lang, J.H. and Kim, S. (2015), “Design principles for
p. 12016. energy-efficient legged locomotion and implementation on
Hyun, D.J., Seok, S., Lee, J. and Kim, S. (2014), “High speed the MIT cheetah robot”, IEEE/ASME Transactions on
trot-running: implementation of a hierarchical controller using Mechatronics, Vol. 20 No. 3, pp. 1117-1129, doi: 10.1109/
proprioceptive impedance control on the MIT cheetah”, The TMECH.2014.2339013.
International Journal of Robotics Research, Vol. 33 No. 11, Shin, J., Hakobyan, A., Park, M., Kim, Y., Kim, G. and Yang,
pp. 1417-1445, doi: 10.1177/0278364914532150. I. (2022), “Infusing model predictive control into meta-
Kim, D., Carlo, J., Katz, B., Bledt, G. and Kim, S. (2019), Reinforcement learning for mobile robots in dynamic
“Highly dynamic quadruped locomotion via whole-body environments”, IEEE Robotics and Automation Letters, Vol. 7
impulse control and model predictive control”, arXiv No. 4, pp. 10065-10072, doi: 10.1109/LRA.2022.3191234.
preprint arXiv:1909.06586S. Valenzuela, A.K. and Kim, S. (2012), “Optimally scaled hip-
Liu, Q.Y., Chen, X.D., Han, B., Luo, Z.W. and Luo, X. force planning: a control approach for quadrupedal
(2017), “Virtual constraint based control of bounding gait of running”, 2012 IEEE International Conference on Robotics and
quadruped robots”, Journal of Bionic Engineering, Vol. 14 Automation, IEEE, 1901-1907.
No. 2, pp. 218-231, doi: 10.1016/S1672-6529(16)60393-1. Wang, Z., Gao, F., Zhao, Y., Yin, Y. and Wang, L. (2022),
Liu, X.X., Wang, W., Li, X.L., Liu, F.S., He, Z.H., Yao, Y.Z., “Improved a algorithm and model predictive control-based
Ruan, H.P. and Zhang, T. (2022), “MPC-based high-speed path planning and tracking framework for hexapod robots”,
trajectory tracking for 4WIS robot”, ISA Transactions, Industrial Robot: The International Journal of Robotics Research
Vol. 123, pp. 413-424, doi: 10.1016/j.isatra.2021.05.018. and Application, Vol. 50 No. 1.
Morari, M., Garcia, C.E. and Prett, D.M. (1988), “Model Zeng, X.Q., Zhang, S.Y., Zhang, H.J., Li, X., Zhou, H.T. and
predictive control: theory and practice”, IFAC Proceedings Fu, Y.L. (2019), “Leg trajectory planning for quadruped
Volumes, Vol. 21 No. 4, pp. 1-12. robots with high-Speed trot gait”, Applied Sciences-Basel,
Park, H.W., Chuah, M.Y. and Kim, S. (2014), “Quadruped Vol. 9 No. 7, doi: 10.3390/app9071508.
bounding control with variable duty cycle via vertical impulse
scaling”, 2014 IEEE/RSJ International Conference on Intelligent Corresponding author
Robots and Systems (IROS 2014). Wang Wei can be contacted at: whuww@whu.edu.cn

For instructions on how to order reprints of this article, please visit our website:
www.emeraldgrouppublishing.com/licensing/reprints.htm
Or contact us for further details: permissions@emeraldinsight.com

899

You might also like