robo8080のブログ

ロボット製作や電子工作など。

『iPad』 + 『techBASIC』で『うおーるぼっと』をBluetooth Low Energy接続して動かしてみた

2013年03月24日 | うおーるぼっと

『techBASICというiOS上で動くBASICで、iPad3と『うおーるぼっと』をBluetooth Low Energyで接続して動かしました。

その手順を紹介したいと思います。

 

以下のものを使わせていただきました、ありがとうございます。

Ken Todotaniさんが公開してくださっている”BTstackLE

・miconoさんが公開してくださっているGamepad like UI

 miconoさんがtechBASIC不要の無料アプリ「RCBController1.0」を公開してくださいました。(2013.9.28 追記)

 

【必要なもの】

・うおーるぼっと + mbed NXP LPC1768

 うおーるぼっとの詳細については、ここを参照してください。

・Bluetooth LEに対応したUSB Bluetoothドングル

 私は、”iBUFFALO BSBT4D09BK”を使いました。

・Bleutooth LEに対応した、iPad/iPhone

 私は、iPad3を使いました。(iOS6で動作確認、iOS7だとmbed側を修正しないと動かない可能性あり)

techBASIC iPad/iPhoneで動くBASIC <- 「RCBController」を使うなら不要

 miconoさんがtechBASIC不要の無料アプリ「RCBController1.0」を公開してくださいました。(2013.9.28 追記)

 RCBControllerの詳細はこちら。(2014.05.06 追記)

RCBController関連ファーム ROBOMIC(ブログ)

◆mbed側の準備

(1)”BTstackLE”と、”TB6612FNG用のモータコントロールライブラリ”をインポートします。

(2)”profile.h”を次のように修正します。

  iOS7にも対応するために、下記 0x02 -> 0x0a になっているところを、0x02 -> 0x04 にしてください。(2013.09.30追記)

(3)”BLE_demo.cpp”を次のように修正し、コンパイル&ダウンロードします。

 RCBController 1.1.1対応の実行ファイルBIN(1.1.1対応修正済み”BLE_demo.cpp”同梱)は、ここからダウンロードできます。(2014.05.06 追記)

-------------- 途中省略 ----------------

-------------- 途中省略 ----------------

-------------- 以下省略 ----------------

 

参考:Gamepad UIのキーコード割り当てはこのようになっています。

  UP          0x0001
  DOWN        0x0002
  RIGHT       0x0004
  LEFT        0x0008
  TRIANGLE    0x0010
  CROSS       0x0020
  CIRCLE      0x0040
  RECTANGLE   0x0100
  L1          0x0200
  L2          0x0400
  R1          0x0800
  R2          0x1000
  START       0x0003
  SELECT      0x000C

◆iPad側の準備

RCBController」を使うのなら、以下の手順は不要です。(2013.9.28 追記)

ここから、”SBDBT_BLE_for_RCB_with_techBASIC”をダウンロードし解凍します。

解凍したら、まず下記ディレクトリ内にあるpngファイルをすべてiTunesでtechBASICアプリに入れます。

 ”SBDBT_BLE_for_RCB_with_techBASIC\techBASIC\Resource”

次に下記ディレクトリにあるプログラムソースをiPadのtechBASICに送ります。

 ”SBDBT_BLE_for_RCB_with_techBASIC\techBASIC\Source\SBDBT BLE for RCB v1.3.txt”

techBASICのマニュアルには、iPadにプログラムを送る方法が2つ書いてあります。

・iTunesを使う方法

 ソースプログラムの拡張子を”bas”に変更し、iTunesでtechBASICアプリに入れます。

 (私の環境ではなぜかうまく行きませんでした。)

・メールを使う方法

 PCなどからメールの本文にプログラムソースを張り付け、自分あてに送信します。

 iPadでそのメールを開き、techBASICで作成した空のファイルにコピペします。

 ただし、メールソフトによっては長い行に勝手に改行が入ってしまうので後で手直しが必要です。

マニュアルには載っていませんでしたが、Dropboxを使う方法が簡単でした。

 プログラムソースをPCのDropboxに入れます。

 iPadのDropboxでそのプログラムソースを開き、すべて選択しコピーします。

 techBASICを起動し、新規ファイルを作成、ペーストします。

 

◆動かしてみる

(1)うおーるぼっとにUSB Bluetoothドングルを挿し、電源を入れます。

(2)iPadのtechBASICでGamepad UIプログラムをRUNします。

(3)iPadとうおーるぼっとの接続が完了すると、Gamepad UI画面真ん中のインジケータが緑に変わります。 

 

(4)うおーるぼっとの操縦は、Gamepad UI左側の十字キーで行います。 

たまに、一番最初にキーを押したときにエラーが出ることがあります。

接続に失敗していますので、mbedをリセットして最初からやり直してください。 

 

動画はこちら。

「うおーるぼっと」をiPad + techBASIC + Bluetooh LEで操縦(1)

 

【応用例】

小型無線LANカメラAi-Ballを搭載してみました。

「うおーるぼっと」をiPad + techBASIC + Bluetooh LEで操縦(2)

 

―以上―


関連する記事

iPad3 + techBASIC + mbed + Bleutooth Low Energyの実験

『BASIC!』でAndroid端末とmbedをBluetooth SPPで接続する実験(その1)

iPad/Android + mbed + Bluetooth + モータドライバ でタミヤギヤボックスを動かしてみた。

関連するリンク

うおーるぼっとサポートページ

RCBController関連ファーム ROBOMIC(ブログ)

techBASICとSBDBTを使って、iPhoneやiPadでロボゼロやRCB-4HV (KMR-M6)を無線コントロールしてみました (Source編)

 


最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。