Apollo 3D Humanoid Simulation Team Description

Ke Ding, Yejing Zhao, Yikun Huang, Zhiyong Zhang

College of Automation, Nanjing University of Posts and Telecommunications; Apollo Robotics Lab, Nanjing University of Posts and Telecommunications


Abstract Apollo3D is a team in RoboC up soccer simulation 3D league. The target is to build a nice team with wonderful skills and good cooperation among players. This paper briefly describes efforts of Apollo 3D Soccer Simulation Team during past year. Based on the solution of inverse kinematics of a leg by combining analysis method with numerical method, trajectory planning method is used to implement the humanoid robot walking skill in a 3D simulation environment, and also Omni-directional walk under certain conditions is achieved.

1 Introduction

Recently, increasing interest has been shown in the exploration of humanoid robot, which is a new interdisciplinary domain combining mechanism with electron, computer science, materials science and sensor. Thus, to some extent, it represents the level of the development in high technology of a country. The study of humanoid robot has become a significant subarea of robotics. A growing number of investigation and exportation has been devoting into this domain and many notable achievements have been made.

Biped walking pattern is one of the most difficult problems in the humanoid robot area, and there exists no ideal algorithm for a generalized walking scenario. In section 2, the humanoid robot model is presented. The method for planning walking patterns is presented in section 3. The simulation results are presented in section 4. It is followed by conclusion and future work in section 5.

2 Humanoid Robot Model

The NAO humanoid robot is designed by Aldebaran Robotics in France. The device is 57 cm high and weighs 4.5 kilograms (about the size of a 6 month old baby).

Fig.1. Real Nao Model
Fig.1. Real Nao Model
Fig.2. Nao in Simulation
Fig.2. Nao in Simulation
Fig.3. Nao Joints Map
Fig.3. Nao Joints Map

Table. 1. Nao Parameters

Name Parent Tran slation Mass Geometry Name 1 Ancho r Axis Min Max
neck torso 0, 0, 0.09 0.05 Cylinder Hj1 0, 0, 0 0,0, 1 -120 120
L: 0.08 R: 0.015
head neck 0, 0, 0.065 0.35 Sphere 0.065 HJ2 0, 0,-0. 005 1,0, 0 -45 45
shoulder torso 0.098, 0, 0.075(r) 0.07 Sphere 0.01 AJ1 0, 0, 0 1,0, 0 -120 120
-0.098, 0, 0.075(1)
upperarm shoulder 0.01, 0. , , , 0.150 Box AJ2 -Translation on 0,0, 1 -95(r) 1(r)
-0.01, 0. .02, 0(1) 0.07, 0.08, 0.06 -1(1) 95(1)
elbow upperarm -0.01, 0. .07, 0.009(r) 0.035 Sphere 0.01 AJ3 0, 0, 0 0,1, 0 -120 120
0.01, 0. .07, 0.009(1)
lowerarm elbow 0, 0. .05, 0 0.2 Box AJ4 -Tr anslati on 0,0, 1 -1(r) 90(r)
0.05, 0.11, 0.05 -90(1) 1(1)
hip1 torso 0.055, -0. .01,-0.115(r) 0.09 Sphere 0.01 LJ1 0, 0, 0 -0.7071,0, 0.7 071(r) -90 1
-0.055, -0. .01,-0.115(1) -0.7071,0,-0.7 071(1)
hip2 hip1 0, 0, 0 0.125 Sphere 0.01 LJ2 0, 1, 0 1,0, 0 -45(r) 25(r)
0.07, 0.07, 0.14 -25(1) 45(1)
thigh hip2 0, 0. .01, -0.04 0.275 Box LJ3 -Tr anslati on 1,0, 0 -25 100
shank thigh 0,0.0 05,-0.125 0.225 Box LJ4 0,-0 .01, 0. 045 1,0, 0 -130 1
0.08, 0.07, 0.11
ankle shank 0, -0. .01,-0.055 0.125 Sphere 0.01 LJ5 0, 0, 0 1,0, 0 -45 75
foot ankle 0, 0. .03,-0.035 0.2 Box LJ6 0,-0 .03, 0. 035 0,1, 0 -25(r) 45(r)
0.08, 0.16, 0.03 -45(1) 25(1)
Torso 1.2171 Box
0.1, 0.1, 0.18

3 Planning Walking Patterns

Placeholder for overview

3.1 Foot Trajectories

