NimbRo TeenSize 2012 Team Description

Sven Behnke, Marcell Missura, Hannes Schulz

Rheinische Friedrich-Wilhelms-Universität Bonn Computer Science Institute VI: Autonomous Intelligent Systems Friedrich-Ebert-Allee 144, 53113 Bonn, Germany

http://www.NimbRo.net


Abstract This document describes the RoboCup Humanoid League team NimbRo TeenSize of Rheinische Friedrich-Wilhelms-Universität Bonn, Germany, as required by the qualification procedure for the competition to be held in Mexico City in June 2012.

Our team uses self-constructed robots for playing soccer. The paper describes the mechanical and electrical design of the robots. It also covers the software used for perception and behavior control.

Introduction

Our TeenSize team participated with great success at last year's RoboCup Humanoid League competition in Istanbul. The robots won the 2 vs. 2 soccer tournament—the third TeenSize success in row.

In 2011, the main rule change in the TeenSize class was an increase in size of the field to 9×6 m. We successfully adapted our system to the larger field size and repeated the reliable performance from 2010 in the 2011 finals without a single fall and without need for human intervention.

Figure 1 shows an image of the final soccer game, where our robots met team KMUTT from Thailand. The field players of both teams were able to find and approach the ball. Both teams had goalies able to jump quickly to the ground. Because our robot Dynaped was usually the first at the ball, which it kicked very reliably, the game ended 10:0 for NimbRo.

Our robots also won the 2011 technical challenges with a good performance in the Double Pass and the Obstacle Dribbling challenges.

In 2012, we will continue to use the NimbRo TeenSize robots Dynaped and Bodo, but we will also use our new robot Copedo. It is constructed to not only survive a fall but to also get up afterwards. We continuously improve the computer vision and behavior control software.

This document describes the current state of the project as well as the intended development for the RoboCup 2012 competitions. It is organized as follows. In the next section, we describe the mechanical and electrical design of the robots. The perception of the internal robot state and the situation on the field is covered in Sec. 3. The generation of soccer behaviors in a hierarchy of agents and time-scales is explained in Sec. 4.

RoboCup 2011 TeenSize finale: NimbRo vs. KMUTT. Our team played with the robots Dynaped (field player) and Bodo (goalie).
RoboCup 2011 TeenSize finale: NimbRo vs. KMUTT. Our team played with the robots Dynaped (field player) and Bodo (goalie).

Mechanical and Electrical Design

Fig. 2 shows our three TeenSize robots: Copedo, Dynaped, and Bodo. As can be seen, the robots have human-like proportions. Their mechanical design is focused on simplicity, robustness, and weight reduction.

Copedo is 114 cm tall, and weighs 8 kg. The robot has 17 DOF: 5 DOF per leg, 3 DOF per arm, and one joint in the neck that pans the head. Its legs use parallel kinematics, which keeps the hip parallel to the ground in sagittal direction. The joints are driven by master-slave pairs of Robotis Dynamixel EX-106+ actuators. As shown in Fig. 3, the knee actuators are supported by parallel springs in straightening the leg. The springs compensate gravity when standing and increase the kicking speed of the robot.

Size and weight of Dynaped are 105 cm and 7 kg, respectively. The robot has 13 DOF: 5 DOF per leg, 1 DOF per arm, and 1 DOF in the neck. Its also uses parallel kinematics with pairs of EX-106 actuators.

Bodo is 103 cm tall and has a weight of about 5 kg. The robot is driven by 14 Dynamixel actuators: 6 per leg and 1 in each arm.

The skeleton of the robots is constructed from carbon composite material and aluminum extrusions with rectangular tube cross section. We removed all material not necessary for stability. For protection, we included a layer of foam between the outer shell of the robots and their skeleton. As shown in Fig. 3, our robots are equipped with a mechanical fuse between hip and spine, which allows the robots to jump quickly to the ground as a goalie. Copedo has this protection also in the neck.

The robots are controlled by a tiny PC, which features an Intel 1.33 GHz processor and a touch screen, and a HCS12X microcontroller board, which manages the detailed communication with all joints via a 1 Mbaud RS-485 bus. The microcontroller also reads in a dual-axis accelerometer and two gyroscopes. The robots are powered by Lithium-polymer rechargeable batteries which last for about 20 minutes of operation.

NimbRo TeenSize robots Copedo, Dynaped, and Bodo.
NimbRo TeenSize robots Copedo, Dynaped, and Bodo.
NimbRo TeenSize robots Copedo, Dynaped, and Bodo.
NimbRo TeenSize robots Copedo, Dynaped, and Bodo.
NimbRo TeenSize robots Copedo, Dynaped, and Bodo.
NimbRo TeenSize robots Copedo, Dynaped, and Bodo.
Mechanical details of Copedo: overload protection in the hip with preloaded spring (left); parallel leg kinematics with knee spring (right).
Mechanical details of Copedo: overload protection in the hip with preloaded spring (left); parallel leg kinematics with knee spring (right).
Mechanical details of Copedo: overload protection in the hip with preloaded spring (left); parallel leg kinematics with knee spring (right).
Mechanical details of Copedo: overload protection in the hip with preloaded spring (left); parallel leg kinematics with knee spring (right).

