SpelBots Humanoid League – KidSize Team Description Paper 2012

Tyler Davis, Daria Jordan, Breoshshala Martin, Christina Sparks, Chanel Johnson, Amelia Henderson, Ronique Young, Andrew B. Williams

Spelman College, Atlanta, GA USA

http://www.spelman.edu/~spelbots · http://www.youtube.com/watch?v=nVlzmphjU80 · https://github.com/UPenn-RoboCup/UPennalizers/wiki


Abstract This paper gives an overview of the hardware and software of the SpelBots humanoid robot team. The SpelBots are a new entry into the KidSize league in 2012 and is utilizing the DARwin-OP humanoid robot from Robotis. The SpelBots are re-using code from the UPENNalizer's KidSize 2011 code as the basis for their software platform and will make algorithmic modifications and extensions for distinctive team strategy, kick and ball search motions, vision, and localization algorithms. The SpelBots have competed in RoboCup Standard Platform League (SPL) Open competitions and have qualified for the RoboCup 2012 Mexico SPL competition.

1 Introduction

The SpelBots are making application to the RoboCup Humanoid – KidSize league for the first time. The SpelBots have competed in RoboCup events since 2005 and since 2009 have competed in the RoboCup Japan and Mediterranean Opens, tying for third place in the RoboCup 2011 Mediterranean Open. The SpelBots are committed to competing in the RoboCup 2012 Humanoid – KidSize competition if selected and will provide a referee during the competition. The SpelBots have qualified for the RoboCup SPL competition in Mexico City and will have the ability to have two teams competing at the same time.

2 Hardware Design

The SpelBots are using the DARwin-OP humanoid robots manufactured by Robotis in Korean. The SpelBots have ordered five DARwin-OP humanoid robots from Robotis. The DARwin-OP is an open platform autonomous humanoid with on-board image processing capability. Dynamixel RX-28M actuators with metal gears are used along with 3Mbps high-speed Dynamixel bus for controlling joints.

2.1 Specifications

The DARwin-OP is 17.9 inches tall and weighs 6.4 lbs. The DARwin-OP has 20 degrees of freedom (6 DOF in both legs, 3 DOF in both arms and 2 DOF in the head and neck). The main processor is an Intel Atom Z530 CPU with a 1.6 GHz clock speed and 1 GB RAM and 4 GB of SSD storage.

2.2 Sensors

The DARwin-OP has a 3-axis accelerometer and a 3-axis gyroscope. The camera is a 2 mega-pixel high definition camera. The DARwin-OP also has 3 microphones.

3 Software Design

The SpelBots are re-using the University of Pennsylvania's UPENNalizers RoboCup 2011 software platform as a foundation for the team's software design and plan to make significant modifications. Further modifications include new motions for kicks and ball search, tuning of walk parameters, teamwork algorithms, individual role behaviors. We also plan to incorporate our modifications to vision and localization code. The SpelBots requested and received permission from the UPENNalizers (Dr. Daniel Lee) to re-use their code and thankfully acknowledge their assistance. The SpelBots had not received their robots in time and acknowledge that they were able to utilize a DARwin-OP robot from Georgia Tech (Dr. Ayanna Howard) and get the basic robot soccer behaviors running in a short amount of time.

3.1 Software Architecture

The software architecture uses the Lua programming language as a method to call low level hardware functions from a scripting language. The low level hardware interfaces are compiled as C libraries and can be called by Lua scripts. These scripts can access the camera, the gyroscope and accelerometer sensors, and can modify joint angles and stiffness. Joint encoders can also be accessed via these scripts. The two main subsystems are the vision subsystem and the motion subsystem which interfaces with the camera and the servomotors, respectively. The behavior module interacts with both the vision and motion subsystems to implement the sense, plan, act cycle.

3.2 Vision

In previous robotic competitions, we have implemented mean-shift image segmentation on live video in order to identify objects of interest. Although this method was accurate in identifying and locating obstacles, the cost had slow computational time, taking almost 5 sec/frame to evaluate the current scene. In realworld applications, this would be unacceptable and not valuable to use.

For faster processing, we will focus instead on binary images, where the color of interest will have a value of 1. The reason for using a binary image is because it has a quick computational speed and evaluation. Since we have multiple objects of interest with different colors, our algorithm will account for this by implementing a decision making model. For example, when starting the game the robot will first search for the ball and its interested color value will be set to orange. The binary image will only display those pixels that fall within the orange color range. Once the ball is located, it will switch its interested color to its current goal's color, lets say blue, and search. If the goal and color is successfully located and is in front of the camera, the robot will switch back the interested color to orange, locate the ball again and kick towards the goal. Because our filtering system is only focused on one color at a time, we believe this model will be efficient and have an optimized computational speed during the soccer competition.

To filter out the colors, we will use a Gaussian filter. For each object and color of interest, we will take in many samples under different lighting conditions and develop a histogram for each object. Using this heuristic method, we can determine the best threshold value to be implemented with each color object for high accuracy. During the competition, the robots will switch between the interested colors according to the situation its currently in.

3.3 Motion

In developing our kicks, we will make use of the UPENNalizer's stabilization code that allows control of the robot motion throughout the kicking action. We will also make use of the bipedal walk engine that allows omni-directional motions. In our preliminary use of the code, we have determined that we must make adjustments in the walk parameters based on the various surfaces. The use of machine learning techniques to automatically tune walk parameters on various surfaces will be investigated.

3.4 Localization

Although the UPENNalizer's localization code makes use of a hybrid Rao-Blackwellized representation for its pose estimation algorithm we intend to make use of pose estimations based on simple approximations using locations of balls, goals, and field lines.

3.5 Team Strategies

Our team strategies will separate the roles of the robots for goalie, defender, and attacker. The defender's role will be primarily to work with the goalie to defend the goal while the attacker's role will be an aggressive, forward charging attack on the opponent's goal. It is desired that we will make use of the inter-robot communication mechanisms in the software platform but this requires further investigation.

4 Qualification Video

Since the SpelBots are still in the process of acquiring their DARwin-OP robots (the purchase requisition has been made) they used a borrowed DARwin-OP from the Georgia Tech Human-Automation Lab and re-used the code of the UPENNalizer's RoboCup Humanoid KidSized Team from 2011. The demonstration of the working code with the minimal required behaviors can be seen in the YouTube video http://www.youtube.com/watch?v=nVlzmphjU80 with its performance on different walking surfaces.

5 Summary

The SpelBots have demonstrated the minimal capabilities for qualification in a short amount of time and request qualification to the RoboCup 2012 Humanoid KidSized competition. If selected, the team will make significant modifications, extensions, and improvements of the re-used code to field a competitive team at RoboCup.

References

  1. DARwin-OP specifications, Robotis.
  2. UPENNalizer's Team Description Paper, 2011.
  3. UPENNalizer's Wiki and Code, https://github.com/UPenn-RoboCup/UPennalizers/wiki .