Posture Correctionof Quadruped Robotfor Adaptive Slope Walking

Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/329587182

Posture Correction of Quadruped Robot for Adaptive Slope Walking

Conference Paper · December 2018


DOI: 10.1109/ROBIO.2018.8665093

CITATIONS READS
16 1,850

4 authors, including:

Chenxiao Yu Liguang Zhou


The Chinese University of Hong Kong The Chinese University of Hong Kong, Shenzhen
1 PUBLICATION 16 CITATIONS 26 PUBLICATIONS 149 CITATIONS

SEE PROFILE SEE PROFILE

Huihuan Qian
The Chinese University of Hong Kong, Shenzhen
33 PUBLICATIONS 263 CITATIONS

SEE PROFILE

All content following this page was uploaded by Liguang Zhou on 28 December 2018.

The user has requested enhancement of the downloaded file.


Posture Correction of Quadruped Robot for Adaptive Slope Walking
Chenxiao Yu∗ , Liguang Zhou∗ , Huihuan Qian and Yangsheng Xu
The Chinese University of Hong Kong, Shenzhen

Abstract— The ability to maintain balance and stability is through its body posture change and adjust its body posture
a major challenge for quadruped robots in locomotion. For dynamically to climb the slope without slippery.
example, when walking in the unstructured environment, There have been some awesome quadruped robot plat-
the robot not only needs to adjust its gait according to
the terrain information, but also needs to tune the body forms rushing into research field such as BigDog[1], HyQ
posture based on the real-time body posture acquired from [2], StarlETH[3], AnyMal [4][5], LittleDog [6]. These robot
inertial measurement unit (IMU) to maintain stability. In this platforms are agile and versatile for many complex tasks like
paper, we present a method that focuses on the design of the traversing uneven terrain and impact recovery. In particular,
posture correction controller based on the IMU feedback for Mastalli [7][8] presented an online and onboard planning
adaptive slope walking for a quadruped robot. To this end,
the posture correction controller is integrated into the foot and perception system for quadrupedal locomotion over
trajectory generator to maintain balance. We experimentally challenging terrains with body action planning and footstep
validated our approach both on simulation and real quadruped planning controller, which has shown amazing locomotion
robot. Compared with the one only with the foot trajectory ability.
generator, the quadruped robot can walk more stable with the Although some great achievements have been made in
posture correction controller integrated into the foot trajectory
generator and has a better locomotion ability. Our method the research of locomotion ability over challenging terrains,
increases locomotion stability when walking on the slopes. the above-mentioned robots require the advanced actuators
and dynamical control like torque control, precise sensors
Index Terms— Quadruped robot, posture correction con- and expensive computing ability for vision-based planning.
troller, IMU These are too expensive and unavailable for a servo-actuated
quadruped robot.
I. INTRODUCTION There also have been some researches investigating the
Flat ground is an ideal terrain for living creatures and abilities of servo-actuated quadruped robot. Liu [9] proposed
robots on the earth to travel through. However, the majority the Multilayer-CPG model as the fundamental controller to
of terrains in the daily environment are not flat and slopes and generate the adaptive walking patterns for quadruped robot
uneven terrains are very common in our daily life. Therefore, to walk on slope terrains, and the robot is able to walk
going uphill and downhill and walking on the uneven terrain on the slope with 12 degrees inclination in the simulation.
is the fundamental locomotion ability for quadruped robot to Wagner [10] proposed a foot contact estimation method for
grasp. legged robots walks in rough terrain. They used the foot
Slope walking locomotion is not hard for mammals. When contact information to estimate the inclination of the slope.
they walk towards the slope, they perceive environments Zhang [11] presented a position control method dealing with
through visual sense, force sense, and other sense organs, the unexpected impacts with two steps, attitude control,
which allows them to adjust their body posture in command and stability control. The quadruped robot is capable to
of nervous systems automatically and subconsciously to recover trotting gait after the unexpected impact within
adapt to different terrains. However, it becomes a complex a certain magnitude. Agrawal [12] presented an optimal
issue when it comes to a quadruped robot without a camera posture correction search method in quadruped for walking in
or touch sensor. The mammals are observed to be able to the unstructured and uneven terrain. However, these method
adjust their body posture naturally and smoothly to achieve did not tackle with the problem of slope climbing for the
the perfect locomotion, which has greatly inspired the gait servo-actuated quadruped robot in real environment.
design of a quadruped robot for walking in the unstructured This paper introduces a more convenient and practical way
and complex environment. To achieve the smooth slope for the servo-actuated quadruped robot with only inertial
climbing, the quadruped robot is required to detect terrain measurement unit (IMU) sensor to remain stable in the
information and adjust its walking gait accordingly. This unstructured environment. A posture correction strategy was
means that the robot is required to perceive the terrain type proposed for quadruped robot to realize the stable in uphill
and downhill locomotion. The strategy was applied to the
* Authors contributed equally basic walking and turning gait. The quadruped robot was able
Chenxiao Yu, Liguang Zhou, Huihuan Qian, and Yangsheng Xu are to adjust the body posture with IMU feedback. The inverse
with Robotics and Artificial Intelligence Laboratory, The Chinese Uni-
versity of Hong Kong, Shenzhen , 518172 P.R. China 116010273, kinematics was used to solve the corresponding posture
[email protected] adaptation. The simulation results demonstrate that posture
Fig. 2. The system controller architecture for the quadruped robot

