Apollo3D Team Description Paper
Jie Zhu, Lisen Li, Yanda Ren, Zhiwei Liang, Zhiyong Zhang
College of Automation, Nanjing University of Posts and Telecommunications
Abstract Apollo3D is a team in RoboCup soccer simulation 3D league. We mainly aim at building a systematical architecture of intelligent and skillful robots. During the past year we achieved to create the new cooperation tactic to handle the current vision .The 6vs6 version requires a more complicated tactic to avoid robots 's being in a disorder .And given to the noise added to the server and the bigger filed size of current version, Apollo3D Soccer Simulation Team adopts another new method of localization and WorldModel construction .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.
Introduction
Apollo Simulation 3D Team was established in 2006, and successfully attended several competitions. We have won the 2010Robocup 1st place recently. The Nao robot is much like the real robot. This creature attracts a large amount of students to devote to this field. Thanks to the devotion and cooperation of these students, several achievements had been made in the past year. In the following section2, the new method of localization is presented.
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. The method for planning walking patterns is presented in section 3. The new tacitic will be shown in section 4. It is followed by conclusion and future work in section 5.
Localization
We have the same vision mode with last year's. According the feature of the vision mode, we gain the equation as follow:
$$(x-x_1)^2 + (y-y_1)^2 + (z-z_1)^2 = r_1^2$$
where x, y and z that are describe as (x, y, z) is the position of the center of the robot, and x1,y1,z1 that describe as $(x_1, y_1, z_1)$ is the position of the flag namely of the field in the Fig.1.
And r1, r2, r3 that describe as $(r_1, r_2, r_3)$ is the distance between the center of robot and the flag of the field. So we gain one equations set including eight equations.
Thanks to the same height for z direction of all the flags of the field, we can solve the x or y easily form of two equations of the equations set that have the same y or x. For example choosing two equations formed from flag F_L_1 and flag F_L_2, we can calculate the y directly. To improve the accuracy, we select the equations with the same x coordinates to calculate the y coordinates, and then take average. The final result will be the y coordinates of the center of the robot. As the same way, we can also gain the x coordinates of the centered.
Foot Trajectories
Assuming that the period necessary for one walking step is $T_C$, the time of the $K_{th}$ 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 $K_{th}$ 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)T_c$. 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 $T_C$ 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 = q_{gs}(k)$ and $t = (k+1)T_c + T_d$, 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}$$
where $T_d$ is the interval of the double-support phase, $q_{ge}$ and $q_{gs}$ are the angles of the ground surface under the support foot, particularly $q_{ge} = q_{gs} = 0$ on level ground.
The following constraints must be satisfied.
$$x_{a}(t) = \begin{cases} kD_{s}, & t = kT_{c} \ kD_{s} + l_{an} \sin q_{b} + l_{af} (1 - \cos q_{b}), & t = kT_{c} + T_{d} \ kD_{s} + L_{ao}, & t = kT_{c} + T_{m} \ (k+2)D_{s} - l_{an} \sin q_{f} - l_{ab} (1 - \cos q_{f}), & t = (k+1)T_{c} \ (k+2)D_{s}, & t = (k+1)T_{c} + T_{d} \end{cases}$$
$$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}$$
Where $D_s$ is the length of one step, $kT_c + T_m$ is the time when the right foot is at its highest point, $I_{an}$ is the height of the foot, $I_{af}$ is the length from the ankle joint to the toe, $I_{ab}$ is the length from the ankle joint to the heel, $h_{ge}(k)$ and $h_{gs}(k)$ are the heights of the ground surface which is under the support foot, particularly $h_{ge}(k) = h_{gs}(k) = 0$ on level ground.
Since the entire sole surface of the right foot is in contact with the ground at $t = kT_c$ and $(k+1)T_c$ + 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}$$
To generate a smooth trajectory, it is necessary that the first derivative (velocity) terms $x_a(t)$ and $z_a(t)$ be differential, the second derivative (acceleration) terms $x_a(t)$, $z_a(t)$ and $\theta_a(t)$ must be be continuous at all t.
More complicated tactic
Since the 6vs6 mode has been adopted, it is essential to figure out a systematic tactic instead of a looseness of tactic struct in order to consider more complicated environment. Attack Tactic and defence tactic are available respectively under certain circumstances. Especially defence tactic in our team's own field. Defenders are given different roles when they are in different positions. Robots may adopt different behaviour while opponents is close or far away from the goal. What's more, goalkeeper has been given a more important role with a much more effective block action.
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 work will focus on this field as well as the improve the tactic and localization accuracy of the robot.
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. 2009. [3] J.Yamaguchi, E.Soga and A.Takanishi.Development of a Bipedal Humanoid Robot-Control method of Whole Body Cooperative Dynamic Biped Walking. IEEE Int.Conf.On Robotics and Automation.1999:368-374. [4] K.Nagasaka, M.Inaba and H.Inoue.Dynamic Walking Pattern Generation for Humanoid Robot based on Optimal Gradient Method.IEEE Ini.Conf.on Systems, Man and Cybernetics.1999:908-913. [5] M.Harts, K.Kreutz-Delgado, J.W.Helton.Optimal Biped Walking with a Complete Dynamical Model.ProcCDC'99, 1999:2999-3004. [6] L.Roussel, et al. Generation of Energy Optimal Complete Gait Cycles for Biped Robots. Proc ICRA'98, 1998;2036-2041. [7] Y.hasegawa, T.Arakawa and T.Fukuda.Trajectory Generation for Biped Locomotion Robot. Mechatronics.2000, 10:67-89.