高萌萌,孫志剛,李 碩,高亞杰,王國濤,2
(1.黑龍江大學(xué) 電子工程學(xué)院,哈爾濱 150008; 2.哈爾濱工業(yè)大學(xué) 軍用電器研究所,哈爾濱 150001)
近年來,隨著經(jīng)濟(jì)的快速發(fā)展,人民對其居住與生活環(huán)境的空氣質(zhì)量狀況關(guān)注度越來越高。對于居住環(huán)境,房地產(chǎn)開發(fā)商在新房裝修完畢后,安排專職員工定期進(jìn)行空氣質(zhì)量檢測,在各項(xiàng)指標(biāo)合格后通知戶主入住,但在檢測過程中,有害氣體會損害員工的身體,人工檢測也會帶來資源浪費(fèi)、效率低下的問題。對于生活環(huán)境,人們越來越關(guān)注電視或手機(jī)軟件上對所處行政區(qū)空氣質(zhì)量指數(shù)的播報,多數(shù)地區(qū)現(xiàn)行的對范圍內(nèi)空氣的檢測方法是通過設(shè)立固定監(jiān)測站點(diǎn),由巡視人員每天固定時間前往“抄表”并進(jìn)行后期數(shù)據(jù)融合,完成區(qū)域范圍的空氣質(zhì)量評估,由于區(qū)域范圍內(nèi)空氣流動性快以及巡視人員機(jī)動性差,采用人工“抄表”記錄的方式存在數(shù)據(jù)實(shí)時性不高、記錄時間不匹配等問題。
物聯(lián)網(wǎng)技術(shù)的飛速發(fā)展帶來通信技術(shù)的更新迭代,專為低帶寬、低功耗、遠(yuǎn)距離、大量連接的物聯(lián)網(wǎng)應(yīng)用而設(shè)計的低功耗廣域網(wǎng)技術(shù)得到了廣泛應(yīng)用,目前較為成熟的低功耗廣域網(wǎng)技術(shù)有NB-IoT、LoRa與Sigfox等[1]。NB-IoT 技術(shù)作為最有發(fā)展前景的低功耗廣域網(wǎng)通信技術(shù)之一,在物聯(lián)網(wǎng)應(yīng)用中的優(yōu)勢顯著,為傳統(tǒng)蜂窩網(wǎng)技術(shù)及藍(lán)牙、WiFi 等短距離傳輸技術(shù)所無法比擬[2]。NB-IoT功耗低、支持待機(jī)時間最長可達(dá)十年,適合應(yīng)用于區(qū)域范圍內(nèi)的監(jiān)測應(yīng)用設(shè)計,并且NB-IoT可以直接部署于GSM網(wǎng)絡(luò)、UMTS網(wǎng)絡(luò)和LTE網(wǎng)絡(luò),部署成本低,最后,在支持大數(shù)據(jù)方面,NB-IoT連接所收集的數(shù)據(jù)可以直接上傳至云端。
趙智佩等采用ARM9和NB-IoT通信技術(shù),設(shè)計了電容電池信息監(jiān)測終端,將采集的A/D電壓與溫度值上報云平臺與PC服務(wù)器,實(shí)現(xiàn)對電容電池的電壓和工作溫度的監(jiān)測[3]。朱代先等基于NB-IoT技術(shù)設(shè)計實(shí)現(xiàn)了智慧井蓋監(jiān)測系統(tǒng),應(yīng)用低功耗芯片STM32采集井蓋的壓力和位移以及窨井下的甲烷濃度和水位,通過NB-IoT模塊上傳至服務(wù)器,實(shí)現(xiàn)采集終端與服務(wù)器之間低功耗的信息交互[4]。吳正平等同樣基于NB-IoT設(shè)計實(shí)現(xiàn)了智能水表抄表系統(tǒng),能夠更好地解決傳統(tǒng)水表抄表系統(tǒng)的傳輸距離短、覆蓋范圍小、穿透力不強(qiáng)、數(shù)據(jù)傳輸穩(wěn)定性差等問題[5]。本文在此基礎(chǔ)上,設(shè)計一種基于NB-IoT的區(qū)域空氣質(zhì)量監(jiān)測系統(tǒng),遠(yuǎn)程監(jiān)管平臺的管理人員可在地圖和數(shù)據(jù)列表中查看大區(qū)域范圍內(nèi)各個空氣質(zhì)量監(jiān)測節(jié)點(diǎn)的參數(shù)采集狀況和運(yùn)行狀態(tài),Android移動終端的使用人員同樣可在地圖和數(shù)據(jù)列表中查看權(quán)限范圍內(nèi)各個空氣質(zhì)量監(jiān)測節(jié)點(diǎn)的參數(shù)采集狀況和運(yùn)行狀態(tài),使得對區(qū)域范圍內(nèi)的空氣質(zhì)量監(jiān)測實(shí)時性提高、可監(jiān)管性增強(qiáng)。
本文設(shè)計的區(qū)域空氣質(zhì)量監(jiān)測系統(tǒng),包括:監(jiān)測節(jié)點(diǎn)、遠(yuǎn)程監(jiān)管平臺與Android移動終端,涵蓋物聯(lián)網(wǎng)技術(shù)的感知層、傳輸層與應(yīng)用層。系統(tǒng)功能架構(gòu)如圖1所示。

