LoRaチュートリアル(1) ES920LRセットアップ

初めに

 このチュートリアルは私が所属している課外活動ではLoRaモジュール(ES920LR)を使用しています。後輩に指導するときの資料としてこの記事を書きます。

 作るものとしては、超音波距離センサを使って距離を測り、LoRaを使って送信して、30cm以下になったれLEDが点灯するシステムを作ります。

準備するもの

ES920LR × 2

Arduino UNO × 2

LED × 1

超音波距離センサ(SR04) × 1

ArudinoとES920LRを接続する

ArduinoとES920LRを以下のように配線します。

Arduino ES920LR
3.3V VCC
3.3V VCCRF
GND GND
TX TX
RX RX

Arduinoに空のプログラムを書き込みます。

void setup() {
  // put your setup code here, to run once:

}

void loop() {
  // put your main code here, to run repeatedly:

}

ES920LRは中にマイコンが入っており、そいつがLoRaのチップ(sx1276)とやり取りをしてくれます。

そのため、ArduinoからES920LRを操作するときはシリアル通信で行います。

プログラムをArduinoに書き込むときは、TXとRXのジャンパー線を外しておきます。

プログラムを書き込んだら、シリアルモニターを開き改行をCRおよびLF、ボーレートを115200に設定します。

3.3Vのジャンパー線を抜き差して、シリアルモニターに以下のような文字列が表示されればOKです。

Select Mode [1.terminal or 2.processor]

1を入力してterminalモードに入ります。そうするとコマンドの一覧が出てくるので、それを見ながら以下のように設定します。

注意点としては、ボーレートを9600に変えた後はシリアルモニターにボーレートも9600に変更してください。

コマンドの詳細に関しては コマンドシート を見てください。

configuration setting is below.
  -------------------------------------
  Node                        : EndDevice
  Band Width                  : 125kHz
  Spreading Factor            : 12
  Effective Bitrate           : 293bps
  Channel                     : 1
  PAN ID                      : 0001
  Own Node ID                 : 0001
  Destination ID              : 0000
  Acknowledge                 : ON
  Retry count                 : 3
  Transfer Mode               : Frame
  Receive Node ID information : ON
  RSSI information            : OFF
  Config/Operation            : Configuration
  UART baudrate               : 9600
  Sleep Mode                  : No Sleep
  Sleep Time                  : 50
  Output Power                : 13dBm
  Format                      : ASCII
  Send Time                   : 0
  Send Data                   : 

設定を保存するには、wを入力します。 もう一つのES920LRも同様に設定します。ただし、Own Node IDは違うものにしてください。

2つとも設定が完了したら、もう一度ターミナルモードに入りzでオペレーションモードに入ります。

PCが一台にしかない場合は、TeraTarmを使ってもう一台接続してください。

00010002testを入力して送信すると、メッセージを送信することができます。

受信側のシリアルモニターはこんな感じになります。

--> receive data info[panid = 0001, srcid = 0001, dstid = 0002, length = 04]
PAN ID(0001):Src ID(0001):Receive Data(test)

メッセージが送信できない場合は、アンテナを付けてもう一度行ってみてください。