Team TH-MOS

Zhu Keyin, Zhao Shuai, Zhang Boyu, Li Changshuo, Zhang Jiwen, Liu Li

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


Abstract This paper describes the design for the kid-size robot "MOS series" briefly. The robots are used as a vehicle for humanoid robotics research on multiple areas such as stability and control of dynamic walking, external sensing abilities and behavior control strategies. With the improvement of hardware configuration and algorithms of vision processing and self-localization, the improved robot "MOS2013" has been designed for RoboCup 2013 competitions.

1 Introduction

TH-MOS has participated in RoboCup Humanoid League competition since 2006. Based on the platform developed earlier by the team, we improved the stability of locomotion and the artificial intelligence of the robot every year. Last year, we have made satisfactory progress in the following research areas.

  • (1) Dynamic gaits and walking control algorithms.
  • (2) Efficient algorithm for image interpretation and perception.
  • (3) Precise Localization based on human-like perception using an articulated camera and a digital compass.

TH-MOS commit to participate in RoboCup 2013 in Eindhoven and to provide a referee with sufficient knowledge of the rules of the Humanoid League.

2 Hardware and Electronics

A photograph of MOS2013 is shown in Fig 1. The links of the robot are mainly fabricated out of aluminum alloy to reduce weight and keep rigidity. This year, the structure of the robot body is slightly improved as the size of the upper body is reduced and the camera is replaced. Thus the robot has a better performance on walking stability and vision perception. MOS-Lite and MOS-Strong, which were developed earlier by the team and which differ only in size, weight, mass distribution and servo motors, will also be used for RoboCup 2013 competitions.

Our robot has twenty-one degrees of freedom (DOF): six in each leg, three in each arm, two in the neck and one in the waist. The DOF in the waist provides a better control performance of the robot when kicking the ball and getting up from a fall. Besides DOF configuration, the parameters of different parts such as leg length and ankle height are determined by simulation with gait generating algorithms to ensure better walking stability.

The electronic system of the robot provides power distribution, communication buses, computing platform and sensing schemes for the robot. For having a human-like sensation, we use the camera for its vision perception, a 6-axis sensor (connect 2-axis accelerometer, 2-axis gyro and 2-axis digital compass) for dynamic balanced control and servo motors. The architecture of electronic system is shown in figure 2.

Fig. 1. Humanoid robot MOS2013
Fig. 1. Humanoid robot MOS2013
Fig. 2. Electronics architecture for MOS2013
Fig. 2. Electronics architecture for MOS2013

3 Software and Algorithms

The software architecture for the robot is shown in Fig. 3. The architecture is composed of two layers. The first layer receives and processes messages from WLAN (used for team communication), digital compass, camera and joint position sensors. The second layer determines the behavior of the robot using results computed in the first layer and the directions from the controller box.

This year, the algorithm of self-localization is improved as the landmarks are removed and the color of the goals becomes the same in the new rule. With the improvement of the algorithm of vision processing and the application of digital compass, we are able to use field lines and direction information to determine the location of our robot.

Fig. 3. Software architecture for MOS2013
Fig. 3. Software architecture for MOS2013

3.1 Omnidirectional Walking

The gait of most bipedal robots is controlled by precomputed trajectories, however, in robot soccer, a dynamic environment forces the robot to adapt their walking direction, speed and rotation to the changes [1]. A robot has to approach any point and module himself toward a preferred direction while avoid any collapse with obstacles on path. Based on predefined walking styles, complex path planning algorithm is needed. The generated series of gait can be eliminated when surrounding varies to some extent.

Our goal is capsulate the biped robot into an omnidirectional moving platform in the view of the mounted camera on head, and making gait parameterized with 3 parameters: offset in forward and sidle direction and another rotation direction around z axis.

Several walking strategies have been developed, most of which are based on the Three-Dimensional Linear Inverted Pendulum [2]. Firstly, foot trajectory is directly deduced from the foot planner from the gait command. Second, the center of pressure trajectory is defined based on ZMP discipline. COM trajectory is simply related to that of COP assuming the robot as a three-dimensional linear inverted pendulum [3][4][5]. Third, inverse kinematics generates joint trajectories based on the former foot and COM trajectories. An analysis resolution of inverse kinematics can be derived from the specific hip configuration of MOS 2013, which ensured the 3 joints intersected on a single point. [6] had issued the details of this method.

In our research, multiple formulas describing the trajectories are sampled, normalized, and saved in motion control board, and thus both of trajectory type and gain can be adjusted offline, and leaves joint trajectories generated online. An accelerating and decelerating algorithm is also developed to cope with a sudden change of walking speed command from behavior.

3.2 Vision Processing

The field lines can provide robots with a lot of useful information for self-localization and control strategies. In real-time competitions, the detection must be efficient. This year, we presented a novel method of line detection to meet the need.

First, we scan the image with a large scan-step roughly. Then we make a local-precise scanning in regions where may be edge points. In this process, we use Sobel Operator to detect the edge points considering the limited computing ability of the CPU carried by the robot. We also add the limitation of the environment and the robot's camera to reduce the scanning time, and use an adaptive threshold of gray value, based on the change of gray value along the edge between white and green, to improve the accuracy. Fig. 4 shows the result of point extraction.

