The NXT Toolkit
The Lego Mindstorm NXT kit which was introduced in August 2006 as an upgrade of the previous RCX kit. It can be used to construct a multitude of robots and includes a microprocessor to control the machine you built. You can program it in many languages, including Java, a modern, relatively simple programming language.
The brain of this kit is the NXT Intelligent Brick (“Brick”). As for the technical information: it has a 32 bit ARM processor running at 48MHz, with 64KB of RAM and 256 KB of flash memory. It also has a separate 8 bit AVR processor, running at 8 MHz, to control the servo motors and rotation sensors to guarantee the accuracy of the motor operations. It includes three ports for independently controlling motors and sensor ports to connect up to four sensors.
A simpler way to think about the brick is as a mini computer without a keyboard, but with three motor ports, labeled A, B, and C, and four sensor ports, labeled S1, S2, S3, and S4. As a “window” on its mind it has a small monochrome LCD screen, together with four buttons to allow you to make various choice. p>
Since the brick does not include a keyboard, we need to program it using a PC. Once a program, or a set of instructions, is complete, we can download it from the computer to the Brick usually using a USB cable. The brick then execute the instructions on its own.
Besides the brick, the NXT kit also comes with 400+ Lego pieces, three servo motors, and several sensors:
- Touch sensor: the most basic sensor with a simple
switch, similar to a button.
- Light sensor: measures the intensity of light, visible
or not, that enters its tiny “eye”. Also comes with an LED which lights up
in front of the sensor so it can operate in active (LED on) or passive (LED
- Ultrasonic sensor: produces a sonar cone to measure the
distance between it and an object. It can measure up to 255 cm, and is
accurate between 6 to 180 cm.
- Sound sensor: measures the loudness of sound in
decibels. It can be used to detect clapping.
- The Motor: a combination of gear reduction and feedback
sensing to rotate and measure the degrees it rotates.
Besides these sensors supplied with the NXT kit you can purchase additional ones such as a compass sensor, color sensor, acceleration Sensor, etc. from different vendors. In addition to the "brick" and the sensors there are several hundred parts that you can use to build concrete robots. The picture below shows some of them, and the number of copies of each part. This part list refers to the "commercial" NXT kit; there is also an "educational NXT kit" which has some different parts. For the purpose of this manual it does not matter which NXT version you have.
The educational version comes with a simple but functional box to hold and organize the various pieces. For the commercial version you can purchase a number of cases. A very nice one can be purchased from http://www.roboticslearning.com/: it neatly organizes all parts in a convenient carrying case, including labels for each compartment that show which parts go in what spot.
Note: Many Lego parts are measured in "holes" instead of inches or cm. For example, in the picture below the axle is a "size 8" whereas the beam is a "size 9".
All parts are very cleverly designed to fit together well if you just combine the correctly-sized parts. There are many detailed plans available for how to combine parts to build a particular machine or robot, but you can just try to come up with your own ideas. However, for your first robot you probably do want to follow some blueprint, so tat you can get the hang of it without getting stuck early.
Another important part of your kit is the power source. By default the NXT operates on battery power. The educational kit comes with a reusable battery and a charger, for the retail version you need to purchase one separately (highly recommended). Make sure your battery is fully charged by using the electric charger. When you plug it in, a red light will glow. When the battery is fully charged, the light will turn green.
Next: setting up the software