Building a hobby robot with surplus electronics parts |
"bent machine labs: Desire is our one true engine." (TM.) |
A person can get hobby robot walker kitsWhen you're walking around, you have a pretty good idea of where the ground is. All my robot knows is that it's sending timed signals over these wires to things that don't respond. (Floor?) It's only by design that the signals move motors which move the legs that make the robot move across the floor or turn.Figuring out how to get a robot walking is interesting. The control freak in me insisted that a walker wouldnąt work without inclinometers on the chasis, touch-switches on the feet, and angle-measurement hardware on all joints. The "just get going" side of me wanted to just get going. I agonized over this for months. I guess what it comes down to is balance and timing. Not "balance" as in the opposite of falling down. More the kind of balance one needs with any dynamic system. For example, starting an engine: Too little fuel - won't catch. Too much fuel - flood the engine. Bad timing? It'll stall. In dynamic systems it's all about balance and timing. Just a quick note here to tell the world that I've started a robot vacuum cleaner news and reviews site. | |
|
Thought 1: It's better to watch something walk than to try & figure out what you would do. No joke. Ever try to keep track of where your arms and legs are while crawling around on the floor? I have. Didn't help at all. Except maybe to cure some disbelief from having thought about it too much. "OK then! This IS possible." Watching movies of other walkers helped quite a bit. |
|
Thought 2: Walking is dynamic Part I (a.k.a. It all happens so fast. I feel sleepy.) The number of variables present in walking are innumerable, and some of them aren't really obvious until you've got something together that's trying to do it. You can put accelerometers, touch-pads, stop switches, torque and angle measuring hardware on every joint, and make sure your machine always has 5 feet on the ground at all times, but you might also find yourself building a huge software problem. It might be better to find a system that works with the least possible fuss first, and then work on control as you see fit later.
|
|
Thought 3: Walking is dynamic Part II On a BEAM site I found somebody who said something like "Walking is like falling where you don't hit the ground." The first translation of this might be: "Don't be so worried about staying upright that you can't walk." A second might be: "The less feet you have on the ground at a time the better." The second translation points out something I'm still working on.
|
|
Thought 5: To start, go where everybody has gone before. While doing research on this project I noticed that most of the 4-legged walkers I could find basically used the same gait, and for that matter, it was a modification of a simple gait used by a lot of legged creatures with four or more legs. First off, I programmed this gait and found that it worked. Then I tried some variations on it, such as switching the leg movement order. No go. I'm still working on other gait ideas, though - mostly based on thought #7, below.
|
|
Thought 6: Foot design is important My initial foot design was a disaster. Depending on the leg design, there are three things one should consider. a) There should be as little friction as possible between the floor and the foot when lifting or lowering the leg. b) There should be a good amount of friction between the floor and the foot when striding, but: c) There will be some slop where the legs won't all move the same way all the time, so they will need to be able slide a little. For my design, these little do-dads had to be added.
|
|
Thought 7: Unlike robot arms, maybe legs don't exactly have to be twiggy. The idea with a robot arm is that you want as little weight on the thing as possible. That's so you cut your inertial forces when the thing is changing direction or stopping. Also, anything on the arm is just more weight your robot is going to have to lift. No so with legs, really. There's probably a good balance, but with the gaits we use, there is an intrinsic stability built in as a direct result of conservation of momentum. You can test this out by throwing a basketball while seated in a chair that rolls. The change of momentum in the ball will push against you, and you will roll in the opposite direction. In the same way, at the beginning of a stride, the act of moving a leg forward actually pushes the body's center of balance backwards (onto the three legs that are still on the ground.) This shifts the center of balance enough that if my robot tries to walk in slow motion, it will fall down because the change in momentum isn't helping out enough.
|
|
Thought 8: Maybe a little flex is good. I used 1/8" acrylic for my main chasis and it flexes enough that the robot has to lift a leg more than a quarter inch to get it off the ground. This bugs the neat freak in me, but then I think about a stiff chasis design and how the legs basically bang into the floor when they return to it. Repeated impacts without any give? Ouch. Once again, maybe a good balance.
|
Yeah it's cool. Cool. Walking robots are cool. Make a walker today!
| |
| |
As always, I hope somebody somewhere finds this info useful. More fun to come!
|
Everything copyright, 2000 Dave Benz |