After all edge points are picked out, a modified Hough Transform [7] combining with the gradient direction of these points is used to extract lines. Thanks to the limitation of the gradient direction, many invalid calculations are avoided and the calculating time is reduced greatly. In addition, to improve the accuracy, we also recalculate some important parameters. Fig. 5 shows the detection result of straight lines in different images.

Fig. 4. Precise scanning and edge points extracted
Fig. 4. Precise scanning and edge points extracted
Fig. 5. The detection result (image 1)
Fig. 5. The detection result (image 1)
Fig. 5. The detection result (image 2)
Fig. 5. The detection result (image 2)
Fig. 5. The detection result (image 3)
Fig. 5. The detection result (image 3)

3.3 Self-localization

Self-localization is a state estimation problem. The robot needs to estimate its position and orientation from the data of its sensors, mostly camera. We choose the widely used particle filter algorithm to solve this problem. The theoretical foundation is from 'Probabilistic Robotics', [8] and some ideas are from GT2005. [9]

The prediction, or control update, incorporates the states of particles with data from the odometer and IMU, and then some Gaussian noise is added. In the measurement update, we first incorporate the data from the camera and the compass, so we can distinguish similar landmarks and know their directions relative to the robot, and then we can update the states with this information. After that, we resample the particles. In this step, we're trying to keep as 'many low-probability particles' as possible. In the fourth step, we draw a final estimation from the particles, which can be used to make decisions in behavior algorithms. The state space is divided into 10x10x10 cells, and we find the 2x2x2 cube which has the most particles. The weighted average of particles in this cube is the final estimation.

The algorithm of initialization of particles is also important. We design different algorithms for different situation, such as initialization for just stand up, and initialization at the beginning of the match.

3.4 Behavior

The architecture of the algorithms of robot behavior is based on a hierarchical state machine implemented in XABSL [10]. The architecture is composed of a series of options. A simplified option graph of robot behavior is shown in Fig. 6. The main task, which enables the robot to play soccer autonomously, is defined as the root option. The root option is separated into subordinated options until they become basic options, which can be executed by the robot. Those basic options include getting up from a fall, finding the ball, walking and kicking the ball.

Cooperation between robots is implemented on our robots. First, information such as ball location, robot location and current task of the robot is shared through WLAN. Furthermore, based on shared information, some kinds of team work of soccer are designed. For example, if two robots find the ball simultaneously, the robot that has a better condition in handling the ball will approach the ball while the other one goes another way. However, more complex multi-robots system cooperation is to be further developed on our robot platform.

Fig. 6. A simplified option graph of robot behavior
Fig. 6. A simplified option graph of robot behavior

4 Conclusions

In this paper, the hardware configuration, electronics architecture and software architecture of the improved robot, MOS2013, are investigated; an omnidirectional gait generation method and a self-localization algorithm are presented; an efficient line detection method is also developed to enhance the performance of robot self-localization.

References

  1. S. Behnke. Online Trajectory Generation for Omnidirectional Biped Walking. Proceedings of the 2006 IEEE International Conference on Robotics and Automation. Florida, 2006, pp. 1597-1603.
  2. S. Kajita, F. Kanehiro, K. Kaneko, K. Fujiwara, K. Harada, K. Yokoi, H Hirukawa. Biped Walking Pattern Generation by Using Preview Control of Zero-Moment Point. IEEE International Conference on Robotics and Automation. pp. 1620-1626, 2003.
  3. D. Gouaillier, C. Collete, C. Kilner. Omni-directional Closed-loop Walk for NAO, 2010 IEEE-RAS International Conference on Humanoid Robots. Nashville, TN, USA, 2010, pp. 448-454.
  4. J. Alcaraz-Jimenez, D. Herrero-Perez, H. Martinez-Barbera. Motion Planning for Omnidirectional Dynamic Gait in Humanoid Soccer Robots. Journal of Physical Agents, 5(1): 25-34. 2011.
  5. J. Strom, G. Slavov, E. Shown. Omnidirectional Walking using ZMP and Preview Control for the NAO Humanoid Robot. RoboCup 2009: Robot Soccer World Cup XIII. Springer, 2009, pp. 378-389.
  6. C. Graf, A. Hartl, T. Rofer, T. Laue. A Robust Closed-Loop Gait for the Standard Platform League Humanoid. Proceedings of the 4th Workshop on Humanoid Soccer Robots in conjunction with the 2009 IEEE-RAS International Conference on Humanoid Robots. Paris, France, 2009, pp. 30-37.
  7. O. Chutatape, Linfeng Guo. A modified Hough transform for line detection and its performance. Pattern Recognition, 32(2): 181-192, 1999.
  8. S. Thrun, W. Burgard, D. Fox. Probabilistic Robotics. MIT press, 2005
  9. T. Rofer, T. Laue, M. Weber, et al. German Team RoboCup 2005. [Online]. Available: http://www.germanteam.org/GT2005.pdf
  10. M. Lotzsch, M. Risler, and M. Jungel. XABSL a pragmatic approach to behavior engineering. Proceedings of IEEE/RSJ Intl. Conf. of Intelligent Robots and Systems. Beijing, China, 2006, pp. 5124-5129.