この記事は株式会社ビットキー Advent Calendar 2024の5日目の記事です。ファームウェア開発部の@hu11911が担当します。
要約
Bluetooth Core Specification バージョン6.0で導入された新機能「Bluetooth Channel Sounding」について、従来のRSSIによる距離測定と比較しながら解説します。
Bluetoothって何?
Bluetoothは世界中で普及している無線通信技術の一つです。
現在では、ノートPCやスマートフォンのほとんどがBluetooth対応となっており、非対応機器を探すほうが難しいほどです。
余談ですが、Bluetoothという名称は10世紀のデンマーク王ハーラル1世の異名「Bluetooth(原語:Blåtand)」に由来します。ハーラル1世はデンマークとノルウェーの部族を統一したことで知られています。この「統一」という理念になぞらえて、異なる通信規格を一つにまとめる目的でBluetoothという名称が採用されました。その目標は着実に達成されつつあります。
このBluetoothの仕様策定は「Bluetooth SIG」が担っています。
Bluetooth SIGとは?
Bluetooth SIG(Bluetooth Special Interest Group)は、世界中のBluetoothテクノロジーの発展と標準化を主導する国際組織です。
この組織は、Bluetoothの技術仕様の策定、品質基準の確立、そしてBluetoothブランドの価値向上と普及促進を担当しています。
現在では、世界中の主要な技術企業から小規模な開発企業まで、38,000社以上が加盟しており、その規模は年々拡大を続けています。
BitkeyもBluetooth SIGのアダプターメンバーとして参画しています。メンバー検索はこちら。
Bluetooth SIGの主要な責務の一つが、Bluetooth Core Specificationの策定です。
Bluetooth Core Specificationの概要
Bluetooth Core Specificationは、Bluetooth技術の基盤となる包括的な仕様書です。この文書には、デバイス間の通信方法、プロトコル、セキュリティ要件など、技術実装に必要な基本要素がすべて定義されています。
Bluetooth SIGは、技術の進化と市場のニーズに合わせてこの仕様を定期的に更新し、Bluetooth技術の継続的な発展と改善を実現しています。
執筆時点(2024年12月)での最新版はバージョン6.0で、Version Date: 2024-08-27です。一つ前のv5.4のVersion Dateが2023-01-31ですから、約1年半ぶりのアップデートとなります。
既存機能の改善に加えて新しい技術がいくつか導入されており、その一つがBluetooth Channel Soundingです。
RSSIによる距離測定
Bluetooth Channel Soundingを説明する前に、現在広く使用されているRSSIによる距離測定について解説します。
RSSIは、Bluetoothなどの無線通信における信号強度を表す指標です。信号強度は多くの場合「dBm」という単位で示され、一般的にマイナスの値となります。
基本的な仕組みとしては、信号が距離に応じて弱くなる特性を利用します。この信号強度の減衰から、2つの機器間の距離を推定できます。
しかし、実環境でのRSSIによる距離測定には、以下のような課題が存在します:
- 壁や床からの電波の反射による影響
- 人や物による電波の遮蔽
- 他の無線機器からの電波干渉
- 機器の向きによる電波強度の変化
これらの要因により、環境によっては正確な距離測定が困難になることがあります。
Bluetooth Channel Sounding
Bluetooth Channel Soundingは、Bluetooth Core Specification 6.0で導入された新しい距離測定技術です。この技術はRSSIとは異なる「Phase-Based Ranging(PBR)」と「Round-Trip Time(RTT)」という2つの手法で距離測定を実現します。
Phase-Based Ranging(PBR)
Phase-Based Ranging(PBR)は、Bluetooth機器間で送受信される信号の位相差を用いて距離を測定する手法です。
位相差とは、電波信号の波の位置(タイミング)のずれのことです。電波は波として伝播するため、送信元からの距離に応じて波の位相が変化します。
この方式では、複数の周波数チャネルで信号を送受信し、それぞれの位相差を分析することで、精密な距離測定を実現します。
位相差を用いて距離を計算するため、この技術は信号強度の減衰の影響を受けにくく、安定性が高いという特徴があります。RSSIと比較すると、数センチメートル単位の高精度な距離測定が可能となり、これはIoT機器にとって大きな利点です。
ただし、位相は周期的に変化する性質があるため、同じ位相差から複数の距離が推定される可能性があります。
この課題を解決するのが、もう一つの手法「Round-Trip Time(RTT)」です。
Round-Trip Time(RTT)
Round-Trip Time(RTT)は、Bluetooth機器間で信号が往復する時間を計測して距離を測定する手法です。送受信にかかる時間から距離を算出する際は、信号が光速で伝播する特性を利用します。
この仕組みは「距離=速度×時間」という基本原理に基づきます。具体的には、光速を定数として「距離=(光速×往復時間)÷2」という式で距離を計算します。
ただし、高精度な距離測定を実現するには、往復時間を正確に計測する必要があります。
BLEデバイスでは、電波の送受信と内部での信号処理に一定の時間がかかります。この内部処理時間が考慮されていない場合、正確な距離を算出できません。そのため、送信デバイスと受信デバイスは事前に固定の処理時間を決めておく必要があります。
また、光速は媒質によって変化する可能性がある点と、デバイスが正確な時間を計測できることが求められる点にも注意が必要です。
今後の期待
いかがでしたでしょうか。
本記事では、Bluetoothコア規格のアップデートによって実現される高精度な測距技術についてご紹介しました。
これまで高精度な距離測定といえばUWB(Bluetoothとは別の通信規格)が主流でした。
しかし、そのポテンシャルが評価されれば、UWBと並ぶ技術としてBluetooth v6.0が今後採用される可能性があります。
Nordic Semiconductor社が「次世代シリーズSoCでBluetooth Channel Soundingのサポート」を発表していますし、今後も注目していきたいですね!
次回予告
明日の6日目の株式会社ビットキー Advent Calendar 2024は、Product Managementチーム所属の古川(@kzfrkw)が担当します。
参考資料