RoboTurk Team Description
RoboTurk Team Description
Kadir Firat Uyanik1 , Mumin Yildirim1 , Salih Can Camdere2 , Meric Sariisik1 ,
Sertac Olgunsoylu3
1
Department of Electrical and Electronics Engineering
2
Department of Mechanical Engineering
3
Department of Computer Engineering
Middle East Technical University (METU)
06531 Ankara, Turkey
[email protected]
{kadir,mumin,salih,meric,sertac}@teamroboturk.com
1 Introduction
RoboTurk RoboCup SSL robot soccer system is a project that’s been studied
by the members of IEEE METU Student Branch Robotics and Automation So-
ciety since 2008. However, being undergraduate students as well as dynamically
changing society members slowed down the course of development considerably.
After more than one year of development gap, this year we gathered a new team
for the sake of hosting the RoboCup competition in our home country, and re-
designed most of the modules less than a few months.
We can divide the current system into two main parts, one is the sensori-
motor unit of the system namely ssl robots and the other is central decision
making unit, called ssl game planner assuming that the 2-D pose of the propo-
nent and opponent robots and the position of the ball are provided with respect
to the field reference frame (viz. global information) as well as the game state is
already available specifying the allowed formations of the robots under the rules
of robocup ssl (i.e. referee signals).
The major improvements we have done so far can shortly be listed as follows:
– Mechanical design; we have decreased the weight of the chassis from 1.9kg to
1.4kg by the factor of almost 25% with the new design based on the Skuba[5],
and BSmart[6] teams’ designs. Many improvements have been done on the
wheels themselves and the wheel assemblies.
– Motor control board design; we have replaced the earlier control circuit
which happened to be unreliable from time to time, especially during sudden
changes in the acceleration.
– Main control board design; we have replaced the previous master-slave PIC-
microcontroller based mainboard with the Gumstix computer-on-module
centered mainboard.
– Software design; we have started developing a robocup-ssl stack on ROS. In
this design, we also started adding ROS support to the ssl vision [3].
– Simulation environment design; we designed close to real ssl simulation en-
vironment on Webots, which enables us to simulate dynamics, frictions, col-
lisions, and many other physical properties/events.
In the following section we state the details about the current development
stage of the two main units, ssl robots, and ssl game planner. We complete with
the planned extensions until the RoboCup’11 competition.
2 SSL Robots
In RoboCup SSL, there are five robots per team in a normal game. Each SSL
robot can be investigated by considering its mechanical hardware, electronics
hardware, and on-board software components.
RoboTurk 2011 Team Description 3
Fig. 1. Left is the latest design that is being manufactured, right is the first prototype
developed this year.
Chassis is limited to the size of 18cm in diameter and 15cm in height. Previous
design was more than 1900 grams; however, as a result of our latest improve-
ments, we reduced it to 1419 grams excluding circuit boards, as it is shown in
figure 2.
Omni-wheels are the the common choice for holonomic drive systems which
enables the robot to move in all directions. In the earlier design, we used Korny-
lak Omni-wheels which didn’t provide sufficiently smooth motion. Hence, this
4 RoboTurk 2011 Team Description
year we designed our custom omni-wheels. New design have a diameter of 1.968
inches and 15 rollers with rubber gaskets in order to increase grip 3. Omni-wheels
are placed symmetrically 120 degrees apart in the front and 90 degrees at the
back.
Motors Each omni-wheel is driven by a 30 Watt Maxon EC45 Flat back shaft
extended brushless DC (bldc) motor with E4P encoders.
Main Controller Board houses the Gumstix COM as well as the slave con-
troller PIC 18F4550.
Gumstix Overo Fire COM is a computer-on-module with TI OMAP3530
running at 720 MHz. It comes with many features namely, Wi-Fi, Bluetooth,
DSP, PWM generator, I2C- SPI-RS232-USB interface, 256 MB flash memory
with microSD slot for extra memory.
Overo Fire is responsible for every action running within the robot. Gumstix
runs the following tasks:
All input and output signals of Gumstix are distributed on this board. There
are 1.8V-5V logic level converters for PWM output of Gumstix. Following inputs
gather on this board:
– 5x direction output
– 5x brake output
– 6x PWM output
– 1x Sensor Board output
RoboTurk 2011 Team Description 5
Kernel Level Software includes kernel modules and low level I/O devices
that run as part of the Linux kernel. As GNU/Linux distribution Ubuntu 10.10
is chosen since it is compatible with ROS, which application level software is
based upon. Ubuntu runs on the Gumstix Overo Fire with Summit expansion
board.
Kernel level software fills the gap between the application level software and
the hardware such as DC motors, microcontrollers, etc. As depicted in the figure
5, four lines of PWM output are generated on Gumstix by using PWM gen-
eration module to drive bldc motors connected the four wheels. The generated
PWM output is controlled by Application Level Software with using ROS con-
trol toolbox 1 to apply closed-loop control. Besides, it acquires the four 2-channel
signals which are generated by the encoders to indicate speed and direction val-
ues of the motor.
In addition to the information related to dribbler and kicker, ball sensor data
is also transmitted and received via UART with RS-232 protocol.
On the other end, SSL Game Planner is subscribed to the local state messages
which are published by SSL Robots in order to acquire local state information
of the robots. Local state message contains following data fields within:
– Ball possession
– Battery level
– Temperature level
SSL Robots updates its local state information regularly acquiring related
data from its hardware. If the ball possession condition is changed, then the
message indicating this will be published in order to notify SSL Game Planner.
Besides, if the robot command message includes a local state request then it will
also published to indicate current state of the robot.
SSL game planner unit can be investigated from two perspectives, software ar-
chitecture. and planning methods.
This year, we designed our system by heavily using ROS graph concepts to estab-
lish communication between the processes which are the nodes in ROS network.
Thanks to the message-based communication architecture, we can easily replace
8 RoboTurk 2011 Team Description
the real robots with the simulated robots and ssl-vision with the sim-vision
(simulated vision) or the ssl-referee-box with the sim-refree (simulated refree)
by making no change in the source code whatsoever.
Current architecture is shown in the figure 8. Most of the nodes are currently
under development and some of them are stub at the moment (viz. ssl refree,
ssl sim refree and most importantly ssl game planner).
Fig. 6. This figure obtained via the ROS rxgraph command which shows currently
running nodes in elliptical shapes and the topic messages in squared shapes. If an
arrow is going out from a node, it means that particular node publishes data to the
corresponding topic, and it is otherwise -subscribed to a topic- if an arrow in pointing
to the node.
We are also working on adding ROS support for the ssl-vision mostly devel-
oped by Zickler et.al[3] and became the standard vision system for the RoboCUP
SSL.
We are using Webots simulation environment for developing path planning
algorithms and state estimation filters as they are explained in the next section.
Since Webots is a commercial simulator and we are using trial version -soon
going to be expired-, we are considering to move our simulated robot design to
the Gazebo by using URDF and Xacro language, depending on our financial
RoboTurk 2011 Team Description 9
Fig. 7. ROS graph of the current system obtained by the ROS rxgraph command.
Most of the nodes are currently stub-like. The nodes corresponding to the simulation
environment are -most of the time- expected to be mutually excusive with the non-sim
nodes (the nodes corresponding to the real environment). This figure best viewed in
the soft-copy of the document which enables reader to zoom in the figure and clearly
see the names of the nodes.
status. This alternative seems to be reasonable since ROS fully supports Gazebo
simulator, and it is already included in several ROS distributions.
We reached to the stage where ssl-robots can realize the commands given by
ssl-game-planner without colliding to the statical obstacles, following the path
close to the optimal/shortest path. In order to accomplish this ability, ssl-robots
should be able to project the velocity commands to each of the wheels that is
where Motion Control module plays the role.
Obstacle avoidance is satisfied with the well-known artificial potential fields
method. We have improved the method based on the object-grouping method
proposed in [4], which is explained in detail in the following sections.
Fig. 8. Simulated ssl environment in Webots. Robots have exactly the same number of
rollers in the omniwheels, and they can kick the ball as well as dribble although these
behaviors haven’t been developed yet.
Game Planning: Our system is not able to perform higher level behaviors for
the time being. We have successfully implemented ball tracking behavior for the
real robots, but without encoders mounted on the wheels, robots are not able
to respond to the precise rotational actions. Due to this situation, ball-related
behaviors are not developed yet.
However, we are planning to stick to the commonly used hybrid delibera-
tive/reactive control architecture and divide the planning problem into different
stages such as strategy, roles and skills, as it is explained in [7].
In this document, we have shown the current development stage of the Robo-
Turk SSL robot soccer system. We have emphasized the major changes in the
12 RoboTurk 2011 Team Description
mechanical design, motor control board, and software architecture. New robot
design will enable the system to react quickly to the changes in the game state,
as well as perform more efficient than the robot design we have developed in
2009.
With the very young and motivated team members (Mumin, Salih and Meric
second and first year, Sertac fourth year undergraduate students, and Kadir
being first year MS student) we are planning to attend RoboCup’11 Turkey for
the first time.
References
1. Quigley M., Conley K., Gerkey B., Faust J., Foote T. B., Leibs J., Wheeler R.,
and Ng A. Y. (2009). Ros: an open-source robot operating system. n International
Conference on Robotics and Automation, ser. Open-Source Software workshop.
2. Michel, O. Webots: Professional Mobile Robot Simulation, International Journal of
Advanced Robotic Systems, Vol. 1, Num. 1, pages 39-42, 2004
3. S. Zickler, T. Laue, O. Birbach, M. Wongphati, and M. Veloso: SSL-Vision: The
Shared Vision System for the RoboCup Small Size League. RoboCup 2009: Robot
Soccer World Cup XIII. Pg:425–436
4. B. Zhang,W.Chen, M. Fei, An optimized method for path planning based on arti-
ficial potential field, Sixth International Conference on Intelligent Systems Design
and Applications (ISDA’06) Volume 3 (2006)
5. Wasuntapichaikul P, Srisabye J, Sukvichai K. Skuba 2010 Team Description. 2010.
6. Laue T, Fritsch S, Huhn K, et al. B-Smart Team Description for RoboCup 2010.
7. Gurzoni, J. A., Martins, M. F., Tonidandel, F., & Bianchi, R. a C. (2011). On
the construction of a RoboCup small size league team. Journal of the Brazilian
Computer Society, 17(1), 69-82.