Fig. 1. Quadruped robot model

correction allows the robot to rapidly adjust the body posture


according to the environmental situations.
The rest of the paper is organized as follows: Section II
introduces the Robot Model and the controller framework of
quadruped robot. Section III mainly introduces the inverse
kinematics for executing the posture correction. Besides,
the combination of trot gait and posture correction is also
introduced. Section IV shows the simulation environment Fig. 3. Robot model
of our quadruped robot on a Steward platform for posture
correction simulation. Also, the posture correction for slope
climbing is demonstrated in simulation as well. The exper- the impact caused by centroid change. Posture correction is
iment results of our proposed strategy show the importance an effective way to achieve this goal.
of stable walking with posture correction. Section V draws Posture correction aims to recover the body of the robot
the conclusion about acquired results and specific analysis, parallel to the ground under some perturbations. When the
as well as future works. robot walks on the uneven ground, its roll, pitch, and yaw
values will deviate from zero, which means the centroid of
II. ROBOT M ODEL AND C ONTROLLER A RCHITECTURE robot body fluctuates in some degrees. In other words, it
A. Robot Model indicates the robot is not stable enough. Posture correction
We designed a servo-actuated quadruped robot model allows the robot to adjust joint angles of legs automatically
shown in Figure 1. The robot has four legs with 3 degrees of and smoothly to reduce the variance degree of body swing.
freedom in each leg, which is the minimum requirement for The roll, pitch, and yaw values detected by IMU are used to
walking in 3D space. Each leg contains 3 rotary joints, in- calculate the coordinates of four foot-ends with regard to the
cluding side-pendulum joint (abduction/adduction), hip joint body center. Then the angle values that each joint should be
(flexion/extension) and knee joint (flexion/extension). adjusted to are calculated.
The robot model and related parameters is demonstrated
B. Controller Architecture in the Figure 3.The A, B, C, D are the toes of the four
The controller architecture is shown in Figure 2 The legs. W and L are the body width and the body length.
controller architecture consists of the foot trajectory gener- H is the height of the robot from the toe of the foot to
ator and posture correction controller. The trajectory gener- the body plate. There are two established coordinates frames
ator is designed for generating the different kinds of gaits (O, x, y, z) and (Oz , Xr , Yp , Zy ), representing the kinematic
such as walking gait, trotting gait, and turning gait [13] coordinate frame and the attitude angle coordinate frame.
according to the specific input gait parameters. The foot Then the initial coordinates of A, B, C, D relative to frame
trajectory can be any foot trajectories like ellipse, Bezier, O are A(L/2, -H, -W/2), B(-L/2, -H, -W/2), C(-L/2, -H, W/2),
and rectangular curve [14]. Posture correction controller and D(L/2, -H, W/2) respectively.
receives the feedback from the on-board IMU and sends the Under the function of the posture correction controller, if
corresponding adjusting information of the body gesture to the body of the robot was detected to rotate, it would be
the foot trajectory generator. adjusted to the initial state. Suppose it should rotates about
z-axis by angle y, rotates about y-axis by angle p and rotates
III. C ONTROLLER DESIGN
about x-axis by angle r to return to the initial state, the
A. Posture Correction Controller rotation matrix R with regard to frame O in terms of yaw(y),
When a robot walks in unstructured environments, its pitch(p), roll(r) values is:
centroid changes more than normal situation. In this case, h cosy −siny 0 i h cosp 0 sinp i h 1 0 0
i
the robot has a risk of losing stability and tipping over. To R(y, p, r) = siny cosy 0 0 1 0 0 cosr −sinr
0 0 1 −sinp 0 cosp 0 sinr cosr
keep stable, its joint angles should be adjusted to counteract (1)
Fig. 4. The leg structure of quadruped robot

