Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

NEU-Islanders 2011 Team Description

Rahib Abiyev1, Ersin Aytac2, Nurullah Akkaya1, Mustafa Arici1


1
Department of Computer Engineering
2
Department of Mechanical Engineering
1
Department of Computer Engineering
1
Department of Computer Engineering
rahib@neu.edu.tr, ersinaytac@gmail.com, nurullah@nakkaya.com,me@mustafaarici.info

Abstract. This paper presents the description and the implementation of NEU-
Islanders robotic soccer team for RoboCup Small Size League. The main
components of hardware and software design that includes mechanical,
electrical and intelligent software architecture consisting of computer vision,
robot navigation and multi-robot play selection will be explained.

1 Introduction

Robotics is one of the interesting research fields for many researchers. Neu-
Islanders is a new robot soccer team that are going to join RoboCup competition in
2011. The challenge we are facing is building robots from scratch and controlling
them in a highly dynamic environment with a multilevel behavior based control
system. Development of the robot soccer team includes three main steps; mechanical
design, electrical-electronic design, and software design. Mechanical system design
consists of the design of the driving system, design of the dribbling system and the
design of the kicking system. Our electronic system consists of four electronic speed
controllers and brushless motors for motion, a servo motor for kicking, and a DC
brushed motor with a electronic speed controller for dribbling. Our software system
made up of three modules, vision, decision, and robot control.

2 Hardware Design
Fig. 1 describes the robot that has been constructed by the team. Most of our
mechanical parts are handmade. Electronic systems including new designs,
components and their improvement have also been done. Robot does not have a local
vision system, it uses two vision systems SSL vision and a vision system that is
designed by the team due to logistical and technical problems faced while acquiring
an AVT Stringray camera.
Fig. 1 Overview of Robot

2.1 Mechanical Design

Before selecting robot motors, motor drivers, kickers and such electronic parts we
determined its diameter as 178 mm and a height of 145 mm. The dribbler covers up to
18% of the golf balls diameter. Then we made the robot chassis out of balsa. Balsa is
easy to craft and can be found in different thickness. We were happy with the rigidity,
but it would not show resistance in the small and larger crashes both with the ball and
other robots. Our chassis is made of 1 mm aluminium in the top and bottom and 2 mm
polyethylene in middle which is rigid enough to construct the robot on and light
enough to use it. The total weight of the chassis is around 100 g. We had the raw
material in our workshop that is why we used these material. We are planning to use
cnc cut carbon-fibre chassis in the competition.

2.1.1 Wheels and Driving System

Before doing anything we read all other TDPs written in recent years, to figure out
what they have done with their wheel orientation Fig shows our findings.
Fig. 2 Charts of other teams wheel orientations

Robot uses four omni-wheels. Fig. 2. shows the wheels. Wheel orientation is
dramatically effecting the robot speed and acceleration. After calculations we figure
out that 45 degrees at the rear and 33 degrees at the front wheels with respect to the
horizontal axis is the best orientation that fits our robots. Designing the omni-
directional wheels and determining the diameters of both the wheels and the o-ring
diameters. For different target speeds we made calculations for every possible
diameters. At first we thought buying some off the shelf wheels will solve our omni-
directional wheel problem, but the diameters on the wheels were higher than
expected, and the plastic body on the wheels looked not though enough for the job.
That's why we build our own wheels.

Fig. 3 Our robots wheel orientation

Also, we did some calculations what if we place the wheels without an angle, in
linear formation and did some motor rpm calculations for every different type of
wheel orientation. The wheels that we built have a inner diameter of 58 mm, and the
o-rings have 11 mm outer diameter. There are 15 o-rings in our omni-wheel design.
To keep the weight down in the wheels the body of the wheels are made from
aluminium. We used 36 teeth pinion gears and made specific shafts for the wheels.
For different target speeds and different wheel diameters calculations are shown
below for both front and rear wheels.
Wheels through gear mechanism are connected to motors rotor. Motor mounts are
the parts where we mount the motors and wheels shafts come together. The strength
of the material of the motor mount should be high and light in weight. Also the design
of the motor mount is one of the early problems that we faced. Fixing the motor
mount from under the
chassis with two screws and a bearing in the middle for the wheel shaft. Even before
making the system move we saw that we needed a stiffer material for motor mount.
3 mm thick U-shaped aluminium profile is what we used in our robots. Motors
are placed in the inner side, the motor shaft goes through and the gear is placed on the
shaft with a help of a set screw in the outer portion of the motor mount. We think
ahead while drilling the holes on the motor mount and drilled it like small canals
which made the motors to move 3 mm to both of the sides. If we ever want to change
the gear ratio or change the gear ratio we can move the motors side ways which will
save us from making new motor mounts.

Fig.4. Our new design omni-wheels

For the wheel shaft we wanted to use two bearings to prevent it from cracking.
The thinnest bearing that we can find in the market is 2 mm. We cannot fit two
bearings in the motor mount because of the thickness. We have very limited space in
the inner side of the motor mount. We made total of 6 mm long a small disk and a
rod, which is unibody in lathe engine to fit two bearings. The disk shaped part was
interfering with the motor mount holes so shaved those parts to make a perfect fit. The
wheels through gear mechanisms are derived by brushless motors.

2.1.2 Dribbling and Kicking Systems

Dribbling system is used for catching and handling ball. Dribbler is designed from
aluminum rod and coated by rubber. It is mounted on poles by two ball bearings on
left and right end. Dribbling bar is mounted on an hinged damper for improved pass
reception. The dribbling bar is driven by a brushed motor.

For the kicking system, unlike other teams which utilizes systems based on solenoids
we have been experimenting kicking mechanism using high speed and torque digital
servos, this allows us to have grater control and accuracy while kicking the ball also
saves us weight and since we don't need to charge capacitors for solenoids we can
kick more frequently and consistently while saving power.

2.2 Electrical-electronic Design

Fig. 2 depicts basic electrical and electronic parts of our robot. In our robots we are
using Arduino micro-controller boards that controls all electronic parts, such as
motor control circuits that are responsible for controlling the speeds of all four omni-
wheels of the robot, motor control circuit which is responsible for controlling the
dribbler motor, and and the digital servo for kicking mechanism.

Fig. 5 Electronic Components

Motor speeds are controlled by Electronic Speed Controllers (ESC). ESC is


connected to Arduino micro-controller. Robot computer communication is handled
via TCP/IP using a Arduino wireless shield.
3 Software Architecture
Our software is a mixture of Clojure and C programming languages. Clojure is a lisp
dialect that runs on the JVM (Java Virtual Machine) due to our small team size Java
with its large ecosystem speed up our development times considerably, C is used
where we needed speed.

Fig. 6 depicts the overall software architecture of the robot control system, which
consists of three main modules; vision, decision, and steering.

Fig. 6 Software Architecture

3.1 Vision Module

Due to logistical and technical difficulties we had at the beginning of the project we
developed our own vision system, which used multiple SONY PS3-Eye cameras
which has very high frame rate for image recognition and obtaining the necessary
information (coordinates) about the real world. Recognition process includes number
of techniques such as edge detection, half circle methods, etc. to get exact
coordinates of robots and the ball. Vision module allows us to switch vision systems
from custom to SSL Vision or vice versa without any modification to our software.

3.2 Decision Module

Our decision module utilizes behavior trees, a behavior tree is a technique for
organizing collections of states and the decision processes for when to move between
them. Behavior trees have many similarities to FSMs but unlike FSMs it is very easy
to see logic, they are fast to execute and easy to maintain, which makes them suitable
for representing complex and potentially parallel behaviors.

3.2.1 Behavior Definitions

Behavioral control attempts to solve the problem of self-automated control systems


needing to know everything about the environment they work in. The whole idea
behind this philosophy is that humans react in their environment by sensing (often
unpredictable) information and yet we respond quickly with reactions to survive and
operate in a changing and potentially unknown world. It is method of operation that has
shown that real time control can be based on sensing the environment and following a
simple set of rules to exact an action or a set of actions.

The behaviors used for the control of the robot are defined. Each primitive behavior is
self-contained and reacts to data coming from vision system. Basically there set of
behaviors addicted to robots. These are Forward Move, Backward Move, Stay in
Defense, Attack behaviors. For instance, If robots have a ball then it uses Forward
Move and Attack behaviors. If the ball in other team then it uses Backward Move and
Stay in Defense behaviors. The architecture of the behavior-based logic of the mobile
robot is shown in Fig. 3.2 Using the information received from the vision system
program make decision on the moving of robot. All behaviors are implemented using
Rule Bases. The Close behavior is an “internal behavior” used to invalidate commands
that could lead to collisions in situations when the robot is very close to other robot. In
order to reach its goal program will continuously switch to the behaviors that are
currently activated. Kicking behavior take place when robot has the ball and detect goal
post.
Behaviours

Forward Move

Attack
Information Strategic
from vision planning
Backward Move
system

Stay in Defense

Close

Fig. 7 Behavior Definitions

3.3 Steering Module

Our steering module is responsible for both controlling the robots in real life and our
simulation environment. In real life commands are sent via TCP/IP to the robots
using a binary protocol, for simulation it uses a shared library to communicate with
our simulation environment. Control of movement is implemented using [2],[3].

3.4 Simulation

Simulator includes set of programs in order to be able to perform the tasks more
independently. These are strategic planning, control and navigation of robots. Results
of algorithms are displayed in graphical form. The simulator is shown in Fig. 11. The
algorithms after testing are used in on-line mode for control of the robots. The
simulator is used to improve the development efficiency and decrease the operating
time of the robots. Simulator is able to run the strategies simultaneously allowing us
to play test games. Especially, it is very effective for development of the strategies in
short amount of time.
Fig. 8 Overview of simulator.

4 Conclusion

In the results of intensive research we could develop robot team that we have faced
various kinds of problems and could find some solutions for those. The omni-
directional robot design consist of three steps: design of mechanical parts, electrical-
electronic parts and software development. The implementation of vision, strategic
planing, navigation and control subsystems are implemented for the NEU-Islanders
team.

Acknowledgments: We thank Prof.Dr.Senol Bektas for his support on this project.

References

1. Bruce, J., Veloso, M.: Fast and accurate vision-based pattern detection and
identifcation. In: Proceedings of the IEEE International Conference on Robotics
and Automation, Taiwan (May 2003)
2. F. Ribeiro, I. Moutinho, P. Silva, C. Fraga, N. Pereira. Three omni-directional
wheels control on a mobile robot. Control 2004, University of Bath, UK,
September 2004
3. Raul Rojas, Omnidirectional Control, 2005
4. Takato Horii1, etc., KIKS 2010 Extended Team Description, In:
Proceedings of RoboCup 2010

You might also like