Lego Mindstorms NXTは、2006年7月末に発売されたプログラム可能なロボットや他の機械、または対話システムを組むためのレゴ社の商品セットであるMINDSTORMSの改良型。

概要 キットはサーボモーター3個、タッチセンサー2個、光センサー1個現在、グレースケールの読み取りに基づく色の識別能力を備えている。、サウンドセンサー1個、超音波センサー1個とNXT「知能」ブロックを1個、7本の接続ケーブルとUSBインタフェースケーブルを含む577個の部品で構成される。知能ブロックは異なる振る舞いを可能にするマインドストームの"脳"である。キットには同様にNXTに作成したプログラムをダウンロード可能なグラフィカルプログラミング環境のNXT-Gを含む。ソフトウェアは同様にAlpha-Rex (人型ロボット)、Tri-Bot (自動車)、ロボアーム T-56 (ロボットアーム)と Spike (サソリ)の4形態のロボットに対応した命令を備える。

モーターは回転センサーが予め組み込まれたステッピングモーターで、従来のマインドストーム用モーターよりはるかに高性能である。しかしセンサー、モーターともに接続の方式が今までのようにブロックに線が埋め込まれているのではなく、ブロックの形を完全になくした専用のジャックとなった。機能が向上した分、従来のセンサー、モーターの複数同時接続はできなくなった。

NXTの知能ブロックは48MHzで動作する32ビットのARM7マイクロプロセッサーと4MHzで動作する8ビットのAtmel AVRマイクロプロセッサを持っている。ブロックは入力ポートを4個、出力ポートを3個、64×100ピクセルLCDマトリックスディスプレイを1個、USB 2.0ポートとBluetoothワイヤレス接続を持っている。ARM7プロセッサは256KiBのフラッシュメモリと64KiBのRAMへのアクセスを持つ一方で、第二のプロセッサは(別個の)4KiBのフラッシュと512バイトのRAMへのアクセスしかもたない。接続はデジタルで、センサーと使用できるモーターポートを拡張するマルチパックを加える事が出来る。I/Oソケットで使われるコネクタはRCXで使われていたものとデザインが異なり、RJ12コネクタに似たポートを使っている。ブロックには8kHzD/Aのラウドスピーカーが組み込まれている。ブロックはAAタイプのバッテリーを6つ使用する。アルカリ電池が推奨されているが、充電式電池でも動作する。旧型となってしまったRISシリーズに比べテクニック系の部品が大部分を占め、今までなかった新しいブロックの組み合わせや楽しみが増えた。

レゴマインドストームNXTセットは小売り版と教育用の2つのバージョンで出荷されている。教育用セットのNXTブロックは充電式電池と充電器を同梱している。しかし、このキットはプログラミングソフトを含んでおらず、別売りになっている。なお、個人用、教室用、サイト用でソフトウェアのライセンスが異なる。

教育用の商品は Lego Mindstorms for Schools と呼ばれており、タフツ大学で開発され ナショナルインスツルメンツのLabVIEWをエンジンとして使っているGUIベースのプログラミングソフトであるROBOLABが同梱されていた。現状では、教育用NXTはROBOLABまたはNXTソフトウェアのどちらかを選択して、別途購入する方式をとっている。教育用とは別に、同梱されているセンサーやブロックが異なる玩具用NXTがあるが、こちらはNXTソフトウェアが同梱されている。

いくつかの開発者キットが利用可能で、NXTに対応している。 Software Developer Kit (SDK) -ホストUSBドライバの情報や実行可能なファイル形式、バイトコードのリファレンスを含んでいる。 Hardware Developer Kit (HDK) -文書とNXTブロックとセンサーの概要を含んでいる。 Bluetooth Developer Kit (BDK) -Bluetooth通信に使われているプロトコルの文書

2006年5月1日レゴは2006年8月までにNXT知能ブロックファームウェアがオープンソースとしてリリースされると公表したが、12月初頭まで利用できなかった。ファームウェアのソースはthe Hardware Developer's Kit、Software Developer's Kit、Bluetooth Developer's Kitと一緒にレゴのウェブサイトで見つけられる。

