高佳雋,仇國富
(南京理工大學機械工程學院,江蘇南京210094)
相比較其他的一些短距離無線傳輸技術(shù),ZigBee技術(shù)具有低功耗、低成本、低速率、短延時、免執(zhí)照頻段等特點,能夠應(yīng)用于數(shù)據(jù)量傳輸較小的工業(yè)控制領(lǐng)域。在實際的工業(yè)現(xiàn)場,由于ZigBee使用的是2.4GHz的免費頻段,頻率高導(dǎo)致其穿過障礙物的能力較低,視距內(nèi)的傳輸距離太短,往往需要組建一定規(guī)模的無線局域網(wǎng),如何組建無線網(wǎng)絡(luò)是必須解決的首要問題。
本文提出了一種自組織局域網(wǎng)的無線數(shù)據(jù)傳輸系統(tǒng),最多的跳躍點數(shù)是3個,跳點太多會造成數(shù)據(jù)延遲性相應(yīng)的增加[1]。Chipcon As公司的CC2420,是首款符合2.4GHz頻率、IEEE802.15.4標準的ZigBee無線收發(fā)器,也是第一款適用于ZigBee產(chǎn)品的RF器件,性能穩(wěn)定且功耗極低[2]。主控制器使用TI公司的MSP430F149芯片和CC2420組成網(wǎng)絡(luò)中的協(xié)調(diào)器以及各個節(jié)點,給出了系統(tǒng)的硬件、軟件結(jié)構(gòu)設(shè)計。
系統(tǒng)主要由上位機、ZigBee節(jié)點、ZigBee協(xié)調(diào)器三部分組成如圖1。上位機是在Visual Basic6.0平臺基礎(chǔ)上開發(fā)的,該平臺擁有的圖形用戶界面(GUI)和快速應(yīng)用程序開發(fā)(RAD)系統(tǒng),可以很容易使用ADO,DAO,RDO控件連接數(shù)據(jù)庫,對上位機接收的數(shù)據(jù)進行處理。ZigBee節(jié)點主要用于現(xiàn)場數(shù)據(jù)采集,簡單處理數(shù)據(jù),而且部分節(jié)點還具有路由的功能,可增加系統(tǒng)數(shù)據(jù)傳輸?shù)木嚯x和可靠性。ZigBee網(wǎng)絡(luò)這種多節(jié)點有序的特點可以穩(wěn)定的傳輸數(shù)據(jù),組成一個容錯性較好的采集系統(tǒng)。
圖1 系統(tǒng)結(jié)構(gòu)圖
采用部分網(wǎng)狀拓撲結(jié)構(gòu),不是所有的節(jié)點都可以互相通信,它的優(yōu)點是可以把網(wǎng)絡(luò)的覆蓋范圍成幾倍地擴大。系統(tǒng)中使用的CC2420收發(fā)器,每兩個之間的無障礙傳輸距離為70~80m,因為多個節(jié)點可以作為路由器使用,所以網(wǎng)狀拓撲結(jié)構(gòu)就令整個網(wǎng)絡(luò)無最大通信距離的限制。例如在圖1中,節(jié)點7可以通過以下路徑把數(shù)據(jù)傳送至PC上位機:7—2—協(xié)調(diào)器—PC,還有一條是7—2—1—協(xié)調(diào)器—PC,這是為了防止一條路徑不通而影響整個系統(tǒng)的正常工作,還可以有效的避開障礙物之類的因素[3]。
ZigBee節(jié)點的功能是采集現(xiàn)場的數(shù)據(jù),并將數(shù)據(jù)傳送至ZigBee協(xié)調(diào)器,最終上傳至PC上位機。ZigBee節(jié)點主要由傳感器模塊、MCU模塊、ZigBee收發(fā)模塊、存儲模塊以及供電模塊五部分組成,如圖2所示。
圖2 ZigBee節(jié)點框圖
傳感器模塊主要是采集現(xiàn)場數(shù)據(jù),可以根據(jù)現(xiàn)場需要使用不同的傳感器采集數(shù)據(jù);MCU模塊選擇MSP430F149單片機,該芯片是16位處理器,自身內(nèi)置12位精度的A/D轉(zhuǎn)換模塊,傳感器得到的模擬信號可以直接傳送給其進行AD轉(zhuǎn)換,不用專門設(shè)計A/D轉(zhuǎn)換電路。另外有四種模式LPM1、LPM2、LPM3、LPM4寫程序時可以調(diào)用不同的模式達到理想的低功耗效果[4]。兩個串口可用,一個作為RS232接口,另一個SPI工作方式與無線模塊數(shù)據(jù)通信。JTAG提供下載程序的接口,指示燈為芯片上電指示。存儲模塊使用AT24C08,具有8kB的數(shù)據(jù)存儲容量,加上單片機自身60kB Flash的容量滿足數(shù)據(jù)存儲需要,通過I2C總線與單片機連接,能快速、準確的存儲和讀取數(shù)據(jù)。ZigBee收發(fā)模塊選擇CC2420,CC2420具有低功耗、高抗干擾能力、獨立的發(fā)送接收緩存、外部組件很少、對802.15.4MAC的硬件支持和硬件安全等特點,這些為硬件和軟件設(shè)計提供了很大的方便。由于節(jié)點一般是分散在現(xiàn)場的各個地方,所以選擇電池作為統(tǒng)一供電電源,而單片機和ZigBee無線模塊使用的電壓為1.8V~3.3V,所以使用兩節(jié)1.5V電池串聯(lián)提供3V的電源。
ZigBee協(xié)調(diào)器的功能是負責組建本無線網(wǎng)絡(luò),允許各個節(jié)點加入與退出網(wǎng)絡(luò),以及把各個節(jié)點發(fā)來的數(shù)據(jù)上傳至PC上位機。與節(jié)點組成一樣,只是少了一個傳感器模塊,如圖3所示。
圖3 ZigBee協(xié)調(diào)器框圖
協(xié)調(diào)器承擔整個ZigBee網(wǎng)絡(luò)的組建,并和PC上位機通信,其工作流程如圖4所示。
圖4 協(xié)調(diào)器軟件流程圖
ZigBee節(jié)點有兩種:帶路由功能的節(jié)點和不帶路由功能的節(jié)點。前者比后者多了能夠把數(shù)據(jù)包傳遞到下個節(jié)點的功能,在這里給出前者的工作流程,如圖5所示。
圖5 路由節(jié)點軟件流程圖
上位機功能:1)給ZigBee網(wǎng)絡(luò)發(fā)命令,如讀取某個節(jié)點的數(shù)據(jù)或者網(wǎng)絡(luò)中所有節(jié)點的數(shù)據(jù)等,2)能夠?qū)ψx到的數(shù)據(jù)進一步處理,如數(shù)據(jù)包包含了幀頭、網(wǎng)絡(luò)PANID、各個節(jié)點短地址、現(xiàn)場數(shù)據(jù)、校驗碼、幀尾等,把這些數(shù)據(jù)區(qū)分開來,放到對應(yīng)的位置。選擇VB編程界面設(shè)計上位機,VB是比較成熟、快速的上位機開發(fā)工具,其可視化界面簡便實用,而且有專門和數(shù)據(jù)庫連接的控件,方便數(shù)據(jù)處理[5]。
系統(tǒng)結(jié)合了MSP430單片以及ZigBee的特點,提供了低功耗、低成本的無線數(shù)據(jù)傳輸解決方案。網(wǎng)絡(luò)還具有自修復(fù)能力,節(jié)點的斷開與加入網(wǎng)絡(luò)都可以自動實現(xiàn),容錯性好,電源的設(shè)計考慮到ZigBee技術(shù)的分布性選擇使用電池,可以持續(xù)使用6~24個月[6],傳感器模塊更換一下,就能夠應(yīng)用到其他領(lǐng)域,對于數(shù)據(jù)傳輸量不大,實現(xiàn)遠距離控制的工業(yè)現(xiàn)場是不錯的選擇。
[1]徐志,陳彬兵.自組織ZigBee網(wǎng)絡(luò)節(jié)點通信研究[J].通信技術(shù),2009,42(12):128-131.
[2]Chipcon As SmartRF CC2420 Prelininary Datasheet(rev1.2),2004.
[3]彭燕.基于ZigBee無線傳感器網(wǎng)絡(luò)節(jié)點的研究[J].現(xiàn)代電子技術(shù),2011,34(5):49-51.
[4]胡大可.MSP430系列FLASH型超低功耗16位單片機[M].北京:北京航空航天大學出版社,2002.
[5]孫學巖.基于ZigBee無線傳感器網(wǎng)絡(luò)的溫室測控系統(tǒng)[J].儀表技術(shù)與傳感器,2010,(8):47-49.
[6]吳光榮,章劍雄.基于CC2430的無線傳感器網(wǎng)絡(luò)的實現(xiàn)[J].現(xiàn)代電子技術(shù),2008,(12):121-124.