ワイヤレス通信は、この新しい時代におけるエキサイティングなコンセプトです。最新の電子機器のほとんどではないにしても、一部は何らかの形でワイヤレス通信を使用しています。この記事では、HM-10 と、Bluetooth Low Energy モジュールを使用してワイヤレス通信を確立する上でのその重要な役割について説明します。 HM-10 を理解するために必要なすべての情報を読み、取得してください。さまざまな必要なコンポーネントはここで入手できます。
このモデルの設計には、CC2540 または CC2541 Bluetooth SOC (システム オン チップ) Bluetooth Low Energy (BLE) が採用されています。
ピン番号 | ピン名 | ピンの説明 |
1 | UART_TX | UART インターフェイス - 送信 |
2 | UART_RX | UART インターフェイス - 受信 |
3 | UART_CTS | UART インターフェース |
4 | UART_RTS | UART インターフェース |
5-10 | NC | 接続なし |
11 | リセット | 100 ミリ秒間 Low の場合はリセット |
12 | VCC | 3.3V |
13-14 | GND | グラウンド |
15 | USB_D- | USB インターフェイス |
16-19 | NC | 接続なし |
20 | USB_D+ | USB インターフェイス |
21-22 | GND | グラウンド |
23 | PIO0 | システム キー |
24 | PIO1 | システム LED |
25-34 | PIO2-11 | プログラム可能な入出力ライン |
表>
上の表は、各ピンとその機能を示しています。
HM-10 BLE モジュールには、HM10C と HM-10S の 2 つのバージョンがあります。
2. HM-10 モジュールの特徴
- 送受信時のバイト制限なし
- Bluetooth 低エネルギー消費 (BLE チップ)
- Bluetooth バージョン:V4.0
- 動作周波数:2.4GHz ISM バンド
- デバイスがスリープ モードのときは 50 ~ 200uA を使用
- 12 個の汎用入出力ピン
- UART シリアル インターフェース &フルスピード USB インターフェース
- キャプチャ付き 32 kHz スリープ タイマー
- インサーキット シリアル プログラミング 128 KB または 256 KB
- 8 KB の静的ランダム アクセス メモリ
- 長距離:最大 100M のオープン スペース
- ポータブルサイズ
持ち運びが簡単な Bluetooth モジュール
2.1 HM-10 モジュールの仕様は :
- モジュールの動作電圧:2.0V – 3.6V
- 低電圧で動作
- 235uA のバックアップ バッテリー消費量
- RF 入力レベル:10dBm
- + 3.9V 最大電圧
- -40ºC から +85ºC の動作温度
- 静電気放電:750V
HM-10の代わりにHM-11、HM-01~HM-09も使用できます。
HC-08 Bluetooth モジュール
3.では、HM-10 モジュールはどこで使用できますか?
- HM-10 BLE モジュールは、100 メートル以下の短距離ワイヤレス通信に便利です。
- 消費電力が少ないため、携帯端末にも便利です。
- HM-10 Bluetooth 4.0 モジュールは安価で、低コストのプロジェクトに適しています。
- UART 通信を使用して、Arduino ボードなどのほとんどのコントローラやプロセッサに接続します。
その他のアプリケーションには以下が含まれます:
- ロボット工学
- USB ドングル
- サーバー
- 医療機器
- レジャーおよびスポーツ用品
- コンピュータ周辺機器
Bluetooth モジュールを使用する酸素濃度計
4. HM-10 モジュールの使い方
UART シリアル接続により、モジュールを Arduino と簡単にペアリングできます。
モジュールを Arduino または Raspberry Pi と統合する際に問題が発生した場合は、HM-10 データシートを参照してください。
ベースボード上の HM-10 センサー
プロジェクトで使用する前に、HM-10 モジュールが本物であることを確認することが重要です。
したがって、複製されたモジュールを避けるために、32KHz の水晶振動子を備えていることを確認してください。
または、複製されたモジュールのファームウェアをダウンロードして、モジュールのファームウェア バージョンを変更する必要があります。
そうしないと、AT コマンドでモジュールにアクセスしたり、ファームウェアを変更せずにスマートフォンとペアリングしたりすることができなくなります。
BLE モジュールは、Android デバイスなどの他の BLE 対応デバイス、つまり 2 つの HM-10 と通信できます。
通信はシリアル UART を介して可能であり、AT コマンド セットを使用して完全にカスタマイズ可能です。
このモジュールは、3.3V 電源レギュレータを含む CC2541 Bluetooth 用のブレークアウト ボードです。
特に、Arduino 5V ボードを使用する場合、HM-10 RX ピンは通常 3.3V のままです。したがって、Arduino の HM-10 TX ピンを 3.3V に変換する必要があります。
4.1 必要なコンポーネント
- Arduino Bluetooth コントローラ
- HM-10 Bluetooth モジュール
- 抵抗器 (1 kΩ、470 Ω)
- 接続ワイヤ (FTDI)
- Arduino IDE
- Android アプリ - BLE スキャナー (HM-10 モジュール)
4.2 回路図
HM-10 回路イメージ
ソース:https://www.youtube.com/watch?v=geSEbu6mj2Q
4.3 Arduino モジュールのセットアップ + AT コマンド
AT コマンドを実行するには、PC で Arduino ボードを開き、正しい USB ポートを選択してください。
次に、シリアル モニターを開き、デフォルトのボー レートが工場出荷時のデフォルトの 9600 であることを確認します。
次に、コマンド AT+NAME? を入力します。 スペースなし。 OK+NAME:HMSoft と表示されるはずです
Bluetooth 4.0 LE と通信できるようになりました。
4.4 2 台の HM-10 間でのデータの送受信
このステップでは、2 台の HM-10 間でデータを送受信できます。
AT コマンドを使用 AT+ADDR? 元の MAC アドレスを照会します。
出力は 20C38FF61DA1 のようになり、各 HM-10 BLE が一意のアドレスを持つことを覚えています。
2 台の HM-10 をペアリングするには、コマンド AT+CON[param1] を使用します および AT+ROLE[param1].
4.5 HM-10 BLE 4.0 と Arduino ボードの配線
Arduino Bluetooth コントローラーとモジュールのインターフェースは、次のように接続する必要があります。
HM-10 | Arduino |
HM-10 TX | D2 |
HN-10 RX | D3 |
GND | GND |
VCC | 3.3V |
表>
ソフトウェア シリアルまたはハードウェア シリアルのいずれかを使用して、Arduino UNO をプログラムできます。サンプル プロジェクトでは、ソフトウェア シリアルを使用します。
HM-10 と接続する Arduino Bluetooth コントローラ
ソース: https://www.youtube.com/watch?v=Xt5e10B4Eq0&t=13s
以下のコードは、Arduino Bluetooth コントローラーと Bluetooth Low Energy を使用して LED を制御する方法を説明しています。
#include
ソフトウェアシリアル HM10(2, 3); // RX =2、TX =3
char appData;
文字列 inData =“”;
ボイドセットアップ()
{
Serial.begin(9600);
Serial.println(“HM10 シリアルは 9600 で開始”);
HM10.begin(9600); // HM10 シリアルを 9600 ボーレートに設定
pinMode(13、出力); // オンボード LED
デジタル書き込み (13、低); // LED をオフにする
}
空ループ()
{
HM10.listen(); // HM10 ポートをリッスン
while (HM10.available()> 0) { // HM10 が何かを送信した場合は読み取り
appData =HM10.read();
inData =文字列 (appData); // データを文字列形式で保存
Serial.write(appData);
}
if (Serial.available()) { // 利用可能な場合はユーザー入力を読み取ります。
遅延(10);
HM10.write(シリアル.read());
}
if ( inData =="F") {
Serial.println(“LED オフ”);
デジタル書き込み (13、低); // LED をオフにする
遅延(500);
}
if ( inData ==“N”) {
Serial.println(“LED オン”);
デジタル書き込み (13、高); // LED をオフにする
遅延(500);
デジタル書き込み (13、低); // LED をオフにする
遅延(500);
}
}
4.6 BLE Android スキャナー アプリ
Bluetooth Low Energy モジュールで Android デバイスを使用するには、まずモバイル デバイス用の BLE スキャナーをダウンロードする必要があります。
リンクはこちらです。
完了したら、アプリを起動し、Bluetooth と位置情報へのアクセス許可を付与します。
アプリの許可ページ
ソース:アプリのスクリーンショット ( https://play.google.com/store/apps/details?id=com.macdom.ble.blescanner&hl=en_IN )
次にデバイスをスキャンします。Bluetooth Low Energy 4.0 は MLT-BT05 の下にあります。
123456789 を使用 ペアリングコードとして。接続して、準備完了です。
接続の準備ができたら、MLT-BT05 をクリックします。 その他のオプションについては、カスタム サービスを選択してください。
次に、オプション R、W、N があります。
テストのために、W をクリックして send1 または 0 を送信し、Android デバイスで LED を操作します。
5. HM-10 BLE は他のモジュールとどう違うのですか?
Bluetooth 4.0 LE と他との大きな違いは、Bluetooth バージョンです。
工場出荷時のデフォルト設定には、すべての Bluetooth 4.0 機能が含まれていることに注意してください。
工場出荷時のデフォルト設定では、低消費電力で最大 24Mbps の送信も可能です。
したがって、HM-10 を Bluetooth 2/2.1 などの他のモジュールと比較すると、HM-10 の方がパフォーマンスが優れています。
HC-05 モジュールは、Bluetooth 2.0 を使用するモジュールの 1 つです。

HC-05 モジュール
ソース: https://freesvg.org/1554744332
6.結論
要約すると、HM-10 モジュールの機能を広範囲に調べました。また、Arduino をデフォルト設定で簡単に統合できるようになりました。ベースボードといくつかのコンポーネントがあれば、大騒ぎせずにプロジェクトを実施できるようになりました。詳細、質問、またはこれらのコンポーネントの購入を検討している場合は、こちらからお問い合わせください。