KUDOS Team Description Paper for Humanoid Kidsize League of RoboCup 2016
Hojin Jeon, Donghyun Ahn, Yeunhee Kim, Yunho Han, Jeongmin Park, Soyeon Oh, Seri Lee, Junghun Lee, Namkyun Kim, Donghee Han, ChaeEun Kim, Hyebin No, Seungmin Han, Hansu Ko, Changmin Shin, Dongmin 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 RoboCup2015 with our own robot, KUbot and KUboteen. Through the competition we found our robots strength and weakness. After we remedied for our robots shortcoming, we made new robots, KUboteen2 and KUbot3. Also, we applied new techniques such as Shadows-Reflexibility recognition and PD-control System. After then, our robots could have been work much better. This paper briey describe our preparation and research for RoboCup2016.
Keywords: KUDOS, KUboteen, KUboteen2, KUbot3, Humanoid Robot, Shadows-Reflexibility Recognition, PD-control System.
1 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.
To explain about each teams area, First, the control area, KUDOS has participated in the RoboCup since 2012. The stadium turned into a grass field at 2015. So we used the PD control to make a stable walking. And we are ready for the RoboCup 2016 to make a soccer algorithm which use a geomagnetic sensor and we adapt it to Kuboteen2.
Second, the vision area, according to the tilt angle of the robots head, we make robots image processing to mask rapidly only the field. And we make an algorithm to sense the things which is the close to a circular shape. We also add the algorithm using reflectivity to sense the ball accurately.
Third, the design area, we developed our own robot, KUbot, KUboteen. With many years experience of competition, we felt that we need new robots for competition.
Since the rule changes every year and the artificial grass has a very powerful affection, we developed new algorithms and designs for KUboteen, KUboteen2, and KUbot3.
2 Hardware
2.1 KUboteen
KUboteen is developed to deal with RoboCup2016's large field, bigger ball and trend of bigger robot. KUboteen is 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 to minimize the engagement force applied to the actuator during a competition and to supplement the stability of the robot hardware.
2.2 KUboteen2
KUboteen2 is developed to withstand the weight power of larger actuator compare with KUboteen. KUboteen2 is based on KUboteen, except knees and pelvis. KUboteen2 is designed identical with same-height humans ratio. Then we expand width of pelvis. As field get larger, robots should move faster than former speed. Then, we put two actuators in robots knees to make higher torque to move fast. Also, we put some parts to fasten bolts in the actuator to support the stability of robot hardware in hip-yaw.
2.3 KUbot3
After RoboCup 2015, we got new rules for field. Field was changed to artificial grass. Then we need to develop some parts to operate the robots in the field. Original robot, KUbot, was hard to walk in stable motion because of height. Knee of KUbot3 was originally MX-28. We changed that actuator to MX-64, and robot could walk stable around the field. This is the KUbot3 based on our prior robot, KUbot.
Table 1. KUbots Specification
| Series | KUbot3 | KUboteen | KUboteen2 | |
|---|---|---|---|---|
| Height | 479mm | 850mm | 850mm | |
| Weight | 3kg | 6.7kg | 7.6kg | |
| Number of DOFs | 20 in total ( 6 DOF Legs x2 = 12, 8 DOF Arms x 2 = 6, 2 DOF Head x 1 =2) | 22 in total ( 7 DOF Legs x2 = 14, 3 DOF Arms x 2 = 6, 2 DOF Head x 1 =2) | ||
| Actuator | Actuator | DYNAMIXEL MX-28, MX-64 | DYNAMIXEL MX-64, MX-106 | |
| Control Unit | Main | SBC-fitPC2i | Intel D34010WYK | |
| Sub | CM-730 | |||
| Camera | logitech C920 | |||
| Intertiameasurement unit | Gyro: 3-Axis LYPR540AH Acceleration: 3-Axis ADXL335 | |||
| Other specs | Sound: speaker, Display: body LED, magnetometer: 3-axis akm8975 |
3 Algorithm for Robot Soccer
We developed an algorithm for robot soccer, shown in Figure 1.
It follows 4 steps, (1) Find the ball (2) Approach the ball (3) Find a goalpost and take a position to shoot. (4) Shoot or dribble the ball.
In first step, the robot finds the ball by moving its head only. It moves its head up, down, right and left. If it cant find the ball, it rotates and moves head again to find the ball. If it cant find the ball this time, it moves toward our goalpost and finds the ball. It repeats these small steps to find the ball. When the robot approaches too close to a goalpost, it turns toward the opponents goalpost and repeats the steps.
If the robot finds the ball, it approaches the ball and finds a goalpost. The robot revolves around the ball until the robot lines up with a goalpost and the ball. That is step 2 and 3.
Then the robot shoots or dribbles the ball.
4 Vision
4.1 Vision Processing
The processing time becomes much longer if the picture has high resolution or contains many algorithms. To make the processing faster, we cut out the unnecessary part of the picture with the tilt. As a result, the robot separates the field for processing and the time shortens.
4.2 Detecting the Ball
Recognizing shadows and reflexibility. The ball has multiple colors and complicated shape. For new ball last year we used SURF (Speeded Up Robust Features) algorithm that chased the pattern to detect the ball. However, it was pretty slow and influenced easily by light and environmental changing. So this year, we use the algorithms that recognize the reflexibility and shadow. It is much faster and more accurate for detecting the ball. Figure 1 shows the result.
4.3 Shape Detection
From 2015, the color restriction on surroundings was removed. That means it is hard to distinguish the ball, goalpost and line only with color detection. So we developed new additional algorithms with shape detection. Because of this, the robot detects the ball by circle detection. As a result, we use the ball detecting system with both algorithms: shadows-reflexibility recognition algorithm and shape detection algorithm.
5 Locomotion
RoboCup 2015 that was held in Hefei, China, had a lot of rules that changed. One of the most challenging changes was that the field was changed from a flat surface to grass. Stable walking is the most basic step for robot soccer, so navigating on grass added a new level of difficulty.
6 Conclusion
We have participated RoboCup every year with passion. For RoboCup2016, we newly developed our robots and continuously studied various methods such as shadows-reflexibility and PD-control System. We will participate in RoboCup regularly and grow further as a team. We aim to show much better performance in RoboCup2016.
References
- Gene F.Franklin, J.David powell, Abbas Emami-naeini FEEDBACK CONTROL OF DYNAMIC SYSTEMS : CH3 Page 123-136 ,CH4 Page196 -211
- Wanjin Kim, Walking humanoid robot controlled by Complementary Filter, PD Control and IMU sensor: The 11th Korea Rpbptics Society Annual Conference
- Yunho Han, Walking humanoid robot controlled by Complementary Filter and PD Control : The 11th Korea Rpbptics Society Annual Conference
- 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. 346359, 2008
- OpenCV SURF example page, http://docs.opencv.org/doc/tutorials/ features2d/featuredetection/featuredetection.htm