ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 13.06.2025

Просмотров: 4207

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

R. . .OBOT. . . . . . . . . S. . .OCCER. . . . . . . . . . . . . . . . . . . .

18

.. . . . . . . .

Football, or soccer as it is called in some countries, is often referred to as “the world game”. No other sport is played and followed by as many nations around the world. So it did not take long to establish the idea of robots playing soccer against each other. As has been described earlier on the Micro Mouse Contest, robot competitions are a great opportunity to share new

ideas and actually see good concepts at work.

Robot soccer is more than one robot generation beyond simpler competitions like solving a maze. In soccer, not only do we have a lack of environment structure (less walls), but we now have teams of robots playing an opposing team, involving moving targets (ball and other players), requiring planning, tactics, and strategy – all in real time. So, obviously, this opens up a whole new dimension of problem categories. Robot soccer will remain a great challenge for years to come.

18.1 RoboCup and FIRA Competitions

See details at: www.fira.net www.robocup.org

Today, there are two world organizations involved in robot soccer, FIRA and RoboCup. FIRA [Cho, Lee 2002] organized its first robot tournament in 1996 in Korea with Jong-Hwan Kim. RoboCup [Asada 1998] followed with its first competition in 1997 in Japan with Asada, Kuniyoshi, and Kitano [Kitano et al. 1997], [Kitano et al. 1998].

FIRA’s “MiroSot” league (Micro-Robot World Cup Soccer Tournament) has the most stringent size restrictions [FIRA 2006]. The maximum robot size is a cube of 7.5cm side length. An overhead camera suspended over the playing field is the primary sensor. All image processing is done centrally on an off-board workstation or PC, and all driving commands are sent to the robots via wireless remote control. Over the years, FIRA has added a number of different leagues, most prominently the “SimuroSot” simulation league and the “RoboSot” league for small autonomous robots (without global vision). In 2002, FIRA introduced “HuroSot”, the first league for humanoid soccer playing robots. Before that all robots were wheel-driven vehicles.

263263

18 Robot Soccer

Real robots don’t use global vision!

RoboCup started originally with the “Small-Size League”, “Middle-Size League”, and “Simulation League” [RoboCup 2006]. Robots of the small-size league must fit in a cylinder of 18cm diameter and have certain height restrictions. As for MiroSot, these robots rely on an overhead camera over the playing field. Robots in the middle-size league abolished global vision after the first two years. Since these robots are considerably larger, they are mostly using commercial robot bases equipped with laptops or small PCs. This gives them at least one order of magnitude higher processing power; however, it also drives up the cost for putting together such a robot soccer team. In later years, RoboCup added the commentator league (subsequently dropped), the rescue league (not related to soccer), the “Sony 4-legged league” (which, unfortunately, only allows the robots of one company to compete), and finally in 2002 the “Humanoid League”.

The following quote from RoboCup’s website may in fact apply to both organizations [RoboCup 2006]:

“RoboCup is an international joint project to promote AI, robotics, and related fields. It is an attempt to foster AI and intelligent robotics research by providing a standard problem where a wide range of technologies can be integrated and examined. RoboCup chose to use the soccer game as a central topic of research, aiming at innovations to be applied for socially significant problems and industries. The ultimate goal of the RoboCup project is: By 2050, develop a team of fully autonomous humanoid robots that can win against the human world champion team in soccer.”

We will concentrate here on robot soccer played by wheeled robots (humanoid robot soccer is still in its infancy) without the help of global vision. The RoboCup Small-Size League, but not the Middle-Size League or FIRA RoboSot, allows the use of an overhead camera suspended above the soccer field. This leads teams to use a single central workstation that does the image processing and planning for all robots. There are no occlusions: ball, robots, and goals are always perfectly visible. Driving commands are then issued via wireless links to individual “robots”, which are not autonomous at all and in some respect reduced to remote control toy cars. Consequently, the “AllBots” team from Auckland, New Zealand does in fact use toy cars as a low-budget alternative [Baltes 2001a]. Obviously, global vision soccer is a completely different task to local vision soccer, which is much closer to common research areas in robotics, including vision, self-localization, and distributed planning.

The robots of our team “CIIPS Glory” carry EyeCon controllers to perform local vision on-board. Some other robot soccer teams, like “4 Stooges” from Auckland, New Zealand, use EyeCon controllers as well [Baltes 2001b].

