TH-MOS: Humanoid robot

Liu Zhao, Chen Ken, Liu Li, Li Long, Mayu Dong, Wang Cong, Cao Yu, Zhangji Wen

Department of Precision Instruments and Mechanology Tsinghua University Beijing, China. 100084

http://www.pim.tsinghua.edu.cn/keyandanwei/me/robot/index.html


Abstract This paper describes the specifications and gait design method of MOS humanoid robot developed by Tsinghua University, which will participate in the humanoid league of RoboCup 2006. Two special control boards are developed to achieve robot control and decision making. A CMOS camera is used to recognize the ball and the opponents.

Introduction

MOS is the third generation humanoid soccer robot from Tsinghua University of China. This project first started in 2003, our aim is to develop a low-cost fully-autonomous humanoid platform for research into robot control and gait generation. MOS won the best exhibition prize at the 2004 China Soccer Robot Competition and got 1st place at 2005 China Soccer Robot Competition.

Fig. 1. MOS-1 (left), MOS-2 (centre), and the newly developed MOS-3 (right)
Fig. 1. MOS-1 (left), MOS-2 (centre), and the newly developed MOS-3 (right)

Specifications of MOS

(Section body below)

Mechanical Specifications

The MOS robot is 50 cm tall and weighs about 2 kg. It has 20 degrees of freedom: 6 in each leg, 3 in each arm and 2 in head. Table 1 shows the detailed configuration of DoFs. This distribution gives the robot flexibility to perform the basic walking patterns such as walking straight, turning around, sidling and penalty kicking (PK). The mechanical design aims to be energy-efficient and low-cost. We used just one kind of servo motor KRS-786ICS in MOS. This assures only a few parts and simple structure design. Table 2 shows the specifications of the actuators used for MOS.

Configuration of DoFs

Pitch Yaw Roll
Head 1 1
Shoulders 1×2 1×2
Elbows 1×2
Hips 1×2 1×2 1×2
Knees 1×2
Ankles 1×2 1×2
Total 20

Specifications of servo motors

Size [mm × mm × mm] Torque [kg cm] Speed [sec/60°] Voltage [V] Weight [g]
KRS-786ICS 46 × 35 ×21 8.7 0.17 6.0 45

Electrical Specifications

Two special control boards are located within the robot, one for behaviors control (driver system) and the other for decision making (decision system). They both adopt AVR micro-controllers and communicate with the serial ports. Figure 2 shows these two boards and their flow charts.

Fig. 2. The two control boards and their flow charts
Fig. 2. The two control boards and their flow charts
Fig. 2. The two control boards and their flow charts (flow charts detail)
Fig. 2. The two control boards and their flow charts (flow charts detail)

The whole flow

MOS has a CMOS camera for recognizing the target object, decision system selects a robot motion from the decision tree using the recognized result, driver system receives the motion code, then generates PWM signals to control the servo motors. The data of servo motors are updated every 20 ms. Figure 3 is the whole flow charts.

Fig. 3. The whole flow charts
Fig. 3. The whole flow charts

Gait Generation

Walking straight, turning around, sidling and penalty kicking (PK) are four basic walking patterns for the current humanoid soccer competition. A uniform gait generation method is applied to achieve all these walking patterns. Each statically stable walking pattern is divided into five key posture phases (PP). Fig. 4 - Fig. 7 gives the key posture phases for walking straight, turning around, sidling and penalty kicking. The bottom row of images in each figure shows the approximate position of the CoG in each phase.

These key postures are obtained by a genetic algorithm, its population for each generation is 20, the evolvement generation is fixed to 50. The crossover rate and mutation rate are set to 0. 8 and 0.04 respectively. The fitness function is to obtain max stable margin:

$$f = \sqrt{(y_{CoG} - y_{goal})^2 + (z_{CoG} - z_{goal})^2}$$

Where, $(y_{CoG}, z_{CoG})$ and $(y_{goal}, z_{goal})$ is the projection of CoG and expected point on the ground.

With following constraints:

$$\theta_1 + \theta_5 = 0$$

$$\theta_2 + \theta_3 + \theta_4 = 0$$

$$f(x_a(t), y_a(t), z_a(t)) = 0$$

$$f(\theta_a(t), \phi_a(t), \psi_a(t)) = 0$$

$$\theta_{\min} \le \theta_i \le \theta_{\max}, i = 1, 2, \dots 12$$

(2) and (3) ensure that the body is upright, (4) and (5) maintain the swing foot at expected position and angle.

Now we have the 5 key postures of the single-support phase. We obtain the complete single-support phase via third-order spline interpolation. Energy-cost will be greatly affected by the 4 time intervals between the 5 key postures phases, because they determined the coefficients of the third-order spline. Another genetic algorithm is employed to find out the optimal solution. The fitness function is

$$J = \frac{1}{2} \int_0^{\tau_c} \tau , \dot{q} , dt$$

Where, $\tau$ and q are the vectors of output torque and angle velocity of all the joints. The constraints are:

$$Td_1 < Td_2$$

$$Td_{2} < Td_{3}$$

$$Td_{3} < Tc$$

$$\tau \le \tau_{\text{max}}$$

$kTc$, $kTc+Td_1$, $kTc+Td_2$, $kTc+Td_3$, $(k+1)Tc$ are the five time points corresponding to five key posture phases, Tc is the single-support time. (8), (9) and (10) maintain the phase sequence, and (11) is torque output constraint.

We derive many kinds of smooth and energy-efficient walking patterns after the whole process, this method is applied to our robot in 2005 China Soccer Robot Competition, and our team got 1st place.

Fig. 4. Five key posture phases for walking straight Fig. 5. Five key posture phases for turning around
Fig. 4. Five key posture phases for walking straight Fig. 5. Five key posture phases for turning around
Fig. 6. Five key posture phases for sidling Fig. 7. Five key posture phases for penalty kicking
Fig. 6. Five key posture phases for sidling Fig. 7. Five key posture phases for penalty kicking

Conclusions

In this paper, we introduced our humanoid robot MOS developed by Tsinghua University of China. We also proposed a uniform gait generation method based on genetic algorithm. MOS has a very good achievement in China Soccer Robot Competition, this is the first time that we enter the worldwide RoboCup competition. we hope to show our strongpoint in the round and find out the weakness, this is a good opportunity for improving our robot.