The miniscule size of this self-balancing robot makes it a cool project. It actually uses the motor and wheels from a small toy car. But when you look into how the balancing act is performed it gets way more interesting. The larger versions of this trick pretty much all use Inertial Measurement Units (IMUs) which are usually made up of an accelerometer and a gyroscopic sensor. This has neither.
The black PCB seen to the right of the robot is an IR reflectance sensor. It shines an IR led at the floor and picks up what reflects back. [Sean] added this hack because the gyro sensor he ordered hasn’t arrived yet. The board has a trimpot which is used to adjust the sensitivity. You have to tweak it until it stands on its own. See for yourself after the break.
Self balancing robot builds are a great way to teach yourself about Proportional-Integral-Derivate (PID) algorithms used in a lot of these projects.
Well it’s not gonna work on unevenly colored floor, right? How about using a perpendicular and two light barriers? It might oscillate easly, but maybe this is an even better PID-training ;)
Could an ultrasound sensor work like this? Anyone know?
I would guess so. Probably you would need to put it little higher. And, most likely it’s not going to be as smooth as this. Try it, good chance it’s going to work.
latency
have you thought of overnighting the gyro sensor?
Have seen this done with lego mindstorms several times using the light sensor.
I didi this once with a NXT Lego and a light sensor
Trim pot on the underside.
Genuis…
Hey, what kind of Motor is this??
Could run dambusters-style converging light spots to detect height, a bit more tolerant of surface changes.
What do you mean by “dambusters-style.”
Also, I learned something about WWII thanks to you.
how does it handle hills/inclined planes?
Adorable. I’m a big fan of the 555 based PID balancing “robot” (which HaD shared years ago.)
[youtube=http://www.youtube.com/watch?v=Y-afnY32RrY&w=420&h=315]
That Steam notification in the video got me…
Very cool! Thanks for sharing. We built a similar project. However, we installed an Android device on the robot to control its balance. Here you can see the result:
http://youtu.be/xtMCmuR8uNU