It might not be as elegant or technologically-advanced as a Segway or a motorized unicycle, but this easily constructed 2-wheeled robot might be a fun project for a free afternoon. The heart of the balancing mechanism is an SPDT switch with a button cell attached that reverses the motor when the robot begins to tip in one direction. It’s not controllable and it tends to fall over quite a bit, but it’s a good starting point and could be refined by lowering the center of gravity or figuring out a simple way to change the motor speed based on how far the robot has tipped over. There are no accelerometers or tilt switches so the components could be sourced from a parts bin, and its simple design definitely leaves a lot of room for improvement.
12 thoughts on “Miniature Balancing Robot”
wow, that poor thing looks like it’s having a seizure :(
I am surprised it works as well as it does, given that it’s essentially a bang-bang controller with a very shitty motor! Wow, I never would have thought it’d work.
SUIT SONG 43 FUCK YEAH
I wouldn’t think it’d be very hard to replace the switch with a potentiometer to the feedback proportional rather than bang/bang. Then it’d even be possible to add another potentiometer ahead of that one to control the speed and yet another after it for steering.
vdd –tilt sense pot — vcc
vdd–motor 1 -vcc |
vdd– motor 2 — vcc
I thought the high center of gravity helped to maintain stability. This is because more weight doesn’t change direction as quickly as less weight, allowing for more time to get the wheels up under it but the simple tilt sensor doesn’t allow for it to catch up properly.
It looks like the creator is trying to avoid any kind of microcontroller. Still, it would be relatively trivial to add an L293DD, 555 timer, and a potentiometer for variable pwm motor control. The tricky part would be getting past the motor’s deadband (motors have a +-5% or similar pwm where they don’t do anything). Still, it would be better than a bang-bang controller.
if u lower the center of gravity it will perform way better. other than that good job. i would like to see the same thing but with a lower center of gravity.
yes. Lowering the CoG is not necessarily a good idea in a dynamic equilibrium system. Ideal CoG depends on the speed and acceleration at the wheels and the sensitivity of the tilt sensor. You need to tune it accordingly. Higher needs better sensing but is more forgiving of coarse motors. Lower will allow slower motors but they need to react a lot quicker.
I don’t get those ‘lower the center of gravity’ remarks, the whole thing is about balancing, if you want stability you could just add 2 more wheels, or no wheels and a flat surface, the point it balancing and the imbalance of the basic setup is part of it.
The best thing to do would be to find your local engineering college and enroll in their class on signal processing and system control. Then enroll in their graduate-level class on feedback control systems because I’d be surprised if anyone got this working reliably without some advanced control theory underlying it all.
Raising the center of gravity will create a longer pendulum arm and a more easily controlled system because of the longer time constant.
Try it yourself:
Try balancing a 12″ ruler on your hand, then try balancing a yardstick. If you’re feeling really cocky, then try balancing a toothpick. You’ll get the idea ;)
I must agree, the higher the robot the better. So batteries must be at the highest point. Try it with a short and a long broom stick (i mean te tool ur mom uses to clean the house) on ur hand. the longest stick will be the easiest to maintain in balance. The more weight at a higher point, the higher the inertia of the broom (robot) will be. So the slower it will fall. Which makes it more easy to balance the robot.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)