Lego Mindstorms NXT 2.0
Encyclopedia
Lego Mindstorms NXT 2.0 is the newest set from LEGO
Lego
Lego is a line of construction toys manufactured by the Lego Group, a privately held company based in Billund, Denmark. The company's flagship product, Lego, consists of colorful interlocking plastic bricks and an accompanying array of gears, minifigures and various other parts...

's Lego Mindstorms
Lego Mindstorms
The LEGO Mindstorm series of kits contain software and hardware to create small, customizable and programmable robots. They include a programmable 'Brick' computer that controls the system, a set of modular sensors and motors, and LEGO parts from the Technics line to create the mechanical...

 series, launched on August 5, 2009 at the Lego
Lego
Lego is a line of construction toys manufactured by the Lego Group, a privately held company based in Billund, Denmark. The company's flagship product, Lego, consists of colorful interlocking plastic bricks and an accompanying array of gears, minifigures and various other parts...

 Shop in the U.S. The set contains 619 pieces, including a new sensor that can detect colors. It is priced at approximately 280 US $ or 230 £
Pound sterling
The pound sterling , commonly called the pound, is the official currency of the United Kingdom, its Crown Dependencies and the British Overseas Territories of South Georgia and the South Sandwich Islands, British Antarctic Territory and Tristan da Cunha. It is subdivided into 100 pence...

.

Features

  • The most innovative is the new software that has a sound editor. This may record any sound and then program the NXT Brick to play the sound previously recorded.
  • With the image editor you can upload a picture to the NXT Brick and when you download the picture to your NXT this will appear on the screen.
  • Includes 619 pieces (Including motors
    Electric motor
    An electric motor converts electrical energy into mechanical energy.Most electric motors operate through the interaction of magnetic fields and current-carrying conductors to generate force...

     and sensors) also Lego Technic parts/pieces
  • 1 RGB Color Sensor: Allows the robot to distinguish between six colors: White, black, yellow, red, green and blue
  • Includes 1 Ultrasonic sensor: Allows the robot to judge distance up to eight feet
  • Includes 2 Touch sensors: Lets the robot react to touch
  • Includes 3 servo motors: Allows the robot to interact with the environment
  • Includes the NXT Brick: The programmable core that reads the sensors and controls the motors
  • Capable of bluetooth
    Bluetooth
    Bluetooth is a proprietary open wireless technology standard for exchanging data over short distances from fixed and mobile devices, creating personal area networks with high levels of security...

     connections with a computer or up to three other NXT Intelligent Bricks
  • Includes a zamor sphere launcher/ball shooter and comes with 12 balls with four colors: Yellow, red, green and blue
  • Includes a Test Pad for testing out your robots
  • Includes 7 connector cables for linking motors and sensors to the NXT

Models

All these models can be programmed in different ways. The following are examples:
  • Robogator: Like an alligator, it snaps its jaws at objects in the way.
  • Shooter Bot: A robot that launches balls quickly if it detects movement.
  • Color Sorter: Separates the different colors of balls into different trays.
  • Alpha Rex: A humanoid robot that can walk forward, backward, turn, talk, grab things, see, and even dance! Alpha Rex was redesigned for this release.

The box also has 10 models built from download-able building instructions from the Lego Mindstorms Official Webpage

Programming

Very simple programs can be created using the NXT Intelligent Brick itself. In order to create larger, more complex programs, programming software on a PC is required. The standard programming software is NXT-G, which is included in the package. Third-party programming software is also available, some of which is listed below:

NXT-G

NXT-G is the programming software included in the standard base kit. It is based on LabView
LabVIEW
LabVIEW is a system design platform and development environment for a visual programming language from National Instruments. LabVIEW provides engineers and scientists with the tools needed to create and deploy measurement and control systems.The graphical language is named "G"...

 graphical programming. It features an interactive drag-and-drop environment. It is not useful for writing programs that are very long as the software tends to crash and run sluggishly when writing long programs, even on powerful PCs.

LabVIEW Toolkit

