RoboSoccer was an undergraduate research project funded by mini grants established by California State University Channel Island to allow faculty and students to engage in shared projects. The system that involved a number of students in a span of several semesters working on a variety of aspects such as robot control, visual reconnaissance, and game AI. The robots were controlled by laptop-based automated managers that were obtaining the status of the game from a visual analyzer of images taken by a camera hanging over the soccer field. The project not only provided an excellent vehicle to educate students in a variety of areas not covered by the regular curriculum, but also exposed them to the “real world” development environment. Demonstrations of the system were shown at several venues, including the CSUCI Research Fair and Business and Technology Partnership (B&TP) Annual showcase. The project made a very positive and long-lasting impression on the local community for both the Computer Science Program and for the university.
The equipment included several Mindstorm NXT-based Lego robots, three laptops, a camera, two ladders with a bar to hold the camera, overhead lights, a modular foam soccer field, and a projector with a screen. It was quite an undertaking to move, assemble, and then de-assemble all of the necessary pieces. The ladders were holding a bar with an attached camera that was taking pictures of the soccer field. The real-time video showing the current situation on the field was projected on the screen through the projector attached to the image analyzing laptop. The strong lights minimized the variance in lighting conditions between various venues (e.g., eliminating shadows).
Two laptops running team management software were behind the goals, while the third getting
the image feed from the camera was on a side. The role of the former was to receive image analysis data from the latter, and transform that knowledge into commands for the Lego players. The camera was connected through a USB cable to the image analyzing laptop. Wifi was used to communicate between the laptops. The communication with the Lego robots was carried over a Bluetooth link. For identification purposes, the Lego players were color-coded with ‘hats’, as were the goals.
The RoboSoccer system was structured as four sub-projects:
- The first part, image sensing, determined the current state of the game (positions of the players and ball).
- The second, the communication module, handled the communication between the sensing unit and two team control units, and then each team control unit and the robot players.
- The third, the the control unit, was responsible for determining what moves the robots should take based upon the information from the sensing unit.
- The last piece was the individual skills of the robots themselves, such as walking, turning and kicking.