I feel that the Zero prototype worked surprisingly well considering how little preparation had gone into it. That being said, it's useless as anything but a cute toy.
I'm not setting the bar very high for considering this project a sucess though. I just want it to be useful as a simple Arduino or RPi robot platform, and to be easy to build using servos, 3d printed parts and m3 screws.
Really, the main thing missing for project success, is directional steering. Landbeest doesn't need to be fast or nimble or able to turn on a dime. But it must be able to get to where it's going eventually.
The second requirement is simplicity. The Zero prototype fits that requirement just fine. But a steerable Landbeest will inevitably be a bit more complex. Complexity arises from two main factors: the number of sevos, and the number of mechanical parts. In many cases by using more servos, the mechanical complexity can be decreased, and vice versa.
I've dreamed up a number of ways to proceed with the project but now is the time to stop procrastinating. In this log I'll build a little decision tree to justify to myself that I'll be doing the "right thing wrong", rather than the "wrong thing right".
How to implement steering
I really like the leg mechanics of the Zero prototype for it's simplicity. Only one tiny drawback: there's no possible sequence of servo action that will make it turn left or right. This basically has to do with the fact that opposing fore- and hindlegs are mechanically coupled and moves in lockstep.
One solution would be to ditch the current movement scheme and just resort to control each leg with a dedicated servo.
I'd still be using the same hinged triangular legs, only now they'd be mounted symmetrically and controlled independently. Thus the "feet" are still restricted to a simple pendulum motion in one plane only. As far as I can visualize it, turning would be possible but cumbersome. You'd be able to pivot incrementally by keeping two diagonal legs raised while swinging the other pair in opposite directions (then do a little leg sequence to reset and keep pivoting). This would only work effectively if legs where spaced apart to certain dimensions though. And while I'm sure turning while moving forward is possible I can only see it being an ugly and tedious grind.
Another solution would be tank control —the same way two-wheel drive robots do it. This essentially means I would mount two identical Landbeest modules side by side in conjoined twin mode.
Boom! Double the complexity: eight legs, four servos —ridiculous! And turning would be as graceful as with a WW2 tank. Nope. No way I'm doing that.
Third solution. Do you ever ask yourself: how would a cat with four peglegs execute a turn?
You don't? Well, I think it would do it by just bending its waist a bit while walking. So if I introduce a pivot point somewhere on Landbeests chassis it should be able to turn at least as well as a quadruple amputee cat. (Like I said, this project is all about setting attainable goals.)
I'm instantly attracted by this solution. If you can control the "waist" pivot, the gait won't have to change in order to do a turn. Thus I could essentially keep the current drivetrain as is. The only challenge is how to transfer linear motion across the pivot point.
I'm going with the pivoting waist on this one. It could be that I'm glossing over the "dedicated servo" method and that it has more merit than I realize. But I feel that the current drivetrain and leg movement scheme is sort of the USP of this project, so I don't want to throw it to the wayside unless I have a really good reason for doing so.
Dos servos por favor
The current prototype uses two servos. The next prototype will need another...
Read more »