広域・低電力無線

Sigfox

超低速・超低消費の広域IoT通信。

概要

Sigfoxは、フランスのSigfox社(2022年よりUnaBiz傘下)が開発・運営する広域IoT向けの無線通信技術・ネットワークサービスです。「超狭帯域(UNB: Ultra Narrow Band)」と呼ばれる独自の変調方式を採用し、1回あたり最大12バイトという極めて少量のデータを、数十〜数百kmという超長距離にわたって送受信できます。

Sigfoxの最大の特徴は、通信速度を徹底的に落とす代わりに受信感度と通信距離を極限まで高めたことです。通信速度は上り100bps・下り600bpsとLoRaより低速ですが、受信感度は-130dBmに達し、建物の地下・厚いコンクリート壁越しでも安定した通信が可能です。また、Sigfoxは専任の通信事業者がネットワークを管理・維持するため、ユーザー側でインフラを整備する必要がありません。

歴史・背景

Sigfoxは2009年にLudovic Le Mouël氏とChristophe Fourtet氏によってフランスで創業されました。2012年にトゥールーズで最初の商用ネットワークを開設し、その後急速に欧州各国へ拡大しました。

2015年以降は米国・ブラジル・日本など世界各国でのネットワーク展開を加速。日本では京セラコミュニケーションシステム(KCCS)が2016年から商用サービスを開始し、全国主要都市をカバーするまでに拡大しました。

2022年、Sigfox社は経営難から破産申請し、シンガポールのIoT企業UnaBizが買収。現在はUnaBiz主導でネットワーク維持・次世代規格開発が進められています。2023年には次世代規格「Monarch 2」「Atlas Native」が発表され、衛星通信との統合も視野に入れた展開が続いています。

技術仕様

UNB(超狭帯域)変調方式

Sigfoxの物理層は「D-BPSK(Differential Binary Phase Shift Keying)」と「GFSK(Gaussian Frequency Shift Keying)」を組み合わせた独自変調方式を採用:

  • 占有帯域幅: 100Hz(上り)、600Hz(下り)
  • これはLoRaの125kHz、Wi-Fiの20MHzと比較して桁違いに狭い
  • 狭帯域化により雑音電力を大幅に低減し、受信感度を向上

通信パラメータ

パラメータ上り(End Device → Base Station)下り(Base Station → End Device)
変調方式D-BPSKGFSK
データレート100bps600bps
送信帯域幅100Hz600Hz
最大ペイロード12バイト8バイト
1日の送信回数制限140回/日4回/日(上り140回に対し)
受信感度-130dBm-

送信電力と到達距離

環境最大到達距離
農村・郊外(見通し)30〜50km
郊外10〜20km
都市部3〜10km
地下・室内数百m〜数km

周波数帯(日本)

日本では920MHz帯(920.8MHz〜928.0MHz付近)を使用。EU向け868MHz帯とは異なります。

セキュリティ

  • デバイス固有の128bitシークレットキーを工場書き込み
  • AES-CBC暗号化(ペイロード)
  • HMAC-SHA256相当のフレーム認証
  • シーケンス番号によるリプレイ攻撃防止

動作原理

マクロダイバーシティ送信

Sigfoxデバイスは1メッセージを3回、わずかに異なる周波数(ランダムな周波数ホッピング)で送信します。この冗長送信によりパケット到達率を向上させます:

デバイス送信シーケンス:
─────────────────────────────────────
送信1: 周波数f1でペイロード送信 (数秒)
待機: 数十ms
送信2: 周波数f2でペイロード送信 (数秒)
待機: 数十ms
送信3: 周波数f3でペイロード送信 (数秒)
─────────────────────────────────────
(f1, f2, f3は920MHz帯内でランダムに選択)

複数の基地局が同じメッセージを受信し、Sigfoxクラウドバックエンドが重複排除を行います。

下り通信のタイミング

Sigfoxの下り通信(サーバー→デバイス)は非常に制限されています:

1. デバイスが「下り受信フラグ」付きで上りメッセージを送信
2. 最初の送信完了から20秒後に受信窓が開く(約25秒間)
3. この窓内でサーバーから最大8バイトの下りデータを受信
4. 1日に受信できる下りメッセージは4回まで

この制約から、大規模なOTA(ファームウェア更新)などには不向きです。

消費電力プロファイル

典型的な送信時の消費電流(100bps、12byte送信の場合):
送信期間: 約2秒 × 3回 = 約6秒
送信電流: 15〜50mA(送信電力設定による)
スリープ電流: 1〜10µA

1回の送信エネルギー消費(50mA, 6秒の場合):
50mA × 6sec / 3600 = 0.083mAh

1日140回送信での消費:
0.083mAh × 140 = 11.7mAh/日

スリープ電流(10µA × 24時間):
0.01mA × 24 = 0.24mAh/日

合計: 約12mAh/日

単三電池2本(3000mAh)では約250日(最大送信頻度の場合)〜数年(頻度を下げた場合)の電池寿命が期待できます。

用途・ユースケース