With the rotation of the frame, the new coordinates of the


four toes A1 ,B1 ,C1 , and D1 with regard to body center can
be calculated:
Fig. 5. Flowchart for joint angles integration
A1 (x1 , y1 , z1 ) = A · R(y, p, r)
B1 (x1 , y1 , z1 ) = B · R(y, p, r)
(2)
C1 (x1 , y1 , z1 ) = C · R(y, p, r)
D1 (x1 , y1 , z1 ) = D · R(y, p, r) A = −z (8)
Thus, the positions of the four toes relative to the body B = l1 + xc1 − ys1 (9)
center are known. For the further calculation of the 12 joint p
angles, the coordinates of toes A2 ,B2 ,C2 , and D2 relative to R = ± A2 + B 2 (10)
the frame in Figure 4 are gotten by converting the original
coordinates: C. Integration of Posture Correction Controller and Foot
Trajectory Generator
A2 (x2 , y2 , z2 ) = (z1 , −(y1 + W/2), x1 − L/2) The posture correction controller introduced before keeps
the robot stable in the static state. In order to keep it stable in
B2 (x2 , y2 , z2 ) = (z1 , −(y1 + W/2), x1 + L/2)
(3) the dynamic state, the posture controller should be integrated
C2 (x2 , y2 , z2 ) = (z1 , −(y1 − W/2), x1 + L/2) into the foot trajectory generator. An initial stable posture
D2 (x2 , y2 , z2 ) = (z1 , −(y1 − W/2), x1 − L/2) is determined by setting the value of H in Figure 3 so the
coordinates of four toes A, B, C, D with regard to body center
B. Inverse Kinematics
are determined. Then the initial angle values of 12 joints
Since the position of each toe of the foot at a 3- φi can be calculated by inverse kinematics. When the robot
dimensional coordinate system have been calculated, inverse walks, its body posture changes constantly so a series of
kinematics is used to get the corresponding angle values of desired joint angle values will be given by posture correction
12 rotatory joints. The leg structure of the robot is shown in controller. Meanwhile, there are periodic changes in its joint
Figure 4 as an abstract leg form. The l1 , l2 , and l3 are defined angle values which are controlled by trajectory generator.
as the length of side-pendulum, thigh and calf respectively. These two types of joint angle values are combined by using:
The θ1 , θ2 and θ3 are respectively defined as the rotation
angle of side-pendulum, hip joint, and knee joint. The inverse φ = φi + k1 ∆φ1 + k2 ∆φ2
kinematics of the 3-DOF leg is modeled with DH parameters. ∆φ1 = φp − φi (11)
Here is the solution of θ1 , θ2 , θ3 : ∆φ2 = φt − φi
y
θ1 = arctan( ) (4) Where φ is the target joint angle in the whole control
x system. φp and φt are the joint angles controlled by posture
D B correction controller and trajectory generator respectively.
θ2 = arctan( √ ) − arctan( ) (5)
R2 −D 2 A k1 and k2 are the weight coefficients that determine how
much effect these two controllers have on the robot. The
z − l2 s2
θ3 = arctan( ) − θ2 (6) detailed integration mechanism is shown through a flowchart
ys1 − xc1 − l1 − l2 c2 in Figure 5.
Where D, A, B is as follows: In order to make the posture controller function better, the
l32 − l22 − l12 − z 2 + 2l1 (ys1 − xc1 ) − (ys1 − xc1 )2 PID controller is implemented. The error is the difference
D= (7) between the current roll/pitch/yaw information from IMU
2l2
sensor and the desired roll/pitch/yaw value. U(k) is the size
of attitude angle needed to be corrected.
X
U (k) = Kp err(k)+Ki err(j)+Kd (err(k)−err(k−1))
(12)
Considering the fact that the roll, pitch, and yaw value
fluctuate unavoidably within a certain range when the robot
walks normally, unnecessary adjustment from posture control Fig. 6. Structure of the Stewart platform
may impact the gait. Therefore, the rule to assess the
necessity of triggering the posture controller is defined:
 V V
