Technical Information/etc.
micro:bit用LoRaモジュールの作成
2021/3/13
ES920LRはLoRa変調を採用した920MHz帯長距離無線モジュールで、ファームウェアの書き換えでLoRa変調独自通信と、LoRaWANエンドノードを切り替えることができます。今回はmicro:bitに接続できるモジュールを作成しました。
回路図
外形寸法図
部品構成
機能
- micro:bitから本モジュールに実装されたES920LRを制御
- 本モジュールに取り付けた単4電池3本からmicro:bitへの3.3V電源供給をon/offスイッチにより制御
- サービスコネクタCN2経由で外部モジュールに電池電圧を供給(on/offスイッチにより制御)
- サービスコネクタCN3経由でmicro:bitの2pinへセンサを接続
- CN1を実装した場合、サービスコネクタCN1経由で外部モジュールに3.3Vを供給 (on/offスイッチにより制御)
組立方法
- 表面実装部品を実装します。その後、CN4のピンヘッダを実装します。
- ES920LR BREAKOUT BOARDを実装します。
- 裏返してバッテリーホルダを取り付けます。
→
- 裏返して、リードをはんだ付けします。はんだ付けのあと、リードをカットします。
→
- micro:bitの端子にスペーサ(六角両メネジ 11mm)を皿ねじで取り付けます。(5箇所)
- 本モジュールにmicro:bitをなべ小ねじで取り付けます。(5箇所)
- これでモジュールの組み立ては完了です。
- 電池ホルダーに単4電池を取り付けます。真ん中のねじを10mmのスペーサに変更すると、電池を入れた状態でも本モジュールを自立させることができます。
- 本モジュールのスライドスイッチ(SW1)を右側にすると電源が入ります。
- 予めmicro:bitに書き込まれたプログラムが動作を開始します。
使用例
- まず、通信相手のES920LRを準備します。ここではパソコンにUSB-UART変換モジュール経由で独自通信ファームウェアのES920LRを接続し、ノードid 0000のコーディネータに設定し、id 0001のエンドデバイスとの1:1通信ができるように設定しておきます。最後にオペレーションモードへ移行させます。
- 次にマイクロビットに下記のプログラムを書き込みます。プログラムではまず独自通信のファームウェアのES920LRをプロセッサモードで起動し、ノードid 0001のエンドデバイスに設定した後にオペレーションモードへ移行させます。あとは、1秒毎にLEDを点滅させ、ES920LRからのメッセージをLEDに表示させます。また、ボタンAが押されたら、定型の文字列「Pushed!」をES920LRで無線送信します。
- micro:bitのJavaScriptプログラムソース
input.onButtonPressed(Button.A, function () {
led.plot(2, 2)
serial.writeString("" + ("Pushed!\r\n"))
basic.pause(200)
led.toggle(2, 2)
})
serial.onDataReceived(serial.delimiters(Delimiters.NewLine), function () {
basic.showString(serial.readLine())
})
basic.pause(3000)
serial.redirect(
SerialPin.P0,
SerialPin.P1,
BaudRate.BaudRate115200
)
serial.writeString("" + ("2\r\n"))
basic.pause(100)
serial.writeString("" + ("a 2\r\n"))
basic.pause(100)
serial.writeString("" + ("z\r\n"))
basic.forever(function () {
led.plot(0, 0)
basic.pause(100)
led.toggle(0, 0)
basic.pause(900)
})
本モジュール側からAボタンを押してPC側で「Pushed!」メッセージを受信した後、
PC側から「Hello!」を送信。このとき、本モジュールのLEDに受信文字列 「Hello!」
が表示されます。
補足説明
- 本モジュールとmicro:bitを接続した状態でmicro:bitのプログラムを行う場合は、必ず本モジュールの電源スイッチをoffにした後で、micro:bitのusbコネクタにPCに接続したUSBケーブルを接続してください。
- micro:bit v1とv2のねじ穴の中心は微妙にずれているため、B0043基板のねじ穴を若干大きめにして遊びをもたせてあります。ねじ止めの際はmicro:bit側の皿ねじを先に締結してください。そのあと、B0043基板側をなべねじで締結してください。(皿ねじは不可です)また、B0043基板のねじ止め時にはmicro:bit側のモジュールの角度を微調整してください。