連載
» 2009年06月01日 00時00分 公開

今年は私も参加します! ETロボコン2009ETロボコン2009、挑戦記(2)(2/2 ページ)

[上口翔子,@IT MONOist]
前のページへ 1|2       

開発環境の構築

 組み立てが終わったので、次は開発環境の構築です。NXTを動かすには、プログラムを入れる必要がありますので、まずは専用の開発環境を準備します。

 開発環境はマイクロソフトの「Visual Studio」やサイバネットの「MATLAB/Simulink」などが有名ですが、今回はETロボコン事務局から参加者向けにオープンソースで提供されているC、C++向けの開発環境「nxtOSEK」を使用することにしました(なお、今後はVisual Studioでの開発にも挑戦する予定ですが、まず走行体が無事に動くまでは、nxtOSEKで進めたいと思います)。

 インストールは、以下のページを参考に進めました(Cygwin:1.5.25、nxtOSEK:nxtOSEK 2.09)。ここからは、筆者が実際に行った導入の流れを簡単に紹介していきます。


1. Cygwinのインストール

 まずはWindows環境でもプログラムを作成できるように、Cygwinをインストールします。Cygwinは、LinuxなどUNIX系OSの機能をWindows OSでも実行可能にする開発キットです。プログラムを実行する際に必要なコンパイラや、bashなどのツールが含まれています。

 Cygwinのサイトからダウンロードしました。

Cygwinインストール画面 画像13 Cygwinインストール画面

2. GNU ARMのインストール

 次に、GNU ARMのサイトから、NXTに搭載されているARM7コアプロセッサ(ATMEL AT91SAM7S256)に対応したGCCコンパイラパッケージ(bu-2.16.1_gcc-4.0.2-c-c++_nl-1.14.0_gi-6.4.exe)をダウンロードしました。

GNU ARMインストール画面 画像14 GNU ARMインストール画面

 ダウンロードの際、(1)保存場所をマルチバイト文字およびスペースを含まないディレクトリ下にすること、(2)Cygwinはインストール済みのため、“Install Cygwin DLLs...”は選択しないこと、の2点に注意しました。

3. LEGO MINDSTORMS NXT Driver のインストール

 LEGO MINDSTORMS NXT Driverは、LEGOが提供しているNXTのUSB通信用ドライバです。LEGO MINDSTORMS Update pageから、MINDSTORMS NXT Driver v1.02をダウンロードしました。

LEGO MINDSTORMS Update pag画面 画像15 LEGO MINDSTORMS Update pag画面

4. NeXTToolのインストール

 NeXTToolは、アプリケーションプログラムおよびファームウェアをNXTへアップロードできる、通信用PCのコンソールプログラムです。作成者であるJohn Hansen氏のWebサイトからダウンロードしました。

5. 拡張NXTファームウェアのインストール

 拡張NXTファームウェアは、標準NXTファームウェアをベースに機能拡張したもので、NXTに搭載されている、ARM7コアCPUのネイティブコードも実行可能にします。

 ダウンロードは、先ほどの4. NeXTToolのインストールと同様に、John Hansen氏のWebサイトから行いました。バージョンは1.06で、ダウンロード後、(lms_arm_nbcnxc_106.rfw)をNeXTToolの格納ディレクトリにコピーします。

6. nxtOSEKのインストール・設定

 最後にETロボコン事務局から提供されたnxtOSEK 2.09をダウンロードして、すべてのインストールが完了しました。

 これまでにダウンロードしたものは、すべてC:Cygwin以下に保存しました。

ディレクトリ構成 画像16 ディレクトリ構成

7. 拡張NXTファームウェアのNXTへのアップロード

 続いて、拡張NXTファームウェアをNXTへアップロードするために、NXTをファームウェアアップデートモードにします。ファームウェアアップデートモードにするためには、いったん頭部を外し、NXTの電源がONの状態で、ハードウェアリセットボタン(NXT背面の上部左側の穴の内部)を5秒以上押し続けます。

アップロードの準備1アップロードの準備2 画像17 アップロードの準備

 かすかに「カチッ」というクリック音が聞こえたら、次にCygwinを起動し、以下のコマンドを入力してカレントディレクトリをNeXTToolが格納されているディレクトリに移動します。

$ cd C:/cygwin/nexttool

NeXTToolが格納されているディレクトリに移動 画像18 NeXTToolが格納されているディレクトリに移動

 その後、USBケーブルをNXTに接続し、次のコマンドをCygwin上で入力し、拡張NXTファームウェアをNXTへアップロードします。

$ ./NeXTTool.exe /COM=usb -firmware=lms_arm_nbcnxc_106.rfw  

NXTへのアップロードを開始 画像19 NXTへのアップロードを開始

 これでバイナリアップロードの完了です。 確認のため、ETロボコン事務局から提供されているサンプルプログラム(Hello world!と表示するもの)を実行してみましたが、無事に実行されました(画像20参照)。

サンプルプログラムの実行1サンプルプログラムの実行2サンプルプログラムの実行3 画像20 サンプルプログラムの実行



 次回はETロボコン事務局から提供されているサンプルプログラムを実行し、NXTを立たせてみたいと思います。

前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.