December 02, 2007

Book Review: The Unofficial LEGO MINDSTORMS NXT Inventor's Guide

The really neat thing about David J. Perdue's enthusiastic and systematic starter guide for Lego robot fans - The Unofficial LEGO MINDSTORMS NXT Inventor's Guide - is that it incorporates a number of practical, essential things you need to know. But it does this without making the task of building robots feel intimidating. In other words, its a book that makes you want to get off your chair and start building Lego inventions.

A lot of the book's readable style comes from the progressive way in which the material is presented. Perdue starts by introducing the various parts in the kit and giving an overview of how these are put together and programmed. This is followed by an introduction to the various pieces - a breakdown of the NXT, servo motors and various types of sensors. By digressing briefly to explain how these parts may be used, this chapter gets your juices flowing.

Just as importantly, Perdue then lays out the physical TECHNIC pieces and explains how these are used. This gets specific - various pieces and their capabilities are explained, giving you the ability to address them using specific terms (clearing up a lot of communication if you are building this with a friend - or a child).

Later, there are short paras with pictures on how to combine these pieces to create standard constructs in robots - wide beams, corners, angles, dynamic structures, etc. This bit of practical advice presented in menu form up front is a great idea because later as you are building the robot, you get to recognize the design pattern you are using.

Finally a discussion on constructing gears to transfer motion and an introduction to the NXT-G programming language brings you to the invention projects. The walkthroughs on the projects are fairly engaging to follow. There are step by step instructions how to build the physical robot.

The accompanying pictures are pretty clear but I've always had problems with the progressive building steps. In this book there are a couple of embellishments that really helped. First, each step has a picture and count of the parts added in that step. And sometimes there are arrows to show how the insertion of those pieces takes place. In fact these help so much that I'd have liked the arrows to be there in every picture and perhaps formatted in a different color for clarity. In more complicated robots, portions are built separately and then put together in an effort to organize the complexity.

In terms of the accompanying programming, Perdue simply shows the program in a breakout figure. The program is commented briefly enough that you know what various blocks might be doing. You can download all the programs for the robots from Perdue's web site. This is a cursory approach but its forced by the limitations of having to explain a graphical program.

There are seven major bots in all - there are robots with wheels (zippy-bot), legs (guard-bot) and even one with a turntable using an ultrasound sensor (golf-bot).

Also be sure to check out the Amazon site for the book where Perdue has added pictures of selected bots with notes.