王宇軒 韓彬彬 郝張紅 李坤堯
(天津天獅學院信息科學與工程學院,天津 301700)
湖泊和水庫水是我國城市居民生活用水的主要來源之一,然而隨著工業的迅速發展,很多沒能有效處理的工業廢水和生活污水都會被直接或間接的排放到河流湖泊當中,加劇了水質的污染,給人們的日常生活以及生產帶來了十分嚴重的危害,如何解決水質污染的問題,已成為了我國可持續發展和和科學戰略發展的重要課題之一。當前有不少的水質監測的方式,但大都離不開人力,過程復雜,成本高,周期長,往往都需要人工采樣或人工采集數據,不能實時查看,十分不便。因此設計了一款使用便捷的遠程水質實時監測系統,下位機實時采集數據,上位機實時顯示并儲存數據,克服了周期長、成本高、耗費人力物力等問題。
本系統主要實現遠程實時監測水質的變化以及判斷水質是否污染。本系統包含主控模塊、水質檢測模塊、取樣及采樣模塊、無線傳輸模塊、太陽能供電模塊以及上位機部分等。主控模塊負責控制下位機各個模塊的運行,水質檢測模塊負責檢測被測水樣的水質信息,取樣及采樣模塊負責采集水樣,無線傳輸模塊負責將水質信息傳輸到上位機,上位機部分負責收集信息并實時顯示。系統框圖如1所示。
本系統主要滿足了用戶遠程實時監測水質變化的需求。本設計的主控芯片選擇的是AT mega2560芯片,用戶可以通過訪問域名直接實現對下位機所在位置水質情況的實時監控。下位機可按照指定的時間間隔自動檢測水質并自動將水質參數發送到上位機,最后用戶可通過域名登錄系統實時查看水質信息,這種監測形式減少了對人力和物力的需求。
其下位機硬件部分主要由主控模塊、水樣采集模塊、無線傳輸模塊、水質檢測模塊、太陽能供電模塊等電路模塊組成。主控模塊是下位機的核心,負責檢測時間間隔控制、信號轉換與計算以及協調其余模塊;水樣采集模塊負責在水質檢測前抽取水樣,水質檢測后排出水樣或保存污染水樣;水質檢測模塊負責抽取水樣完成后檢測水樣并將檢測到的水質信息傳回主控模塊;無線傳輸模塊負責將水質信息發送給上位機,并在污染后短信報警。下位機硬件設計的總框圖,如圖2所示。

圖1 系統框圖Fig.1 System block diagram

圖2 下位機硬件設計總框圖Fig.2 General block diagram of lower computer hardware design
Arduino mega2560是一款性能強悍,功耗極低的基于Microchip 8位AVR RISC的微控制器。該器件在16MHz時可達到16MIPS的數據吞吐量,工作電壓在4.5V~5.5V之間。
水質檢測模塊主要由溫度傳感器(三極管封裝和防水封裝,分別用來測環境溫度和水溫)、PH傳感器、濁度傳感器、電導率(TDS)傳感器、顏色傳感器組成。當幾個傳感器檢測后會將結果分別通過數字引腳或模擬引腳傳遞給Arduino mega2560開發板進行后續處理。
(1)溫度傳感器。DS18B20是一款數字溫度傳感器,它輸出的是數字信號,體積小,成本低,接線簡單,使用方便,抗干擾能力強,檢測精度高且封裝形式豐富。其內部有4個主要的數據部件:光刻ROM中的64位序列號、內部存儲器、配置寄存器以及溫度傳感器。其工作電壓為3.3V到5V。(2)PH傳感器。PH值是判斷水質是否發生污染的一個重要參數。然而工業級的PH傳感器的價格都十分的昂貴;市面上的PH測試筆是成熟產品,無法進行二次設計開發;而PH復合電極傳感器模塊價格低廉、使用方便、測量精度高、可直接輸出0~5V或0~3V模擬電壓信號。(3)濁度傳感器。濁度傳感器是通過檢測出被測液體的散射率和透光率來得到被測液體濁度值的。傳感器的內部有一組紅外線對管,當紅外線穿過被測液體時,光線在被測液體傳播過程當中會隨液體濁度的不同而產生不同程度的損耗,被測液體越渾濁,透過的光就越少。模塊會根據紅外線接收端接收到的光線強度將其轉換為電流,且輸出電流大小與光強大小成正比關系,之后模塊的轉換電路再的電流轉換為對應電壓信號輸出。該模塊的工作電壓為5V,最大的工作電流為40mA。它可輸出數字信號和模擬信號。(4)電導率傳感器。TDS(Total Dissolved Solids),也被稱作溶解性固體總量,它可以反映出被測液體當中溶解性固體的多少。且在實際的水質檢測當中各個離子的濃度才是水質檢測的重要參數之一,但各離子濃度的檢測儀器造價都十分高昂,且不能進行二次開發,違背了本系統的設計初衷。而TDS也可一定程度上反映離子濃度高低,且本系統主要是為了監測水質情況,因此將TDS值定為本系統水質檢測的參數之一。此傳感器采用3.3~5.5V的電壓供電,輸出0~2.3V的模擬信號,能夠兼容5V、3.3V的控制系統。測量用的激勵源采用的是交流信號,可以有效地增加其輸出信號的穩定性。(5)顏色傳感器。TCS3200顏色傳感器的輸出信號為50%占空比的方波信號,它的頻率與光強成正比。輸出頻率可以通過兩個控制輸入引腳按三個預置值之一進行縮放。在TCS3200中有一個8x8的光電二極管陣列,其中16個有藍色的濾光片,16個有綠色的濾光片,16個有紅色的濾光片,16個沒有濾光片。
水樣采集模塊由六路繼電器和水泵組成。繼電器主要用于單片機控制水泵和電磁閥的開關,以實現抽取水樣、排出水樣、保存樣本等。一個水泵用來抽取水樣,另一個水泵配合多個電磁閥來實現排出水樣或保存水樣。
UNV-SIM868模塊是一款GSM開發板,高集成度的工業級GSM/GPRS/GPS/藍牙模塊。UNVSIM868板載SIM868模塊,該模塊是在實現完整的四頻段GSM/GPRS技術的基礎上,集成了GPS和藍牙技術。可以低功耗實現語音、短信、GPRS數據傳輸、藍牙數據傳輸和GPS定位。UNV-SIM868模塊電源采用DCDC電源模塊供電,優化的布局,可靠的濾波,使電源穩定,效率高,紋波小,支持USB直接供電。同時帶電源使能引腳,可以控制模塊電源,這點是極其有用的。GSM串口和GPS串口都設計了電平轉換電路,兼容3~5V的TTL串口。SIM卡采用目前主流的MICRO卡座,質量更堅固,也不用因為小卡而煩惱,同時添加ESD靜電保護電路。GSM、GPS、藍牙天線都進行了阻抗控制,測試GSM信號強度遠強于同類產品。
本系統所有功能代碼都寫在了一個ino文件里,以定義函數的方式對各個模塊的功能分別進行具體編輯。包含對各個模塊的引腳定義、setup函數(初始化函數)、loop函數(和while循環類似,會反復執行里面的代碼,return也無法結束,是Arduino程序的主函數)、水溫傳感器函數、室溫傳感器函數、電導率調用函數、濁度傳感器函數、PH傳感器調用函數、顏色傳感器函數、GSM水質信息發送函數等。該程序可以通過調用內置millis計時函數來控制水質檢測的時間間隔,控制調用各個傳感器來檢測水質,對數據處理之后進行污染判斷,根據結果判斷是否需要發送報警短信,將結果發送到上位機服務器。遠程水質監測系統水質檢測的時間間隔為1小時。下位機程序的總流程圖如圖3所示。

