The Sweaty 2016 RoboCup Humanoid Adult Size Team Description
Armin Dietsche, Klaus Dorer, Michael Fehrenbach, Waldemar Frei, André Friedrich, Kristina Förtsch, Stefan Glaser, Ulrich Hochberg, Nils-Malte Jahn, Rudi Kirn, Raphael Koger, Duy Nguyen, Mathias Niederhofer, Manuel Scharenberg, Lucas Schickl, Fabian Schnekenburger, Ulrich Tankeu, Igor Tropmann, David Weiler, Michael Wülker, Aleksandre Zakaroshvili
University of Appl. Sci. Oenburg, Germany
Abstract This paper describes the new Sweaty II humanoid adult size robot trying to qualify for the RoboCup 2016 adult size humanoid competition. Based on experiences during RoboCup 2014, the Sweaty robot has been completely redesigned to a new robot Sweaty II. A major change is the use of linear actuators for the legs. Another characteristic is its indirect actuation by means of rods. This allows a variable transmission ratio depending on the angle of a joint.
1 Introduction
The major research goal with Sweaty is the improvement of bipedal walking algorithms eventually allowing the robot to run. Our rst robot Sweaty I suered from several weaknesses.
- The overall structure was too light, which lead to some shaking.
- The back lash in the joints and servo motors was higher than acceptable, as a consequence precise motion was not possible.
- The torque of the motors depended on the actual temperature of the coils of the motors, which led to movements, which were hard to predict.
- During normal operation the voltage of high performance batteries can drop by 30 % depending on the load and the state of charge. This had to be compensated by the motion algorithm.
- The USB-CDC-connection between the main computer and the servos was not always stable and some jitter was observed.
- The servo motors were not powerful enough for fast movements.
- The computational power was not sucient to be able to localize a moving ball in time.
- The cycle time of 20 ms for the servo commands and sensor information was not sucient for fast movements without jerks.
- The closed kinematic loop occurring when both feed are on the ground does not allow the use of a PI-controller in the servo controller, as a slight misalignment of the feet when touching the ground would result in strong undesired forces - the motor controllers of Sweaty I and the communication protocols did not allow the implementation of a state controller for the actuators.
Sweaty II is designed to overcome these issues.
2 Robot
2.1 Mechanical design
The basis of the mechanical design was the analysis of motion from motion capture data [Sch1] based on data compiled during the KoroiBot project [Ma1]. A rod-and-lever system was developed to enable fast and powerful movements. With this rod-and-lever system it is possible to realize a variable gear ratio, depending on the actual angle. In Figure 1 the dierent angular velocities for the knee joint and the corresponding angles can be seen.
As actuators we use spindle screw drives with highly ecient motors from Maxon for the leg and torso servos, Dynamixel servos for the arms and Volz servos for the head. The nal designs of the feet, the hip and the torso are shown in Figure 2.
2.2 Electrical layout
Hardware Architecture The architecture is illustrated in Figure 3. There are two main computers installed: a rst one for the decision and motion programs, which also provides the communication with the game controller, and a second one solely for the vision. Both computers are of up-to-date high end consumer technology, whereas the rst one has extended computational power and the second one is equipped with an additional graphic card with 1152 processors. A display with touchpad can be connected as HMI. Both computers communicate with each other via Ethernet using TCP/IP.
For the communication with the servos and sensors there is a communication controller (STM32F4) installed, which gathers the information from the periphery and distributes the commands to the servos. The communication controller also synchronizes the servos with the main computer for the decision and motion. Each package sent to and from the communication controller includes a time-stamp so that there is no jitter. The communication with the motors in the legs and torso is done via CAN. For the communication with the motors for the arms and the head RS485 and PWM are used.
The motor controllers are designed specially for Sweaty II: the voltage drop will be compensated as well as the temperature increase in the coil. The communication protocol is extended for setpoints and process values for positions, velocities, accelerations and external forces, therefore a state controller can be implemented in a later stage.
Power Supply There are two lithium batteries installed, 7S1P each. One battery is mainly for the computers and one for the actuators, therefore two main busbars are foreseen. The nal discharge voltage of the batteries is 18.9 V and the charge cut-o voltage is 28.7 V. In addition the voltage of the batteries is also depending on the load due to the internal resistance of the battery (which increases when the state of charge decreases). The robot should move independently of the battery voltage. The uctuation of the battery voltage is compensated:
- The motor controllers for the legs and torso are designed so that the torque is independent of the actual voltage.
- Step-down converters are built to supply the other actuators with a constant voltage.
- Additional converters are built for the supply of the computers and the touch screen.
The connection of the two busbars is foreseen via special step-down converters without y-back so that in case one battery has to be changed there is no need to shutdown the controllers and computers. Figure 4 shows the structure detail.
3 Vision
The visual system of Sweaty is placed in a 3D-printed aluminum support frame. This can be panned, tilted and rolled with three servo motors and two push-rods. These push-rods tilt the support frame when operated in unison and roll the frame when counteracting, with a very limited range. The support frame houses two RGB-cameras of type UI-3241LE-C operated at a resolution of 1280x1024. Each camera is equipped with a 4 mm lens. Up to now only one camera has been used for the detection of the eld and the ball. A full size eld of play according to the 2015 rules has been rigged. The articial lawn (Greenelds FT XP 32) comes in a width of 4.12 m and the rolls are laid out across the eld with alternating directions.
The vision software is based on openCV and uses criteria of homogeneity and color space to separate the eld of play from the surrounding background. Within the eld of play white areas are taken as candidates for the ball. White line segments are distinguished by a shape criterion. If this method is applied to the full eld of play a frame rate of 3 Hz results. The frame rate was increased to 15 Hz by limiting the ball search to a region around the ball's previous position. Tracking of the ball is possible for almost the whole eld of play (see Fig. 5).
For the investigation of color thresholds and shape criteria tiles can be extracted from stand-still frames. With the help of four manually chosen reference points the eld lines visible in the eld of view are "superimposed" on the image. After this representative features of the eld of play like lawn areas, straight lines, corners, T-junctions and X-junctions of lines et cetera are extracted. Similarly, tiles for dierent balls at dierent positions and also for the ball moving are stored. For the various categories of such tiles statistical analysis allows to pinpoint relevant detection criteria and cuts.
4 Software
High level software
The high level software for behavior control and soccer playing is written in Java and commonly used for the 3D soccer simulation league team magmaOenburg and our Sweaty II robot. It consists of a runtime and a set of tools the most prominent of which is the magmaDeveloper.
The magmaRuntime allows for a clear separation of robot types that has been established with the introduction of heterogeneous robot types in the soccer simulation league, in which various variations of simulated Nao robots play. About two third of the classes are robot independent, while the rest are robot specic adaptations. In the 3D league, the runtime has to run at 50 Hz, on Sweaty II it is running on 100 Hz with an average latency time of currently 0.3 ms. The time-stamp is generated by the communication controller which is the link between the main computer and the hardware. The time stamp is generated in real-time, therefore the motion control is not inuenced by jitter.
The magmaDeveloper is the main tool for debugging and running the runtime. It consists of several views to manage the connection state, robot state, the function behaviors, the world model and so on. Figure 6 shows the magmaDeveloper with two of its ten views open.
The left view allows to connect to the magmaRuntime on the robot, to stien the joints and to start behavior execution. It shows the connection state to motion, to vision (ROS over TCP/IP connection) and to the game controller. It also shows the current state of the decision maker in terms of the current behavior and the behavior it desires to switch to. The temperature controls show the average and maximum temperature of the case of the motors and of the coil of the motors.
The right view is used at design time to create function behaviors. A support point function is assigned to each of the motors that should move during a behavior. Available are piecewise linear functions, sin functions, 5th degree polynomials, piecewise sin square functions, splines and piecewise Bezier functions. The behavior shown in the Figure is Sweaty's short range kick. Function behaviors can automatically be mirrored so that only one side of, for example, a kick has to be dened. The walk behavior is not a function behavior but an inverse kinematics walk described in [GD1].
Low level software
The software for the communication controller and for the motor controller is written in C. Basic routines for the controllers are adopted from STMicroelectronics, the LwIP-stack was adopted from Adam Dunkel and the software for the motor controllers was basically developped for other projects at the University of Oenburg.
5 Formals
- Referee: According to the rules our team will make a person with sucient knowledge of the rules available as a referee.
- Previous Achievements: Sweaty I participated in RoboCup 2014 humanoid adult size league reaching 5th place. Stefan Glaser and Klaus Dorer have participated with the magmaOenburg team in 3D simulation RoboCup competitions since 2009 reaching 9th, 13th, 9th, 4th and 7th, 3rd and 6th place respectively in the world cup competitions.
- Use of Software: The software for motion control, modeling the environment and some tools are used from our own 3D soccer simulation team magmaOffenburg. The vision system uses openCV and ROS.
- Use of Hardware: We thank maxon motor GmbH for their sponsorship.
Team Photo
References
[Do1] Dorer K: Modeling Human Decision Making using Extended Behavior Networks. Baltes J et al. (Eds.): RoboCup 2009, LNAI 5949, pp. 81-91. Springer, Heidelberg, 2010
[GD1] Glaser S and Dorer K: Trunk Controlled Motion Framework. In Proceedings of the 8th Workshop on Humanoid Soccer Robots, IEEE-RAS International Conference on Humanoid Robots, Atlanta, October 2013
[HD1] Hochberg U, Dietsche A and Dorer K: Evaporative Cooling of Actuators for Humanoid Robots. In Proceedings of the 8th Workshop on Humanoid Soccer Robots, IEEE-RAS International Conference on Humanoid Robots, Atlanta, October 2013
[Ku1] Kurth M: Steuerung eines simulierten Roboters mit Hilfe von Motion Capturing Files. Bachelor thesis, Hochschule Oenburg, 2011
[Sch1] Scharenberg M, Hochberg U, Dorer K, Friedrich A, Wülker M (2015) Improving Torque and Speed of Joints by Using Rod-and-Lever Systems for Electrically Driven Humanoid Robots. In Proceedings of the 10th Workshop on Humanoid Soccer Robots, IEEE-RAS International Conference on Humanoid Robots, Seoul, November 2015. http://www.ais.uni-bonn.de/humanoidsoccer/ws15/papers/HSR_2015_Schaffenberg.pdf
[SM1] Schultz G, Mombaur K: Modeling and Optimal Control of Human-Like Running. IEEE/ASME Transactions on Mechatronics, Vol. 15, No. 5 (2010) pp. 782-792.
[Ma1] Mandery C, Terlemez O, Vahrenkamp, N, Asfour T: The KIT whole-body human motion database. International Conference on Advanced Robotics (ICAR) (2015) pp329-336.
[ma1] www.maxonmotor.ch
[ro1] www.robotis.com
[op1] www.opencv.org
[vo1] www.volz-servos.com
[te1] www.tekscan.com
[st1] www.st.com