May 10, 2010

Back to the Basics... in Perspective

I wanted to link to a short YT video here, a version of Claude Shannon's Ultimate Machine. This is really an amazing mechanism here, and demonstrates in a small package some amazing mechanical techniques - techniques actually very commonly seen in a lot of "real" robots and industrial mechanisms, and rendered beautifully here in LEGO (the subject is also a rather famous robot of a sort). Note that this has no NXT in it. In fact, it doesn't even have a single PF motor in it. There's no wires, no programming, and the closest it gets to a MINSTORMS solution is that it uses gears:



So why the heck am I posting about it here, in a blog dedicated to the NXT?

One of the things that's easy to overlook when working with something like the NXT is that when you have your hands around a hammer, everything starts to look like a nail. The NXT is a powerful microcomputer, that can read multiple sensors and run lots of motors, and so there's a tendency to think that's the way to solve a problem.... any problem. That's not usually the case. Sometimes, mechanical solutions will work, and work better, than some complex programmed solution. Even complex robots often depend on intricate, imaginative mechanical tricks and aspects to work right. This often seems to get lost with people when they start using the NXT (or even advanced users), and it bears repeating - look for mechanical solutions and techniques in addition to, and to support, "intelligent" functions.

This was driven home to me recently in a post on NXTasy about a maze-solving robot. This user wanted to know (more to the point, apparently wanted working NXT-G code) for a robot that would use 3 US sensors to find its way though a simple maze. Some people opinioned that the language chosen was perhaps a problem. The thread originator had even gone out and worked out a detailed truth table type structure to solve the problem... but in the rush to make a functional solution, they had apprently not noticed that there was no need to use three sensors in the case they originally wanted - two would suffice, & as a result their proposed solution was a good deal more complex than it needed to be. And to this day, the best LEGO solution I've seen to this used nothing more than a single motor, some wheels and rubber bands... and easily beat every "robotic" solution tested that day in a fairly well-respected field of competitors, RCX and NXT-based, against folks like myself and Steve Hassenplug.

Yep, it's a robotics set. That doesn't mean it's always the solution are "more sensors, more motors, more memory, more speed". Sometimes, it means the best solutions... involve more thought.

11 comments:

Tom said...

I could not agree more! There are many problems that can be solved with a little mechanical cleverness. These solutions almost always have an elegance not found in the computerized equivalents.

Menno Gorter said...

I've seen a lot of NXT-creations where the NXT was nothing more than a batterybox!

In search of clever mechanical solutions I gave myself a challenge:
Make robots with nothing more than one motor, a batterybox and two special technic elements like turntables, differentials, switches, etc. (Plus normal technic-Lego, of course.)

Two examples:
http://www.youtube.com/watch?v=5lzKTmEfRdA
http://www.youtube.com/watch?v=aADKUNb3hz8

Aswin said...

Nice post, makes you think.

Clinton said...

Wow. That clockwork machine that turns itself off is really elegant. I also really liked Menno Gorter's walking PF raprot (the second video).

Can anyone recommend any resources on making better mechanisms with Lego? Where do you go after simple gearing up and down? (Anyone have an opinion if it is easier to make complicated mechanisms with the studded Lego bricks than with studless design?)

Lastly, Brian, do you have any more details on the maze solving mechanism? I'm impressed that someone was able to express a solution mechanically that beat programmed robots!

James Floyd Kelly (Jim) said...

Clinton,

Check out these three books:

http://thenxtstep.blogspot.com/2008/08/yoshihito-isogawa-red-blue-and-green.html

Some of the most fun and interesting mechanisms I've ever seen.

Clinton said...

Jim,

ah, yes, I'd forgotten about those books. Beautiful pictures of mechanisms, with a PDF download (where they ask you to pay $10 when you can).

And, looking up the author, Isogawa yoshihito, on Amazon, it appears No Starch Press will be putting these books out with English titles in September!

Thanks for the tip!

James Floyd Kelly (Jim) said...

Glad to help - and thanks for the news about No Starch - I wasn't aware they were doing that... will have to pick them up once the books are released.

Brian Davis said...

Clinton: there are a number of interesting "stupid" designs out there. This one is an oldie but a goody:

http://www.ben.com/LEGO/rcx/rock-stupid.html

The maze runner I spoke of I don't have pictures of handy, but the idea was simple. It ran forward using a stand-off wheel on a bumper along the right side. If that wheel was rolling along the wall, it just drove forward. If there was no wall there, a rubber band could pull the entire front steering to the right, turing the corner. There was another extension in front of and slightly left of the front wheel, so that if the rover ran straight into a wall, the contact with the wall in front would pivot the front wheel to the left, turning it. KISS.

Matthias Paul Scholz said...

Brian,

good post.

One of the most important things an engineer should be capable of is keeping things as complex as required, not more (Occam's Razor).

The simple engineering solutions are the ones that have true beauty,a beauty humans are able to recognize instantly with some sort of asthetic sense we all share.

Clinton said...

Brian,

the rock stupid rover and the maze solver you described are really neat!

Pois said...

You hit it right on the nail! ;)

As for mechanical solutions, here's a LOT of 'em, 800, to be precise, Never start a project without first going to

http://kmoddl.library.cornell.edu/rx_collection.php

And do post your creations using this freeware program, that coughs up Instruction Leaflets, as a bonus:
http://www.ldraw.org/

Related Posts Plugin for WordPress, Blogger...