The Rock Stupid Rover

Maybe you thought the Microscout was the cheapest entry in the Mindstorms line. Think again! With no more computing power than 6 AA batteries this rover wanders around without getting stuck. It even has three programs, every one of which is more useful than all 7 of the Microscout programs put together! And no annoying sound effects!

This robot is the result of putting the 24t end of a new-style differential into the inner teeth of a turntable. It's immediately clear that you could drive the 16t side to steer and power an axle clear through the inside of the differential to drive a wheel below. When I started thinking about what would happen if instead you drove it like a differential, the rock stupid rover was born!

Normally you drive the diff cage itself and the output is on the axles. In this application one of the axles is powered, and the outputs are the other axle and the diff cage. In this arrangement, the diff cage is usually stalled, and all of the power is transfered to the other axle, which drives the front wheel. If the wheel stalls (because the robot body is hung up on an obstacle) the diff cage turns instead. Since its 24t end is meshed with the inside of the turntable, this causes the whole front wheel to steer.

So the rover moves until it hits something, and when the front wheel can't turn the whole front fork is forced to rotate until the wheel can turn again. It detects objects by detecting the stalled front wheel (a design I've used on much more advanced robots using a rotation sensor!) and responds by turning until it can move again.

Construction Details

This robot works best on a smooth surface. You can consult the large side view or the giant front view to see how it goes together. The key construction details are:

Programming

Programming? you ask? But it's a battery box on wheels! Yes, but those wheels make all the difference. The robot goes in a straight line as long as the front wheel doesn't stall. The key to tuning this behavior is adjusting the back wheels to influence the free-rolling behavior. Intensive application development has led to the following three programs:


No Connection
With both back wheels free to roll in either direction the robot moves randomly. It rolls around in small, looping circles, not making much progress in any direction. If it bumps something it moves away a bit.
 

No Slip
With a solid rear axle the robot can barely turn because the twisting motion requires the rear wheels to turn in opposite directions. It can go mostly straight for long distances, and when the rover bumps something it turns almost exactly 180 degrees.
 

Limited Slip
Our most advanced program yet, the limited slip axle. That's two axles connected only by the smallest black rubber band (the white cylinder is for support, but does not connect the axles). The robot can roll straight with no resistance, but as it turns the twisting motion becomes harder and harder. This allows the robot to turn a little bit while still encouraging it to go in a straight line. This design tends to make curving forward progress and make small, random turns when it encounters an obstacle. Four stars!

Other Applications

If you find that the battery box isn't smart enough for your application, you could add some ratchets to this design so that driving the motor one way turns the steering (wheel stalled) and driving it it the other way turns the front wheel (diff cage stalled). This would give you a one motor design with steering. As a bonus, it can actually steer to any angle without moving and then drive in that direction.
[Ben Jackson's Home] [LEGO Raytracing Home] [Mindstorm]