Sigfoxの特性(超小容量データ・超長距離・低コスト)から、以下の用途に適しています:

シンプルな状態通知

  • ガス/水道/電気メーターの検針値送信(数バイトで十分)
  • 扉・窓の開閉センサー(0/1の1ビットで表現可能)
  • 押しボタン型緊急通知デバイス

資産追跡(低頻度)

  • 輸送中のコンテナ・パレットの位置情報(GNSSと組み合わせ)
  • 農機具・建設機器の盗難検知・位置確認
  • ゴミ収集車の巡回ルート管理

環境・インフラ監視

  • 橋梁・法面の傾斜センサー
  • 積雪量・水位の定期報告
  • 工業タンクの液面レベル監視

動物追跡

  • 家畜・野生動物に取り付けた追跡タグ
  • 鳥類の渡り経路研究

実装・開発のポイント

開発キット・モジュール

製品メーカー備考
BRKWS01SIGFOX / Wisol評価キット
TD1207RTelitFCC/CE対応モジュール
SGW3220Silicon LabsSigfox対応
S2-LPST MicroelectronicsSigfoxトランシーバー

ATコマンドによる制御

多くのSigfoxモジュールはUART経由のATコマンドで制御できます:

// UART経由でSigfoxモジュールを制御する例
#include <stdio.h>
#include <string.h>

// センサーデータを12バイト以内にパックして送信
void sigfox_send_sensor_data(float temp, float hum, float bat) {
    // 12バイトペイロード作成(各4バイト固定小数点)
    uint8_t payload[12];
    int32_t t = (int32_t)(temp * 100);   // 0.01℃単位
    uint32_t h = (uint32_t)(hum * 100);  // 0.01%単位
    uint32_t b = (uint32_t)(bat * 1000); // 1mV単位

    payload[0]  = (t >> 24) & 0xFF;
    payload[1]  = (t >> 16) & 0xFF;
    payload[2]  = (t >>  8) & 0xFF;
    payload[3]  =  t        & 0xFF;
    payload[4]  = (h >> 24) & 0xFF;
    payload[5]  = (h >> 16) & 0xFF;
    payload[6]  = (h >>  8) & 0xFF;
    payload[7]  =  h        & 0xFF;
    payload[8]  = (b >> 24) & 0xFF;
    payload[9]  = (b >> 16) & 0xFF;
    payload[10] = (b >>  8) & 0xFF;
    payload[11] =  b        & 0xFF;

    // ATコマンドでSigfoxモジュールに送信指示
    char cmd[40];
    snprintf(cmd, sizeof(cmd),
        "AT$SF=%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X\r\n",
        payload[0], payload[1], payload[2],  payload[3],
        payload[4], payload[5], payload[6],  payload[7],
        payload[8], payload[9], payload[10], payload[11]);

    uart_send_string(cmd);
    // "OK"が返るまで待機(数秒〜10秒程度)
    uart_wait_response("OK", 15000);
}

データ設計の制約

Sigfoxの最大12バイトという制約を踏まえたデータ設計例:

典型的な12バイトペイロードの設計例:
Byte 0-1  : 温度 (int16, 0.01℃単位, -327.68〜+327.67℃)
Byte 2    : 湿度 (uint8, 0.4%単位, 0〜100.4%)
Byte 3-4  : 気圧 (uint16, 0.1hPa単位, 0〜6553.5hPa)
Byte 5    : バッテリー電圧 (uint8, 10mV単位, 0〜2.55V)
Byte 6-9  : 緯度 (int32, 10^-7度単位)
Byte 10-11: 経度 (int16, 10^-4度単位, -180〜+180度)
合計: 12バイト

ロケーションサービス(Atlas)

SigfoxはGNSSなしでも位置推定ができる「Sigfox Atlas Native」「Sigfox Atlas Wi-Fi」サービスを提供しています。複数の基地局での受信電力差からデバイス位置を推定します(精度: 100m〜数kmのオーダー)。

他技術との比較

Sigfox vs LoRaWAN

比較項目SigfoxLoRaWAN
ネットワーク事業者運営(閉鎖型)オープン(プライベートNW可)
上りデータ上限12バイト最大250バイト(SF7, BW500)
1日の送信回数140回デューティサイクル次第
下りデータ8バイト、4回/日制約は緩め
通信事業者依存ありなし(独自運営可)
モジュールコスト低いやや高め

Sigfoxは月額・年額のネットワーク利用料が必要ですが、ゲートウェイを自前で用意する必要がないため、大規模展開時の初期コストを抑えられます。一方、通信事業者のネットワーク範囲内でしか使えないという制約があります。

Sigfoxのメリット・デメリット

メリット:

  • インフラ整備不要(事業者に任せる)
  • 受信感度が非常に高い(-130dBm)
  • モジュール単価が低い傾向
  • 3回の冗長送信で高い到達率

デメリット:

  • 1日140回・12バイトという厳しい制限
  • 事業者ネットワークの外では使えない
  • 下り通信が非常に制限される
  • 通信事業者の経営状況に依存

関連用語

参考リンク