羅禮幸,梁文豪,方翰騰,陳桂濱
(肇慶學院電子與電氣工程學院,廣東肇慶 526061)
2020 年11 月13 日廣東省肇慶市羚羊峽發生山火、2021 年1 月21 日廣東省深圳市南山區南山街道大南山發生山火。由此可見,時至今日,山火依然頻發。森林火災具有損壞面積大、損失嚴重、難以控制等特點,嚴重威脅現有森林資源。所以研究森林火災的預防對策是新形勢下的要求,可以有效保護森林[1]。目前,森林火災的防護措施主要采用人工巡視、視頻監控和衛星遙感的方法。人工巡視的成本高且觀察范圍小、容易受天氣情況影響[2];視頻監控成本較高、數據冗余、容易出現監控盲區[3];衛星遙感成本高、容易受天氣狀況影響[4]。相比上述三種森林火災防護措施,系統可以及時獲取到森林中的各項環境數據,并且分析可能發生火災的區域,發現火災后及時報警,防患于未然,更早發現森林火災,及時報警、及時補救,能更好地保護森林資源[5]。
本系統的功能由Zigbee 單元、監測控制器和協調器共同實現[6],Zigbee 單元通過無線局域網絡把相關監測數據傳輸至協調器[7];協調器通過串口將無線局域網絡的數據傳輸至監測控制器;云端接收監測控制器通過4G 網絡發送的信息。系統總體架構如圖1 所示,系統包括硬件部分和軟件部分。

圖1 系統總體架構
Zigbee 單元結構圖如圖2 所示。Zigbee 單元通過搭載溫濕度、煙霧、一氧化碳和火焰傳感器,實現對周圍環境相關信息的收集,并通過無線局域網絡傳輸到監測控制器。Zigbee 單元傳輸的信息包括周圍環境的溫濕度、煙霧、一氧化碳、火焰的信息和該單元編號。

