KUDOS - Kookmin University Dream of Soccer Team Description for Humanoid Kidsize League of RoboCup 2013
Jae Hwan Kim, Ju Seong Shin, Dong Hyun Ahn, Jin Young Kong, Sung Hoon Yang, Eun Mi Jang, Baek-Kyu Cho
Robotics and Control Laboratory School of Mechanical Engineering, Kookmin University, KOREA
http://rclab.kookmin.ac.kr · http://kudos.kookmin.ac.kr
Abstract Our team's name is KUDOS, which is an acronym of "Kookmin University Dream of Soccer". This word means "prestige" in the dictionary. We hope to achieve prestige at the Humanoid KidSize League of RoboCup 2013 and not stain our team name. Team KUDOS was founded in early 2012 and consists of undergraduate students who are interested in humanoid robots and are studying various majors such as mechanical, electronic, material science, and automotive engineering. We are preparing to participate in the Humanoid KidSize League of RoboCup 2013 with the open-platform robot DARwIn-OP. We are developing vision, localization, motion, and locomotion algorithms for humanoid robots and implementing them in real humanoid robots such as HUBO, NAO, and DARwIn-OP. This paper briefly describes our preparation and research for RoboCup 2013.
Keywords: Humanoid robot, Locomotion algorithm, Model predictive control, Push recovery, Research of running
1 Introduction
Our team's name is KUDOS, which is an acronym of "Kookmin University Dream of Soccer". We have two reasons for taking KUDOS as the name of our team. First, the original mission of the RoboCup was to field a team of robots capable of winning against the human soccer World Cup champions by 2050. Realizing the original mission of the RoboCup is a dream of roboticists and soccer players. In order to contribute to achieving the original mission of RoboCup, we chose "dream of soccer" as part of our name. Second, "kudos" is a synonym of "prestige". Since we hope to achieve prestige at the Humanoid KidSize League of RoboCup 2013, the definition of "kudos" matches the goal of our team well.
Team KUDOS was established in early 2012, and is composed of undergraduate students interested in humanoid robots and majoring in mechanical, electronic, and automotive engineering. Mixing different majors not only enhances the specialties of each part of the team but also allows solutions to be produced from various engineering points of view. Although our team is less than a year old, we have studied humanoid robots for quite a long time. Representative research results are the development of the Korean humanoid robot HUBO and various locomotion algorithms [1]. We are preparing to participate in the Humanoid KidSize League of RoboCup 2013 based on these results.
Our team will participate in RoboCup 2013 using the open-platform robot DARwIn-OP. DARwIn-OP performed well last year; many teams used it, and our algorithms are applicable to it. Since many teams use DARwIn-OP, this can cause confusion over the name. Therefore, we named our robot "KUbot". For the robot soccer game, we developed vision, motion, localization, and locomotion algorithms and implemented them in KUbot. KUbot discriminates among the ball, goalpost, and other robots using a camera located in its head. KUbot localizes the location of all the objects with a vision algorithm and then determines the soccer strategy. In addition, a terrestrial magnetism sensor (TMS) attached to KUbot detects the absolute geomagnetic value to enhance the localization. Various motions are needed for robot soccer such as kicking, goalkeeping, and getting up autonomously. We used motion-capture equipment to obtain those motions. In order to implement stable and fast locomotion of the robot, we used the model predictive control (MPC) method. We also developed online controllers: a damping controller, landing orientation controller, and landing position controller. To achieve higher-level robot soccer, we applied a running algorithm and push recovery algorithm to KUbot.
The remainder of this paper consists of the following: Section 2 presents an overview of KUbot, Section 3 details our algorithms for robot soccer, and Section 4 presents the conclusions and future of our team.
2 Overview of KUbot
This section describes the hardware and software of KUbot.
2.1 Hardware
KUbot has a height of 455 mm, leg length of 250 mm, and total weight of 2.9 kg. KUbot has 20 degrees of freedom (DOFs), as shown in Figure 1. The head has two DOFs for pan and tilt movement. Each arm has three DOFs for shoulder pitch, shoulder roll, and the elbow. Each leg has six DOFs for hip pitch, hip roll, hip yaw, knee, ankle pitch, and ankle roll. The actuator consists of a MAXON motor and gear (193:1). It generates 2.3 Nm stall torque when the supplied standard voltage is 11.1 V. KUbot has an inertia measurement unit (IMU), vision sensor (Camera), and force-sensing resistors (FSR). The IMU, which is located in the KUbot chest frame, equips a three-axis accelerometer and three-axis gyro. It measures the transitional acceleration and angular velocity of KUbot. The vision sensor, which is located in the front head cover, is used to recognize the color object. After the target objects are set manually based on the hue-saturation-value (HSV) format, KUbot perceives objects by the color. Eight FSRs that are located at every corner of the two soles measure the contact force between the robots feet and the ground. By using the FSR, KUbot estimates the ZMP. In addition, KUbot equips a TMS. Since it detects the geomagnetism coming from the Earth, we use TMS to find the absolute direction of KUbot. This is our solution to the new rule in the Humanoid KidSize League of RoboCup 2013: the goalposts are the same color on both sides of the field.
2.2 Software Architecture
KUbot consists of two controllers: the main controller and sub-controller. These are shown in Figure 2.
The main controller is operated using Linux Ubuntu 9.10 and has two roles. The first role is judging situations in the robot soccer game. The robot gets its direction via the geomagnetic sensor and the positions of the ball, goalpost, and other robots via the vision and localization algorithms in the main controller. Through communication with other robots, the robot verifies the position of the invisible objects and calibrates its position. The second role is operating the robot. The robot generates trajectories for all the actuators via various sensor information. MPC, online controllers, and the push recovery algorithm are located in the main controller. The sub-controller transfers motor commands from the main controller to the motors and useful information from the sensors and motors to the main controller.
3 Research For Robot Soccer
For the robot soccer game, we developed various algorithms for vision, localization, motion, and locomotion as shown in Figure 3 and applied them to KUbot.
3.1 Vision
For vision, which is the most important factor in autonomous robot soccer, a built-in camera was used. KUbot converts images from the camera frame to HSV format to distinguish objects. KUbot recognizes the ball color for tracking and goalpost color for accurate kicking. It spins 360 at the same spot and scans pixels when no pixel is recognized. The robot has to be calibrated correctly based on the field situation for accurate tracking because HSV changes according to the lighting of the field.
3.2 Localization
In order to devise strategies, the robot has to know the positions of the ball, goalposts, and other players. KUbot takes the vision information to draw a local map of the objects in x-y coordinates. KUbot takes action by localization. In consideration of the rules and regulations of RoboCup 2013, one issue is making the robot go in the correct direction when the goalposts on either side of the field are the same color. Consequently, our team decided to install a TMS on the robot so that it can distinguish between its goalposts and the opponents goalposts as shown in Figure 4.
3.3 Motion
Our team created various actions by adjusting and reading the position value of joints in order to obtain KUbots movement. We observed and copied the motions of people using motion-capture equipment. We then applied our data to KUbot to activate 20 joints organically.
3.4 Locomotion
Locomotion pattern generation. MPC is a common control method for generating online motion for a dynamic system[2]. MPC suggests how a robot processes a strong disturbance efficiently. By using MPC, we can make a variety of locomotion patterns and apply them in many research applications. In order to generate a locomotion pattern, KUbot was designed as an inverted pendulum model, and we solved MPC through the quadratic program given below.
$$\min_{X_k} \frac{1}{2} Q \left( Z_{k+1} - Z_{k+1}^{ref} \right)^2 + \frac{1}{2} R \ddot{X}_k^2 \tag{1}$$
Figure 5 is an example application of the MPC: the robot moved five steps forward and stopped in the horizontal and sagittal planes.
Locmotion control algorithm. We used a damping controller, landing orientation controller, and landing position controller for stable locomotion, as shown in Figure 6 [3][4].
The damping controller was designed to eliminate sustained structural oscillation. Thus, it is important for maintaining the balance. The landing position controller helps the robot land quickly and safely by controlling the ankle. When a robot walks on an uneven terrain, the actual landing time of the foot may differ from the prescribed landing time. To solve this problem, we used the landing position controller to lengthen the stride on the next swing phase by the amount of loss and slowly stretch the foot after the landing is fully completed.
In general, the landing orientation controller is applied on the swing foot during landing, and the damping controller is applied on the supporting foot after landing. The landing position controller modifies the prescribed position of the swing foot when the foot touches the ground earlier than its prescribed time.
Push recovery algorithm. In real soccer, there are many collisions among players. It is very important for the robot to maintain its balance in this situation.
Therefore, we had to develop not only a locomotion algorithm but also a push recovery algorithm through a foot placement controller to maintain stability when a disturbance occurs. We realized a push recovery algorithm via Hubo2 in the previous study[1]. We then tried to apply it to KUbot.
Running research. In a real soccer game, fast players can score many goals. Thus, speed is important in soccer. We studied the running algorithm of humanoid robots and actually realized running of a humanoid robot through Hubo2 [6][8]. Hubo2 can run at 3.6 km/h. We tried to apply the algorithm to KUbot.
3.5 Robot Simulation
Our team verified our algorithms through simulations, as shown in Figure 9. Before we applied our algorithms to real robots, we ran simulations to prevent malfunction and reduce the development time.
4 Conclusion
HUBO is a humanoid robot known all over the world, and many enterprises in Korea have developed various robots. The robot industry in Korea is continuously growing, but the Korean team has slumped in the RoboCup. We want to break this trend and make a new start. Team KUDOS is confident in its robots ability to play the beautiful game. We hope to meet you at Eindhoven, Netherlands.
References
- Baek-Kyu Cho and Jun-Ho Oh, "Dynamic Balance of a Hopping Humanoid Robot using a Linearization Method", International Journal of Humanoid Robotics, Volume 9, Issue 3, 2012.
- Pierre-Brice Wieber "Trajectory Free Linear Model Predictive Control for Stable Walking in the Presence of Strong Perturbations", IEEE-RAS International Conference on Humanoid Robots, pp. 137-142, 2006.
- Jung-Hoon Kim.A Study on the Realization of Dynamic Gait for a Biped Humanoid Robot. PhD Thesis. Korea Advanced Institute of Science and Technology, Daejeon, South Korea, 2004.
- Jung-Yup Kim. On the Stable Dynamic Walking of Biped Humanoid Robots. PhD Thesis. Korea Advanced Institute of Science and Technology, Daejeon, South Korea, 2006.
- Robotis Product Information,E-Manual. http://support.robotis.com
- Baek-Kyu Cho, Jung-Hoon Kim, and Jun-Ho Oh, "Online Balance Controllers for Running in the Humanoid Robot, HUBO2", Advanced Robotics, Volume 25, Issue 9-10, pp. 1209-1225, 2011.
- Jung-Hoon Kim, Jong-Hyun Choi, and Baek-KyuCho, "Walking Pattern Generation for a Biped Walking Robot Using Convolution Sum", Advanced Robotics, Volume 25, Issue 9-10, pp. 1115-1137, 2011.
- Baek-Kyu Cho, Ill-Woo Park, and Jun-Ho Oh, "Running Pattern Generation of Humanoid Biped with a Fixed Point and Its Realization", International Journal of Humanoid Robotics, Volume 6, Issue 4, pp. 631-656, Dec. 31, 2009.
- DARwIn-OP downloads page. http://sourceforge.net/projects/darwinop/
- F. Blanes, P. Muoz, M. Muoz, J.E. Sim, J.O. Coronel, M. Albero , Embedded Distributed Vision System for Humanoid Soccer Robot , JOURNAL OF PHYSICAL AGENTS, VOL. 5, NO. 1, JANUARY 2011, pages 55-62
- Kuo C. H., Yang C. M. and Yang F. C. ,2005. Development of intelligent vision fusion based autonomous soccer robot. In 2005 IEEE International Conference on Mechatronics. July 2005.pp:124-129