Assuming that the period necessary for one walking step is $T_c$, the time of the Kth is from $kT_c$ to $(k+1)T_c$, k=1,2,...,K. K is the number of steps. To simplify our analysis, we define the Kth walking step to begin with the heel of the right foot leaving the ground at $t=KT_c$, and to end with the heel of the right foot making first contact with the ground at t=(K+1)Tc. In the following, we discuss only the generation of the right foot trajectory. The left foot trajectory is same as the right foot trajectory except for a Tc delay.

Letting $q_b$ and $q_f$ be the designated angles of the right foot as it leaves and lands on the ground respectively. Assuming that the entire sole surface of the right foot is in contact with the ground at t = KTc and t = (K+1)Tc + Td, we get the following constraints:

$$\theta_{a}(t) = \begin{cases} q_{gs}(k) & t = kT_{c} \ q_{b}, & t = kT_{c} + T_{d} \ -q_{f}, & t = (k+1)T_{c} \ -q_{ge}(k), & t = (k+1)T_{c} + T_{d} \end{cases}$$ (1)

where Td is the interval of the double-support phase, $q_{gs}(k)$ and $q_{ge}(k)$ are the angles of the ground surface under the support foot, particularly $q_{gs}(k) = q_{ge}(k) = 0$ on level ground.

The following constraints must be satisfied.

$$x_{a}(t) = \begin{cases} kDs, & t = kT_{c} \ kDs + l_{an} \sin q_{b} + l_{af} (1 - \cos q_{b}), & t = kT_{c} + T_{d} \ kDs + L_{ao}, & t = kT_{c} + T_{m} \ (k+2)Ds - l_{an} \sin q_{f} - l_{ab} (1 - \cos q_{f}), & t = (k+1)T_{c} \ (k+2)Ds, & t = (k+1)T_{c} + T_{d} \end{cases}$$ (2)

$$z_{a}(t) = \begin{cases} h_{gs}(k) + l_{an}, & t = kT_{c} \ h_{gs}(k) + l_{af} \sin q_{b} + l_{an} \cos q_{b}, & t = kT_{c} + T_{d} \ H_{ao}, & t = kT_{c} + T_{m} \ h_{ge}(k) + l_{ab} \sin q_{f} + l_{an} \cos q_{f}, & t = (k+1)T_{c} \ h_{ge}(k) + l_{an}, & t = (k+1)T_{c} + T_{d} \end{cases}$$ (3)

Where Ds is the length of one step, KTc + Tm is the time when the right foot is at its highest point, lan is the height of the foot, lafis the length from the ankle joint to the toe, lab is the length from the ankle joint to the heel, $h_{gs}(k)$ and $h_{ge}(k)$ are the heights of the ground surface which is under the support foot, particularly $h_{gs}(k) = h_{ge}(k) = 0$ on level ground.

Since the entire sole surface of the right foot is in contact with the ground at t = kTc and t = (K+1)Tc + Td, the following derivative constraints must be satisfied:

$$\begin{cases} \dot{\theta}{a}(kT{c}) = 0 \ \dot{\theta}{a}((k+1)T{c} + T_{d}) = 0 \end{cases}$$

$$\begin{cases} \dot{x}{a}(kT{c}) = 0 \ \dot{x}{a}((k+1)T{c} + T_{d}) = 0 \end{cases}$$

$$\begin{cases} \dot{z}{a}(kT{c}) = 0 \ \dot{z}{a}((k+1)T{c} + T_{d}) = 0 \end{cases}$$

$$\begin{cases} \dot{z}{a}(kT{c}) = 0 \ \dot{z}{a}((k+1)T{c} + T_{d}) = 0 \end{cases}$$

$$\begin{cases} \dot{z}{a}(kT{c}) = 0 \ \dot{z}{a}((k+1)T{c} + T_{d}) = 0 \end{cases}$$

$$\begin{cases} \dot{z}{a}(kT{c}) = 0 \ \dot{z}{a}((k+1)T{c} + T_{d}) = 0 \end{cases}$$

$$\begin{cases} \dot{z}{a}(kT{c}) = 0 \ \dot{z}{a}((k+1)T{c} + T_{d}) = 0 \end{cases}$$

$$\begin{cases} \dot{z}{a}(kT{c}) = 0 \ \dot{z}{a}((k+1)T{c} + T_{d}) = 0 \end{cases}$$

$$\begin{cases} \dot{z}{a}(kT{c}) = 0 \ \dot{z}{a}((k+1)T{c} + T_{d}) = 0 \end{cases}$$

