張 罡
(武漢船舶職業(yè)技術(shù)學(xué)院,武漢 430050)
無(wú)線傳感器網(wǎng)絡(luò)(Wireless Sensor Network,WSN)是當(dāng)前國(guó)際上備受關(guān)注的前沿?zé)狳c(diǎn)研究領(lǐng)域。它集傳感器技術(shù)、嵌入式處理技術(shù)、現(xiàn)代網(wǎng)絡(luò)技術(shù)以及無(wú)線通信技術(shù)、分布式信息處理技術(shù)于一身,通過(guò)節(jié)點(diǎn)集成的微傳感器協(xié)作感知、實(shí)時(shí)監(jiān)測(cè)目標(biāo)環(huán)境的信息,并將這些信息利用無(wú)線方式發(fā)送到用戶終端。因此利用無(wú)線傳感網(wǎng)絡(luò)技術(shù)構(gòu)建的遠(yuǎn)程監(jiān)測(cè)系統(tǒng)可以解決傳統(tǒng)模式中布線難和管理難的問(wèn)題,可以遠(yuǎn)程獲取大量詳實(shí)而可靠的數(shù)據(jù)。無(wú)線通信技術(shù)上,由于傳輸數(shù)據(jù)量小且不需要很高的傳輸速率,而對(duì)于資源受限的微傳感器節(jié)點(diǎn)成本和能量至關(guān)重要,因此必須選擇一種低功耗、低成本的通信機(jī)制,ZigBee標(biāo)準(zhǔn)的公布解決了這一問(wèn)題[1,2]。
作為一種雙向無(wú)線通信技術(shù)的ZigBee技術(shù)來(lái)說(shuō),其具有低功耗、低速率、低成本,同時(shí)還滿足短距離和低復(fù)雜度的要求,主要使用的范圍為工業(yè)控制傳感和遠(yuǎn)程控制相關(guān)方面,其10~75m為其主要傳輸距離,工作為2.4GHz的ISM頻段上,同時(shí),傳輸速率為20~250kbps。
ZigBee協(xié)議棧基于開放互聯(lián)模型(OSI)采用的五層模型分別為:物理層、介質(zhì)訪問(wèn)層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層和應(yīng)用匯聚子層、應(yīng)用層。
1)物理層。兩種物理層使用相同的數(shù)據(jù)幀格式,采用直接擴(kuò)頻技術(shù)(Direct Sequence Spread Spectrum,DSSS)降低了數(shù)字集成電路的成本,但是需要注意的是,不同之處在于其調(diào)制技術(shù)、擴(kuò)頻碼片長(zhǎng)度、工作頻率和傳輸速率等方面。這里采用2.4GHz頻段全球通用的,一般為10一26共16個(gè)信道提供250kbps傳輸速率,采用O-QPSK調(diào)裁方式。
2)數(shù)據(jù)鏈路層。其中,在IEEES02系列標(biāo)準(zhǔn)中,媒體接人控制層MAC(Media Access Control,MAC)和邏輯鏈路控制層LLC(Logical Link Control,LLC)為數(shù)據(jù)鏈路層兩個(gè)主要方面。MAC子層使用物理層提供的服務(wù)實(shí)現(xiàn)設(shè)備之間的數(shù)據(jù)幀傳輸,其設(shè)計(jì)目標(biāo)是低成本、低功耗和低復(fù)雜度。LLC子層主要完成傳輸控制、數(shù)據(jù)包分段、重組、傳輸?shù)裙δ?。?shù)據(jù)鏈路層的四種幀類型為:數(shù)據(jù)幀、信標(biāo)幀、命令幀和確認(rèn)幀。ZigBee采用載波偵聽多址/沖突避免(CSMACA)信道訪問(wèn)方式和完全握手協(xié)議來(lái)提高傳輸可靠性。
3)網(wǎng)絡(luò)層。網(wǎng)絡(luò)層采用基于Ad hoc技術(shù)的網(wǎng)絡(luò)協(xié)議減小功耗和成本并具有高度動(dòng)態(tài)拓?fù)浣Y(jié)構(gòu)和自組織、自維護(hù)的功能。網(wǎng)絡(luò)定義了兩種設(shè)備:全功能設(shè)備(FFD)和簡(jiǎn)化功能設(shè)備(RFD)。FFD可以與任何類型設(shè)備通信,承擔(dān)網(wǎng)絡(luò)協(xié)調(diào)者和路由的功能。RFD只能與FFD通信。組網(wǎng)方式有三種:星型網(wǎng)、網(wǎng)狀網(wǎng)和樹狀網(wǎng)。
4)應(yīng)用層。主要是用戶應(yīng)用相關(guān)的代碼以及一些應(yīng)用接口,將不同的應(yīng)用映射到ZigBee網(wǎng)絡(luò)層如:設(shè)備的發(fā)現(xiàn)、入網(wǎng)以及事件的發(fā)現(xiàn)等。
第一,具有較高的通信數(shù)據(jù)可靠性。為了有效避免數(shù)據(jù)發(fā)送時(shí)候的競(jìng)爭(zhēng)和沖突問(wèn)題,CSMACA的避免碰撞機(jī)制在ZigBee中被采用,同時(shí)專用時(shí)隙也為固定帶寬的通信業(yè)務(wù)所預(yù)先保留。完全確認(rèn)的數(shù)據(jù)傳輸機(jī)制在MAC層中得以保存,另外,較高的通信可靠性通過(guò)每個(gè)發(fā)送的數(shù)據(jù)包都必須等待接收方的確認(rèn)信息來(lái)體現(xiàn)。另外,AES-128為其加密算法,同時(shí),數(shù)據(jù)完整性檢查和鑒權(quán)功能在ZigBee系統(tǒng)中也很有必要,其安全屬性可以通過(guò)協(xié)議棧的各層靈活確定。
第二,設(shè)備接入網(wǎng)絡(luò)快,同時(shí)時(shí)延較短。對(duì)于設(shè)備接入網(wǎng)絡(luò)和數(shù)據(jù)傳送的延時(shí)時(shí)間來(lái)說(shuō),一般的時(shí)延都在15ms到30ms之間,這樣特點(diǎn)在實(shí)時(shí)的監(jiān)測(cè)和控制應(yīng)用中就顯得十分必要。
第三,具有低成本的省電功能。降低成本可以通過(guò)ZigBee協(xié)議免專利費(fèi)實(shí)現(xiàn),同時(shí)多種節(jié)電工作模式在ZigBee協(xié)議中體現(xiàn),數(shù)據(jù)收發(fā)功耗極低,這樣普通的五號(hào)電池就能滿足長(zhǎng)達(dá)6個(gè)月到2年左右的正常使用。
第四,網(wǎng)絡(luò)容量大。65536個(gè)網(wǎng)絡(luò)可以在每個(gè)信道上存儲(chǔ),另外,65536個(gè)網(wǎng)絡(luò)設(shè)備可以在每個(gè)網(wǎng)絡(luò)上存儲(chǔ),這樣就說(shuō)明了在大規(guī)模無(wú)線傳感器網(wǎng)絡(luò)中的網(wǎng)絡(luò)容量極其龐大特點(diǎn)。
第五,網(wǎng)絡(luò)的自組織、自愈能力強(qiáng)。對(duì)于ZigBee網(wǎng)絡(luò)來(lái)說(shuō),周圍節(jié)點(diǎn)可以自動(dòng)進(jìn)行感應(yīng),在沒(méi)有人工干預(yù)的情況下而進(jìn)行組建網(wǎng)絡(luò);另外,ZigBee網(wǎng)絡(luò)能夠自我修復(fù)由于節(jié)點(diǎn)失效或位置變動(dòng)會(huì)破壞網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的情況,同時(shí)相應(yīng)調(diào)整網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),使得正常的系統(tǒng)得以工作。
在某監(jiān)測(cè)區(qū)域,通過(guò)人工布置載有不同類型傳感器的節(jié)點(diǎn),這些節(jié)點(diǎn)通過(guò)ZigBee協(xié)議自動(dòng)組建網(wǎng)絡(luò),以協(xié)作的方式適時(shí)感知、采集和處理網(wǎng)絡(luò)覆蓋區(qū)域中的信息,并通過(guò)多跳網(wǎng)絡(luò)將數(shù)據(jù)發(fā)至基站,基站通過(guò)與PC機(jī)連接,存儲(chǔ)節(jié)點(diǎn)信息并進(jìn)行初步分析處理,將處理后的數(shù)據(jù)通過(guò)互聯(lián)網(wǎng)傳送到遠(yuǎn)程專家進(jìn)行統(tǒng)計(jì)、分析與判斷。
典型的傳感器節(jié)點(diǎn)由傳感器模塊、處理模塊、通信模塊以及電源模塊組成。我們采用Jennic公司生產(chǎn)的JN5139-Z01-M0模塊,該模塊是集成微處理器和RF收發(fā)芯片一體的SOC芯片;傳感器模塊采用SHT10板載溫濕度傳感器芯片;電源使用兩節(jié)1.5V電池。
JN5139-Z01-M00模塊從低功耗、低成本出發(fā)采用RISC結(jié)構(gòu),吸取了PIC及8051單片機(jī)的優(yōu)點(diǎn),具有豐富的內(nèi)部資源和外部接口,提供了多種電源管理模式,盡量節(jié)省節(jié)點(diǎn)能源;集成的RF射頻組件不需要射頻電路的調(diào)試,數(shù)據(jù)收發(fā)時(shí)電流僅為37mA,而且完全兼容2.4GHz IEEE802.15.4的收發(fā)器為ZigBee協(xié)議的應(yīng)用提供保證;JN5139使用硬件MAC和高度安全的AES加密加速器,保證了低功耗和處理器的最小工作負(fù)荷。SHTl0集成傳感器模塊體積小,靈敏度高而且功耗低,可以將采集的溫度值以數(shù)字直接傳到微處理器,免去了外圍電路的設(shè)計(jì)。電源單元加入了低功耗的管理與控制,當(dāng)節(jié)點(diǎn)不工作的時(shí)候系統(tǒng)進(jìn)入休眠狀態(tài),關(guān)閉通信單元供電CPU進(jìn)入低功耗模式以節(jié)省電能。另外,節(jié)點(diǎn)還有RS232接口用來(lái)將用戶程序代碼寫入JN5139的FLASH存儲(chǔ)器,將匯聚節(jié)點(diǎn)收集數(shù)據(jù)發(fā)送到PC機(jī);以及I/O擴(kuò)展口用來(lái)擴(kuò)展片外存儲(chǔ)器或其他傳感器模塊以實(shí)現(xiàn)新的功能。
在系統(tǒng)軟件程序設(shè)計(jì)時(shí),采用Jennie公司Code::Blocks作為開發(fā)環(huán)境,基站采用串口通信模式,利用中斷的方法來(lái)完成數(shù)據(jù)的接收和發(fā)送。節(jié)點(diǎn)向基站發(fā)送中斷請(qǐng)求,基站喚醒將節(jié)點(diǎn)數(shù)據(jù)轉(zhuǎn)發(fā)到PC機(jī),另外基站也負(fù)責(zé)將本身收集數(shù)據(jù)發(fā)送到PC機(jī)。平時(shí)節(jié)點(diǎn)都處于休眠模式,當(dāng)有中斷時(shí)才喚醒工作。
軟件程序由基站和節(jié)點(diǎn)程序組成。節(jié)點(diǎn)電源打開后,初始化ZigBee模塊和傳感器模塊的一些參數(shù),建立通信鏈路后進(jìn)入休眠模式。當(dāng)基站收到節(jié)點(diǎn)的中斷請(qǐng)求時(shí)觸發(fā)中斷,激活節(jié)點(diǎn)打開通信單元接收數(shù)據(jù),并進(jìn)行數(shù)據(jù)的處理,通過(guò)串行口將數(shù)據(jù)包發(fā)送到PC機(jī)。節(jié)點(diǎn)初始化過(guò)程中主要是對(duì)節(jié)點(diǎn)協(xié)議棧和傳感器模塊的初始化,而后進(jìn)自動(dòng)調(diào)用任務(wù)調(diào)度系統(tǒng)當(dāng)有數(shù)據(jù)發(fā)送請(qǐng)求時(shí)節(jié)點(diǎn)會(huì)自動(dòng)喚醒調(diào)用系統(tǒng)的AppWarmStart()函數(shù),進(jìn)入主程序,開始將采集到的數(shù)據(jù)向基站請(qǐng)求發(fā)送,基站回應(yīng)后開始數(shù)據(jù)的傳輸,傳輸時(shí)設(shè)置了閥值來(lái)判斷數(shù)據(jù)是否傳輸完成。完成數(shù)據(jù)的傳輸后節(jié)點(diǎn)會(huì)自動(dòng)進(jìn)入休眠模式。
傳感器網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)主要有星型、樹狀和網(wǎng)狀三種結(jié)構(gòu)。其中網(wǎng)狀結(jié)構(gòu)的系統(tǒng)健壯性最好,有多條鏈路可以實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā);樹狀依賴于各個(gè)主干節(jié)點(diǎn),當(dāng)有一個(gè)主干節(jié)點(diǎn)失效可能造成其他節(jié)點(diǎn)鏈路的中斷;而星型網(wǎng)絡(luò)簡(jiǎn)單易于實(shí)現(xiàn),可用于小范圍的網(wǎng)絡(luò)監(jiān)測(cè)。由于本系統(tǒng)實(shí)現(xiàn)的是對(duì)設(shè)備的狀態(tài)監(jiān)測(cè),規(guī)模和監(jiān)測(cè)范圍不是很大,因此采用簡(jiǎn)單的星型網(wǎng)絡(luò)結(jié)構(gòu)就可以實(shí)現(xiàn)要求,通過(guò)多個(gè)節(jié)點(diǎn)不同傳感器的數(shù)據(jù)綜合分析可以判斷監(jiān)測(cè)區(qū)域的狀態(tài)。
系統(tǒng)啟動(dòng)后,基站根據(jù)拓?fù)鋮f(xié)議進(jìn)行網(wǎng)絡(luò)的組建,為節(jié)點(diǎn)分配短地址,當(dāng)節(jié)點(diǎn)收到后就返回一個(gè)ACK包響應(yīng),所有節(jié)點(diǎn)都返回以后網(wǎng)絡(luò)組建完成。當(dāng)主機(jī)執(zhí)行查詢相應(yīng)的傳感器數(shù)據(jù)時(shí),基站根據(jù)地址分配找到相應(yīng)傳感器的位置執(zhí)行相關(guān)的數(shù)據(jù)采集;而當(dāng)節(jié)點(diǎn)的傳感器定時(shí)監(jiān)測(cè)中發(fā)現(xiàn)異常情況,則需上傳數(shù)據(jù)基站,基站收到后發(fā)一個(gè)收到響應(yīng)包,如果節(jié)點(diǎn)在沒(méi)有收到確認(rèn)信號(hào)時(shí)將重新發(fā)送。
為了驗(yàn)證系統(tǒng)的可行性,我們采用Agilent33220A函數(shù)發(fā)生器產(chǎn)生500Hz正弦波信號(hào)通過(guò)節(jié)點(diǎn)ADC進(jìn)行采集和發(fā)送,采用單點(diǎn)采集的模式每隔0.2ms采集一個(gè)點(diǎn)數(shù)據(jù),因此對(duì)于500Hz信號(hào)每個(gè)周期可以采集10點(diǎn)數(shù)據(jù),通過(guò)星型網(wǎng)絡(luò)節(jié)點(diǎn)講述數(shù)據(jù)發(fā)送到基站后由串口顯示,通過(guò)對(duì)其中一個(gè)節(jié)點(diǎn)采集的數(shù)據(jù)進(jìn)行了波形的還原,可以看到其峰峰值之間間隔完全符合我們預(yù)期的目標(biāo),從而說(shuō)明數(shù)據(jù)可靠的收集以及監(jiān)測(cè)網(wǎng)絡(luò)是可行的。另外我們節(jié)點(diǎn)的溫濕度傳感器可以對(duì)周圍環(huán)境情況實(shí)時(shí)監(jiān)測(cè)報(bào)告。
本文提出一種基于ZigBee技術(shù)構(gòu)建的無(wú)線監(jiān)測(cè)系統(tǒng),以Jennic公司推出的JN5139-Z01-M0為核心設(shè)計(jì)了傳感器節(jié)點(diǎn),分析了節(jié)點(diǎn)的結(jié)構(gòu)并對(duì)其程序的流程進(jìn)行介紹,通過(guò)實(shí)驗(yàn)實(shí)現(xiàn)了對(duì)數(shù)據(jù)的采集和無(wú)線發(fā)送。ZigBee技術(shù)作為一種新興的低功耗、低成本、短距離無(wú)線通信技術(shù),在無(wú)線傳感器網(wǎng)絡(luò)中必然會(huì)有廣泛的應(yīng)用前景。隨著技術(shù)的不斷成熟和系統(tǒng)的逐步完善,該方案在工業(yè)領(lǐng)域也會(huì)有廣闊的應(yīng)用前景。
[1] 郭杰, 雷剛, 施蕓, 等. 基于ZigBee的汽輪機(jī)汽缸負(fù)荷分配監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J]. 制造業(yè)自動(dòng)化, 2011, 33(20).
[2] 楊福寶. 基于Zigbee的數(shù)據(jù)傳輸系統(tǒng)的研究設(shè)計(jì)[J].制造業(yè)自動(dòng)化, 2011, 33(2).
[3] 高相銘, 楊世鳳, 胡瑜. ZigBee技術(shù)在城市管網(wǎng)監(jiān)測(cè)系統(tǒng)中的應(yīng)用[J]. 電氣傳動(dòng), 2012, 42(1).
[4] 樊志平, 洪添勝, 劉志壯, 等. 柑橘園土壤墑情遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J]. 農(nóng)業(yè)工程學(xué)報(bào), 2010, 26(8).