The wheels and motor were taken from a smaller IR vehicle, cut in half and soldered with an old battery mount to the lower part of the Arduino. The IR switch was selected simply because the Sean Hodgins of the IdleHandsProject crew didn’t have a gyro/accelerometer on hand at the time.
“Its just a simple on or off that determines the direction of the robot. There is a potentiality on the IR switch that needs to be changed depending on the surface,” Hodgins wrote in a recent blog post. “Also because the motor is so tiny, I’m able to power it directly from the Arduino. A two motor version [would] most likely have to run a motor controller (which is also on the way).”
As HackADay’s Mike Szczys notes, the black PCB seen to the right of the robot is the IR reflectance sensor.
“[Basically], it shines an IR led at the floor and picks up what reflects back,” he explained. “The board [also] has a trimpot which is used to adjust the sensitivity. You have to tweak it until it stands on its own… [Remember], self-balancing robot builds are a great way to teach yourself about Proportional-Integral-Derivate (PID) algorithms used in a lot of these projects.”
Interested in learning more? You can check out Sean’s official project page here.