NXT-G is powered by LabVIEW
LabVIEW
LabVIEW is a system design platform and development environment for a visual programming language from National Instruments. LabVIEW provides engineers and scientists with the tools needed to create and deploy measurement and control systems.The graphical language is named "G"...

, an industry standard in programming. Created by National Instruments, LabVIEW uses data flow programming to create a virtual instrument. To allow for more advanced programming, in the graphical sense, National Instruments released a Toolkit for the NXT. Version 1.0 came out in December 2006. Since its release, several bugs have been found and new sensors have been created. While the toolkit does allow for the creation of new sensors, National Instruments has yet to formally release an update.

Lego::NXT

Lego::NXT provides an API between Perl
Perl
Perl is a high-level, general-purpose, interpreted, dynamic programming language. Perl was originally developed by Larry Wall in 1987 as a general-purpose Unix scripting language to make report processing easier. Since then, it has undergone many changes and revisions and become widely popular...

 and NXT.

Ada

A port of GNAT is available for the NXT. It requires nxtOSEK to run. The port includes Ada bindings to the NXT hardware and nxtOSEK.

Next Byte Codes & Not eXactly C

Next Byte Codes
Next Byte Codes
Next Byte Codes is a simple language with an assembly language syntax that can be used to program Lego Mindstorms NXT programmable bricks. The command line compiler outputs NXT compatible machine code, and is supported on Windows, Mac OS and Linux...

 (NBC) is a simple open-source language with an assembly language
Assembly language
An assembly language is a low-level programming language for computers, microprocessors, microcontrollers, and other programmable devices. It implements a symbolic representation of the machine codes and other constants needed to program a given CPU architecture...

 syntax that can be used to program the NXT brick.

Not eXactly C
Not eXactly C
Not eXactly C, or NXC, is a high-level programming language for the Lego Mindstorms NXT. NXC, which is short for Not eXactly C, is based on Next Byte Codes, an assembly language. NXC has a syntax like C. The IDE for NXC is the Bricx Command Center....

 (NXC) is a high level open-source language, similar to C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

, built on top of the NBC compiler. It can also be used to program the NXT brick. NXC is basically NQC for the NXT. It is the most widely used third-party programming language.

RobotC

RobotC
Robotc
Robotc is an Integrated development environment targeted towards students that is used to program and control LEGO NXT, VEX, and RCX robots using a programming language based on C....

 is another programming-language based on C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

 for Vex, FIRST Tech Challenge
FIRST Tech Challenge
The FIRST Tech Challenge , formerly the FIRST Vex Challenge , is a mid-level robotics competition targeted toward high-school aged students. It offers the traditional challenge of a FIRST Robotics competition but with a more accessible and affordable robotics kit...

, and Lego Mindstorms
Lego Mindstorms
The LEGO Mindstorm series of kits contain software and hardware to create small, customizable and programmable robots. They include a programmable 'Brick' computer that controls the system, a set of modular sensors and motors, and LEGO parts from the Technics line to create the mechanical...

. It requires custom firmware in order to run.

URBI

URBI
URBI
Urbi is an open source cross-platform software platform in C++ used to develop applications for robotics and complex systems. Urbi is based on the UObject distributed C++ component architecture. It also includes the urbiscript orchestration language which is a parallel and event-driven script...

 is a parallel and event-driven language, with interfaces to C++/Java and Matlab. It also has a component architecture (UObject) for distributed computation. Urbi is compatible with many robots, including Nao (cf Robocup), Bioloid or Aibo.

leJOS NXJ

leJOS
LeJOS
leJOS is a firmware replacement for Lego Mindstorms programmable bricks. It currently supports the LEGO RCX brick and leJOS NXJ supports the NXT brick. It includes a Java virtual machine, which allows Lego Mindstorms robots to be programmed in the Java programming language. It is often used for...

 NXJ is a high level open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...

 language based on Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

 that uses custom firmware developed by the leJOS team.

nxtOSEK

To be able to write in C (programming language)
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

