MINHO ROBOTIC FOOTBALL TEAM. Carlos Machado, Sérgio Sampaio, Fernando Ribeiro

Similar documents
Minho MSL - A New Generation of soccer robots

Robocup Electrical Team 2006 Description Paper

Fernando Ribeiro, Gil Lopes, Davide Oliveira, Fátima Gonçalves, Júlio

Summer on Campus - Learning Robotics with fun

FU-Fighters. The Soccer Robots of Freie Universität Berlin. Why RoboCup? What is RoboCup?

Motion Control of Mobile Autonomous Robots Using Non-linear Dynamical Systems Approach

RoboCup. Presented by Shane Murphy April 24, 2003

Multi-Agent Control Structure for a Vision Based Robot Soccer System

Paulo Costa, Antonio Moreira, Armando Sousa, Paulo Marques, Pedro Costa, Anibal Matos

EDUCATIONAL ROBOTICS' INTRODUCTORY COURSE

Team KMUTT: Team Description Paper

NUST FALCONS. Team Description for RoboCup Small Size League, 2011

Learning and Using Models of Kicking Motions for Legged Robots

Keywords: Multi-robot adversarial environments, real-time autonomous robots

Cooperative Behavior Acquisition in A Multiple Mobile Robot Environment by Co-evolution

S.P.Q.R. Legged Team Report from RoboCup 2003

Nao Devils Dortmund. Team Description for RoboCup Matthias Hofmann, Ingmar Schwarz, and Oliver Urbann

Growing up with Robots Costa MFM and Fernandes JF

Learning and Using Models of Kicking Motions for Legged Robots

Hierarchical Controller for Robotic Soccer

Robo-Erectus Jr-2013 KidSize Team Description Paper.

NuBot Team Description Paper 2008

RoboTurk 2014 Team Description

Task Allocation: Role Assignment. Dr. Daisy Tang

Towards Integrated Soccer Robots

Prof. Emil M. Petriu 17 January 2005 CEG 4392 Computer Systems Design Project (Winter 2005)

Improving the Kicking Accuracy in a Soccer Robot

CORC 3303 Exploring Robotics. Why Teams?

An Autonomous Vehicle Navigation System using Panoramic Machine Vision Techniques

The Attempto Tübingen Robot Soccer Team 2006

Attention! Choking hazard! Small pieces, not for children under three years old. Figure 01 - Set Up for Kick Off. corner arc. corner square.

Building Integrated Mobile Robots for Soccer Competition

1 of 5 01/04/

CS295-1 Final Project : AIBO

Baset Adult-Size 2016 Team Description Paper

Saphira Robot Control Architecture

Fuzzy Logic for Behaviour Co-ordination and Multi-Agent Formation in RoboCup

MULTI-LAYERED HYBRID ARCHITECTURE TO SOLVE COMPLEX TASKS OF AN AUTONOMOUS MOBILE ROBOT

How Students Teach Robots to Think The Example of the Vienna Cubes a Robot Soccer Team

Test Plan. Robot Soccer. ECEn Senior Project. Real Madrid. Daniel Gardner Warren Kemmerer Brandon Williams TJ Schramm Steven Deshazer

CMDragons 2009 Team Description

The description of team KIKS

Turtlebot Laser Tag. Jason Grant, Joe Thompson {jgrant3, University of Notre Dame Notre Dame, IN 46556

CAMBADA 2015: Team Description Paper

Multi Robot Systems: The EagleKnights/RoboBulls Small- Size League RoboCup Architecture

Courses on Robotics by Guest Lecturing at Balkan Countries

Content. 3 Preface 4 Who We Are 6 The RoboCup Initiative 7 Our Robots 8 Hardware 10 Software 12 Public Appearances 14 Achievements 15 Interested?

Functional Specification Document. Robot Soccer ECEn Senior Project

Deriving Consistency from LEGOs

Team Description Paper

In this project you ll learn how to create a platform game, in which you have to dodge the moving balls and reach the end of the level.

Using Reactive and Adaptive Behaviors to Play Soccer

Field Rangers Team Description Paper

RAPID PROTOTYPING PROCESS USING METAL DIRECTLY

Graz University of Technology (Austria)

Optic Flow Based Skill Learning for A Humanoid to Trap, Approach to, and Pass a Ball

KMUTT Kickers: Team Description Paper

Robotic Systems ECE 401RB Fall 2007

Safe and Efficient Autonomous Navigation in the Presence of Humans at Control Level

Overview of Challenges in the Development of Autonomous Mobile Robots. August 23, 2011

Does JoiTech Messi dream of RoboCup Goal?

STOx s 2014 Extended Team Description Paper

RoboSoccer: Autonomous Robots in a Complex Environment

Robot Sports Team Description Paper

Multi-robot Formation Control Based on Leader-follower Method

The UNSW RoboCup 2000 Sony Legged League Team

Parts of a Lego RCX Robot

Your EdVenture into Robotics 10 Lesson plans

CLASSIFICATION CONTROL WIDTH LENGTH

EROS TEAM. Team Description for Humanoid Kidsize League of Robocup2013

ZJUDancer Team Description Paper Humanoid Kid-Size League of Robocup 2015

A Lego-Based Soccer-Playing Robot Competition For Teaching Design

Project Name: SpyBot

AN AUTONOMOUS SIMULATION BASED SYSTEM FOR ROBOTIC SERVICES IN PARTIALLY KNOWN ENVIRONMENTS

A Software for Game Strategy for Robot Soccer based on Acting Areas

RoboDragons 2010 Team Description

CAMBADA 2014: Team Description Paper

Hanuman KMUTT: Team Description Paper

UChile Team Research Report 2009

Multi-Platform Soccer Robot Development System

Bogobots-TecMTY humanoid kid-size team 2009

Intelligent Robotics Sensors and Actuators

Kid-Size Humanoid Soccer Robot Design by TKU Team

Robot Olympics: Programming Robots to Perform Tasks in the Real World

FalconBots RoboCup Humanoid Kid -Size 2014 Team Description Paper. Minero, V., Juárez, J.C., Arenas, D. U., Quiroz, J., Flores, J.A.

ZJUDancer Team Description Paper Humanoid Kid-Size League of Robocup 2014

This is a repository copy of Complex robot training tasks through bootstrapping system identification.

2014 KIKS Extended Team Description

Using Reactive Deliberation for Real-Time Control of Soccer-Playing Robots

Nao Devils Dortmund. Team Description for RoboCup 2013

Strategy for Collaboration in Robot Soccer

Perception. Read: AIMA Chapter 24 & Chapter HW#8 due today. Vision

Last Time: Acting Humanly: The Full Turing Test

Major Project SSAD. Mentor : Raghudeep SSAD Mentor :Manish Jha Group : Group20 Members : Harshit Daga ( ) Aman Saxena ( )

Robo Golf. Team 9 Juan Quiroz Vincent Ravera. CPE 470/670 Autonomous Mobile Robots. Friday, December 16, 2005

Incorporating a Connectionist Vision Module into a Fuzzy, Behavior-Based Robot Controller

Outline. Introduction to AI. Artificial Intelligence. What is an AI? What is an AI? Agents Environments

MOBILE ROBOT LOCALIZATION with POSITION CONTROL

AGENT PLATFORM FOR ROBOT CONTROL IN REAL-TIME DYNAMIC ENVIRONMENTS. Nuno Sousa Eugénio Oliveira

Vision Ques t. Vision Quest. Use the Vision Sensor to drive your robot in Vision Quest!

Transcription:

MINHO ROBOTIC FOOTBALL TEAM Carlos Machado, Sérgio Sampaio, Fernando Ribeiro Grupo de Automação e Robótica, Department of Industrial Electronics, University of Minho, Campus de Azurém, 4800 Guimarães, PORTUGAL carlos.machado@dei.uminho.pt, sergio.sampaio@mail.telepac.pt, fernando@dei.uminho.pt http://www.robotica.dei.uminho.pt/ Abstract: Autonomous mobile robots are ever increasing their number of different applications, even in ludic applications or in sports. In the last few years, several robotic football competitions have been organized with participating teams from all over the world. This paper describes a team of Autonomous Mobile Robots which play football, developed by the Group of Automation and Robotics at the Industrial Electronics department (School of Engineering) of the University of Minho, in Guimarães (Portugal). In these competitions each team is free to use and/or build all the different electronics, sensory systems, playing algorithms, etc. as far as they cope with the rules imposed by the organization. From every team new ideas emerge, sometimes the most incredible ones, but proving in the end that they work. These competitions proved to be very fruitful scientifically as well as very mediatic. Copyright CONTROLO 2000? Keywords: Mobile Robotics, Autonomous Robotics, Image Processing. 1. INTRODUCTION Following a participation in other football competition, this team decided to increase reliability of these robots as well as implementing new improvements. The mechanics needed rebuilding and the software needed to cope with communication between the robots. Also some rules demanded some changes in the software and game tactics. Basically, the robots are typical ones with two motors/wheels with a differential type steering control. Each robot has a standard personal computer inside and some electronics to read the wheels movement (through encoders). Instead of using several different sensors increasing electronics complexity, this team decided to use only one major sensor and invest some time on it: a vision system with a small colour camera. The main feature of this team consists of an innovative image processing system developed on purpose for this robots. In order to see the whole field, this vision system uses a convex mirror placed at the top of the robot looking downwards with the video camera looking upwards, towards the mirror. With this technique, the robots can see all around themselves with a top view, which means continuous vision of the ball, goals and other robots. All the image processing algorithms were developed from scratch. With this vision system, all the information necessary for the game is read avoiding though other sensors. Collision detection was an important aspect taken into consideration and is achieved also with image processing. 2. ROBOTS DESCRIPTION The team is made up of four equal robots, as described in (Ribeiro et al., 1999b) (with a small difference only to the goal keeper later described). Even the software running on each robot is the same. This way standardisation was achieved which means that they should behave the same.

The robot base used is made up of very light wood. It consists of a two levels platform with the two wheel voids. On the bottom level was placed the DC/DC converter (between the two wheels) and the two 12V 7Ah batteries (one at the front side and the other at the rear side). At the top level, it was placed the computer mother board and respective boards (video and graphics boards). The hardware consisted of a personal computer mother board with a Pentium processor running at 200 MHz (MMX), with 32 Mbytes of memory (although the DOS operating system was used and therefore only 1Mbyte was accessed). The hard disk had 2 Gbytes. A colour video camera was used with a frame grabber type Bt848. The communication hardware and software was not ready in time for the RoboCup99 competition and therefore each robot played on his own. Figure 1 shows one robot. 3. PERCEPTION The game is played through the use of certain known colours. The ball is red, the goals are blue and yellow, the field is green with white lines, the surrounding walls are white and the robots are black. This sort of approach forces the call for a video camera. Therefore, these robots use one only sensor to perceive all these items needed to play a game, which is a simple colour camera with its frame grabber plugged on a computer slot. But, most important of all is the way the camera sees. The camera is pointing upwards onto a convex mirror (as described in Figure 2), allowing therefore vision all around the robot from the top. This top view allows the robots to see far even when an opponent robot is covering the field of view. The mirror is pointing slightly to the front since it is more important to see to the front rather than to the back. The image distortion provoked by the convex shaped mirror is not very relevant as can be seen in the example in Figure 3, since what matters is the direction of the entities and not their actual position. To perceive all the necessary entities of the game (ball, goals, etc.), these robots grab one image every 20 ms, and the software finds the peak of a certain colour (after removing noise). For example, to track the ball, the software searches a peak of red. Since colours depend very much on the light conditions, a calibration is made prior to a game, in order to inform the software what is the minimum value for a red to be a ball. The software tracks down the following items: the ball (by its red colour) the two goals (yellow and blue colours) all other robots (mainly black coloured) the field surrounding walls (white coloured) The rules state that each team may use (if required by one of the teams) a predefined colour on their body for team recognition, and it should be visible by any angle and with at least 10 cm height. The colours are cyan for one team and magenta to the other team (before the game, they should agree which team uses which colour). But having said that, most of the teams do not use those colours because they confuse colours recognition (specially the magenta with the red). As an example, in European RoboCup 2000 held in Amsterdam, only one team (out of 10 teams) needed to use those colours. These robots avoid collisions, by perceiving as uncollidable items all the black and/or white items. This is the way they avoid walls (mainly white) and other robots (mainly black). The white lines on the green field are ignored because what the robot sees is not "mainly white" due to the slim thickness of the lines. 4. WORLD MODEL At any given time, these robots are aware of the ball (knowing its direction) and both goals direction. Robots on the field are also seen but not distinguished whether they belong to own or opponent team. This information is kept in the form of a direction variable, and when required they move towards it, updating that direction variable at every frame captured. These robots do not memorize anything else. It is important to point out that these robots do not know precisely where they are on the field at each moment, but that is irrelevant according to the way they play football. They only need to know the other entities direction (ball, goals, etc.) from their actual position. This way, complex systems of triangulation or similar techniques are avoided (both hardware and software) simplifying the whole solution. In a near future this team intends to improve the game tactics and the position of each robot will be known. This will help deciding the tactics like for example if a player is near the opponent goal it should behave like an attacker, and should a robot be near its own goal it should behave like a defender. Many techniques can be used like an electronic magnetic compass, typical encoders, lasers or sonar. 5. COMMUNICATION Until now, this team did not use any communication between the robots. However, wireless network boards are now being implemented in order to achieve better results during a game. The network boards will allow faster programming, debugging and also knowledge on the field (variables of the game)

which can be shared with the other robots of the team. Co-operation is the next step in any robotic football team. So far a few teams have done the first step towards it but no team yet can say that cooperate in 100% like humans. This team intends to use the wireless network boards in order to implement communication between the robots and later cooperation. Not a lot of information needs to be sent, just the state of a few variables, like instructions about actual state (a position, or a decision) or what to do next, and these messages have different levels of importance. Each robot can communicate with one other particular robot or with all of them at the same time. Being so, a complete confusion could be generated and therefore different levels of importance are used. This level depends on the owner position, or distance to the ball, goals, opponent robots, etc. The robots communicate only when it is needed (not all the time) in order to keep the radio environment free for urgent messages to pass through. Since the goal keeper is most of the time still on the field, he can be used to send to all other robots important information the like the position of the opponent robot players or the direction of the ball, or even if he is alone at the goal and need help (just call all the other robots). Once again, the information have different degrees of importance. 6. SKILLS In order to drive the ball, these robots use an arc shape controller with a re-entrance of 7cm (maximum allowed by the rules). This way, ball control is achieved just by pushing it, although a sudden change of direction might mean loosing the ball. These sudden changes of direction are avoided by the robots software by following longer and wider trajectories. These robots intercept the ball very easy. When they see the ball, they just go towards it, avoiding collision with the opponent robot, but insisting and never giving up, until the opponent robot looses the ball. Once they have the ball, they move towards the opponent goal dribbling the opponents (and avoiding collisions). Should they loose the ball, the "following ball" procedure starts instantaneously. This team s goalie is different from the other players only what concerns the direction of the wheels. These are rotated 90 degrees in order to be fast defending the goal rather than moving towards the front. The goalie software is very simple and consists of looking and observing the ball all the time. That is possible with the convex mirror. It then moves sideways in order to keep its body always in the ball s direction no matter how distant this is. When the ball approaches, the goalie kicks the ball with its arc rotating its body, doing a movement like a tennis player with its racket. This movement is very beautiful and improves the quality of the game and the emotion when watching. This technique not only avoids a goal but also kicks the ball far away from its goal. 7. STRATAGY OF THE GAME Since these robots always have an eye on the ball, their reaction is very simple and efficient. When they don't have the ball, they go towards it and don't give up until they get the ball. Once they have the ball they go towards the opponent goal in order to score, and avoiding obstacles. If, for some rare reason they don't see the ball, they start moving in a spiral until they see the ball again (avoiding the walls, of course). A comparison with other teams tactics was made and can be read in an internal report (Monteiro et al., 2000). As the only sensor available for the game, the vision is of extreme importance. The game strategy consists of a set of rules and contains the robot s personality and behaviour. The game strategy needs some variables, which are given by the image processing. From each image the following variables are extracted and indicate: BD - if the ball is seen by the robot BP - if the ball is near the robot BH - if the ball is in the ball holder BAD - if the opposite goal is seen BAP - if the robot is in front of the opposite goal BND - if the own goal is seen BNP - if the robot is in front of the own goal Some others variables are also extract but not as relevant as these ones. If the maximum of a predetermined colour is inside one of the defined squares, that means that variable is on. Five (or more, depending on the configuration used) white rectangles around the camera are used to detect collision. Should one of the sensors be mostly filled with the white or black colours or pixels, then it means that an obstacle is in that location. In that case, the obstacle avoidance routines automatically starts off, making it high priority moving the robot away from that place and therefore avoiding the obstacle no matter it is another robot or a wall. The white lines drawn on the green filed will not be considered an obstacle since they will never fill in one of the rectangles (they are too narrow). Figure 4 shows an example of an image seen by the robot with all the squares (or rectangles) superimposed. Arrows point to coloured rectangles or maximum of some colours.

With all these variables, the robot strategy simply consists of a Grafcet, which sets up the robot's aim as well as the dynamics, described in (Bicho et al., 1997a) and (Bicho et al., 1997b), to move towards a specific target, such as the ball or the goal. In all, the control used by this robot has three levels: Level 3 (Grafcet) -This is responsible for the robot s global behaviour. This level sets up the targets and sequences to reach the final aim. The first version of this grafcet is described by (Ribeiro et al., 1999a). Level 2 (dynamics) - This level is responsible for the immediate behaviour, i.e., the control of movements, based on the aims established by level 3. Level 1 (Controller PI) - This level serves directly the motors and is responsible to perform the plan established by level 2. At this level it is possible to extend the performance of the superior levels. The mirror technique also proved to be very efficient since everything can be seen at all time. With everything on sight, it is much easier to make the flux control program. 9. MOST RECENT RESULTS It is important to point out that the result of a football game does not tell whether a team played well or not (even with humans), and the most important part in a robotic football competition is the research behind it and not the score. Having said that, this team recently participated in one more robotic football competition (European RoboCup held in Amsterdam in May/June 2000), and our participation was good. In our group (group 2), we got second place, having winning 3 games our of 4. In those 3 games, our team scored 10 goals without suffering any goal at all. The game we lost was with the later champions of the competition and even though we were the only team scoring a goal against them. 10. CONCLUSIONS As main conclusions it can be said that the image processing developed and used by this team is the most important characteristic. It is very reliable, consistent, fast and original. The robot movements are very smooth and acceptably unpredictable unlike a typical algorithm with known steps used by many teams. Fig. 5. Levels of Control 8. SPECIAL TEAM FEATURES The image processing was the most important aspect of this team. It proved to be very consistent, very fast and original. All the video drivers were re-written by the team in assembly language in order to take the most out of the video board. This way, 50 frames were achieved making the rest of the control program an easy task. All the image processing routines were written in assembly language in order to increase speed and it proved to be very necessary. The general control program and strategy was written in C language since it did not need to be extremely fast. Sometimes, in two consecutive cycles the same image was analysed (giving the same result as the previous cycle), proving that it was not necessary to have a so fast machine. All the hardware in the robots was designed, developed and built by undergraduate students at the University of Minho. Only four robots were built due to lack of budget (no spare robots). These 4 robots were designed, built, programmed and tested by three industrial electronics students only. By participating on RoboCup 1999 the team learned a lot and gained experience in competing. The main improvements needed by these robots consist mainly in improving the mechanics reliability. 11. FURTHER WORK Since the whole robot was completely developed from scratch by undergraduate students it was important as first step to create a stable platform, what concerns electronics and software. It is now time to improve reliability of the robots and create a better game strategy. Communication and cooperation are the next steps as well as creating s system to know the robot position.

REFERENCES Bicho E. and Schoner G, (1997a) "The dynamic approach to autonomous robotics demonstrated on a low-level vehicle platform", Robotics and Automation systems 21(1997) 23-25. Bicho E, Schoner G, Mallet P., (1997b) "The dynamic approach to autonomous robotics", Journe Robotique, CNRS, Marseille, France, June 1997. Ribeiro, A.F., Machado C. and Campos F., (1999a) Footballer Autonomous Mobile Robot - Control and Vision System, Festival Internacional de Science et Technology, April, 1999, Bourges, France. Monteiro S., Ribeiro, A.F., Garrido P., (2000) Problems and Solutions in Middle-Size Robot Soccer A Review, Dept. of Industrial Electronics University of Minho, Guimarães. Ribeiro, A.F., Sampaio S., Machado C. and Costa I. (1999b) Portuguese Robotic Football Team, From Guimarães included in the book "RoboCup-99: Robot Soccer World Cup III" by Springer-Verlag.

Fig. 1. One footballer robot with the ball Fig. 3. Image seen by the robot Fig. 4. Variables captures from the image seen by the robot Fig. 2. Camera-Mirror Apparatus