劉潘 丁瑞
摘要 針對(duì)當(dāng)前大型果園智能無(wú)線傳感設(shè)計(jì)中人為設(shè)定無(wú)線網(wǎng)中終端節(jié)點(diǎn)和路由節(jié)點(diǎn)的功能在節(jié)點(diǎn)數(shù)量多的網(wǎng)絡(luò)中使用和維護(hù)很不方便這一技術(shù)問(wèn)題,設(shè)計(jì)、研究1款基于ZigBee技術(shù)的無(wú)線傳感節(jié)點(diǎn)。該方案以TI公司的CC2538為主控芯片來(lái)分別設(shè)計(jì)網(wǎng)絡(luò)節(jié)點(diǎn)的硬件電路和軟件流程。測(cè)試結(jié)果表明,該節(jié)點(diǎn)能自動(dòng)檢測(cè)并設(shè)定節(jié)點(diǎn)功能,具有較好的穩(wěn)定性和較高的通信效率,可以滿足果園農(nóng)業(yè)信息傳輸和組網(wǎng)的要求。
關(guān)鍵詞 ZigBee;物聯(lián)網(wǎng);節(jié)點(diǎn);軟件;組網(wǎng)
中圖分類號(hào) S126;TP393 文獻(xiàn)標(biāo)識(shí)碼 A 文章編號(hào) 0517-6611(2015)20-356-03
Abstract In the design of intelligent wireless communication of the large orchard, the functions of the terminal node and routing nodes are manmade set in a network, it is quite inconvenient when there are lot of nodes in the network. The controller chip in this design is CC2538 manufactured by TI, and the hardware circuit and software based on this chip are designed respectively. The results of test indicate that the nodes can set the node function automatic, have good stability and high communication efficiency. Therefore, the design can satisfy the need of information transmission and the networking of the orchard.
Key words ZigBee; Internet of Things; Node; Software; Network
隨著無(wú)線通信網(wǎng)絡(luò)的出現(xiàn),傳統(tǒng)的有線信息傳輸方式逐漸被無(wú)線通信方式所取代。目前,在智慧農(nóng)業(yè)中,無(wú)線通信網(wǎng)絡(luò)已經(jīng)被廣泛應(yīng)用于溫室大棚、農(nóng)田、果園等領(lǐng)域[1-3]。無(wú)線通信方式通過(guò)設(shè)計(jì)協(xié)調(diào)器節(jié)點(diǎn)、路由節(jié)點(diǎn)和終端節(jié)點(diǎn)3種節(jié)點(diǎn)對(duì)信息進(jìn)行控制,再通過(guò)無(wú)線網(wǎng)絡(luò)進(jìn)行信息傳輸,極大地方便了農(nóng)業(yè)的發(fā)展。
當(dāng)前用于農(nóng)業(yè)無(wú)線傳輸節(jié)點(diǎn)的設(shè)計(jì)一般采用MSP430、CC2530等單片機(jī)來(lái)設(shè)計(jì)終端節(jié)點(diǎn)、路由節(jié)點(diǎn)以及使用ARM或者ARM核的STM32芯片等來(lái)設(shè)計(jì)協(xié)調(diào)器節(jié)點(diǎn)[4-7]。在組網(wǎng)時(shí)需人為設(shè)定節(jié)點(diǎn)為哪種節(jié)點(diǎn),路由節(jié)點(diǎn)功能單一,只能負(fù)責(zé)信息的路由傳輸,一旦路由節(jié)點(diǎn)損壞,將會(huì)導(dǎo)致大量終端節(jié)點(diǎn)無(wú)法正常傳輸數(shù)據(jù)。在環(huán)境較復(fù)雜的果園中使用路由節(jié)點(diǎn)需額外配置終端節(jié)點(diǎn)來(lái)采集信息,安裝不便且成本較高。
因此,筆者提出1款基于ZigBee技術(shù)的果園無(wú)線節(jié)點(diǎn)設(shè)計(jì),首先對(duì)ZigBee技術(shù)協(xié)議棧和拓?fù)浣Y(jié)構(gòu)進(jìn)行簡(jiǎn)單介紹,根據(jù)果園的環(huán)境選擇網(wǎng)狀拓?fù)浣Y(jié)構(gòu),然后對(duì)設(shè)計(jì)整體系統(tǒng)進(jìn)行分析說(shuō)明,設(shè)計(jì)節(jié)點(diǎn)的硬件和軟件,最后經(jīng)過(guò)試驗(yàn)驗(yàn)證該節(jié)點(diǎn)的性能。
1 ZigBee技術(shù)簡(jiǎn)介
ZigBee協(xié)議棧是基于基準(zhǔn)的OSI 7層開(kāi)放式系統(tǒng)互聯(lián)模型,并對(duì)涉及ZigBee的層進(jìn)行定義。ZigBee網(wǎng)絡(luò)支持3種拓?fù)湫问絒8]:星型網(wǎng)絡(luò)拓?fù)洌╯tar)、樹(shù)型網(wǎng)絡(luò)拓?fù)洌╰ree)和網(wǎng)型網(wǎng)絡(luò)拓?fù)?(mesh) ,如圖1所示。
ZigBee的通信網(wǎng)絡(luò)由3種類型的節(jié)點(diǎn)組成:協(xié)調(diào)器節(jié)點(diǎn)(ZC)、路由器節(jié)點(diǎn)(ZR)和終端設(shè)備節(jié)點(diǎn)(ZD)。在果園環(huán)境中,網(wǎng)狀拓?fù)浣Y(jié)構(gòu)是較為合適的結(jié)構(gòu)。網(wǎng)狀拓?fù)浣Y(jié)構(gòu)比樹(shù)形結(jié)構(gòu)更加靈活、有效,其路由節(jié)點(diǎn)之間可以直接通訊,使得信息通訊更加有效率,一旦1個(gè)路由節(jié)點(diǎn)出現(xiàn)問(wèn)題,信息可以經(jīng)由其他路由器節(jié)點(diǎn)對(duì)外傳輸。筆者基于網(wǎng)狀結(jié)構(gòu)設(shè)計(jì)節(jié)點(diǎn),節(jié)點(diǎn)包含路由功能與終端功能,既可以做路由節(jié)點(diǎn),也可以做終端節(jié)點(diǎn)。
2 物聯(lián)網(wǎng)節(jié)點(diǎn)的硬件設(shè)計(jì)
圖2為物聯(lián)網(wǎng)節(jié)點(diǎn)的硬件架構(gòu),主要包括微控制器模塊、供電模塊、傳感器模塊。
2.1 微控制器模塊
微控制器模塊是用CC2538芯片設(shè)計(jì),該芯片是TI公司最新推出的,其支持ZigBee無(wú)線通信,以ARM CortexM3為核心。
CC2538芯片自帶具備高達(dá)512 kb的可擴(kuò)展閃存存儲(chǔ)器和32 kb的片載 RAM,能夠處理復(fù)雜的網(wǎng)絡(luò)堆棧,滿足果園中信息采集、信息傳輸及信息存儲(chǔ)的需求,能支持上百個(gè)節(jié)點(diǎn)的網(wǎng)狀網(wǎng)絡(luò)。電源電壓寬泛,為2.0~3.6 V,在睡眠模式下,該芯片的工作電流最高僅為1.3 μA,功耗極低,能夠滿足ZigBee組網(wǎng)后的工作需求。32個(gè)通用輸入輸出口的設(shè)計(jì)足夠滿足外部傳感部件的接入,可擴(kuò)展性強(qiáng)。
針對(duì)果園的露天環(huán)境,射頻設(shè)計(jì)采用了TI公司提供的2.4 GHz 的片上天線,采用倒F天線設(shè)計(jì),實(shí)現(xiàn)節(jié)點(diǎn)發(fā)送采集的信息和路由傳輸其他節(jié)點(diǎn)信息的功能。其介電常數(shù)為4.25,特征阻抗為50 Ω,厚度為0.6 mm,該設(shè)計(jì)數(shù)據(jù)傳輸狀況良好。與Chip天線、Whip天線設(shè)計(jì)相比,PCB天線成本低、體積小,方便節(jié)點(diǎn)的安裝使用。
2.2 傳感器模塊 SHT20可以兼?zhèn)錅囟群蜐穸鹊男畔⑴c采集,功耗1.5 μW,相對(duì)濕度范圍 0~100%,溫度范圍 -40~125 ℃。與處理器的通信電路如圖 3 所示。使用1個(gè) 10 kΩ的上拉電阻來(lái)將信號(hào)提拉至高電平。該設(shè)計(jì)中CC2538的引腳PB0連接SCK, PB1連接DATA。
光敏電阻的電阻值可以隨外界光照強(qiáng)弱變化而變化,無(wú)光時(shí)為高阻值,當(dāng)有光時(shí)阻值迅速變小。圖4為光敏電阻與CC2538芯片的連接,有光時(shí),阻值變小,輸出電壓也變小,使得PB3處于低電平。
2.3 供電模塊
在果園中全部節(jié)點(diǎn)集中使用有線供電較困難,針對(duì)這一問(wèn)題,該供電模塊采用了紐扣電池和直流電源接口2種供電方式。電壓有紐扣電池和直流充電2種方式,轉(zhuǎn)換電路使用LM1117芯片設(shè)計(jì),電源提供的5 V電壓經(jīng)過(guò)電壓轉(zhuǎn)換電路轉(zhuǎn)換成3.3 V。
3 節(jié)點(diǎn)的軟件設(shè)計(jì)
軟件設(shè)計(jì)分為3個(gè)部分:入網(wǎng)自檢軟件設(shè)計(jì)、終端節(jié)點(diǎn)軟件設(shè)計(jì)和路由節(jié)點(diǎn)軟件設(shè)計(jì)。
3.1 入網(wǎng)自檢軟件設(shè)計(jì)
圖5為節(jié)點(diǎn)的入網(wǎng)過(guò)程。程序開(kāi)始運(yùn)行后先要對(duì)節(jié)點(diǎn)進(jìn)行初始化。隨后,網(wǎng)絡(luò)監(jiān)測(cè)模塊自動(dòng)監(jiān)測(cè)信號(hào)范圍內(nèi)是否有網(wǎng)絡(luò)信號(hào),若未檢測(cè)到則重新監(jiān)測(cè),若監(jiān)測(cè)到網(wǎng)絡(luò)信號(hào)則自動(dòng)加入ZigBee 網(wǎng)絡(luò)。入網(wǎng)成功后,分配網(wǎng)絡(luò)地址模塊為節(jié)點(diǎn)申請(qǐng)1個(gè)獨(dú)一無(wú)二的網(wǎng)絡(luò)地址。
3.2 終端節(jié)點(diǎn)軟件設(shè)計(jì)
終端節(jié)點(diǎn)的軟件流程如圖6所示。節(jié)點(diǎn)入網(wǎng)成功之后節(jié)點(diǎn)功能判斷模塊根據(jù)信息首先判斷節(jié)點(diǎn)為終端節(jié)點(diǎn),進(jìn)入低功耗模式。當(dāng)內(nèi)部產(chǎn)生定時(shí)中斷時(shí)信息接收模塊判斷是否接收到信號(hào),如果檢測(cè)不到協(xié)調(diào)器節(jié)點(diǎn)的命令信息,節(jié)點(diǎn)進(jìn)入休眠模式;如果檢測(cè)到協(xié)調(diào)器節(jié)點(diǎn)的命令信息信息采集模塊執(zhí)行信息采集功能,信息發(fā)送模塊將數(shù)據(jù)打包并發(fā)送出去。之后,終端節(jié)點(diǎn)繼續(xù)進(jìn)入休眠。終端節(jié)點(diǎn)是通過(guò)輪詢的方式等待中斷,檢測(cè)信息并執(zhí)行任務(wù),執(zhí)行完任務(wù)后節(jié)點(diǎn)進(jìn)入休眠狀態(tài)。
3.3 路由節(jié)點(diǎn)軟件設(shè)計(jì) 路由節(jié)點(diǎn)的軟件流程如圖7所示。
路由節(jié)點(diǎn)同時(shí)具備采集信息和路由傳輸?shù)墓δ?。?jié)點(diǎn)入網(wǎng)成功后,節(jié)點(diǎn)功能檢測(cè)模塊判定節(jié)點(diǎn)為路由節(jié)點(diǎn),節(jié)點(diǎn)始終處于工作狀態(tài)。沒(méi)有檢測(cè)到中斷,節(jié)點(diǎn)執(zhí)行信息路由功能,信息路由接收模塊負(fù)責(zé)信息的接收。存儲(chǔ)模塊會(huì)對(duì)信息進(jìn)行檢測(cè)和存儲(chǔ),如果之前發(fā)送過(guò)此信息則不再發(fā)送,如果沒(méi)有發(fā)送過(guò)則存儲(chǔ)該信息,之后,信息發(fā)送模塊發(fā)送該信息。信息發(fā)送成功后,回到信息路由接收狀態(tài)。檢測(cè)到中斷,則執(zhí)行終端節(jié)點(diǎn)信息采集和發(fā)送的功能。
4 系統(tǒng)測(cè)試
在硬件設(shè)計(jì)和軟件設(shè)計(jì)的基礎(chǔ)上進(jìn)行數(shù)據(jù)傳輸試驗(yàn),對(duì)節(jié)點(diǎn)進(jìn)行點(diǎn)對(duì)點(diǎn)測(cè)試和組網(wǎng)測(cè)試,并得出試驗(yàn)數(shù)據(jù)。
4.1 功能自判定測(cè)試
在mesh拓?fù)浣Y(jié)構(gòu)中節(jié)點(diǎn)入網(wǎng)后會(huì)自動(dòng)選擇距離最近的節(jié)點(diǎn)作為父節(jié)點(diǎn)。功能節(jié)點(diǎn)模塊會(huì)根據(jù)是否檢測(cè)到下游節(jié)點(diǎn)信息來(lái)判斷節(jié)點(diǎn)功能??紤]到有節(jié)點(diǎn)損壞時(shí)會(huì)影響組網(wǎng),所以終端節(jié)點(diǎn)每次上電都會(huì)執(zhí)行該過(guò)程。試驗(yàn)結(jié)構(gòu)如圖8所示。
試驗(yàn)中,節(jié)點(diǎn)間距40 m,在果園中無(wú)遮擋測(cè)試,路由節(jié)點(diǎn)和1號(hào)節(jié)點(diǎn)放在同一位置。首先是用1號(hào)終端節(jié)點(diǎn)與協(xié)調(diào)器節(jié)點(diǎn)組網(wǎng)通信,成功后1號(hào)終端節(jié)點(diǎn)關(guān)閉電源;然后對(duì)協(xié)調(diào)器節(jié)點(diǎn)、路由節(jié)點(diǎn)和2號(hào)終端節(jié)點(diǎn)組網(wǎng)通信,如圖9所示;關(guān)閉路由節(jié)點(diǎn),開(kāi)啟1號(hào)終端節(jié)點(diǎn),發(fā)現(xiàn)串口助手依舊能接收到2號(hào)終端節(jié)點(diǎn)的消息,如圖10所示,再關(guān)閉1號(hào)終端節(jié)點(diǎn)后,無(wú)法接收到2號(hào)終端節(jié)點(diǎn)消息。由此證明節(jié)點(diǎn)可以自動(dòng)設(shè)定功能。
4.2 組網(wǎng)測(cè)試
協(xié)調(diào)器節(jié)點(diǎn)組建無(wú)線網(wǎng)絡(luò),各個(gè)節(jié)點(diǎn)加入網(wǎng)絡(luò)。上位機(jī)通過(guò)串口發(fā)送信息到協(xié)調(diào)器節(jié)點(diǎn),協(xié)調(diào)器節(jié)點(diǎn)通過(guò)ZigBee無(wú)線網(wǎng)將信息經(jīng)路由節(jié)點(diǎn)發(fā)送到終端節(jié)點(diǎn),各終端節(jié)點(diǎn)接收到協(xié)調(diào)器節(jié)點(diǎn)信息后,將監(jiān)測(cè)信息通過(guò)多級(jí)的中間路由節(jié)點(diǎn)傳遞給協(xié)調(diào)器節(jié)點(diǎn),再由協(xié)調(diào)器節(jié)點(diǎn)將信息通過(guò)串口模塊傳輸給上位機(jī)。圖11是在不同跳數(shù)和不同傳輸時(shí)間間隔的數(shù)據(jù)丟包率情況。
當(dāng)跳數(shù)相同時(shí),丟包率隨著發(fā)送時(shí)間間隔的增加而變??;當(dāng)發(fā)送時(shí)間間隔相同時(shí),隨著跳數(shù)的增加,丟包率變大。信號(hào)在發(fā)送時(shí)間間隔很短時(shí),會(huì)產(chǎn)生相互之間的干擾,影響傳輸準(zhǔn)確率;而隨著跳數(shù)的增加,信號(hào)在多個(gè)節(jié)點(diǎn)之間傳輸時(shí),只要任何1個(gè)節(jié)點(diǎn)丟失數(shù)據(jù),都會(huì)導(dǎo)致網(wǎng)絡(luò)整體的丟包率上升。當(dāng)發(fā)送時(shí)間間隔達(dá)到20 s以上,在系統(tǒng)具備重發(fā)機(jī)制條件下,該系統(tǒng)可以滿足用戶要求。
5 結(jié)語(yǔ)
針對(duì)果園環(huán)境的無(wú)線傳感網(wǎng)絡(luò)設(shè)計(jì)的這款基于ZigBee技術(shù)的節(jié)點(diǎn)能自動(dòng)設(shè)置為路由節(jié)點(diǎn)或終端節(jié)點(diǎn);當(dāng)路由節(jié)點(diǎn)損壞時(shí),終端節(jié)點(diǎn)信息可以通過(guò)其他路由節(jié)點(diǎn)進(jìn)行信息傳輸。通過(guò)對(duì)節(jié)點(diǎn)功能自判斷和組網(wǎng)測(cè)試,結(jié)果表明該節(jié)點(diǎn)設(shè)計(jì)能滿足果園地區(qū)的信息采集要求,其具有一定的使用價(jià)值。
參考文獻(xiàn)
[1] 向陽(yáng),曾超塵.基于GPRS網(wǎng)絡(luò)的育苗溫室遠(yuǎn)程監(jiān)控系統(tǒng)研究[J].農(nóng)機(jī)化研究,2015(10):224-227.
[2] 呂小征,馮岷生. 基于ZigBee的溫室大棚環(huán)境參數(shù)監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].電子科技,2014,27(7):162-164.
[3] 王輔文,張升超.基于ZigBee技術(shù)的葡萄園無(wú)線檢測(cè)節(jié)點(diǎn)的研究與設(shè)計(jì)[J].計(jì)算機(jī)與數(shù)字工程,2014(3):535-538.
[4] 陶冶.基于 ZigBee 的森林火災(zāi)預(yù)警系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用,2011,31(2):209-211.
[5] CHALLOO R,OLADEINDE A,YILMAZER N,et al.An overview and assessment of wireless technologies and coexistence of ZigBee, Bluetooth and Wi-Fi devices[J].Procedia Computer Science,2012,12:386-391.
[6] 胡 玫,王永喜. 基于ZigBee和GPRS的無(wú)線測(cè)控系統(tǒng)[J]. 蘭州工業(yè)高等專科學(xué)校學(xué)報(bào),2012(19):10-12.
[7] PARK S,CHIO M,KANG B,et al.Design and implementation of smart energy management system for reducing power consumption using ZigBee wireless communication module[J]. Procedia Computer Science,2013,19:662-668 .
[8] 杜曉通.無(wú)線傳感器網(wǎng)絡(luò)技術(shù)與工程應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2010.