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.