與蜂共舞—ZigBee技術(shù)一瞥
摘要: 本文從ZigBee的發(fā)展歷史入手,探討了這種基于無線傳感器技術(shù)的網(wǎng)絡(luò)應(yīng)用的協(xié)議棧、性能分析和各種應(yīng)用領(lǐng)域,全面構(gòu)建了完整的ZigBee技術(shù)應(yīng)用與發(fā)展藍圖。
關(guān)鍵詞: 短距離無線通信;ZigBee;IEEE 802.15.4
概述
“ZigBee”是什么?從字面上猜像是一種蜜蜂。因為“ZigBee”這個詞由“Zig”和“Bee”兩部分組成,“Zig”取自英文單詞“zigzag”,意思是走“之”字形,“bee”英文是蜜蜂的意思,所以“ZigBee”就是跳著“之”字形舞的蜜蜂。不過,ZigBee并非是一種蜜蜂,事實上,它與藍牙類似是一種新興的短距離無線通信技術(shù),國內(nèi)也有人翻譯成“紫蜂”。下面就讓我們一起進入這只蜜蜂的世界,與蜂共舞吧!
這只蜜蜂的來頭還是要從它的歷史開始說起,早在上世紀(jì)末,就已經(jīng)有人在考慮發(fā)展一種新的通信技術(shù),用于傳感控制應(yīng)用(sensor and control),這個想法后來在IEEE 802.15工作組當(dāng)中提出來,于是就成立了TG4工作組,并且制定了規(guī)范IEEE 802.15.4。但是IEEE 802的規(guī)范只專注于底層,要達到產(chǎn)品的互操作和兼容,還需要定義高層的規(guī)范,于是2002年ZigBee Alliance成立,正式有了“ZigBee”這個名詞。兩年之后,ZigBee的第一個規(guī)范ZigBee V1.0誕生,但這個規(guī)范推出的比較倉促,存在一些錯誤,并不實用。此后ZigBee Alliance又經(jīng)過兩年的努力,推出了新的規(guī)范ZigBee 2006,這是一個比較完善的規(guī)范。據(jù)聯(lián)盟最新的消息,今年年底將會發(fā)布更新版本的規(guī)范ZigBee 2007,這個版本增加了一些新的特性。
從ZigBee的發(fā)展歷史可以看到,它和IEEE 802.15.4有著密切的關(guān)系,事實上ZigBee的底層技術(shù)就是基于IEEE 802.15.4的,因此有一種說法認為ZigBee和IEEE 802.15.4是同一個東西,或者說“ZigBee”只是IEEE 802.15.4的名字而已,其實這是一種誤解。實際上ZigBee和IEEE 802.15.4的關(guān)系,有點類似于WiMAX和IEEE 802.16,Wi-Fi和IEEE 802.11,Bluetooth和IEEE 802.15.1。“ZigBee”可以看作是一個商標(biāo),也可以看作是一種技術(shù),當(dāng)把它看作一種技術(shù)的時候,它表示一種高層的技術(shù),而物理層和MAC層直接引用IEEE 802.15.4。事物是不斷的發(fā)展變化的,尤其是通信技術(shù),可以想象將來的ZigBee可能不會使用IEEE 802.15.4定義的底層,就跟藍牙(Bluetooth)宣布下一代底層采用UWB技術(shù)一樣,但是“ZigBee”這個商標(biāo)以及高層的技術(shù)還會繼續(xù)保留。
ZigBee協(xié)議棧速讀
我們無法預(yù)料將來ZigBee會基于怎樣的底層技術(shù),只好從它現(xiàn)在的底層——IEEE 802.15.4開始了解,IEEE 802.15.4包括物理層和MAC層兩部分。ZigBee工作在三種頻帶上,分別是用于歐洲的868MHz頻帶,用于美國的915MHz頻帶,以及全球通用的2.4GHz頻帶,但這三個頻帶的物理層并不相同,它們各自的信道帶寬分別是0.6MHz, 2MHz和5MHz,分別有1個,10個和16個信道。不同頻帶的擴頻和調(diào)制方式也有所區(qū)別,雖然都使用了直接序列擴頻(DSSS)的方式,但從比特到碼片的變換方式有比較大的差別;調(diào)制方面都使用了調(diào)相技術(shù),但868MHz和915MHz頻段采用的是BPSK,而2.4GHz頻段采用的是OQPSK。我們可以以2.4GHz頻段為例看看發(fā)射機基帶部分的框圖(如圖1),可以看到物理層部分非常簡單,而IEEE 802.15.4芯片的低價格正是得益于底層的簡單性??赡芪覀儠?dān)心它的性能,但我們可以再看看它和Bluetooth/IEEE 802.15.1以及WiFi/IEEE 802.11的性能比較(如圖2),在同樣比特信噪比的情況下,IEEE 802.15.4要優(yōu)于其他兩者。直接序列擴頻技術(shù)具有一定的抗干擾效果,同時在其他條件相同情況下傳輸距離要大于跳頻技術(shù)。在發(fā)射功率為0dBm的情況下,Bluetooth通常能有10m作用范圍,而基于IEEE 802.15.4的ZigBee在室內(nèi)通常能達到30~50m作用距離,在室外如果障礙物較少,甚至可以達到100m作用距離;同時調(diào)相技術(shù)的誤碼性能要優(yōu)于調(diào)頻和調(diào)幅技術(shù)。因此綜合起來,IEEE 802.15.4具有性能比較好的物理層。另一方面,我們可以看到IEEE 802.15.4的數(shù)據(jù)速率并不高,對于2.4GHz頻段只有250kb/s,而868MHz頻段只有20kb/s,915MHz頻段只有40kb/s。因此我們完全可以把它歸為低速率的短距離無線通信技術(shù)。
圖1 IEEE 802。15.4 物理層2.4GHz頻段發(fā)射機基帶框圖
圖2 幾種無線通信技術(shù)性能比較
{{分頁}}
物理層的上面是MAC層,它的核心是信道接入技術(shù),包括時分復(fù)用GTS技術(shù)和隨機接入信道技術(shù)CSMA/CA。不過ZigBee實際上并沒有對時分復(fù)用GTS技術(shù)進行相關(guān)的支持,因此我們可以暫不考慮它,而專注于CSMA/CA。ZigBee/IEEE 802.15.4的網(wǎng)絡(luò)所有節(jié)點都工作在同一個信道上,因此如果鄰近的節(jié)點同時發(fā)送數(shù)據(jù)就有可能發(fā)生沖突。為此MAC層采用了CSMA/CA的技術(shù),簡單來說,就是節(jié)點在發(fā)送數(shù)據(jù)之前先監(jiān)聽信道,如果信道空閑則可以發(fā)送數(shù)據(jù),否則就要進行隨機的退避,即延遲一段隨機時間,然后再進行監(jiān)聽,這個退避的時間是指數(shù)增長的,但有一個最大值,即如果上一次退避之后再次監(jiān)聽信道忙,則退避時間要增倍,這樣做的原因是如果多次監(jiān)聽信道都忙,有可能表明信道上的數(shù)據(jù)量大,因此讓節(jié)點等待更多的時間,避免繁忙的監(jiān)聽。通過這種信道接入技術(shù),所有節(jié)點競爭共享同一個信道。在MAC層當(dāng)中還規(guī)定了兩種信道接入模式,一種是信標(biāo)(beacon)模式,另一種是非信標(biāo)模式。信標(biāo)模式當(dāng)中規(guī)定了一種“超幀”的格式,在超幀的開始發(fā)送信標(biāo)幀,里面含有一些時序以及網(wǎng)絡(luò)的信息,緊接著是競爭接入時期,在這段時間內(nèi)各節(jié)點以競爭方式接入信道,再后面是非競爭接入時期,節(jié)點采用時分復(fù)用的方式接入信道,然后是非活躍時期,節(jié)點進入休眠狀態(tài),等待下一個超幀周期的開始又發(fā)送信標(biāo)幀。而非信標(biāo)模式則比較靈活,節(jié)點均以競爭方式接入信道,不需要周期性的發(fā)送信標(biāo)幀。顯然,在信標(biāo)模式當(dāng)中由于有了周期性的信標(biāo),整個網(wǎng)絡(luò)的所有節(jié)點都能進行同步,但這種同步網(wǎng)絡(luò)的規(guī)模不會很大。實際上,在ZigBee當(dāng)中用得更多的可能是非信標(biāo)模式。
MAC層往上就屬于ZigBee真正定義的部分了,我們可以參看一下ZigBee的協(xié)議棧(圖3)。底層技術(shù),包括物理層和MAC層由IEEE 802.15.4制定,而高層的網(wǎng)絡(luò)層、應(yīng)用支持子層(APS)、應(yīng)用框架(AF)、ZigBee設(shè)備對象(ZDO)和安全組件(SSP),均由ZigBee Alliance所制定。
圖3 ZigBee協(xié)議棧
這些部分當(dāng)中最下面的是網(wǎng)絡(luò)層。和其他技術(shù)一樣,ZigBee網(wǎng)絡(luò)層的主要功能是路由,路由算法是它的核心。目前ZigBee網(wǎng)絡(luò)層主要支持兩種路由算法—樹路由和網(wǎng)狀網(wǎng)路由。樹路由采用一種特殊的算法,具體可以參考ZigBee的協(xié)議棧規(guī)范。它把整個網(wǎng)絡(luò)看作是以協(xié)調(diào)器為根的一棵樹,因為整個網(wǎng)絡(luò)是由協(xié)調(diào)器所建立的,而協(xié)調(diào)器的子節(jié)點可以是路由器或者是末端節(jié)點,路由器的子節(jié)點也可以是路由器或者末端節(jié)點,而末端節(jié)點沒有子節(jié)點,相當(dāng)于樹的葉子。這種結(jié)構(gòu)又好像蜂群的結(jié)構(gòu),協(xié)調(diào)器相當(dāng)于蜂后,是唯一的,而路由器相當(dāng)于雄蜂,數(shù)目不多,末端節(jié)點則相當(dāng)于數(shù)量最多的工蜂。其實有很多地方仔細一想,就可以發(fā)現(xiàn)ZigBee和蜂群的許多暗合之處。樹路由利用了一種特殊的地址分配算法,使用四個參數(shù)—深度、最大深度、最大子節(jié)點數(shù)和最大子路由器數(shù)來計算新節(jié)點的地址,于是尋址的時候根據(jù)地址就能計算出路徑,而路由只有兩個方向—向子節(jié)點發(fā)送或者向父節(jié)點發(fā)送。樹狀路由不需要路由表,節(jié)省存儲資源,但缺點是很不靈活,浪費了大量的地址空間,并且路由效率低,因此常常作為最后的路由方法,或者干脆不用。ZigBee當(dāng)中還有一種路由方法是網(wǎng)狀網(wǎng)路由,這種方法實際上是AODV路由算法的一個簡化版本,非常適合于低成本的無線自組織網(wǎng)絡(luò)的路由。它可以用于較大規(guī)模的網(wǎng)絡(luò),需要節(jié)點維護一個路由表,耗費一定的存儲資源,但往往能達到最優(yōu)的路由效率,而且使用靈活。除了這兩種路由方法,ZigBee當(dāng)中還可以進行鄰居表路由,其實鄰居表可以看作是特殊的路由表,只不過只需要一跳就可以發(fā)送到目的節(jié)點。
{{分頁}}
網(wǎng)絡(luò)層的上面是應(yīng)用層,包括了APS、AF和ZDO幾部分,主要規(guī)定了一些和應(yīng)用相關(guān)的功能,包括端點(endpoint)的規(guī)定,還有綁定(binding)、服務(wù)發(fā)現(xiàn)和設(shè)備發(fā)現(xiàn)等等。其中端點是應(yīng)用對象存在的地方,ZigBee允許多個應(yīng)用同時位于一個節(jié)點上,例如一個節(jié)點具有控制燈光的功能,又具有感應(yīng)溫度的功能,又具有收發(fā)文本消息的功能,這種設(shè)計有利于復(fù)雜ZigBee設(shè)備的出現(xiàn)。而綁定是用于把兩個“互補的”應(yīng)用聯(lián)系在一起,如開關(guān)應(yīng)用和燈的應(yīng)用。更通俗的理解,“綁定”可以說是通信的一方了解另一方的通信信息的方法,比如開關(guān)需要控制“燈”,但它一開始并不知道“燈”這個應(yīng)用所在的設(shè)備地址,也不知道其端點號,于是它可以廣播一個消息,當(dāng)“燈”接收到之后給出響應(yīng),于是開關(guān)就可以記錄下“燈”的通信信息,以后就可以根據(jù)記錄的通信信息去直接發(fā)送控制信息了。服務(wù)發(fā)現(xiàn)和設(shè)備發(fā)現(xiàn)是應(yīng)用層需要提供的,ZigBee定義了幾種描述符,對設(shè)備以及提供的服務(wù)可以進行描述,于是可以通過這些描述符來尋找合適的服務(wù)或者設(shè)備。
ZigBee還提供了安全組件,采用了AES128的算法對網(wǎng)絡(luò)層和應(yīng)用層的數(shù)據(jù)進行加密保護,另外還規(guī)定了信任中心(trust center)的角色—全網(wǎng)有一個信任中心,用于管理密鑰和管理設(shè)備,可以執(zhí)行設(shè)置的安全策略。
ZigBee性能分析
上面對ZigBee協(xié)議棧作了一些介紹,要知道ZigBee能勝任什么工作,還需要作進一步的分析,主要有幾個方面:數(shù)據(jù)速率、可靠性、時延、能耗特性、組網(wǎng)和路由。
ZigBee的數(shù)據(jù)速率比較低,在2.4GHz的頻段也只有250kb/s,而且這只是鏈路上的速率,除掉幀頭開銷、信道競爭、應(yīng)答和重傳,真正能被應(yīng)用所利用的速率可能不足100kb/s,并且這余下的速率也可能要被鄰近多個節(jié)點和同一個節(jié)點的多個應(yīng)用所瓜分。所以我們不能奢望ZigBee去做一些如傳輸視頻之類的高難度的事情,起碼目前是這樣,而應(yīng)該聚焦于一些低速率的應(yīng)用,比如人們早就給它找好的一個應(yīng)用領(lǐng)域—傳感和控制。
至于可靠性,ZigBee有很多方面進行保證,首先是物理層采用了擴頻技術(shù),能夠在一定程度上抵抗干擾,而MAC層和應(yīng)用層(APS部分)有應(yīng)答重傳功能,另外MAC層的CSMA機制使節(jié)點發(fā)送之前先監(jiān)聽信道,也可以起到避開干擾的作用,網(wǎng)絡(luò)層采用了網(wǎng)狀網(wǎng)的組網(wǎng)方式(圖4),從源節(jié)點到達目的節(jié)點可以有多條路徑,路徑的冗余加強了網(wǎng)絡(luò)的健壯性,如果原先的路徑出現(xiàn)了問題,比如受到干擾,或者其中一個中間節(jié)點出現(xiàn)故障,ZigBee可以進行路由修復(fù),另選一條合適的路徑來保持通信(圖5、圖6)。據(jù)了解,在最新的ZigBee 2007協(xié)議棧規(guī)范當(dāng)中,將會引入一個新的特性——頻率捷變(frequency agility),這也是ZigBee加強其可靠性的一個重要特性。這個特性大致的意思是當(dāng)ZigBee網(wǎng)絡(luò)受到外界干擾,比如Wi-Fi的干擾,無法正常工作時,整個網(wǎng)絡(luò)可以動態(tài)的切換到另一個工作信道上。
圖4 ZigBee可靠的網(wǎng)狀網(wǎng)組網(wǎng)方式
{{分頁}}
圖5 ZigBee網(wǎng)絡(luò)受到外部干擾
圖6 通過更換路徑避開干擾
時延也是一個重要的考察因素。由于ZigBee采用隨機接入MAC層,并且不支持時分復(fù)用的信道接入方式,因此對于一些實時的業(yè)務(wù)并不能很好支持。而且由于發(fā)送沖突和多跳,使得時延變成一個不易確定的因素。
能耗特性是ZigBee的一個技術(shù)優(yōu)勢。通常情況下,ZigBee節(jié)點所承載的應(yīng)用數(shù)據(jù)速率都比較低,在不需要通信的時候,節(jié)點可以進入很低功耗的休眠狀態(tài),此時能耗可能只有正常工作狀態(tài)的千分之一。由于一般情況下休眠的時間占總運行時間的大部分,有時可能正常工作的時間還不到1%,因此達到很高的節(jié)能效果。在這種情況下,ZigBee的網(wǎng)絡(luò)有可能依靠普通的電池連續(xù)運轉(zhuǎn)一兩年。當(dāng)然,ZigBee節(jié)點能夠方便的在休眠狀態(tài)和正常運行狀態(tài)之間靈活的切換,和它底層的特性是分不開的。ZigBee從休眠狀態(tài)轉(zhuǎn)換到活躍狀態(tài)一般只需要十幾毫秒,而且由于使用直接擴頻而不是跳頻技術(shù),重新接入信道的時間也很快。
最后是組網(wǎng)和路由特性,它們屬于網(wǎng)絡(luò)層的特性,ZigBee在這方面做得相當(dāng)出色。首先是大規(guī)模的組網(wǎng)能力——ZigBee可以支持每個網(wǎng)絡(luò)多達六萬多個節(jié)點,相比之下,Bluetooth只支持每個網(wǎng)絡(luò)8個節(jié)點。這是因為ZigBee的底層采用了直擴技術(shù),如果采用非信標(biāo)模式,網(wǎng)絡(luò)可以擴展得很大,因為不需要同步。而且節(jié)點加入網(wǎng)絡(luò)和重新加入網(wǎng)絡(luò)的過程也很快,一般可以做到一秒以內(nèi)甚至更快,而Bluetooth通常需要3s時間。在路由方面,ZigBee支持可靠性很高的網(wǎng)狀網(wǎng)的路由,因此可以布設(shè)范圍很廣的網(wǎng)絡(luò),并且支持多播和廣播的特性,能夠給豐富的應(yīng)用帶來有力的支撐。
ZigBee應(yīng)用淺談
上面介紹了ZigBee的一些技術(shù)優(yōu)勢,也談到了不足之處,目前有些說法把它跟其它他的無線技術(shù),如Wi-Fi、Bluetooth、RFID、NFC等等進行類比,說某種技術(shù)不如另一種,甚至說某種技術(shù)要取代另一種,這樣的說法是片面的。作為一種低速率的短距離無線通信技術(shù),ZigBee有其自身的特點,因此應(yīng)該有為它量身定做的應(yīng)用,盡管在某些應(yīng)用方面可能和其他技術(shù)重疊。下面就來簡單看看ZigBee可能的一些應(yīng)用,包括智能家庭、工業(yè)控制、自動抄表、醫(yī)療監(jiān)護、傳感器網(wǎng)絡(luò)應(yīng)用和電信應(yīng)用。
{{分頁}}
智能家庭:家里可能都有很多電器和電子設(shè)備,如電燈、電視機、冰箱、洗衣機、電腦、空調(diào)等等,可能還有煙霧感應(yīng)、報警器和攝像頭等設(shè)備,以前我們最多可能就做到點對點的控制,但如果使用了ZigBee技術(shù),可以把這些電子電器設(shè)備都聯(lián)系起來,組成一個網(wǎng)絡(luò),甚至可以通過網(wǎng)關(guān)連接到Internet,這樣用戶就可以方便的在任何地方監(jiān)控自己家里的情況,并且省卻了在家里布線的煩惱。
工業(yè)控制:工廠環(huán)境當(dāng)中有大量的傳感器和控制器,可以利用ZigBee技術(shù)把它們連接成一個網(wǎng)絡(luò)進行監(jiān)控,加強作業(yè)管理,降低成本。
自動抄表:抄表可能是大家比較熟悉的事情,像煤氣表、電表、水表等等,每個月或每個季度可能都要統(tǒng)計一下讀數(shù),報給煤氣、電力或者供水公司,然后根據(jù)讀數(shù)來收費。現(xiàn)在在大多數(shù)地方還是使用人工的方式來進行抄表,逐家逐戶的敲門,很不方便。而ZigBee可以用于這個領(lǐng)域,利用傳感器把表的讀數(shù)轉(zhuǎn)化為數(shù)字信號,通過ZigBee網(wǎng)絡(luò)把讀數(shù)直接發(fā)送到提供煤氣或水電的公司。使用ZigBee進行抄表還可以帶來其它好處,比如煤氣或水電公司可以直接把一些信息發(fā)送給用戶,或者和節(jié)能相結(jié)合,當(dāng)發(fā)現(xiàn)能源使用過快的時候可以自動降低使用速度。
醫(yī)療監(jiān)護:電子醫(yī)療監(jiān)護是最近的一個研究熱點。在人體身上安裝很多傳感器,如測量脈搏、血壓,監(jiān)測健康狀況,還有在人體周圍環(huán)境放置一些監(jiān)視器和報警器,如在病房環(huán)境,這樣可以隨時對人的身體狀況進行監(jiān)測,一旦發(fā)生問題,可以及時做出反應(yīng),比如通知醫(yī)院的值班人員。這些傳感器、監(jiān)視器和報警器,可以通過ZigBee技術(shù)組成一個監(jiān)測的網(wǎng)絡(luò),由于是無線技術(shù),傳感器之間不需要有線連接,被監(jiān)護的人也可以比較自由的行動,非常方便。
傳感器網(wǎng)絡(luò)應(yīng)用:傳感器網(wǎng)絡(luò)也是最近的一個研究熱點,像貨物跟蹤、建筑物監(jiān)測、環(huán)境保護等方面都有很好的應(yīng)用前景。傳感器網(wǎng)絡(luò)要求節(jié)點低成本、低功耗,并且能夠自動組網(wǎng)、易于維護、可靠性高。ZigBee在組網(wǎng)和低功耗方面的優(yōu)勢使得它成為傳感器網(wǎng)絡(luò)應(yīng)用的一個很好的技術(shù)選擇。
電信應(yīng)用:在2006年初的時候,意大利電信就宣布她研發(fā)了一種集成了ZigBee技術(shù)的SIM卡,并命名為“ZSIM”[5]。其實這種SIM卡只是把ZigBee集成在電信終端上的一種手段。而ZigBee聯(lián)盟也在2007年4月發(fā)布新聞,說聯(lián)盟的成員在開發(fā)電信相關(guān)的應(yīng)用[6]。如果ZigBee技術(shù)真得可以在電信領(lǐng)域開展起來,那么將來用戶就可以利用手機來進行移動支付,并且在熱點地區(qū)可以獲得一些感興趣的信息,如新聞、折扣信息,用戶也可以通過定位服務(wù)獲知自己的位置。雖然現(xiàn)在的GPS定位服務(wù)已經(jīng)做得很好,但卻很難支持室內(nèi)的定位,而ZigBee的定位功能正好彌補這一缺陷。
結(jié)語
ZigBee為我們描繪了一個美好的未來,或許這些場景里我們不會太遙遠了,讓我們拭目以待,這只蜜蜂將會給我們的工作和生活帶來怎樣的變化。
參考文獻:
1 Bob Heile, “Wireless Sensors and Control Networks: Enabling New Opportunities”
2 Ian Marsden, “Network Layer Overview”
3 ZigBee Alliance, “ZigBee Specification”
4 ZigBee Alliance, “ZigBee Unveils Comprehensive New Features”
5 Maura, Turolla, Elisa Alessio, “ZigBee Value for a Telecom Operator”
6 ZigBee Alliance, “ZigBee Alliance Members Connect With Telecom Market”
pa相關(guān)文章:pa是什么
路由器相關(guān)文章:路由器工作原理
路由器相關(guān)文章:路由器工作原理
燃氣報警器相關(guān)文章:燃氣報警器原理
評論