張成研+蘇建歡+覃偉年+吳建勇
【摘 要】森林火災(zāi)監(jiān)測系統(tǒng)受到環(huán)境和地理位置的影響,存在通信數(shù)據(jù)線布線復(fù)雜和監(jiān)測設(shè)備成本較高的問題。設(shè)計一種基于Zigbee無線傳感器網(wǎng)絡(luò)和GPRS技術(shù)的森林火災(zāi)監(jiān)測系統(tǒng),利用Zigbee無線傳感器網(wǎng)絡(luò)進行區(qū)域環(huán)境數(shù)據(jù)采集,CC2530與GTM900C組成遠程數(shù)據(jù)傳輸模塊,傳輸森林環(huán)境數(shù)據(jù)。該系統(tǒng)具有終端設(shè)備體積小、低成本、組網(wǎng)靈活等優(yōu)點。
【關(guān)鍵詞】Zigbee;GPRS;森林火災(zāi)監(jiān)測
0 引言
森林火災(zāi)發(fā)生呈現(xiàn)突發(fā)性強、蔓延快等特點,直接威脅森林安全,給森林資源帶來巨大破壞,因此,森林火災(zāi)的防治工作一直是各國關(guān)注的重點。
目前,主流的森林火災(zāi)監(jiān)測系統(tǒng)主要分為三種類型:衛(wèi)星監(jiān)測、視頻監(jiān)測和人工巡防。衛(wèi)星監(jiān)測主要依賴氣象衛(wèi)星監(jiān)測技術(shù),對林區(qū)的氣象信息進行監(jiān)測,通過氣象信息和衛(wèi)星云圖鎖定火災(zāi)發(fā)生區(qū)域,這種技術(shù)主要是針對偏遠地區(qū)森林,工作人員難以深入林區(qū);視頻監(jiān)測是通過搭建視頻監(jiān)測云臺對林區(qū)進行監(jiān)測,適用于平原地區(qū)森林,這種技術(shù)往往對網(wǎng)絡(luò)通信的要求較高,必須配置專用網(wǎng)線通信和紅外攝像儀,其通信成本和云臺搭建費用都很高;人工巡防則是在相對落后地區(qū),利用眺望塔來對森林實時監(jiān)測,憑借人工經(jīng)驗來判斷火災(zāi)。
這些常用的監(jiān)測技術(shù)存在成本較高、設(shè)備體積大等缺點,復(fù)雜的森林環(huán)境還會增加布線成本。新興的無線傳感器技術(shù)可以彌補這一缺點,Zigbee無線通信技術(shù)免除了布線費用,節(jié)約成本,另外Zigbee模塊具有功耗低、設(shè)備體積小等特點。本文設(shè)計并實現(xiàn)了Zigbee無線傳感器網(wǎng)絡(luò)森林火災(zāi)監(jiān)測系統(tǒng),以GPRS作為遠程通信方式,實驗表明,能夠穩(wěn)定進行遠程通信,實時監(jiān)測森林環(huán)境信息。這種將PAN網(wǎng)絡(luò)和GSM公用網(wǎng)絡(luò)相融合的數(shù)據(jù)采集通信方式具有覆蓋范圍大、穩(wěn)定性強、精度高和應(yīng)用環(huán)境廣泛的優(yōu)勢[1]。
1 系統(tǒng)總體設(shè)計
系統(tǒng)的總體設(shè)計框圖如圖1。從網(wǎng)絡(luò)上來看,系統(tǒng)由Zigbee網(wǎng)絡(luò)和GPRS網(wǎng)絡(luò)組成。從硬件上來看,系統(tǒng)由終端傳感器節(jié)點、路由節(jié)點、中心節(jié)點、上位機四個部分組成。
系統(tǒng)主要以Zigbee技術(shù)和GPRS技術(shù)為核心,利用無線傳感器網(wǎng)絡(luò)節(jié)點數(shù)量多、搭載傳感器多的特點,又融合GPRS技術(shù)覆蓋范圍大并且可以遠程通信,彌補了Zigbee只能短距離通信的弱點[2]。
2 各個智能節(jié)點設(shè)計
2.1 硬件設(shè)計
系統(tǒng)硬件主要分兩種類型:終端采集節(jié)點和路由節(jié)點都具有數(shù)據(jù)采集功能,在硬件設(shè)計上采用同樣的電路設(shè)計;協(xié)調(diào)器主要負責(zé)連接GPRS模塊進行遠程通信。由于協(xié)調(diào)器的主要進行數(shù)據(jù)轉(zhuǎn)發(fā),不需要配備傳感器來加重控制芯片負擔(dān)。
終端節(jié)點和路由節(jié)點的主控芯片采用由美國德州儀器公司生產(chǎn)的CC2530,單個CC2530芯片上集成有Zigbee射頻收發(fā)器核心和一顆高性能8051控制器。CC2530片上資源豐富,只需要很少外圍部件配合就能完成信號收發(fā)[3]。傳感器采用數(shù)字溫濕度傳感器DHT11和煙霧傳感器MQ-2,DHT11是常用的單總線傳感器,數(shù)據(jù)的傳輸和控制命令的寫入都是通過一根數(shù)據(jù)線完成,能夠同時完成對環(huán)境溫濕度的采集任務(wù),DHT11數(shù)據(jù)線接入CC2530的P0.7引腳。MQ-2是煙霧傳感器,其傳輸?shù)氖悄M信號,接入CC2530的P0.6引腳,通過CC2530內(nèi)部的模數(shù)A/D轉(zhuǎn)換模塊,轉(zhuǎn)換成數(shù)字量。圖2是終端節(jié)點和路由節(jié)點的硬件設(shè)計圖。
協(xié)調(diào)器的硬件設(shè)計也是基于終端節(jié)點設(shè)計,根據(jù)其自身功能,增加GPRS模塊,GPRS模塊采用華為公司最新生產(chǎn)的GTM900C芯片。協(xié)調(diào)器只負責(zé)Zigbee組網(wǎng)和數(shù)據(jù)GPRS傳輸,其硬件設(shè)計如圖3,GPRS模塊接入CC2530的UART0接口。許多設(shè)計都采用ARM作為網(wǎng)關(guān)控制芯片,而在本系統(tǒng)中顯示和處理功能由上位機完成,所以控制芯片可以直接利用CC2530,能夠進一步減小成本、控制硬件設(shè)備體積。
2.2 軟件設(shè)計
CC2530采用Z-stack協(xié)議棧作為Zigbee的通信協(xié)議,該協(xié)議棧已經(jīng)配備完善的物理層網(wǎng)絡(luò)層等等,只需要對其應(yīng)用層進行開發(fā),大大縮短系統(tǒng)開發(fā)周期。
軟件設(shè)計主要是終端設(shè)備上采集發(fā)送程序和協(xié)調(diào)器上的GPRS數(shù)據(jù)轉(zhuǎn)發(fā)程序。路由節(jié)點在編譯過程中定義為路由,自動開啟路由功能。
Z-stack協(xié)議棧工作原理是輪詢制度,終端設(shè)備的采集發(fā)送程序需加載在周期發(fā)送事件,具體步驟如下:
(1)注冊發(fā)送事件#define TESTAPP_SEND_MSG_EVT 0x0002
(2)在初始化下定義DHT11接入口為輸入模式,對MQ-2數(shù)據(jù)接口配置AD轉(zhuǎn)換參數(shù)。
P0SEL &= 0x7f; //P0_7配置成通用IO
P0SEL &= ~0x40; //設(shè)置P0.6為普通IO口
P0DIR &= ~0x40; //P0.6定義為輸入口
ADCIF = 0;ADCCON3 = (0x40 | HAL_ADC_DEC_064 | HAL_ADC _CHANNEL_6);
(3)定時發(fā)送事件。osal_start_timerEx(TestApp_TaskID, TESTAPP _SEND_MSG_EVT,TESTAPP_SEND_MSG_TIMEOUT );
(4)進入發(fā)生事件對應(yīng)的處理程序。在處理程序中完成對傳感器數(shù)據(jù)讀取,數(shù)據(jù)存入和發(fā)送。AF_DataRequest()函數(shù)進行發(fā)送數(shù)據(jù)到協(xié)調(diào)器0x0000。ReadGasData()和DHT11()用戶定義傳感器數(shù)據(jù)讀取程序。
協(xié)調(diào)器與GPRS模塊采用串口通信,需要配置串口波特率等信息,GPRS模塊的連接3G網(wǎng)絡(luò)是通過AT指令進行,必須要對GPRS模塊初始化連接網(wǎng)絡(luò)。下面是具體程序流程:
(1)注冊#define GPRS_INTI_EVENT 0x0001為GPRS初始化事件;
(2)若設(shè)備為協(xié)調(diào)器則觸發(fā)GPRS初始化事件。if ( (TestApp_NwkState == DEV_ZB_COORD) osal_set_event(TestApp_TaskID,GPRS_INTI_EVENT);
(3)GPRS初始化的AT指令流程圖4[4]。
(4)完成初始化后,對接收到的終端節(jié)點數(shù)據(jù)進行串口輸出到GPRS模塊,遠程傳輸?shù)奖O(jiān)測中心。
HalUARTWrite(0,"AT%IPSEND=\"",11);HalUARTWrite(0,pkt->cmd.Data,pkt->cmd.DataLength);HalUARTWrite(0,"\"\x0D\x0A",3);
3 遠程監(jiān)測中心測試
3.1 上位機軟件總設(shè)計
上位機作為整個系統(tǒng)頂層,必須完成通信、數(shù)據(jù)存儲、火情分析、報警響應(yīng)功能,具體上位機軟件結(jié)構(gòu)如圖5。
上位機通過Socket通信技術(shù)來接收協(xié)調(diào)器通過GPRS傳來的數(shù)據(jù),串口通信連接GPRS模塊用于火災(zāi)報警短信自動發(fā)送。數(shù)據(jù)庫存儲數(shù)據(jù)方便查詢歷史記錄。報警程序分析環(huán)境數(shù)據(jù)判定是否報警。
3.2 Socket通信測試
上位機軟件測試如圖6所示,協(xié)調(diào)器能夠自動完成GPRS初始化連接到遠程上位機,能夠?qū)崟r顯示數(shù)據(jù),并且自動繪制溫度曲線圖,顯示各個節(jié)點狀態(tài)。整個連接是通過TCP通信協(xié)議,遠程上位機作為服務(wù)端,協(xié)調(diào)器作為客戶端,顯示客戶端的IP地址和連接情況。
3.3 火災(zāi)報警測試
在設(shè)置火災(zāi)報警參數(shù)后,對每個節(jié)點傳來數(shù)據(jù)進行分析,判斷是否超過報警值,如果達到報警的要求,則會在報警記錄欄記錄火災(zāi)節(jié)點和報警原因。圖7 是報警界面。
3.4 歷史數(shù)據(jù)查詢測試
通過Socket接收的數(shù)據(jù),對數(shù)據(jù)幀下的內(nèi)容進行識別,保存到數(shù)據(jù)庫下環(huán)境監(jiān)測表。上位機ADO插件對數(shù)據(jù)查詢,可以查閱歷史數(shù)據(jù)。圖8是數(shù)據(jù)查詢測試圖。
4 結(jié)論
本森林火災(zāi)報警系統(tǒng)采用Zigbee無線傳感器網(wǎng)絡(luò)和GPRS數(shù)據(jù)傳輸技術(shù),利用VS2010平臺,搭建上位機軟件平臺,快速地進行數(shù)據(jù)顯示,能夠查詢歷史數(shù)據(jù),及時火災(zāi)報警。終端采用CC2530為核心的終端設(shè)備,具有體積小、成本低的優(yōu)勢,安裝方便,節(jié)省綜合成本。進一步設(shè)計可以增加多個Zigbee區(qū)域網(wǎng)絡(luò),可以實現(xiàn)大范圍監(jiān)測。初步測試結(jié)果表明,該方案各項基本功能基本實現(xiàn),通信可靠。能夠應(yīng)用樓宇、倉庫、社區(qū)等地區(qū)的火災(zāi)報警系統(tǒng),具有廣泛的市場前景。
【參考文獻】
[1]李愛民,張峰.基于ZigBee/GPRS的溫濕度智能監(jiān)測系統(tǒng)實現(xiàn)[J].農(nóng)機化研究,2015,03:108-111.
[2]張永梅,王凱峰,馬禮,楊沖.基于ZigBee和GPRS的嵌入式遠程監(jiān)測系統(tǒng)的設(shè)計[J].計算機科學(xué),2012,06:222-225+234.
[3]劉科峰,鄧秀勤,劉志煌.基于ZigBee的多點溫度監(jiān)控系統(tǒng)[J].現(xiàn)代電子技術(shù),2014,14:81-83+87.
[4]張成研.基于ZigBee與GPRS的通信網(wǎng)關(guān)設(shè)計[J].企業(yè)技術(shù)開發(fā),2015,10:24-25+33.
[5]鄧小蕾,李民贊,武佳,車艷雙,鄭立華.集成GPRS、GPS、ZigBee的土壤水分移動監(jiān)測系統(tǒng)[J].農(nóng)業(yè)工程學(xué)報,2012,09:130-135.
[責(zé)任編輯:楊玉潔]