NXTのブロック 32ビットARM7 主マイクロプロセッサ @48MHZ 256KB フラッシュメモリ 64KB RAM 8ビットAtmel AVR マイクロコントローラ @4MHZ 4KB フラッシュメモリ 512Bytes RAM 64×100 ピクセル 液晶ドットマトリクスディスプレイ ウィンドウズまたはマッキントッシュのパソコンでプログラミング可能 ユーザーはNational Instruments社開発のLabVIEWを使った新しいソフトウェアを用いてプログラムを作成 USB 2.0ポートを一つ搭載 Bluetoothによって、NXTに無線でプログラムを転送ないしロボットの遠隔操作をする方法を提供(携帯電話やPDAでも可能) 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つの6線ケーブルデジタルプラットフォームの出力ポート サードパーティー開発の外部デバイスを使用可能にするデジタルワイヤインターフェイス

部品 519個のレゴ・テクニックの部品(及びVisorakのpincersを含むバイオニクルの部品) 回転検出センサが組み込まれており、正確な制御の為のフィードバックがある3つのサーボモータ 超音波距離センサと移動センサ 音のパタンとトーン認識を備えたサウンドセンサ 光の強弱を感知する光センサ(教育用セットに同梱) 光の強弱と、色を識別できる色センサー(玩具用セットに同梱。色はセンサーの目の前のもののみ判別可能) タッチセンサ(プレス/リリース/衝突の感知) 別売りの方向を感知するコンパスセンサ(Hitechnic社製) 別売りの色彩を感知するカラーセンサ(Hitechnic社製) 別売りの赤外線センサー、加速度センサー、ジャイロセンサー(Hitechnic社製)等

レゴ マインドストームNXT 2.x

2009年6月29日にver2.0発表、8月1日発売開始The New LEGO MINDSTORMS NXT 2.0 is coming!。パーツ数が619に増え、(センサーとモーターを含む)2個のタッチセンサーと1個の超音波センサーと新型の色センサーが導入された。NXT 2.0 は浮動小数点演算を使用するが、初期の型では整数演算を使用した。キットの値段はおよそUS$280だった。

2010年11月に、ソフトウェアがNXT 2.1にバージョンアップされた。

プログラミング言語 Actor-Lab 言語: 独自のフローチャート風の言語 Ada Interface to MindStorms 言語: Ada brickOS 言語: C/C++ GCC 言語: C/C++, Objective C, Fortran, Java, Ada among others GNU Toolchain for h8300 言語: C/C++, ASM LabVIEW Toolkit for NXT 言語: LabVIEW コメント: A toolkit for LabVIEW permitting development of custom native blocks for use in the Mindstorms NXT software. Lego.NET 言語: Anything that can compile to .NET, works best with C# コメント: コンパイラ無し。バイトコードをマシンの命令に変換する。 leJOS 言語: Java librcx 言語: C/C++ コメント: GCC用のライブラリ Logitech SDK 言語: Visual Basic, Visual C++ コメント: Can be combined with an RCX control library such as spirit.ocx from the MindStorms SDK to make use of the Lego Cam NQC 言語: NQC, a C-like language コメント: 非オフィシャルの言語の中では、もっともよく使われている。 Official MindStorms SDK 言語: Visual Basic, Visual C++, MindScript, LASM コメント: You don't need VB to use the VB features as MS Office comes with a cut down version of VB for making macros OnScreen 言語: A custom language which can be programmed directly on the RCX pbForth 言語: Forth PRO-BOT 言語: A kind of Visual Basic/spirit.ocx-based language コメント: Designed for robots which are in contact with the workstation at all times QuiteC 言語: C コメント: A library for use with GCC and comes with GCC for Windows. RCX Code 言語: RCX Code, a custom flowchart-based language ROBOLAB 言語: A flowchart language based on LabVIEW コメント: This is the programming environment offered to schools who use MindStorms, supports the Lego Cam SqLego 言語: Squeak TclRCX 言語: Tcl Terrapin Logo 言語: LOGO TinyVM 言語: Java The Transterpreter 言語: occam Vision Command 言語: RCX Code コメント: Lego Cam と一緒に使うオフィシャルのプログラミング言語 XS 言語: Lisp LegoLog 言語: Prolog コメント: Uses an NQC program to interpret commands send from the pc running the Prolog code PBrickDev 言語: PBrickDev, a flowchart based language. コメント: Has more fuctionality than the RIS language, such as datalogs and subroutines/multithreading.

