2015年9月14日月曜日

LTE(携帯電話網)でローバーを遠隔操作してみた。(ドロイドローンVer0.1)

ドロイドドローンのコース設定画面 から約三ヶ月、やっとAndroidコードが何とかなって、ローバーもBluetoothで動くようになり、タミヤのキャタピラーマシンの実機で動かしてみました。
様子を昨日撮影して動画作成しました。

とまぁこんな感じです。
まだまだですね。

一番の問題は操縦がリアルタイムにできていないところ。

実は、スマフォ画面を録画しようとモビゼン入れたら、スマフォ画面がWebから遠隔で操縦できるので、カメラプレビューとBluetoth操作ボタンのあるドロイドローンアプリ画面をモビゼンで遠隔操縦するとリアルタイム操縦とカメラのストリーミングが出来てしまった。

しかし、モビゼンはドコモ携帯のみ対応なので、SIMフリー、格安データー通信SIMでは使えない。
後GPSのリアルタイム表示もないので、まぁこっちにアドバンテージあるかな。

いまWebRTCのチャットでリアルタイムにローバー操縦コマンド送れる様にSkyWayでのコーディングを勉強し始めました。
サンプルアプリとWeb画面はすんなり動いたので、期待しています。
つでに(というか本命ですが)WebRTCビデオチャットでスマフォのカメラ画面をストリーミングします。

リアルタイム操作できればもっと早く動くタミヤのバギーラジコンとか使えます。
サーボ動かすのでArduinoで制御します。
また、GPS精度が低いので、加速度で移動距離計算して、磁気方向で現在地を正確に割り出さないとです。
プロペラ回してエンコーダで風速と移動距離も割り出したいですね。

やって分かったけど、GPSだけでは使い物にならん。
GoogleMapからの移動場所指定をして、自動操縦する予定で実装しましたが
素のGPSデータだけでは、うまくいきそうにないです。
なのでこれは後回し。

今後やることをまとめると(面白そう順)
1.ローバーはタミヤのバギーラジコンにする。
タムテックギア GB-01シャーシキット (組立キット) ヨドバシカメラで7千くらい
2.サーボを動かせるようにマイコンをArduinoに変更。
3.リアルタイム操縦のためのHTML5のGamepad API 
4.WebRTCでリアルタイム操縦、動画ストリーミング表示。
5.スマフォ加速度による移動距離計算と位置情報補正
6.WebサーバをGoogle クラウド対応にして、レンタルサーバーがない人でも使えるようにする。
javascript と Androidで対応)
7.JavascriptをJqueryでかく。
8.ライセンスを決めて表明しておく。
でしょうか。

実際の優先順位は7,4,3、2,1,7 という具合ですが…。