Atom Login Admin

Above the clouds

Bluetooth Low Energy(BLE)についての概要 #1

Bluetooth 4.0 Bluetooth Low Energyの紹介 #1

About BLE

Bluetoothは良く知られている技術で、例えば携帯電話とヘッドセットや、ケーブルの代わりに使用される。2010年、新しい拡張としてBluetooth Low EnergyがBluetooth4.0として使用が策定された。その名前のとおりセンサーや使い捨てのデバイスなど、電源供給が必要な用途に適している。BLEは小さい端末でボタン電池を使用して無線通信できるように設計されている。

Generation "W" for wireless

現代では、無線の接続は多かれ少なかれユーザーフレンドリーな装置として見なされている。
特に、ローカルの無線接続は開発され、多くの消費者の製品に浸透する事に成功した。
日に日に大きく飛躍している技術としてはWi-Fiである。これはLaptopパソコンや、スマホ、Play Stationなどに標準に搭載されている機能である。WiFiは大きな帯域幅を提供しているが、データの転送量が多いので間違いなく電池の消費量は考えられていない。最近はWi-Fiの電池消費を削減する努力が行われていて、
M2M向けに適したLow Energy Wi-Fiというものもできている。
しかし、バッテリ駆動のアプリケーションには、一般的に多くのデータ転送を必要とするのではなく、このようなアプリケーションでは逆に、無線接続は非常に低いデューティ·サイクルでわずか数バイトを送信するために使用される。
IEEE 802.15.3(高速WPAN(無線パーソナル・データ・ネットワーク)規格)はこれらのネットワークを標準化したものである。まだ物理層とMAC層のみの定義で、実際のネットワーク層は独立して決定される。
ZipBeeでは、802.15.4上で動く有名なネットワーク層をZigBee標準としてメンテナンスしている。
それらはRF4CEやWirelessHART,6LoWPANのような他のいくつかのネットワークプロトコルを802.15.4仕様より定義された共通の低レイヤーを使用して違うものとして最適化している。
さらに、住宅自動化のZ-WaveとかAスポーツ/ヘルスケア分野向けのセンサプロトコルのANTプロトコルなどいくつかの無線プロトコルの所有権がある。
ワイヤレスソリューションの市場は未だ分断化されているが、それは標準化の難しさなどでなく、one-size-fits-all(一括でなんでもできる)ソリューションが無いからである。

Finding a place in the crown(群衆の中で場所を見つける)

Bluetoothはデータの標準か変換に電池消費が激しいようなことから、Wi-Fiと同じと見なされていた。
Bluetoothが最初にリリース(Bluetooth 1.2)されたときは1Mbit/secのデータ変換性能であった。
以来、この数値は強化され、、(Bluetooth 2.0 + EDR)では3Mbit/secとなり、さらには高速バージョンのBluetooth 3.0 + HSなど、バージョンを重ねていくごとに速度は増していた。
現在、Bluetooth 4.0は低いデューティ・サイクルで小さなデータ変換のアプリケーションの範囲をターゲットに動いている。この疑問の答えは自分で見つける事ができると思うが、BLEが電池消費と高速通信の両方で既にマーケットを設立していたら通信プロトコルの標準になっていただろう。

BLEのが活躍する場はあるが、識別するのは難しいかもしれない。BLEは軽いデューティ・サイクルで、小さなデータのやり取りで、ボタン電池で稼働するバッテリー消費量の少ない端末に向いている。
このような無線接続は最小限の価格(安価なシリコン、光MCUの処理要件、縮小されたメモリのフットプリント)が付属していて、それは個々とともに移動接続バブルを表すボディエリアネットワーク(BAN)に関連するアプリケーションで使用することができる。一緒にすべての要件を入れた後、既存のワイヤレスソリューションができない事にフィットするケースが簡単にわかる。

