AUTMan Humanoid Team Description Paper <RoboCup 2011 Humanoid Kid-Size Robot League>

Soroush Sadeghnejad, Ali TorabiParizi, Mahmoud Rahat, Seyed Sina Mirrazavi Salehian, Mohsen Malmir, Seyede Maryam Mousavi, Saeed Salavati Dezfuli, MohammadMahdi Nabi, Shayan Edalatmanesh, Hafez Farazi, Donya Rahmati, Faeze Ghorbankhani, Navid Fayaz, Rahman Barooj, Sohrab Asadzade Olghi, Dr. Saeed Shiry Ghidary, Prof. Mohsen Bahrami

Humanoid Robotic Laboratory, Amirkabir Robotic Center, Amirkabir University of Technology. No424, Hafez Ave., Tehran, IRAN. P. O. Box 15875-4413.; Department of Computer Engineering, Parand Islamic Azad University, Tehran , Parand , Iran.

http://www.AUTHumanoid.com


Abstract This document describes AUTMan kid-size humanoid robots team for participating in humanoid robot league in RoboCup 2011, which is going to be held in Istanbul, Turkey. Our humanoid kid-size research is mainly based on the other active research groups working on different RoboCup leagues in Amirkabir University of Technology and a joint team from Parand Islamic Azad University. The focus is to use experiences of our Soccer Simulation 3D team and SPL team, which is closely related to the humanoid robot league. A brief history of Team AUTMan and its research interests will be described. Future work based on the humanoid kid-size robots will also be discussed. Our main research interests within the scope of the humanoid robots are robust real-time vision and object recognition, machine learning for adaptation and architectures for humanoid decision-making.

Key Words: RoboCup2011, Soccer Simulation 3D, SPL team, real-time vision, object recognition, machine learning for adaptation and architectures.

Introduction

Biped robots have better mobility than conventional wheeled robots, especially for moving on rough and uneven terrain. Study of these robots and their stability has been the focus of too many researches in the last decades. RoboCup is a perfect application for developing humanoid robots that can interact with humans. The goal of RoboCup is "By the year 2050, develop a team of fully autonomous humanoid robots to win against the human world cup champion team". Amirkabir University of Technology has been remarkably participating in RoboCup competitions from 2004 in various leagues such as Small Size Soccer Robots, Real Rescue Robot, @Home, 2D Soccer Simulation, 3D Soccer Simulation and Rescue Simulation leagues and lately in Standard Platform League. By achieving experiences (as participants, organizers, league, and symposium Technical Committee Members) in many national and international competitions especially RoboCup and "IRANOpen", we have decided to establish the Amirkabir Robotic Center for extending our projects and coordinating all robotic researches and activities at university. As the part of this new roadmap, AUTMan humanoid team has formed to begin a new project on humanoid robot league based on experiences on SPL, which has been in progress since June 2010, and Soccer Simulation league which is active since 2004.

One of the main goals of RoboCup competitions is to combine research done in various leagues in order to reach the ultimate goal of RoboCup project in 2050. Our humanoid robot team research is mainly based on the other active research groups working on different RoboCup leagues to use experiences of our Soccer Simulation 3D Team, @Home and SPL Teams, which are closely related to the humanoid robot league. Research and activities in our universitys' Soccer 2D Simulation team and Small Size Soccer Robots team are also of great help. We are going to use their experiences in Machine Learning especially Reinforcement Learning to boost the Humanoid Robots skills. In the long-term, their experiences in field of distributed multi robot coordination is very helpful to enhance our humanoid robot team's high level planning and team work behavior.

To state one of our active research projects on biped robots, we are working on a new approach for generating a new walking algorithm. The approach, which is used to generate actions, will be able to produce stable and perturbation resistant actions.

This team description paper provides a brief overview of our relevant research since our participation in RoboCup Competitions and of current work that is about to become used during the next competition.

Research Overview

