PR

Arduinoを始めよう!(3)Bluetooth編

2013年3月6日(水)
藤原 敬弘

ArduinoとBluetoothの接続

半田付けの難関を突破すれば、後は簡単です。次のようにArduinoとBluetoothモジュールを接続します。

ArduinoとBluetoothモジュールの接続図(クリックで拡大)

接続したら、AC-DCアダプタをArduinoに接続します。ArduinoにAC-DCアダプタを接続し、Bluetoothモジュールが赤色に点滅していれば問題ありません。

実際に接続したところ。Bluetoothモジュールが赤く点滅すれば成功(クリックで拡大)

プログラムの転送と実行

BluetoothのRX/TXケーブルを一度抜き、次のプログラムをArduinoに転送します。このプログラムはBluetooth用に通信速度を変更しただけで、第3回のシリアル通信プログラムとまったく同じものです。

  void setup() {
    Serial.begin(115200);
    pinMode(13, OUTPUT);
  }
 
  void loop() {
    if (Serial.available() > 0) {
      char c = Serial.read();
      if (c == 'n') {
        digitalWrite(13, HIGH);
      } else if(c == 'f') {
        digitalWrite(13, LOW);
      }
    }
  }

プログラムをArduinoに転送したら、一度USBケーブルを抜き、BluetoothのRX/TXケーブルを再度、接続します。これはBluetooth経由でシリアル通信を行うためです。USBケーブルを抜いたら、リセットボタンを使って一度、転送したプログラムをリセットしておきます。

プログラム転送したらUSBケーブルを抜いて一度リセットする(クリックで拡大)

BluetoothモジュールとPCの接続

ここではMacとBluetoothモジュールを接続する手順を説明します。まず、システム設定からBluetoothの設定を開きます。

Bluetoothの設定画面(クリックで拡大)

ここではFireFly-AD3BというIDのデバイスが表示されているので、これを選択します。このFireFly-AD3Bは購入したモジュールによって異なるので、それらしいデバイスを選択してください。パスコードは1234です。最後に次の画面が出れば、接続成功です。

Bluetoothモジュールの接続が成功したところ(クリックで拡大)

接続に成功したら、シリアル通信の口を開きます。Bluetoothの設定画面に戻り、左下の設定ボタンをクリックして、"シリアル通信の編集"を選択します。

シリアル通信の編集画面(クリックで拡大)

接続に成功した趣旨のメッセージが表示されれば、接続完了です。

接続完了(クリックで拡大)

これでBluetoothモジュールとMacの接続完了です。

続いて、このBluetoothモジュールを経由して、文字列を送信します。IDEに付属したコンソールではBluetooth経由での通信ができないので、Macに付属したターミナルを利用します。ターミナルを開き、次のコマンドを打ち込みます。プロンプトがなくなり、まっさらな画面になれば成功です。FireFly-AD3Bの部分は、自分のBluetoothモジュールのIDに置き換えてください。

  screen /dev/tty.FireFly-AD3B-SPP
文字列の送信を試してみる(クリックで拡大)

この状態になれば、Bluetooth経由で文字をArduinoに送ることができます。試しに、nをタイプしてください。Arduino UNO付属のLEDが光ります。

"n"をタイプするとArduino UNO付属のLEDが点灯する(クリックで拡大)

続いて、fをタイプしてください。先ほど光っていたLEDが消灯します。

"f"をタイプするとArduino UNO付属のLEDが消灯する(クリックで拡大)

これで無事、Bluetooth経由で文字を送ることができました。

Windowsで接続したい場合は、"Windows Arduino Bluetooth”で検索すると情報が出てきます。基本的にはMacと同じ手順なので、ここで紹介した手順を参考にしつつ、トライしてみてください。

[tips] Arduino UNO付属のLED

実は、Arduino UNOにはLEDが予め、13番ピンに取り付けられています。第2回、第3回の記事では読者が理解しやすいように、赤色LEDを13番ピンに取り付けましたが、Arduino UNOに付属したLEDを利用すれば、これは不要です。デバッグにも使えるので、是非、色々と活用してみください。

FULLER株式会社

1986年生まれ。北海道苫小牧市出身。苫小牧工業高等専門学校卒業。
Fuller, Inc. CTO
Webプログラマ、よく利用する言語はPython。Pythonコミュニティによく出没する。
趣味でArduinoやRaspberry Piなどを使って、便利なものを自作する。

twitter: @wutali / github: https://github.com/wutali

連載バックナンバー

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています