Arduino Fioでラジコン その1

Arduino Fioでラジコンシリーズ >その1 >その2 >その3

遠隔操作は男の夢、という事でArduion Fioを使ってラジコンを作ってみます。
まずは、プロジェクトの要、Fioを制御します。

■準備したもの
XBee エクスプローラー USB ドングル
XBee U.FLコネクタ型
XBee用外部アンテナU.FLコネクタ型
Xbee チップアンテナ
Arduino Fio
リチウムイオン電池

http://code.google.com/p/funnel/からfunnel-1.0-r750.zipをDL。解凍して適当な場所に置きます。

■電池の充電
リチウムイオン電池のコネクタをFioに差し、USBを繋ぎます。USBは単純に電源をとっているだけです。

■XBeeのセットアップ
PC用とFio用、両方のXBeeにID等を登録し、セットアップします。

まず、Fio用から。
XBee エクスプローラーにFio用のXBeeを乗せ、PCに接続します。
funnel-1.0-r750/tools/XBeeConfigTool/application.macosx/XBeeConfigToolを起動します。ソフトのバージョンによって、文言が若干違うようです。

Serial Portは、usbserialってなってるものを選択。
ModeはPC側かFio側かということなので、Arsuino Fio radio。
Baud rate は使用するFioに合わせて適宜。今販売している物なら57600。
以下はModeを選ぶと自動的にデフォルト値が入るので、そのままでOK。

PAN IDは接続するグループを識別する番号かな。今の環境では1系統のみなので何でも良いと思います。
MY IDは個体識別番号らしいので、2台目以降はここを増やします。DL IDはよく分かりません。
「Configure」をクリックすると書き込み始めます。

続いてPC側。Fio用のXBeeを外し、PC用を乗せます。

ModeはProgramming radioを選択。
Serial Port, Baud rate等はFio用と同じ。ID類はデフォルトのまま。


これでPCからXBeeを経由してFioにプログラムを書き込めるようになりました。試しにsampleのBlinkを書き込んでみます。
Arduino IDEを起動し、File > Examples > Digital > Blinkを開きます。Tools > Board > Arduino Pro / Pro mini(3.3V,8MHz)w/ATmega328 を選択。
Tools > Serigal Port > 先ほど使用したusbserialを選択し、Uploadします。
書き込みに成功すれば、FioのLEDが点滅するはずです。周囲の電波に影響を受けるそうなので、うまくいかない場合はWifi等を切ってみてください。


次に、PCとやり取りするためのファームウェア(Firmata)を書き込みます。
ArduinoIDEで、funnel-1.0-r750/hardware/fio/firmware/StandardFirmataForFio/StandardFirmataForFio.pdeを開き、先ほどと同じようにしてFIoに書き込みます。データ量が多いため少し時間がかかります。Done uploading.表示されれば成功。

Firmataが動作するか試してみます。
Processingを立ち上げ、File/Sketchbook/Libraries/arduino/example/arduino_outputを実行します。14個のボタンが表示されるので、一番左側をクリックするとFioのLEDが反応すると思います。

これで、FioとPCがやり取りできるようになりました。次回は車を作って、モーターをコントロールします。

Arduino Fioでラジコンシリーズ >その1 >その2 >その3