The research of the AUTMan in humanoid robotics focuses on

  • Central Pattern Generator (CPG), [1-3]
  • Gait generation (Walking Pattern), [4-5]
  • Object Recognition with Cortex like Features, [6]
  • Biped Walking Using Truncated Fourier Series, [7]
  • Emotional Control, [8]
  • The Kick Action, [10]
AUTMan Humanoid Kid-Size Robot
AUTMan Humanoid Kid-Size Robot

Hardware Design

3.1 Mechanical Structure

In this section, we describe the mechanical structure of AUTMan Humanoid Robots. The motion mechanism consists of 20 degrees of freedom distributed in 6 per leg, 3 per arm and other two degrees of freedom as a pan-tilt system, holding the head. Mechanical structure of robots started with Bioloid robot kit produced by RobotisInc. but now we are working on a new and optimized structure of humanoid robots to participate in Robocup competitions especially with the aim of participating in Adult-size Robot League. Table1 illustrates the physical measurements of the robot. To facilitate exchange of the players; all robots use mechanically the same structure.

Physical measurements of the robot

Humanoid Robot League
AUTMan (IRAN)
Quantity Value Unit
Overall Height 42 cm
Weight 2350 gr
Leg Length 24 cm
Foot Area 60 cm×cm
Arm Length 20 cm
Head length 8.5 cm

3.2 Actuators

The actuators used in AUTMan robots are "Dynamixel AX-12" and "Dynamixel AX-18" servomotors, produced by RobotisInc. Each actuator has its own microcontroller, which implements adjustable position control using potentiometer position feedback. It also calculates many other parameters such as rotation speed and motor load which can be accessed through a single-bus, high-speed serial communication protocol. This facilitates the construction of an extendable network of motors, which can be individually accessed and controlled by a single microprocessor.

The parameters of the actuators used in AUTMan robots

Actuator Weight (g) Gear Ratio Max Torque (Kgf.cm) Speed (rpm) Resolution (degrees)
Dynamixel AX-12 53.5 1:254 15 59 0.29
Dynamixel AX-18 54.5 1:254 18 97 0.29

3.3 Controllers

Any robot use two microcontroller based hardware as main controller and motion controller. Main controller is a CMUcam vision module controller. All processing algorithms such as image processing and decision making algorithms are implemented on it. Main controller work at about 80MHz frequency. It is an ARM microcontroller based hardware. Motion controller is a CM5 Bioloid robot controller. It is an AVR microcontroller based hardware. The Processor of the CM5 is an ATMEL ATMEGA128 which is an 8-bit RISC microcontroller clocked at 16MHz and has a throughput of almost 16MIPS at this frequency. This microcontroller has plenty of resources, among them 2 USART modules which are used to communicate with both servo and camera module. In the servo side 1Mbps is used as the baud rate. Each servomotor (and of course any other module such as the accelerometer) has a unique ID for packet identification. On the camera side, the communication is performed using a standard 115200bps RS232 protocol. CM5 programming has been done in C language. Because of some constraints as memory space and debug interfaces we have designed a new AVR based hardware. It is compatible with Bioloid CM5controller. We increase the ability of CM5 in our design. Some specifications of it are listed below:

  • AVR based controller: using ATmega128 working at 16MHz frequency
  • LCD interface
  • Direct CMUcam serial interface
  • On board ADXL202 2 axis digital accelerometer
  • Dynamixel serial interface
  • DIP switches
  • LED's
  • On board programming interface
  • Actuator voltage limiter
  • USB 1.1 interface
  • Onboard 3 RC servo motor interface
  • Compatible with CM5 dimensions
  • Onboard 64K byte EEPROM
New designed AVR based hardware
New designed AVR based hardware
Designed hardware block diagram
Designed hardware block diagram

Designed Firmware

