一種基于ZigBee的分布式井蓋監(jiān)控系統(tǒng)
3.2 系統(tǒng)軟件設(shè)計
3.2.1 系統(tǒng)工作流程
ZigBee井蓋報警系統(tǒng)的工作流程如圖3所示。ZigBee井蓋報警器正常工作狀態(tài)時處于休眠狀態(tài),當(dāng)光線和氣體檢測超出告警閾值時,喚醒ZigBee控制器,讀取井蓋基本信息并進(jìn)行ZigBee網(wǎng)絡(luò)的無線傳輸,將數(shù)據(jù)傳遞給網(wǎng)絡(luò)中鄰近的節(jié)點,最后傳輸給嵌入式網(wǎng)關(guān)進(jìn)行處理。嵌入式網(wǎng)關(guān)控制GPRS模塊將信息發(fā)送給Web服務(wù)器,同時發(fā)送報警短信給維修人員,Web服務(wù)器通過數(shù)據(jù)庫將信息存儲。
3.2.2 ZigBee協(xié)調(diào)器
ZigBee網(wǎng)絡(luò)協(xié)議采用TI公司的Z-STACK,協(xié)議棧為ZigBee 2007。ZigBee 2007是ZigBee聯(lián)盟開發(fā)的一種低成本、極低功耗的雙向無線通信標(biāo)準(zhǔn),是TI公司專門為CC2530芯片設(shè)計的協(xié)議棧。本系統(tǒng)協(xié)議設(shè)備以協(xié)調(diào)器和路由器為主,軟件設(shè)計主要包含協(xié)調(diào)器節(jié)點軟件和路由器節(jié)點軟件。
ZigBee協(xié)調(diào)器的軟件流程圖如圖4所示,ZigBee網(wǎng)絡(luò)啟動時會進(jìn)行設(shè)備初始化,通過協(xié)調(diào)器設(shè)置網(wǎng)絡(luò)唯一的PAN ID,設(shè)置協(xié)調(diào)器的地址。進(jìn)入信道掃描階段,判斷現(xiàn)在是否有相同PAN ID的網(wǎng)絡(luò),如果存在的話就選擇現(xiàn)有協(xié)調(diào)器節(jié)點發(fā)送入網(wǎng)請求。如果不存在網(wǎng)絡(luò),協(xié)調(diào)器在信道掃描成功后會排列信道,并選擇出最優(yōu)通道,確定網(wǎng)絡(luò)ID,建立網(wǎng)絡(luò)。網(wǎng)絡(luò)建立好以后,協(xié)調(diào)器會進(jìn)入無線偵聽的階段,如果有新設(shè)備節(jié)點加入網(wǎng)絡(luò),協(xié)調(diào)器會按順序給其分配網(wǎng)絡(luò)地址。如果有串口數(shù)據(jù)接收,協(xié)調(diào)器會進(jìn)入處理串口數(shù)據(jù)的階段,主要負(fù)責(zé)嵌入式網(wǎng)關(guān)發(fā)送的控制命令。
3.2.3 ZigBee路由器
報警系統(tǒng)中的井蓋報警器作為ZigBee網(wǎng)絡(luò)中的路由器,主要負(fù)責(zé)報警數(shù)據(jù)采集和中繼傳輸。通過配置CC2530的ADC控制器開始數(shù)據(jù)的采集,設(shè)置A/D轉(zhuǎn)換的速率和讀取數(shù)據(jù)時間間隔。路由器的軟件流程圖如圖5所示,路由器節(jié)點上電后進(jìn)行軟硬件的初始化,掃描網(wǎng)絡(luò)是否存在,選擇符合的PAN ID網(wǎng)絡(luò)加入,成為網(wǎng)絡(luò)中的子結(jié)點。
路由器加入網(wǎng)絡(luò)后處于休眠狀態(tài),當(dāng)有告警中斷產(chǎn)生時,喚醒CPU并進(jìn)入中斷處理函數(shù),中斷處理主要包含對數(shù)據(jù)的采集和發(fā)送,將報警器的傳感器數(shù)據(jù)采集打包發(fā)送到父節(jié)點中,完成后退出中斷進(jìn)入休眠狀態(tài)。
結(jié)語
本文基于ZigBee網(wǎng)絡(luò)實現(xiàn)井蓋報警器的分布式布控,達(dá)到實時監(jiān)控和主動預(yù)警。結(jié)合GPRS無線通信的特點和優(yōu)勢,設(shè)計了與互聯(lián)網(wǎng)融合的智能報警系統(tǒng)。通過Web服務(wù)器可實現(xiàn)對城市井蓋的遠(yuǎn)程監(jiān)控,并通過數(shù)據(jù)庫完成了數(shù)量龐大的井蓋信息存儲。該系統(tǒng)利用ZigBee網(wǎng)絡(luò)覆蓋范圍廣、低功耗、傳輸穩(wěn)定的特點,達(dá)到了井蓋防盜的自動化,讓井蓋丟失帶來的各種隱患問題得以解決,在井蓋防盜領(lǐng)域具有廣闊的應(yīng)用前景。
評論