Files

134 lines
4.6 KiB
Markdown
Raw Permalink Normal View History

2019-02-14 10:21:14 +08:00
# LoRaWAN モジュール(433/470MHz和868/915MHz) {docsify-ignore-all}
2018-12-25 16:04:58 +08:00
2018-12-29 18:15:57 +08:00
<img src="assets/img/product_pics/module/module_lora_01.png" width="30%" height="30%"> <img src="assets/img/product_pics/module/module_lora_02.png" width="30%" height="30%"> <img src="assets/img/product_pics/module/module_lora_03.png" width="30%" height="30%">
2018-12-25 16:04:58 +08:00
2018-12-25 17:20:16 +08:00
***
2019-01-15 18:13:30 +08:00
:memo:**[概要](#概要)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:octocat:**[サンプルコード](#サンプルコード)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:electric_plug:**[回路図](#回路図)**&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-New-LoRaWAN-Module-433-470Mhz-868-915MHz-with-Internal-Antenna-and-MCX-External-Antenna-Port/3226069_32953098569.html?spm=a2g1y.12024536.productList_5885011.pic_2)**
2018-12-25 16:04:58 +08:00
## 概要
**<mark>LoRaWAN</mark>**モジュールはLoRaチップ(SX1276)とMCU内蔵の小型LoRa端末モジュールです。完全なLoRaプロトコルスタックが組み込まれており、UARTまたはsimple ATコマンドを利用してLoRaWANモジュールを開発することができます。
デフォルトUART config: "9600, 8, n, 1" (8ビットデータ, ノーパリティ, 1ストップビット)
?> "LoRaWAN"シルクスクリーンの隣の5つの穴はLoRaWANモジュールのファームウェアアップデート用です。
## 特徴
- サポートバンド: 433/470MHz , 868/915MHz
- データレート: 0.018-38.4kbps
- 出力: 17 ± 0.5dbm
- ADR(Adaptive Data Rate)サポート
- アンテナ内蔵
## パッケージ内容
- 1x LoRaWAN モジュール
## アプリケーション
- オートメーターリーダー
- スマートホーム
- リモート灌漑システム
## ピンマップ
|RHF76-052_UART | ESP32 Chip |
|:--------------|:-----------|
|RXD | GPIO16 |
|TXD | GPIO17 |
2018-12-25 17:20:16 +08:00
## 関連リンク
2018-12-25 16:04:58 +08:00
2018-12-25 17:20:16 +08:00
- **[公式ビデオ](https://www.youtube.com/channel/UCozgFVglWYQXbvTmGyS739w)**
2018-12-25 16:04:58 +08:00
2018-12-25 17:20:16 +08:00
- **[フォーラム](http://forum.m5stack.com/)**
2018-12-25 16:04:58 +08:00
2019-03-05 16:55:44 +08:00
- **[LoRaWAN Info](http://wiki.ai-thinker.com/sx127x-052) (LoRaWAN)**
- **データシート**
- [ATコマンド for LoRaWAN](http://wiki.ai-thinker.com/_media/rhf-ps01509_module_lorawan_class_ac_at_command_specification_-_v4.4.pdf)
2018-12-25 16:04:58 +08:00
2019-05-06 19:41:55 +08:00
- **[LoRaWAN 地域パラメータ](https://lora-alliance.org/sites/default/files/2018-04/lorawantm_regional_parameters_v1.1rb_-_final.pdf)**
2018-12-25 17:20:16 +08:00
## サンプルコード
2018-12-29 18:15:57 +08:00
### Arduino IDE
2018-12-25 17:20:16 +08:00
2019-03-05 16:55:44 +08:00
これは2つのLoRaWANモジュール間通信のサンプルです。`3.6 Point to Point communication with LoRa` of [LoRaWAN User Manual](http://wiki.ai-thinker.com/_media/lora/docs/rhf76-052_ho_to_use_ai-thinker_s_lorawan_modem.pdf)のセクションを参考にしてください。
2018-12-25 17:20:16 +08:00
機能:ボタンBを押すと、433MHz帯を用いて文字列「Hello World」を送信します。ボタンCを押すと、868MHz帯を用いて文字列「Hello World」を送信します。ボタンAを押すと画面をクリアします。
注:M5Stack用のLoraWanプログラムはコンパイルする前に、以下のパスに解凍する必要があります。 `C:\Users\<user_name>\Documents\Arduino\libraries`
2019-03-05 16:55:44 +08:00
*完全なソースコードは[こちら](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Module/LORAWAN/Arduino)。*
2018-12-29 18:15:57 +08:00
```arduino
/*
device_A.ino
2018-12-29 18:15:57 +08:00
*/
#include <M5Stack.h>
#include <LoRaWan.h>
2018-12-29 18:15:57 +08:00
#define SerialUSB Serial
2018-12-29 18:15:57 +08:00
// declaration
M5.begin();
SerialUSB.begin(9600);
lora.init();
delay(2000); // must delay for lorawan power on
2018-12-29 18:15:57 +08:00
// 433MHz frequency initialization
lora.initP2PMode(433, SF12, BW500, 8, 8, 20);
2018-12-29 18:15:57 +08:00
// 868MHz frequency initialization
lora.initP2PMode(868, SF12, BW500, 8, 8, 20);
// send string
lora.transferPacketP2PMode("hello world");
// receive data
short length = 0;
short rssi = 0;
memset(buffer, 0, 128);
length = lora.receivePacketP2PMode(buffer, 128, &rssi, 1);
2018-12-29 18:15:57 +08:00
```
```arduino
/*
device_B.ino
2018-12-29 18:15:57 +08:00
*/
#include <M5Stack.h>
#include <LoRaWan.h>
2018-12-29 18:15:57 +08:00
#define SerialUSB Serial
2018-12-29 18:15:57 +08:00
// declaration
M5.begin();
SerialUSB.begin(9600);
lora.init();
delay(2000); // must delay for lorawan power on
2018-12-29 18:15:57 +08:00
// 433MHz frequency initialization
lora.initP2PMode(433, SF12, BW500, 8, 8, 20);
// 868MHz frequency initialization
lora.initP2PMode(868, SF12, BW500, 8, 8, 20);
// send string
lora.transferPacketP2PMode("hello world");
// receive data
short length = 0;
short rssi = 0;
memset(buffer, 0, 128);
length = lora.receivePacketP2PMode(buffer, 128, &rssi, 1);
2018-12-29 18:15:57 +08:00
```
<img src="assets/img/product_pics/module/module_example/LORAWAN/example_module_lorawan_01.png">
2019-01-15 18:13:30 +08:00
## 回路図
2018-12-25 17:20:16 +08:00
2019-01-15 18:13:30 +08:00
<img src="assets/img/product_pics/module/lorawan_sch.png">