/C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

, nxtOSEK can be used, but that requires custom firmware too.

MATLAB and Simulink

  • MATLAB
    MATLAB
    MATLAB is a numerical computing environment and fourth-generation programming language. Developed by MathWorks, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages,...

     is a high-level programming language for numerical computing, data acquisition and analysis. It can be used to control LEGO NXT robots over a Bluetooth
    Bluetooth
    Bluetooth is a proprietary open wireless technology standard for exchanging data over short distances from fixed and mobile devices, creating personal area networks with high levels of security...

     serial port (serial port communication is part of the base functionality of MATLAB) or via a USB connection; for example using the RWTH - Mindstorms NXT Toolbox (free & open-source).

  • Simulink
    Simulink
    Simulink, developed by MathWorks, is a commercial tool for modeling, simulating and analyzing multidomain dynamic systems. Its primary interface is a graphical block diagramming tool and a customizable set of block libraries. It offers tight integration with the rest of the MATLAB environment and...

     is a MATLAB-based environment for modeling and simulating dynamic systems. Using Simulink, a user can design control algorithms, automatically generate C code for those algorithms, and download the compiled code onto the LEGO NXT.


MATLAB and Simulink code for NXT programming is freely available.

Lua

pbLua is an implementation of the Lua programming language
Lua programming language
Lua is a lightweight multi-paradigm programming language designed as a scripting language with extensible semantics as a primary goal. Lua has a relatively simple C API compared to other scripting languages.- History :...

, a general purpose scripting language, for Lego Mindstorms.

FLL NXT Navigation

FLL Nxt Navigation An open source program to help navigation on the FLL competition table.
Uses NXT-G and .txt files to write programs.

ruby-nxt

ruby-nxt is a library to program the NXT for the Ruby
Ruby (programming language)
Ruby is a dynamic, reflective, general-purpose object-oriented programming language that combines syntax inspired by Perl with Smalltalk-like features. Ruby originated in Japan during the mid-1990s and was first developed and designed by Yukihiro "Matz" Matsumoto...

 programming language. Unlike the other languages for the NXT the code
isn't compiled to a binary file. Instead the code is directly transmitted to the NXT via a bluetooth
Bluetooth
Bluetooth is a proprietary open wireless technology standard for exchanging data over short distances from fixed and mobile devices, creating personal area networks with high levels of security...

 connection. This method of execution is significantly slower than executing compiled code directly.

Robotics. NXT

Robotics.NXT is a Haskell
Haskell (programming language)
Haskell is a standardized, general-purpose purely functional programming language, with non-strict semantics and strong static typing. It is named after logician Haskell Curry. In Haskell, "a function is a first-class citizen" of the programming language. As a functional programming language, the...

 interface to NXT over Bluetooth. It supports direct commands, messages and many sensors (also unofficial). It has also support for a simple message-based control of a NXT brick via remotely executed program (basic NXC code included).

See also

  • Lego Mindstorms
    Lego Mindstorms
    The LEGO Mindstorm series of kits contain software and hardware to create small, customizable and programmable robots. They include a programmable 'Brick' computer that controls the system, a set of modular sensors and motors, and LEGO parts from the Technics line to create the mechanical...

  • Lego Mindstorms NXT
    Lego Mindstorms NXT
    Lego Mindstorms NXT is a programmable robotics kit released by Lego in late July 2006.It replaced 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 . It comes with the NXT-G...

  • Lego
    Lego
    Lego is a line of construction toys manufactured by the Lego Group, a privately held company based in Billund, Denmark. The company's flagship product, Lego, consists of colorful interlocking plastic bricks and an accompanying array of gears, minifigures and various other parts...

  • Robots
  • Dexter Industries
    Dexter Industries
    Dexter Industries is a third-party developer best known for their sensors which support the Lego Mindstorms NXT system. Dexter Industries has several products that relate specifically to the Lego Mindstorms NXT systems...

    - Sensors for the LEGO MINDSTORMS NXT.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK