孟莉莉 吳旦鈞 藍建平
(1.嘉興職業(yè)技術(shù)學(xué)院 浙江省嘉興市 314036 2.浙江嘉科新能源科技有限公司 浙江省嘉興市 314001)
隨著國家經(jīng)濟高速發(fā)展,城市化和工業(yè)化程度的不斷提高,由此帶來的水體污染、水生態(tài)破壞等水環(huán)境問題也逐漸凸顯,各類用水主體大量使用水資源、向河湖排放污水,嚴重破壞了水環(huán)境。“綠水青山就是金山銀山”,鑒于水環(huán)境治理問題的急迫性,各地都在實施水環(huán)境的全過程監(jiān)管、全體系治理。在水污染防治中,水環(huán)境的實時監(jiān)測是核心內(nèi)容之一,是實現(xiàn)全方位、全覆蓋污水防治目標的關(guān)鍵。而水質(zhì)監(jiān)測又面臨產(chǎn)生源分散、數(shù)量多、分布廣、不易監(jiān)測等不利因素,為實現(xiàn)對各分散式水質(zhì)測點的統(tǒng)一監(jiān)測,本文設(shè)計并實現(xiàn)了一種基于NB-IoT的分布式水質(zhì)監(jiān)測系統(tǒng),以實現(xiàn)分布式水環(huán)境的統(tǒng)一實時監(jiān)測、遠程設(shè)備管理與智能控制以及故障報警和維護功能,同時,采用融合算法對采集的傳感器感知數(shù)據(jù)進行處理,以達到減少網(wǎng)絡(luò)流量和提高數(shù)據(jù)準確性的目的。
NB-IoT,即窄帶物聯(lián)網(wǎng),是一種基于LTE蜂窩移動網(wǎng)絡(luò)的物聯(lián)網(wǎng)通信技術(shù),支持低功耗設(shè)備在廣域網(wǎng)的蜂窩數(shù)據(jù)連接,基于3GPP標準,是物聯(lián)網(wǎng)技術(shù)領(lǐng)域的一項革命性的創(chuàng)新技術(shù)。NB-IoT聚焦于低功耗廣覆蓋物聯(lián)網(wǎng)應(yīng)用場景,使用了重傳等方式,以犧牲一些速率和時延等特性,換取網(wǎng)絡(luò)的承載能力和低功耗,降低系統(tǒng)的建設(shè)開發(fā)成本,相比傳統(tǒng)的移動網(wǎng)絡(luò),具有覆蓋區(qū)域大、連接海量、低功耗、安全性高和成本低等特點,對于信號難以傳送到達的地方,比如下水道、地下車庫等等也能有較好的覆蓋效果。由于其具有的技術(shù)優(yōu)勢,NB-IoT技術(shù)目前在環(huán)境監(jiān)測、智慧抄表、智慧停車、智能路燈、共享單車、智慧農(nóng)業(yè)等低功耗、小數(shù)據(jù)和大覆蓋的智能監(jiān)控領(lǐng)域都有成功應(yīng)用案例,非常適用于分布式水質(zhì)監(jiān)測系統(tǒng)中的網(wǎng)絡(luò)構(gòu)建。
系統(tǒng)基于NB-IoT構(gòu)建通信網(wǎng)絡(luò),網(wǎng)絡(luò)整體架構(gòu)分為感知層、平臺層、服務(wù)層和應(yīng)用層,如圖1所示。感知層包括基于NB-IoT的智能控制器、水質(zhì)處理設(shè)備和PH值、電導(dǎo)率、溶解氧、氨氮、總磷等水質(zhì)檢測傳感器,負責水質(zhì)數(shù)據(jù)采集、水質(zhì)處理設(shè)備控制以及數(shù)據(jù)的實時監(jiān)測;平臺層包括可供設(shè)備接入的NB-IoT基站和物聯(lián)網(wǎng)平臺,其中物聯(lián)網(wǎng)平臺采用國內(nèi)運營商提供的成熟物聯(lián)網(wǎng)平臺,可保證平臺的高并發(fā)和高可靠性。服務(wù)層構(gòu)建于云平臺之上,提供業(yè)務(wù)數(shù)據(jù)的本地持久化和各種業(yè)務(wù)處理邏輯的支持,采用目前流行的微服務(wù)架構(gòu)開發(fā),使用docker容器部署在web服務(wù)器中,數(shù)據(jù)庫使用實時數(shù)據(jù)庫存儲檢測的實時數(shù)據(jù),使用mysql數(shù)據(jù)庫系統(tǒng)存儲用戶、權(quán)限、站點、設(shè)備等信息。應(yīng)用層支持移動端和web應(yīng)用,提供給用戶監(jiān)測數(shù)據(jù)顯示、設(shè)備控制和水質(zhì)評價等功能。
圖1:基于NB-IoT水質(zhì)監(jiān)測系統(tǒng)整體架構(gòu)
智能控制器是感知層的核心,通過傳感器采集水溫、pH值、電導(dǎo)率、溶解氧等水質(zhì)數(shù)據(jù)和設(shè)備狀態(tài),控制水質(zhì)處理設(shè)備的運行,并通過NB-IoT模組將數(shù)據(jù)上傳到物聯(lián)網(wǎng)云平臺。智能控制器包括電源模塊、主控制器、傳感器接口、水質(zhì)處理設(shè)備驅(qū)動模塊和NB-IoT模塊組成,設(shè)計圖如圖2所示。
圖2:智能控制器設(shè)計圖
主控制器采用意法半導(dǎo)體公司的STM32F103系列芯片,具有32位ARM微處理器,工作頻率最高可達72MHz,支持IC、CAN、SPI、SDIO、USART等多種通信接口,工作性能穩(wěn)定。NB模組采用Lierda公司NB86系列模塊設(shè)計,該模塊基于華為海思的Boudica芯片,符合3GPP標準,支持多頻段,具有體積小、功耗低、傳輸距離遠、抗干擾能力強等特點。NB模塊通過USART接口和主控制器連接,并配有USIM卡和射頻天線。
在軟件設(shè)計上,智能控制器MCU定期采集傳感器數(shù)據(jù),并通過分析數(shù)據(jù),自動控制水質(zhì)處理設(shè)備的開啟或關(guān)閉,同時,通過CoAp協(xié)議定期上傳數(shù)據(jù)到物聯(lián)網(wǎng)云平臺上。CoAp協(xié)議是一種適用于資源受限型網(wǎng)絡(luò),基于REST架構(gòu)的應(yīng)用層協(xié)議,特別適用于物聯(lián)網(wǎng)中。智能控制器上電后,首先進行MCU及外設(shè)的初始化操作,然后啟動數(shù)據(jù)采集進程,按照設(shè)定的采集周期循環(huán)采集各傳感器數(shù)據(jù),對數(shù)據(jù)進行濾波等處理后存入Flash芯片,并對處理后數(shù)據(jù)進行分析,控制水質(zhì)處理設(shè)備狀態(tài)。系統(tǒng)每隔一定時間將采集的數(shù)據(jù)和水質(zhì)控制器狀態(tài)通過USART發(fā)送到NB-IoT模組,再上傳到物聯(lián)網(wǎng)云平臺中,智能控制器軟件工作流程如圖3所示。
圖3:智能控制器軟件工作流程圖
3.3.1 監(jiān)測數(shù)據(jù)預(yù)處理
由于水質(zhì)監(jiān)測區(qū)域的環(huán)境比較復(fù)雜,傳感器節(jié)點受到外界環(huán)境的影響,采集到的數(shù)據(jù)容易存在誤差,甚至失真,所以首先需要對采集到的數(shù)據(jù)進行預(yù)處理,剔除各傳感器采集的可疑值,去除粗大誤差,克服因偶然因素引起的波動干擾,以保證數(shù)據(jù)的精度和可靠性。常用的去除粗大誤差的方法有拉依達準則、格拉布斯準則、狄克遜準則等。拉依達法則無需查表,使用較為簡單,但適用于監(jiān)測數(shù)據(jù)量較大、對精度要求不高時的粗大誤差剔除處理,數(shù)據(jù)量較小時適應(yīng)性不高。狄克遜準則是一種使用極差比雙側(cè)檢驗來判別粗大誤差的方法,當測量數(shù)據(jù)中只存在一個異常值時效果較好,當出現(xiàn)多個同側(cè)異常值時檢驗效果不理想,尤其是異常數(shù)據(jù)較為接近時容易受到屏蔽。格拉布斯準則適用于樣本數(shù)量較小時的粗差分析,在監(jiān)測數(shù)據(jù)量較少時,準確性較高。在水質(zhì)監(jiān)測系統(tǒng)中,對水質(zhì)變化監(jiān)測的實時性要求不是很高,為了降低通信數(shù)據(jù)的網(wǎng)絡(luò)流量,在單位時間內(nèi)傳感器數(shù)據(jù)采樣不宜太頻繁,因此,選用格拉布斯準則去除粗大誤差。
設(shè)x(i=1,2,…,n)為節(jié)點單位時間內(nèi)測量數(shù)據(jù),那么其算術(shù)平均值為:
根據(jù)貝塞爾公式得出此組數(shù)據(jù)的標準差為:
3.3.2 數(shù)據(jù)融合
雖然對水質(zhì)監(jiān)測數(shù)據(jù)進行了預(yù)處理,去除了粗大誤差,提高了數(shù)據(jù)的準確率,但是由于傳感器特性及環(huán)境因素影響,監(jiān)測數(shù)據(jù)中不可避免的存在一定數(shù)量的偏差,卡爾曼濾波 又稱最優(yōu)化自回歸數(shù)據(jù)處理算法,是一種基于狀態(tài)變量線性最小方差的估計算法,主要用于實時動態(tài)數(shù)據(jù)融合,可以較好的減少噪聲誤差,使測量值更接近于真實值。
卡爾曼濾波算法主要步驟如下:
構(gòu)建系統(tǒng)狀態(tài)空間模型,描述為:
系統(tǒng)的測量值描述為:
上兩式中,X(k)、X(k-1)分別是k 、k-1時刻的系統(tǒng)狀態(tài)值,U(k)是k時刻系統(tǒng)的控制量,A、B是狀態(tài)轉(zhuǎn)移矩陣,Z(k)是k時刻的測量值,H是測量矩陣。W(k)和V(k)分別表示過程、觀測噪聲。
根據(jù)式(4)進行狀態(tài)預(yù)測,基于k-1時刻狀態(tài)最優(yōu)值X(k-1|k-1)預(yù)測k時刻的狀態(tài):
X(k|k-1)對應(yīng)的協(xié)方差為:
式(6)、(7)為系統(tǒng)的預(yù)測值,結(jié)合系統(tǒng)的測量值,得到k時刻的最優(yōu)化估算值:
其中K(k)為卡爾曼增益:
然后,再更新k時刻最優(yōu)估算值的協(xié)方差:
至此,算法就可以自回歸迭代下去。由此可見,卡爾曼濾波是依據(jù)前一時刻的估計值、當前時刻的觀測值和噪聲來計算當前的最優(yōu)值。
3.3.3 仿真驗證
采集系統(tǒng)中溶解氧傳感器監(jiān)測的數(shù)據(jù),對之進行數(shù)據(jù)融合驗證。溶解氧數(shù)據(jù)如表1所示,首先用格拉布斯準則對測量數(shù)據(jù)進行數(shù)據(jù)預(yù)處理,其中n為20,α取0.05,計算得出的數(shù)值如表2所示,可以看出第10個樣本數(shù)據(jù)計算出的值為2.56,大于2.557的格拉布斯判別系數(shù),則此監(jiān)測數(shù)據(jù)被剔除。然后對剩余的19組數(shù)據(jù)進行卡爾曼濾波,輸出溶解氧傳感器的融合結(jié)果,如表3所示。從表中可以看出,在樣本數(shù)量接近20時,融合值也能較好的去除偏差,將噪聲影響降到最低,有效反應(yīng)出監(jiān)測數(shù)據(jù)的真實值。MCU在達到上報周期時,使用周期內(nèi)融合后的數(shù)據(jù)取平均值作為監(jiān)測結(jié)果通過NB-IoT模組發(fā)送給物聯(lián)網(wǎng)云平臺。
表1:傳感器測量值
表2:數(shù)據(jù)預(yù)處理計算的判別值
表3:測量數(shù)據(jù)的融合結(jié)果
系統(tǒng)在物聯(lián)網(wǎng)云平臺上,構(gòu)建了服務(wù)層和應(yīng)用層。服務(wù)層實現(xiàn)業(yè)務(wù)邏輯控制,同時使用物聯(lián)網(wǎng)云平臺提供的接口獲取監(jiān)測數(shù)據(jù),處理后存入數(shù)據(jù)庫中實現(xiàn)數(shù)據(jù)的本地持久化。該層使用目前流行的微服務(wù)架構(gòu)開發(fā),具有獨立部署、可擴展性、快速迭代、容錯性、易于開發(fā)等優(yōu)點。在數(shù)據(jù)持久化方面,由于實時監(jiān)測數(shù)據(jù)更新快、數(shù)據(jù)量大,且保存時間較長,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫無法適應(yīng)水質(zhì)監(jiān)測數(shù)據(jù)的檢索和存儲要求,因此對于實時監(jiān)測數(shù)據(jù),采用實時數(shù)據(jù)庫來存儲,便于數(shù)據(jù)的持久化和后期數(shù)據(jù)分析。系統(tǒng)軟件功能圖如圖4所示,其中用戶管理模塊主要完成帳號的注冊以及用戶的登錄和角色、權(quán)限管理等功能,用戶類型分為普通用戶和管理員,普通用戶可以查看自己站點的實時監(jiān)測數(shù)據(jù)、設(shè)備狀態(tài)以及水質(zhì)監(jiān)測報表和設(shè)備運行報表,管理員用戶可以添加、管理站點、進行設(shè)備控制管理和故障、告警管理;報表管理模塊根據(jù)查詢條件完成各監(jiān)測點設(shè)備運行狀態(tài)數(shù)據(jù)統(tǒng)計報表和水質(zhì)檢測結(jié)果數(shù)據(jù)統(tǒng)計功能;故障與告警管理模塊主要實現(xiàn)各傳感器和設(shè)備故障的顯示、報警和維修狀態(tài)顯示以及水質(zhì)告警等功能;數(shù)據(jù)監(jiān)測模塊則現(xiàn)實各傳感器檢測的實時數(shù)據(jù)以及監(jiān)測點視頻監(jiān)控,并根據(jù)檢測數(shù)據(jù)進行分析,自動控制設(shè)備的開啟和停用。
圖4:系統(tǒng)軟件功能圖
目前智慧環(huán)保建設(shè)已經(jīng)上升到國家的經(jīng)濟、科技戰(zhàn)略層面,水務(wù)管理是環(huán)保管理的重要組成部分,統(tǒng)一的水質(zhì)實時檢測處理平臺是智慧水務(wù)建設(shè)中重要環(huán)節(jié)之一,本系統(tǒng)基于NB-IoT網(wǎng)絡(luò)通信架構(gòu),針對分散式水源,構(gòu)建了統(tǒng)一的水質(zhì)監(jiān)測處理平臺,并采用融合算法對傳感器監(jiān)測數(shù)據(jù)進行融合,減少誤差,提高了監(jiān)測數(shù)據(jù)精度并降低了網(wǎng)絡(luò)流量,從而實現(xiàn)了分布式水質(zhì)處理系統(tǒng)的實時監(jiān)測、遠程設(shè)備管理與智能控制以及故障報警和維護功能,為智慧水務(wù)的建設(shè)提供了有力的支撐。