圖1 系統(tǒng)功能架構(gòu)圖
其中,各個監(jiān)測節(jié)點(diǎn)采集其所在位置的空氣質(zhì)量信息與位置信息,在固定時間內(nèi)將采集的信息通過NB-IoT網(wǎng)絡(luò)發(fā)送至遠(yuǎn)程監(jiān)管平臺,各個監(jiān)測節(jié)點(diǎn)能夠自我進(jìn)行檢測,在欠壓情況下發(fā)送遠(yuǎn)程報警信息至遠(yuǎn)程監(jiān)管平臺;遠(yuǎn)程監(jiān)管平臺能夠通過調(diào)用地圖顯示各個監(jiān)測節(jié)點(diǎn)的位置,點(diǎn)擊具體的節(jié)點(diǎn)查看實(shí)時的空氣質(zhì)量信息,各個監(jiān)測節(jié)點(diǎn)發(fā)送的空氣質(zhì)量信息與位置信息存儲到遠(yuǎn)程監(jiān)管平臺的本地數(shù)據(jù)庫中,通過選擇小區(qū)域范圍的節(jié)點(diǎn)完成授權(quán)數(shù)據(jù)至指定Android移動終端;Android移動終端能夠調(diào)用地圖顯示權(quán)限范圍內(nèi)各個監(jiān)測節(jié)點(diǎn)的位置,同樣點(diǎn)擊具體的節(jié)點(diǎn)查看實(shí)時的空氣質(zhì)量信息;系統(tǒng)在使用過程中可根據(jù)實(shí)際需求在遠(yuǎn)程監(jiān)管平臺和Android移動終端對指定監(jiān)測節(jié)點(diǎn)設(shè)置各空氣質(zhì)量參數(shù)的閾值,該監(jiān)測節(jié)點(diǎn)在達(dá)到該閾值后發(fā)送提示信息至遠(yuǎn)程監(jiān)管平臺。
系統(tǒng)的硬件設(shè)計部分主要是針對監(jiān)測節(jié)點(diǎn)的,其設(shè)計的效果影響整個系統(tǒng)運(yùn)行的高效性和可靠性[4]。監(jiān)測節(jié)點(diǎn)硬件設(shè)計包括3個部分,分別是:微處理器、通信模塊,傳感器模塊與避雷針模塊。其中,一個監(jiān)測節(jié)點(diǎn)的硬件結(jié)構(gòu)如圖2所示。

