Lego Mindstorms NXT

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索
NXTを組み立てたロボット
NXT知能ブロック

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

概要[編集]

キットはサーボモーター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のブロック[編集]

部品[編集]

  • 519個のレゴ・テクニックの部品(及びVisorakのpincersを含むバイオニクルの部品)
  • 回転検出センサが組み込まれており、正確な制御の為のフィードバックがある3つのサーボモータ
  • 超音波距離センサと移動センサ
  • 音のパタンとトーン認識を備えたサウンドセンサ
  • 光の強弱を感知する光センサ(教育用セットに同梱)
  • 光の強弱と、色を識別できる色センサー(玩具用セットに同梱。色はセンサーの目の前のもののみ判別可能)
  • タッチセンサ(プレス/リリース/衝突の感知)
  • 別売りの方向を感知するコンパスセンサ(Hitechnic社製。本来の方角の360°と、センサーが返す360°の値には、大きく違いがある。また、センサーが○○°と返しても、実際の方角を一義的に決める事はできない。sinカーブの様な曲線相当を、y軸(コンパスセンサーが返す値)の0°で上下分割し、x軸(本来の方角)が0~150°でカーブ上半分を0~50°辺り、170~360°で、カーブ下半分を310~360°辺り、150~170°辺りで急激に50~350°位にy値が上がるという様なもの。新品購入2個と以前購入した2個全てが同様であり、Afrelにセンサーが異常ではないか質問したが、そういうものだという回答であった。)
  • 別売りの色彩を感知するカラーセンサ(Hitechnic社製)[1]
  • 別売りの赤外線センサー加速度センサージャイロセンサー(Hitechnic社製)等

レゴ マインドストームNXT 2.x[編集]

マインドストームNXTのタッチセンサー

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

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

プログラミング言語[編集]

Actor-Lab
言語: 独自のフローチャート風の言語
Ada Interface to MindStorms
言語: Ada
brickOS
言語: C/C++[2]
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#[3]
コメント: コンパイラ無し。バイトコードをマシンの命令に変換する。
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[4]
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.

参考文献[編集]

脚注[編集]

  1. ^ What’s NXT? LEGO Group Unveils LEGO MINDSTORMS NXT Robotics Toolset at Consumer Electronics Show”. Press Release. LAS VEGAS: LEGO Company (1986年1月4日). 2009年7月8日時点のオリジナルよりアーカイブ。2008年12月3日閲覧。
  2. ^ The New LEGO MINDSTORMS NXT 2.0 is coming!
  3. ^ Lego Robotics FAQ” (2009年). 2010年8月8日時点のオリジナルよりアーカイブ。2010年3月2日閲覧。

関連項目[編集]

外部リンク[編集]

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

様々なリソースとポータル:

プログラミング言語とOS:

サードパーティの拡張デバイス:

チュートリアル:

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

マインドストーム NXT のリンク: