Ichiro Robot Soccer – Team Description Paper Humanoid Kid-Size League, Robocup 2020 France

Muhtadin, O. Purwo Bramastyo, I. M. P. Ari Wijaya, Alfi Maulana, A. H. Pradanatta Putra, D. Ats Tsauri, A. Huda Fathaniard, Even Clarence, A. R. Azmi Ulya, D. Bonar Marpaung, S. Bhagas Dagsapurwa, R. D. Berlian Denmar, M. Hery Purnomo

Institut Teknologi Sepuluh Nopember, Surabaya 60111, INDONESIA


Abstract This short paper presents a brief explanation of the robot design from Ichiro's team. This paper aims to serve as qualification material for the competition Robocup 2020 held in France. This paper focuses on the problems we faced in the previous competition, as well as the hardware and software development we have done to overcome these problems.

Introduction

Robocup competition always presents the development of soccer robots that are made in such a way that the actual match. This forces the team to not just participate in the competition, but must always improve the capabilities of the robot, both hardware and software, so that it can have better performance from year to year. In 2020, there was a big change in the elimination of the TeenSize category. These changes force teams that play in the TeenSize category to develop agile and resilient robots so they can compete in the KidSize category, or enlarge their robots to be able to play on AdultSize.

In 2020, the Ichiro Team will combine robots from KidSize and TeenSize, to be able to play and work together in the KidSize category. We want to exhibit how cooperation between robots is carried out by considering the size and basic capabilities of a robot.

Vision

Last year, our robot vision was accurate and worked well. Our robot could detect ball and features in the indoor soccer field. However, our robot vision capabilities are very poor when playing in drop-in games on outdoor fields. This is due to interference in the form of light from the sun that changes.

To overcome this problem, we have prepared two alternatives that we will apply to our robot vision. We will still use LBP feature extraction, however, we will rely on ball detection and field features based on CNN deep learning.

Behavior and Team Play

During the game, our robots are divided into several roles. Such as striker, midfielder, and defender. We use a finite state machine to design the robot behavior in which its transitions are different based on current game state, robot's role, teammates states or location and orientation information from the localization module.

Throughout the last 2 years of our participation in RoboCup, we have succeeded well in terms of implementing teamwork between robots, robots can share tasks based on the position of the robot on the field. However, based on this year's RoboCup regulation, striker and defender robots are no longer allowed to be put on the field manually. Therefore, we start to eliminate assignment as striker directly when kickoff state.

Last year, our robot played well in regular competitions, but our robot wasn't able to score when drop-in. This problem arises because our robots do not implement standard communication protocols, therefore, our robots cannot work with robots from other teams. This year, we will implement communication protocol for all of our robots so that each of our robots can work together with the robot in one team, as well as with other teams in drop-in games.

Walking

Designing a suitable walking algorithm is still a challenge for us. Reflecting on previous competition at the RoboCup 2019 Sydney, our robot has a lack of stability when walking. In that game, physical contact with the opponent robots or with teammate robots is unavoidable and even often happens. We use an open-loop system where the actuator will actuate the leg of the robot based on the specified trajectory. With this method, our robots are easily disturbed due to the disturbance from uneven floor of the field due to the use of artificial grass or because of lack of perfection in making the field. Therefore, we developed a load cell sensor, inspired by Roban Team, that is placed on each robot foot cleat. This load cell sensor serves as feedback to maintain the stability of the robot when walking or kicking the ball. Our robot uses a 40kg load cell sensor that is processed by the microcontroller.

Localization

Our robot does localization by estimate change in position over time. but to do that, first, we need to set the initial position that has been defined previously. After the robot knows its initial position in the field, then the robot estimates its position based on the estimation of its step. But using this method has a weakness because a small error in estimation could lead to a larger error. To solve that problem, we proposed two approaches to get a better estimation of the robot position. The first approach involves a forward kinematic calculation of the robot's foot end position while the second approach involves the usage of particle filters using features of the field.

Software System Overview

This year, our team uses Webots to simulate a soccer match using multiple robot instance. Our reason to do this because developing robot behavior and team play would be hard to be done when using a real robot as we need to tune all the robot walking and vision systems to match the current field of the match. To do that, we proposed a new software system based on the ROS node.