Lego Mindstorms NXT
From Wikipedia, the free encyclopedia
Lego Mindstorms NXT is a programmable robotics kit released by Lego in July 2006 [1]. It replaces the first-generation Lego Mindstorms kit, which was called the Robotics Invention System. The base kit ships in two versions: The Retail Version and the Education Base Set.
The main component in the kit is a brick-shaped computer called the NXT brick. It can take input from up to four sensors and control up to three motors, via cables very similar to but incompatible with phone cords. The brick has a 100x64 pixel greyscale LCD display and four buttons that can be used to navigate a user interface using hierarchical menus. It also has a speaker and can play sound files at sampling rates up to 16 kHz. Power is supplied by 6 AA batteries in the consumer version of the kit and by a rechargeable battery and charger in the educational version.
Very simple programs can be written using the menu on the NXT. More complicated programs and sound files can be downloaded using a USB port or wirelessly using Bluetooth. Files can also be copied between two NXT bricks wirelessly, and some mobile phones can be used as a remote control.
The kit includes three identical servo motors that have built-in reduction gear assemblies and can sense their rotations with one degree accuracy. The kit also includes four sensors, each with a different capability. The touch sensor detects whether it is currently pressed. The light sensor detects the light level in one direction, and also includes an LED for illuminating an object. The sound sensor has a microphone and can be used to detect a sound's amplitude (loudness). The ultrasonic sensor can measure distances and detect movement.
The retail version of the kit includes software for writing programs that runs on PC and Macintosh personal computers. The software is based on NI LabView and provides a visual programming language for writing simple programs and downloading them to the NXT Brick. It can connect using USB or Bluetooth, except that Bluetooth is not supported on Intel Macintoshes. For the educational version, the software is sold separately under different software licenses: Personal, Classroom, Site.
Contents |
[edit] NXT Brick
- 32-bit ARM7 main microprocessor
- 256 KB flash memory
- 64 KB RAM
- 8 bit Atmel AVR microcontroller @4MHZ
- 4 KB flash memory
- 512 Bytes RAM
- 100×64 pixel LCD matrix display
- Can be programmed using a PC or Mac
- Users create a program with new software, powered by LabVIEW from National Instruments
- A single USB 2.0 port
- Bluetooth wireless connectivity, to transfer programs to the NXT wirelessly or offer ways to control robots remotely (mobile phones and possibly by PDA's)
- 4 input ports, 6-wire cable digital platform (One port includes a IEC 61158 Fieldbus Type 4/EN 50 170 (P-NET) compliant expansion port for future use)
- 3 output ports, 6-wire cable digital platform
- Digital Wire Interface, allowing for third-party development of external devices
[edit] Parts
Included in the base kit:
- 519 LEGO Technic parts (and Bionicle parts, including Visorak pincers)
- Three servo motors
- Ultrasonic distance and movement sensor
- Sound sensor, with sound pattern
- Light sensor, detecting light intensity
- Touch sensor (press/release/bump detection)
Some parts are sold separately. [2]
[edit] NXT-G
NXT-G is the programming software that comes bundled with the NXT. There are two different programming interfaces, one with the retail kits and the educational kits (basic programming: how to program sensors, etc.) There are several pros and cons to using this software, some of which are listed here:
Positives:
-
- Can transfer data via Bluetooth or USB cable.
- Easy to Use, drag and drop, graphical environment.
Negatives:
-
- The programs executed on the NXT can be much larger than when compiled by another third party programming language.
- Programs take substantially longer to load than other third party programs.
[edit] Firmware and specifications
Lego has released the firmware for the NXT Intelligent Brick as Open Source. [3]
Several developer kits are available that contain documentation for the NXT:
- Software Developer Kit (SDK), includes information on host USB drivers, executable file format, and bytecode reference
- Hardware Developer Kit (HDK), includes documentation and schematics for the NXT brick and sensors
- Bluetooth Developer Kit (BDK), documents the protocols used for Bluetooth communications
More information can be found on either the Lego Mindstorms website or on the Lego FAQ website.
[edit] References
- Bagnall, Brian. Maximum LEGO® NXT: Building Robots with Java Brains Variant Press. 2007. ISBN 0-9738649-1-5