Sure, Mindstorms NXT is a toy, but it is an important
toy, like a piano or a chemistry set. It's one of those items that engages an imagination and possibly opens doors to new interests. Since our future is surely to be shared with robots--it's already started happening, just look at Roomba
--those robots will need, at least initially, humans to program and maintain them. Those people, years from now, will likely remember their experiences with Lego Mindstorms.
Out of the Box
The main part of the kit is the NXT itself. It's about the size of an iPod (though a bit thicker) with a a loudspeaker, a monochrome LCD, and navigation keys on the front. This is the controller for the robot--it's brain, if you will. It has three ports on top for connecting to the servo motors and four ports on the bottom for connecting to four different sensors: Touch, Light, Sound, and Ultrasonic (see detail below).
| || |
- The NXT: the computer-controlled brain of the Mindstorms robot
- Touch Sensor: enables the robot to feel and react to its environment
- Sound Sensor: enables the robot to react to sound
- Light Sensor: can detect light and color
- Ultrasonic Sensor: allows the robot to measure distance and react to movement
- Servo Motors: ensures the robot moves with precision
The set includes Ethernet-like wires for connecting all of these to the NXT, as well as software and a basic USB cable for downloading programs from your computer. Then there are all the Lego parts, hundreds of them, and most are very small. It would be a good idea to get a plastic organizer for the different parts--it would not only make construction and storage easier but also part loss less likely.
Hitting the Bricks
The instructions for MNXT are simple, illustrated, and they gently take the new user on an introductory path through the system. The quick start guide promises a 30-minute robot building and programing intro, though for me it was closer to 50 (I'm a little old and slow). It starts with a simple diagnostic routine which shows you how to test the function of all sensors, then proceeds to step-by-step picture instructions for building a basic first robot. It's about as complex as building a piece of Ikea furniture.
Programming is the real gem in this system. It has a drag-and-drop interface using pre-programmed objects that you pull from a palette and snap to other objects.
Next, I installed the software. Be sure to check the system requirements (below). The software is well-designed and very intuitive. It comes with built-in video instructions on how to create your first simple program and download it to your NXT.
Bringing It To Life
Programming is the real gem in this system. It has a drag-and-drop interface using pre-programmed objects that you pull from a palette and snap to other objects. Each object is configurable. For example, the Sound object brings up a sub-window that allows you to choose between a tone and a list of sound files, set the volume, set duration, and so on. Little Lego bricks between the objects reinforce the idea that building a NXT program is like building a Lego model. Programming this way is much easier than, say, creating a web page from scratch. Lego even offers a software development kit for getting deeper into the programming.
| Mindstorms NXT "challenges" from top: Tribot, RoboArm, and Spike. |
There comes a genuine thrill from seeing something you've created--even something simple and silly as my first program--come to life in a robot. It's akin to seeing yourself on TV for the first time. I played that program a dozen times.
The software contains "challenges," which are similar step-by-step instructions for creating and programming more complex models, such as a robotic arm that can "perform simple tasks and react to different colors." Each challenge is divided into smaller tasks with step-by-step building, programming, and testing guides for each task.
Accessing your latest program once it's downloaded to the NXT is pretty easy. Lego has set it up so that you can execute it by pressing the big orange center button four times in a row after start-up. I was surprised to find out that you don't need a computer to program the NXT. You can program directly into the NXT Program submenu.
The NXT also has built-in Bluetooth wireless technology. If your computer has Bluetooth, you can test and download programs to the NXT without connecting the USB cable--a really handy feature if you're programming a complicated dance routine and you don't want your robot getting tripped up in cables. If your phone or PDA has Bluetooth, you might be able to use your device to control the robot. Best of all, Bluetooth allows you to create a network of up to three NXT devices. Think of the possibilities: three NXTs plus three sets of blocks and sensors equals bigger, more complex robots.
My one and only complaint is that I wish the sensors had more "studs," those little round parts that allows Lego bricks to interlock. --Porter B. Hall