圖2 監(jiān)測節(jié)點(diǎn)硬件結(jié)構(gòu)圖
傳感器模塊包括:北斗定位模塊、甲醛濃度傳感器、惰性氣體傳感器、PM2.5傳感器、甲烷濃度傳感器、苯濃度傳感器、溫濕度傳感器與電能采集模塊。微處理器與傳感器模塊、通信模塊之間采用串口通信方式,同時電源模塊給監(jiān)測節(jié)點(diǎn)提供8 V直流電源,避雷針模塊保護(hù)監(jiān)測節(jié)點(diǎn)在戶外場景中免遭雷電擊損。監(jiān)測節(jié)點(diǎn)上電完成初始化配置,微控制器進(jìn)入待機(jī)模式等待定時器將其喚醒,通信模塊在設(shè)定時間內(nèi)處于PSM低功耗休眠模式;定時器到達(dá)時間觸發(fā)后,微控制器退出待機(jī)模式,開始控制傳感器模塊采集當(dāng)前的空氣質(zhì)量信息,完成一次采集后,將采集信息發(fā)送給通信模塊,再次進(jìn)入待機(jī)模式等待定時器觸發(fā);通信模塊在接收到采集信息后退出PSM模式,主控芯片通過AT指令將參數(shù)信息經(jīng)基站發(fā)送至遠(yuǎn)程監(jiān)管平臺,完成一次發(fā)送后再次進(jìn)入PSM模式。通信模塊在接收到遠(yuǎn)程監(jiān)管平臺發(fā)送的閾值信息后,退出PSM模式,主控芯片通過串口將閾值信息發(fā)送給微控制器后繼續(xù)進(jìn)入PSM模式,由微控制器開啟工作并進(jìn)行存儲。微控制器在定時器觸發(fā)采集空氣質(zhì)量信息的同時通過電能采集模塊獲取自身的電壓信息,電壓偏低時會在當(dāng)前空氣質(zhì)量信息的最后添加欠壓報警信息;同樣,在微控制器存儲各參數(shù)閾值情況下判斷某個參數(shù)到達(dá)設(shè)定閾值時,同樣在當(dāng)前空氣質(zhì)量信息的最后添加閾值提醒信息,當(dāng)同時存在報警信息與提示信息時,報警信息置于最后。
微控制器選用STM32F103RCT6型號單片機(jī),其電路原理如圖3所示。該型號單片機(jī)實(shí)際工作時處理數(shù)據(jù)的頻率可達(dá)72 MHz,具有256K字節(jié)系統(tǒng)可編程Flash存儲器,48K字節(jié)的RAM空間,可以通過CAN、I2C、UART、USB等方式控制外設(shè),同時具有9個通信接口[6],完全符合本文設(shè)計監(jiān)測系統(tǒng)對多個傳感器同時控制、對大量數(shù)據(jù)及時處理的需求,與此同時,剩余空間資源應(yīng)用于數(shù)據(jù)通信也顯得游刃有余。

圖3 STM32F103RCT6微控制器電路原理圖

圖4 NB-IoT通信模塊電路原理圖
圖4為NB-IoT模塊電路,該NB-IoT模塊電路選用BC95-B5模組。BC95模組通過串口RX/TX收發(fā)數(shù)據(jù),通過電信NB網(wǎng)絡(luò)將來自微控制器的采集信息發(fā)送至遠(yuǎn)程監(jiān)管平臺,并且接收來自遠(yuǎn)程監(jiān)管平臺發(fā)送的閾值設(shè)定信息。模塊主要包括以下幾個部分:BC95模組、電源指示、天線接口、USIM卡接口電路[7]。
電能模塊采用的是ATT7022B芯片,該芯片有3路電流采集、3路電壓采集。V1P/V1N是A相電流采集通道,V2P/V2N是A相電壓采集通道,V3P/V3N是B相電流采集通道,V4P/V4N是B相電壓采集通道,V5P/V5N是C相電壓采集通道,V6P/V6N是C相電流采集通道[8]。通過電流互感器采集每相電流的值,通過電阻分壓進(jìn)行電壓采集。圖5是一路電壓與電流的采集電路。
本文對傳感器模塊的選擇均遵循低功耗與安全穩(wěn)定原則。
北斗定位模塊選用K706-GNSS型號的高精度定位模塊。模塊尺寸小、重量輕、功耗低,板載8 G超大存儲空間可連續(xù)存儲超過100天的定位數(shù)據(jù),在正常情況下定位精度可達(dá)2厘米,滿足本文對監(jiān)測節(jié)點(diǎn)的精確定位需求。
采用MS1100傳感器模塊獲取甲醛濃度與苯濃度,該模塊體積小,可以檢測空氣中0.1 PPM以上的揮發(fā)氣體,芯片響應(yīng)速度快、數(shù)據(jù)檢測準(zhǔn)確。
選用MD62型號的傳感器采集氬氣等惰性氣體的濃度,模塊根據(jù)混合氣體的總導(dǎo)熱系數(shù)隨待分析氣體含量的不同而改變的原理制成,響應(yīng)快,具有良好的重復(fù)性,可在無氧、缺氧環(huán)境中檢測。
選用GP2Y1010AU0F型號的光學(xué)粉塵濃度檢測傳感器,傳感器利用光敏原理進(jìn)行工作,可以檢測體積細(xì)微的顆粒,如煙霧顆粒、灰塵顆粒等,主要依靠輸出脈沖的高度來判斷顆粒濃度。
選用MQ-4型號的甲烷濃度傳感器。該類型傳感器檢測到甲烷氣體時,會產(chǎn)生相應(yīng)的電壓值,并由模擬信號輸出端口(AO)輸出到MCU,甲烷濃度增大時,輸出端口的電壓值相應(yīng)的成比例增長。