WiFiではなく、再充電が必要で、ストリーミングデータの容量があるような、最初の候補達は取り除くとしよう。
唯一の候補は802.15.4ベースのネットワークとZigBee,6LoWPAN,その他のような複数の種類があるもの、
一般的には、ZigBeeノードは平均30ミリアンペアの範囲で電力消費するが、それはボタン電池ではまかなえない。

100Feet以内の範囲でノードを配置し、30ミリアンペアの電力消費でZigBeeネットワークができることを考えると、BLEは30Feetの範囲で設計されている。BLEの使用ケースはユーザーの身近の周辺である。
全ての端末が圏内の距離に入ると、中間ノードを使っての再伝送は必要ない。それは、電力消費の節約だけでなく、単純なスター型の接続でネットワークを形成できる。

BLEはANTプロトコルという立派なワイヤレス技術が立役者になっていると言っても過言ではない。
Nordic ultra low power SoCという見積もった必要な電力量内で処理することができ、歩数計などスポーツ関連の製品と通信を行うGarminというデバイスに使われている。

しかし、BLEにはBluetooth傘下にいるという起爆剤がある。BLEは標準化されているだけでなく、20億に及ぶ携帯端末にも内蔵されることになって、標準のBluetoothとされ、その小さな兄弟、Bluetooth LEとして。

それはむしろ人為的にアプリケーションのBLEの通信可能面積が制限されるものの、再び、BLE​​は、スマートフォンと低データレートとの間の無線通信を可能にするために最適化されていることをしてみよう。コイン電池で動作し、すぐ近くに位置して潜在的に使い捨ての装置を作動さることができる。その上で、BLEの機能は実質的に無料で付属していて、すでに正規のBluetoothへの追加としての携帯電話に組み込まれていると仮定しよう。このパラダイムの中では、BLE​​は、他の候補に対して無敵の牙城を持っている。

BLEのナットとボルト

BLEはGFSK変調を用いて1Mbit/s以上のデータレートだ。これは、ラジオ複合より802.15.4にユニット化されているDSS(Direct Spread Spectrum)のほうが少ないが、重要なのは、存在しているBluetoothの帯域の過半数を再利用できることにある。それは離れて2MHzのうち40chのパーティションの容量を使用して2.4GHzのISM帯域で動作する。
しかし、標準のBluetoothと同じように最大+10 dBmのすべての方法は仕様で定められているが、それが、BLEのアプリケーションのほとんどに言えるとすると、BANのように電力の制約から0dBmはRF出力のレベルに適している。
群衆の帯域で干渉を軽減する為にBLEはホッピングを使っている。しかし、普通のBluetoothと反対なのは、同じチャンネルで長い時間待ち続けるのと、標準のBluetoothより緩く同期のタイミングを計っている。
3つのRFチャンネルは付近の有効な端末を見つける為のアドバタイズ専用である。通信のリクエスト上では、同じチャンネルで初期処理のパラメータ交換を行う。一度端末が見つかり、初期化されると標準のデータチャンネルで通信が行われる。

Bluetooth LE channel arrangements
図1 Bluetooth LE channel arrangements

37のデータ通信チャンネルと3つのアドバタイズチャンネルから構成されている。アドバタイズチャンネルはWifiチャンネルと干渉しないように別のスペクトルに割り当てられている。

BLE端末は必要な機能によって別々のモードで処理を行うであろう。主要なモードは、アドバタイズモード、スキャンモード、マスターデバイス、スレーブデバイスとなっている。アドバタイズモードでは、定期的にアドバタイズ情報を送信している。
スキャンモードでは、他の端末から送信されるアドバタイズ情報をリッスンしているのと、スキャンモードが有効であれば、追加の情報をリクエストするであろう。スキャナーのみの端末は、アドバタイズ情報のみを受け取る。
その場合、受信のみの機能はRFパートの設計が必要である。同様にアドバタイズのみのデバイスは送信者としての設計が必要である。これは間違いなく、コストに敏感なアプリケーションで追加のユースケースを可能にする。スタックは、特定のアプリケーションで使用されていない場合は、除外することができセクションに分割することができるという事実は、スタックのサイズを最適化し、より小さいフラッシュ/ RAMメモリフットプリントでMCUを使用するために絶好の機会である。

