BoardLocomoはArduino互換のロボットプロトタイピングボードです。モータ制御、センシング、無線通信を行う回路を手軽に作れます。仕様チュートリアル購入方法FAQお問い合わせプログラミング・チュートリアル実際のプログラミングの手順について説明します。ここでは作例として2輪駆動のロボットを想定し、2個のDCモータをPCからWi-Fi経由で制御するしくみを作ります。パーツをLocomoにつなぐLocomoに電池スナップとモータのコードをつなぎます。ターミナルブロックのオレンジ色のつまみを押しこんだ状態でコードを挿しこむと固定されます。電池スナップは赤の線を+に、黒の線を-につないでください。Wi-FiはXBee端子にとりつけます。モジュールの向きに注意し、XBeeのすべてのピンが端子にはまるように挿してください。PCとUSB接続するPCとの接続はUSBケーブルで行います。LocomoとPCに繋ぐとUSBシリアルポートとして認識されます。WindowsはVista以降であれば、PCに接続したタイミングでドライバが自動的にインストールされます。port)ドライバをダウンロードして手動インストールしてください。IDEを使ってプログラミングを行います。プログラミングをはじめる前に以下の設定を行ってください。モータを制御するプログラムを書きこむ以下はシリアル通信で左右輪のモータを制御するArduinoのコードです。IDEにコピー&ペーストしてLocomoに書きこんでください。atoi(string);}このプログラムではシリアル通信によって各モータの回転方向と速度を指定できるようになっています。R-100という文字列を受信すると、左モータを速度100で正転、右モータを速度100で逆転させます。LとRがそれぞれ左右のモータを意味しており、後に続く数値が速度です。数値が負のときに逆転になります。USB接続した状態で動作確認するプログラムをLocomoに書きこんだら動作確認してみましょう。LocomoではXBeeモジュールを挿した状態でUSB経由でのシリアル通信が可能です。無線通信では何かと接続上のトラブルがつきものですので、XBeeでやる前にUSB経由でテストするのがおすすめです。R-100のように文字列を送ってみてください。モータが意図通り回転したらOKです。モータが想定とは逆方向に回転するようであれば、DCモータ端子に接続しているコードを入れ替えてみてください。Wi-Fiによる無線通信をやってみましょう。Wi-Fiの設定を行うためにLocomoをXBeeエクスプローラモードにします。USBケーブルを外し、電源スイッチをOFFにした状態でモード切り替えスイッチを3つとも下側にスライドしてください。XBeeの設定にはXCTUというソフトを使います。XCTU」をダウンロードし、インストールしてください。Windows版とMac版があります。LocomoとPCをUSBケーブルでつなぎ、XCTUを起動をします。device」というウィンドウが出ますので、ポート一覧でLocomoのシリアルポートが選択されているのを確認し、「Finish」をクリックしてください。XBeeモジュールが検出されると画面左に追加されます。左側でモジュールを選択すると右側に設定項目が表示されます。Wi-Fiの場合は以下の項目を設定してください。ポート番号は16進数で設定します。Wi-Fiのデフォルトポート)パラメータを変更後、鉛筆アイコンをクリックすると設定がXBeeに書き込まれます。無線LANに接続できていれば、Locomoのボード上にあるASSOCのLEDがチカチカ点滅します。Address」という項目で確認することができます。Wi-Fiの設定が終わったら、いったんUSBケーブルを外し、電源スイッチをOFFにした状態でモード切り替えスイッチを3つとも上側にスライドして通常モードに戻してください。Wi-Fiに割り当てられたIPアドレスを確認したらTelnetで接続できるかチェックしてみましょう。定番ターミナルソフトのTeraTermを使います。Connection」を選択します。接続ダイアログが出たら「TCP/IP」にチェックを入れ、以下のように設定してください。「OK」を押すと接続されます。Wi-Fiに接続できます。R100)を入力してモータが動くか確認してください。PCで動作するホスト側プログラムを作るWi-Fi接続が動作するのを確認できたら、今度はWi-Fi経由でLocomoをコントロールするホスト側プログラムを作ってみましょう。ホスト側プログラムはTCPによるソケット通信ができる言語であれば、C++やJava、Processingなどなんでも良いです。ここではProcessingでの作例を紹介します。キーボード操作でLocomoを無線制御するProcessingのプログラムを以下に示します(接続先IPアドレスは自分の環境に合わせて変更してください)。キー入力を行うとモータを制御する文字列が送信されます。キーを押している間モータが回転し、キーを離すとモータが停止します。IPアドレスは自分の環境に合わせて変更してください。"\r");}説明は以上です。ここで紹介したものはPCから操作するものでしたが、スマートフォンのアプリを作る場合でも基本は同じです。Processingであれば、上で紹介したプログラムをベースにAndroidで動作するものも作れます。以下のページにProessing、Java、Pythonによる通信プログラムのサンプルを用意しました。こちらも参考にしてください。