圖5 一路電壓與電流采集電路原理圖
最后,本文選用DHT11型號的溫濕度傳感器,實(shí)現(xiàn)對所處環(huán)境的溫度與濕度同時進(jìn)行檢測,響應(yīng)時間短、精度高,在系統(tǒng)設(shè)計中得到廣泛應(yīng)用。
區(qū)域空氣質(zhì)量監(jiān)測系統(tǒng)軟件設(shè)計主要包括監(jiān)測節(jié)點(diǎn)微控制器的軟件設(shè)計、遠(yuǎn)程監(jiān)管平臺的軟件設(shè)計以及Android移動終端的軟件設(shè)計。
監(jiān)測節(jié)點(diǎn)軟件設(shè)計包括:主程序、節(jié)點(diǎn)服務(wù)程序、串口接收服務(wù)程序,主程序流程如圖6所示。

圖6 監(jiān)測節(jié)點(diǎn)軟件設(shè)計流程圖
主程序啟動后,首先對STM32微控制器的串口及定時器進(jìn)行初始化,然后對NB-IoT模塊進(jìn)行初始化,初始化完成后STM32微控制器與NB-IoT都進(jìn)入低功耗休眠模式[4]。定時器達(dá)到設(shè)定的時間后,STM32微控制器開始控制傳感器模塊完成當(dāng)前位置空氣質(zhì)量信息的定時采集,并按照規(guī)定的協(xié)議通過NB-IoT通信模塊將采集信息上傳至遠(yuǎn)程監(jiān)管平臺。同時,STM32微控制器對自身的電壓狀況進(jìn)行檢測,在欠壓時將報警信息添加至采集信息中進(jìn)行遠(yuǎn)程發(fā)送,STM32微控制器通過NB-IoT通信模塊判斷遠(yuǎn)程監(jiān)管平臺發(fā)送的閾值信息,并存儲到內(nèi)存中進(jìn)行定時判斷,判斷閾值溢出時也將提示信息添加至采集信息中進(jìn)行遠(yuǎn)程發(fā)送。
遠(yuǎn)程監(jiān)管平臺軟件采用C/S(客戶端/服務(wù)器)模式進(jìn)行設(shè)計,連接MySQL數(shù)據(jù)庫,采用C#語言在VisualStudio環(huán)境下設(shè)計開發(fā)[9]。遠(yuǎn)程監(jiān)管平臺在整個系統(tǒng)中起著“中轉(zhuǎn)站”的作用,一方面通過COAP協(xié)議接收來自監(jiān)測節(jié)點(diǎn)發(fā)送的采集信息,解析顯示并存儲到數(shù)據(jù)庫中,將設(shè)定的閾值信息反向傳輸給監(jiān)測節(jié)點(diǎn);另一方面,通過選定指定小區(qū)域下發(fā)該區(qū)域內(nèi)的監(jiān)測節(jié)點(diǎn)采集信息至指定Android移動終端,并接收移動終端上設(shè)定返回的閾值信息,最終發(fā)送至監(jiān)測節(jié)點(diǎn)。遠(yuǎn)程監(jiān)管平臺軟件包括登錄模塊、數(shù)據(jù)顯示模塊、閾值設(shè)定模塊、地圖模塊與歷史數(shù)據(jù)查詢模塊,其工作流程如圖7所示。

圖7 遠(yuǎn)程監(jiān)管平臺軟件設(shè)計流程圖
Android移動終端軟件的工作流程如圖8所示。

