王巍淞,馬巧梅*,申連雄
(1.寶雞文理學(xué)院計(jì)算機(jī)學(xué)院,陜西 寶雞 721016;2.榆林廣播電視臺,陜西 榆林 719000)
當(dāng)前農(nóng)村飲用水隨著科學(xué)技術(shù)的進(jìn)一步發(fā)展,工業(yè)化程度的提高,其水質(zhì)受到很大的影響,個別村莊甚至出現(xiàn)了無法直飲的現(xiàn)象,即便有些飲用水表面看起來較為清澈,實(shí)則并未達(dá)到飲用水標(biāo)準(zhǔn)[1]。
當(dāng)前隨著物聯(lián)網(wǎng)及傳感器技術(shù)的發(fā)展,大量的微傳感器應(yīng)用到水質(zhì)檢測中,給農(nóng)村水質(zhì)管理人員進(jìn)行監(jiān)測飲用水水質(zhì)提供幫助,但沒有做到集中管理,無法實(shí)時監(jiān)測飲用水的水質(zhì)變化情況,那么利用單片機(jī)+ZigBee 的農(nóng)村飲用水水質(zhì)監(jiān)測系統(tǒng)[2]便急需開發(fā)出來,以更好地服務(wù)于村民,為村民提供一個安全的飲用水環(huán)境[3]。
基于物聯(lián)網(wǎng)的農(nóng)村飲用水水質(zhì)監(jiān)測系統(tǒng)對于保障村民安全用水具有重要的現(xiàn)實(shí)意義[4],主要體現(xiàn)在兩個方面:
(1) 通過監(jiān)測pH 值、水濁度等指標(biāo)為村民的飲用水安全提供數(shù)據(jù)支持[5]。
(2) 可通過數(shù)據(jù)的監(jiān)測并上傳至APP 客戶端,可節(jié)省大量的人力,提高了對飲用水安全的監(jiān)測效率[6]。
基于物聯(lián)網(wǎng)的農(nóng)村飲用水水質(zhì)監(jiān)測系統(tǒng)是將STM32 單片機(jī)作為主控制器,通過溫度傳感器、pH 值感器模塊及水濁度進(jìn)行監(jiān)測農(nóng)村飲用水水質(zhì)的各項(xiàng)數(shù)據(jù),通過ESP8266 無線網(wǎng)絡(luò)將所采集的數(shù)據(jù)上傳至上位機(jī)APP 客戶端,當(dāng)超過設(shè)置的闕值時予以報(bào)警提示[7]。
基于物聯(lián)網(wǎng)的農(nóng)村飲用水水質(zhì)監(jiān)測系統(tǒng)框圖見圖1。
圖1 系統(tǒng)框圖
1.1.1 主控單片機(jī)電路設(shè)計(jì)
基于物聯(lián)網(wǎng)的農(nóng)村飲用水水質(zhì)監(jiān)測系統(tǒng)的主控模塊采用STM32F103C8T6,該單片機(jī)可提供內(nèi)外兩個晶振頻率,當(dāng)發(fā)生程序跑飛的情況時可通過復(fù)位重啟,完成單片機(jī)以恢復(fù)。一般來說,一個單片機(jī)模塊需要具有如電源模塊、復(fù)位電路、晶振電路等組成一個最小的單片機(jī)系統(tǒng),可基本滿足一些常規(guī)的使用,成為一個可正常運(yùn)行的系統(tǒng)[8]。
單片機(jī)主控模塊電路原理圖見圖2。
圖2 單片機(jī)電路原理圖
1.1.2 ZigBee 無線網(wǎng)絡(luò)的電路設(shè)計(jì)
基于物聯(lián)網(wǎng)的農(nóng)村飲用水水質(zhì)監(jiān)測系統(tǒng)包括發(fā)送端(傳感器端)和接收段(單片機(jī)側(cè)),采用ZigBee 無線網(wǎng)絡(luò)作為傳輸網(wǎng)絡(luò),該網(wǎng)絡(luò)以CC2530 芯片為基礎(chǔ)而設(shè)計(jì)。該CC2530 是一種功耗低,傳輸穩(wěn)定可靠的無線網(wǎng)絡(luò)芯片,通過3.3-5 v 電源供電,是當(dāng)前應(yīng)用較為廣泛的ZigBee 解決方案[9]。CC2530 硬件電路原理圖見圖3。
圖3 CC2530 硬件電路原理圖
1.1.3 pH 值傳感器電路設(shè)計(jì)
pH 值傳感器負(fù)責(zé)采集飲用水的pH 值,一旦發(fā)現(xiàn)pH 值超標(biāo)則通知處理人員來處理,pH 值采集電路原理圖見圖4。
圖4 pH 值采集電路原理圖
1.1.4 水濁度傳感器電路設(shè)計(jì)
水濁度傳感器主要監(jiān)測水中是否有泥沙、漂浮物等,應(yīng)該在滿足飲用水的范圍內(nèi),否則需要進(jìn)行進(jìn)一步的處理。
水濁度傳感器電路原理圖見圖5。
圖5 水濁度傳感器電路原理圖
1.2.1 系統(tǒng)功能架構(gòu)設(shè)計(jì)
基于物聯(lián)網(wǎng)的農(nóng)村飲用水水質(zhì)監(jiān)測系統(tǒng)采用各類傳感器已完成對溫度、pH 值及水濁度的采集,并上傳至APP 客戶端完成顯示,一旦采集的各項(xiàng)數(shù)據(jù)超過設(shè)定的闕值,上位機(jī)以報(bào)警提示。系統(tǒng)功能架構(gòu)圖見圖6。
圖6 系統(tǒng)功能架構(gòu)圖
1.2.2 系統(tǒng)流程設(shè)計(jì)
基于物聯(lián)網(wǎng)的農(nóng)村飲用水水質(zhì)監(jiān)測系統(tǒng)的流程如下:首先啟動單片機(jī)及傳感器,利用溫度、pH 值及水濁度傳感器采集飲用水水質(zhì)的各項(xiàng)數(shù)據(jù),通過ZigBee 網(wǎng)絡(luò)將所采集的數(shù)據(jù)上傳至單片機(jī),然后通過無線模塊上傳至APP 客戶端,與闕值進(jìn)行對比,然后決定是否進(jìn)行報(bào)警提示。
系統(tǒng)流程見圖7。
圖7 系統(tǒng)流程
1.2.3 App 界面的設(shè)計(jì)
通過無線網(wǎng)絡(luò)ESP8266 上傳至APP 客戶端顯示溫度、pH 值以及水濁度數(shù)據(jù),若各項(xiàng)數(shù)據(jù)超過設(shè)定的闕值時便報(bào)警提示。APP 客戶端界面見圖8。
圖8 APP 客戶端界面圖
一般情況下,硬件的測試主要以測試功能為主的黑盒測試,而以邏輯為主的白盒測試交由第三方檢測機(jī)構(gòu)。結(jié)合該系統(tǒng)的實(shí)際測試需求,選擇黑盒測試方法。
基于物聯(lián)網(wǎng)的農(nóng)村飲用水水質(zhì)監(jiān)測系統(tǒng)是一個有硬件和上位機(jī)軟件的系統(tǒng),測試時間占總體開發(fā)時間的比重在40%左右。一般情況下,測試將在遵守測試規(guī)程的前提下,對硬件功能模塊進(jìn)行測試。具體測試過程如下:
首先,對系統(tǒng)進(jìn)行組裝測試,將STM32 單片機(jī)、溫度傳感器、pH 值傳感器和水濁度傳感器連接在一起,然后把ZigBee 無線網(wǎng)絡(luò)和電源模塊與STM32 單片機(jī)組裝起來,組裝起來查看指示燈是否發(fā)亮,其組裝測試圖見圖9。
圖9 組裝測試圖
上位機(jī)顯示經(jīng)由傳感器所采集的農(nóng)村飲用水水質(zhì)數(shù)據(jù)(溫度、pH 值、水濁度)測試,其測試界面見圖10,根據(jù)系統(tǒng)設(shè)置的闕值,說明這一組監(jiān)測數(shù)據(jù)正常。
圖10 實(shí)時數(shù)據(jù)采集展示(溫度、水濁度、pH 值)界面
實(shí)時采集水質(zhì)數(shù)據(jù)(溫度)異常測試,用溫度傳感器對熱水進(jìn)行測試,圖中顯示溫度為43℃,數(shù)值超過正常值上限30℃,此時APP 端顯示溫度異常報(bào)警,其測試界面見圖11。
圖11 溫度異常測試界面
實(shí)時采集水質(zhì)數(shù)據(jù)(濁度)異常測試,用濁度傳感器對渾濁的水進(jìn)行測試,已知水越渾濁,濁度傳感器測得數(shù)值越低。圖中顯示濁度為9,小于正常值28,此時APP 端顯示濁度異常報(bào)警,其測試界面見圖12。
圖12 濁度異常測試界面
實(shí)時采集水質(zhì)數(shù)據(jù)(pH 值)異常測試,用pH 傳感器對堿性肥皂水進(jìn)行測試,圖中顯示pH 為9,大于正常值8,此時App 端顯示pH 值異常報(bào)警,其測試界面見圖13。
圖13 pH 值異常測試界面
通過對系統(tǒng)中傳感器實(shí)時監(jiān)測的溫度值、水濁度、pH 值的正常值和異常測試值,得知該系統(tǒng)各個監(jiān)測數(shù)據(jù)均正常。
目前,農(nóng)村飲用水的安全是一個急需解決的問題,未經(jīng)過處理或者處理不當(dāng)?shù)墓I(yè)廢水直接排入水體,從而導(dǎo)致很多地方水體被污染,一旦人們飲用了受污染的水,會對人體健康產(chǎn)生各種傷害甚至危及生命,特別是農(nóng)村地區(qū)對飲用水的管理較弱,因此基于物聯(lián)網(wǎng)的農(nóng)村飲用水監(jiān)測系統(tǒng)可以更好地知曉飲用水的情況,為人們的飲用安全提供幫助。