Project 2 - Lego Walker

Since cash is a little short I decided to step into a new direction and test out some walking physics/geometry. Just so happens when I was a kid I LOVED Lego Technics kits and my wife loved her legos too. Combine the two and we have a big set of Legos to say the least. Anyhow I wanted to see if it was possible to make a nice way for servos to mount in the Legos so I could do rapid build and test scenarios for walking geometry, timing, and physics information. With that, here is my first walker, minus the walking code (a llittle trickier to write than I thought, I’ve been close once or twice though).


After this video I will be posting a video of the main pieces that mount the servos, battery, controller. The servo mounted chassis I have now is super flexible for rapid changes (an afternoon’s work as long as everything lines up right). The question is… does anyone have any links to places about quadraped (4-legged) walking physics/information?

That is a cool project - thanks for posting the video. I particularly like the way the leg linkages look…maybe they could be improved slightly to force the feet to always be parallel to the floor?

However, I am worried that it is never going to be able to walk…the difficulty with 4-legged locomotion is that if you retract one leg, your center of gravity determines whether it will actually lift off of the ground or just stay down as the entire robot tips. Unless you have some clever plan for shifting your weight around, or you make the feet really huge so that it can balance on two diagonally opposite legs, your robot will just be stuck doing push-ups. Another thing that seems to be missing is some way of independently moving legs forward and backward vs. up and down. Somehow you have to be able to do something like lifting a leg up, moving it forward, and putting it back down.

Can you stick a couple more servos on there?


Okay… thanks for the response I’m glad you looked at it.

  1. I have only 4 servos on the board right now so I have room for 2 more.

  2. the bot is actually extremely balanced with it’s big feet and I can easily change diagonally which 2 feet are off the ground. I can get the two diagonal feet almost a full inch up on call and it seems to never tip. When I built it balance was in the equation.

  3. I can make the feet more solid easily but as far as I can see I’m not getting any issues with them tipping as I have them balanced also and weighted a bit on both ends.

  4. The legs do a combination move the way it is design, basically they swing up instead of lift giving me both backward motion as well as vertical.

As I’ve said I have had it real close to walking where i actually get a step or two out of it but I am not grasping how the geometry would work in relation to the design and a walking motion. I honestly think by the end of the weekend I will have this thing walking. But you may be correct in your statement of the design flaws, we’ll know by Monday. :smiley:

I will make a better video with a farther out shot so you can see how the 4 legs work together and the diagonal lift I can achieve.


Cool project. The Maestro seems nicely integrated into the LEGO bot.

It looked like your feet were slipping on the surface where you were filming. Have you tried running it on a higher-friction surface like carpet or rubber? You might be able to modify the feet to have rubber (or some other sticky material) pads on the bottom, to minimize slippage.

- Ryan

I tinkered with sequences last night and determined paul was right, you just have to have that two axis control per leg it seems. Tore the bot apart and am thinking about some other project I might be able to do… One thing I have been wondering. Is it possible to use one of the channels of the maestro to watch the battery state of the battery pack?

You can monitor the battery voltage by connecting it through a voltage divider into a Maestro input. But watch out - if you are using one battery pack for both Vin and your servos, and Vin drops below 5V, the Maestro’s VCC will drop as well, and the level measured by the input will stay constant, so it will look like your batteries are stuck at 5V.

Instead, a better approach might be to measure the voltage across an appropriate zener diode, which will give you a number that goes up when VCC drops below 5V.