1 \documentclass[a4, landscape, semrot
]{seminar
}
9 \newcommand{\heading}[1]{%
13 \vspace{1ex minus
1ex
}}
16 {University of Western Australia/Computer Science, Perth,
2000-
04-
14\hfil\thepage}%
17 {CIIPS Glory: Global cross platform robot soccer development
18 \hfill Petter Reinholdtsen
}
29 \includegraphics[height=
2cm
]{soccer-logo-med
}
32 \heading{Global cross platform robot soccer development
}
35 Petter Reinholdtsen $<$pere@hungry.com$>$
38 The CIIPS Glory robot soccer team consists of five
15 cm tall robots
39 running specially developed operating system and control programs.
40 The system is developed in Germany and Australia, using cross
41 compilers running on Linux and Windows.
47 In this presentation, you will learn the following:
51 \item What is Robot Soccer?
52 \item Who are CIIPS Glory?
53 \item What is the Eyebot and which OS is it running?
54 \item How do we handle global cross platform development?
55 \item How do robots play soccer?
63 \heading{Robot Soccer
}
66 \item MIROSOT ($
7.5 \times 7.5 \times 7.5 cm^
3$)
67 \item RoboCup (Leagues; simulation, small, middle, SONY legged and humanoid)
68 \item Next RoboCup in Melbourne
2000-
08-
26
70 \item 73 simulation teams
71 \item 28 small size teams
72 \item 31 middle size teams
73 \item 5 SONY legged teams
74 \item 3 humanoid teams
82 \item The only robot soccer team in WA
83 \item Located at CIIPS/EE-UWA
84 \item Small size league ($
2 \times 10$ minutes)
86 \item $
274 \times 152.5 cm^
2$ field (ping-pong table)
87 \item Max
5 robots on each team
89 \item Hopefully humanoid league
91 \item Local (on-board) and global (overhead) vision
92 \item Eyebot soccer robots
94 \item Previous experience
96 \item PRICAI'
98 (Singapore November
1998)
97 \item Interact'
99 (Melbourne August
1999)
102 \heading{Eyebot Hardware
}
105 \item Motorola
68332 (
25-
40 MHz)
106 \item 1 MB RAM and
512 KB Flash ROM
107 \item Color camera (
80x60
24bit)
108 \item RS232
38400bps radio (
418 or
433 MHz)
109 \item IR distance sensors
110 \item Two wheels with encoders
111 \item Digital and analog compass
112 \item Servo (kicker and camera control)
113 \item Microphone and speaker
114 \item Acceleration sensors
119 \heading{Robot OS (RoBIOS)
}
122 \item Features (in addition to HW drivers)
124 \item Multi-threading
125 \item OS upgrade using serial connection
126 \item Hardware description table
127 \item Up to three programs in ROM (optional autoloading)
130 \item Complete size $<
128$ KB
131 \item M68 assembly and C using GNU C cross compiler (v2.95
.2)
132 \item GNU C library is available
133 \item Developed in Germany and Australia (CVS)
134 \item Bugzilla bug tracking system (
{\tt http://www.mozilla.org/bugs/
}).
145 MotorHandle leftmotor, leftmotor;
146 PSDHandle psd_front, psd_left, psd_right;
151 LCDMenu("","","","END");
152 vw=VWInit(VW_DRIVE,
1);
154 psd_front = PSDInit(PSD_FRONT);
155 psd_left = PSDInit(PSD_LEFT);
156 psd_right = PSDInit(PSD_RIGHT);
157 PSDStart(psd_front | psd_left | psd_right, TRUE);
158 VWStartControl(vw,
7,
0.3,
7,
0.1);
160 while (KEYRead() != KEY4)
162 if( (PSDGet(psd_front) >
100 && PSDGet(psd_left) >
100
163 && PSDGet(psd_right)>
100 ))
164 VWDriveStraight(vw,
0.01,
0.2);
167 LCDPutString("Backwards
\n");
168 VWDriveStraight(vw,-
0.04,
0.2);
173 VWDriveTurn(vw,
1.57,
0.6);
174 LCDPutString("Turning Left
\n");
178 VWDriveTurn(vw,-
1.57,
0.6);
179 LCDPutString("Turning Right
\n");
183 }/* end while loop */
192 \heading{Client/server CVS
}
194 \item Concurrent Versions System
196 \item Tag source with what, who and why
197 \item Allow distributed development
199 \item Server on Linux, clients on Linux and Win32
200 \item Nightly build to check consistency
201 \item Auto-generated ChangeLog
202 \item More info on
{\tt http://www.sourcegear.com/CVS/
}
207 \heading{How do robots play soccer
}
210 \includegraphics[height=
1.5cm
]{team1
}
213 The goal is robot soccer without human interference. The long term
214 goal is to win humanoid football in
2050.
217 \item Sensor input processing
218 \item Self localization, planning and decision making
224 \heading{Input sensor processing
}
227 \includegraphics[height=
1.5cm
]{ball_009
}
233 \item Frame rate is everything
234 \item Overhead camera
25 fps interlaced (video4linux)
235 \item On-board digital camera
3.7 -
60 fps
236 \item CPU and bandwidth intensive
237 \item Recognize objects when light condition changes
239 \item Distance sensors
246 \heading{Self localization
}
249 \includegraphics[width=
4cm
]{localization
}
252 We are testing two approaches and wish to combine both for better
256 \item PSD radar scanning.
258 \item Only three sensors (left, front and right)
259 \item Rotating is slow or inaccurate
261 \item Goal position triangulation.
263 \item Panning is fast - processing is slow
265 \item Someone might always be in the way...
270 \heading{Planning and decision making
}
273 \item Prediction based on physics model
274 \item Obstacle avoidance
275 \item Path planning when all the obstacles are moving
281 \item Offensive or defensive play?
289 Our goal is autonomous players, capable of playing even when overhead
290 tracking and radio communication break down.
296 \item Standard protocol and conventions
297 \item Different programs can still communicate
302 \item Need fast and accurate steering.
307 \item Ram the ball instead of servo kicker
308 \item Rotate to hit with tail
316 Everyone willing are welcome to join the team. We need at least the
321 \item Programmers for robot control, tracking system and HW drivers
323 \item HW design and repair
325 \item Public relations
329 If so, we would like to hear from you at $ciipsglory@uwa.edu.au$.
331 Sponsors are also very welcome.
338 \includegraphics[height=
5cm
]{soccer1
}
340 {\tt http://ciips.ee.uwa.edu.au/\~
{}pere/soccer/
}