0 (|r| < rlim ) (|p| < plim ) (|y| < ylim )
P =
1 otherwise
(13) (a) (b) (c)
Where P is the state variable. 1 indicates that the posture
controller should be triggered. r, p and y are the detected Fig. 7. Snapshots of the robot adjusting posture on the top plate of Stewart
platform in simulation
values of roll, pitch, and yaw. rlim , plim , and ylim are
the threshold values of the roll, pitch, and yaw angles
respectively.
B. Uphill and Downhill with Posture Controller
In addition to restricting the triggering of posture con-
troller, the adjustment margin should also be limited. On In simulation, the robot was programmed to walk though
the one hand, the length of the legs of the robot limits a path with an upward slope and a downward slope of
the range of attitude angles that can be adjusted to. On the 10 degrees in Figure 8. Its foot trajectory was set as a
other hand, excessive posture correction probably have bad simple ellipse (Figure 9). The comparison experiments were
effect on robot locomotion. Therefore, the attitude angle to conducted, one with posture controller and another without.
be corrected should follow the rule: The roll and pitch values were recorded through the whole
process for analyzing the stability of the locomotion. The
 parameters related to posture controlled walking is in Table
|αd | |αd | < αu
α= (14) I.
αu |αd | ≥ αu
Observing the locomotion performance, in the walk pro-
cess without posture controller, the quadruped robot had dif-
Where α is the size of roll/pitch/yaw angle will be
ficulty of walking at the junction of the plane and tilt to side
corrected, αd is the actual detected roll/pitch/yaw value, and
way. Moreover, when walking uphill, the robot encountered
αu is the upper-limit of the size of roll/pitch/yaw angle that
slip at this moment and was not able to climb the slope with
can be corrected.
only the foot trajectory controller. When walking downhill,

IV. E XPERIMENTS AND R ESULTS

Two sets of experiments were conducted in Webots simu-


lation. The first experiment was for verifying the function of
the posture correction controller. In the second experiment,
the posture controller was integrated into walk gait and the
locomotion effects were recorded and analyzed.
Fig. 8. Walking path for the robot

A. Posture Correction Controller


The robot was put on the top plate of the Stewart platform
shown in Figure 6, which has six degrees of freedom,
including three linear movements x, y, z, and the three
rotations pitch, roll, and yaw. In this experiment, when the
platform tilted to all the directions by 0.15 rad in succession,
the robot was capable of adjusting its joint angles to correct
its posture and stood stably and smoothly. The detailed
results are in Figure 7. From the experiment, the posture
correction controller is verified to be able to help robot keep
balance and avoid the robot falling from the top plate of the
Stewart platform in any direction. Fig. 9. Foot trajectory
TABLE I
E XPERIMENT PARAMETERS

Parameter Definition Value Unit


