[figure]

RoboCup: Soccer for the future

Petter Reinholdtsen <pere@hungry.com>

Abstract

The goal of RoboCup is to be able to play soccer against the FIFA champions and win. This should be achieved by 2050.

During 1999 and 2000, I had the opportunity to play with robots as a Robot Soccer couch on the CIIPS Glory team of Western Australia. This is the story of the preparations for RoboCup 2000 in Melbourne, and a summary of our result.

[figure]

Content

• What is Robot Soccer?

• Who are CIIPS Glory?

• The team

• What is the Eyebot and which OS is it running?

• How do robots play soccer?

• Experience from RoboCup 2000

• The results

• The local vision derby

• Some videos

[figure]

Robot Soccer

• Since 1996

• MIROSOT (7.5 × 7.5 × 7.5cm^{3})

• RoboCup (Leagues; simulation, small, middle, SONY legged and humanoid)

• Last RoboCup in Melbourne 2000-08-26 – 73 simulation teams

– 28 small size teams (3 local vision teams)

– 31 middle size teams

– 5 SONY legged teams

– 3 humanoid “teams”

[figure]

CIIPS Glory

• Only robot soccer team in Western Australia

• CIIPS/Electrical Engineering at University of Western Australia • Small size league (2 × 10 minutes)

– 274 × 152.5cm^{2} field (ping-pong table)

– Max 5 robots on each team

• Hopefully humanoid league

• Local vision (onboard camera) and global vision

• Eyebot soccer robots

• Previous experience – PRICAI’98 (Singapore November 1998)

– Interact’99 (Melbourne August 1999)

[figure]

The team

5 Soccer Eyebots. Stephen Humble, volunteer. Programming field player, handling mechanics and public relations. Petter Reinholdtsen, volunteer and team leader. Programming field player and operating system. Mari Wang, volunteer. Programming goal keeper. Jack Daniels, biped Eyebot. Public relations.

[figure]

Eyebot Hardware

• Motorola 68332 (25-40 MHz)

• 1 MB RAM and 512 KB Flash ROM • Color camera (80x60 24bit, 3.7 fps)

• Radio (418 or 433 MHz)

• Infrared distance sensors

• Two wheels with encoders

• Servo (camera control)

• Microphone and speaker

• Acceleration sensors

• Digital compass

RoboCup: Soccer for the future Petter Reinholdtsen

[figure]

Robot OS (RoBIOS)

• M68 assembly and C using GNU C cross compiler (v2.95.2)

• Complete size < 128 KB

• Features (in addition to HW drivers)

– Multi-threading

– OS upgrade using serial connection

– Hardware description table

– Up to three programs in ROM (optional auto-run on boot)

– Simulator

• GNU C library is available

• Developed from Germany and Australia (CVS)

• Bug tracking system (Bugzilla)

RoboCup: Soccer for the future Petter Reinholdtsen NUCCC presentation, Oslo, 2001-02-17 8

[figure]

MotorHandle     leftmotor, leftmotor;
PSDHandle       psd_front, psd_left, psd_right;
VWHandle        vw;
int main(int argc, char *argv[])
{
LCDMenu("","","","END");
vw=VWInit(VW_DRIVE,1);
/* this is because #5 has stuffed up PSD */
psd_front = PSDInit(PSD_FRONT);
psd_left = PSDInit(PSD_LEFT);
psd_right = PSDInit(PSD_RIGHT);
PSDStart(psd_front, TRUE);
PSDStart(psd_left,TRUE);
PSDStart(psd_right,TRUE);
VWStartControl(vw, v_lin, t_lin , v_rot, t_rot);
while (KEYRead() != KEY4)
  {
    if( (PSDGet(psd_front) > 100 && PSDGet(psd_left) > 100
      && PSDGet(psd_right)>100 ))
      VWDriveStraight(vw,0.01,0.2);
    else
      {
        LCDPutString("Backwards \n");
        VWDriveStraight(vw,-0.04,0.2);
        while (!VWDriveDone(vw))
          VWDriveWait(vw);
        if((rand()%2)==0)
          {
            VWDriveTurn(vw,1.57,0.6);
            LCDPutString("Turning Left \n");
          }
        else
          {
            VWDriveTurn(vw,-1.57,0.6);
            LCDPutString("Turning Right \n");
          }
        while(!VWDriveDone(vw))
          VWDriveWait(vw);
      }
  }/* end while loop */
}

[figure]

How do robots play soccer

The goal is robot soccer without human interference. • Sensor input processing

