(上海工程技術(shù)大學(xué) 電子電氣工程學(xué)院,上海 201620)
2008年11月14日上海商學(xué)院、2011年11月03日清華大學(xué)的宿舍失火以及2015年8月12日天津倉庫爆炸等事件造成了嚴(yán)重的生命傷害和的財產(chǎn)損失。為提高安全管理水平,有效監(jiān)測環(huán)境安全,避免火災(zāi)發(fā)生,本文研發(fā)一款基于ZigBee的環(huán)境安全監(jiān)測系統(tǒng)。該系統(tǒng)可對人群、物品比較集中,容易引發(fā)危險的宿舍以及倉庫等類似的空間進行溫度、濕度、可燃性氣體濃度、用電功率等一系列監(jiān)測。
該系統(tǒng)采用多種傳感器模塊來采集監(jiān)測地點的環(huán)境數(shù)據(jù),利用單片機控制器將采集到的環(huán)境數(shù)據(jù)進行處理與整合,并通過ZigBee傳輸協(xié)議將數(shù)據(jù)發(fā)送給上位機,上位機的“智能監(jiān)控”客戶端基于Visual Basic 6.0 編寫,其采用的數(shù)據(jù)庫技術(shù)能直觀、方便地對環(huán)境數(shù)據(jù)進行管理與分析。
該系統(tǒng)經(jīng)實驗可以對預(yù)期的監(jiān)測地點的溫度、濕度、可燃性氣體濃度和用電功率等參數(shù)進行監(jiān)測,若環(huán)境處在危險情況下,該系統(tǒng)可報警通知管理人員且具有自動排除危險的功能。
該系統(tǒng)由三大部分組成:下位機系統(tǒng)、上位機系統(tǒng)和通信轉(zhuǎn)接板,系統(tǒng)總體結(jié)構(gòu)框圖如圖1所示。下位機系統(tǒng)主要負(fù)責(zé)檢測環(huán)境數(shù)據(jù)和OLED液晶顯示,并通過ZigBee無線傳輸技術(shù)經(jīng)由通信轉(zhuǎn)接板與上位機通信。上位機系統(tǒng)主要負(fù)責(zé)接收下位機系統(tǒng)傳輸?shù)臄?shù)據(jù)、數(shù)據(jù)分析以及環(huán)境監(jiān)測數(shù)據(jù)的遠(yuǎn)程顯示和圖表展示。該系統(tǒng)對監(jiān)測地點分有人管理和無人管理兩種情況進行不同的報警模式。在有人管理的模式下僅觸發(fā)語音報警,不觸發(fā)宿管處的蜂鳴器報警;而在無人管理的情況下語音和蜂鳴器兩種報警模式同時觸發(fā),并且會以短信形式通知管理人員。系統(tǒng)在必要時還可以實現(xiàn)對危險因素的自動排除功能,例如自動切斷回路的總電源。
圖1 監(jiān)控系統(tǒng)總體設(shè)計框圖
在下位機主控芯片的選型上,本系統(tǒng)采用了STC(宏晶科技)公司的1T增強系列8051單片機STC12LE5A60S2作為主控芯片,速度較傳統(tǒng)8051快8~12倍,但完全兼容8051傳統(tǒng)單片機的匯編指令代碼;采用了新型的哈佛結(jié)構(gòu),將輸入的程序和存儲的數(shù)據(jù)分開來增加數(shù)據(jù)的吞吐和運行的效率,使得數(shù)據(jù)吞吐率較以前增加了一倍左右。STC12LE5A60S2還具有足夠大的片上內(nèi)存,包括FLASHROM(60 KB)、RAM(1280 B)[1],足夠容納供OLED顯示用的常用字庫以及圖片取模字庫;還擁有充足的I/O口引腳,能夠?qū)Ω鞣N環(huán)境監(jiān)測傳感器進行擴展連接。
在自主設(shè)計硬件PCB板時為其預(yù)留了較多的I/O接口,不僅很大程度上展現(xiàn)出了STC12LE5A60S2的多I/O口綜合控制能力,同時還為使用者進行二次研發(fā)提供了很大的拓展空間。
系統(tǒng)采用ZigBee技術(shù),其是一種近距離、低功耗、低數(shù)據(jù)速率的雙向無線通信技術(shù),主要基于IEEE 802.15.4標(biāo)準(zhǔn),支持最高3300 B/s的數(shù)據(jù)傳輸速率,使用2.4 GHz的頻段進行通信,可以快速組建局域網(wǎng)絡(luò)。
該系統(tǒng)使用了“深聯(lián)創(chuàng)新”所研發(fā)的無線ZigBee模塊DL-20,其無需學(xué)習(xí)復(fù)雜的Zigbee協(xié)議棧[2],也無需ZigBee協(xié)調(diào)器和路由節(jié)點,終端節(jié)點就可以完成組網(wǎng)和轉(zhuǎn)發(fā)。其采用CC2530作為系統(tǒng)芯片,集成了工業(yè)級的增強型8051控制器,在提高性能的基礎(chǔ)上,也滿足了以ZigBee為基礎(chǔ)的2.4 GHz ISM波段[3]。該模塊功率約為100 mW,PCB板內(nèi)置天線,有效傳輸距離在無干擾情況下可達(dá)約200 m。
環(huán)境數(shù)據(jù)的采樣和存儲在環(huán)境監(jiān)測過程中是非常重要的部分。該系統(tǒng)可對可燃性氣體、溫度、濕度、用電功率和有/無人狀態(tài)進行實時采集。DHT22溫濕度傳感器負(fù)責(zé)溫度和濕度的檢測、HC-SR501紅外傳感器負(fù)責(zé)對有/無人狀態(tài)的檢測,二者通過單片機普通I/O口傳遞環(huán)境參數(shù)。MQ-2煙霧傳感器負(fù)責(zé)可燃性氣體濃度的檢測,HBC05PS3.3霍爾傳感器負(fù)責(zé)用電功率的檢測,二者通過單片機A/D轉(zhuǎn)換口傳遞環(huán)境參數(shù)。
系統(tǒng)設(shè)定單片機定時器每10 s進入1次中斷,并發(fā)出輪詢事件,周期性地更新各個傳感器所采集的實時環(huán)境數(shù)據(jù),由此完成整個環(huán)境數(shù)據(jù)采集和處理任務(wù)。
報警子系統(tǒng)能播報環(huán)境異常語音廣播。語音播報電路采用語音解碼芯片QJ004-16S,其集成了MP3、WMV的硬解碼能力,其原理圖如圖2所示。
圖2 解碼芯片與TF卡相連原理圖
該語音解碼芯片與TF卡直接相連接,并通過SPI串口協(xié)議傳輸,獲取到預(yù)置在SD卡中的語音報警音頻文件,解碼后的數(shù)據(jù)流會通過LM4890音頻功放芯片進行功率放大,通過外接揚聲器播放輸出[4],電路原理圖如圖3所示。
圖3 功放芯片外圍電路原理圖
其中DACL和DACR分別為經(jīng)過QJ004-16S音頻解碼后的左聲道數(shù)據(jù)流和右聲道數(shù)據(jù)流,引腳8輸出的ROUT與引腳5輸出的LOUT即可外接揚聲器。報警時硬件實物圖如圖4所示。
圖4 下位機硬件報警實物圖
該報警子系統(tǒng)能夠智能識別導(dǎo)致當(dāng)前環(huán)境異常的原因,自選擇儲存在SD卡中相應(yīng)的音頻文件進行播放,提升系統(tǒng)的智能性。相關(guān)代碼如下。
//將各報警標(biāo)志位移位后或運算,賦給一個報警變量
tempmode=(u8)((Temp_Mode<<3)|(Humi_Mode<<2)|
(Gas_Mode<<1)|Pow_Mode);
switch(tempmode){
case 0x08:
//語音播報子程序,播放溫度異常語音
Music_Pointplay(Temp_Alarm); break;
case 0x04:
//語音播報子程序,播放溫度異常語音
關(guān)羽的忠義一直以來被人們傳誦。他去世以后,老百姓就在各地建廟供奉,稱他為“商界保護神”“醫(yī)藥神”“戰(zhàn)神”。歷代朝廷也都對他進行褒封,如“關(guān)圣帝君”“武圣”等,與“文圣”的孔子齊名。千年以來,關(guān)帝廟香火不斷,表現(xiàn)了人們對關(guān)羽的敬仰和崇拜之情。
Music_Pointplay(Humi_Alarm); break;
case 0x02:
//檢測到可燃性氣體超過20秒自動斷電
if(Gas_Offpow_Delay==2){
Music_Pointplay(Gas_Offpower_Alarm);
Power_Off();//切斷回路電源子程序
Gas_Offpow_Delay=0;//時間標(biāo)志位清零
}else Music_Pointplay(Gas_Alarm);
break;
case 0x01:
//檢測到功率異常超過60秒自動斷電
if(Cur_Offpow_Delay==6){
Music_Pointplay(Cur_Offpower_Alarm);
Power_Off();//切斷回路電源子程序
Cur_Offpow_Delay=0;//時間標(biāo)志位清零
}else Music_Pointplay(Power_Alarm); break;
default://若存在多個環(huán)境異常
Mul_Mode();//多異常處理子程序
//播報多異常語音
Music_Pointplay(Mul_Alarm);
}
本系統(tǒng)的軟件部分由下位機STC單片機程序、上位機VB6.0客戶端程序和數(shù)據(jù)庫存儲3部分組成。
該系統(tǒng)使用Keil C軟件對STC單片機進行開發(fā)。Keil C51是一款軟件開發(fā)系統(tǒng),其為51系列并兼容單片機C語言,由美國Keil Software公司出品[5]。
程序設(shè)計思路如下:當(dāng)系統(tǒng)上電后,首先檢查硬件系統(tǒng)的完整性和對相關(guān)事件進行初始化,當(dāng)與上位機ZigBee網(wǎng)絡(luò)建立成功后,開始采集并展示環(huán)境數(shù)據(jù),保證系統(tǒng)有條不紊地運行。若監(jiān)測過程中遇到環(huán)境危險的情況,則調(diào)用相應(yīng)的事件處理函數(shù)并進行報警。過程中時刻保持與樓層ZigBee管理器的通信暢通。
位于各個寢室的ZigBee終端將采集到的室內(nèi)環(huán)境數(shù)據(jù)周期性地發(fā)送至每層的樓層ZigBee管理器,樓層ZigBee管理器按樓層由高向低匯總至1樓ZigBee管理器,1樓ZigBee管理器負(fù)責(zé)將所有寢室的環(huán)境數(shù)據(jù)傳輸給上位機。ZigBee數(shù)據(jù)通信協(xié)議如表1所示。
表1 數(shù)據(jù)通信協(xié)議
注:校驗位根據(jù)程序算法得出
本系統(tǒng)上位機客戶端基于Visual Basic 6.0 平臺建立,其主要用于將各項環(huán)境數(shù)據(jù)通過圖形化界面展示,方便宿管及時了解各個寢室的環(huán)境問題。其工作流程圖如圖5所示。
圖5 “智能監(jiān)控”工作流程圖
上位機監(jiān)控軟件通過MSComm串口控件的comEvReceive事件接收到轉(zhuǎn)接板發(fā)送的環(huán)境數(shù)據(jù)后根據(jù)通信協(xié)議對數(shù)據(jù)進行校驗和提取[6],若校驗通過則將各項環(huán)境數(shù)據(jù)展示在客戶端界面上并存入數(shù)據(jù)庫。若檢測到環(huán)境數(shù)據(jù)異常,則會彈出如圖6所示的報警提示框并驅(qū)動USB轉(zhuǎn)接板上的蜂鳴器來提醒宿管。
圖6 客戶端報警界面
MySQL數(shù)據(jù)庫技術(shù)的引用方便了對環(huán)境數(shù)據(jù)的存儲和讀取。上位機VB客戶端通過引用Microsoft Activex Data Objects 2.0 Library具備連接到MySQL數(shù)據(jù)庫并對數(shù)據(jù)庫內(nèi)存儲的環(huán)境數(shù)據(jù)進行讀取和寫入的能力。數(shù)據(jù)庫共有6個字段,分別是時間(TIME)、寢室號(DORM)、溫度(TEMPERATURE)、濕度(HUMID)、是否有人狀態(tài)(PEOPLE)以及異常標(biāo)志位(STATUS)。當(dāng)每次上位機客戶端獲取到環(huán)境數(shù)據(jù)并解碼完成后,無論數(shù)據(jù)是否在安全閾值內(nèi),都會在第一時間將當(dāng)前的環(huán)境數(shù)據(jù)以ADODB.Recordset.AddNew語句存入MySQL數(shù)據(jù)庫[7]。具體數(shù)據(jù)儲存如圖7所示。
圖7 環(huán)境歷史數(shù)據(jù)
上述環(huán)境安全監(jiān)測系統(tǒng)在上海松江大學(xué)城某宿舍區(qū)以及上海松江大學(xué)城某校實訓(xùn)樓兩個地點分別進行了實驗,分別于2017年9月23日和2017年9月29日對上述兩個區(qū)域做了環(huán)境監(jiān)測的測試工作。
在測試中,系統(tǒng)能夠準(zhǔn)確地對環(huán)境參數(shù)進行采集,并無誤地將收集到的數(shù)據(jù)存入數(shù)據(jù)庫。在宿舍樓區(qū),下位機硬件系統(tǒng)安裝在一樓和二樓各宿舍的天花板上,各樓層的ZigBee終端信號能夠順利穿過水泥墻和門板傳輸?shù)礁鳂菍拥腪igBee管理器,宿管處的上位機ZigBee能順利地接收到各個寢室的環(huán)境數(shù)據(jù),宿管能夠非常及時地通過電腦上的“智能監(jiān)控”客戶端了解當(dāng)前寢室的有/無人狀態(tài)和溫濕度等情況,使得管理效率提高;在實訓(xùn)樓的測試中,將下位機硬件平臺安置在一實驗室中,采用了瓦斯模擬了可燃性氣體,該系統(tǒng)能夠在瓦斯?jié)舛容^低的情況下及時報警并主動切斷電源回路,以防用電器電火花引爆可燃性氣體,同時無延時地通知了位于辦公室的實驗室管理員前來處理,防止危害繼續(xù)擴大。
通過上述測試,該監(jiān)控系統(tǒng)能夠有效地檢測到環(huán)境異常并通過報警功能及時通知相關(guān)人員進行處理,相關(guān)電路設(shè)計和傳感器選型能夠勝任環(huán)境安全監(jiān)測的需求。
基于ZigBee的校園宿舍環(huán)境安全監(jiān)測系統(tǒng)是一種先進的環(huán)境監(jiān)測系統(tǒng),在同類產(chǎn)品中具有高智能性、成本低、低功耗、低誤報警率、報警及時、數(shù)據(jù)準(zhǔn)確等特點,其監(jiān)測地點不僅限于宿舍,可以運用在任何對環(huán)境監(jiān)測具有高安全要求的地方,如倉庫等。本監(jiān)控系統(tǒng)操作簡單,用戶幾乎不需要專業(yè)知識即可使用。
環(huán)境監(jiān)測是一項長期工程,該系統(tǒng)只考慮了部分的指標(biāo),在后期的改造和再設(shè)計過程中,可考慮加入更多因素,比如大氣壓強、PM2.5監(jiān)測等,為用戶帶來更加全面的環(huán)境監(jiān)測。