$$\begin{cases} \dot{z}{a}(kT{c}) = 0 \ \dot{z}{a}((k+1)T{c} + T_{d}) = 0 \end{cases}$$

To generate a smooth trajectory, it is necessary that the first derivative (velocity) terms $\dot{X}{a(t)}$, $\dot{Z}{a(t)}$ and $\dot{\theta}{a(t)}$ be differential, the second derivative (acceleration) terms $\ddot{X}{a(t)}$, $\ddot{Z}{a(t)}$ and $\ddot{\theta}{a(t)}$ be continuous at all t, including all breakpoints t = kTc, kTc + Td, kTc + Tm, (k+1)Tc, (k+1)Tc + Td.

To satisfy constraint (1)–(6), and the continuity conditions of the first derivative and the second derivative, the order of the polynomial will be too high and its computation is difficult using polynomial interpolation. Therefore, we obtain the foot trajectory by third-order spline interpolation.

3.2 Hip Trajectory

From the viewpoint of stability, it is desirable that hip motion parameter $\theta_h(t)$ is constant when there is no waist joint; in particular, $\theta_h(t) = 0.5\pi$ rad on level ground. Hip motion $Z_h(t)$ hardly affects the position of the ZMP. We can specify $Z_h(t)$ to be constant, or to vary within a fixed range. Assuming that the hip is at its highest position $H_{hmax}$ at the middle of the single-support phase, and at its lowest position $H_{hmin}$ at the middle of the double-support phase during one walking step, $Z_h(t)$ and $X_h(t)$ has the following constraints:

$$z_{h}(t) = \begin{cases} H_{h\min}, & t = kT_{c} + 0.5T_{d} \ H_{h\max}, & t = kT_{c} + 0.5(T_{c} - T_{d}) \ H_{h\min}, & t = (k+1)T_{c} + 0.5T_{d} \end{cases}$$ (7)

$$x_{h}(t) = \begin{cases} kDs + x_{ed}, & t = kT_{c} \ (k+1)Ds - x_{sd}, & t = kT_{c} + T_{d} \ (k+1)Ds + x_{ed}, & t = (k+1)T_{c} \end{cases}$$ (8)

4 Results

Set the parameters before the simulation:

Table.2. Parameters of the biped robot

Ds 0.16 m Lan 0.035 m
Тс 0.2 s Laf 0.08 m
Td 0.04 s Lab 0.08 m
Tm 0.1 s Lao 0.08 m
Qgs 0 m Lth 0.1201 m
Qge 0 m Lsh 0.1 m
Qb 0.2 rad Hgs 0.015 m
Qf 0.2 rad Hge 0.015 m
------ --------- ----- ---------
Hmin 0.23 m Hao 0.03 m
Hmax 0.23 m
Fig.4. Foot and Hip tratory
Fig.4. Foot and Hip tratory
Fig.5. Simulation Result
Fig.5. Simulation Result

5 Conclusion and Future Work

Humanoid robot research is a popular and trends in robot research, many researchers and engineers focus their research on this field. The planning method in this paper based on given parameters, it is not easy to implement this method to general robots. Our further future will focus on this field as well as the improve the stability of walking patterns.

References

[1] Obst, O., Rollmann, M., Spark --- A Generic Simulator for Physical Multi-agent Simulations . Koblenz-Landau University[D]. 2005. [2] Robocup3D Server Develop Group. RoboCup Soccer Server 3D Manual. 2007. [3] KÖgler, M., Simulation and Visualization of Agents in 3D Environments. Technical report, Koblenz-Landau University[R]. 2003. [4] Smith, R., Open Dynamics Engine (ODE) User Guide. 2004. [5] Rollmann, M., Spark --- a generic simulator. Diploma Thesis, Koblenz-Landau University[D]. 2004. [6] Park, I., Kim, J., Oh, J., Online Biped Walking Pattern Generation for Humanoid Robot KHR-3(KAIST Humanoid Robot-3: HUBO) [J]. 2006. [7] Huang, Q., Yokoi, K., Kajita, S., Kaneko, K., Arai, H., Koyachi, N., Tanie K., Planning Walking Patterns for a Biped Robot. In: IEEE Transactions on Robotics and Automation[J]. 2001. [8] Huang, Q., Nakamura, Y., Arai, H., and Tanie, K., "Development of a biped humanoid simulator". In: Proc. Int. Conf. Intelligent Robot and Systems[J]. 2000: 1936--1942 [9] Sudhir, G., Elements of Control Systems[M]. 2004. [11] John J., Introduction to Robotics: Mechanics and Control[M]. 2005.