• Self localization, planning and decision making • Action

[figure]

Sensor input processing

• Vision – Overhead camera (video4linux)

– Frame rate is everything

– Local camera

– CPU and bandwidth intensive

– Object recognition with light condition changes • Distance sensors

• Compass

• Dead reckoning

RoboCup: Soccer for the future Petter Reinholdtsen

[figure]

Self localization, planning and decision making

• Obstacle avoidance

• Team coordination

• Prediction based on physics model • Team play

– Role change

– Offensive or defensive

Action

• Communicate

• Drive

• Kick

RoboCup: Soccer for the future Petter Reinholdtsen

[figure]

Preparing for competition

• Tested and debugged RoBIOS, Eyebot and sensor drivers.

• Redesigned the robot frame to get better balance and less friction.

• Tried to improve radio communication reliability.

• Tried to find sponsors.

• Tried to speed up camera frame rate by designing a parport FIFO buffer to reduce the number of interrupts per frame from 20.000 to 20. Not finished in time.

• Tested various self localization methods, no one worked well enough.

[figure]

Experience from RoboCup 2000

• Compasses worked perfectly, with less then 2 degrees error. (as opposed to our lab). We integrated it into our player on site.

• Overhead tracking system did not work at all. The lens was to wide, and we did not have zoom. No one had been working on this part since march 2000, so everything were untested when we left for Melbourne.

• 24x7 access to the competition area a real must. We had a lot of programming left before we were ready to compete.

• No Internet-access was a pain. Forgot some header files required to compile the overhead tracker, and had to get one of the organizers to drive me to RMIT to download it.

[figure]

Experience (cont...)

• The robots had some resets during game, the batteries holders are not good enough.

• Self localization using distance sensors failed due to badly calibrated sensors and too long calculation delay ( 10 second).

• Always hard to get access to the 418 and 433 MHz radio frequency. We had to make it easier to turn on and off radio.

• Omni-directional wheels and the new dribbler used by some teams are a big advantage.

• Too easy to get stuck on the angled walls, with no wheel touching the ground.

[figure]

Experience (cont...)

• The all-wood soccer field was very nice. Knee-high table allowed to reach across without climbing. All-wood gave no compass disturbances.

• 4 Stooges had 12 frames per second using the same hardware as us. They could turn off interrupts and run the camera on full speed as they do not use (or have) any other sensors.

• Linux were used almost on more then half the computers in the competition area. Many of the middle size league teams used Linux on their robots as well.

• The information flow were flowing somewhere else. Find the league organizer and stay close to him.

[figure]

The results

CIIPS Glory TPOTS  0 - 3
CIIPS Glory Rogi Team 0 - 10
CIIPS Glory FU Fighters 0 - 7
Viperoos  TUD  2 - 0

It could have been a lot worse.

TPOTS stayed up all night before their game against us to adjust their software to stay further away from the opponents (us) to avoid damaging our robots. The adjustments did not turn out too well.

FU Fighters turned off their kickers and slowed down their robots a lot. So much the ball stopped on the goal line several times without entering the goal.

[figure]

Local vision derby

The local vision teams had a small derby Wednesday evening to compare our performance. It was not too impressive. :-)

CIIPS Glory 4 Stooges 0 - 0
Viperroos  4 Stooges 0 - 0
CIIPS Glory Viperoos 0 - 0

We scored a goal in the penalty shootout against Viperoos. A lot of people were interested in the local vision and local CPU systems. A lot of teams wanted to start with “real robotics”, as one from FU Fighters phrased it.

[figure]

Biped robots

There were several biped robots on display. Some of them could even walk.

• Jack Daniels from University of Western Australia

• ? from De Laboratory Robotics de Paris, France

• PINO from Kitano Symbiotic Systems Laboratory, Japan

• MkII from Aoyama Universityis, Japan Only MkII could even get up from his LEGO chair, and walk over to the ball to kick it. (it missed on the goal). In a few years, the biped league should playing games in RoboCup.

[figure]

Videos

• Robot helmet-cam by FU Fighters

• Daily highlights by RoboCup 2000 webcast team – Arrival Saturday 26th August

– F180; Pre-competition Sunday 27th August – F2000; Naist vs Golem Tuesday 29th August

[figure]

Thank you

    http://www.robocup.org/ and http://www.robocup2000.org/
           http://ciips.ee.uwa.edu.au/~pere/soccer/

Slides are available from Petter Reinholdtsen <pere@hungry.com>,

    http://www.student.uit.no/~pere/mypapers/robocup-nuccc/