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