多くのエンジニアは、プロジェクトの接続性についてしばしば困難に直面しますが、Bluetoothモジュールを使えばこの問題は簡単に解決できます。そのため、オートメーションの専門家やIoT愛好家は、ArduinoやRaspberry Piなどのマイクロコントローラーをベースにプロジェクトを構築することを好みます。しかし、これらのマイクロコントローラーは、接続機能を有効にしない限り、他のデバイスと通信できません。そのため、この接続機能はBluetoothモジュールを介して提供されることがよくあります。
Bluetoothモジュールは小型なので、Arduinoやその他のマイクロコントローラープロジェクトに簡単に組み込むことができます。また、その名の通り、このモジュールはBluetooth技術を用いて周囲のデバイスと通信します。そのため、単純なデータ転送からリモートコントロールまで、全く新しい可能性を広げます。
Bluetoothモジュールのピン配置とピンの説明
一般的なBluetoothモジュールは4つの基本ピンで構成されています。それぞれの名称と機能は以下で概説します。
| シリアル番号。 | ピン留め | 演算 |
| 1. | GND | 接地 |
| 2. | VCC | 電源 |
| 3. | RX | シリアルデータを受信する |
| 4. | TX | シリアルデータを送信する |
1) GND
このピンは基本的に回路のグランドを提供する役割を果たします。グランドの提供は電子工学において不可欠な概念であり、グランドがなければ電子機器は真に機能しません。したがって、このピンはBLEモジュールにとって非常に重要な部分です。
2) VCC
このピンはBLEモジュールへの電源供給に使用します。つまり、Bluetoothモジュールが必要な電力を引き出すための重要なポイントとなります。そのため、VCCはあらゆるBluetoothモジュールにおいて最も重要なピンです。
3) RX
このピンは主に、指定されたネットワークノードまたは特定の近隣デバイスから指定されたデータを受信するために使用されます。つまり、このピンを使用して、Bluetoothネットワーク内の他のデバイス、またはネットワーク自体から必要な指示や情報を受信します。したがって、このピンは、IoT展開におけるBLEモジュールの使用の基礎となります。
4) テキサス州
このピンにより、Bluetoothモジュールは指定されたデータをネットワークまたは近くのデバイスに送信できます。指定されたデータは、多くの場合、マイクロコントローラに接続されたセンサーによって収集されたデータです。そのため、このピンはBluetoothモジュールの潜在能力を真に解き放ちます。データ収集のためにBluetoothモジュールを遠隔地に設置する必要がある場合は、収集したデータと処理済みの情報を定期的に送信するために、このピンを頼りにすることができます。
MOKOSMARTが提供するBluetoothモジュール
1) HZX

技術仕様
- オンボードチップとしてnRF51822qfaaを搭載しています。ただし、ご希望であればnRF51822qfacもご利用いただけます。
- この Arduino Bluetooth モジュールの通信距離は約 30 メートルです。
- つまり、周波数範囲は2.4GHzです
- 複数のRAM容量に対応しています。16KB、32KB、256KBのRAMからお選びいただけます。
- したがって、40℃〜85℃の温度範囲内で問題なく動作します。
- 非常に高い性能を発揮する3軸リニア加速度計を搭載していますが、消費電力はごくわずかです。
- さらに、このモジュールにはオンボードアンテナが搭載されています。
- RTCを搭載しており、時間カウンターとして機能します。
- このモジュールは非常に安全で、AES HW による暗号化機能を備えています。
- QDEC機能を備えているため、すぐに導入できます。
電気的特徴
- 内部LDOの動作電圧は2.0V~3.6Vです。
- 外部 LDO の場合、動作電圧は 1.8V ~ 3.6V です。
- 出力電力は -20 ~ +4 dBm の範囲内でプログラムできます。
- さらに、CPU から独立した PPI を備えています。
- すべての入出力に拡張ピンヘッダーを備えています。ただし、P0.27とP.026は例外です。
- このモジュールは、UART (CTS/RTS)、SPI マスター/スレーブ、I2C 用の特別なデジタル インターフェイスを備えています。
- 8/9/10ビットADCで構成できるため、NRF24Lシリーズと完全に互換性があります。
2) MK02 nRF52832およびMK04 nRF52832 BLEモジュール


