Long Range(Coded PHY)対応BLEモジュールの消費電流と通信速度性能
こんにちは、ムセンコネクトCMOの清水です。(プロフィール紹介はこちら)
今回は前回の通信距離性能に引き続き、長距離通信対応BLEモジュールの消費電流、および通信速度性能評価に関するご報告です。
LE Coded PHYでは消費電流と通信速度はどうなるのか?
前回の記事では、Bluetooth v5.0から採用された長距離通信機能(Long Range, LE Coded PHY)の通信距離性能が従来のBluetooth Classicと比べて飛躍的に向上していることをご紹介しました。
このように長距離通信に対しては優位性を見せるLE Coded PHYですが、消費電流や通信速度の観点ではどうでしょうか?
いくら長距離通信が可能といっても、電池駆動の場合には消費電流も気になりますし、送信したいデータ量によっては通信速度も気になります。
そこで今回はLE Coded PHY対応モジュールLINBLE-LR1を使って消費電流と通信速度を計測してみました。また、比較しやすいように1M PHY、2M PHYの評価結果やCoded PHY非対応であるLINBLE-Z1の評価結果をあわせてご紹介しますので、Bluetoothモジュールの選定や開発時の参考データとしてお役立ていただければ幸いです。
LE Coded PHYの通信速度(スループット)
まずご紹介するのはLE Coded PHYの通信速度(スループット)です。
*計測方法や各種パラメータは本ページの最後に掲載しております。
LINBLE-LR1のCoded PHY、1M PHY、2M PHYのそれぞれでスループットを計測したところ、下記のような結果となりました。
(LINBLE-LR1間の通信距離は1メートルです)
PHY | Write Command(kbps) | Notification(kbps) |
---|---|---|
1M PHY | 126.6 | 135.8 |
2M PHY | 497.0 | 498.2 |
Coded PHY | 39.5 | 39.5 |
Coded PHYのスループットはおよそ40kbps程度となりました。BLE通信の基本となる1M PHYの計測結果が約130kbpsであることから、Coded PHYは通信速度が遅くなることがわかります。
高速モードである2M PHYのスループットは約500kbpsでした。よってCoded PHY < 1M PHY < 2M PHYの順にスループットが速くなる結果となりました。
ちなみに、LINBLE-Z1のスループットと比較したところ、1M PHY、2M PHYともにほぼ同等の結果となりました。
PHY | LINBLE-LR1 (kbps, Write Command) | LINBLE-Z1 (kbps, Write Command) |
---|---|---|
1M PHY | 126.6 | 135.4 |
2M PHY | 497.0 | 491.5 |
スループットと通信距離の関係
次に、通信距離を延ばした時のスループットへの影響を確認しました。
50メートル、100メートルと距離を延ばしていくにつれ、スループットが低下していることがわかります。
通信距離(m) | スループット(kbps, Write Command) | ||
---|---|---|---|
1M PHY | 2M PHY | Coded PHY | |
50 | 141.2 | 680.9 | 35.7 |
100 | 27.7 | ー | 30.5 |
150 | 69.5 | ー | 9.8 |
200 | 42.0 | ー | 0.5 |
250 | ー | ー | 4.2 |
300 | ー | ー | ー |
Coded PHYは通信距離の延長に伴いスループットが低下するものの、250メートル地点まで通信を確認することができました。
一方、2M PHYは近距離でのスループットが一番速いものの、100メートルを超えると通信自体ができなくなってしまいました。
以上2つの評価結果から、
- 1M PHYを基準にすると、Coded PHYはより通信距離が伸びる一方、通信距離に関わらず1M PHYより通信速度は遅くなる。
- 1M PHYを基準にすると、2M PHYは通信速度が速くなる一方、通信可能な距離は短くなる。
ということがわかりました。
LE Coded PHYの消費電流
続いてLE Coded PHYの消費電流をご紹介します。
*計測方法や各種パラメータは本ページの最後に掲載しております。
LINBLE-LR1(+8dBm)のCoded PHY、1M PHY、2M PHYのそれぞれで消費電流を計測したところ、下記のような結果となりました。比較のためLINBLE-Z1(+4dBm, 1M PHY)の計測結果も併記します。
動作状態 | LINBLE-LR1 | LINBLE-Z1 | ||||
---|---|---|---|---|---|---|
1M | 2M | Coded | 1M | |||
コマンド状態 | 857 | 1,260 | 859 | 517 | ||
アドバタイズ状態 | 1,290 | 1,670 | 2,933 | 654 | ||
スキャン状態 | 6,030 | 6,260 | 5,563 | 3,620 | ||
オンライン 状態 | P | データ転送無し | 1,047 | 1,407 | 1,750 | 633 |
連続データ送信 | 2,193 | 1,590 | 6,090 | 1,160 | ||
連続データ受信 | 8,277 | 8,047 | 10,993 | 4,067 | ||
C | データ転送無し | 1,033 | 1,393 | 1,743 | 632 | |
連続データ送信 | 2,167 | 1,563 | 6,070 | 748 | ||
連続データ受信 | 8,103 | 7,873 | 10,873 | 4,047 |
(P:ペリフェラル, C:セントラル, 単位:μA, DSI:Low)
- 1M PHY、2M PHYの値と比べると、Coded PHYはオンライン状態(接続中)で、且つデータ送受信時の消費電流が大きいことがわかります。特に連続データ送信時の消費電流の増加が顕著です。
- Coded PHYではアドバタイズ状態中の消費電流も増加していることがわかります。
- また、同じ1M PHYにおけるLINBLE-LR1とLINBLE-Z1の消費電流を比較すると、全体的にLINBLE-LR1の方が消費電流が大きくなる結果となりました。消費電流増加の要因として以下の理由が考えられます。
- ハードウェア的な内部構造が異なること。
- 送信出力がLINBLE-Z1は+4dBmなのに対し、LINBLE-LR1は+8dBmであること。
- 本評価は全て同じ通信距離(30cm)で実施しているため、通信距離が同じであれば、PHYによって消費電流が変わることがわかりました。
まとめ
Bluetooth 5.0から採用されたLE Coded PHYは、従来の通信方式である1M PHYに対して長距離通信性能は優位性を見せるものの、消費電流は増加してしまう傾向にあります。また、通信速度も1M PHYと比べて遅くなってしまうことから、「LE Coded PHYは1M PHYの上位互換ではない」ことがわかります。
よってLE Coded PHYはあらゆるシチュエーションに対して万能なわけではなく、「通信距離は長いに越したことはない」との安易な考えからLE Coded PHYを選択してしまうと、消費電流や通信速度の観点では要件を満たせないケースも出てくると思います。
BLEモジュールの選定においては、通信距離、通信速度、消費電流など、BLE通信に求められる要件を整理し、総合的な判断から適したPHYを選ぶことをおすすめいたします。
評価方法
通信速度の評価方法
通信速度の求め方は、以下を実施してスループットの実効値(bps)を算出しました。
- 約60秒間データ送信を行う
- 送信データサイズを、データ送信時間で割る
※データ送信時間はプロトコルアナライザでデータ送信の開始・終了のタイムスタンプから算出 - 3回測定し、平均を算出する
評価パラメータ
評価パラメータは以下の通り共通としました(評価ごとのPHYを除く)。
- UART baudrate:1,000,000bps
- Connection Interval(min, max):初期値(20ms, 40ms)
- Tx Power:初期値(LINBLE-LR1 / +8dBm,LINBLE-Z1 / +4dBm)
評価手順
以下の手順で実施しました。
- Central, Peripheral 両デバイスを1メートル離して設置する
- Central, Peripheral 両デバイスをTera Termで制御する
- ローカルエコーOFFの状態でCentral, Peripheralから約60秒間データ送信を行う
- プロトコルアナライザでデータ送信の開始・終了のタイムスタンプを取得する
- タイムスタンプ差分、および送信データサイズからスループットの実効値を算出する
- 上り(Notification)下り(Write Command)共に各3回測定し平均を算出する
消費電流の評価方法
評価パラメータ
評価対象、対向デバイス共に以下の設定値における消費電流を測定しました。
- Voltage:3.45V
- Tx Power:初期値(+8dBm)
- Advertise Interval:初期値(100ms)
- Connection Interval(min, max):初期値(20ms, 40ms)
- UART baudrate:初期値(9,600bps)
評価手順
- 卓上にて評価対象と対向機を30cm離した状態で測定を実施する。
- 測定時間は、各測定パターンにつき1分間とする。(例外的に30秒間の測定パターンあり)
- 通信中における消費電流測定は以下の2種類のデータ送信方法を用いて測定する。
- 間欠データ:Tera Termマクロを使用してスループット約4kbpsでデータ送信した状態で測定したことを表す。
- 連続データ:Tera Termのファイル送信機能を使用してデータ送信した状態で測定したことを表す。