Team Description Paper: IRIS Team 2021
Rudy Dikairono, Robby Surya Fimansyah, Krisna Pramudya Dharma, Habib Ihza Alamsyah, Banin Fawwaz Hadin, Marsha Nabilah Wibowo, Zulfiar Ahimsa Mahardhika, Habib Sukma Setia Putra, Taufik Hidayat
Workshop Laboratory, ITS Robotics Centre, Institut Teknologi Sepuluh Nopember, Surabaya 60111, Indonesia
Abstract IRIS is a robotic team that competes in the soccer robotic league. The team was founded in the mid-2016 with the ambitious goal of competing in the international robotics competition. This paper presents the information of middle-size league from IRIS team including team information, hardware information, and software information for RoboCup 2021. In this paper, we will introduce our mechanical system, electrical system, and software of the robots.
1 Introduction
IRIS (acronym for ITS Robots with Intelligence System) is a robotic team that competes in the soccer robotic competition, focusing on the Middle-Size League. The team members are students of Institut Teknologi Sepuluh Nopember Surabaya, which consist of 28 undergraduate students and a Doctoral Student. The team was formed in mid-2016 with the ambitious goal of competing in the international robotics competition. IRIS annually competes in the middle-size soccer robot competition which is held by the Ministry of Research Technology and Higher Education of the Republic of Indonesia. This first competition was held in 2017 and our team has won various awards. In 2017, we won 3rd place and best design in Regional and won best innovation and best design in National competition. In 2018, we won 1st place and best strategy in the Regional and won 2nd place in the National competition. We also participated in the Robosot League in 2018 FIRA RoboWorld Cup and won 1st Place Passing Challenge, 3rd Place Obstacle Avoidance Challenge, and 3rd Place Localization Challenge. In 2019, we won 1 st place in the Regional and National League while also participating in ROBOCUP 2019 Sydney. The team also won 2 silver medals in FIRA 2019 Korea. As time goes, our research focuses on mechatronics, computer vision, and software architecture and engineering. Recently in 2020, we won 1st place in Regional League and Best Strategy. We also won 1st place in the National League and Best Design.
2 Mechatronic
IRIS decided to create its own robotics platform at the start of the research. MSL is a soccer-playing autonomous robot. Meanwhile, football is a sport in which players have a lot of direct contact with one another. Robots are designed and built with wheels as a driver and are programmed to employ attack and defense strategies similar to those used in football games. That is why we designed the robot to be capable of both high speed and flexibility, as well as robustness. We have now completed the construction of our second-generation robot and are conducting research for the third generation.
2.1 Mechanical System
The mechanical system of the robot was built around four omni wheels, allowing it to move forward, backward, and even diagonally. The rectangular-cut edge is also represented in the base design, which measures 45cm x 45cm. The entire body of the robot is made of aluminium plates. We use four High-torque DC motors for robot movement, two High-speed DC motors for ball handling, and a brushless motor with a High-torque gearbox for kicking. We also use two external encoders mounted at the bottom of the body robot to map the field and determine the robots' coordinates.
A Brushless DC motor is used in the kicking mechanism, which is controlled by a microcontroller (STM32F4 Discovery). Because our robot's kicking mechanism is not fixed, it can move up and down. The mechanism is powered by a high-torque DC motor that is also controlled by a microcontroller. This system enables the robot to adjust the height of the kicker (low pass and lob pass) and the speed of the kick based on the target's distance from the robot's position. Based on the findings of our research, we have the data shown in the graph below.
PWM (%) with linear velocity graph, PWM (%) with kick distance graph, and PWM (%) with kick height graph are displayed. The three graphs show that the higher the PWM value, the higher the value of linear velocity, kick distance, and kick height produced.
2.2 Electrical System
The electrical system used in our four-wheeled robot uses two 6 Cell Lithium-ion batteries, the electrical system is divided into three main parts, namely actuators, sensors and controllers, the actuators used in the robot are four brushed DC motors, two dribbling mechanisms brush the DC motor, and one brushless DC as the kicker system. The sensor and controller are then divided into two parts, high level and low level. The low level sensor consists of 360 PPR - Rotary encoder to get the coordinates of the robot's position, MPU Gyroscope sensor to determine the angle of the robot based on the terrain, proximity sensor to determine the distance between the ball and the robot, photoelectric sensor to detect the position of the kicker, and fiber optic sensor to calibrate the line. against current censorship. The microcontroller board is a printed circuit board with STM32F407VG as low level controller. This board only connects the pins of the development board with the peripherals, which consist of actuators and sensors. The data from the sensor is then processed by the microcontroller, after the data is obtained from the microcontroller, the data is then sent to the Mini PC via an UDP Ethernet connection. We also use an LCD Crystal connected to the microcontroller to monitor the robot's on-board condition. Display Contains robot position, robot angle, robot speed, robot angular velocity, dribble motor speed, and kicker up and down position.
Below is an LCD Crystal display.
Below is our robot electrical system design.
3 Software
This section will explain the 3 main algorithms of IRIS' robot, and their role in forming the robot's in-game behavior. These 3 algorithms are image processing, communication as well as strategy planning. Each of these algorithms will be explained in subsection 3.1, 3.2, and 3.3 accordingly.
Our program architecture is shown on the fig 4, where the circle part describes the ROS node (a single process that run simultaneously with each other), and the arrow part describes the information that were given from one node to the other.
Each of these nodes are handling different algorithms. For vision_capture, vision_field, vision_ball, and vision_obstacle handle the image processing algorithm, basestation and udp_serial handle the communication algorithm, and for strategy planning algorithm is handled by routine and dribble node. As for rosbridge_websocket, web_video_server, and vision_capture was only there for debugging purpose
3.1 Image Processing
The RoboCup Middle Size League environment is currently color-coded, so we focus to design vision systems to recognize color-coded objects in the RoboCup environment. At the early version of our robot, the proven concept of omnidirectional vision is implemented. The omnidirectional vision system consists of a hyperbolic mirror and a webcam camera (Logitech Webcam Camera). Because of the wide angle of view in omnidirectional vision, the robot does not need to look around using moving parts (cameras or mirrors) or turning the moving parts.
The method that we use to recognize the environment is by thresholding using HSV colorspace. HSV (hue, saturation, value) colorspace is a model to represent the colorspace similar to the RGB color model. Since the hue channel models the color type, it is very useful in image processing tasks that need to segment objects based on its color. The orange color will be the ball, green will be the field, and the other colors will be recognized as an obstacle. By the end of this process, the robot will obtain the position of the ball as well as the obstacle that may accompany it. In recent years, we also used front camera to improve the passing accuracy between robots. Assuming the kicking method is ideal, Assuming the ideal kicking method, the robot will know which side the ball is coming from and estimate the friend's angle to the ball coming from. this has proven to be effective in the game of kick ball to a friend.
3.2 Communication
Communication based nodes have the role to communicate each robot to base station, as well as sharing information between PCs (as the main system) to the microcontroller as the controller of the whole actuator. All communication is handled with UDP protocol.
3.3 Strategy Planning
The basic strategy of IRIS' robot consists of ball handling, passing, and shooting. All of these algorithms have been set on robot's in-game behavior. To enhance the robot in-game behavior and decision making, the robot needs to have the ability to position itself accurately on given position, as well as determining its current position. The technology used for this purpose is rotary encoder. Rotary encoder is a device that can measure how far the robot has moved. With this technology, the robot can determine its current position based on the initial position and the distance they have moved.
Although this technology is enough to roughly estimate the robot's current position, it is still far from perfect. Rotary encoders tend to have an increasing error of estimation the longer the robot moves. Therefore, we constantly use a calibration method to recalibrate the error to minimum. We use field line, and line sensor to do this calibration. Every time the calibration function is called, the robot will move to a specific location and look for the field line. This way, the robot can estimate the current location based on the line they detect.
The ball handling and shooting algorithm is enhanced with an obstacle avoidance algorithm. This algorithm will instruct the robot to evade enemy robots and look for clear shooting sight. By doing this, we will have higher chance on scoring goal
4 Conclusion
Based on the achievements of our team in National Leagues and the experience in participating in 2019 RoboCup, IRIS will have a strong commitment in joining the RoboCup 2021 proven by the development of the robot in the software platform and electronic system.
The major improvements that were made for this past year are mostly about software platform. We used to have OpenFramework runs on Microsoft Visual Studio as a platform to run the whole program. Although there was no significant error from this platform, we decide to improve our processing capabilities by using ROS (robot operating system) as the main platform. The communication is also being improved in UDP to get faster data streaming. By doing this, we have gained a system that run smoother, easier to modified and easier to debug. We still use UDP for communication and have not changed it to RTDB because UDP is fast enough to transfer data.
References
- A. Giusti dkk., "A Machine Learning Approach to Visual Perception of Forest Trails for Mobile Robots," IEEE Robotics and Automation Letters, vol. 1, no. 2, page. 661–667, Jul 2016.
- B. M. Faria, L. P. Reis, N. Lau, and G.Castillo, "Machine learning algorithms applied to the classification of robotic soccer formations and opponent teams," 2010, pp. 344-349.
- Y.-R. Hou, "Moving target detection in the robot system based on Omni-Vision and laser rangefinder," 2015, pp. 1162-1166.
- Falithurrahman, Maulana, "Implementasi Lidar pada Robot Sepak Bola Beroda untuk Tendangan ke Gawang", Institut Teknologi Sepuluh Nopember, Surabaya, 2019.