目次 (作成中) spyboticsについて †マインドストームに続いて、LEGO社が2002年にリリースしたプログラム可能なロボットで、 Gigamesh G60、Snaptrax S45、Shadowstrike S70、Technojaw T55 の4種類があります。 色の違いを除いてコンピュータ本体は同じで、RCXと違い、モータやセンサなどが内蔵された一体型のユニットになっています。 LUGNETの紹介ページ ところで spybotics は、プログラムを転送するためにパソコン側にシリアル端子が必要なこと、本体の定価が1万円ほどもしたこと、モータやセンサがコントローラに内蔵されているためRISのようにいろいろなロボットを独自に設計する自由度が低いこと、などの理由でRISほどは人気が出ませんでした。 そのせいなのかどうかわかりませんが、国内でも定価の半額〜1/4 程度の値段で売られていました。 確かにRISと比べると部品点数も少なくオリジナルロボットを作る楽しみ というのは少ないかもしれませんが、プログラミング学習の観点からは NQCを使えばRISとほぼ同様に扱うことができ、さらにRCX以上の機能も あるので、高校や大学の一般教養の授業にはもってこいではないでしょうか。 ちなみに授業用に作成したライブCD・ライブUSBメモリでもばっちり動きます (RCXと違ってファームウェアの転送は不要なのでライブCDだけで十分たのしめます)。 (2008年11月17日追記) NQCでコンパイル †プログラムをコンパイルするには、ターゲットを指定するための「-Tspy」というオプションが必要です。 nqc -Tspy ファイル名 プログラムをコンパイルするだけでなくロボットに転送したいときには、 nqc -Tspy -S/dev/ttyS0 -d ファイル名 のようにダウンロードのためのオプション「-d」とポート指定「-S/dev/ttyS0」が必要です。 spybotics の入出力 †出力は次のように割り当てられています。
OUT_A と OUT_B に関しては RCX の場合の使い方と同じです。また、 On(OUT_C); とすると後方のLEDが点滅します。 一方、センサは次のように割り当てられていますが、RCXと違い、 SetSensorでセンサの種類を宣言する必要はありません。
上面のLEDを点滅させるには? †RCXとの通信 †SPCからRCXへメッセージを送る SendRCXMessage(n); // n=0〜255 送られたメッセージをRCX側で参照するには、RCX同士の通信と同様に Message() を使用します。 USBからプログラムを転送するには? †最近ではシリアル端子のないパソコンも多いですが、USB-シリアル変換アダプターを使うことでUSB端子から問題なくプログラムを転送できます。 詳しくはNQC入門/A3. USBシリアル変換アダプタについてをご覧ください。 関連リンク †
|