Team KMUTT: Team Description Paper

Djitt Laowattana, Thavida Maneewarn, Xye, Pasan Kulvanit, Bantoon Srisuwan, Sathit Wanitchaikit, Nakrob Wanichnukhrox, Panuvat Sinsaranon, Sakda Kongchuangwit, Kawroong Saktaweekulkit, Nattapong Keawleke

King Mongkut's University of Technology Thonburi, Institute of Field Robotics (FIBO) 126 Pracha u-tid Rd., Bangmod, Thungkru, Bangkok 10140, Thailand

http://fibo.kmutt.ac.th


Abstract This paper explains the scientific achievement of our Robocup Humanoid league team. We are able to transfer our knowledge into the robot hardware that will be used in the humanoid robot soccer game. With the current robot design, the robot can achieve a fast dynamic walk. We implement a vision-based navigational scheme that can give accurate visual tracking. Our twolegged robot can autonomously traverse the game field while recognizing the target (colored ball) and environment (opponents, the obstacles, game field) and execute the actions according to appropriate decision.

1 Introduction

In the game of soccer, an individual player must run fast, think in real-time and be agile in order to gain advantage over the other players. In this year, we focus our research and development on two issues – teamwork and vision based navigation. The issue of teamwork must be seriously addressed due to the large size of the field. Without good communication among robots, the collision among teammates may be unavoidable. Furthermore, the lack of communication will result in one robot working harder than the others and resulting in poor over all energy consumption

With all the issues raised up, we also have to keep in mind that all results must be able to be implemented efficiently and economically inside a small package such as a small size humanoid robot. Figure 1 shows the robots from Team KMUTT that will enter the Robocup 2009 Humanoid league competition. Details specification can be found at http://fibo.kmutt.ac.th

Team KMUTT will participate in the Robocup 2009 Humanoid league. The final rule draft of the 2009 humanoid league can be consulted in [1]. In this paper, we will describe our humanoid robot systems that will be used in the competition. The main focus of this paper is what we have done to improve our team from last year. Section 2 shows the competition-ready system overview. Section 3 demonstrates our idea of vision based navigation. Section 4 illustrates some of our AI strategic game plan. Section 5 concludes the paper.

Fig. 1. KM-Series for RoboCup 2009 Humanoid League
Fig. 1. KM-Series for RoboCup 2009 Humanoid League
Fig. 2. System overview of the humanoid KM-Series
Fig. 2. System overview of the humanoid KM-Series

2 System overview

This section explains the hardware used in our biped robots. Each robot is composed of mechanical hardware, sensors, and computing hardware. Figure 2 shows the overall systems. Mechanical hardware is composed of robot structure and motor. The structure of both robots is made from aluminum alloy sheet metal with some parts are made from Kevlar carbon fiber in order to keep the weight low while benefiting from the high strength property. Both robots use 22 RS-485 networked servo-motors.

All robots use the same set of sensors. These are 2-axis accelerometer [+/-2g], 2 rate gyros [+/-100 deg/sec] and one CCD USB camera. The camera installed on the robot is a single lens USB webcam which has the horizontal field of view at 60 degrees. The capture resolution is 320x240 pixels. The workspace of pan-tilt unit is -120 to 120 degrees in panning and 0 to -80 degrees in tilting. The accelerometer tells the robot if there is any longitudinal and/or transversal tilt. The two rate gyros measure angular velocity at longitudinal and transversal axis. The angular velocity information will be used to adapt the attitude of the body during walking. The camera is used to track the ball and other objects of interest, which is crucial for navigation decisionmaking software.

The main computer for all robots is PC-104 with 500MHz processor. The PC-104 board computer receives information from the CCD camera via the USB port. The computer computes the walking path and sends locomotion command to the ARM 7 motor controller via RS232 port. ARM-7 [60MHz] RISC microprocessor is still in use for low-level motors control. The inverse kinematics of the robot legs and the preprogrammed (such as self-righting gait, walking straight, turning in place, circular gait, etc.) gaits are stored in ARM-7 motor controller. The robot can choose to execute the pre-programmed gait or adaptable gait such as gyro-assisted fast walk gait.

The existence of Linux embedded operating system helps us manage files more efficiently. This is not to mention a fast booting time. Last but not least, the compatibility to external devices, especially, various type and camera format is endless.

3 Vision based navigation

To obtain objects information associated to the game play, the robots must have abilities to identify and distinguish each object in the field including the abilities of locating the objects and their movement. These can be solved by implementing vision-based navigation system which consist of two major parts, the object recognition and objects observation. After the objects information is known, the robot can determine a proper action to play the game as shown by the simple algorithm for tracing the ball in the end of this section.

3.1 Object Recognition

