This design is based on KILO by Rod Gillies. KILO operates on a
holonomic drive system. In this setup, robots can maintain
orientation while being able to move freely in any direction. For
that, omniwheels (wheels that allow for omnidirectional movement)
are needed. The wheels used here aren't omniwheels but can suffice
to give omnidirectional movement. They don't necessarily work well
as they create friction and thus cause KILO to not travel exactly
straight. I've built it with sensors to provide obstacle avoidance:
An ultrasonic sensor, A HiTechnic EOPD sensor, and what I had left:
A light sensor.
(This system is also well known as a Killough Robot Platform)
Information about holonomic drive can be found in detail at:
http://technicbricks.blogspot.com/2008/08/going-to-all-places-in-all-directions_29.html
Along with this article that includes mathematical equations and
provides information about other unique drive systems:
http://www.firstroboticscanada.org/site/files/workshops/omnidirectional.pdf