Research proposal
Miao Liu, Qingjun Meng, Tengfei Zhu, Jun Peng
Central South University, School of Information Science and Engineering
Abstract There are many difficulties to make a humanoid robot motion harmoniously and naturally in the RoboCup 3D simulation for the first time. In order to enable the humanoid robot walk stably, in this paper, we propose a method of walking patterns training combining the Zero-Moment Point (ZMP) trajectory planning with real-time modification. By the off-line planning, we can determine each anticipant joint trajectory for the humanoid to be followed. It is necessary for a humanoid robot to track and modify its trajectories timely. In addition, the humanoid robot may fall down the ground in the process of walking because of the effects of some external factors, so we design a strategy of standing-up process, in which a series of harmonious motions are considered to make the humanoid robot be able to stand up as soon as possible.
1. Introduction
With the developments of robotics theory, the research on autonomous humanoid robot becomes an active area, and many projects focus on it. To develop a hardware humanoid with the desired physical capability, it is desirable to clarify the required specifications of components in advance. A humanoid simulator, consisting of component parameters, is a necessary tool to solve this problem.
As a simulation platform, the RoboCup 3D soccer simulation competition recently features a new humanoid simulation instead of the spherical simulation, which means a big step forward and many technical challenges as well, including walking, kicking, getting up, penalty, etc.
According to the new features being brought in the humanoid simulation for the first time, considering that a biped humanoid inherently suffers from instability and always risks to tipping over, we are interested in the following two aspects: stable and reliable walking training for the humanoid and how to stand up when falling down. To achieve the goal, our research proposal mainly focuses on the walking pattern planning and standing up process design, which will be introduced in the next two sections.
2. Walking patterns training
For a humanoid robot with complex body structure, it's necessary to harmonize every part of its body when it moves. As for biped robot, the principal question is how to walk stably.
To achieve this goal, we propose to plan the walk patterns based on the ZMP(zero moment point) off-line to determine each anticipant joint trajectory, track it when the humanoid robot is walking, and if necessary, do a proper real-time modification to the trajectory according to the environment and the sensor information.
2.1 Off-line plan based on ZMP
At present, ZMP principle is adopted widely to evaluate dynamic walking stability of biped walking robot. The ZMP is the point on the ground where the sum of all the moments of active forces equals zero. The biped robot is stable only if the ZMP is within the stable region, that is, the contact polygon between the feet and the ground.
According to the concept of ZMP, some main joints trajectory for the robot can be determined beforehand to meet the ZMP stability principle. As long as the robot's joints follow the trajectory when walking, its stability can be maintained.
Here we only discuss sagittal plane walking to simplify the analysis. When walking, the foot trajectory and hip trajectory should be considered. Supposing that the period for one walking step is $T_c$, the $k$ th walking step begins with the heel of the right foot leaving the ground at $t = kT_c$, and ends with the heel of the right foot touching the ground at $t = (k + 1)T_c$. During the step, suppose that $T_d$ is the interval of the double-support phase, then at $t=kT_c+T_d$ the toe of the right foot leaves the ground. Let $kT_c + T_m$ be the time when the right foot is at its highest point. The whole walking step is shown in Fig.1.
Let the function $Foot(x_f, z_f) = (x_f(t), z_f(t))$ denote the foot trajectory. Take the movement along x-axes for instance, according to the walking parameters shown in Fig.1, the $x_f(t)$ can be described as follows:
$$\chi_f(t) = \begin{cases} KD_S & t = KT_C \ KD_S + L_{an} \sin q_b + L_{af} (1 - \cos q_v) & t = KT_C + T_d \ KD_S + L_{ao} & t = KT_C + T_m \ (K + 2)D_S - L_{an} \sin q_f - L_{av} (1 - \cos q_f) & t = KT_C + T_C \end{cases}$$
Where $q_h$ and $q_f$ are the designated slope angles of the right foot as it leaves and lands on the ground, $L_{an}$ is the vertical height of the ankle joint, $L_{ab}$ and $L_{af}$ are the horizontal distances from the heel and the toe to the ankle joint. And $D_s$ is the length of one step.
Using 3rd order spline interpolation, let
$$\chi_f(t) = a_0 + a_1(t - KT_c) + a_2(t - KT_c)^2 + a_3(t - KT_c)^3$$
Combine the constraint (1) and constraint (2), the coefficients of equation (2) can be calculated, and then the foot trajectory with the x-axes is obtained. The $z_f(t)$ can be obtained in the same way.
As for the hip trajectory which can be described as $Hip(x_h, z_h) = (x_h(t), z_h(t))$, body motion along the z-axes has little effect on the position of the ZMP, we can specify $z_h(t)$ to be constant or to vary within a small range. To get high stability and smooth body motion along the x-axis, we can generate a series of smooth $x_h(t)$ and determine the final $x_h(t)$ with a large stability margin.
Let $x_{sd}$ and $x_{ed}$ denote distances along the x-axis from the hip to the ankle of the support foot at the beginning and at the end of the single-support phase respectively, $X_t(t)$ can be obtained by the following equation (3):
$$\chi_h(t) = \begin{cases} KD_S + x_{ed} & t = KT_C \ (K+1)D_S - x_{sd} & t = KT_C + T_d \ (K+1)D_S & t = KT_C + T_m \ (K+1)D_S + x_{ed} & t = KT_C + T_C \end{cases}$$
A series of smooth $x_h(t)$ can be obtained by setting different values of $x_{sd}$ and $x_{ed}$ within fixed ranges, e.g. $0.0 < x_{sd} < 0.5 D_s$, $0.0 < x_{ed} < 0.5 D_s$. Then the smooth trajectory $x_h(t)$ with the largest stability margin can be found by exhaustive search calculation.
2.2 Real-time modification
Because of the external interference, there may be some error between the actual ZMP and the expected ZMP when a humanoid robot is walking. In this situation, the humanoid robot may begin to tip and lost its body balance. To adapt to the unknown environment factors, we propose a real-time modification strategy.
Suppose that we can measure the actual ZMP by some physical methods or a peculiar sensor. During the period of tipping of the humanoid robot, generally only the toe or the heel is in contact with the ground. According to the definition of ZMP, the actual ZMP is on the toe or the heel, which means that it is on the boundary of the stable region. To make sure that the actual ZMP is within the stable region, we can control the particular joints such as the ankle joints of the supporting feet to appear some distance between the actual ZMP and the boundary of the stable region.
In addition, to walk continuously, the swing foot should land on the ground on time, or the robot may tip forward if the swing foot lands on the ground too late. So the transition from the swing foot to the support foot should occur at an appropriate time. We can control the height of the lifted foot so as to make it land on the ground on time as in the planned walking patterns. If the foot lands on the ground too fast, the robot lifts its foot in proportion to the reaction force; on the contrary, it lowers its foot.
3. Standing-up process design
Although there are many approaches existing to maintain a humanoid body balance, falling down is still unavoidable due to the external disturbances. Hence, it is essential for the robot to stand up as soon as possible when it falls down, especially in a real-time soccer play.
In a case of falling down, because of the robot's COM (center of mass) projection leaves the convex hull spanned by the feet contact points, the robot can not stand up straightforwardly. A solution is to use additional supporting points such as knees, elbows etc to move the COM back into the foot polygon. According to the restricted joints motions, we can assume a series of body motions with sequence to make the robot stand up.
Since the robot can fall backward or forward, in our research, we suppose that it falls backward and lies straight on flat ground surface. During the process of its standing up, no obstacles conflict with it. Then the whole process can be considered as four separate phases:
Phase 1: Sit up with the support of the arms behind the back.
Phase 2: Lift the trunk and the hip with the straightened arms contacting with the ground.
Phase 3: Bring the trunk over the feet with the arms leaving the ground.
Phase 4: Straighten the whole body from the flexural posture.
To make the robot be able to sit up, it's necessary to rely on the support of the arms. In phase 1, the arms are uplifted and backward to contact with the ground by rotating the shoulder and elbow joints. Then the elbows are rotated back to straighten the arms with the shoulder joints rotated further into negative direction. During this period, combining with the hip rotating, the trunk is bent in. The ankle should be rotated to let the feet lie flat on the surface, and the legs should be bent in with the knees folded to their negative limit. Subsequently, the shoulder roll joints are moved back to zero, which brings the arms into a position forward.
In phase 2, the arms should be straightened again with the trunk leaned back, and the ankle joints should be rotated positively to let the hip and the knees to shift forward until the trunk, the hip and the thighs are in the same plane. As a result, the trunk and the hip are lifted and the COM is shifted over the feet.
To shift the COM projection close to the trailing edges of the feet, in phase 3, the trunk is brought forward over the feet by rotating the hip joints in positive direction, and the arms are swung forward to accelerate this motion. In this phase, appropriate control parameters are needed to keep the stability of the COM. Since the robot has kept the stability with the flexural posture, the finally phase is to straighten the whole body with relevant joints motions.
On account of the complexity of the series motions, it's necessary to use the appropriate control parameters to make each part of the body work harmoniously.
4. Conclusion
The latest development from the spherical agent to the humanoid one in the RoboCup soccer 3D simulation brings many technical challenges to us. To adapt to the complex humanoid features, we intend to solve the stability problem in our first research phase. The walking patterns training by off-line plan and real-time modification can be expected to generate stable and reliable biped walking. While a series of harmonious motions are designed to make the humanoid be able to stand up when falling down. We are looking forward to making our humanoid motion as harmonious and flexible as it can in our future work.
References
- Hun-ok L., Yoshiharu K., Atsuo T.: Online Walking Pattern Generation for Biped Humanoid Robot with Trunk. Pro. Of IEEE International Conference on Robotics and Automation, (2002) 3111-3116
- Huang Q.: Development of a biped humanoid simulator. Proc. of IROS (2000)
- Shin C L.: Trajectory synthesis and physical admissibility for a biped robot during the single-support phase. Proc. of ICRA (1999)
- Wu W., Lang Y., Zhang F., Ren B.: Design, Simulation and Walking Experiments for a Humanoid and Gorilla Robot with Multiple Locomotion Modes. 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems, Edmonton, Alberta, Canada (2005) 44-49