RoboCup 2018 - TDP Team ZSTT

Jaesik Jeong, Jeehyun Yang, Yougsup Oh, Hyunah Kim, Amirali Setaieshi, Sourosh Sedeghnejad, Jacky Baltes

Educational Robotics Centre, National Taiwan Noremal University, No.162, Sec.1, Heping E Rd, Taipei city, 10610, Taiwan; REMVO, Seoul, Republic of Korea; Bio-Inspired System Design Lab (BlnSDeLa), Amirkabir University of Technology (Tehran Polytechnic), No.424, Hafez Ave., Tehran, Iran, P. O. Box 15875-4413

http://140.122.105.228/ · https://remvo.github.io/ · http://autman.aut.ac.ir


Abstract This team description paper describes the hardware and software of the new joint team ZSTT-AUT as well as their previous contribution to research. This team is a joint team between ZSTT (Taiwan and Korea) and Amirkabir University of Technology (Iran). Team ZSTT participated in adult-size RoboCup humanoid league for the first time in 2017. But ZSTT was ranked 4th place in 2017, showing the potential possibility of humanoid robot development. AUT has a long history in humanoid robot soccer and were successful in previous RoboCup competitions. ZSTT-AUT has made great progress since last year. This paper explains the hardware, software, and design of the humanoid robots at RoboCup 2018 to be held this year in Montreal.

Keywords: RoboCup 2018, adult-size, omni-directional walking, machine learning

1 Introduction

Team ZSTT-AUT is joint team which consists of ZSTT (National Taiwan Normal University from Taiwan and REMVO from Republic of Korea) and Amirkabir University of Technology (Iran). In winter of 2017, this team started collaboration developing an adult-size humanoid robot. AUT has a long history in humanoid robot soccer and were successful in recent years. Besides winning various technical challenges in both the kid-size and teen-size sub leagues in previous RoboCup competitions (2013, 2014, 2015, and 2016), AUT won the main RoboCup humanoid robot league tournaments. Placing 2nd in RoboCup 2013 in the humanoid kid-size and 3rd in RoboCup 2015 and 2016 humanoid in the teen sized sub league proved their wide and planned endeavors in promoting the humanoid robotics communities [1][4-6]. This joint teams humanoid robot is a fully autonomous humanoid, which is 1.35m tall and weighs 11kg. It constructed as a 20 degrees-of-freedom biped humanoid. The walking gait of the humanoid is built of based on the kinematics and dynamics of the robot and is able to walk using IMU feedback and machine learning. The software is implemented using ROS with python and using OpenCV for localization and improving the image processing [2].

2 Hardware

This section describes the hardware of our new adult-sized humanoid robot. The robot's design is based on previous successful designs that competed in the kid and teen-sized leagues.

2.1 Mechanical Design

The humanoid robot is 1.35m tall and weighs 11kg. The robot has 20 degrees of freedom (five in each leg, 4 in each arm, and two in the head) in total [3] (see Fig. 1).

The robot frame is manufactured using aluminum and uses Robotis Dynamixel MX series for each joint. MX-106R is used in the leg, each joint in the leg is composed of two motor, and RX-64 are used in the arm, and RX-24F in the neck [3]. For better noise resistance we use an RS-485 bus to communicate with the actuators in a star topology. There are communication buses connected to the main processor board, one for legs, another for arms, and the other for the head.

Fig. 1. New adult-sized humanoid robot design
Fig. 1. New adult-sized humanoid robot design

2.2 Electronics Design

The robot system is divided into 2parts: a controller that controls servo motors, sensors and calculating walking gait, and single board PC that recognizes environment and controlling robot behavior. The controller is composed of an ARM7 board, IMU for the robots status recognition, servo-motors for moving the robot, PMIC, and FT232/Bluetooth used for a network. PC calculates real-time image processing for recognizing ball, field, opponent, and goal-post, and controls robot behavior. Electronic modules of the humanoid robot are Lattepanda, C930e (web camera), IMU, ARM7 embedded motion controller, and Dynamixel servo motors (see Table 1).

Table 1. Robot specification

Height 135 cm
Weight 11 kg
DOF Leg 10
Arm 8
Head 2
Actuators MX-106, RX-64, RX-24F
Sensor 6-axis IMU
Camera C930e
Main controller Latte Panda
Motion controller ARM-7
Walking speed 25 cm/s

3 Motion Planning

