高佳雋,仇國富
(南京理工大學機械工程學院,江蘇南京210094)
相比較其他的一些短距離無線傳輸技術,ZigBee技術具有低功耗、低成本、低速率、短延時、免執照頻段等特點,能夠應用于數據量傳輸較小的工業控制領域。在實際的工業現場,由于ZigBee使用的是2.4GHz的免費頻段,頻率高導致其穿過障礙物的能力較低,視距內的傳輸距離太短,往往需要組建一定規模的無線局域網,如何組建無線網絡是必須解決的首要問題。
本文提出了一種自組織局域網的無線數據傳輸系統,最多的跳躍點數是3個,跳點太多會造成數據延遲性相應的增加[1]。Chipcon As公司的CC2420,是首款符合2.4GHz頻率、IEEE802.15.4標準的ZigBee無線收發器,也是第一款適用于ZigBee產品的RF器件,性能穩定且功耗極低[2]。主控制器使用TI公司的MSP430F149芯片和CC2420組成網絡中的協調器以及各個節點,給出了系統的硬件、軟件結構設計。
系統主要由上位機、ZigBee節點、ZigBee協調器三部分組成如圖1。上位機是在Visual Basic6.0平臺基礎上開發的,該平臺擁有的圖形用戶界面(GUI)和快速應用程序開發(RAD)系統,可以很容易使用ADO,DAO,RDO控件連接數據庫,對上位機接收的數據進行處理。ZigBee節點主要用于現場數據采集,簡單處理數據,而且部分節點還具有路由的功能,可增加系統數據傳輸的距離和可靠性。ZigBee網絡這種多節點有序的特點可以穩定的傳輸數據,組成一個容錯性較好的采集系統。

圖1 系統結構圖
采用部分網狀拓撲結構,不是所有的節點都可以互相通信,它的優點是可以把網絡的覆蓋范圍成幾倍地擴大。系統中使用的CC2420收發器,每兩個之間的無障礙傳輸距離為70~80m,因為多個節點可以作為路由器使用,所以網狀拓撲結構就令整個網絡無最大通信距離的限制。例如在圖1中,節點7可以通過以下路徑把數據傳送至PC上位機:7—2—協調器—PC,還有一條是7—2—1—協調器—PC,這是為了防止一條路徑不通而影響整個系統的正常工作,還可以有效的避開障礙物之類的因素[3]。
ZigBee節點的功能是采集現場的數據,并將數據傳送至ZigBee協調器,最終上傳至PC上位機。ZigBee節點主要由傳感器模塊、MCU模塊、ZigBee收發模塊、存儲模塊以及供電模塊五部分組成,如圖2所示。

圖2 ZigBee節點框圖
傳感器模塊主要是采集現場數據,可以根據現場需要使用不同的傳感器采集數據;MCU模塊選擇MSP430F149單片機,該芯片是16位處理器,自身內置12位精度的A/D轉換模塊,傳感器得到的模擬信號可以直接傳送給其進行AD轉換,不用專門設計A/D轉換電路。另外有四種模式LPM1、LPM2、LPM3、LPM4寫程序時可以調用不同的模式達到理想的低功耗效果[4]。兩個串口可用,一個作為RS232接口,另一個SPI工作方式與無線模塊數據通信。JTAG提供下載程序的接口,指示燈為芯片上電指示。存儲模塊使用AT24C08,具有8kB的數據存儲容量,加上單片機自身60kB Flash的容量滿足數據存儲需要,通過I2C總線與單片機連接,能快速、準確的存儲和讀取數據。ZigBee收發模塊選擇CC2420,CC2420具有低功耗、高抗干擾能力、獨立的發送接收緩存、外部組件很少、對802.15.4MAC的硬件支持和硬件安全等特點,這些為硬件和軟件設計提供了很大的方便。由于節點一般是分散在現場的各個地方,所以選擇電池作為統一供電電源,而單片機和ZigBee無線模塊使用的電壓為1.8V~3.3V,所以使用兩節1.5V電池串聯提供3V的電源。
ZigBee協調器的功能是負責組建本無線網絡,允許各個節點加入與退出網絡,以及把各個節點發來的數據上傳至PC上位機。與節點組成一樣,只是少了一個傳感器模塊,如圖3所示。

圖3 ZigBee協調器框圖
協調器承擔整個ZigBee網絡的組建,并和PC上位機通信,其工作流程如圖4所示。

圖4 協調器軟件流程圖
ZigBee節點有兩種:帶路由功能的節點和不帶路由功能的節點。前者比后者多了能夠把數據包傳遞到下個節點的功能,在這里給出前者的工作流程,如圖5所示。

圖5 路由節點軟件流程圖
上位機功能:1)給ZigBee網絡發命令,如讀取某個節點的數據或者網絡中所有節點的數據等,2)能夠對讀到的數據進一步處理,如數據包包含了幀頭、網絡PANID、各個節點短地址、現場數據、校驗碼、幀尾等,把這些數據區分開來,放到對應的位置。選擇VB編程界面設計上位機,VB是比較成熟、快速的上位機開發工具,其可視化界面簡便實用,而且有專門和數據庫連接的控件,方便數據處理[5]。
系統結合了MSP430單片以及ZigBee的特點,提供了低功耗、低成本的無線數據傳輸解決方案。網絡還具有自修復能力,節點的斷開與加入網絡都可以自動實現,容錯性好,電源的設計考慮到ZigBee技術的分布性選擇使用電池,可以持續使用6~24個月[6],傳感器模塊更換一下,就能夠應用到其他領域,對于數據傳輸量不大,實現遠距離控制的工業現場是不錯的選擇。
[1]徐志,陳彬兵.自組織ZigBee網絡節點通信研究[J].通信技術,2009,42(12):128-131.
[2]Chipcon As SmartRF CC2420 Prelininary Datasheet(rev1.2),2004.
[3]彭燕.基于ZigBee無線傳感器網絡節點的研究[J].現代電子技術,2011,34(5):49-51.
[4]胡大可.MSP430系列FLASH型超低功耗16位單片機[M].北京:北京航空航天大學出版社,2002.
[5]孫學巖.基于ZigBee無線傳感器網絡的溫室測控系統[J].儀表技術與傳感器,2010,(8):47-49.
[6]吳光榮,章劍雄.基于CC2430的無線傳感器網絡的實現[J].現代電子技術,2008,(12):121-124.