Perception

Our robots need information about their internal state and the situation on the soccer field to act successfully.

Proprioception

For proprioception, we use the joint angle feedback of the servos and apply it to the kinematic robot model using forward kinematics. Additionally, we fuse accelerometer and gyroscope measurements to estimate the tilt of the trunk in roll and pitch direction. Knowing the attitude of the trunk and the configuration of the kinematic chain, we rotate the entire model around the current support foot such that the attitude of the trunk matches the angle we measured with the IMU. This way, we obtain a robot pose approximation that can be used to extract the location and the velocity of the center of mass. Temperatures and voltages are also monitored for notification of overheating or low batteries, respectively.

Computer Vision

For visual perception of the game situation, we capture and process 752×480 YUV images from a IDS uEye camera with a fish eye lens (Fig. 4 left). Pixels are color-classified using a look-up table. In down-sampled images of the individual colors, we detect the ball, goal-posts, poles, penalty markers, field lines, corners, T-junctions, X-crossings, obstacles, team mates, and opponents using size and shape information.

For the avoidance of own and opponent robots, we investigated the learning of robot detection based on color histograms [4]. This is increasingly relevant for the Humanoid League, as the color restrictions on the robot appearance are relaxed.

We estimate distance and angle to each detected object by removing radial lens distortion and by inverting the projective mapping from field to image plane (Fig. 4 center). To account for camera pose changes during walking, we learned a direct mapping from the IMU readings to offsets in the image. We also determine the orientation of lines, corners and T-junctions relative to the robot.

We have been investigating the self-localization of humanoid robots using cameras for some years [3]. To localize a robot on the field, we track its three-dimensional pose (x, y, θ) using a particle filter [11] (Fig. 4 right). The particles are updated using a motion model which is a simple linear function of the gait velocity commanded to the robot. Its parameters are learned from motion capture data [8]. The weights of the particles are updated according to a probabilistic model of landmark observations (distance and angle) that accounts for measurement noise. To handle unknown data association of ambiguous landmarks, we sample the data association on a per-particle basis. The association of field line corner and T-junction observations is simplified using the orientation of these landmarks. Further details can be found in [10].

In an experiment, we set up four target areas on the playing field. Our robot autonomously walked from target area to target area, while we record observed camera frames, IMU data and motion commands. We then process the video in three configurations: Using all available observations, using no line and corner observations, and using only line and corner observations. Since without colored markers global localization is ambiguous, we initialize the pose for all runs manually and then track the pose without global localization. Figure 5 shows the resulting tracks. All conditions yield qualitatively similar results. Unsurprisingly, the trajectory using all features is in between the other two trajectories, which is supported by the quantitative measures presented in the table. Most notably, however, is the result that we can reliably track the robot pose without the use of colored landmarks.

NimbRo perception and localization. Left: TeenSize field with detected goal, ball, obstacle, X-crossing and center line. Center: Egocentric world view of the robot. Right: Localization given the perceived landmarks.
NimbRo perception and localization. Left: TeenSize field with detected goal, ball, obstacle, X-crossing and center line. Center: Egocentric world view of the robot. Right: Localization given the perceived landmarks.
Pose tracking without line observations, with line observations and using all available features based on data recorded online while walking from target area to target area autonomously. The lines-only approach only deviates slightly from the other two, greatly reducing our dependence on a color-coded soccer environment.
Pose tracking without line observations, with line observations and using all available features based on data recorded online while walking from target area to target area autonomously. The lines-only approach only deviates slightly from the other two, greatly reducing our dependence on a color-coded soccer environment.

Behavior Control

We control our robots using a framework that supports a hierarchy of reactive behaviors [2]. This framework allows for structured behavior engineering. Multiple layers that run on different time scales contain behaviors at different abstraction levels. When moving up the hierarchy, the update frequency of sensors, behaviors, and actuators decreases. At the same time, they become more abstract. Raw sensor input from the lower layers is aggregated to slower, abstract sensors in the higher layers. Abstract actuators enable higher-level behaviors to configure lower layers in order to eventually influence the state of the world.

Currently, our implementation consists of three layers. The lowest, fastest layer is responsible for generating motions, such as walking, kicking and the goalie dive. Our omnidirectional gait [1] is based on rhythmic lateral weight shifting and coordinated swinging of the non-supporting leg in walking direction. This open-loop gait is self-stable when undisturbed. In order to reject larger disturbances, we recently extended our gait engine with a lateral capture step controller [5] that modifies the timing and the lateral location of the footsteps to maintain balance. This controller uses a linear inverted pendulum model to predict the motion of the robot's center of mass. This is illustrated in Fig. 6. In an experiment with approx. 100 lateral pushes, all returning CoM trajectories could be stabilized with only a few capture steps.