Each object type in the field is clearly assigned a specific color, so the recognition can be done by focusing on the color feature of each type. To do this, a color segmentation technique, called color scoring, which based on fuzzy concept are implemented.

Typically, color segmentation is performed by using hard threshold on every pixel value of an image in a traditional color space, such as RGB or HSV. The pixels which have their values according to the threshold values are given a score 1 and declared as member of the color class. Otherwise, the score is 0 and declared as the member of the complement set of the color class. This is shown in the Fig 5.

Instead of doing above approach, the image scoring approach uses the relation among each color channel value and the fuzzy concept to assign a score for each pixel as shown in the Fig 6. The scores of each color channel are defined between 0 and 1. The score to the color class of each pixel are the product of score of its channels.

$$score_{total} = score_R + score_G + score_B$$

After testing both segmentation schemes, the image scoring is more efficient than HSV transform because the image scoring method adds up brightness values of each pixel to the values between 0 and 1. Therefore, it is possible to get more efficiency than fixed values

Fig5: Color Segmentation using HSV with exact values, 0 and 1
Fig5: Color Segmentation using HSV with exact values, 0 and 1
Fig6a: Color segmentation using image scoring with low brightness of high values
Fig6a: Color segmentation using image scoring with low brightness of high values
Fig6c: Color segmentation using image scoring with high value of medium brightness
Fig6c: Color segmentation using image scoring with high value of medium brightness
Fig7 Evaluated image (Left), HSV transform (middle), image scoring(right)
Fig7 Evaluated image (Left), HSV transform (middle), image scoring(right)

3.2 Object Observation

After recognizing every object in the scene, the objects position referenced to the robot are determined. This process assumes the camera is well calibrated, so the intrinsic and extrinsic parameters of the camera installed on the head pan-tilt is obtained and the robot knows the head pan and tilt angle of each scene.

To compute the angle to the object from robot reference, the horizontal pixel position of the object centroid in the scene is converted to the angle deviation from the center of the scene. Then, this value is combined with the head pan angle to obtain the object angular position referenced to the robot reference. For the distance to an object, the head tilt angle associated with the known height of the robot is used to compute the distance. This is shown in the Fig 9.

Fig. 8 Determination of robot heading toward the targeted object (Top View)
Fig. 8 Determination of robot heading toward the targeted object (Top View)

3.3 Simple Goal Scoring Algorithm

The robot implements a visual servo algorithm for walking toward the ball. The ball and the goal positions are fed to the control unit. Then, proper actions for guiding the robot to the ball are determined. The advantage of this algorithm is that the robot always reaches the ball by this guiding as long as it sees the ball. The operation of each robot can be simplified as shown by the following state diagram.

Fig 10 State diagram of walking ability toward the ball
Fig 10 State diagram of walking ability toward the ball

4 Game plan

Game plan is crucial for soccer team playing. This is especially more important this year since the game will be 3 VS 3. Each of the three robots in a team will be assigned duties as follows:

Striker Search for ball, shoot the ball to opponent goal Midfield Search for ball, feed the ball up field, defense Search for ball, feed the ball up field, defense

All robots can communicate with each other via peer to peer wireless LAN. The Host PC is only used for monitoring robots status. The team network is shown in Fig. 11. The communication is use for tasks as follows:

Peer avoidance Avoiding the collision between robots from tracking the same target Roles swopping Increasing the chance of attacking or defending for open players Target declaration Helping peer robot look for target when target is locally out of sight

Fig. 11. Wireless communication network for Team play
Fig. 11. Wireless communication network for Team play

5 Conclusions

We have designed and built a complete humanoid robot system that can autonomously recognize the environment and execute the task of kicking ball and navigating the game field. For the 2008 our team increases the chance of winning games by improving four main parts- smarter dynamic walking, quicker vision tracking, simple localization, and enhancing team play via communication network.

Acknowledgements

Team KMUTT and the Institute of Field Robotics (FIBO) would like to thanks King Mongkut 's University of Technology Thonburi and Yannix Technology company for their supports.

References

1 http://fibo.kmutt.ac.th/robocup2008/HumanoidLeagueRules2008.pdf 2 Kulvanit, P., et al.: Team KMUTT, Team description paper. Robocup 2008, Humanoid League (2008) 3 Kulvanit, P.: Design and Realization of bipedal walking robot with optimal fast gait. Ph.d. dissertation, King Mongkut's University of technology, Thonburi, 2007 4 Kulvanit, P., Srisuwan, B., Laowattana, D.: Optimum Performance of The Fast Walking Humanoid Soccer Robot: Experimental Study, International Conference on Climbing and Walking Robots, CLAWAR, 2007 5 Sawasdee, W., Kulvanit, P., and Maneewarn, T., "Locomotion Control Scheme for Fast Walking Humanoid Soccer Robot", International Conference on Climbing and Walking Robots, CLAWAR, 2007