はじめに

HC-02 Bluetoothシリアル通信モジュールは、Bluetooth V2.0 Bluetoothプロトコルデータ伝送モジュールに基づいており、高安定性、超低消費電力、工業グレードBluetoothデータ伝送モジュールです。

ユーザーは複雑な無線通信設定や伝送アルゴリズムを気にする必要はありません。TTLシリアルポートを通じてデバイスに接続するだけで済みます。HC-02スレーブモジュールに電源を供給すれば、モバイルフォンと接続してデータ伝送を行うことができます。さらに、HC-05またはHC-06ホストと
(ペアリングコード、デフォルトは1234)接続することができ、従来のシリアルケーブルに代わって使用でき、配線作業を省力化し、
非常に柔軟に使用できます。

iPhoneやiPadを使用してArduinoプロジェクトを制御する必要がある場合、6ピンベースボード付きhc-02 4.0 bleスレーブモジュールが良い選択かもしれません。iOS7.0以降に完全対応しています。Android 4.3以降にも対応しています。

ご注意:
Android OSのバージョンが4.3未満の場合、対応していません。
このモジュールはBluetooth 4.0 bleモードとBluetooth 2.0モードをサポートしています。

Bluetoothにあまり詳しくない場合は、こちらからBluetoothに関する詳細情報を得ることができます

HC-02の回路図

特徴

 モデル HC-02 モジュールサイズ 27*13mm
動作バンド  2.4G 空中レート 2Mbps
通信インターフェース UART3.3V TTL アンテナインターフェース 内蔵PCBアンテナ
動作電圧 3.0~3.6V 通信電流 30mA
ボーレート 1200~115200bps 受信感度 -85dBm@2Mbps
通信レベル 3.3V 動作湿度 10%~90%
送信出力 6dBm (最大) 保管温度 -40 C ~+85 C
参考距離 10m 動作温度 -25 C ~75 C
  1. コアモジュールにはHC-08を使用し、モジュールインターフェースからのリードにはVCC、GND、TXD、RXD、LEDステータス出力ピンが含まれます。
  2. LEDはBluetooth接続状態を示し、Bluetooth接続可能時に点滅し、Bluetooth接続およびポートオープン時に点灯します。バックプレート
  3. 3.3V LDO入力電圧3.6 6V、入力電圧は7V以上を禁止
  4. インターフェースレベル3.3V、各種MCU(51、AVR、PIC、ARM、MSP430等)に直接接続可能、5V MCUにも直接接続可能。
  5. 有効距離10メートル、10メートル以上も可能ですが、この距離の接続品質を保証するものではありません。
  6. ペアリング後、全二重シリアルポートとして使用する場合、Bluetoothプロトコルについて何も知る必要はなく、8データビット、1ストップビット、パリティなしの通信形式のみをサポートしています。これは最も一般的に使用される通信形式であり、他の形式はサポートしていません。
  7. コンパクト(3.57cm * 1.52cm)、工場出荷時のチップ製造により配置品質を保証。透明熱収縮チューブセット付き、防塵で美観、静電気防止。

ピン構成

ピン番号 ピン名 説明
1 Enable / Key このピンはデータモード(ロー設定)とATコマンドモード(ハイ設定)の切り替えに使用されます。デフォルトではデータモードです
2 Vcc モジュールの電源供給。+5V/+3.3V電源電圧に接続
3 Ground モジュールのグラウンドピン、システムグラウンドに接続。
4 TX – 送信機 シリアルデータの送信。Bluetooth経由で受信したものはすべて、このピンからシリアルデータとして出力されます。
5 RX – 受信機 シリアルデータの受信。このピンに与えられたシリアルデータはすべて、Bluetooth経由でブロードキャストされます
6 State ステートピンはオンボードLEDに接続されており、Bluetoothが正常に動作しているかを確認するフィードバックとして使用できます。
7 LED モジュールの状態を示します

  • 2秒ごとに1回点滅: モジュールがコマンドモードに入った
  • 繰り返し点滅: データモードで接続待ち
  • 1秒ごとに2回点滅: データモードで接続成功

HC-02 Bluetoothモジュールの使用場所

HC-02は、プロジェクトに双方向(全二重)無線機能を追加できる非常に優れたモジュールです。このモジュールを使用して、Arduino用などの2つのマイコン間で通信したり、PhoneやLaptopなどのBluetooth機能を備えたデバイスと通信したりできます。すでに多くのAndroidアプリケーションが利用可能で、このプロセスをはるかに簡単にします。iPhoneにも完全対応しています。このモジュールはUSARTで9600ボーのレートで通信するため、USARTをサポートするマイコンとのインターフェースは簡単です。コマンドモードを使用してモジュールのデフォルト値を設定することもできます。したがって、コンピュータや携帯電話からマイコンにデータを転送したり、その逆を行ったりする無線モジュールをお探しの場合、このモジュールが適しているかもしれません。

ただし、このモジュールで写真や音楽などのマルチメディアを転送することを期待しないでください。そのためにはCSR8645モジュールを検討する必要があります。

HC-02 Bluetoothモジュールの使用方法

HC-02には2つの動作モードがあります。1つは他のBluetoothデバイスとの間でデータの送受信ができるデータモード、もう1つはデフォルトデバイス設定を変更できるATコマンドモードです。ピン説明で説明したように、キーピンを使用してこれらの2つのモードのいずれかでデバイスを操作できます。

