この記事について
この記事では、LoRaモジュール「LRA1」で使える 2つの通信モード(LoRaWANモードとP2Pモード) の違いと特徴について紹介します。
前回の記事で登場した「LoRaとLoRaWANの違い」をふまえて、
「じゃあLRA1ではどう使えばいいの?」という視点で整理していきます。
🎀 “結局、LoRaって何ができるの?”って思ってる人に、まず読んでほしい回だよ〜!
LRA1で使える「2つの通信モード」
ここからは、実際の使い方に踏み込んでいきます!
LRA1では、LoRaの使い方として次の2つのモードを選べます:
- IoTシステムに組み込みやすい LoRaWANモード(標準ネットワーク)
- 気軽に使えて自由度の高い P2Pモード(独自通信)
🎀「LoRaのモードは2つ!
LoRaWANが“まかせて安心”、P2Pは“自分で自由に”っていう感じだねぇ〜!」
LoRaWANモード(標準通信モード)
- LoRaWANのルールに沿った通信をする
- 必ずゲートウェイとLoRaサーバーが必要
- デバイスの登録やセキュリティ設定も必要
- 通信後の再送制御やダウンリンク受信などは、自動で処理される
- 通信内容は常に暗号化される
- 様々なメーカーのデバイス、ゲートウェイが使える
🎀 ちょっと大変だけど、そのぶん本格的なIoTシステムが作れるよ〜!
こちらは、都市規模や大規模IoTネットワーク構築を目指すときに選択するモードです。
LoRaWANには、通信タイミングのスタイルに応じて Class A / B / C の3種類のモード(Class)があります。
- Class A:いちばん基本の動作で、送信したあとに短時間だけ受信のスロットが開きます。
- Class B:決まったタイミングで「ビーコン」が飛んできて、それに合わせて受信するタイプです。ちょっと特殊な使い方向け。
- Class C:ずっと受信状態になっていて、リアルタイム性が求められる用途に向いています(その分、電力をたくさん使います)。
しゃちらぼで使う LRA1 モジュールは、Class A と Class C に対応しています。
🎀 Class B はちょっとプロ向けっぽいけど、“AとCだけでだいたいの用途はOK”って感じなんだよ〜っ♪
P2Pモード(独自通信モード)
LRA1では、独自通信モードのことをP2P(Peer to Peer)モードと呼んでいます。
- LRA1同士で直接通信(トランシーバーみたいなイメージ)
- ゲートウェイやサーバー不要
- 通信ルールも自分で自由に決められる!
- 送信・受信・再送など、すべての通信制御を手動で行う必要がある
- 通信内容の暗号化はオプション
- 基本、同じメーカー同士の通信しかできない
🎀 まずはこれ!手軽に試せて楽しいよ〜!
簡単なセンサー実験や、1対1、1対Nの小規模な構成なら、
このP2Pモードだけで十分に使えます。
モードによる通信制御の違い
LoRaWANでは、送信したあとに必要に応じて再送したり、下りの通信を受信したりする仕組みが、内部的に組み込まれています。
たとえばClass Aでは、送信直後に自動的に受信スロットが開くため、双方向通信が非常に簡単に扱えます。
さらに、LoRaWANで通信を行うには、最初に「Join(ジョイン)」と呼ばれるネットワーク参加の手続きが必要になります。
このときデバイスはネットワークサーバーとやりとりをして、認証を受け、通信に使う暗号鍵などが自動的に割り当てられます。
この「Join」が成功すると、あとは自動で暗号化通信が行われるようになります。
一方でP2P(プライベートモード)は、こうした処理がすべて手動です。
送信後に明示的に受信モードへ切り替える必要があるほか、再送制御も自前で記述しなければなりません。
ネットワークへの参加という概念はなく、あくまでデバイス同士が直接通信する形になります。
🎀 自動で気の利くのがLoRaWAN、手動で全部がんばるのがP2P!って感じだね〜っ♪
モードによるセキュリティーの違い
LoRaWANでは通信内容が標準でAES暗号化されていて、デバイスの認証や改ざん防止の仕組みも組み込まれています。
「Join」時に設定された暗号鍵が使われるため、ユーザーが意識しなくても通信の安全性が保たれるようになっています。
一方、P2Pモードでは一般的に暗号化は行われず、通信内容はプレーン(平文)で送られます。
ただし、しゃちらぼのLRA1モジュールでは、P2PモードでもAES暗号化を有効にすることができます(初期状態では無効)。
セキュリティが気になる場面では、この機能を使えばある程度の対策が可能です。
🎀 LRA1は、P2Pでも“ちょっと賢い”セキュリティ設定ができるんだよ〜!
LoRaの通信速度とスループットの違い
ここで、LoRaの「通信速度」について、よくある誤解を整理しておきます!
LoRaのスペック表などで「数十kbps」と書かれていることがありますが、
これはあくまで ビットレート(変調速度) の話です。
実際にアプリケーションで使えるデータ量(スループット)は、
ビットレートよりもずっと小さくなります!
さらに、LoRaWANではDuty Cycle(送信制限)やパケットサイズ制限もあるため、
「連続で大量のデータを送り続ける」なんてことはできません。
🎀 トラックが時速100kmで走れても、運べる荷物は1個ずつ…って感じだよ〜!
つまり──
- センサーの値やステータスを、たまにポンッと送るのが正しい使い方
- 動画や画像データ、音声データ等を送るのは不向き!
LoRadをWiFiやLTEのように使うことはできません。
数十バイト程度のデーターを数分~数時間おきに送るような場合に適しています。
これが、LoRaの特徴です。
通信速度に影響する5つのパラメータ
LoRaの通信距離や速度には、次の5つのパラメータが深く関係しています:
- SF(Spreading Factor):拡散率のこと。SFが大きいほど遠くまで届くかわりに、通信速度は遅くなります。
たとえば SF7 は比較的高速、SF12 は超低速だけど非常に遠くまで届きます。1パケット送るのに数秒かかることも。 - BW(Bandwidth):帯域幅のことで、LoRaでは通常 125kHz、250kHz、500kHz などが使われます。
BWが広いほど速い通信が可能になりますが、ノイズに弱くなる場合もあります。 - CR(Coding Rate):誤り訂正の強さ。CR=4/5 などのように表されます。
信頼性が上がるかわりに、実際に使えるデータ容量は減ります。 - CH(Channel):送受信に使うチャネルのこと。LoRaには複数の周波数チャネルがあり、どのチャネルを使うかによって干渉や通信の安定性が変わってきます。P2Pモードでは、どのチャネルを使うかを自分で決めます。
- PWR (Tx Power) :送信出力(dBm)。LRA1では最大13dBm(約20mW)まで設定できます。
出力が高いと遠くまで届きやすくなりますが、消費電力や干渉にも注意が必要です。
「送信出力(PWR)、環境(距離など)、受信側の受信感度」が同じでも、SF/BW/CRのパラメーターが異なると通信できたりできなかったりということになります。
🎀 遠くに届けたいほど、ゆっくり&丁寧に、そしてちょっとパワーをこめて…って感じだね〜!
🛠 P2Pではパラメータを自分で決める!
P2Pモードでは、これらの通信パラメータを自分で選んで設定します。
たとえば「遠距離用に SF12・125kHz・CR=4/8」など、通信距離・速度・安定性のバランスを考えながら設定を調整します。
これらのパラメータの組み合わせによる通信特性の詳細な情報は、株式会社アイ・ツーが提供する以下の資料で確認できます:
LRA1 伝搬特性 -通信距離参考資料-
この資料には、各パラメータの設定による通信距離の目安や、受信感度の変化などが詳しく記載されています。
🛠 LoRaWANでは自動で調整してくれる!
LoRaWANモードでは、こうした通信条件(SFやBWなど)をネットワーク側が 自動的に最適化(ADR: Adaptive Data Rate) してくれます。
たとえば、電波が弱い場所にいる端末には SF12 を、近くの端末には SF7 を割り当てるなど、環境に応じた設定が自動で行われます。
また、通信ごとにゲートウェイ側が使用チャネルを動的に割り当てます。ユーザーが明示的にCHを選ぶことはできませんが、環境に応じて適切に分散される仕組みになっています。
🎀 LoRaWANは“おまかせモード”、P2Pは“フルマニュアル”って思うとわかりやすいかも!
LRA1では、日本向けとして AS923-1 の設定が標準になっています。AS923-1 では、メインとなるチャネルは通常、920.6MHzと920.8MHzの2つで、システムによってはこれに加えて
複数の追加チャネルが設定されている場合もあります。
エンドデバイスはゲートウェイにはなれない!
最後によくある質問です。
「LRA1を使って、LoRaWANのゲートウェイにできますか?」
答えは──できません!
LRA1はエンドデバイス(子機側)専用です。
- LoRaWANゲートウェイには、複数チャネルを同時受信できる専用チップ(例:SX1302など)が必要
- LRA1は1チャネル単位の送受信しかできない設計
- ゲートウェイとして必要な機能は持っていません。
🎀 ツバメが郵便局にはなれない、って感じだよ〜!
ゲートウェイとして運用したい場合は、専用のLoRaWANゲートウェイ製品を準備する必要があります。
エンドデバイスのLRA1は、あくまでセンサー端末やコントローラーなど、エンドデバイス用途に特化しています!
LoRaWANにおける「エンドデバイス」は、ネットワークの末端で動作する機器のこと。センサーやアクチュエーター、ボタン付きの送信機などが該当します。通信の相手としてゲートウェイが存在し、基本的にはデータを送信する側(送信専用、または送受信)として使われます。
なお、インターネット上には「エンドデバイスを使ってLoRaWANのゲートウェイのようなことをする」実験例もありますが、
これらはあくまで“ゲートウェイっぽく見せているだけ”で、LoRaWANの正式な仕様に則った本物のゲートウェイではありません。
LoRaWANでは、ゲートウェイは専用のハードウェアを使って複数チャネル・複数デバイスを同時に扱う構造になっています。
エンドデバイスを単独で使っても、LoRaWANとしての本来の中継機能は実現できません。
受信してMQTTに流すだけの仕組みも本物のゲートウェイではありません。
🎀 ゲートウェイ“っぽい”のと、本物のLoRaWANゲートウェイは、ぜんぜんちがうから注意だよ〜!
まとめとおすすめのスタートアップ実験
ここまで、LPWAとLoRa、LoRaWANとP2P についてざっくり説明してきました!
ポイントをまとめると──
- LoRaは「低速・長距離・省電力」の無線方式
- LoRaWANは「LoRaを使った標準化ネットワーク」
- P2Pは「自由に通信できる」
- 通信速度に影響するパラメータがある
- エンドデバイスはゲートウェイにはなれないよ!
まずはP2Pモードで手軽に試してみよう!
🎀 いきなり本格的なLoRaWAN構築じゃなくても、大丈夫だよ〜!まずはP2Pで、のんびり始めよう〜☕
🔧 開発環境いらずで試せる!
しゃちらぼでの実験に使うLRA1はTeraTermなどのシリアルターミナルがあれば使えます。
特別なIDEや開発ツールは不要で、Windows/Mac/LinuxのどれでもOK!
LoRaの通信実験が、ほんの数行のコマンドから始められます。
さらに、ファームウェアのアップデートも専用アプリ不要。
Shachi-labのGitHub にある Pythonスクリプト を使えば、クロスプラットフォームでアップデートが可能です。
🎀 “まずはやってみよう”って人にもやさしい設計なんだよ〜!
次回は、具体的にLRA1を使った「P2P通信の動作実験」や「パラメータの設定」について紹介する予定です。
🎀「実際に自分でLoRa通信をやってみたい!」って人、要チェックだよ〜!
どうぞお楽しみに🐬✨
📪 お問い合わせなど
技術的なご相談やご質問などありましたら、
📩お問い合わせフォーム
または、
📮info@shachi-lab.com までお気軽にどうぞ。
🎀 『また聞くのかよ〜』とか思わないから大丈夫っ!いつでも聞いてね〜♪
🔗 関連リンク
しゃちらぼの最新情報や開発の様子は、こちらでも発信しています:
- 🌐しゃちらぼ公式サイト
- 🐦 X(旧Twitter):@shachi_lab
- 📗 Qiita:@shachi-lab
- 🐙 GitHub:@shachi-lab
- 📸 Instagram:@shachi_lab
ほんとは「しゃちらぼ(Shachi-lab)」なんだけど、見つけてくれてありがとう🐬
コメント