周曉玨
(江蘇商貿(mào)職業(yè)學院,江蘇 南通 226011)
民以食為天,糧食安全系國計民生之大事,糧食儲備則是“穩(wěn)定器”和“壓艙石”,糧倉環(huán)境的監(jiān)測對于實現(xiàn)庫存糧食減損、降耗、保鮮至關(guān)重要。傳統(tǒng)糧倉環(huán)境監(jiān)測系統(tǒng)采用單一的傳感器檢測,獲取的數(shù)據(jù)較為片面,易造成誤報警或漏報警[1],且單一傳感器損壞后會影響整個系統(tǒng)的性能。本文設計了一種多傳感器融合的糧倉環(huán)境監(jiān)測系統(tǒng),采用先進的物聯(lián)網(wǎng)技術(shù)、無線通信技術(shù)、云計算技術(shù)及多傳感器融合技術(shù),對糧倉溫濕度、CO2濃度、O2濃度實時監(jiān)測,并對采集數(shù)據(jù)進行多層次、多空間的信息互補和優(yōu)化組合處理,極大地提高了系統(tǒng)的準確性、穩(wěn)定性及可靠性,同時能遠程自動化控制通風、降溫、干燥設備,方便工作人員在大數(shù)據(jù)平臺上即刻處理糧倉異常情況,確保糧倉存儲安全。
糧倉環(huán)境監(jiān)測系統(tǒng)總體結(jié)構(gòu)圖如圖1所示,終端傳感器采集糧倉環(huán)境數(shù)據(jù),通過無線通信方式將其傳至云平臺,用戶可通過智能設備APP遠程監(jiān)控。各種終端傳感器檢測到糧倉環(huán)境參數(shù),將其傳至ZigBee協(xié)調(diào)節(jié)點,再送至智能網(wǎng)關(guān),由路由器傳至云服務器,用戶即可通過登錄智能設備云APP遠程監(jiān)控糧倉環(huán)境。當糧倉環(huán)境參數(shù)超出范圍,蜂鳴器發(fā)出報警提示,用戶則通過智能設備云APP發(fā)送控制指令,經(jīng)云服務器送至智能網(wǎng)關(guān),再發(fā)送至ZigBee協(xié)調(diào)節(jié)點,即將控制指令送至終端節(jié)點繼電器控制模塊來遠程自動化控制糧倉排風扇、加熱設備、加濕設備等現(xiàn)場設備,以實現(xiàn)通風、降溫、干燥等功能[2]。智能網(wǎng)關(guān)與ZigBee節(jié)點(包括協(xié)調(diào)器節(jié)點、終端節(jié)點)通過串口實現(xiàn)通信,與路由器間采用Wifi形式通信。
圖1 糧倉環(huán)境監(jiān)測系統(tǒng)總結(jié)構(gòu)圖
智能網(wǎng)關(guān)是糧倉環(huán)境監(jiān)測系統(tǒng)的核心部件,它主要負責對終端各個傳感器采集數(shù)據(jù)進行信息融合,做出預警判斷,同時實現(xiàn)與用戶端信息交互[3]。它主要由STM32和wifi模塊ESP8266構(gòu)成。
其中STM32采用STM32F103ZET6型號,它是一種嵌入式單片機,該芯片內(nèi)核為32位Cortex-M3,最高工作頻率為72MHz,程序存儲器容量是256 KB,程序存儲器類型是FLASH,RAM容量是48K。每個通用輸入輸出接口(GPIO)引腳都可以由軟件配置成輸出(推挽或開漏)、輸入(帶或不帶上拉或下拉)或復用的外設功能端口,多數(shù)GPIO引腳均能與模擬或數(shù)字的復用外設共用。它采用直流單電源供電,供電電壓范圍是2.0~3.6V,一般供電電壓是3.3V。
ESP8266是一種低成本的無線設備,工作溫度范圍大,性能穩(wěn)定,能適應各種操作環(huán)境,專為移動設備、可穿戴電子產(chǎn)品和物聯(lián)網(wǎng)應用而設計,功耗低,高度集成,支持實時操作系統(tǒng)(RTOS)和wifi協(xié)議棧。ESP8266與ZigBee節(jié)點采用串口通信,通信原理如圖2所示。
圖2 智能網(wǎng)關(guān)與ZigBee協(xié)調(diào)器間通信原理圖
本系統(tǒng)ZigBee模塊采用CC2530片上系統(tǒng)。CC2530芯片內(nèi)部集成了增強型8051內(nèi)核和RF收發(fā)器,它具有不同的運行模式,使得它特別適應低功耗系統(tǒng),有極高的接收靈敏度、抗干擾能力,外接元件極少。
3.3.1 DHT11溫濕度傳感器
溫濕度是影響糧倉的最大因素,溫濕度過高會導致糧食發(fā)生霉變。一般糧倉溫度低于15~20℃、濕度維持在30%RH內(nèi),適于糧食的長期存儲。若短期存儲,溫度不高于30℃,濕度不超過70% RH[4]。本系統(tǒng)采用DHT11溫濕度傳感器對糧倉進行多點監(jiān)測,以便及時發(fā)現(xiàn)糧倉環(huán)境潮濕、溫度異常等情況,有效降低糧食腐爛、發(fā)霉風險,保證糧食的存儲質(zhì)量,降低經(jīng)濟風險。
DHT11溫濕度傳感器是一種抗干擾能力強、可靠性高的溫濕度復合傳感器。它由一個電阻式感濕元件和一個NTC熱敏電阻組成,適用于20%~80%的濕度讀數(shù)(精度為±5%)、0~50℃溫度讀數(shù)(精度為±2℃)。它有4個引腳,其中Pin1為電源引腳,供電電壓為3~5.5V;Pin2為串行數(shù)據(jù)端,單總線通信;Pin3一般懸空;Pin4為接地端。圖3為DHT11傳感器典型應用電路,通常當DHT11與MCU間的連線長度小于20m時,用5K上拉電阻;當長度大于20m時,根據(jù)實際情況使用合適的上拉電阻,從而來提高測量精度。MCU向DHT11傳感器發(fā)送信號,DHT11采集溫濕度數(shù)據(jù)(一次完整的數(shù)據(jù)傳輸為40bit),并輸入到MCU數(shù)據(jù)口[5]。
圖3 DHT11傳感器典型應用電路圖
3.3.2 二氧化碳傳感器
糧倉中采用二氧化碳氣儲糧技術(shù),即在糧倉中充入二氧化碳氣體,從而改變糧倉內(nèi)氣體成分的組成,破壞霉菌、害蟲生態(tài)環(huán)境,抑制糧食生理呼吸,從而實現(xiàn)儲糧的安全、環(huán)保、新鮮。因此糧倉中二氧化碳濃度的實時采集很重要。本系統(tǒng)采用RS-CO2傳感器,它是采用新型紅外檢定技術(shù)進行二氧化碳濃度測量,準確度高,漂移小,壽命長,測量范圍寬,自帶溫度補償,受溫度影響小。一般它的供電電壓是直流電壓 10~30 V,測量范圍是 0~5000 ppm,精度為40ppm±3%F.S。
3.3.3 氧氣傳感器
在二氧化碳氣控糧倉中,當氧氣濃度低于2%且二氧化碳達到一定濃度時,存儲的糧食害蟲會迅速死亡。要確保糧倉低氧或無氧環(huán)境,須用O2傳感器對糧倉中的氧氣含量進行監(jiān)測,一旦氧氣濃度超過限定值,即可驅(qū)動系統(tǒng)報警,人工或自動啟動充入二氧化碳,直至氧氣濃度低于限定值。本系統(tǒng)采用LOX-O2熒光氧氣傳感器,它是一款帶UART輸出的數(shù)字傳感器,無需信號調(diào)理電路,功耗低、壽命長、穩(wěn)定、環(huán)保,不含鉛或其他有毒材料,而且不會受到其他氣體交叉干擾,一般它的供電電壓是直流電壓4.5~5.5V,氧氣測量范圍是 0~25%,0~300mbar。
本系統(tǒng)利用繼電器控制模塊來遠程自動化控制糧倉排風扇、加熱設備、加濕設備等現(xiàn)場設備,即通過控制輸入到繼電器模塊的脈沖信號從而來實現(xiàn)繼電器開關(guān)的通與斷,也可手動實現(xiàn)控制。繼電器控制模塊供電電壓為5V,原理圖如圖4所示,它有三個外接引腳,其中輸入引腳來接收脈沖信號的。
圖4 繼電器控制模塊原理圖
本系統(tǒng)軟件設計主要包括智能網(wǎng)關(guān)、ZigBee節(jié)點的軟件設計。
智能網(wǎng)關(guān)是由STM32及ESP8266構(gòu)成,作為系統(tǒng)核心部件,連接ZigBee無線局域網(wǎng)和internet兩個網(wǎng)絡,負責兩類數(shù)據(jù)的交互,即通過ZigBee協(xié)調(diào)器上傳的終端節(jié)點傳感器采集數(shù)據(jù)及用戶通過智能設備APP下達的控制指令。同時它作為控制中心,對數(shù)據(jù)及指令作基本的分析、處理和暫存。本系統(tǒng)智能網(wǎng)關(guān)是在KeilMDK5平臺上開發(fā)的,程序流程圖如圖5所示,當智能網(wǎng)關(guān)通電初始化后,進入監(jiān)聽網(wǎng)絡狀態(tài),等待終端數(shù)據(jù)上傳。智能網(wǎng)關(guān)會判斷接收的數(shù)據(jù),若為ZigBee數(shù)據(jù),則判斷為終端傳感器數(shù)據(jù),并將其上傳至云服務器;若為TCP/IP數(shù)據(jù),則判斷為控制指令,將其送至ZigBee協(xié)調(diào)器;若數(shù)據(jù)非ZigBee數(shù)據(jù),也非TCP/IP數(shù)據(jù),則判斷為非法報文數(shù)據(jù),將其丟失,再次進入監(jiān)聽網(wǎng)絡狀態(tài)[6]。
圖5 智能網(wǎng)關(guān)程序流程圖
本系統(tǒng)采用IAREW環(huán)境來開發(fā)糧倉的ZigBee網(wǎng)絡,ZigBee網(wǎng)絡軟件設計主要包括ZigBee協(xié)調(diào)器、終端傳感器節(jié)點、執(zhí)行節(jié)點應用程序的設計。
4.2.1 ZigBee協(xié)調(diào)器節(jié)點軟件設計
ZigBee協(xié)調(diào)器負責ZigBee網(wǎng)絡的創(chuàng)建、配置和維護,其流程圖如圖6所示。ZigBee網(wǎng)絡創(chuàng)建,程序初始化后,處于監(jiān)聽狀態(tài),開始監(jiān)聽智能網(wǎng)關(guān)傳來的控制指令及終端節(jié)點上傳的糧倉環(huán)境參數(shù)。若接收數(shù)據(jù)為網(wǎng)關(guān)模塊傳來的數(shù)據(jù),對其進行數(shù)據(jù)解析,判斷控制的是哪個終端節(jié)點,再發(fā)送至相應的終端節(jié)點;若接收數(shù)據(jù)為終端傳感器數(shù)據(jù),就會將數(shù)據(jù)打包發(fā)給智能網(wǎng)關(guān)。
圖6 ZigBee協(xié)調(diào)器程序流程圖
4.2.2 終端傳感器節(jié)點的軟件設計
在ZigBee終端節(jié)點設置了3種類型的終端傳感器節(jié)點,先通過溫濕度傳感器、二氧化碳傳感器及氧氣傳感器來實時采集糧倉環(huán)境參數(shù),再將其打包發(fā)送給ZigBee協(xié)調(diào)器。
4.2.3 執(zhí)行節(jié)點的軟件設計
ZigBee執(zhí)行節(jié)點為繼電器開關(guān)。當ZigBee協(xié)調(diào)器創(chuàng)建網(wǎng)絡,程序初始化后,處于監(jiān)聽狀態(tài),會監(jiān)聽到從智能網(wǎng)關(guān)傳來的控制指令,在確認控制指令無誤后會控制執(zhí)行設備如排風扇、加熱設備、加濕設備,并向ZigBee協(xié)調(diào)器反饋執(zhí)行設備的運行狀態(tài),協(xié)調(diào)器再通過串口送至智能網(wǎng)關(guān)。
糧倉一般采用多點位測量環(huán)境參數(shù),每間隔5m埋入一個溫濕度傳感器,檢測不同深度、不同位置的糧食的溫濕度,同時在不同位置分布著二氧化碳傳感器及氧氣傳感器來實時監(jiān)測糧倉氣體參數(shù)。為了提高糧倉環(huán)境監(jiān)測精度,有效提升數(shù)據(jù)的全面性及實時性,本系統(tǒng)采用對同類傳感器監(jiān)測數(shù)據(jù)局部融合,再對異類傳感器監(jiān)測數(shù)據(jù)用D-S證據(jù)理論算法全局融合[7],從而減小采集數(shù)據(jù)的誤差。
本系統(tǒng)數(shù)據(jù)融合結(jié)構(gòu)圖如圖7所示,首先對同類傳感器采集數(shù)據(jù)進行局部數(shù)據(jù)融合,即多次實驗,通過算術(shù)平均算出不同時間段的均值,取任一值與相應時間段均值比較,若大于相應時間段均值,則該值視為異常值,用均值替代;若小于相應時間段均值,則該值視為正常值,不做處理,從而實現(xiàn)對同類傳感器異常數(shù)據(jù)的修正;再利用D-S證據(jù)理論算法對異類傳感器采集數(shù)據(jù)進行全局融合分析,即將糧倉中溫濕度、二氧化碳濃度、氧氣濃度等級作概率函數(shù)賦值,利用D-S證據(jù)理論做最后的糧倉環(huán)境評估,先讓溫濕度與二氧化碳濃度的等級進行融合,計算歸一化常數(shù)K和mas函數(shù),所得結(jié)果再與氧氣濃度等級進行融合,進而得出整個糧倉的環(huán)境等級,從而增加了系統(tǒng)對糧倉環(huán)境等級判決結(jié)果的可信度,確保了判定結(jié)果的準確度[8]。
圖7 系統(tǒng)數(shù)據(jù)融合結(jié)構(gòu)圖
本文從糧倉存儲環(huán)境監(jiān)測的實際需求出發(fā),結(jié)合物聯(lián)網(wǎng)技術(shù)、通信技術(shù)、云計算技術(shù)及多傳感器融合理論,設計了一種基于多傳感器融合的糧倉環(huán)境監(jiān)測系統(tǒng),引入多傳感器融合技術(shù),為糧倉環(huán)境監(jiān)測提供了實時、精準、可靠的數(shù)據(jù),提高了糧倉環(huán)境信息智能化水平,保證了糧食存儲質(zhì)量,系統(tǒng)穩(wěn)定、可靠,在智能糧食倉儲領(lǐng)域有一定推廣和應用前景。