We use a simple firmware on our designed controller. As described above we use a 64K byte external EEPROM on our designed board. We wrote a simple firmware in our controller. Actually, this firmware is a simple interpreter. It can communicate with all available onboard interfaces and specially USB interface and external on board EEPROM. We use the EEPROM as motion storage. We store several needed completed motions as sequences of joints angles and delay times between sequences in EEPROM. The firmware works in two, Play, and Program states. When firmware works in play mode it applies the stored angles as a sequence of data with specified delay times to all actuators. Therefore, a complete motion is done.

When firmware works in Program state, we can read and write the EEPROM. So we can reprogram EEPROM without programming the controller.

Hardware communications block diagram
Hardware communications block diagram

3.4 Sensors

The robot has some types of sensors: the camera, the accelerometer and the communication module.

Camera Sensor

The vision sensor used in AUTMan robots is a CMUcam version 3 module, that consists of an integrated CMOS camera and an ARM based microcontroller. This module is capable of capturing and processing images at the acceptable rate. The main motion control algorithms that are implemented on the camera's microcontroller use this image processing results and then decide the action of the robot. The action is reported to the main controller system through a common USART serial interface. The main processor is used for control of servo motors.

Accelerometer Sensor

Any robot has an ADXL330, 3-axis analog accelerometer sensor located in nearest distance from center of robots mass. Accelerometer sensor designed with electronic team and is compatible with Dynamixel serial bus. Therefore, CM5 as motion controller can read it and use acceleration information to report it to main processor.

Communication module

In any robot we use a small serial to WiFi module to communicate with referee box software. Our H-WiFi modules are compatible with IEEE802.11b/g/i standards. The modules have 32KB on board EEPROM, UART serial interface and supports multisecurity communications. This module is connected to a serial port of main controller so the main controller can communicate with referee box software and receive its controlling signals. So any robot can decide based on the referee box signals.

WiFi communication module
WiFi communication module

3.5 Vision Module

Computer vision plays an important role in humanoid robots. The task of this module is to determine relative position of ball, goals, landmarks, penalty markers, field lines, teammates, and opponents in the input camera images based on the current position of robot. We generate an estimation of the distance of robot to the detected object using size of the object. Afterward this information will be used to generate robots world model and high-level decisions including robot behavior and task. In addition, the information derived from vision module is used for localization purpose.

In this module, we apply color base labeling to detect objects in the environment. We have used HSV color space, which is considered to have less sensitivity to illumination changes, since hue is independent on intensity values. In addition, for better modeling of the target color, instead of determining some thresholds on the H, S and V parameters, we have utilized a color look-up table. Classifying each pixel based on the color will produce a black and white image. Each connected component in this image will be considered as an object. As you can see in Fig 6, two detected objects are labeled with purple and pink colors. Since the object with purple color has bigger size, it is considered as target.

One frame from CMUcam3 processed by vision module
One frame from CMUcam3 processed by vision module

Software Design

4.1 Motion

We programmed an application to develop some of common moves for robots, for example standing up, walking, shooting, diving etc. We save motors' positions, combine them, create states, and by putting states together, we have some static moves.

4.2 Decision algorithms

There is a simple but useful algorithm implemented in our robots to score and win.

  • a. Localize
  • b. Find the ball
  • c. Recognize if there is a closer teammate or not
  • d. If not, go close enough to the ball
  • e. Find opponent's goal
  • f. Go to "Fine Position" for shooting
  • g. Call "Shooting" Procedure

For the goalkeeper:

  • a. Be ready for falling
  • b. Find the ball
  • c. If it's too close to goal then go to "Fine position" for diving
  • d. Guess the direction of diving

Current researches

5.1 Biped Walking Using Truncated Fourier Series

