丁越昌,李 攀,林真友,曹文旭
1(西南科技大學(xué) 信息工程學(xué)院,綿陽 621010)
2(西南科技大學(xué) 經(jīng)濟管理學(xué)院,綿陽 621010)
當前,我國工業(yè)、生活廢水排放問題明顯,廢水不僅會污染水域,破壞生態(tài)平衡,也會危害動植物健康.并且,我國存在許多需要監(jiān)測水質(zhì)但難以實行的區(qū)域,如公共流域、生態(tài)區(qū)、水產(chǎn)業(yè)、農(nóng)業(yè)等,但目前主要依靠人工采樣、大型設(shè)備等方式進行監(jiān)測,這些方式存在監(jiān)測范圍小、效率低、成本高等許多問題,無法滿足我國污水水域的數(shù)量多、范圍廣的需求.
目前國內(nèi)董浩等學(xué)者研究了一種實現(xiàn)水質(zhì)實時監(jiān)測、進出水自動控制、二次利用水量統(tǒng)計的水質(zhì)監(jiān)測系統(tǒng)[1];國外則較少學(xué)者研究此類課題,有Arif U.Alam等學(xué)者設(shè)計了一種測量pH、溫度、游離氯的集成測量設(shè)備[2],但他們都并未研究多節(jié)點分布監(jiān)測、云端大數(shù)據(jù)分析等內(nèi)容.隨著物聯(lián)網(wǎng)、大數(shù)據(jù)、云計算等高新技術(shù)迅速發(fā)展,萬物智能互聯(lián)已經(jīng)變得觸手可及,智慧概念[3]融入了生活方方面面.
綜合上述,本項目立意于“互聯(lián)網(wǎng)+環(huán)境”的環(huán)境治理和可持續(xù)發(fā)展狀況,綜合運用傳感采集、無線通訊、物聯(lián)網(wǎng)、大數(shù)據(jù)挖掘處理與可視化等技術(shù),致力構(gòu)建“水域天網(wǎng)”,希望改善依靠傳統(tǒng)方式監(jiān)測范圍小、效率低,或難安裝、成本高等問題,改善我國廢水排放量大,且很多流域難以監(jiān)測的現(xiàn)狀,簡化水質(zhì)監(jiān)測過程,提高單位經(jīng)濟效益與我國水質(zhì)監(jiān)測與治理進程.
系統(tǒng)整體框架如圖1所示,包含感知層、網(wǎng)絡(luò)傳輸層、應(yīng)用層.感知層由傳感器與ZigBee組成,負責(zé)采集一定范圍的指標數(shù)據(jù).網(wǎng)絡(luò)傳輸層包括ZigBee無線傳感網(wǎng)絡(luò)、RS485通信、GPRS/4G通信、TCP/IP通信、HTTP傳輸,是一種多重復(fù)合的數(shù)據(jù)傳輸路徑.應(yīng)用層即云端大數(shù)據(jù)平臺[4],實現(xiàn)設(shè)備定位監(jiān)控,設(shè)備添加,數(shù)據(jù)通信,大數(shù)據(jù)處理、挖掘分析、儲存,圖表分析展示等功能.
圖1 系統(tǒng)整體設(shè)計結(jié)構(gòu)圖
水質(zhì)數(shù)據(jù)由各傳感器采集后,傳輸?shù)絑igBee的數(shù)據(jù)采集通道[5].ZigBee對數(shù)據(jù)進行濾波、轉(zhuǎn)換等處理后,通過無線組網(wǎng)技術(shù),實現(xiàn)數(shù)據(jù)在多個節(jié)點間無線傳輸.協(xié)調(diào)器負責(zé)接收組網(wǎng)中各節(jié)點的信息,將數(shù)據(jù)處理成一定格式報文后,通過RS485傳輸給STM32嵌入式系統(tǒng).嵌入式系統(tǒng)將信息處理分析后,進行可視化顯示,并判定指標情況,若異常則驅(qū)動LED和蜂鳴器報警;然后嵌入式系統(tǒng)將數(shù)據(jù)處理成報文格式,利用USART2,發(fā)送包含控制指令和數(shù)據(jù)的報文給GPRS/4G模塊,控制模塊激活和聯(lián)網(wǎng),與云端服務(wù)器進行數(shù)據(jù)交互.云端服務(wù)器接收數(shù)據(jù)后,先保存在數(shù)據(jù)庫,再利用Python科學(xué)框架和算法進行大數(shù)據(jù)處理分析,分析結(jié)果由前端圖表和UI大屏界面通過HTTP協(xié)議、TCP/IP協(xié)議調(diào)用,進行可視化分析.
E-201-PH電極,采用玻球測量法測量pH,其接口電路設(shè)計成以模擬電壓輸出,并設(shè)計了DS18B20溫度傳感器總線接口,用于測量液體溫度值,也用作溫度補償算法.
GE-TS渾濁度探頭,帶溫度補償,以0~4.5 V模擬信號輸出,因ZigBee的ADC只能識別3.3 V以內(nèi),所以接口電路需將0~4.5 V模擬電壓分壓后,才能輸入ZigBee的ADC通道.
電導(dǎo)率傳感器為TDS探頭,以串口TTL信號輸出,所以需要利用ZigBee的串口給TDS模塊發(fā)送指令,使其返回一定格式的數(shù)據(jù),再將數(shù)據(jù)提取、計算,來得到電導(dǎo)率數(shù)據(jù).
STM32自帶AD/DA轉(zhuǎn)換和多個串口,支持低功耗模式,所以本系統(tǒng)選用STM32作為終端系統(tǒng).圖2是STM32 BOOT啟動模式電路.STM32需要使用RS485與協(xié)調(diào)器進行數(shù)據(jù)傳輸.其接收協(xié)調(diào)器數(shù)據(jù)并處理完后,在LCD屏幕上顯示,并判斷指標是否異常,然后通過串口2發(fā)送報文給GPRS模塊,來控制模塊連接網(wǎng)絡(luò),與云端實現(xiàn)數(shù)據(jù)交互.
圖2 STM32 BOOT啟動模式電路
嵌入式系統(tǒng)設(shè)計包括最小系統(tǒng)和外圍電路兩部分,最小系統(tǒng)設(shè)計有3.3 V供電模塊、復(fù)位電路、12 MHz時鐘電路、BOOT模式選擇電路.外圍電路主要有EEPROM儲存模塊、LCD顯示屏、LED、蜂鳴器、按鍵、串口、GPRS/4G模塊,以實現(xiàn)本文要求的功能.設(shè)計原理圖如圖3所示(參考了正點原子).
TI CC2530自帶8路8~14位ADC,可引出多個I/O口拓展,可實現(xiàn)多節(jié)點組網(wǎng)傳輸,且功耗極低,所以本系統(tǒng)采用TI CC2530芯片作為ZigBee.
ZigBee硬件設(shè)計包括CC2530核心模塊和外圍電路.核心模塊設(shè)計了復(fù)位電路、32 MHz時鐘、3.3 V供電模塊,并引出RF接口外接功放天線來增加傳輸距離.外圍電路主要有LCD顯示屏、LED、串口、下載口、IO口引出.傳感器接口選擇P0.7作為DS18B20通信接口;P0.5作為ADC通道,讀取渾濁度、PH傳感
器信號(如圖4);P0.2 (RX)、P0.3 (TX)作為串口,采用CH340模塊通信(如圖5),來讀取電導(dǎo)率數(shù)據(jù).CC2530核心模塊設(shè)計[6]原理圖如圖6所示.
本系統(tǒng)可采集溫度、渾濁度、電導(dǎo)率、pH值4個指標,而ZigBee的多節(jié)點組網(wǎng)特性,使其可根據(jù)實際需求,拓展增加其他指標和監(jiān)測節(jié)點,所以該電路在設(shè)計時,引出了許多常用I/O接口,以提高其靈活性.
圖3 嵌入式系統(tǒng)原理圖
圖4 傳感器連接通道
水質(zhì)傳感器采集到的信號經(jīng)過轉(zhuǎn)換電路后,轉(zhuǎn)換為標準模擬信號、TTL信號等可讀取形式,然后由ZigBee通過ADC通道讀取.經(jīng)測試發(fā)現(xiàn),采集時可能出現(xiàn)無規(guī)律的干擾信號,且因采集的信號不是快速變化的,所以系統(tǒng)應(yīng)采用防脈沖干擾平均濾波法進行濾波.濾波后,利用AD轉(zhuǎn)換公式將AD值轉(zhuǎn)換為電壓值,再利用經(jīng)過擬合優(yōu)化的轉(zhuǎn)換模型,將電壓值轉(zhuǎn)換為對應(yīng)指標值;電導(dǎo)率采集則由ZigBee通過串口給傳感器發(fā)送一定格式的指令,使其返回一定格式報文,然后提取出報文中的數(shù)據(jù),進行計算即可.ZigBee讀取和處理數(shù)據(jù)的程序流程如圖7.
對于一片流域,監(jiān)測點選取需要考慮的因素有水域的距離、面積、水質(zhì)變化梯度等.因此,在考慮功耗、水域面積、節(jié)約成本、范圍靈活等因素后,本系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)選擇了樹狀網(wǎng)絡(luò)拓撲.另外,我們研究了水域范圍特點,并據(jù)此修改了硬件布局和功放 ,同時優(yōu)化組網(wǎng)的搜索、傳輸跳轉(zhuǎn)機制,使傳輸距離達到了350~650 m,這個距離比較適合水質(zhì)變化梯度特點.
圖6 ZigBee核心模塊原理圖
圖7 ZigBee數(shù)據(jù)采集、處理、發(fā)送數(shù)據(jù)程序流程
樹狀拓撲結(jié)構(gòu)包括一個協(xié)調(diào)器(Co-ordinator),以及一系列路由器(Router)和終端節(jié)點(End Device).協(xié)調(diào)器連接一系列路由器和終端節(jié)點,協(xié)調(diào)器下的子路由也可以連接一系列路由和終端節(jié)點[7],這樣可重復(fù)多個層級,每個層級由一個路由器主管和中轉(zhuǎn),負責(zé)監(jiān)視一塊區(qū)域,最后將數(shù)據(jù)匯總到協(xié)調(diào)器.此結(jié)構(gòu)科學(xué)合理,可支持約300個網(wǎng)絡(luò)節(jié)點,支持拓展其他監(jiān)測點和指標,適用于大部分水域范圍,基本滿足城市內(nèi)的監(jiān)測點要求,可搭建“水域天網(wǎng)系統(tǒng)”.樹形拓撲的結(jié)構(gòu)如下圖8所示.
ZigBee在激活后,按如下順序執(zhí)行相應(yīng)程序:硬件和軟件初始化、運行系統(tǒng)、網(wǎng)絡(luò)初始化、加入網(wǎng)絡(luò)、完成組網(wǎng).實現(xiàn)組網(wǎng)后,進入輪詢狀態(tài),等待發(fā)送和接收事件,其組網(wǎng)的程序流程如圖9所示.
本系統(tǒng)的數(shù)據(jù)傳輸報文設(shè)計如圖10所示,Rx:為路由器編號,Ex:為終端節(jié)點編號.路由器R1負責(zé)傳輸自身采集的數(shù)據(jù),也負責(zé)中轉(zhuǎn)其分支節(jié)點E1、E2的報文;其他路由和節(jié)點同理.協(xié)調(diào)器負責(zé)接收所有節(jié)點和路由的報文,并封裝報文格式,發(fā)給STM32,由STM32通過GPRS/4G網(wǎng)絡(luò)的TCP連接上傳云端,其部分代碼如圖11.
圖8 ZigBee樹形拓撲的結(jié)構(gòu)
云端大數(shù)據(jù)平臺是系統(tǒng)構(gòu)架中的應(yīng)用支持層,核心功能包括用戶注冊,設(shè)備添加、定位,數(shù)據(jù)通信,數(shù)據(jù)處理、分析、展示等.另外,云端使用分布式儲存技術(shù),以支持多用戶多設(shè)備注冊;設(shè)計了PC端、移動端的頁面兼容;設(shè)定了多種接口和協(xié)議(TCP/IP、HTTP、MODBUS等),以提高兼容性、靈活性,方便更多其他的用戶和設(shè)備,按照協(xié)議接入使用云端,組建天網(wǎng)監(jiān)測.云端通過調(diào)用百度地圖API定位和繪制熱力分布圖統(tǒng)一觀測各個區(qū)域(如圖12、圖13),支持選擇不同的監(jiān)測區(qū)域,來詳細查看當?shù)厮|(zhì)情況.
圖9 ZigBee樹形組網(wǎng)程序?qū)崿F(xiàn)流程
圖10 數(shù)據(jù)傳輸報文格式
圖11 連接IP端口和發(fā)送數(shù)據(jù)部分代碼
大數(shù)據(jù)分析采用Python的Pandas、Numpy等技術(shù),進行數(shù)據(jù)挖掘建模[8],利用回歸分析和貝葉斯算法[9],分析數(shù)據(jù)的分布點特征和關(guān)聯(lián)因素,分析影響因素規(guī)律,進而分析水質(zhì)變化原因,推算影響因素指標.UI界面基于ONENET平臺搭建,繪制多種統(tǒng)計圖表,設(shè)計UI大屏統(tǒng)一展示,前端通過HTTP、TCP協(xié)議調(diào)用分析結(jié)果,將數(shù)據(jù)趨勢、統(tǒng)計情況、天氣等情況統(tǒng)一分析并展示,更科學(xué)、精準地分析水質(zhì)情況和有害因素,達到提前預(yù)警和加快反應(yīng)的效果.物聯(lián)網(wǎng)、大數(shù)據(jù)、UI大屏統(tǒng)一監(jiān)測管理屬于新技術(shù)前沿.
為測試數(shù)據(jù)準確性,本實驗配置了3份pH標準溶液,其他指標采用現(xiàn)有儀器測量,作為參考標準值,來進行數(shù)據(jù)測試對比.測量pH值界面如圖14所示,各指標測量值與標準值對比結(jié)果如表1所示.
該系統(tǒng)運行測試在校內(nèi)幾個湖泊進行.經(jīng)實際測試,系統(tǒng)工作功耗低至22~38 mA,各節(jié)點正常采集、傳輸數(shù)據(jù),并在屏幕顯示;整體數(shù)據(jù)傳輸路徑正常,丟包率0.88%;數(shù)據(jù)庫存儲、調(diào)用正常;云端大數(shù)據(jù)分析、UI大屏、統(tǒng)計圖表正常運行;各功能模塊均測試正常,系統(tǒng)整體測試通過.系統(tǒng)性能測試及分析如表2所示,云端大數(shù)據(jù)平臺效果如圖12、圖13所示.
圖12 農(nóng)夫山泉純凈水pH和溫度測量
圖13 云端UI大屏和統(tǒng)計圖表界面
在實際大型流域場景中,本系統(tǒng)可如圖15的示例,進行布置監(jiān)測.在該流域示例中,可以分別在上游、中游、下游布置一套系統(tǒng).如有一些有實際特殊需求的位置,可根據(jù)實際情況增加指標和監(jiān)測點.
本項目基于多種水質(zhì)傳感器、ZigBee無線傳感網(wǎng)絡(luò)、嵌入式系統(tǒng)、GPRS/4G、云端、大數(shù)據(jù)挖掘分析等技術(shù)手段,設(shè)計了一種基于物聯(lián)網(wǎng)和大數(shù)據(jù)的分布式水域天網(wǎng)監(jiān)測系統(tǒng).系統(tǒng)方案推論設(shè)計合理,系統(tǒng)結(jié)構(gòu)合理,功能完善,實現(xiàn)了一種新型的低成本、節(jié)能低功耗、靈活易拓展、適用性普及性強的監(jiān)測系統(tǒng).多重數(shù)據(jù)傳輸路徑,使數(shù)據(jù)傳輸更高效穩(wěn)定,且適合水質(zhì)梯度變化特點,有效擴大監(jiān)測范圍,可用于江流、廠業(yè)區(qū)、城市水路、水產(chǎn)品養(yǎng)殖業(yè)、農(nóng)業(yè)、風(fēng)景園林生態(tài)區(qū)等.
圖14 云端平臺監(jiān)控界面2
表1 測試數(shù)據(jù)對比表
表2 系統(tǒng)性能測試表
經(jīng)各功能模塊和整體系統(tǒng)聯(lián)調(diào)測試,系統(tǒng)實現(xiàn)了污水狀態(tài)多地分布式監(jiān)控、預(yù)警、大數(shù)據(jù)UI大屏分析、多種科學(xué)圖表可視化,能科學(xué)地分析水質(zhì)情況,分析有害因素,加快預(yù)警和反應(yīng)速度,簡化水質(zhì)監(jiān)測過程.本項目在改善我國污水排放量大、水域多且難以監(jiān)測等問題,提高單位經(jīng)濟效益與我國水質(zhì)監(jiān)測治理進程方面,有著廣闊的發(fā)展前景與實際應(yīng)用價值.
圖15 某流域搭建監(jiān)測區(qū)示例