ビル内の照明や空調装置,防犯装置などを無線で接続する技術ZigBee。最近名前を聞くようになったものの,仕様の詳細は明らかでなく謎が多い。まだ,ZigBeeの評価用キットがいくつか登場した段階だ。このうちの一つを使ってZigBeeの仕組みを調べた。評価キットには未実装の機能や評価用ならではの実装があるため,ZigBeeの実際とズレがあるかもしれないが,パケット転送の仕組みは大筋判明した。また,無線LANとの干渉が起こることが明らかになった。
| ||
| ||
|
ただその実態はベールに包まれている。仕様書を含む詳細な資料を入手できるのはZigBee Allianceの会員のみ。一般に公開しているのは,概略を説明したホワイト・ペーパーやプレゼンテーション資料程度。例えば複数のノードがパケットを中継する際に各ノードがあて先を判断する仕組みや,アドレスの割り当て方法などは不明だ。また,使用している周波数帯から無線LANと競合する可能性があるが,これに対する情報も明らかではない。
そこで,ZigBeeの本質に迫るため,市販の評価キットを使って動作原理や無線特性などを調べた(次ページの別掲記事「実験に使用した評価キット」参照)。
ネットワーク層以上を定める
まずZigBeeの全体像を押さえておこう。ZigBee Allianceが公開している情報によると,ZigBeeは遠隔監視や操作のための近距離無線技術である。ビルの空調や照明の制御ネットワーク,防犯用のセンサー・ネットワーク,プラント装置の監視ネットワークなどがその主たる用途である。
ZigBeeの仕様で定めているのはOSI参照モデルにおけるネットワーク層以上の部分。具体的にはパケットの転送やセキュリティ確保の方法,アプリケーションとのインタフェースなどだ(図1[拡大表示])。物理層(PHY)とMAC層には,IEEEが標準化した近距離無線規格IEEE802.15.4を利用する。
IEEE802.15.4は2.4GHz帯以外に868MHz帯と915MHz帯を規格として定めている。日本では周波数割り当ての関係で2.4GHz帯しか利用できない。データ転送速度は最大250kビット/秒と,無線LANやBluetoothと比較して低速である。そのぶん消費電力が低いのが特徴。電力制御をすれば単三アルカリ乾電池2本で数カ月~2年程度動作できるという。
各アプリケーションの呼び出し手順は「プロファイル」として規定している。プロファイルには例えば,照明機器用の「Lighting」がある。プロファイルはZigBee Allianceだけでなく,ベンダーが独自に定めてもよい。
ノードには,処理能力や消費電力に応じた2種類の実装がある。一つはパケットを中継できる実装。ルーティングのためのテーブルを持ち,別のノードから受け取ったパケットを目標のノードに送り出せる。もう一つは中継機能を持たず,自分自身の親となるノードとしか通信しない実装。親となるノードが目的地に向けてパケットを回送する。
前者の中継機能があるノードを「Full Function Device(FFD)」,後者の中継機能がないノードを「Reduced Function Device(RFD)」と呼ぶ(図2[拡大表示])。RFDの親になるノードはFFDでなければならない。FFDが複数ある場合はそのうち一つが,「ネットワーク・コーディネータ」になる。ネットワーク・コーディネータはネットワークのすべてのノードの位置関係を把握しており,ネットワークのトポロジを決定する。
ルーティングと無線特性に残る疑問
この説明でなるほどそういうものかとも思えるが,実際に動いている様子を想像すると,疑問がわいてくる。
仕組み上の疑問は大きく三つ(図3[拡大表示])。まず,トポロジ決定方法である。ホワイト・ペーパーによれば「ネットワーク・コーディネータがトポロジを決定する」という。しかし,複数のFFDがある場合,ネットワーク・コーディネータをどのように決定するのか。またノード同士の接続関係はどうやって決まるのか。
次に気になるのが,パケット転送のメカニズムである。ZigBeeでは,直接電波が届かなくても,その間に位置する複数のノードがパケットを中継して通信する。その経路はどうやって決定するのか。
最後の疑問が中継ノードの障害時の動作である。もし中継するノードに障害があると,離れた場所にあるノード間での通信ができなくなる。こういったケースでは迂回路を探すような仕組みが入っているのだろうか。
仕組みだけではなく,無線の特性に関する疑問もある。その一つが到達距離。ZigBeeの出力は数mWと小さい。どの程度の距離を中継なしに通信できるのだろうか。また無線LANとの干渉も気になる。ZigBeeではIEEE802.11b/gと同じ2.4GHz帯を利用するからだ。