参考文献 Bagnall, Brian. Maximum LEGO® NXT: Building Robots with Java Brains Variant Press. 2007. Bagnall, Brian. Core LEGO® Mindstorms Prentice-Hall PTR. 2002. Baum, Dave. Definitive Guide to LEGO® MINDSTORMS, 2nd ed. Apress. 2002. . Erwin, Benjamin. Creative Projects with LEGO® Mindstorms (book and CD-ROM). Addison-Wesley. 2001. . Ferrari et al. Building Robots With LEGO® Mindstorms: The Ultimate Tool for Mindstorms Maniacs. Syngress. 2001. . Gindling, J., A. Ioannidou, J. Loh, O. Lokkebo, and A. Repenning., "LEGOsheets: A Rule-Based Programming, Simulation and Manipulation Environment for the LEGO Programmable Brick," Proceeding of Visual Languages, Darmstadt, Germany, IEEE Computer Society Press, 1995, pp. 172–179. Breña Moral, Juan Antonio. Develop LeJOS programs Step by Step, "https://www.juanantonio.info/lejos-ebook/ LEGO MINDSTORMS NXTオレンジブック LEGO MINDSTORMS NXTグレーブック Joe NagataのLEGO MINDSTORMS NXT歩行ロボット製作入門 入門LEGO MINDSTORMS NXT 実践ロボットプログラミング LabVIEWで学ぶ〈最新〉LEGO Mindstorms NXT入門 知的LEGO Mindstorms NXTプログラミング入門 電子工作Hi‐Techシリーズ 「Kinect」×「Mindstorms NXT」「ロボット」プログラミング I/O BOOKS

脚注

関連項目 シーモア・パパート - 著名なコンピュータ科学者・心理学者で、MINDSTORMSの開発者の一人。MINDSTORMSの名は、彼の著作『マインドストーム—子供、コンピューター、そして強力なアイデア』から名付けられた。 :en:FIRST Lego League :en:RoboCup Junior :en:Legoscript :en:Vex :en:Big Trak iRobot Create (iRobot) ETソフトウェアデザインロボットコンテスト WRO(World Robot Olympiad) レゴ

外部リンク

マインドストーム NXTの公式サイト:

Official Lego Mindstorms (NXT) Official Robotics Invention System Lego Mindstorms公式サイト(日本語)

様々なリソースとポータル: bNXT collects resources on Lego Mindstorms NXT LEGO-robotics - A summary of information and links about many aspects of Mindstorms Carnegie Mellon's Robotics Academy LEGO Engineering - Resource for Educators on RCX & NXT DCC for the RCX – Mark Riley's LDCC firmware for the RCX nxtasy.org - Fresh NXT news and user community LEGO Mindstorms NXT Robots - Lego Mindstorms NXT Robots LEGO Mindstorms Sensor Input Page - Lego Mindstorms Sensor Input Page

プログラミング言語とOS: Tufts University's ROBOLAB page leJOS - Java for the RCX Brick BrickOS alternative firmware for the RCX National Instruments LabVIEW NXT Toolkit The NQC programming language for the RCX The NBC programming language for the NXT The Transterpreter (occam runtime system) XS: Lisp on Lego Mindstorms Robotics Academy's RobotC (NXT & RCX C-Based Programming) BricX Control Center, Multi language and OS IDE for Windows Perl Direct Commands Interface to the NXT RoboDNA offers Free PC Based Robotic Dashboards for the Lego NXT NXT#- .NET library for the Lego NXT NXTMOTE: TinyOS on NXT ruby-nxt is a Ruby interface for controlling the Lego Mindstorms NXT via Bluetooth

サードパーティの拡張デバイス: NXT Sensors from HiTechnic Sensors and interfaces from mindsensors.com

チュートリアル: A multimedia tutorial for the NXT-G graphical language Preparing QuiteC on Windows

日本における技術サポート:

アフレル Afrel (日本語)

マインドストーム NXT のリンク: National Instruments NXT softwares Wired Magazine: Geeks in Toyland – Behind the scenes of the Mindstorms NXT User Panel Mindstorms NXT Wiki Short review with movie and screenshots

脚注 注釈