Robot soccer teams play five-a-side soccer with rules that are freely adapted from FIFA soccer. Since there is a boundary around the playing field, the game is actually closer to ice hockey. The big challenge is not only that reliable image processing has to be performed in real time, but also that a team of five robots/actors has to be organized. In addition, there is an opposing team which

264


RoboCup and FIRA Competitions

will change the environment (for example kick the ball) and thereby render one’s own action plans useless if too slow.

One of the frequent disappointments of robot competitions is that enormous research efforts are reduced to “show performance” in a particular event and cannot be appreciated adequately. Adapting from the home lab environment to the competition environment turns out to be quite tricky, and many programs are not as robust as their authors had hoped. On the other hand, the actual competitions are only one part of the event. Most competitions are part of conferences and encourage participants to present the research behind their competition entries, giving them the right forum to discuss related ideas.

Mobile robot competitions brought progress to the field by inspiring people and by continuously pushing the limits of what is possible. Through robot competitions, progress has been achieved in mechanics, electronics, and algorithms [Bräunl 1999].

CIIPS Glory with local vision on each robot

Note the colored patches on top of the Lilliputs players. They need them to determine each robot’s position and orientation with global vision.

Figure 18.1: CIIPS Glory line-up and in play vs. Lilliputs (1998)

265

18 Robot Soccer

18.2 Team Structure

The CIIPS Glory robot soccer team (Figure 18.1) consists of four field players and one goal keeper robot [Bräunl, Graf 1999], [Bräunl, Graf 2000]. A local intelligence approach has been implemented, where no global sensing or control system is used. Each field player is equipped with the same control software, only the goal keeper – due to its individual design and task – runs a different program.

Different roles (left/right defender, left/right attacker) are assigned to the four field players. Since the robots have a rather limited field of view with their local cameras, it is important that they are always spread around the whole field. Therefore, each player’s role is linked to a specific area of the field. When the ball is detected in a certain position, only the robot responsible for this area is meant to drive toward and play the ball. The robot which has detected the ball communicates the position of the ball to its team mates which try to find favorable positions on the field to be prepared to take over and play the ball as soon as it enters their area.

Situations might occur when no robot sees the ball. In that case, all robots patrol along specific paths in their assigned area of the field, trying to detect the ball. The goal keeper usually stays in the middle of the goal and only moves once it has detected the ball in a reasonably close position (Figure 18.2).

y

x

Figure 18.2: Robot patrolling motion

This approach appears to be quite efficient, especially since each robot acts individually and does not depend on any global sensing or communication system. For example, the communication system can be switched off without any major effects; the players are still able to continue playing individually.

266


Mechanics and Actuators

18.3 Mechanics and Actuators

According to the RoboCup Small-Size League and FIRA RoboSot regulations the size of the SoccerBots has been restricted to 10cm by 15cm. The height is also limited, therefore the EyeCon controller is mounted on a mobile platform at an angle. To catch the ball, the robot has a curved front. The size of the curved area has been calculated from the rule that at least two-thirds of the ball’s projected area must be outside the convex hull around the robot. With the ball having a diameter of approximately 4.5cm, the depth of the curved front must be no more than 1.5cm.

The robots are equipped with two motorized wheels plus two casters at the front and back of the vehicle. Each wheel is controlled separately, which enables the robots to drive forward, backward, as well as drive in curves or spin on the spot. This ability for quick movement changes is necessary to navigate successfully in rapidly changing environments such as during robot soccer competitions.

Two additional servo motors are used to activate a kicking device at the front of the robot and the movement of the on-board camera.

In addition to the four field players of the team, one slightly differing goal keeper robot has been constructed. To enable it to defend the goal successfully it must be able to drive sideways in front of the goal, but look and kick forward. For this purpose, the top plate of the robot is mounted at a 90° angle to the bottom plate. For optimal performance at the competition, the kicking device has been enlarged to the maximum allowed size of 18cm.

18.4 Sensing

Sensing a robot’s environment is the most important part for most mobile robot applications, including robot soccer. We make use of the following sensors:

Shaft encoders

Infrared distance measurement sensors

Compass module

Digital camera

In addition, we use communication between the robots, which is another source of information input for each robot. Figure 18.3 shows the main sensors of a wheeled SoccerBot in detail.

