基于ZigBee的無(wú)線(xiàn)傳感器網(wǎng)絡(luò )數據管理平臺
1 數據管理平臺設計
數據管理平臺允許用戶(hù)在客戶(hù)端瀏覽器上實(shí)時(shí)監測來(lái)自ZigBee無(wú)線(xiàn)傳感器網(wǎng)絡(luò )傳來(lái)的數據,工作原理,如圖l所示。文中搭建的ZigBee無(wú)線(xiàn)傳感器網(wǎng)絡(luò )采用TI公司的CC2430芯片以及Figure8 Wireless ZigBee Protocol Stack協(xié)議棧來(lái)實(shí)現,采用樹(shù)形(Cluster一Tree)組網(wǎng)方式,網(wǎng)絡(luò )節點(diǎn)包括協(xié)調器、路由器和終端節點(diǎn),協(xié)調器負責收集各終端節點(diǎn)上傳的數據。
數據管理平臺分為兩大部分:一是數據的采集、分析與計算,由通信計算機完成這部分工作;二是運行于客戶(hù)端瀏覽器的Web頁(yè)面,主要完成數據的查詢(xún)及顯示。這種基于B/S結構設計的數據管理平臺,結合了asp.net在Web應用上的優(yōu)勢,很好的實(shí)現了遠程終端瀏覽器在線(xiàn)監測、分析和處理傳感器節點(diǎn)數據的功能。
協(xié)調器發(fā)布廣播,要求終端節點(diǎn)上傳各自的信息數據,終端節點(diǎn)在收到協(xié)調器下發(fā)的命令后,將傳感器采集到的數據通過(guò)路由器轉發(fā)或者直接發(fā)送給協(xié)調器。終端節點(diǎn)上傳數據包的結構為:包頭+命令類(lèi)別+數據內容+包尾,數據包為16進(jìn)制編碼,如圖1所示。
協(xié)調器通過(guò)串口與通信控制計算機連接,通信控制計算機首先完成數據采集工作。數據采集采用定時(shí)響應模式,采集周期時(shí)間可以預先設定,每隔一個(gè)采集周期,協(xié)調器將收集到的數據通過(guò)串口傳輸到通信控制計算機。通信控制計算機接下來(lái)將數據進(jìn)行分析、計算,處理后的數據再通過(guò)以太網(wǎng)傳輸到數據庫服務(wù)器上,寫(xiě)入自定義的數據庫。
運行于客戶(hù)端瀏覽器的Web頁(yè)面是基于.net框架開(kāi)發(fā)的,開(kāi)發(fā)工具主要有Visual Studio 2005和SQL Server 2000。Web頁(yè)面主要功能模塊包括即時(shí)數據、歷史數據、設備管理、用戶(hù)管理。即時(shí)數據模塊允許用戶(hù)查看當天各個(gè)終端節點(diǎn)上傳的數據,歷史數據模塊允許用戶(hù)選擇時(shí)間范圍查看各個(gè)終端節點(diǎn)上傳的數據,設備管理模塊允許用戶(hù)對設備節點(diǎn)進(jìn)行重命名、新增、刪除操作,用戶(hù)管理模塊允許用戶(hù)更改密碼,管理員用戶(hù)可以進(jìn)行新增用戶(hù)、刪除用戶(hù)、授予權限等操作。普通用戶(hù)不具備設備管理、用戶(hù)管理權限。
2 客戶(hù)端軟件設計
2.1 數據庫設計
根據需要,在數據庫的設計中,主要包含以下數據表:Station_Info、Ark_Info、Node_Info、Device_Info、User_Info、Temperature_Record。Station_Info為站點(diǎn)信息表,Ark_Info為監測點(diǎn)信息表,Node_Info為終端節點(diǎn)信息表,它們的數據庫關(guān)系圖,如圖2所示。Device_Info為節點(diǎn)關(guān)系表,User_Info為用戶(hù)信息表,Temperature_Record為溫度日志表。
數據庫的設計比較繁雜,在這里僅以節點(diǎn)關(guān)系表I)evice_Info為例進(jìn)行說(shuō)明。Device_Info表能大致但不能?chē)栏竦胤从吵鯶igBee無(wú)線(xiàn)傳感器網(wǎng)絡(luò )的拓撲結構,這是由于終端節點(diǎn)位置的關(guān)系,上報數據的過(guò)程中,有可能要經(jīng)過(guò)二級以上路由轉發(fā)到協(xié)調器。如表2所示,l#監測點(diǎn)是指實(shí)際的地點(diǎn),它下面的各個(gè)終端節點(diǎn)上報數據經(jīng)過(guò)的路徑可能并不完全一致,也即是說(shuō)實(shí)際的網(wǎng)絡(luò )拓撲可能會(huì )更加復雜一些。在實(shí)際應用中,并不需要十分關(guān)注網(wǎng)絡(luò )的拓撲結構,更多的關(guān)注點(diǎn)是終端節點(diǎn)上傳數據的實(shí)際情況。因此,在設計節點(diǎn)關(guān)系表Device_Info時(shí),不用把ZigBee無(wú)線(xiàn)網(wǎng)絡(luò )的每個(gè)節點(diǎn)都反映出來(lái),這樣可以進(jìn)行簡(jiǎn)化設計,它的結構類(lèi)似于,如表2所示結構。
評論