R•evolution Team Description Paper 2018

Aleksei Kulebiakin, Aleksei Protopopov, Valeriya Sterekhova, Egor Shelomentcev

Robotics Lab Tomsk Polytechnic University, Russian Federation


Abstract Team R•evolution was founded in Tomsk Polytechnic University. This paper describes the hardware and software of the R•evolution team. It considers the current achievements, results and plans for further development.

1 Introduction

The Robotics lab was created in Tomsk Polytechnic University in 2011. The goal of lab is to develop the robotics skill of the students and popularize the robotics. Students of lab actively participate different robotics challenges in Russia. In 2012 lab organizes Lego Contest with the students of Kure College of Technology (Japan) to share the experience of mobile robot control. After that group of students in lab start to work with Humanoid robots (Robotis Bioloid) and organize the team for dance competition at Robofest 2012 (Moscow) where they took the 1st place. In 2014 lab prepares the team to participate the International Robotics Challenge (IIT Bombay, India). Moreover, in 2014 students of lab participate the International Humanoid Robot Olympic games in China where they compete in robot dancing and get the prizes. At that moment students start the research about humanoid robot stability and control. The results of that research were published [1,2].

The team R•evolution was founded in 2017. The team consists of undergraduate students from Robotics Lab of Tomsk Polytechnic University. The team participated in RoboCup Russia Open 2017 Humanoid Kid Size league and took the 2nd place. In addition, the team has participated in RoboCup Asia-Pacific 2017 Humanoid Kid Size league and has taken the 2nd place in regular and drop-in games. Since our team is new to the competition, our main goal is to realize a good game performance but we hope to make a research contribution to development of RoboCup initiative.

Commitment

The R•evolution team commits to participate in RoboCup 2018 in Montreal (Canada) and to provide a referee knowledgeable of the rules of the Humanoid League.

2 Robotic Hardware and Design

We use three standard Robotis OP-2 robot platforms [3]. It has 20 DOF actuated by MX-28 servomotor. The height of the robot is 490 mm. We equip the feet of the robots with the spikes to allow them to walk on artificial grass. Because of the increased height of the legs, we also modified the forearms with handcrafted plastic parts. To comply the rules we repainted the legs and feet of the robots in black (Fig.1) [4]. Thus, we realized the feet and forearms design and walking algorithm improvement for locomotion on artificial surfaces with the height about 30 mm.

Fig. 1. Robot Platform
Fig. 1. Robot Platform

3 Software

We use modified Robotis OP-2 framework to control the robot motion [5]. The modification of the software architecture consists of three modules: vision, motion control and communication. Main loop of the program is presented on Figure 2.

Fig. 2. Main Loop
Fig. 2. Main Loop

4 Vision module

Vision module is used to percept the goals and the ball. It is realized with OpenCV library that allows to easily prototype the additional functionality [6]. We also develop the tools to tune the algorithm parameters during the operation of the robot. It allows us to reduce time delays between tuning and operation. We implement the algorithms to recognize the ball and goals. It would be described below.

To find the goal we transform the original BGR frame captured from camera to HSV color space (Fig.3). After that, we binarize the frame using the thresholding. On the result frame, we find the max sequence of pixels that has the determined length in column and the next sequence after max. The Center of the goal is the mean of the goal coordinates.

Fig. 3. Goal Recognition Algorithm
Fig. 3. Goal Recognition Algorithm

4.2 Ball recognition

To find the ball position we use the same technique as in original code of Robotis framework that transform the camera frame to HSV color space and calculate the moments. We implement this technique using OpenCV library and modify it with Field analysis routine that determines the background color of the ball candidate area (Fig.4). If the ball candidate surrounded by field color then it would be supposed as ball (Fig.5).

Fig. 4. Ball Recognition Algorithm
Fig. 4. Ball Recognition Algorithm
Fig. 5. Ball Recognition
Fig. 5. Ball Recognition

4.3 Ball positioning

When the robot stays before the ball and ready to kick, it perform the goal positioning procedure. It moves around the ball until it find the goal center. When it coincides the center of the frame and the center of the goals, it kicks the ball forward. To avoid the situations when the robot is too close to goals and we can't find the goals, we find two white horizontal lines on the field which can be located only in goal zone.

5 Goalkeeper

To realize the goalkeeper function in Robotis-OP2 we reconfigure the ball follower algorithm of the Robotis team. We add the right/left movements and remove the forward movement when the robot follows the ball. It gives us the opportunity to follows the ball along the goal line that as we think would protect the goals.

6 Communication

We develop the communication module for the competitions to recognize the Game-Controller commands and operate with them. The module is based on B-Human Game-Controller protocol and supports the receiving of the game state and penalty for player. The Game state recognition allows robots to act according to the referee commands.

7 Future work

At this moment, our approach gives us the opportunity to effectively operate on the game field. However, we have the directions where we can improve our robot performance such as:

  • Robot height improvement for effective ball manipulation;
  • Kicking strategy improvement to adjust the accuracy and power of the ball kick;
  • Multi-agent behavior improvement to make the game more entertaining;
  • Software architecture improvement to realize more effective operation of the robot;
  • Object recognition algorithms improvement to decrease the errors of recognition.

We have made an intensive work with our robots to realize basic operations for RoboCup and we continue to improve it.

References

  1. Egor Shelomentcev, Tatiana Aleksandrova. Design of the filter to statically stabilize positions of the anthropomorphous robot using ZMP Method. IOP Conference Series: Material Science and Engineering, vol. 66, 012027 (2014)
  2. Egor Shelomentcev, Tatiana Aleksandrova. A teleoperation system to control the humanoid robot using an RGB-D sensor. IOP Conference Series: Material Science and Engineering, vol. 124, 012027 (2016)
  3. Robotis OP2 platform, http://support.robotis.com/en/product/robotis-op2.htm
  4. RoboCup Soccer Humanoid League Rules and Setup, https://www.robocuphumanoid.org/
  5. Robotis OP2 framework, http://support.robotis.com/en/product/robotis-op2/programming_guide/robotis_op2_framework.htm
  6. Open CV library, http://opencv.org