IoTで注目される「LPWA」とは?
LPWA(Low Power Wide Area)とは、
省電力で広範囲に通信できる無線技術の総称です。
- 電池1本で長時間動作
- 数km以上の通信が可能
- 少量のデータをやりとりするのに最適
こういった特性から、センサーやモニタリング用途のIoTに最適とされ、さまざまな方式が登場しています。
主要なLPWA方式の比較
特性 | LoRa | Sigfox | NB-IoT |
---|---|---|---|
通信距離 | 数km〜20km超(※見通し時) | 数km〜40km(郊外) | LTE圏内(〜10km) |
通信速度 | 数kbps | 数十〜百bps | 最大250kbps |
消費電力 | μA〜mA(非常に低) | 極めて低い | 高め(mA〜) |
通信コスト | 不要(自営可) | 契約必要 | SIM契約・月額あり |
インフラ依存性 | 自営OK | Sigfox基地局必須 | 携帯キャリア必須 |
自由度 | 非常に高い | 極めて低い | 中〜低 |
LoRaだけが自営可能で、コストも不要という特性を持っており、個人や小規模開発において圧倒的に導入しやすい方式です。
📌 通信距離は「見通し距離」の場合であり、都市部や屋内では障害物・電波干渉の影響を大きく受けます。実運用では距離は環境により大きく変動します。
📊 各方式のスループット(実効データ速度)は以下の通りです:
LoRa:おおよそ 100〜1000bps(Spreading Factorや帯域幅により変動/実効値)
Sigfox:最大 100bps(上り12バイト/メッセージ制限)
NB-IoT:最大 60〜150kbps(実効値、LTE網依存)
これらは「理論値」ではなく、実際の運用におけるおおよその実効スループットを示しています。
📌 特にLoRaは、無線の通信速度(PHY速度)は条件次第で数kbpsに達しますが、実際に送れるデータ量(スループット)は数百bps程度にとどまります。連続送信にも制限があり、法令上の送信時間制限(例:4秒/回以内、1時間あたり360秒以内)や待機時間の制御が必要です。
LoRaとLoRaWANの違い
名前が似ていますが、この2つは明確に異なります:
- LoRa:物理層の無線方式(Chirp Spread Spectrum)
- LoRaWAN:LoRaを利用したネットワークプロトコル
LoRaは単なる電波の飛ばし方。
LoRaWANはその電波を使って、セキュリティ・通信制御・ネットワーク管理を行う仕組みです。
LoRa = "道路"
LoRaWAN = "交通ルール"
という例えがよく使われます。
LoRaWAN方式を使えば、異なるメーカーの端末とゲートウェイでも相互運用が可能になります(相互接続性)。そのため、オープンな環境で複数のデバイスを扱う場合には非常に便利です。
ただし、ネットワークサーバーなどの準備が必要なため、構成はやや複雑です。特にTTNなどのオープンプラットフォームを使う場合も、ネットワーク設定・サーバ連携など、Web系の知識が必要になります。
プライベート(独自)方式が使える
LoRaはLoRaWANを使わなくても、無線方式単体で端末同士の直接通信が可能です。
いわゆる「プライベート方式(独自プロトコル)」と呼ばれる構成で、ゲートウェイやサーバを使わずにシンプルな通信が実現できます。
技適の範囲内であれば、LoRaWANの仕組みにとらわれずに、独自プロトコルを使って通信することも問題ありません。
このため、小規模なシステムや実験、限定的な用途にも柔軟に対応できます。
📌 LPWAの中で「端末間通信(デバイスtoデバイス)」が可能なのはLoRaのみです。SigfoxやNB-IoTは基地局(インフラ)を介したサーバー通信型の構造であり、端末同士が直接通信することはできません。
なぜLoRaが個人開発に向いているのか?
LPWAの中で、LoRaが個人開発に向いている理由は次のとおりです:
- 自分でネットワークを構築できる(ゲートウェイ含む)
- 端末同士での通信が可能(プライベート方式)
- ランニングコストがかからない
- 法令を守れば免許不要で使える
- 構成が柔軟で、アプリケーションの自由度が高い
📌 技適認証済みのLoRa端末同士であれば、日本国内では免許や無線局の登録なしで自由に利用できます。
一方で、LoRaWAN用のゲートウェイは「基地局クラス」の機器として技適認証されているため、たとえ技適を取得していても、原則として総務省への無線局登録が必要になります(例:Dragino LPS8、RAK7244などの小型ゲートウェイも含まれます)。詳細は、以前の記事を参考にしてください
商用利用も見据えたLoRaWAN運用も可能ですが、まずは小さく始めるという点ではLoRaが最も手軽です。
個人用途では、この自由度の高さが特に役立ちます。
LPWAを始めるならLoRaから
比較軸 | LoRaが向いている理由 |
---|---|
コスト | 通信契約が不要、自営可能 |
スタートの簡単さ | 必要最小限の構成でテスト・実験が可能 |
スケーラビリティ | 個人用途から商用LoRaWANまで対応可能 |
自由度 | 構成・通信内容・周波数設計まで柔軟に選べる |
まずはプライベート方式で構成を試してみて、必要に応じてLoRaWANへと発展させるのが現実的です。
自宅でのLoRaWAN運用例
私は現在、自宅でLoRaWANを実際に運用しています。
センサーデバイスに使用しているのは、LRA1モジュールを搭載した評価ボード(LRA1-EB)です。
このボードにはBOSCH BME280 が搭載されているので、気温、湿度、気圧の計測が可能です。
地下室と3Fテラスの2箇所に設置していて、単三乾電池x2本で数カ月間動作しています。
このデバイスが定期的に温度や湿度のデータをLoRa通信で送信し、
自宅屋上のアンテナポールに設置したゲートウェイ(Dragino LPS-8S)で受信しています。
このゲートウエイは無線局登録も済ませ、合法的なLoRaWAN運用を行っています。
標準添付のアンテナを塩ビパイプで延長して、収納ボックス内に本体を収めています。
ゲートウェイは、インターネットを通じて The Things Network(TTN)のLoRaWANサーバーと接続されています。
TTNに届いたデータは、以下の2系統に送信して活用しています:
- Webhook経由でlolipopサーバー(PHP+MySQL)に送信し、Webビューアで可視化
- MQTT経由でM5Stackに転送し、表示や音声フィードバック用の端末として活用
以下は、実際にTTNからMQTTでM5Stackに送信されたデータの一例です。
📦 MQTTのJSON(クリックで全体を展開表示)
{
"name": "as.up.data.forward",
"time": "2025-06-06T09:59:39.713488470Z",
"identifiers": [
{
"device_ids": {
"device_id": "eui-70b3d559e01d27a8",
"application_ids": {
"application_id": "app-lra1-test"
},
"dev_eui": "70B3D559E01D27A8",
"join_eui": "0000000000000000",
"dev_addr": "260C85A7"
}
}
],
"data": {
"@type": "type.googleapis.com/ttn.lorawan.v3.ApplicationUp",
"end_device_ids": {
"device_id": "eui-70b3d559e01d27a8",
"application_ids": {
"application_id": "app-lra1-test"
},
"dev_eui": "70B3D559E01D27A8",
"join_eui": "0000000000000000",
"dev_addr": "260C85A7"
},
"correlation_ids": [
"gs:uplink:01JX2AX37H2E6NYNEVDQH70N1N"
],
"received_at": "2025-06-06T09:59:39.710603250Z",
"uplink_message": {
"session_key_id": "AZbIp959g4CNNL98Bt7jLA==",
"f_port": 1,
"f_cnt": 3447,
"frm_payload": "yABOAn4nfAs=",
"decoded_payload": {
"absolute_humidity": 10.21,
"barometric_pressure": 1011,
"batt_voltage": 2.94,
"relative_humidity": 59,
"temperature": 20,
"time_jst": "2025-06-06 18:59:39"
},
"rx_metadata": [
{
"gateway_ids": {
"gateway_id": "dragino-a840411fa550",
"eui": "A840411FA5504150"
},
"time": "2025-06-06T09:59:39.448890Z",
"timestamp": 2725990428,
"rssi": -112,
"channel_rssi": -112,
"snr": 2.5,
"location": {
"latitude": 35.7105000,
"longitude": 139.7073000,
"altitude": 30,
"source": "SOURCE_REGISTRY"
},
"uplink_token": "CiIKIAoUZHJhZ2luby1hODQwNDExZmE1NTASCKhAQR+lUEFQEJyg7ZMKGgwIi/iKwgYQ9uHS8AEg4NrDjauihgM=",
"channel_index": 2,
"received_at": "2025-06-06T09:59:39.447381822Z"
}
],
"settings": {
"data_rate": {
"lora": {
"bandwidth": 125000,
"spreading_factor": 10,
"coding_rate": "4/5"
}
},
"frequency": "923600000",
"timestamp": 2725990428,
"time": "2025-06-06T09:59:39.448890Z"
},
"received_at": "2025-06-06T09:59:39.506063116Z",
"confirmed": true,
"consumed_airtime": "0.370688s",
"network_ids": {
"net_id": "000013",
"ns_id": "EC656E0000000182",
"tenant_id": "ttn",
"cluster_id": "nam1",
"cluster_address": "nam1.cloud.thethings.network"
}
}
},
"correlation_ids": [
"gs:uplink:01JX2AX37H2E6NYNEVDQH70N1N"
],
"origin": "ip-10-101-15-220.us-west-1.compute.internal",
"context": {
"tenant-id": "CgN0dG4="
},
"visibility": {
"rights": [
"RIGHT_APPLICATION_TRAFFIC_READ"
]
},
"unique_id": "01JX2AX3E15Z63BFANT5ACYMR4"
}
このようなデーターがwebhookやMQTTで送られてきます。
個人レベルでもLPWA(特にLoRa)は十分に実運用が可能であり、構築や運用もそこまで難しくありません。
機器の費用はかかりますが、ランニングコストはほとんどかかっていません。
構成の詳細や、実際のデータ処理フロー、Webhookやビューアについては、今後の記事で紹介していく予定です。
🎀「わぁ〜っ✨ センサーデータが雲の上を通って、M5StackやWebに届くっていう流れ!
これ全部、個人が本当に組んだ構成なんだから、参考にしてほしいよねっ📡📦」
ちなみに──
こちらのブログで実際の活用事例を紹介しているので、よかったらのぞいてみてください📡✨