Kp Proportional gain of PID control 0.9
Ki Integral gain of PID control 0.08
Kd Derivative gain of PID control 0.5
k1 Weight of posture controller 1.0 (a) t=6.91s (b) t=23.86s
k2 Weight of trajectory generator 1.0
rlim Threshold value of roll angle 0.03 rad
plim Threshold value of pitch angle 0.02 rad
ylim Threshold value of yaw angle 0.005 rad
ru Upper limit of corrected roll angle size 0.08 rad
pu Upper limit of corrected pitch angle size 0.1 rad
yu Upper limit of corrected yaw angle size 0.05 rad
(c) t=62.55s (d) t=80.94s

(e) t=92.04s (f) t=104.23s

Fig. 11. Sequence of snapshots of the robot walking downhill and uphill
in Webots
Fig. 10. Yaw values collected through simulation platform Webots

the robot suffered from slipping and had a trend of rolling


over the slope because its speed was too fast. However, there
was no emergence of these problems when the robot walked
with posture controller. The yaw values collected through
simulation platform Webots (Figure 10) illustrates that the
robot without posture control (red line) walked away from
original path while the robot with posture control (blue line)
(a) Uphill (b) Downhill
walked almost in a straight line. The Figure 11 shows the
process of quadruped robot walking uphill and downhill Fig. 12. Snapshots of the robot walking downhill and uphill on a slope
with posture controller in 104 seconds. When walking on
the slope, it is obvious that the robot stretches the hind
pairs of legs and shrink the front pairs of legs in order to regular fluctuation in the roll and pitch direction when walks
reach a better posture when walking uphill (Figure 11(a) both uphill and downhill. The results indicate the robot will
to Figure 11(c)). When walking downhill (Figure 11(d) to walk more stable with the posture correction controller.
Figure 11(f)), the robot stretches the front pairs of legs while
shrinks the hind pairs of legs for better posture to walk V. C ONCLUSION
downhill. In physical experiment, such adjustment were also We have proposed a body posture correction model for
observed (Figure 12). In this case, the robot is walking uphill quadruped robot to use PID controller to dynamically adjust
and downhill stably. its body posture with respect to the IMU feedback. The
In order to do a more rigorous analysis about the sta- experimental results show that the body posture correction
bility of the robot locomotion process, the roll and pitch controller can correct the body posture fast and effectively
information detected by IMU is shown in Figure 13. Figure with the IMU information. Besides, we incorporate the body
13(a) and Figure 13(b) show pitch and roll values verse time posture with walking gait and the robot can go uphill and
when the robot walked uphill. Similarly, Figure 13(c) and downhill smoothly with the body posture correction. By
Figure 13(d) show the downhill situation. The red dash lines comparison, the robot without the body posture correction is
represent the situations without posture correction and the easier to slip and tilt to side way because of the unexpected
blue solid lines represent the posture correction situations. counterforce. The comparison study shows the body posture
It is obvious that the blue lines have smaller and more correction performs well on the quadruped robot. The robot
regular fluctuation amplitudes while the red lines have larger is put in front of a long slope. With the normal trotting
fluctuation amplitudes and become irregular in some time gait, the quadruped robot is not able to walk on the positive
intervals. This explains that compared with the robot without slope and will be stuck at the intersection of flat ground and
posture correction, the robot with it had a smaller and more positive slope. Therefore, the posture correction is added to
APPENDIX
The accompanying video can be accessed at the following
https://www.youtube.com/watch?v=s9ylafktMZs.
R EFERENCES
[1] D. Wooden, M. Malchano, K. Blankespoor, A. Howardy, A. A. Rizzi,
and M. Raibert, “Autonomous navigation for bigdog,” in Robotics and
Automation (ICRA), 2010 IEEE International Conference on. IEEE,
Conference Proceedings, pp. 4736–4741.
(a) [2] C. Semini, N. G. Tsagarakis, E. Guglielmino, M. Focchi, F. Cannella,
and D. G. Caldwell, “Design of hyqa hydraulically and electrically
actuated quadruped robot,” Proceedings of the Institution of Mechan-
ical Engineers, Part I: Journal of Systems and Control Engineering,
vol. 225, no. 6, pp. 831–849, 2011.
[3] M. Hutter, C. Gehring, M. Bloesch, M. A. Hoepflinger, C. D. Remy,
and R. Siegwart, StarlETH: A compliant quadrupedal robot for fast,
efficient, and versatile locomotion. World Scientific, 2012, pp. 483–
490.
[4] M. Hutter, C. Gehring, A. Lauber, F. Gunther, C. D. Bellicoso,
V. Tsounis, P. Fankhauser, R. Diethelm, S. Bachmann, and M. Blsch,
“Anymal-toward legged robots for harsh environments,” Advanced
Robotics, vol. 31, no. 17, pp. 918–931, 2017.
(b) [5] M. Hutter, C. Gehring, D. Jud, A. Lauber, C. D. Bellicoso, V. Tsounis,
J. Hwangbo, K. Bodie, P. Fankhauser, and M. Bloesch, “Anymal-a
highly mobile and dynamic quadrupedal robot,” Robotic Systems Lab,
ETH Zurich Zurich Switzerland, Report, 2016.
[6] P. Filitchkin and K. Byl, “Feature-based terrain classification for
littledog,” in Intelligent Robots and Systems (IROS), 2012 IEEE/RSJ
International Conference on. IEEE, Conference Proceedings, pp.
1387–1392.
[7] C. Mastalli, I. Havoutis, A. Winkler, D. Caldwell, and C. Semini, “On-
line and on-board planning and perception for quadrupedal locomo-
tion,” in IEEE International Conference of Technologies for Practical
Robot Applications (TEPRA), Conference Proceedings.
[8] C. Mastalli, I. Havoutis, M. Focchi, D. Caldwell, and C. Semini,
(c) “Motion planning for quadrupedal locomotion: coupled planning,
terrain mapping and whole-body control,” 2018.
[9] C. Liu, L. Xia, C. Zhang, and Q. Chen, “Multi-layered cpg for adaptive
walking of quadruped robots,” Journal of Bionic Engineering, vol. 15,
no. 2, pp. 341–355, 2018.
[10] L. Wagner, P. Fankhauser, M. Bloesch, and M. Hutter, Foot Contact
Estimation for Legged Robots in Rough Terrain. World Scientific,
2017, pp. 395–403.
[11] S. Zhang, H. Ma, Y. Yang, and J. Wang, “The quadruped robot
adaptive control in trotting gait walking on slopes,” in AIP Conference
Proceedings, vol. 1890. AIP Publishing, Conference Proceedings, p.
020004.
[12] A. Agrawal, A. Jadhav, N. Pareekutty, S. Mogili, and S. V. Shah,
(d) “Terrain adaptive posture correction in quadruped for locomotion on
unstructured terrain,” in Proceedings of the Advances in Robotics.
Fig. 13. The pitch, roll information collected through simulation platform ACM, Conference Proceedings, p. 46.
Webots during the a) waking uphill phase from lower ground to upper [13] W. Liu, L. Zhou, H. Qian, and Y. Xu, “Turning strategy analysis
ground and b) walking uphill phase from lower ground to upper ground c) based on trot gait of a quadruped robot,” in Robotics and Biomimetics
waking downhill phase from upper ground to lower ground and d) walking (ROBIO), 2017 IEEE International Conference on. IEEE, Conference
downhill phase from upper ground to lower ground Proceedings, pp. 1306–1311.
[14] L. Zhou, H. Qian, Y. Xu, and W. Liu, “Gait design and comparison
study of a quadruped robot,” in Information and Automation (ICIA),
the controller with IMU feedback. After that, the quadruped 2017 IEEE International Conference on. IEEE, Conference Proceed-
ings, pp. 80–85.
robot is able to stably walk in both positive slope and
negative slope with the posture correction.
In the future, we will investigate the posture correction
for dynamically walking on the uneven terrain. Besides, the
omnidirectional uphill and downhill walking based on the
posture correction with IMU feedback will also be validated.
ACKNOWLEDGEMENT
This paper is supported by Robotic Discipline De-
velopment Fund (2016-1418) from Shenzhen Gov and
PF.01.000143 from the Chinese University of Hong Kong,
Shenzhen, China.

View publication stats

You might also like