実践ロボットプログラミング LEGO Mindstorms NXT で目指せロボコン! WEB : 著者:藤吉弘亘,藤井隆司,鈴木裕利,石井成郎 : 実践ロボットプログラミング LEGO Mindstorms NXT で目指せロボコン! WEB : 著者:藤吉弘亘,藤井隆司,鈴木裕利,石井成郎 :
■LEGO Mindstorms NXT について
RCX vs. NXT RISNXT 発売時期 1998 年 2006 年 CPU H8 ( 8 bit ) ARM7 ( 32 bit ) クロック周波数 16MHz48MHz RAM32KB64KB フラッシュメモリなし 256KB 転送方法赤外線通信 USB/Bluetooth ポート数入力 :3 出力 :3 入力 :4 出力 :3 駆動電池電池/ バッテリーパック
LEGO ロボット構成 入力:タッチセンサ(2個)ライトセンサ、超音波センサ、 サウンドセンサ 出力:モータ( 3 個)
プログラミング環境 NXT-SWNXC
■ プログラムを作成するには
1. PC 上でプログラムを作成・コンパイル 2. Bluetooth よりロボットへダウンロード 3. ロボット上でプログラムを実行 プログラム実行までの流れ
プログラム言語 NXC NXC (Not eXactly C) –NXT 用のプログラム言語 –C 言語に似た文法を持つ –Windows と MacOS X , Linux に対応 – フリーウェア 開発環境 –MacOS X – テキストエディタ( vi )でプログラム作成 –Windows – テキストエディタ(メモ帳)
NXC のサイトを参照 – テキストを参考 – 付録 167 ページを参考に Windows 版のインストール プログラム保存方法 MS-DOS コマンド NXC の設定 (Windows)
■ 音を鳴らしてみよう
音を鳴らすプログラムの PAD (p.30) 音を鳴らすアルゴリズム 処理の流れ
注意点: ・拡張子は.nxc ・関数でなくタスク (task) で構成 ・ main() というタスクが必要 NXC プログラム (p.31: sound.nxc)
■ プログラムを実行してみよう
NXC によるコンパイル – ターミナル上でコンパイル > nbc -O=sound.rxe sound.nxc 実行可能ファイル (rxe) を Bluetooth 経由でアップロード NXT ブラウザ (Mac) を使用する コンパイルとダウンロード
Bluetooth によるワイヤレス通信 実行ファイルを Bluetooth を介して NXT に転送 Bluetooth とは – 数 m 程度の機器間接続に使われる短距離無線技術の一つ – 携帯情報機器や PC の接続に利用される – 通信機器間の距離が 10m 程度なら障害物があっても通信可能 – 無線 LAN と同じ 2.4GHz 帯の電波を使用し, 1Mbps の速度で通信
PC と NXT の認証 NXT Browser を起動する NXT の電源を入れる NXT Browser の「 Search 」ボタンをクリック 自分の NXT を選び「 Select 」ボタンをクリック NXT 本体のオレンジ色 (OK) のボタンを押す PC にパスキー「 1234 」を入力する NXT Browser 1234
NXT Browser によるアップロード NXT Browser のできること –NXT の状態 ( 名前, 電池, メモリ ) の確認 – ファイルのアプロードや削除
プログラムの実行と停止 Run ボタン Stop ボタン プログラムの実行 –NXT Browser –NXT 本体
プログラムの実行 実行時の注意 – ロボットの動作より作成したプログラムのアルゴリズム が実現できているか確認 – ロボットが目的に応じた動作をしないときは、ロボット の動きをよく観察しデバッグすること –NXT 本体の空きメモリが足りなくなったら不要なファイ ルを消す