HC-02モジュールをマイコンとペアリングするのは非常に簡単です。シリアルポートプロトコル(SPP)を使用して動作するためです。モジュールに+5V/+3.3Vで電源を供給し、下図のようにモジュールのRxピンをMCUのTxに接続し、モジュールのTxピンをMCUのRxに接続するだけです

電源投入時、キーピンをグラウンドに接続するとコマンドモードに入り、フリーのままにするとデフォルトでデータモードに入ります。モジュールに電源が供給されるとすぐに、「HC-02」としてBluetoothデバイスを発見できるはずなので、デフォルトパスワード1234を使用して接続し、通信を開始できます。

動作原理

MCUとの接続

他のBluetoothモジュールとの接続

HC-06がホスト、HC-02がスレーブ、ペアリングコードが一致(デフォルトは1234)、ボーレートが同じであれば、電源投入時に自動接続できます。初回接続後、HC-06ホストは自動的にペアリング対象を記憶します。他のモジュールに接続したい場合は、まずHC-06ホストのペアリングメモリをクリアする必要があります。スレーブ側にはペアリングメモリはありません。

Android携帯電話との接続

HC-02はBluetooth経由でAndroid携帯電話に接続でき、AndroidではAndroidシリアルアシスタントソフトウェアを使用できます。

iPhoneとの接続

HC-02はiPhone 4S以降のiPhoneに接続できます。通信テストにはBLEシリアルアシスタントソフトウェアのダウンロードとインストールが必要です。
注意:
独自サービスUUID: 49535343-FE7D-4AE5-8FA9-9FAFD205E455
TX UUID: 49535343-1 E4D-4BD9-BA61-23C647249616
RX UUID: 49535343-8841-43F4-A8D4-ECBE34729BB3

PCとの接続

HC-02はHC-06-USB Bluetooth仮想シリアルポート経由でコンピュータに接続できます。
HC-02はコンピュータのBluetoothデバイスに接続して通信できます。

アプリケーション

1. 2つのマイコン間の無線通信

2. ノートPC、デスクトップ、携帯電話との通信

3. データロギングアプリケーション

4. 消費者向けアプリケーション

5. 無線ロボット

6. ホームオートメーション

ATコマンド

ATコマンドモードへの方法: モジュールに電源を供給し、ペアリングが不要な場合、
ATモードに入ります。コマンドの間隔は約1秒です。
デフォルトパラメータ: ボーレート:9600N81、ID: linvor、パスワード:1234

1. 通信テスト

送信: AT (1秒ごとに送信してください)
戻り: OK

2. Bluetoothシリアルボーレートのリセット

送信: AT+BAUD1
戻り: OK1200
送信: AT+BAUD2
戻り: OK2400
……
1———1200
2———2400
3———4800
4———9600 (デフォルト)
5———19200
6———38400
7———57600
8———115200
9———230400
A———460800
B———921600
C———1382400
PCは115200より高いボーレートをサポートできません。解決策は: プログラミングを通じてMCUがより高いボーレート
(115200より大きい)を持ち、AT
コマンドを通じてボーレートを低レベルにリセットすることです。
ATコマンドによるボーレートリセットは、電源が切られても
次回のために保持されます。

3. Bluetooth名のリセット

送信: AT+NAMEname
戻り: OKname

例:

送信: AT+NAMEosoyoo
戻り: OKname

このときBluetooth名は”osoyoo”に変更されます。

4. Bluetoothペアリングパスワードの変更

送信: AT+PINxxxx

戻り: OKsetPIN

詳細情報はATコマンドについてこちらのリンクを確認してください

サンプルATコマンドプロジェクト

Arduino UNOボードを使用してHC-02モジュールにATコマンドを送信し、Bluetooth名を変更する

目的: 多くの学校のロボット教室では、多くの学生が同じBluetooth名「HC-02」の複数のHC-02モジュールを使用しており、これにより学生のプロジェクト間で多くの競合が発生します。そのため、各学生のHC-02モジュールを他の人と競合しない一意の名前に変更する必要があります。

Arduinoボードを使用してHC-02にATコマンドを送信し、その名前を変更する方法は以下の通りです:
1)配線接続

2)以下のリンクからArduino ATコマンドスケッチをダウンロード:
https://osoyoo.com/driver/2wd/hc02.zip
上記ファイルを解凍すると、「hc02」というフォルダが表示されます。そのフォルダに入り、hc02.inoファイルをダブルクリックしてArduino IDEで開いてください。

3)シリアルモニターでATコマンドをテスト
hc02.inoコードをArduinoにアップロードした後、Arduino IDEシリアルモニターを開き、ボーレートを9600に設定し、ラインモードをNo Line Endingに設定してください:

ATコマンドをテストするには、出力フィールドにATと入力してEnterキーを押してください。シリアルモニターにOKが表示されるはずです(上記の画像を参照)。OKが表示されない場合は、ステップ1〜3を再確認してください。

4) 이제 AT コマンドを使用して HC-02 Bluetooth モジュールを変更できます。 
フォーマットは AT+NAMEnewname です

例えば、HC-02モジュール名をosoyoo2025に変更したい場合、シリアルモニターに以下のATコマンドを入力してください:
AT+NAMEosoyoo2025

Enterキーを押すと、シリアルモニターに以下のように応答します:

OKsetname

これは、Bluetoothモジュールの新しい名前がosoyoo2025に変更されたことを意味します