Particle Filter Localization |
Robo Soccer Final (A) |
Robo Soccer Final (B) |
How to implement this: The easiest way is to download into a Windows laptop the Lego NXT drivers (download directly from Lego) and the Bricx Command Center software.
Bricxcc: http://bricxcc.sourceforge.net/
Alternate way: Lego goes not provide drivers for Linux. However, you can do everything on Linux, Bricxcc runs perfectly well on Linux via WINE. So you can do your programming on Bricxcc. However, you have to save the compiled bytecode to a file and then upload it to the NXT block using a separate command-line utility. See the following link for details: http://bricxcc.sourceforge.net/nbc/doc/nxtlinux.txt
Reference material:
The online tutorial for building a simple bot with the Lego NXT set: http://www.nxtprograms.com/NXT2/castor_bot/index.html
NXC tutorial: http://bricxcc.sourceforge.net/nbc/nxcdoc/NXC_tutorial.pdf
Requirements:
A computer running Linux, equipped with bluetooth
A USB webcam
A playing field (can be built with nothing more than sticky tape)
A Lego NXT
How to use this: Download the starter package and uncompress into an empty directory and run 'make'. You will require the bluez bluetooth library and the OpenGL libraries (mesa, glu, and glut).
The 'src' contains the actual robo soccer source code, but note that the distribution also includes a copy of nxtlib-0.1. This is the library that handles the communication with the NXT. The API is defined within the 'API' directory in 'src'. You may want to add or modify this API depending on how much work you want your students to do.
In order to get your NXT to work with this code, you must update the bluetooth device ID at the top of 'RoboSoccer.c' with the corresponding identifier for your Lego kit.
If you find any of the above material useful, and especially if you decide to run a robotics soccer competition, I would love to hear from you.
Please send any questions, comments, or bug reports to
Francisco J. Estrada - festrada [@] utsc [.] utoronto [.] ca
http://www.cs.utoronto.ca/~strider