January 04, 2006

World's best Robot Kit

Ever tried to make a robot?

A few months ago Anthony started to have an obsession with robots. Robot movies became his favorite choices; paper models of robots started to appear; and robot drawings filled the house. (Apparently bad-guy robots always look like the Incredibles OmniDroid, and good-guy robots look like Castle in the Sky robot soldiers.)

"I'm going to make my own robot," he told me. So, after our great experience learning to program in Python, I figured this would be a good time to try learning about robotics with some robot kits. We have tried building a whole variety of different robots over the last few months.

My takeaway: the best robot kit - it is far and away the best - is Lego Mindstorms. But it takes a bit of time to learn how to enjoy it. The key thing you need to do is to read several of the Syngress books on Mindstorms, and a few extra parts can help too...

Back in 1998 when Lego first released the Mindstorms robotics kit, I bought one for myself. I assembled one or two of the example robots and played around with it a bit. And since then, it's been sitting in its box, unused. It was too hard.

For me, writing simple software for a robot is not a problem, but the real challenge is mechanical: even the basics of building a robot that doesn't fall apart is a challenge for the uninitiated. It can be frustratingly hard to build a machine that works as well as you imagine it should, even with an excellent system like Mindstorms. So on the shelf it sat - for several years.

Anthony's robot obsession started with a birthday present he received, the Robotic T-Rex book-box kit. (Have you noticed these bookshelf science kits that fit in a book-shaped box? They seem to be an extension of the Klutz phenomenon and turn your local Borders into an educational toy store.) The "Robotic" T-Rex is a simple battery-operated biped with flashing LED eyes and no feedback. Anthony's T-Rex would turn slightly to the left with every step, and so he was convinced that it could actually "see" to avoid obstacles (until we did some careful experiments).

Soon Anthony wanted a robot that could really see. So our next robot adventure was the OWI Spider. This is a walking obstacle-avoider that works very well. But although Anthony had a ball playing with it (setting up obstacles for it to avoid), it was way too hard for Anthony to really participate in building it. And when Anthony wanted to customize it, there wasn't really a lot of room for creativity.

After some reading on the net I tried building a few other soldier-and-circuit board robot kits. My absolute favorite kit in this genre is the relatively new Solarbotics TurBot. It is a two-legged, rolling, tumbling insectoid-acting light-seeking, obstacle-avoiding little robot monster. It drives its two legs with an incredible amount of power given its four AA batteries, and it can haul itself over obstacles larger than itself in search of the brightest part of the room. When its legs get entangled (e.g., on a table leg), it detects the problem after a few seconds and reverses. Watching the thing move is memserizing. (I have posted a video of the Turbot here.) A few weeks ago Anthony and some friends put the Turbot in a "robot war" arena with a JCM Cybug to watch them tear each other apart. Really, the Turbot tore the Cybug apart... I have been meaning to get more Turbots to make because they are so fun to watch. But, like the Spider, the assembly is difficult and Anthony isn't really able to participate. (Although he did get the chance to try his hand at soldering a joint or two.)

The Logibloc Robot promised to be a customizable build-your-own kind of robot; the advertised age range is right for Anthony. But it turned out to be too inflexible to be really fun - and it didn't really work very well.

So in the end, we came back to Mindstorms. My old Mindstorms 1.0 software (and the old Serial IR transmitter) didn't seem to work on my 2005 computers, so I ordered a new Mindstorms kit with a USB transmitter to play with. (Fortunately, everything is still compatible - this is the genius of Lego - and my old Mindstorms 1.0 RCX still brick works with all the new parts, the new firmware, and everything.)

And how fun! I can unequivocally say: Mindstorms is the best. For the amount of flexibility and power it gives you, a Mindstorms kit is far more economical than the solder-and-circuit board robots, and you can easily take apart your robots when you're done and make up new ones. And best of all is that Lego scales up: it is fun for four-year olds and it is fun for adults. Piper has a good time just hooking up axles and "spinny things" to the Lego motors and attaching them to a simple battery box. Anthony has fun modifying Mindstorms programs or making crazy contraptions out of gears. And Dad has fun trying to replicate the amazing mechanical robots that have been built by other Mindstorms fanatics.

Why am I having more fun with Mindstorms in 2006 than I did in 1998? A few reasons:

  1. I have read the right Mindstorms books. More on the books in a second.
  2. I have two Mindstorms kits. So I have extra motors, extra sensors, and lots of extra pieces. Having more pieces actually makes it easier for a beginner, because you don't need to know a lot of clever tricks to make a motor do more than one thing at once, for example.
  3. I ordered the Mindstorms remote control, which is really a key thing for having fun. It means you can drive your robot around to test the mechanics before you try programming it. (And it makes a fun R/C toy.)
  4. I skipped straight to programming using NQC rather than using Lego's visual programming tools. I think programming in text is easier, and there are even nice IDEs for NQC available (I am using MacNQC on OS X).
  5. And finally, of course, it is much more fun to play with it together with my kids than all alone. They are delighted by nearly everything.

Reading the books is important. The three Mindstorms books that I would highly recommend are

  1. Building Robots With Lego Mindstorms by Mario and Giulio Ferrari and Ralph Hempel. This book doesn't give you any explicit directions for making robot models, but it is totally full of "Lego Physics" principles, that is, how to make a robot strong and light; how to make the moving parts work together well, and so on. The simple observation of Lego technic geometry, that is, the fact that the distance spanned by two studs equals the height of one brick plus two plates - was an eye-opener and a key enabler. Once you know a few things like this, it is far easier to make robots quickly and understand what you are building.
  2. For specific building instructions, 10 Cool Lego Mindstorms Robotics Invention System 2 Projects was perfect. It shows you 10 excellent robots you can make with an amazing economy of parts. It is far harder to make a robot with few parts than a robot with a lot of parts, and every project in this book is an amazing example of minimal elegance. The book shows you that you don't need any parts beyond what comes with the RIS 2 kit to build robots with a lot of functionality.
  3. For inspiration that isn't limited by parts, Lego Mindstorms Masterpieces is a compilation of amazing projects (for example an adding machine where all the digital logic is driven by Lego pneumatic pistons and switches). This book actually includes detailed building instructions for every project, but the projects require a large number of extra parts that put them out of reach of practicality (for me). I probably will not build anything directly from this book, but will play with just building the robot subcomponents or smaller versions instead.

There are rumblings that Lego has been phasing out Lego Mindstorms despite the system's general awesomeness. If you're interested in robots, you may want to pick up a kit or two in case Lego decides to discontinue it.

Posted by David at January 4, 2006 10:55 AM

There's a non-profit in Cambridge, MA called Machine Science (www.machinescience.org) that has created a really great kit & curriculum using a microcontroller on a breadboard. The online curriculum is very nice and the CODE EDITOR & COMPILER is all online (a java applet). Only downside of course is that means you have to be online to use it. I've been working with middle and high school kids on it and it has a lot of potential.

Posted by: Kevin at January 6, 2006 10:30 AM

hi,could you told me how to make a simple robot ?
thanks for reading my letter
Jesus bless you

Posted by: cris at August 7, 2006 10:12 AM

Lego has come out with a new mindstorms called NTX or somehting like that. it has updated sensors and has a new ultrasonic sensor. you should check this out if you are still interested

Posted by: al at November 10, 2006 07:41 AM

How old is Anthony? I found your site through a google search. I'm a 20 year old college student, and I want to learn about embedded systems. Any ideas? Thanks

Posted by: louko at April 25, 2007 08:22 PM
Post a comment

Remember personal info?