圖2 Zigbee 單元結構
Zigbee 是一種標準,該標準定義了短距離、低傳輸速率無線通信所需要的一系列通信協議[8]。遠距離、低速率、低成本、低功耗是它的特點。它可以實現Zigbee 單元傳Zigbee 單元的方式,這樣可以增大Zigbee 無線局域網絡的通信范圍。此外,Zigbee 無線局域網絡的靈活性好,如果Zigbee 單元與網絡的連接斷開,Zigbee 單元可以再連接進入網絡,不會出現一旦斷開就不能連接的情況。在森林環境中設備難以維護,所以需要長期工作、功耗要盡量低,而且系統要盡量覆蓋森林。相較于傳統的藍牙通信、Mesh 通訊,Zigbee 單元數可達上萬[9],而且Zigbee 的通訊功耗低,更加適合林區防火系統的建設。
2.1.1 處理芯片
本系統采用CC2530 集成芯片以實現讀取和傳輸環境信息的功能[10]。該芯片具有中斷、睡眠和喚醒功能,能有效地降低功耗,而且芯片的價格低,能以很低的成本建立Zigbee 網絡。此外,該芯片內部集成了增強型工業標準8051MCU,擁有系統可編程Flash、8KB RAM 和UART、SPI、DMA 等諸多強大外設功能;這使它成為建立無線局域網絡的不二之選。
2.1.2 溫濕度檢測模塊
SHT20 模塊的特點是測量溫濕度的范圍廣、精度高,而且采用IIC 通訊,抗干擾能力強,在被水浸沒的情況下也能工作。此外,一個產品的價格只在20 元左右,成本低,而且它的占用空間小,方便在處理芯片上搭載,所以該產品符合在森林環境中工作的需要[11]。
2.1.3 煙霧檢測模塊
MQ-2 是專門檢測煙霧氣體的工具,而且其他氣體難以對它產生干擾,它可檢測濃度范圍為100~10000ppm。它一旦檢測到高濃度的煙霧,數字輸出端口輸出低電平,否則輸出高電平。
2.1.4 一氧化碳檢測模塊
MQ-7 的內部材料選用二氧化錫,是專門檢測一氧化碳氣體的工具,可檢測多種混雜一氧化碳的氣體[12]。它一旦檢測到高濃度的一氧化碳氣體,數字輸出端口輸出低電平,否則輸出高電平。
2.1.5 火焰檢測模塊
利用紅外線探測以判斷是否發生火災是火焰傳感器的原理,其探測角度可達60°。它一旦探測到火焰,模塊數字輸出端口輸出低電平,否則輸出高電平。
2.1.6 電源模塊
本系統采樣3 節18650 鋰離子電池作為電源,該電池漏電率低且容量大,特別適用于沒有電能供應的森林環境。此外通過LM2596 穩壓模塊將輸入電壓穩定在5V,確保系統處于穩定供電狀態。
監測控制器的主控芯片是STM32F103ZET6,協調器通過串口與監測控制器進行通信,監測控制器通過4G 模塊將環境數據上傳至云端。
2.2.1 STM32F103ZET6
STM32[13]芯片專為低功耗、高性能、低成本的嵌入式應用設計,時鐘頻率高達72MHz;擁有包括:USB、IIC、SPI 等多種外部設備,功能強大,芯片運行速度快。而且其中斷功能強,有中斷優先級的劃分。該芯片能搭配多種傳感器、通訊模塊、攝像頭等工作,儲存、驅動能力強。
2.2.2 4GDTU 通信模塊ATK-M751
模塊利用4G 網絡進行通信,支持移動/聯通/電信接入方式;適用多種通信協議;支持連接多種云服務器(如:原子云、阿里云、百度云和OneNET);支持自動定時采集任務、基站定位、自定義心跳包和注冊包數據;支持上位機/AT 指令/短信/透傳指令配置參數。它以高速率、低延遲和無線數傳作為核心功能,適用于森林環境中的數據上傳要求。比傳統的GSM 數據傳輸、3G 模塊傳輸有著更佳的使用功能、通訊速度、帶寬以及穩定性。AT 指令是STM32 主控制器和4G 無線模塊之間進行通信的標準與規則,STM32 主控制器采用AT 指令控制4G 無線模塊傳輸數據。4GDTU 模塊通過TTL 串口與STM32F103 單片機進行通信,將STM32F103 單片機采集到的傳感器信息發送給遠程云服務器。
CC2530 采用IAR 編譯環境。IAR[14]編譯環境是一個用于嵌入式開發的工具集,與其他ARM 開發環境相比,IAR 軟件容易掌握、受眾廣泛、使用方便、功能完整,包含的全軟件的模擬程序,這使用戶不用進行硬件的配置就能模擬ARM 內核以及外部設備的軟件運行時候的環境。
ZIgbee 無線局域網絡組網過程如圖3 所示:協調器建立新的網絡,是新建網絡中的第一個設備,然后等待其他單元加入網絡請求,如果是新的單元請求加入就給該單元分配網絡地址,如果不是新的單元,則調用相關的處理函數[15]。