技術仕様
- 2.4GHzで動作するマルチプロトコルトランシーバーを搭載
- 低エネルギーモードを備えており、Bluetooth 感度は -96 dBm になります。
- この Bluetooth オーディオ モジュールは、64kB の RAM と 512kB のフラッシュを搭載しています。
- 30 個を超える I/O ピンがあり、すべて構成可能です。
- この WIFI Bluetooth モジュールは、EasyDMA を介して AES HW 暗号化を可能にします。
- この BLE モジュールには独自の温度センサーが搭載されています。
- 寸法は21×13.8×0.8mmです。
- この低消費電力Bluetoothモジュールは、最大32つのXNUMXビットタイマーを搭載しています。これらのタイマーにはそれぞれ独自のカウンターモードが備わっています。
- 接続性を大幅に向上させる NFC-A タグを備えています。
電気的特徴
- この Bluetooth 4.0 モジュールの TX ピンのピーク電流は 5.3 mA です。
- この Bluetooth 低エネルギー モジュールは、RX ピンで 5.4 mA のピーク電流を特徴としています。
- BLE モジュールには独自の PPI が搭載されています。
- これらは12ビット、200kspsのADCを搭載しており、8つのチャンネルは設定可能です。そのため、ゲインもプログラム可能です。
- 3.6V~1.7Vの範囲の電圧を供給します。
- このモジュールには、単一ピンアンテナを備えたインターフェースがあります。
3) MK10

