Professional Documents
Culture Documents
Khor Ram 2015
Khor Ram 2015
Abstract
Legged robots have superior advantages rather than wheeled robots for moving over uneven terrains in the presence of
various obstacles. The design of an appropriate path for the main body and legs is an important issue for such robots
especially on the uneven terrains. In this paper, the focus is to develop a stable gait for a quadruped robot to trot on
uneven terrains. First, a stability condition is developed for a whole-body quadruped robot over uneven terrains based
on avoiding the tumbling. By using a simple model, a point with zero moments is calculated in the three-dimensional
space. Then, the reference path of this point is determined so that the tumbling moments become zero. The path of the
main body will be calculated by using an optimal controller. The main feature of the proposed gait generation framework
is that the height of robot can change continuously and stably on uneven terrains. To evaluate the robot stability, the
tumbling moments around diagonal lines are calculated and some methods are proposed to reduce these moments to
improve the robot stability. The tip of swing foot is also planned to avoid any collision with the environment.
The proposed method will be demonstrated using an 18-Degrees of freedom (DOF) quadruped robot in simulation
and experimental studies. The experimental setup is a small-size quadruped robot, which is composed of a rectangular
plate as its main body with four legs that each one has three active joints with DC servo motors. Obtained results reveal
that the robot can trot on uneven terrains stably. Besides, the comparison with the previous methods approves the
merits of proposed algorithm on uneven terrains.
Keywords
Quadruped robot, dynamics stability, trot gait, uneven terrains, 3D gait generation
Introduction
irregularity. In this gait, diagonal legs (a leg and a
Legged robots, in particular quadruped ones, exhibit hand) are paired and move simultaneously.3,8,9
a superior performance in locomotion over uneven In high-speed motion, another gait as called gallop
terrains. These robots can dexterously move on gait is chosen. This gait is composed of two phases:
highly rocky terrains, with steep slopes, deep holes, flight and stance,10,11 while the impact effects in high-
various hills, and forbidden areas, by appropriate speed motion are the main challenge to develop this
selection of footsteps on these terrains. Despite con- gait. Thus, the trot gait offers advantages over uneven
siderable progress in this field,1–4 there are still a lot of terrains with low size of irregularities. Besides, this
unsolved problems to make a quadruped robot be gait is commonly used by quadruped mammals in
able to perform animal-like behaviors and the current almost many situations. Consequently, in this paper,
developed robots cannot have the same performance the trot gait is selected as a dynamic gait, to propose
as animals. For instance, designing a precise path for that over uneven terrains.
the main body and swing leg of a quadruped robot on One of main challenges in the generation of a gait
dextrous areas is still a challenging problem. on uneven terrains is to guarantee the robot’s
In nature, animals properly choose different gaits
when move on various motion surfaces. In highly Department of Mechanical Engineering, Center of Excellence in
rugged surfaces, where the major challenge is to Robotics and Control, Advanced Robotics and Automated Systems
ensure the robot stability by shaping a bigger support Lab, K. N. Toosi Univ of Tech, Tehran, Iran
polygon, three legs are always in the contact with the
Corresponding author:
ground and only one leg is swinging during each step
Mahdi Khorram, Department of Mechanical Engineering, Center of
of motion.5–7 The static gait as called walking, leads Excellence in Robotics and Control, Advanced Robotics and
to a low speed. To increase the robot speed, the trot Automated Systems Lab, K. N. Toosi Univ of Tech, Tehran, Iran.
gait is chosen for a terrain with a medium degree of Email: mahdi.khorram@gmail.com
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
2 Proc IMechE Part C: J Mechanical Engineering Science 0(0)
stability, because most stability criteria are applicable published information about this gait.1 Recently,
only over even terrains. The Zero Moment Point Spröwitz et al. designed a novel compliant quadruped
(ZMP) is the popular criterion that is used for some robot to achieve fast trotting gaits and implemented
legged robots (biped, quadruped, etc.) to achieve a on a treadmill.3 Thus, the design trot gait over uneven
stable path.12–14 Based on this criterion, the robot terrains is still an ongoing research.
continues its motion along the desired path provided In this paper, the stability condition of a whole-
that the ZMP remains inside the support polygon as body quadruped robot will be presented. The
spanned by the tip of stance feet. Since the height of 3D-ZMP is defined with based on a point–mass
main body is a fixed value in this criterion and also the model of the robot to design the trot gait on uneven
ZMP is defined on the horizontal ground, it is only terrain. It is a point in the 3D space where the
applicable on the even terrains in usual form. Some moment produced by inertial and gravitational
methods have been proposed to deal with the stability forces becomes zero around all axes. The definition
evaluation on uneven terrains.15,16 To design a trot of this point enables us to define a linear model to
gait on uneven terrains, it is essential to develop a compute the COG path in 3D motion. A dynamics
stability criterion for 3D motion of a quadruped model that relates the ZMP position and the COG
robot on uneven terrains. In this article, we attempt acceleration is derived in the state–space form.
to do it at first. Then, an optimal control approach is used to minim-
Gait generation for a quadruped robot has been ize the tracking error. The controller is designed so
addressed in some studies. Through using a simple that the terminal output reaches exactly to its desired
model,17,18 the explicit Center of Gravity (COG) values. The proposed planning approach is based on a
path can be found by solving the ZMP dynamic equa- point mass model of the robot. However, in the real
tions19–21 or it can be calculated by using the preview robot, the tumbling moments about diagonal lines
control,18 feedback, and feedforward control,22 may make the robot unstable in the presence of the
model-predictive control,23 and optimization meth- masses of the legs. To reduce these moments, various
ods,13 for some cases, e.g. walking of a biped robot methods are proposed, such as increasing the duration
with a fixed ZMP, also 3D trotting of a quadruped of a step, or designing of a better trajectory for
robot (which is the focus of this paper), the ZMP path the swing legs, and finally by the adjustment of the
may become discontinuous. The gait generation with role angle of the main body. Finally, to complete
more complex models also were considered.24,25 The the motion generation procedure, the tip of swing
ZMP-based trot gait was proposed and implemented foot path will be planned. Compared to even terrains,
on the littleDog robot.26 In this method, an optimiza- in designing the tip of feet path on uneven terrain, the
tion problem is defined to minimize squared acceler- collision avoidance is an important factor. A compari-
ations along the trajectory subject to ZMP stability son with previous methods will be done to show the
constraints. A main drawback of this method is that merits of the proposed algorithm especially on uneven
the ZMP equations used in this work is based on the terrains. The proposed algorithm makes sure that the
assumption of zero ZMP along z-axis i.e. it is held on moments about supporting legs become zero. Finally,
the ground. In uneven terrains, the motion surface is the proposed algorithm is applied on a real robot by
approximated by a virtual horizontal surface and the using a feed-forward control and the obtained experi-
motion is generated based on this surface by ZMP mental results will be discussed.
method.27,28 Some methods have been suggested to
formulate the motion generation procedure in static-
ally walking over rough terrains.26,29
Stability evaluation over uneven terrains
The CPG-inspired methods have been suggested to For even terrains, the ZMP criterion is usually used to
design the gait for quadruped robots moving on even obtain a stable motion. However, this criterion is not
and uneven terrains.30–32 In this method, the open- applicable for motion over uneven terrains. This is
loop signal is generated and sent to all legs to produce due to the fact that ZMP is normally defined on the
the rhythmic motions. In the transition between dif- ground plane and expressed only in two-dimensional
ferent gaits, the Central Pattern Generator (CPG) spaces, whereas for uneven terrains, the ZMP should
generates the signal to change the leg-lifting sequences move in 3D space. Thus, a point in 3D space can be
and modulate the time of each step within a gait.33 In chosen, and the moment of all forces about this point
recent years, some attempts have been made to inte- must become zero. Despite conventional ZMP
grate the sensor information to adapt for uneven method, since this point has three components, we
terrains.32,34 specify that by 3D ZMP.
Many attempts have been carried out to plan the In this study, the geometry equation of the terrain
trot gait. However, most of these works only address is assumed to be known. In other words, the robot
this problem for motion over even terrains.35–38 To trots on the known uneven terrains. To trot on the
enable the BigDog robot built by Boston Dynamics various uneven and known terrains, a plan of the foot-
in order to traverse rough terrains, a balanced trot prints is generated via a footstep planning algorithm.
gait was designed and implemented, but there is no Then, the 3D stable COG path will be computed with
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
Khorram and Moosavian 3
the proposed algorithm. Since the designed COG path during the robot motion. Based on the above, in the
ensures the zero-tumbling moments about the sup- following, the 3D ZMP will be derived.
porting legs, the trotting on uneven terrains will be
realized. Therefore, the robot can trot stably on the
3D ZMP computation
various terrains based on the designed footprints plan.
In trot gait, which is the focus of this paper, the Our objective is to obtain a point with zero moment.
robot becomes unstable when there exists a moment Let us consider a quadruped robot model which is
about the diagonal line of the supporting legs. This is shown in Figure 1. To obtain the 3D ZMP, the sum
due to the fact that in this gait diagonal legs (a leg and of moment of external forces (inertial and gravita-
a hand) are paired and move simultaneously. Thus, tional forces) of all legs and main body, M3DZMP , is
the moment of the forces exerted on the main body computed about this point and set equal to zero as
about this diagonal line should be zero to guarantee follow
the robot stability. In fact, we have
M3DZMP ¼ 0 ) ðPG PZMP Þ mP€ G þ mg
M13 ¼ 0 if leg 1 and 3 are in the stance phase Xm Xn
þ PijG PZMP
M24 ¼ 0 if leg 2 and 4 are in the stance phase i¼1 j¼1
ð2Þ
ð1Þ
mij P€ ijG þ mij g ¼ O
Figure 1. A quadruped robot on the uneven terrain, (a) the robot and the terrains, (b) the diagonal line of the supporting legs as well
as inertial and gravitational forces are applied on the COG and all legs.
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
4 Proc IMechE Part C: J Mechanical Engineering Science 0(0)
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
Khorram and Moosavian 5
This distance can be regulated by this parameter. will be derived. The same procedure can be employed
High variation of this parameter leads to the height to derive similar equations along other axes. The dis-
variation and it is not desirable on the uneven ter- crete model of the ZMP equation can be derived as
rains. Here, we can introduce the ZMP equation
along z-axis based on above equation as follows Xððk þ 1ÞTÞ ¼ Ad XðkTÞ þ Bd UðkTÞ
YðkTÞ ¼ Cd XðkTÞ k ¼ 1, 2, . . .
PzZMP ¼ PzG ! g þ P€ zG ð11Þ
T
XðkTÞ ¼ PxG ðkTÞ P_ xG ðkTÞ P€ xG ðkTÞ ,
This equation has an additional term in the compari- UðkTÞ ¼ PxG ðkTÞ, YðkTÞ ¼ pxZMP ðkTÞ
son with the traditional ZMP equations along x- and 2 3 2 3 3
y-axes, which is the influence of gravitational acceler- 1 T T2 =2 T =6
6 7 6 2 7
ation in the ZMP equation along z-axis. Therefore, Ad ¼ 4 0 1 T 5, Bd ¼ 4 T =2 5,
the ZMP along z-axis is not coincident with the 0 0 1 T
COG when the acceleration of the COG becomes
PzG,v ¼ PzG !g ð12Þ where T denotes the sampling time. By using above
ZMP dynamics equation, the jerk of the COG can be
PzG,v defines an virtual COG path. The ZMP equation regulated so that the error between the measured and
is expressed in terms of this parameter instead of the desired ZMP is minimized. In the next section, the
COG. By substituting equation (12) in equation (11), ZMP reference path generation will be presented.
the ZMP equation along the z-axis can be simplified as We define a path in 3D space based on the desired
path of the main body so that if the ZMP travels
PzZMP ¼ PzG,v !P€ zG,v ð13Þ along that path, the robot continues its motion with-
out any falling.
This equation represents a relationship between the
virtual COG and the ZMP, which is similar to the
ZMP reference path over uneven terrains
equations along the x-and y-axes. When the acceler-
ation of the virtual COG is zero i.e. the acceleration of Our objective is to design a path for the COG so that
the COG becomes zero, the ZMP along z-axis is equal the robot remains stable. First of all, we design the
to the virtual COG. In the following, the ZMP equa- ZMP path based on the desired COG path and also
tions along x- and y-axes can be defined by using the location of the footprints. This is due to the fact
equations (8), (10), and (11) as follows that the COG path becomes exactly equal to the ZMP
path when the COG acceleration becomes zero as
pxZMP ¼ PxG !P€ xG described by the ZMP dynamic equations. Thus, the
ð14Þ ZMP path is designated based on the desired COG
py
ZMP ¼ Py !P€ y
G G path so that the robot begins its motion from initial
position and arrives at the predetermined target. In
As seen, the relationships between the ZMP position the cases that the robot wants to change its COG
and the COG acceleration in three directions are path, the ZMP path should be modified accordingly.
linear and time-invariant equations. This makes the In this section, the ZMP reference path will be com-
problem simple to obtain the stable COG path by puted based on knowing of the accurate position of
utilizing a linear controller. In addition, the ZMP footprints.
equations along different axes are independent from To attain the stability, the supporting diagonal
each other. Thus, the COG path generation algorithm lines must be as a part of the ZMP reference path.
can be performed along each axis independently. During the trot gait, the ZMP path must be changed
when the supporting legs switch. The shift form a
diagonal line to next diagonal line takes place at the
ZMP dynamics equations intersection point of these two lines. In trotting on
To design a stable motion, the ZMP reference path is even terrains, the intersection points always exist.
generated at first and the COG acceleration will be However, in uneven terrains due to properties of the
adjusted so that the ZMP moves along its reference 3D lines, these points maybe not find. In other words,
path. The COG path generation algorithm can be the supporting diagonal lines may be skew lines. Thus,
viewed as a tracking problem. Therefore, it is neces- the ZMP reference path becomes discontinuous and
sary to transform the ZMP equations into an appro- that causes sudden jump form on diagonal line to the
priate state–space model. In the following, the other. To improve the smoothness of the ZMP path,
dynamics model along one axis, for instance x-axis, the ZMP path is designed so that the discontinuous
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
6 Proc IMechE Part C: J Mechanical Engineering Science 0(0)
changes will appear only along one axis. Here, the intersect each other, the intersection point in the 3D
ZMP path along z-axis will be discontinuous. space is used to calculate the ZMP reference path. The
switching point of the intersecting diagonal lines for
first and second steps of each gait can be calculated as
ZMP reference path along x- and y-axes
2 3
To design the ZMP reference path, as shown in Px3,i þ ki,1 ð1, 1Þ Px3,i Px1,i
Figure 2, the 3D diagonal supporting lines are pro- 6 7
6 y y y 7
jected into a horizontal plane. Then, the ZMP reference Pswt,1i ¼ 6 P3,i þ ki,1 ð1, 1Þ P3,i P1,i 7
6
7,
paths are calculated along the x- and y-axes by using 4 5
these 2D lines. The switching from one diagonal line Pz3,i þ ki,1 ð1, 1Þ Pz3,i Pz1,i
into next diagonal line, which takes place at the instant 2 3
of switching of the supporting legs, is assumed to occur Px3,iþ1 þ ki,2 ð1, 1Þ Px3,iþ1 Px1,iþ1
6 7
at the intersection point of two adjacent 2D diagonal 6 y y y 7
lines. However, in the case in which two diagonal lines Pswt,2i ¼6 P
6 3,iþ1 þ k i,2 ð1, 1Þ P3,iþ1 P 7
1,iþ1 7
4 5
Pz3,iþ1 þ ki,2 ð1, 1Þ Pz3,iþ1 Pz1,iþ1
ð16Þ
Figure 3. The COG and legs path generation algorithm for trotting a quadruped robot on uneven terrains.
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
Khorram and Moosavian 7
calculated as
2 31 2 3 2 31
Px1,i Px3,i Px1,i Px3,i Px1,iþ1 Px3,iþ1
" # x y " #
Pxswt,1i 6 1 Py Py 7 6 P1,i Py Py P1,i 7 Pxswt,2i 61 y
P1,iþ1 Py3,iþ1 7
6 1,i 3,i 7 6 1,i 3,i 7 6 7
¼6 7 6 7, ¼6 7
Pyswt,1i 4 Px4,i Px2,i 5 4 x Px4,i Px2,i y 5 Pyswt,2i 4 Px4,i Px2,i 5
1 y y P2,i y y P2,i 1 y y
P4,i P2,i P4,i P2,i P4,i P2,i
2 3 ð18Þ
x x
P1,iþ1 P3,iþ1 y
Px
6 1,iþ1 P 1,iþ1 7
6 Py1,iþ1 Py3,iþ1 7
6 7
4 P x
P x
y 5
Px2,i y y P2,i
4,i 2,i
P4,i P2,i
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
8 Proc IMechE Part C: J Mechanical Engineering Science 0(0)
Pz,b z,a
swt,2i Pswt,1i input that leads to a minimum value for J can be
az3 ¼ , defined as
T3 T2
Pz,b z,a
swt,2i Pswt,1i 1
az4 ¼ Pz,b
swt,2i T3 ð23Þ ui ¼ R1 BTd I þ Kiþ1 Bd R1 BTd
T3 T2 1
T T
Kiþ1 Ad Xi þMiþ1 S11 Cf Cf Cf
where Pz,b z,a
swt,1i and Pswt,1i are the z-components of the
intersection point Pswt,1i on diagonal line of the sup- T
yf Cf M1 X1 Cf h1 þgiþ1 i ¼ 1, . . . , N
porting legs 1 and 3 and diagonal line of supporting
legs 2 and 4, respectively. In addition, Pz,a swt,2i and ð26Þ
Pz,b
swt,2i are the z-components of intersection point
Pswt,2i on diagonal line of the supporting legs 2 and in the above equation, Ki , Mi , gi , Si and hi matrices
4 in the current gait and diagonal line of supporting can be calculated by using the following recursive
legs 1 and 3 in the next gait, respectively. When there expressions
is an intersection point between the diagonal lines, the
1
z-component of this point is used to define the ZMP Km ¼ Ad Kmþ1 I þ Bd R1 BTd Kmþ1 Ad þCTd QCd
reference path. In this case, the coefficients of the path 1
can be calculated as Mm ¼ ATd I þ Kmþ1 Bd R1 BTd Mmþ1
1
gm ¼ ATd I þ Kmþ1 Bd R1 BTd gmþ1
Pzswt,1i Pz0 Pzswt,1i Pz0 CTd Qyf m ¼ N 1 : ... : 1
az1 ¼ , az2 ¼ Pzswt,1i T2 ; 1 ð27Þ
T2 T1 T2 T1
hm ¼ hmþ1 MTmþ1 I þ Bd R1 BTd Kmþ1
Pzswt,2i Pzswt,1i Pzswt,2i Pzswt,1i
az3 ¼ , az4 ¼ Pzswt,2i T3 Bd R1 BTd gmþ1
T3 T2 T3 T2
1
ð24Þ Sm ¼ Smþ1 MTmþ1 I þ Bd R1 BTd Kmþ1
Bd R1 BTd gmþ1
Thus, the coefficients of the z-directional ZMP
reference path for both cases are determined from the boundary conditions for solving above equations
equations (23) and (24). can be defined as
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
Khorram and Moosavian 9
Figure 4. The swing leg path to cross over the uneven terrain.
to design the path of swing legs.40,41 In this section, it adjusted for having a collision-free path.i is the
is assumed that the initial and terminal positions of angle between the line and the x-axis which is calcu-
each swing leg are known by using an appropriate lated as
footstep planning algorithm. As shown in Figure 4,
the distance between the initial and final positions in !
1
PSWL,j
z,f PSWL,j
z,i
each step is divided into four segments and a piece- i ¼ tan ð31Þ
wise-cubic spline is defined for each segment to pass PSWL,j
x,f PSWL,j
x,i
through these waypoints, while some additional con-
straints are required to satisfy smoothness conditions. The waypoints of PSWL,j SWL,j
midi and Pmidf can be obtained by
The waypoints are chosen to avoid any collision
with the environment. Since it is assumed that the
terrain equation is known, the waypoints are selected PSWL,j þ PSWL,j
PSWL,j
midi ¼
mid midi
,
based on this equation. The waypoints for jth swing 2
ð32Þ
leg are defined as PSWL,j
mid þ PSWL,j
midf
PSWL,j
midf ¼
2
h i
PSWL,j
midp ¼ PSWL,j SWL,j SWL,j
midi , Pmid , Pmidf ð29Þ
To find the trajectory for each swing leg, a cubic func-
tion is chosen for each segment. For instance, swing
Since it is assumed that the swing legs move only in foot trajectory for the mth segment of the jth leg can
the x–z plane and the y-components of the footprints be expressed as
are the same, the position of midpoint between the
initial and final footholds for one step is calculated as
PTSWL,j
m ¼ am ðt tm Þ3 þbm ðt tm Þ2 þcm ðt tm Þ
þ dm tm 4 t4tmþ1
PSWL,j
x,i þ PSWL,j
x,f
PSWL,j
x,mid ¼ h sinði Þ, ð33Þ
2 ð30Þ
PSWL,j
z,i þ PSWL,j
z,f
PSWL,j
z,mid ¼ þ h cosði Þ To find the coefficients of the above equation, some
2
constraints should be added. To guarantee the
smoothness of the path, these polynomials must be
where h is the maximum height of the tip of swing leg continuous in the position, velocity, and acceleration
respect to the line connecting the initial and final pos- levels. In addition, the path must pass through defined
itions of a leg within a step. This parameter can be waypoints. Consequently, the coefficients of defined
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
10 Proc IMechE Part C: J Mechanical Engineering Science 0(0)
To show the validity and examine the performance of in the above equation, the initial acceleration of the
the proposed algorithm, the COG and swing leg paths COG is assumed to be zero.
are generated and are applied on a quadruped robot,
which is depicted in Figure 5, in the simulation and
Experimental setup
the experiment. Also, obtained results will be dis-
cussed. The robot is composed of four legs. Each leg The proposed algorithm is implemented on a small-
has three degrees of freedom to allow the robot to size quadruped robot, which is composed of a rect-
move its leg freely in 3D space. The joints of each angular base with four legs that each one has three
leg are two hip joints about pitch and roll axes and active joints with DC servo motors, as shown in
a knee joint about pitch axis. In addition, the main Figure 7. Dynamixel AX-12 actuator is chosen for
body of the robot is free to move along all axes and each leg. This motor is a modular one with a gear
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
Khorram and Moosavian 11
Figure 6. Uneven terrains that the robot must move on it, (a) with roughness along only two directions and (b) with roughness
along three directions. The color circles represent the footholds of all legs during the robot motion form initial position to terminal
position. Green, red, blue, and black circles show the footholds of left front, left hind, right hind, and right front legs, respectively.
box and a control circuitry. Also, it has the position The experiments were executed using a laptop Intel
feedback via a potentiometer mounted on the motor i5-2430 with 2.4 GHz processor and 6.00 GB RAM.
shaft. The maximum holding torque of this motor is The connection between the motor and the PC is
1.62 Nm at 10 V. In addition, the maximum speed of established with USB2Dynamixel. A KINECT
this motor is 114 r/min or 11.9 rad/sec. The operating device, which has a depth sensor and two Red-
angle of the motor is 300 . The speed control of the Green-Blue (RGB) cameras, is used to measure the
motor is performed by pulse width modulation algo- position of the main body in the 3D space through
rithm. Also, transistor-transistor logic (TTL) level image processing. This camera takes the image from
serial communications are used to send and receive the robot with the rate of 30 frames per second and
signals. The desired values and all computations are the images are analyzed to compute the position of
performed in MATLAB and the computed com- the COG. The position control frequency of the robot
mands are sent to the motors. is restricted by the vision measurement systems.
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
12 Proc IMechE Part C: J Mechanical Engineering Science 0(0)
Despite the fact that the motors have higher fre- COG jerk. Since ensuring stability has higher priority
quency, the sampling time of our experimental in the locomotion over uneven terrains, the tracking
system is 33 ms. error weight is chosen higher than the jerk weight.
The COG, reference and resultant ZMP paths in
three directions for both terrains are shown in
Obtained results
Figure 8. The error between the resulting ZMP and
The selection of the optimization weight parameter is its desired values for a point mass model is very small
an important issue in the obtained results. There is a and this provides a stable motion. When the COG
trade-off between the minimization of the ZMP track- moves along the obtained path, the stability of the
ing error and the COG jerk through the tune of the robot is ensured because the resultant ZMP is very
values of the weight parameters Q and R. These par- near to the desired value at each instant. In addition,
ameters are chosen based on which objective has more the algorithm provides a smooth COG path, which is
importance: the reduction of the ZMP error or the important in control task to apply continues torques
to the actuators. Compared to previous methods,
which takes a constant height in the COG path plan-
ning, the height of the COG changes continuously in
Table 1. The geometric parameters and required data in the order to match the terrain.
design of COG path for simulation studies. The swing leg path must be generated to help the
Value
robot to move over the uneven terrain. The path of
Symbol (unit) Definition swing legs for all legs for traversing the terrain shown
in Figure 6(a) is depicted in Figure 9. As seen, the
m 10 (kg) Robot’s body mass swing legs move on the ground without any collision
l1 0.4 (m) Length of thigh with the environment. h is assumed to be a constant
l2 0.6 (m) Length of shank value in the design of the path for all swing legs.
m1 0.1 (kg) Mass of thigh We could also select different values for this param-
m2 0.1 (kg) Mass of shank eter for each step and leg.
Lb 0.8 (m) Length of body With the computation of the COG and the swing
Wb 0.3 (m) Width of body leg paths and also the selection of an appropriate
value for the main body orientations, the robot con-
hb 0.15 (m) Height of body
figuration can be determined during the motion.
lc1 0.2 (m) Distance between the hip joint to
This is performed by using an inverse kinematics algo-
the COG of the thigh
rithm. The stick figure of the quadruped in the
lc2 0.3 (m) Distance between the knee joint to
trotting on the uneven terrain is shown in Figure 11.
the COG of the shank
In the design of main body orientation, the avoidance
Q 1 Tracking error weight
of the collision of the swing and stance leg with envir-
R 106 Input weight
onment is taken into consideration. Due to avoid the
h 0.1 (m) Maximum height for the tip of swing tipping over the robot, the minimum pitch angle is
legs
selected. Due to lack of space, the orientation design
algorithm is not described here.
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
Khorram and Moosavian 13
4 3.5
(a) 0.04
3.0
3 0.02
2.5
0.00
2 2.0
-0.02
X(m)
Z(m)
Y(m)
1.5
1 -0.04
1.0
The COG -0.06 0.5
0 The Reference ZMP
The Resultant ZMP -0.08 0.0
-1 -0.10 -0.5
0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18
Time(sec) Time(sec) Time(sec)
(b)
Figure 8. The desired and resulting ZMP as well the COG path in three-dimensional space for a point mass model, (a) for terrain
with the roughness along x and y axes (Figure 6(a)) and (b) for terrain with the roughness along three axes (Figure 6(b)). The blue solid
lines correspond to the COG path and red solid lines to the reference ZMP. The dashed black lines represent the resultant ZMP.
2.5 2.5
1.5 1.5
Z(m)
Z(m)
1.0 1.0
0.5 0.5
0.0 0.0
0 1 2 3 4 5 -1 0 1 2 3 4 5
X(m) X(m)
2.5 2.5
1.5 1.5
Z(m)
Z(m)
1.0 1.0
0.5 0.5
0.0 0.0
-1 0 1 2 3 4 5 0 1 2 3 4 5
X(m) X(m)
Figure 9. The two-dimensional path of the legs and the terrain in the X–Z plane for terrain 6-a.
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
14 Proc IMechE Part C: J Mechanical Engineering Science 0(0)
Compared to the other methods, in this paper, the located in the ground surface, thus the z-component
ZMP path is designed along three axes. In other of the ZMP becomes zero, whereas, in the step 3, one
words, the height of main body is calculated through supporting leg is located on the horizontal plane and
the ZMP equation. Whereas, the z-directional COG other stance leg is placed on a plane, which is not
path along is assumed to be constant or an arbitrary coplanar with the horizontal plane and the ZMP
function of time in previous methods. The compari- should leave the ground in this case. The paths of the
son between the proposed algorithm and the method COG for both methods are shown in Figure 10. The
presented in Kalakrishnan et al.13 is shown in Figure moment about support legs for point mass model for
10. The motion consists of three steps. During step 1, both methods is shown in Figure 10. As seen, when the
all four legs are the contact with the ground. Within ZMP is on the ground, i.e. z-component of the ZMP is
step 2 and 3, legs of 1 and 3; legs of 2 and 4 are in zero, both methods result in zero moments. However,
swing phase, respectively. In step 2, the stance legs are in the case that the ZMP has three components, the
proposed method shows its merit. Since the proposed
method in Kalakrishnan et al.13 is based on the
3.5
assumption of Pzzmp ¼ 0, the moment about support
legs is no longer zero and it produces a tumbling
3.0 moment about diagonal supporting line and the
2.5
robot becomes unstable. The influence of this tumbling
moment for real robot becomes more important.
2.0 Now, the generated paths are applied on an 18 DOF
Z(m)
1.5
quadruped robot in the simulation. Since the main
challenge is the stability, it should be evaluated
1.0 during the motion. In other words, the 3D ZMP for
0.5
the robot should be calculated. Since the calculation of
this point is a difficult task, the moment of the inertial
0.0 and gravitational forces of all legs and main body
0 1 2 3 4
about diagonal lines and also the angular moment of
X(m)
all legs and main body are taken as a criterion for the
robot stability. This moment is calculated as
Figure 10. The comparison between the proposed algorithm
and the COG path generation method presented in
Kalakrishnan et al.13. Mij ¼ eTij ðPG Pi Þ mP€ G þ mg
Y(m)
Z(m)
0.2
-0.01 0.72
0.1
(d) 0.6
0.5
0.4 Step2 Step 3
M(N.m)
0.3
0.2
0.1
0.0
-0.1
0.8 1.0 1.2 1.4 1.6 1.8 2.0
Time(sec)
Figure 11. Stick-figure illustration of the quadruped robot in the trot on the given terrain.
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
Khorram and Moosavian 15
2
2.0
1 1.5
1.0
0
0.5
M 13(N.m)
M 24(N.m)
-1 0.0
-0.5
-2
-1.0
-3
-1.5
-4 -2.0
0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18
Time(sec) Time(sec)
Figure 12. The moment about the diagonal lines in the real robot (18 DOF).
n
m X
X are illustrated in Figure 13(c). With the definition of
þ PijG Pi mij P€ ijG þ mij g optimization problem, appropriate values for the roll
i¼1 j¼1 angle are selected so that the tumbling moment is
m X
X n minimized. The comparison of three reduction meth-
HG HijG ð37Þ ods is shown in Table 2. As seen, first method is the
i¼1 j¼1 best among proposed methods. This is due to the fact
that the moment produced by the motion of the swing
In ideal situation, a robot with the massless legs, these legs because of the high accelerations for small swing
moments will be zero. However, in the real robot, all phase duration (i.e. 0.4 s) is a dominant factor in total
tumbling moments about diagonal lines are no longer values of moments. If swing phase duration increases,
zero. These tumbling moments are shown in the other methods show their merits in the reduction
Figure 12. As expected, these moments are not zero of tumbling moments. In the second method, the
and these moments may make the robot unstable design of news trajectory for swing legs, the moments
especially in the case in which the legs are relatively in the middle of each step decrease because the accel-
heavy. eration of the tip at those points becomes zero.
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
16 Proc IMechE Part C: J Mechanical Engineering Science 0(0)
0.0 0.0
M13(N.m)
M 24(N.m)
-0.2
-0.2
-0.4
-0.6 -0.4
-0.8
-0.6
-1.0
-1.2 -0.8
0 5 10 15 20 25 30 35 0 5 10 15 20 25 30 35
Time(sec) Time(sec)
(b) 4 2
3
1
2
1
M 13(N.m)
0
M24(N.m)
-1 -1
-2
-2
-3 The poroposed swing trajectory
A New swing trajectory
-4 -3
0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18
Time(sec) Time(sec)
(c) 3 2
2
1
1
0
M 13(N.m)
M 24(N.m)
-1
-1
-2
-2
-3 With the adjusment of roll With the adjusment of roll
No adjusment of roll No adjusment of roll
-4 -3
0 2 4 6 8 10 12 14 16 18 0 2 4 6 8 10 12 14 16 18
Time(sec) Time(sec)
Figure 13. The reduction of the tumbling moments by various methods, (a) the increase in the duration of a step, (b) the design of a
better trajectory for swing legs, and (c) the adjustment of the role angle of main body.
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
Khorram and Moosavian 17
q12(rad)
q13(rad)
0.20 2.8 -1.6
(b) 0.4 2 5
0.3 4
1
0.2
qdot11(rad/sec)
qdot12(rad/sec)
qdot13(rad/sec)
3
0.1 0
2
0.0 -1
1
-0.1
-2 0
-0.2
-0.3 -3 -1
0 5 10 15 20 25 30 35 0 5 10 15 20 25 30 35 0 5 10 15 20 25 30 35
Time(sec) Time(sec) Time(sec)
Figure 14. The experimental results in trotting over a sloped terrain for several gaits. The blue line corresponds to the measured
data and the red line indicates the desired value, (a) the angle of all joints of the leg 1 and (b) the velocity of all joints of the leg 1.
simple model, which its main characteristic is less model and under sufficient friction assumption
computation time. between the tip of the stance legs and the ground,
the 3D ZMP was introduced. The reference ZMP
path was computed along three axes. Then, the
Conclusions
COG path was calculated by using an optimal control
The gait generation to enable a quadruped robot to approach based on the ZMP reference path. Finally,
trot on challenging terrains was investigated in this the swing leg path is defined so that the contact with
article. A main problem in the development of the environment is not occurred during the 3D motion.
trot gait on uneven terrains is the derivation of an To examine the performance of the proposed algo-
appropriate stability criterion to guarantee the robot rithm, an uneven terrain was modeled and the path
stability on such terrains. By taking a point–mass for the main body in three dimensions and also the
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
18 Proc IMechE Part C: J Mechanical Engineering Science 0(0)
0.28
0.00 0.27
-0.01 0.26
-0.02
Ybody(m)
Zbody(m)
0.25
-0.03 0.24
-0.04 0.23
-0.05 0.22
-0.06 0.21
-0.05 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35 -0.05 0.00 0.05 0.10 0.15 0.20 0.25 0.30 0.35
Xbody(m) Xbody(m)
Figure 16. The experimental results of COG path which are measured by using kinect device.
swing legs path were generated. Through comparing 5. Hardarson F. Stability analysis and synthesis of statically
with other COG path generation, the merits of the balanced walking for quadruped robots, PhD Thesis.
proposed algorithm were approved. Since this plan- Stockholm: Royal Institute of Technology, 2002.
ning approach is based on a point mass model of the 6. Liu F, Wu D and Chen K. The simplest creeping gait
robot, the tumbling moments for real robot are no for a quadruped robot. Proc IMechE, Part C: J
longer zero and they should be reduced. This can be Mechanical Engineering Science 2013; 227: 170–177.
done by various methods, such as increasing the dur- 7. Zamani A, Khorram M and Moosavian SAA.
ation of a step, or designing of a better trajectory for Dynamics and stable gait planning of a quadruped
the swing legs, and finally by the adjustment of the robot. In: Proceeding of International Conference on
Control, Automation and Systems (ICCAS),
role angle of the main body. The obtained results
Gyeonggi-do, China, 26–29 October 2011, IEEE.
revealed the merits of the proposed planning algo-
8. Havoutis I, Semini C, Buchli J, et al. Quadrupedal trot-
rithm, which is successful in stable motion planning ting with active compliance. In: Proceeding of
for a complicated 18 DOF quadruped robot moving International Conference on Mechatronics, Vicenza,
on an uneven terrain in simulation. Furthermore, the Italy, 27 Febuary–1 March 2013, IEEE.
robot could trot successfully over a sloped terrain 9. Gehring C, Coros S, Hutter M, et al. Control of
with proposed algorithm in experimental studies. dynamic gaits for a quadrupedal robot. In: Proceeding
of nternational Conference on Robotics and Automation
(ICRA), Karlsruhe, Germany, 6–10 May 2013, IEEE.
Declaration of conflicting interests
10. Marhefka DW, Orin DE, Schmiedeler JP, et al.
The author(s) declared no potential conflicts of interest with Intelligent control of quadruped gallops. Mechatronics
respect to the research, authorship, and/or publication of IEEE/ASME Trans 2003; 8: 446–456.
this article. 11. Poulakakis I, Smith JA and Buehler M. On the
dynamics of bounding and extensions: Towards the
half-bound and gallop gaits. In: Kimura H, Ishiguro
Funding
A and Witte H (eds) Adaptive motion of animals and
The author(s) received no financial support for the research, machines, Springer-Verlag, Tokyo, 2006, pp.79–88.
authorship, and/or publication of this article. 12. Vukobratović M and Borovac B. Zero-moment
point—thirty five years of its life. Int J Hum Robot
References 2004; 1: 157–173.
1. Raibert M. BigDog, the rough-terrain quadruped robot. 13. Kalakrishnan M, Buchli J, Pastor P, et al. Learning,
In: Chung M (ed). Proceedings of the 17th IFAC World planning, and control for quadruped locomotion over
Congress. COEX, Korea, South, 2008. challenging terrain. Int J Robotics Res 2011; 30: 236–258.
2. Semini C. HyQ—design and development of a hydraulic- 14. Huang H-P, Yan J-L and Cheng T-H. State-incremental
ally actuated quadruped robot. Italy: University of optimal control of 3D COG pattern generation for
Genoa, 2010, p. 210. humanoid robots. Adv Robotics 2013; 27: 175–188.
3. Spröwitz A, Tuleu A, Vespignani M, et al. Towards 15. Takao S, Yokokohji Y and Yoshikawa T. FSW (fea-
dynamic trot gait locomotion: design, control, and sible solution of wrench) for multi-legged robots. In:
experiments with Cheetah-cub, a compliant quadruped Proceeding of International Conference on Robotics and
robot. Int J Robotics Res 2013; 32: 932–950. Automation (ICRA), Taipei, Taiwan, September 2003,
4. Hutter M, Gehring C, Hopflinger MA, et al. Toward pp.14–19, IEEE.
combining speed, efficiency, versatility, and robustness 16. Garcia E, Estremera J and de Santos PG. A compara-
in an autonomous quadruped. Robotics IEEE Trans tive study of stability margins for walking machines.
2014; 60: 1–14. Robotica 2002; 20: 595–606.
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015
Khorram and Moosavian 19
17. Kajita S, Kanehiro F, Kaneko K, et al. The 3D Linear 29. Kolter JZ and Ng AY. The Stanford LittleDog: a learn-
Inverted Pendulum Mode: A simple modeling for a ing and rapid replanning approach to quadruped loco-
biped walking pattern generation. In: Proceeding of motion. Int J Robotics Res 2011; 30: 150–174.
IEEE/RSJ International Conference on Intelligent 30. Barasuol V, Buchli J, Semini C, et al. A reactive con-
Robots and Systems, Maui, Hawaii, 29 October–3 troller framework for quadrupedal locomotion on chal-
November 2001, IEEE. lenging terrain. In: Proceeding of IEEE International
18. Kajita S, Kanehiro F, Kaneko K, et al. Biped walking Conference on Robotics and Automation (ICRA),
pattern generation by using preview control of zero- Karlsruhe, Germany, 6–10 May 2013, IEEE.
moment point, In: Proceeding of IEEE International 31. Fukuoka Y, Kimura H, Hada Y, et al. Adaptive
Conference on Robotics and Automation, Taipei, dynamic walking of a quadruped robot ‘Tekken’ on
Taiwan, 14–19 September 2003, IEEE. irregular terrain using a neural system model. In:
19. Takanishi A, Lim H-o, Tsuda M, et al. Realization of Proceeding of IEEE International Conference on
dynamic biped walking stabilized by trunk motion on a Robotics and Automation, Taipei, Taiwan 14–19
sagittally uneven surface. In: Proceeding of IEEE September 2003, IEEE.
International Workshop on Intelligent Robots and 32. Ugurlu B, Havoutis I, Semini C, et al. Pattern gener-
Systems, Ibaraki, Japan, 3–6 July 1990, IEEE. ation and compliant feedback control for quadrupedal
20. Erbatur K and Kurt O. Natural ZMP trajectories for dynamic trot-walking locomotion: experiments on
biped robot reference generation. Industr Electronics RoboCat-1 and HyQ. Autonomous Robots 2015; 38:
IEEE Trans 2009; 56: 835–845. 415–437.
21. Harada K, Kajita S, Kaneko K, et al. An analytical 33. Santos CP and Matos V. Gait transition and modula-
method for real-time gait planning for humanoid tion in a quadruped robot: a brainstem-like modulation
robots. Int J Humanoid Robotics 2006; 3: 1–19. approach. Robotics Autonomous Syst 2011; 59: 620–634.
22. Hong S, Oh Y, Kim D, et al. Real-time walking pattern 34. Ajallooeian M, Gay S, Tuleu A, et al. Modular control
generation method for humanoid robots by combining of limit cycle locomotion over unperceived rough ter-
feedback and feedforward controller. Industr rain. In: Proceeding of IEEE/RSJ International
Electronics IEEE Trans 2014; 61: 355–364. Conference on Intelligent Robots and Systems (IROS),
23. Wieber P-B. Trajectory free linear model predictive con- Tokyo, Japan, 3–7 November 2013, IEEE.
trol for stable walking in the presence of strong pertur- 35. Raibert MH. Trotting, pacing and bounding by a quad-
bations. In: Proceeding of IEEE/RAS International ruped robot. J Biomechan 1990; 23: 79–98.
Conference on Humanoid Robots, Genova, Italy, 4–6 36. Kurazume R, Hirose S and Yoneda K. Feedforward
December 2006, IEEE. and feedback dynamic trot gait control for a quadruped
24. Albert A and Gerth W. Analytic path planning algo- walking vehicle. In: Proceeding of IEEE International
rithms for bipedal robots without a trunk. J Intelligent Conference on Robotics and Automation (ICRA),
Robotic Syst 2003; 36: 109–127. Seoul, Korea, 21–26 May 2001, IEEE.
25. Kuindersma S, Permenter F and Tedrake R. An effi- 37. Kurazume R, Yoneda K and Hirose S. Feedforward
ciently solvable quadratic program for stabilizing and feedback dynamic trot gait control for quadruped
dynamic locomotion. In: Proceeding of IEEE walking vehicle. Autonomous Robots 2002; 12: 157–172.
International Conference on Robotics and Automation 38. Ugurlu B, Havoutis I, Semini C, et al. Dynamic trot-
(ICRA), Hong Kong, 31 May 2014–7 June 2014, IEEE. walking with the hydraulic quadruped robot–HyQ:
26. Kalakrishnan M, Buchli J, Pastor P, et al. Fast, robust Analytical trajectory generation and active compliance
quadruped locomotion over challenging terrain. In: control. In: Proceeding of IEEE/RSJ International
Proceeding of IEEE International Conference on Conference on Intelligent Robots and Systems (IROS),
Robotics and Automation (ICRA), Anchorage, AK, 3– Tokyo, Japan, 3–7 November 2013, IEEE.
7 May 2010, IEEE. 39. Park JH, Han S and Kwon WH. LQ tracking controls
27. Sugihara T, Nakamura Y and Inoue H. Real-time with fixed terminal states and their application to reced-
humanoid motion generation through ZMP manipula- ing horizon controls. Syst Contr Lett 2008; 57: 772–777.
tion based on inverted pendulum control. In: 40. Kolter JZ and Ng AY. Task-space trajectories via cubic
Proceeding of IEEE International Conference on spline optimization. In: Robotics and Automation, 2009
Robotics and Automation, Washington, DC, 11–15 ICRA’09 IEEE International Conference on: IEEE,
May 2002, IEEE. 2009, pp.1675–1682.
28. Sato T, Sakaino S, Ohashi E, et al. Walking trajec- 41. Tian L and Collins C. An effective robot trajectory
tory planning on stairs using virtual slope for biped planning method using a genetic algorithm.
robots. Industr Electronics IEEE Trans 2011; 58: Mechatronics 2004; 14: 455–470.
1385–1396.
Downloaded from pic.sagepub.com at UNIV CALIFORNIA SANTA BARBARA on November 26, 2015