王巍淞,馬巧梅*,申連雄
(1.寶雞文理學院計算機學院,陜西 寶雞 721016;2.榆林廣播電視臺,陜西 榆林 719000)
當前農村飲用水隨著科學技術的進一步發展,工業化程度的提高,其水質受到很大的影響,個別村莊甚至出現了無法直飲的現象,即便有些飲用水表面看起來較為清澈,實則并未達到飲用水標準[1]。
當前隨著物聯網及傳感器技術的發展,大量的微傳感器應用到水質檢測中,給農村水質管理人員進行監測飲用水水質提供幫助,但沒有做到集中管理,無法實時監測飲用水的水質變化情況,那么利用單片機+ZigBee 的農村飲用水水質監測系統[2]便急需開發出來,以更好地服務于村民,為村民提供一個安全的飲用水環境[3]。
基于物聯網的農村飲用水水質監測系統對于保障村民安全用水具有重要的現實意義[4],主要體現在兩個方面:
(1) 通過監測pH 值、水濁度等指標為村民的飲用水安全提供數據支持[5]。
(2) 可通過數據的監測并上傳至APP 客戶端,可節省大量的人力,提高了對飲用水安全的監測效率[6]。
基于物聯網的農村飲用水水質監測系統是將STM32 單片機作為主控制器,通過溫度傳感器、pH 值感器模塊及水濁度進行監測農村飲用水水質的各項數據,通過ESP8266 無線網絡將所采集的數據上傳至上位機APP 客戶端,當超過設置的闕值時予以報警提示[7]。
基于物聯網的農村飲用水水質監測系統框圖見圖1。

圖1 系統框圖
1.1.1 主控單片機電路設計
基于物聯網的農村飲用水水質監測系統的主控模塊采用STM32F103C8T6,該單片機可提供內外兩個晶振頻率,當發生程序跑飛的情況時可通過復位重啟,完成單片機以恢復。一般來說,一個單片機模塊需要具有如電源模塊、復位電路、晶振電路等組成一個最小的單片機系統,可基本滿足一些常規的使用,成為一個可正常運行的系統[8]。
單片機主控模塊電路原理圖見圖2。

圖2 單片機電路原理圖
1.1.2 ZigBee 無線網絡的電路設計
基于物聯網的農村飲用水水質監測系統包括發送端(傳感器端)和接收段(單片機側),采用ZigBee 無線網絡作為傳輸網絡,該網絡以CC2530 芯片為基礎而設計。該CC2530 是一種功耗低,傳輸穩定可靠的無線網絡芯片,通過3.3-5 v 電源供電,是當前應用較為廣泛的ZigBee 解決方案[9]。CC2530 硬件電路原理圖見圖3。

圖3 CC2530 硬件電路原理圖
1.1.3 pH 值傳感器電路設計
pH 值傳感器負責采集飲用水的pH 值,一旦發現pH 值超標則通知處理人員來處理,pH 值采集電路原理圖見圖4。

圖4 pH 值采集電路原理圖
1.1.4 水濁度傳感器電路設計
水濁度傳感器主要監測水中是否有泥沙、漂浮物等,應該在滿足飲用水的范圍內,否則需要進行進一步的處理。
水濁度傳感器電路原理圖見圖5。

圖5 水濁度傳感器電路原理圖
1.2.1 系統功能架構設計
基于物聯網的農村飲用水水質監測系統采用各類傳感器已完成對溫度、pH 值及水濁度的采集,并上傳至APP 客戶端完成顯示,一旦采集的各項數據超過設定的闕值,上位機以報警提示。系統功能架構圖見圖6。

圖6 系統功能架構圖
1.2.2 系統流程設計
基于物聯網的農村飲用水水質監測系統的流程如下:首先啟動單片機及傳感器,利用溫度、pH 值及水濁度傳感器采集飲用水水質的各項數據,通過ZigBee 網絡將所采集的數據上傳至單片機,然后通過無線模塊上傳至APP 客戶端,與闕值進行對比,然后決定是否進行報警提示。
系統流程見圖7。

圖7 系統流程
1.2.3 App 界面的設計
通過無線網絡ESP8266 上傳至APP 客戶端顯示溫度、pH 值以及水濁度數據,若各項數據超過設定的闕值時便報警提示。APP 客戶端界面見圖8。

圖8 APP 客戶端界面圖
一般情況下,硬件的測試主要以測試功能為主的黑盒測試,而以邏輯為主的白盒測試交由第三方檢測機構。結合該系統的實際測試需求,選擇黑盒測試方法。
基于物聯網的農村飲用水水質監測系統是一個有硬件和上位機軟件的系統,測試時間占總體開發時間的比重在40%左右。一般情況下,測試將在遵守測試規程的前提下,對硬件功能模塊進行測試。具體測試過程如下:
首先,對系統進行組裝測試,將STM32 單片機、溫度傳感器、pH 值傳感器和水濁度傳感器連接在一起,然后把ZigBee 無線網絡和電源模塊與STM32 單片機組裝起來,組裝起來查看指示燈是否發亮,其組裝測試圖見圖9。

圖9 組裝測試圖
上位機顯示經由傳感器所采集的農村飲用水水質數據(溫度、pH 值、水濁度)測試,其測試界面見圖10,根據系統設置的闕值,說明這一組監測數據正常。

圖10 實時數據采集展示(溫度、水濁度、pH 值)界面
實時采集水質數據(溫度)異常測試,用溫度傳感器對熱水進行測試,圖中顯示溫度為43℃,數值超過正常值上限30℃,此時APP 端顯示溫度異常報警,其測試界面見圖11。

圖11 溫度異常測試界面
實時采集水質數據(濁度)異常測試,用濁度傳感器對渾濁的水進行測試,已知水越渾濁,濁度傳感器測得數值越低。圖中顯示濁度為9,小于正常值28,此時APP 端顯示濁度異常報警,其測試界面見圖12。

圖12 濁度異常測試界面
實時采集水質數據(pH 值)異常測試,用pH 傳感器對堿性肥皂水進行測試,圖中顯示pH 為9,大于正常值8,此時App 端顯示pH 值異常報警,其測試界面見圖13。

圖13 pH 值異常測試界面
通過對系統中傳感器實時監測的溫度值、水濁度、pH 值的正常值和異常測試值,得知該系統各個監測數據均正常。
目前,農村飲用水的安全是一個急需解決的問題,未經過處理或者處理不當的工業廢水直接排入水體,從而導致很多地方水體被污染,一旦人們飲用了受污染的水,會對人體健康產生各種傷害甚至危及生命,特別是農村地區對飲用水的管理較弱,因此基于物聯網的農村飲用水監測系統可以更好地知曉飲用水的情況,為人們的飲用安全提供幫助。