技術仕様
- BLEモードでは-95dBmの感度を持ちます。
- 長距離にわたって-103dBmの感度を持ちます。
- この Bluetooth 5.0 モジュールは、1dB の解像度を持つ RSSI を備えています。
- RAM は 256kB、フラッシュは 1MB です。
- セキュリティはHWによって強化されます。
- AAR、ECB、CCM、AES を含む複数の 128 ビット コプロセッサを備えています。
- この BLE モジュールは USB2.0 コントローラを搭載しています。
- 約 48 個の I/O ピンがあります。
- 寸法は30.0×20.0×0.8mmです。
- 64MHzの内部発振器を搭載しており、高速ウェイクアップが可能です。
電気的特徴
- Tx ピンの電力は +8dBm です。
- nRF24L、nRF52、nRF24AP、nRF24L シリーズと互換性があります。
- 出力は -20dB から +8dBm までプログラムできます。
- これにより、非常に柔軟な電力管理システムが提供されます。
- 5,5V~1.7Vの範囲の電圧を供給します。
- 外部コンポーネントの場合、電源を 3.3V から 1.8V に調整します。
Bluetoothモジュールの機能
1) デバイス間の接続
Arduinoプロジェクトでは、プロジェクトを周囲のデバイスと通信させたい場合に主にBLEモジュールを使用します。つまり、Bluetoothモジュールの主な目的は、マイクロコントローラープロジェクトに接続性を持たせることだと言えます。したがって、プロジェクトが周囲のデバイスと通信できるようになれば、次の開発に進むことができます。
2) データの収集と送信
IoTプロジェクトを展開する主な理由の一つは、データの収集です。例えば、温度、圧力、湿度などの監視が挙げられます。そのため、IoTプロジェクトではセンサーがデータを収集したら、それを私たちに送信してもらう必要があります。この目的のために、マイクロコントローラーが収集したデータを効率的に送信できるようにするBLEモジュールを使用しています。
3)自動化
マイクロコントローラーを介してIoTプロジェクトを開発・展開する主な理由の一つは、自動化を目指しているからです。自動化とは、テクノロジーの助けを借りて定型的なタスクを自動的に実行するという概念です。例えば、火災が発生したときに警報を鳴らしたり、圧力が高すぎるときにガス容器を空にしたりすることなどです。したがって、産業用IoTアプリケーションでは自動化が非常に望まれます。しかし、BLEモジュールの機能を活用しなければ、自動化を実現することはできません。BLEモジュールは、マイクロコントローラーがBluetooth信号を介して関連する機械システムに指示を送信できるようにします。
4) リモコン
遠く離れた物体を制御することをリモートコントロールと呼びます。しかし、これはBLEモジュールの助けを借りてのみ実現できます。BLEモジュールは、遠くにある電子機器に適切なコマンドを送信することを可能にします。そのため、私たちは多くの労力を費やすことなく、同じタスクを遠くから簡単に実行できます。
Bluetoothモジュールの用途
1) ロボティクス
BLEモジュールの最大の応用分野はロボット工学です。Bluetooth機能を利用してロボットの動きや動作を制御できます。この目的のために、Arduinoを使ってロボットを組み立て、そこにBluetoothモジュールを組み込みます。そうすることで、専用アプリを使ってロボットの動きを制御できるようになります。さらに、Bluetoothの範囲内であれば、ロボットの動作を制御することもできます。
2)セキュリティ
最近のスマートデバイスはすべてBluetoothに対応しています。そして、すべてのデバイスには固有のBluetooth識別子が割り当てられています。そのため、この機能をセキュリティアプリケーションに活用できます。例えば、ある家の入り口を安全にしたいとします。この目的のために、ArduinoとBLEモジュールを使って検証装置を構築し、玄関ゲートの近くに設置します。人が家に入ろうとすると、検証装置はその人のスマートフォンのBluetooth識別子をスキャンします。識別子が承認された人物として認識された場合、その人は入室を許可されます。一方、識別子が承認されなかった場合は、検証装置は家の住人に警告を発します。
3) 資産管理と追跡
大規模な倉庫や百貨店は、在庫管理に苦労することがよくあります。店舗の規模が大きすぎるため、商品が紛失した際に店内全体を捜索するには人力では不十分であることが大きな問題です。そこでBLEモジュールが役立ちます。重要な在庫情報にビーコンを取り付けると、中央のBluetoothモジュールが各ビーコンとの安全な通信を確立します。このリンクを使用して三角測量により在庫の位置を特定し、紛失した場合でも簡単に見つけることができます。
Bluetooth モジュールの使い方は?
Arduinoなどのマイクロコントローラーに慣れている方なら、Bluetoothモジュールの使い方は比較的簡単です。以下は、Bluetoothモジュールの使い方をステップバイステップで解説するガイドです。
1) BluetoothモジュールをArduinoに接続する
前述したように、Bluetoothモジュールには4つのピンがあります。そのため、これらのピンをそれぞれArduinoの対応するコンポーネントに接続する必要があります。
- BLEモジュールのRXピンはAdrianoのRXピンに接続されています
- BLEモジュールのTXピンはAdrianoのTXピンに接続されています
- BluetoothモジュールのVCCピンに5Vバッテリーを接続します
- BLEモジュールのGNDピンはAdrianoのGNDピンに接続されています
2) 指示をコード形式で記述する
Arduinoには独自の言語とIDEがあります。そのため、Bluetoothモジュールに渡す命令はすべて、Arduinoコードに変換する必要があります。
3) Arduinoに命令(コード)をアップロードする
次に、専用のUSBポートを使ってArduinoにコードをアップロードします。これでBluetoothモジュールがアクティブになり、使用できるようになります。
4) Bluetoothモジュールの展開
これで、選択した IoT アプリケーションに Arduino とともに BLE モジュールを展開できます。
配線モード
RJ25で接続
BLEモジュールのIDは灰色または青色であることが多いため、RJ25を使用する場合は、Makeblock Orionの灰色または青色のIDを持つポートに接続する必要があります。
デュポンワイヤーで接続
Arduino ボードと Bluetooth モジュール間の接続を確立するためにデュポン ワイヤを使用する場合は、デジタル ポート 0 と 1 を RX ピンと TX ピンに接続する必要があります。
プログラミングガイド
Bluetoothモジュールに命令を送るには、Arduino言語を使って命令をコードに変換する必要があります。ご存知の通り、すべてのプログラミング言語には専用のライブラリがあり、Arduinoにも専用のライブラリがあります。そのため、BLEモジュールを使用する場合は、Makeblock-Library-masterを使用する必要があります。そのため、実際にデプロイする前に、コードとBluetoothモジュールの応答を徹底的にテストすることを強くお勧めします。Arduinoには、デバッグ機能が組み込まれた独自のIDEがあります。これらのIDEを使用することで、コードのパフォーマンスを最適化できます。







