I've been given one of the new cball infrared ball sensors from QuantumTorque to play with over the last few weeks. With the RoboCup Junior QLD competition last weekend, I had a good chance to play with it and see it being used on a few other robots in the soccer comp.
The sensor itself is comprised of 8 IR photo-detectors arranged in a semi-circle which gives your robot 180 degree field of view. When switched on, the sensor takes a background reading of the infrared light before looking for the Roboball.
It can operate in two modes, direction, or direction and intensity. With just the direction mode, the sensor passes back the ID number (1-8) of the photo detector with the brightest value, or 0 if all sensors have a reading equal to the background. In direction and intensity mode, it sends back the ID of the brightest photo-detector as well as the raw value. This not only allows you to see what direction the ball is, but also how far away it is. A set of LED's on the front make debugging very easy as you can instantly see which IR detector has located the ball.
The cball is also compatible with the RCX and while I programmed it in RoboLab, they have RobotC code and NXT-G code on their website. As well as I2C, it can do serial and analog output, perfect for any robotics project.
Here is one of the schools omni-drive soccer robot with cball sensor on the front.