ZigBee與GPRS的遠程數(shù)據(jù)采集系統(tǒng)設計
摘要:ZigBee技術雖然先進但網(wǎng)絡覆蓋范圍較小,本文將GPRS廣域無線通信技術引入ZigBee網(wǎng)絡中,構建了一種遠程ZigBee網(wǎng)絡的數(shù)據(jù)采集與管理系統(tǒng),并采用直觀方便的嵌入式Web服務器提高管理效率。系統(tǒng)測試結果證明了該系統(tǒng)具有很好的有效性和可靠性。
關鍵詞:ZigBee GPRS;嵌入式Web服務器
引言
ZigBee是一種短距離、低速率無線網(wǎng)絡技術,具有低功耗、低成本、易于組網(wǎng)、高可靠性等優(yōu)點,在諸多場合有著廣泛應用,但ZigBee僅作為現(xiàn)場數(shù)據(jù)采集與控制的局域網(wǎng),覆蓋區(qū)域十分有限,難以滿足當前遠距離數(shù)據(jù)采集與控制的需求。本文所設計的遠程數(shù)據(jù)采集系統(tǒng)采用ZigBee與GPRS技術實現(xiàn)了遠程的數(shù)據(jù)采集與控制,并結合嵌入式Web Server與RFID射頻識別方案,實現(xiàn)了通過瀏覽器和射頻識別卡進行關鍵配置數(shù)據(jù)修改和臨時系統(tǒng)控制,具有較高的安全性與靈活性。另外,現(xiàn)場數(shù)據(jù)采集端的設備與數(shù)據(jù)接收/控制端的設備在硬件上具有較高的重復利用度。
1 系統(tǒng)結構設計
整個系統(tǒng)主要由ZigBee節(jié)點、GPRS模塊、嵌入式Web Server以及PN532 RFID模塊4個部分構成。其中ZigBee節(jié)點采用TI公司的CC2530方案實現(xiàn),應用于現(xiàn)場的無線組網(wǎng)與數(shù)據(jù)采集、控制,ZigBee網(wǎng)絡中的終端節(jié)點將采集到的數(shù)據(jù)通過自組織網(wǎng)絡匯集到協(xié)調器節(jié)點;GPRS模塊采用SIMCOM公司的SIM900A模塊、ST公司的STM32 MCU,以及其他必要外圍電路組成,負責將數(shù)據(jù)轉發(fā)至控制終端,建立與固定IP的TCP/UDP連接;嵌入式Web Server采用TI公司的LM3S9D92實現(xiàn),通過嵌入式Web Server對整個系統(tǒng)進行基本管理、數(shù)據(jù)顯示,并將ZigBee網(wǎng)絡中協(xié)調器節(jié)點采集的數(shù)據(jù)或GPRS模塊輸出的數(shù)據(jù)雙向轉發(fā);PN532 RFID模塊由LM3S9D92驅動,實現(xiàn)修改、配置系統(tǒng)關鍵信息前的授權認證管理(身份識別),以保證系統(tǒng)信息不被惡意篡改。整個遠程數(shù)據(jù)采集系統(tǒng)結構如圖1所示。
2 系統(tǒng)硬件設計
2.1 ZigBee節(jié)點
ZigBee網(wǎng)絡節(jié)點采用CC2530F256進行設計,工作在2.4 GHz頻段,是符合IEEE 802.15.4規(guī)范的SoC解決方案。片內集成高速8051內核,支持ZigBee2007 PRO協(xié)議棧;具有2~3.6 V的供電范圍以及良好的電源管理功能,可實現(xiàn)較低的運行功耗。實際電路設計采用核心板與擴展底板結合的方式,核心板引出CC2530最小系統(tǒng),未使用的GPIO供擴展底板使用,在擴展底板上實現(xiàn)了三線制RS-232串口、指示LED、調試接口,以及其他必備外部應用電路。
2.2 GPRS模塊
GPRS模塊通信部分采用了SIMCOM公司的SIM900A模塊,SIM900A模塊是專門面向中國大陸市場設計的雙頻GSM/GPRS模塊,工作頻段為EGSM 900MHz和DCS 1800 MHz,可以自動地搜尋兩個頻段,內嵌完整TCP/IP協(xié)議。徽控制器采用ST公司的STM32F103C8,該芯片具有雙串口和一個硬件SPI接口,十分符合本系統(tǒng)GPRS模塊使用要求,且具有較高的性價比,使用SPI Flash W25X16作為外部掉電存儲器記錄GPRS模塊相關配置信息。[!--empirenews.page--]
2.3 嵌入式Web Server與PN532 RFID模塊
嵌入式Web Server采用TI公司推出的LM3S9D92Cortex—M3 MCU實現(xiàn),該芯片集成以太網(wǎng)MAC+PHY接口,可直接連接含網(wǎng)絡變壓器的RJ45接口,大大簡化了以太網(wǎng)部分的外圍電路,十分符合設計需求。RFID模塊部分采用NXP公司PN532的解決方案,PN532是一個高度集成的非接觸讀寫芯片,它包含80C51微控制器內核,支持ISO/IEC 14443A/Mifare非接觸式智能卡讀寫,同時還具有集成了NFCIP-1的RF接口,傳輸速率高達424Kk/s,便于系統(tǒng)后期實現(xiàn)與NFC設備進行點對點通信等功能。LM3S9D92使用GPIO模擬SPI與PN532進行通信。嵌入式Web Server主要部分接口連接示意圖如圖2所示。
3 系統(tǒng)軟件設計
系統(tǒng)采用C語言進行開發(fā),開發(fā)環(huán)境為RealviewMDK(Keil for ARM),并使用廠商所提供的片上資源驅動、庫函數(shù)和第三方組件。系統(tǒng)軟件設計分為3大主要部分;ZigBee網(wǎng)絡數(shù)據(jù)采集部分、GPRS模塊通信部分和嵌入式Web Server部分。整個系統(tǒng)主要流程如圖3所示。
系統(tǒng)數(shù)據(jù)采集主要通過查詢方式進行,由遠程監(jiān)控端發(fā)出查詢請求后,現(xiàn)場數(shù)據(jù)采集系統(tǒng)才進行數(shù)據(jù)采集、傳輸或其他響應。查詢請求到達ZigBee網(wǎng)絡的協(xié)調器端后,協(xié)調器在網(wǎng)絡內部通過單點傳送的方式與各個終端節(jié)點進行通信。[!--empirenews.page--]
由于現(xiàn)場數(shù)據(jù)采集部分的GPRS模塊與數(shù)據(jù)中心的GPRS模塊功能有所區(qū)別,可通過設定全局標志位GPRS_Module_Role為0或1來指定GPRS模塊為現(xiàn)場數(shù)據(jù)采集GPRS模塊還是數(shù)據(jù)中心(即接收端)的GPRS模塊。現(xiàn)場數(shù)據(jù)采集GPRS模塊為了保持連接還需在空閑時間發(fā)送心跳包。與遠程IP建立連接的相關任務全部由GPRS模塊中的STM32F103C8完成,并將配置信息寫入SPIFlash中,外部數(shù)據(jù)可直接通過GPRS模塊的串口發(fā)送。
若與數(shù)據(jù)中心IP連接出現(xiàn)連續(xù)3次錯誤(錯誤次數(shù)可設定),現(xiàn)場數(shù)據(jù)采集GPRS模塊將通過固定內容短信的方式告知數(shù)據(jù)中心的GPRS模塊,數(shù)據(jù)中心的GPRS模塊通過回應固定內容的短信對遠程控制單元實現(xiàn)緊急處理。
嵌入式Web Server部分主要負責將數(shù)據(jù)通過串口轉發(fā)至GPRS模塊或者上位機,并實現(xiàn)現(xiàn)場監(jiān)控計算機可通過瀏覽器對監(jiān)控網(wǎng)頁進行訪問和在LCD端顯示數(shù)據(jù)采集信息,嵌入式Web Server主要通過公共網(wǎng)關接口CGI以及服務器端嵌入標簽SSI Tag實現(xiàn)對外網(wǎng)頁表單數(shù)據(jù)的更新與獲取。同時,監(jiān)控計算機進入系統(tǒng)配置更改前,需通過串口發(fā)送字符“authenticated_id_l00p”(也可自定義為其他)到LM3S9D92串口1,特定字符串檢測主要是通過函數(shù)strstr(pstr,“authenticated_id_loop”)實現(xiàn),其中pstr為待檢測字符串地址,檢測到目標字符串后返回該位
置的指針,否則返回空指針。LM3S9D92串口接收中斷流程中檢測到目標字符串后,將循環(huán)執(zhí)行PN532讀卡函數(shù)PN532_readPassiveTargetID(PN532_MIFARE_ISO14443A,&uid[0],&uidLength)3次,當讀取到特定ID后跳出該循環(huán),并將變量Authenticated_ID_OK置1,表明通過IC卡認證流程,可繼續(xù)執(zhí)行系統(tǒng)配置。
4 測試結果
通過對4個ZigBee終端節(jié)點I/O口P1.0控制的LED狀態(tài)進行了采集和控制,并在嵌入式Web Server端及其LCD上顯示其開關狀態(tài),可通過網(wǎng)頁中的復選框對I/O狀態(tài)實現(xiàn)控餅,具體如圖4所示。嵌入式Web Server端還分別在Windows以及Ubuntu/Linux操作系統(tǒng)下使用系統(tǒng)自帶瀏覽器進行了測試,均可正常使用,現(xiàn)場監(jiān)控計算機接入系統(tǒng)十分方便。另外,測試了修改系統(tǒng)關鍵信息時的安全性,更改數(shù)據(jù)采集端的GPRS模塊短信報警號碼時,系統(tǒng)進行了身份認證,通過讀取卡號識別到程序內已存的管理員1、2的信息,通過串口輸出調試信息。
結語
本設計以ZigBee網(wǎng)絡和GPRS模塊為中心,結合ZigBee以及GPRS無線通信技術,使得遠程數(shù)據(jù)采集與控制更易實現(xiàn)。經實際測試,采集和控制各個ZigBee節(jié)點CC2530 P1.0引腳輸出狀態(tài),運行結果能夠到達預期效果。另外,本系統(tǒng)還可根據(jù)實際情況在各個ZigBee終端節(jié)點添加其他數(shù)據(jù)采集電路,實現(xiàn)更加強大的功能或拓展網(wǎng)絡結構,因此,本文設計的遠程數(shù)據(jù)采集系統(tǒng)具有較高的實用參考價值。