We found swing for a stable walking gait of a humanoid robot using IMU and machine learning. Our humanoid robot is applied basic walking gait using kinematics and dynamics. Software making a basic walking motion is available calculating kinematics, dynamics [3] (see Fig. 2). We calculate walking gait by analyzing IMU sensor value and the data calculated by kinematics and dynamics. And Motion program shows robot walking simulation and the output of sensor data. Motion software and Humanoid are connected by serial communication (Bluetooth, Zigbee, RS-232, RS-485, etc.).

Fig. 2. Motion controller
Fig. 2. Motion controller

4 Software

Software system is implemented on ROS (Robot Operating System) Lunar Loggerhead [2] with Python and using OpenCV. When the humanoid robots play soccer, they need much information to know about the environment:

Where is the field? Am I on the field?

Where is my position in the field?

Where is the ball? How far?

Where is the opponent?

Where is the opponents goal post?

And so on

To play without any human interrupt, the humanoid robot needs to know that about current position and situation and can do handle it. For example, when the robot succeeds goal-in, he must go back to starting position autonomously.

4.1 System Architecture

There are three nodes: main controller, game controller, and robot. The main controller connected with other nodes and periodically exchange information. The main controller get frame from camera and then trying to detect objects such as field, ball, goalpost, a position of the robot. The game controller server broadcast game status such as current state (initializing, ready, set, etc.). When the main controller receive the information, it send heartbeat to the game controller server to notify that we are connected. The robot periodically sends IMU data (roll, pitch, and yaw) to the main controller. The main controller gets a frame from the camera and then attempts to detect objects such as field, ball, opponent's goalpost, and etc. The main controller determines the command and sends it to the robot.

Fig. 3. System architecture of our adult-sized humanoid robot
Fig. 3. System architecture of our adult-sized humanoid robot

4.2 Object Identification

To object identification, we convert an image to other color space such as HSV color space or LAB color space. Firstly, the humanoid robot identifies field object by detecting a green color. After that, we wipe out outer of the field boundary. Because the ball is always located on the field. The robot identifies ball object by detecting white objects and using Hough Circle algorithm. The goalposts are identified by detect white objects which located at field boundary. Currently, this system cannot be identifying field lines and the center circle. When objects are detected using only color space, the recognition accuracy is not good because there are many similar colors. Sometimes, the color setting does not work because of brightness or contrast, or other many reasons. So, we need to upgrade our system to improve the accuracy of object identification in any environment.

Fig. 4. Vision system
Fig. 4. Vision system

4.3 Localization

The system of localization use vision data and IMU data. In our system, we calculate distance between our robot and the ball. The distance is calculated using angle of head (camera) and vertical position of the ball on the image (from camera) and height of robot (height of camera from ground). After detecting ball position, the robot turns to the position of the opponent goalpost using IMU data. The robot calculates the distance between the goalpost and the current robot position. Finally, the robot estimates the position in the field.

5 Conclusion

This paper describes ZSTT-AUT joint team and details about the humanoid robots mechanical design, electronic design, motion generation, vision system, and localization. This joint team looks forward to continuing and expanding our above researches with the new humanoid robots.

References

  1. Sepehr Ramezani, Amirali Setaieshi, Nima Pourmohammadi,Parsa Yarahmadi, Armin Arvand, Foruzan Fallah, Amirhossein Hosseinmemar, Jamillo Santos, Kyle Morris,Meng Cheng Lau, John Anderson, Jacky Baltes, and Sourosh Sadeghnejad: AUTMan Humanoid Teen Size Team Description Paper RoboCup 2017 Humanoid Robot League, Nagoya, Japan, Teen-size Humanoid League, Team Description Paper (2017)
  2. ROS Homepage, http://www.ros.org/
  3. Jaesik Jeong, Jeehyun Yang, Youngsup Oh: ZSTT Team Description Paper for Humanoid Adult-size League of Robocup 2017, Adult-size Humanoid League, Team Description Paper (2017)
  4. Baltes, J., Sadeghnejad, S., Seifert, D., Behnke, S.: RoboCup Humanoid League Rule Developments 20022014 and Future Perspectives. RoboCup 2014. Robot World Cup XVIII, pp. 649-660. Springer (2015)
  5. Baltes, J., Bagot, J., Sadeghnejad, S., Anderson, J., Hsu, C.-H.: Full-Body Motion Planning for Humanoid Robots using Rapidly Exploring Random Trees. KI-Knstliche Intelligenz 30, 245-255 (2016)
  6. Gerndt, R., Seifert, D., Baltes, J.H., Sadeghnejad, S., Behnke, S.: Humanoid robots in soccer: Robots versus humans in RoboCup 2050. Robotics & Automation Magazine, IEEE 22, 147-154 (2015)