圖3 Zigbee 組網過程流程
監測控制器以STM32 為主控芯片,編譯環境為Keil5。KeiluVision5 是使用C 語言的嵌入式開發工具,區別于匯編語言,C 語言在程序的功能結構和代碼的可閱讀性和后期維護上都有顯著優勢。
系統的工作模式有:正常模式、休眠模式、預警模式、警報模式,在不同的情況下以不同的模式運行。
(1)正常模式:Zigbee 單元每30min 采集一次環境數據,并且將采集的數據上傳。
(2)休眠模式:Zigbee 單元在沒有采集數據任務時進入休眠模式。休眠模式減少了系統的功耗,讓系統可以在電量有限的情況下持續工作更長的時間。休眠模式是指Zigbee 協議棧休眠,其他各個傳感器依然正常工作,若休眠狀態下傳感器檢測到周圍環境數據異常則馬上喚醒Zigbee 單元,將環境數據上傳。只有終端單元和路由單元能進入休眠模式,協調器需一直保持工作狀態。
(3)預警模式:若系統分析出采集的數據異常,則進入預警模式,異常Zigbee 單元自動減少采樣周期,然后采集環境數據10次,若這10 次數據都正常則異常的數據為偶然誤差,否則系統進入警報模式,即發生森林火災。
(4)警報模式:各個Zigbee 單元減少采樣的周期并且一直處于工作狀態,不斷將森林環境數據上傳。系統能實時收集森林火災發生時森林的環境信息。以此分析火災的走向,為撲滅火災提供幫助。
系統運行過程:Zigbee 單元周期性地采集周圍環境的溫濕度、煙霧、一氧化碳和火焰信息,然后通過Zigbee 網絡將信息傳輸到監測控制器中,監測控制器將接受到的環境信息通過4G 網絡上傳到云端,云端對環境信息進行匯總分析。若Zigbee 單元分析出信息正常,則進入休眠狀態;否則進入預警狀態,單元自動縮短采樣周期,迅速采集10 次信息,若這10 次信息都正常則恢復正常狀態,否則進入警報狀態,說明發生山火,Zigbee 單元不斷將信息上傳,不能休眠,為后續工作提供協助。
系統實物圖如圖4 所示。

圖4 森林火災實時監控系統實物
5.1.1 SHT20 溫濕度監測模塊
SHT20 溫濕度檢測模塊測量得出的溫度與溫度計測量得出的實際溫度進行比較,從而判斷溫濕度檢測模塊是否正常工作。
由圖5 可看出溫度計測出的實際溫度為26℃,由圖6 可看出SHT20 溫濕度檢測模塊測量的溫度為25℃或26℃,濕度變化范圍不超過3%,濕度度誤差偏差很小;SHT20 和溫度計測量的溫度相差較小,表明模塊測量得出的溫度誤差不大,溫濕度檢測模塊正常工作。

圖5 溫度計測量實際溫度結果
5.1.2 火焰檢測模塊

圖6 SHT20 溫濕度傳感器模塊測試結果
當火焰檢測模塊異常時,數字輸出端口輸出低電平,正常情況下數字輸出端口輸出高電平。測試方案如下:將打火機置于火焰檢測模塊探頭約50cm 處,然后點燃明火;火焰檢測模塊探測到明火時數字輸出端口由高電平變成低電平,Zigbee 單元外部中斷觸發,串口輸出Open fire found。
由圖7 可知,當打火機點燃明火時,串口輸出Open fire found,表明火焰檢測模塊發現明火。

圖7 模塊單獨測試結果
5.1.3 一氧化碳檢測模塊和煙霧檢測模塊
MQ-7 和MQ-2 檢測到異常氣體時,數字輸出端口輸出低電平,正常情況下數字輸出端口輸出高電平。測試方案如下:將打火機置于模塊附近,按住打火機開關放出氣體但不點燃氣體,模塊檢測到異常氣體時觸發外部中斷,串口輸出The concentration of carbon monoxide is too high,即檢測到異常氣體;串口輸出The concentration of smoke is too high,即檢測到異常氣體。
由圖7 可知,當打火機放出氣體時,異常氣體的濃度都過高,模塊也做出對應的響應。

表1 監測控制器正常測試結果

表2 監測控制器異常測試結果
由表1 可知,采集的數據都是正常的,說明系統正常運行;表2 中Zigbee 單元2 和Zigbee 單元3 采集的一氧化碳數據是異常的,Zigbee 單元2 采集的火焰數據是異常的,還有Zigbee 單元5的煙霧數據是異常的。
本文從硬件和軟件設計對系統進行介紹,最后對系統進行測試。系統能實時監控森林的環境信息,并且能在火災發生時迅速響應,在森林防火中具有廣泛的使用價值。本系統具有功耗低、實時性好、能長時間穩定運行等特點。此外,可以在云端搭建可視化界面,讓數據顯示更加直觀,此方案的研究有待進一步探索。