圖3 系統主程序流程圖Fig.3 System main program flow chart
IDEA(IntelliJ IDEA)是一款Java開發的集成環境。它和Eclipse被公認為是最好用的Java開發工具。其最突出的功能就是對Java源碼,JavaScript,JQuery以及Ajax等技術的調試。Tomcat是一個免費開源的輕量級Web應用服務器,一般應用于中小型系統或著并發訪問量比較低的場合當中,是開發和調試JSP程序的首選。Tomcat實際上是Apache的擴展分支,但它是作為一個獨立的進程單獨運行的。MySQL數據庫是最流行的關系型數據庫之一,在Web應用方面,MySQL數據庫是最好的關系數據庫管理系統應用軟件之一。關系數據庫會把數據保存在不同的表當中可以有效地增加程序訪問的速度并提高了系統的靈活性。
本系統是一個典型的三層應用,用戶通過瀏覽器訪問前端界面,瀏覽器將需求提交給服務器端,再由服務器與數據庫進行交互。上位機系統結構如圖4所示。

圖4 上位機系統結構Fig.4 Upper computer system structure
本系統是遠程水質監測系統的上位機系統,主要面向使用遠程水質監測系統下位機設備的用戶,通過該系統讓用戶實現對下位機水質信息及水質變化趨勢的實時監測。傳統的水質監測系統上位機多采用桌面客戶端的形式,跨平臺性差,需要安裝軟件方可進行查看,不能做到真正的實時監測,而本系統采用的是WEB應用,對使用環境沒有要求,無需安裝指定軟件,在能訪問互聯網的情況下使用任意瀏覽器均可正常訪問上位機系統。為了方便對下位機進行管理,增加系統的安全性和實用性,用戶需使用賬號密碼進行登陸,一賬戶綁定多設備,一設備對應一賬戶。
系統實現的主要功能有:(1)用戶登陸:用戶只有在登陸賬戶之后才能進行其他的操作。(2)水質信息導出:將當前賬戶下所有設備的歷史水質信息導出為Excel表格。(3)查看折線圖:查看當前賬戶下所有設備或指定設備的水質變化折線圖。(4)詢水質信息:查看當前賬戶下所有設備或指定設備的所有水質信息。(5)報警記錄:查看當前賬戶下所有設備或指定設備的所有報警記錄。(6)綁定新設備:將一臺新的設備綁定到當前賬戶下。
用戶登陸界面是該系統的默認界面,用戶可通過賬號密碼登陸湖泊水質智能監測系統,只有在登陸賬戶之后才能進行其他的操作,如圖5所示。

圖5 用戶登錄界面Fig.5 User login interface
系統主界面是用戶登陸之后所看到的界面,可以進行導出EXCEL表格、查看折線圖、查詢水質信息、查看報警記錄、綁定新設備等一系列的操作。主界面主要是由幾個導航的<a>標簽組成,其中報警記錄如圖6所示。

圖6 報警記錄Fig.6 Alarm record
本設計可以通過域名訪問湖泊水質智能監測系統對下位機的水質參數進行實時的監測,包括溫度、濁度、電導率、PH值、顏色等,當下位機監測到水質污染時會向用戶的指定手機號發送短信并自動保存污染的水樣。