Controlling a biped robot with a high degree of freedom to achieve stable and straight movement patterns is a complex problem. With growing computational power of computer hardware, high resolution real time simulation of such robot models has become more and more applicable. In this case, we have introduced a novel approach to generate bipedal gait for humanoid locomotion. This approach is based on modified Truncated Fourier Series (TFS) for generating angular trajectories. It applies Particle Swarm Optimization (PSO) to find the best angular trajectory and optimizing of the TFS. This method has been implemented on Simulated NAO robot in Robocup 3D soccer simulation environment and now we are trying to use it in real environment. To overcome inherent noise of the simulator we applied a Resampling Algorithm which could lead the robustness in nondeterministic environments. Experimental results show that PSO optimizes TFS faster and better than GA to generate straighter and faster humanoid locomotion.

5.2 The Kick Action

Generating adaptive and online trajectories for special actions of a robot is an important and challenging issue in humanoid robots. We apply a novel method for online generation of an adaptive trajectory for the kick action of a humanoid robot using reinforcement learning. We obtained important joints for a kick action by visual inspection of human kick and statistical analysis of kick actions of humanoid robot models in a simulated 3D environment. We reduced the search space of the applied reinforcement learning algorithm by imposing some simplifications and restrictions. Finally we are employing a neural network to estimate the value function of the reinforcement learning algorithm.

The ball kick
The ball kick

Conclusions and Acknowledgments

This report described the future technical plans and also works done by the AUTMan Humanoid Kid-Size Team for its entry in the RoboCup2011 Humanoid Kid-Size League which has been supported by Amirkabir Robotic Center at Amirkabir University of Technology (Tehran Polytechnic). Our focus for the first year RoboCup competition has been on developing new localization, motion behavior, and vision module due to our past and relevant experiences and showing that our SPL researches as well as other researches in various RoboCup leagues will be appropriate in Humanoid Kid-Size League and can be useful by some changes. We look forward to continuing and expanding our above research on the new other humanoid robots. For further information and to be familiar with our previous and new publications and recent activity done for entering the humanoid community and also for seeing more pictures and videos, please see our official website.

References

  1. Inada, H. and K. Ishii, K.: A Bipedal Walk Using a Central Pattern Generator. In Brain-Inspired IT I, pages 185 188. Elsevier, (2004).
  2. Matsuoka, K.: Mechanisms of Frequency and Pattern Control in the Neural Rhythm Generators. Biological Cybernetics, 56:345 353, (1987).
  3. Kennedy, J., Eberhart, R.: Particle Swarm Optimization. Proceedings of IEEE International Conference on Neural Networks. IV. pp. 1942–1948.
  4. Kajita, S., Matsumoto, O. and Saigo, M.: Real-time 3D Walking Pattern Generation for a Biped Robot with Telescopic Legs. Proc. of the 2001 ICRA, pp.2299- 2308, (2001).
  5. Salavati Dezfuli, S., under supervision of Prof. Bahrami, M.: Design and Manufacturing of a Humanoid Robot. B.Sc. Thesis in Persian, (2008).
  6. Mohsen, M., Shiry, S.: A Model of Object Recognition for Home Robots Inspired by the Primate Visual Cortex. RoboCup Symposium 2009, June 30-July 3, Austria, (2009).
  7. Shafii, N., Mohamad Nezami, O., Aslani, S. and Shiry Ghidary, S.: Evolution of Biped Walking Using Truncated Fourier Series (TFS) and Particle Swarm Optimization (PSO). RoboCup Symposium 2009, June 30-July 3, Austria, (2009).
  8. Hadi Valipour, H., Shiry, S.: Optimization of Emotional Learning Approach to Control a Biped Robot. Under review.
  9. Cheng, H.D. et al,: Color Image Segmentation. Advances and Prospects Pattern Recognition 34, 2259, 2281, (2001).
  10. The Parsian3D team members,: Polytechnic-Parsian3D RoboCup2010 Team Description Paper RoboCup2010. Singapore, Singapore, (2010).
  11. AUTMan team members,: AUTMan Standard Platform Robot League Team Description Paper, RoboCup2011, Istanbul, Turkey, (2011).