Shaft encoders The most basic feedback is generated by the motors’ encapsulated shaft encoders. This data is used for three purposes:

PI controller for individual wheel to maintain constant wheel speed.

PI controller to maintain desired path curvature (i.e. straight line).

Dead reckoning to update vehicle position and orientation.

267

18 Robot Soccer

The controller’s dedicated timing processor unit (TPU) is used to deal with the shaft encoder feedback as a background process.

Figure 18.3: Sensors: shaft encoder, infrared sensors, digital camera

Infrared distance measurement

Each robot is equipped with three infrared sensors to measure the distance to the front, to the left, and to the right (PSD). This data can be used to:

Avoid collision with an obstacle.

Navigate and map an unknown environment.

Update internal position in a known environment.

Compass module

Digital camera

Robot-to-robot communication

Since we are using low-cost devices, the sensors have to be calibrated for each robot and, due to a number of reasons, also generate false readings from time to time. Application programs have to take care of this, so a level of software fault tolerance is required.

The biggest problem in using dead reckoning for position and orientation estimation in a mobile robot is that it deteriorates over time, unless the data can be updated at certain reference points. A wall in combination with a distance sensor can be a reference point for the robot’s position, but updating robot orientation is very difficult without additional sensors.

In these cases, a compass module, which senses the earth’s magnetic field, is a big help. However, these sensors are usually only correct to a few degrees and may have severe disturbances in the vicinity of metal. So the exact sensor placement has to be chosen carefully.

We use the EyeCam camera, based on a CMOS sensor chip. This gives a resolution of 60 u 80 pixels in 32bit color. Since all image acquisition, image processing, and image display is done on-board the EyeCon controller, there is no need to transmit image data. At a controller speed of 35MHz we achieve a frame capture rate of about 7 frames per second without FIFO buffer and up to 30 fps with FIFO buffer. The final frame rate depends of course on the image processing routines applied to each frame.

While the wireless communication network between the robots is not exactly a sensor, it is nevertheless a source of input data to the robot from its environment. It may contain sensor data from other robots, parts of a shared plan, intention descriptions from other robots, or commands from other robots or a human operator.

268


Image Processing

18.5 Image Processing

Vision is the most important ability of a human soccer player. In a similar way, vision is the centerpiece of a robot soccer program. We continuously analyze the visual input from the on-board digital color camera in order to detect objects on the soccer field. We use color-based object detection since it is computationally much easier than shape-based object detection and the robot soccer rules define distinct colors for the ball and goals. These color hues are taught to the robot before the game is started.

The lines of the input image are continuously searched for areas with a mean color value within a specified range of the previously trained hue value and of the desired size. This is to try to distinguish the object (ball) from an area similar in color but different in shape (yellow goal). In Figure 18.4 a simplified line of pixels is shown; object pixels of matching color are displayed in gray, others in white. The algorithm initially searches for matching pixels at either end of a line (see region (a): first = 0, last = 18), then the mean color value is calculated. If it is within a threshold of the specified color hue, the object has been found. Otherwise the region will be narrowed down, attempting to find a better match (see region (b): first = 4, last = 18). The algorithm stops as soon as the size of the analyzed region becomes smaller than the desired size of the object. In the line displayed in Figure 18.4, an object with a size of 15 pixels is found after two iterations.

0

1

2

3

4

5

6

7

8

9

10 11 12 13 14 15 16 17 18

19

(a)

(b)

Distance estimation

Figure 18.4: Analyzing a color image line

Once the object has been identified in an image, the next step is to translate local image coordinates (x and y, in pixels) into global world coordinates (x´ and y´ in m) in the robot’s environment. This is done in two steps:

Firstly, the position of the ball as seen from the robot is calculated from the given pixel values, assuming a fixed camera position and orientation. This calculation depends on the height of the object in the image. The higher the position in the image, the further an object’s distance from the robot.

Secondly, given the robot’s current position and orientation, the local coordinates are transformed into global position and orientation on the field.

Since the camera is looking down at an angle, it is possible to determine the object distance from the image coordinates. In an experiment (see Figure 18.5), the relation between pixel coordinates and object distance in meters has been determined. Instead of using approximation functions, we decided to use the faster and also more accurate method of lookup tables. This allows us to

269