コネクションの確立に沿って、一つの端末はアドバタイズモード(通信ができる)になってと他のデバイスはイニシエーターモードになる。それはスキャナーモードと似ているが、通信の確立に意図されている。イニシエーターは欲しいアドバタイズパケットを受け取ると通信リクエストを行う。通信が確立されるとイニシエーターはマスターデバイスとなり、アドバタイズしたデバイスはスレーブデバイスになる。マスターでバイスが同時に他のスレーブでバイスと同時に通信を行っているであろう間、スレーブデバイスはその時点では一つのコネクションであろう。この非対称なアプローチはスレーブデバイスが資源やハードウェアのコストを削減することにつながっている。このコンビネーションはBLEのアプリケーションにフィットしている。マスターデバイスはほとんどのケースで携帯電話などになるだろうが、センサーなどに比べれば、計算能力や複数のスレーブデバイスと同時に通信するなどできる。

基本的なBLEは1byteのプリアンブルと、4byteはRFチャンネルの番号で使われている。PDUは2から39byteの間で使われ、3byteはCRCである。故に最小は80usecの間で80bitの送信となる。また、最長のパケットは376bitで0.3ミリ秒の間に送信される。これは、シングルモードのデバイスのもつ電力の制約を考慮したものである。

Bluetooth LE over-the-air frame breakdown
図2 Bluetooth LE over-the-air frame breakdown

アドバタイズデータとデータチャンネル異なったPDUタイプが使われている。アドバタイズチャンネルは、デバイスの検索や、通信確立の情報を運んでいる。コネクションが確立されると、データチャンネルのPDUはリンクコントロールデータとペイロードなど高レベルのプロトコルを運ぶ。

アドバタイズチャンネルのPDUは16bitのPDUヘッダーとタイプによって違うアドバタイズ情報で構成されている。
また、スキャナーはアドバタイズモードのデバイスから31バイトまで追加の情報をリクエストする事が出来る。
これは通信確立せずにも多くの情報をアドバタイズから受信することができることを意味する。

アドバタイズの間隔の範囲は20msから10sまで設定できる。連続したアドバタイズパケットの間で設定する。
アドバタイズは、全ての有効なチャンネルに順次的に行われる。

スキャナーモードへは、BLEは繰り返しの頻度を意味する、スキャンの間隔と同様にscanwindowという間隔を指定する事ができる。

コネクションが確立されると、イニシエーターの端末(マスターになる)はマスタースレーブの交換のタイミングや、チャンネルなどのクリティカルなデータをアドバタイズの端末(スレーブになる)に送信する。
特にコネクションの間隔とスレーブのレイテンシという2つの重要なパラメータがある。コネクションの間隔は、コネクションイベントと呼ばれる順次にパケットの交換を開始するタイミングを決定するものである。
レイテンシーはコネクションが失われても無視できる間隔である。
これによってスレーブは電力消費の最適化ができる。接続が確立されると、スレーブはスレーブアプリケーションに合わせて、通信パラメータのアップデートを要求することができるであろう。

データチャンネルのPDUはヘッダーと37byteまでのデータと暗号化されている場合は4byteのMICデータで構成されている。
データチャンネルのペイロードはヘッダーに依存していて、レイヤー操作の情報か高レベルのプロトコルを運んでいる。

それぞれの通信はマスターからの送信により始まり、次のイベントの時間を計算するアンカーポイントを提供する。
通信が行われている間はマスタースレーブのどちらかがパケット送信を止めるまで、パケットの送受信を交代しながら
行う。直近のイベントが切断と見なされた場合は、次の通信イベントが発生するまで、データの交換は中断される。