圖8 Android移動終端軟件設(shè)計流程圖
Android移動終端軟件包括登錄模塊、數(shù)據(jù)顯示模塊、地圖模塊與閾值設(shè)定模塊,主要為巡視人員設(shè)計,基于Java語言與AndroidStudio環(huán)境開發(fā)[10],與遠(yuǎn)程監(jiān)管平臺同樣采用C/S通信結(jié)構(gòu)與TCP/IP通信協(xié)議,實(shí)現(xiàn)對授權(quán)監(jiān)測節(jié)點(diǎn)采集信息的接收和數(shù)據(jù)解析顯示,在監(jiān)測節(jié)點(diǎn)欠壓或檢測閾值溢出時接收報警或提示信息,并能夠完成對指定監(jiān)測節(jié)點(diǎn)的閾值設(shè)定。
本文設(shè)計的系統(tǒng)已經(jīng)進(jìn)行了實(shí)際場景下的測試,具體來說,在黑龍江大學(xué)校園內(nèi)的不同地點(diǎn)分布放置7個監(jiān)測節(jié)點(diǎn),在遠(yuǎn)程監(jiān)管平臺上調(diào)用地圖可以查看其位置分布,點(diǎn)擊其中一個節(jié)點(diǎn),可以查看其實(shí)時的監(jiān)測數(shù)據(jù),并可對該節(jié)點(diǎn)的閾值進(jìn)行設(shè)定,點(diǎn)擊“歷史數(shù)據(jù)查詢”可以查看該節(jié)點(diǎn)正常運(yùn)行以來的所有采集數(shù)據(jù),遠(yuǎn)程監(jiān)管平臺的測試界面如圖9所示。將實(shí)驗(yàn)樓區(qū)域的1個監(jiān)測節(jié)點(diǎn)的權(quán)限下發(fā)至Android移動終端,在Android移動終端軟件上可以查看該節(jié)點(diǎn)的實(shí)時監(jiān)測信息,通過點(diǎn)擊具體的參數(shù)可以設(shè)定閾值,Android移動終端軟件測試界面如圖10所示。如此反復(fù)在遠(yuǎn)程監(jiān)管平臺和Android移動終端進(jìn)行循環(huán)測試,均正常運(yùn)行,表明系統(tǒng)穩(wěn)定可靠,達(dá)到了很好的預(yù)期效果。

圖9 遠(yuǎn)程監(jiān)管平臺軟件測試界面

圖10 Android移動終端軟件測試界面
針對現(xiàn)有場景中存在的區(qū)域范圍內(nèi)空氣質(zhì)量監(jiān)測機(jī)動性差、信息化程度低與管理不便等問題,考慮到現(xiàn)有檢測設(shè)備功能單一且移植性不高的問題,本文提出并設(shè)計了一種基于NB-IoT的區(qū)域空氣質(zhì)量監(jiān)測系統(tǒng),可以應(yīng)用于多場景監(jiān)測且適應(yīng)性強(qiáng)、靈活高效。設(shè)計的多個監(jiān)測節(jié)點(diǎn)采用STM32為微控制器,控制傳感器模塊實(shí)現(xiàn)對所在位置空氣質(zhì)量相關(guān)參數(shù)的實(shí)時檢測,并通過NB-IoT通信模塊發(fā)送至遠(yuǎn)程監(jiān)管平臺,在遠(yuǎn)程監(jiān)管平臺上實(shí)現(xiàn)對區(qū)域范圍內(nèi)空氣質(zhì)量的監(jiān)控與管理。同時,遠(yuǎn)程監(jiān)管平臺通過下發(fā)指定區(qū)域的權(quán)限至指定的Android移動終端,使得Android移動終端使用人員可以對權(quán)限范圍內(nèi)的空氣質(zhì)量狀況進(jìn)行監(jiān)控與管理。除此之外,考慮到本文設(shè)計系統(tǒng)實(shí)際可能應(yīng)用的多場景,系統(tǒng)保留有自我安全保護(hù)與報警功能,包括欠壓報警與避雷保護(hù)等,該系統(tǒng)助力推動智慧城市的實(shí)現(xiàn),長時間的數(shù)據(jù)收集也為大數(shù)據(jù)建立了基礎(chǔ),為建立智能決策系統(tǒng)提供了條件。