For the goalie, we designed a motion sequence that accelerates the diving motion compared to passive sideways falling from an upright standing posture [6]. The goalie jump decision is based on a support vector machine that was trained with real ball observations.

At the next higher layer, we abstract from the complex kinematic chain and model the robot as a simple holonomic point mass that is controlled with a desired velocity in sagittal, lateral and rotational directions. We are using a cascade of simple reactive behaviors based on the force field method to generate ball approach trajectories, ball dribbling sequences, and to implement obstacle avoidance.

Based on the learned motion model of our robots [8], we developed a new method to generate ball approach trajectories by planning footstep sequences offline and training an online policy to meet real-time requirements [9]. Fig. 7 shows the resulting trajectories, compared to the reactive behavior.

We also investigated the local multi resolution methods for path planning among moving obstacles, which take into account the assumed intentions of opponent robots [7].

The topmost layer of our framework takes care of team behavior, game tactics and the implementation of the game states as commanded by the referee box.

Lateral capture steps: Nominal CoM trajectories are characterized by three parameters α, δ, and ω. These can be obtained from the real robot. The time of the step is determined by the time the CoM reaches the desired support exchange location between δ and ω. The lateral footstep location is chosen such that the next step apex will occur at distance α [5].
Lateral capture steps: Nominal CoM trajectories are characterized by three parameters α, δ, and ω. These can be obtained from the real robot. The time of the step is determined by the time the CoM reaches the desired support exchange location between δ and ω. The lateral footstep location is chosen such that the next step apex will occur at distance α [5].
Footstep planning: The ball approach is planned offline for many situations (left); right: paths generated by the learned policy (blue) compared to reactive behavior (green) [9].
Footstep planning: The ball approach is planned offline for many situations (left); right: paths generated by the learned policy (blue) compared to reactive behavior (green) [9].

Conclusion

At the time of writing, January 29th, 2012, we made good progress in preparation for the competition in Mexico. We will continue to improve the system for RoboCup 2012. The most recent information about our team (including videos) can be found on our web pages www.NimbRo.net.

Commitment

Team NimbRo commits to participate in RoboCup 2012 in Mexico City and to provide a referee knowledgeable of the rules of the Humanoid League.

Acknowledgements

This research is supported by Deutsche Forschungsgemeinschaft (German Research Foundation, DFG) under grant BE 2556/6.

Team Members

Currently, the NimbRo soccer team has the following members:

  • Team leader: Sven Behnke
  • Members: Marcell Missura, Michael Schreiber, and Max Schwarz

References

  1. Sven Behnke. Online trajectory generation for omnidirectional biped walking. In Proceedings of IEEE International Conference on Robotics and Automation (ICRA), Orlando, Florida, pages 1597–1603, 2006.
  2. Sven Behnke and Jörg Stückler. Hierarchical reactive control for humanoid soccer robots. International Journal of Humanoid Robots (IJHR), 5(3):375–396, 2008.
  3. Maren Bennewitz, Cyrill Stachniss, Wolfram Burgard, and Sven Behnke. Metric localization with scale-invariant visual features using a single perspective camera. In Proceedings of First European Robotics Symposium (EUROS), Palermo, Italy, volume 22 of Springer Tracts in Advanced Robotics, pages 195–209. Springer, 2006.
  4. Saskia Metzler, Matthias Nieuwenhuisen, and Sven Behnke. Learning visual obstacle detection using color histogram features. In Proceedings of 15th RoboCup International Symposium, Istanbul, 2011.
  5. Marcell Missura and Sven Behnke. Lateral capture steps for bipedal walking. In Proceedings of 11th IEEE-RAS International Conference on Humanoid Robots (Humanoids), Bled, Slovenia, pages 401–408, 2011.
  6. Marcell Missura, Tobias Wilken, and Sven Behnke. Designing effective humanoid soccer goalies. In RoboCup 2010: Robot Soccer World Cup XIV, volume 6556 of LNCS, pages 374–385. Springer, 2011.
  7. Matthias Nieuwenhuisen, Ricarda Steffens, and Sven Behnke. Local multiresolution path planning in soccer games based on projected intentions. In Proceedings of 15th RoboCup International Symposium, Istanbul, 2011.
  8. Andreas Schmitz, Marcell Missura, and Sven Behnke. Learning footstep prediction from motion capture. In RoboCup 2010: Robot Soccer World Cup XIV, volume 6556 of LNCS, pages 97–108. Springer, 2011.
  9. Andreas Schmitz, Marcell Missura, and Sven Behnke. Real-time trajectory generation by offline footstep planning for a humanoid soccer robot. In Proceedings of 15th RoboCup International Symposium, Istanbul, 2011.
  10. Hannes Schulz, Weichao Liu, Jörg Stückler, and Sven Behnke. Utilizing the structure of field lines for efficient soccer robot localization. In RoboCup 2010: Robot Soccer World Cup XIV, volume 6556 of LNCS, pages 397–408. Springer, 2011.
  11. S. Thrun, W. Burgard, and D. Fox. Probabilistic Robotics. MIT Press, 2005.