2014年10月5日日曜日

Qt5で作るロボットコントローラーアプリ

Arduinoで作成したロボット戦車を操作するAndroidアプリを作りました。アプリの作成にはQtのQMLを使用しています。Qtのバージョンは5.3.2です。





ArduinoのロボットはBluetoothのシリアル通信(SPP)によって操作できます。前進、後進、回転、速度調節などの操作が可能です。Bluetoothを使ったプログラミングは今回が初めてでしたが、Qtを使うとBluetoothとUIを連携したAndroidアプリが簡単に書けてしまうのが驚きです。

またこのコントローラーではロボットの操作だけではなく、ギミックとして、Android側でリアルな効果音を再生したり、動画を再生したりするなどの機能を追加して、戦車として臨場感を盛り上げています。QMLではこうしたマルチメディア再生も簡単に扱えます。

いやー素晴らしいですQML。

Qtはクロスプラットフォームなので(動作確認はしてないけど)Android以外の各種プラットフォームで動作するはず、のも素敵。


まだまだコードが汚いので、きれいになったら公開したいと思います。


ロボットの詳細
参考までにロボットの構成はこんな感じです

  • arduino uno
  • adafruit モーターシールド
  • adafruit 130サイズモーター(9V) これは3Vのタミヤのモーターと交換
  • Bluetoothモジュール
  • 測距離用の超音波センサー
  • タミヤ トラックホイールセット
  • タミヤ ツインモーターギアボックス