KUDOS Team Description Paper for Humanoid Kidsize League of RoboCup 2015
Hojin Jeon, Juseong Shin, Donghyun Ahn, Jihyun Park, Seunghun Lee, Inwon Cho, Seri Lee, Yeunhee Kim, Wanjin Kim, Jiwon Park, Jaewan Kim, Geunchang Jung, Sangmi Lee, 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 We performed match at RoboCup2014 with our own robot, KUbot. Throught the competition we found our robot's strength and weakness. In RoboCup2015 we have new challenges as the rules changes. The ball's size and color are changed and field is covered with artificial grass. To deal with it and perform well in RoboCup2015, we made two new versions of our robot; KUbot2 and KUbot-teen. We also implemented many things like new walking pattern generator with ZMP and new object detection system with SURF algorithm in them. This paper briefly describe our preparation and research for RoboCup2015.
Introduction
We are KUDOS, which is an acronym of Kookmin University Dream of Soccer. We named our team so for two reasons. First, the ultimate objective of RoboCup is to field a team of robots that can win against the human soccer World Cup champions by 2050. Realizing this objective is the dream of robotics and soccer players. In this light, we chose dream of soccer as part of our team name. Second, kudos is a synonym of prestige. Because we aim to achieve prestige at the Humanoid KidSize League of RoboCup, the meaning of kudos well matches our team objective.[1]
We are not only participating RoboCup, but also running several relevant humanoid researches, development and participation like Lower limb exoskeletal robotic system, darpa robotics challenge, walking pattern of biped humanoid robot and development of humanoid robot platform.
After RoboCup2014 competition, we ensured that our defender algorithm with inside-kick was working very well. But it wasn't enough for winning. So we improved our Robot's vision, hardware, stability, and walking for RoboCup2015. First of all, we re-designed robot's frame to make it bigger in order to make robot walking faster and kicking stronger. Second, we changed robot's main controller allowing higher performance. With this, we were able to add new locomotion and other stablizing algorithm for robot. Third, to supplement our vision system with color-based object detection, we implement new system based on shapedetection. In addition to that, to follow the rule that Soccer game will be placing on artificial grass, we implement walking pattern using MPC and additionally we designed balancing controller using gyro sensor data.
The remainder of this paper is organized as follows. Section 2 describes our two new robots, KUbot2 and KUbot-teen's hardware. Section 3 presents the algorithm for robot soccer. Sections 4 and 5 respectively discuss robot vision and locomotion with ZMP and balancing controller.
Hardware
We developed our own robot, KUbot, based on an open-platform robot. However with last year's experience, we confirmed that we need new computing unit which has more performance to implement more complex algorithms. And also, we felt the need of bigger size robot for fast walking and powerful kick. As a result, we developed KUbot2 and KUbot-teen which upgraded from KUbot.
KUbot2
After RoboCup2014, we needed to upgrade computing unit to better one. KUbot2 was started from there. Firstly, we selected new computing unit and based on its size, we designed new torso. In the process of designing, we focused on reducing weight of it to reduce load of actuators. After design, we 3d-printed prototype for test. With a result of the test, we made improvement of it and completed robot's final design.
KUbot-teen
KUbot-teen is developed to deal with RoboCup2015's large ground, bigger ball and trend of bigger robot. KUbot2 and KUbot-teen are based on our prior robot, KUbot. And it has same electric devices such as computing unit and sensors. However, we selected a new actuator that can output a higher torque than former one to gain the force which enable to move heavier robot. Also calf and thigh frame are designed for engaging with/occluding/gearing one another to minimize the engagement force applied to the actuator during a competition and to supplement the stability of the robot hardware.
Table 1 and Figure 2 both shows Specification and Design of KUbot2 and KUbot-teen.
Specifications of KUbot2 and KUbot-Teen
| Series | KUbot2 | KUbot-teen |
|---|---|---|
| Height | 483mm | 850mm |
| Weight | 3.3kg | 5.7kg |
| Number of DOFs | 20 in total (6 DOF Legs x2 = 12, 3 DOF Arms x 2 = 6, 2 DOF Head x 1 = 2) | |
| Actuator | DYNAMIXEL MX-28, MX-64, MX-106 (Maxon Motor + Reduction gear + Absolute encoder) | |
| Control unit | Main Control Unit: Intel D34010WYK Sub control Unit: CM-730 | |
| Camera | logitech C905 | |
| Inertia measurement unit | Gyro: 3-Axis LYPR540AH Acceleration: 3-Axis ADXL335 | |
| Other specs | Sound: speaker Display: body LED magnetometer: 3-axis akm8975 |
External Case
In RoboCup 2014, we confirmed that wire and frame which are exposed to the outside was damage by collision and fall. To prevent this critical situation, we designed external case for KUbot2, as shown in Figure 3.
Algorithm for Robot Soccer
We developed soccer algorithm for robot soccer for field player. Figure 4 shows it. It consists of four steps: (1) the robot finds the ball, (2) the robot approaches the ball, (3) the robot finds a goalpost, and (4) the robot kicks the ball. In RoboCup2014, our defender algorithm with inside kick was so good that we had barely goal down. So we choose to remain this defending algorithm.
Vision
To see a ball in field become a major problem at the robot soccer. And for us, new ball with multiple color and complicate shape made for our robots impossible to find the ball with old vision system which using color space with calibration.
So we figure out new object detection system using SURF(Speeded Up Robust Features)algorithm. By using this system, our robots can easly recognize the ball without any calibration of color.[2][3] Figure 5 shows detections of ball in field.
Parameters used in formulas
| Symbol | Description |
|---|---|
| Pb | bottom coordinates of the pixel |
| Ph | Image's height in pixel |
| α | half of camera's vertical angle of view |
| θ | tilt angle of camera direction |
After cutting out the pixel which is higher than $P_b$ and deleting outside of the green field zone, we can implement faster vision processing by not processing cutted and deleted zone of image like Figure 6.
Locomotion
Locomotion pattern generation. Many studies have focused on humanoid walking.[4-7] We have formed a walking pattern by using MPC. MPC is a common control method for generating online motion for a dynamic system.[8] Figure 7 shows an example application of MPC to HUBO: the robot moved five steps forward and stopped.
Walking pattern generation
(Content covered in main Locomotion section)
Locomotion control algorithm
We used a damping controller, landing orientation controller, and landing position controller for stable locomotion.[9][10] The damping controller was designed to eliminate sustained structural oscillation. Thus, it is important to maintain balance. The landing position controller helps the robot land quickly and safely by controlling the ankle. When a robot walks on 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 to slowly stretch the foot after the landing is fully completed. In general, the landing orientation controller is applied to the swing foot during landing and the damping controller is applied to 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.
But we knew KUbot's walking is unstable on the artificial grass. So we searched several solution. firstly, we bended robot's legs to lower the center of mass. secondly, double support phase time increased. On the other hand, single support phase time decreased. Thirdly, we designed a balancing controller for using gyro sensor data. It was not difficult to design but the balancing controllers performance was powerful. Applying a disturbance to the robot, we can obviously see the performance through the gyro sensor data. We designed a balancing controller using a gyro. First we applied balancing controller to the robot and then let it walks. And second we did it without applying the balancing controller. And Figure 8 shows the different resulting gyro values. As a result of several experiments on the actual robot, we attained a stable walking on articial grass ground.
Walking pattern generation using Matlab
We developed a GUI program for generating walking patterns using MAT-LAB. We can nd suitable patterns using the program instead of a real robot and save time in developing a walking pattern. The program calculates an inverse kinematics[11] to verify the joint angles of the robot, as shown in the left-hand side of Figure 8. In addition, we can confirm the motion of the robot and check the position of the zero moment point of the robot by animation, as shown in the right-hand side of Figure 9.
Conclusion
We have participated RoboCup2013 and RoboCup2014 with passion. For RoboCup2015, w we newly developed our robots and continuously studied various methods such as SURF, locomotion. We will participate in RoboCup regularly and grow further as a team. We aim to show much better performance in RoboCup2015.
References
- Jae Hwan Kim, Ju Seong Shin, Dong Hyun Ahn, Jin Young Kong, Sung Hoon Yang, Eun Mi Jang, and Baek-Kyu Cho, KUDOS Team Description Paper for Humanoid Kidsize League of RoboCup2013, 2013.
- Herbert Bay, Andreas Ess, Tinne Tuytelaars, Luc Van Gool, "SURF: Speeded Up Robust Features", Computer Vision and Image Understanding (CVIU), Vol. 110, No. 3, pp. 346–359, 2008
- OpenCV SURF example page. http://docs.opencv.org/doc/tutorials/features2d/ feature detection/feature detection.html
- 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.
- 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.
- 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.
- 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
- Saeed B.Niku., Introduction to Robotics Analysis, Systems, Applications, Prentice Hall, 2005.