無意味なブログ

勉強のこと、趣味のこと、日記など適当に

MENU

Android端末で操作できるArduinoラジコンカーを作る

ArduinoBluetoothモジュールを使って、Android端末から操作できるラジコンカーを作成します。
作成手順に沿って参考にしたサイト等を書いていきます。

できたもの

動作確認時の動画が以下になります。
youtu.be

Android端末でArduinoに数字を送るとその数字に対応した移動を行います。
送る数字と、行う移動の対応は以下のようになっています。
0 → 右に1秒回転
1 → 1秒前進
2 → 1秒後退
3 → 左に1秒回転

動画では1,2,0,3の順に送信しています。

参考にしたサイト

機体の作成

以下のページを参考にしました。
sites.google.com

使用部品の写真や、回路図が載せられていて、非常にわかりやすいです。

ただ、モータドライバの回路図が少し間違っているのかな。
回路図だと右モータ用モータドライバの1番端子が3V電池につながっていますが、GNDにつなげるのが正しいと思います。

今回ライントレースは行わないので、センサは使っていません。
また、Arduinoの電源はUSBから供給しています。

Bluetooh通信

以下のページを参考にしました。
HM10 Bluetooth 4.0 モジュールを使って、Android AppとArduinoを通信する « osoyoo.com

配線例が写真で載せられており、サンプルコードも用意されているのでわかりやすいです。

ただ、参考ページに書いてある"BleSerialPort"というアプリがGooglePlayで見つからなかったので、代わりに"Serial Bluetooth Terminal"というアプリを使いました。
同様のターミナルアプリを幾つか使いましたが、僕の場合"Serial Bluetooth Terminal"のみうまく通信できました。

また、今回僕はHM10搭載のBluetoothモジュールを以下のサイト(サイエンスYahoo!店)で購入しました。
store.shopping.yahoo.co.jp

いろいろ調べた中でここが一番安そうだったのでここにしました。
商品説明にはペアリングコード不要と書いてありますが、ペアリングコードとして"000000"と入力するとペアリングできました。

ソースコード

今回使ったソースコードを以下に載せます。

まとめ

ArduinoBluetoothモジュールを使って、Android端末から操作できるラジコンカーを作成しました。

Bluetooth通信は思っていたよりも苦労しました。
次はBluetooth通信が標準で搭載されているラズベリーパイもいじってみたいです。