李 越,楊 虎,袁 衛,王 峰
(渭南師范學院物理與電氣工程學院,陜西渭南 714099)
水是人類生產生活中必不可少的物質資源,近幾年來,隨著自來水管網鋪設覆蓋率的提升,管網發生的安全事故日漸增多,在供水管網的日常維護中,需要對故障點進行精確定位,倘若僅靠人工檢測會造成大量的人力物力資源消耗。為此,提出了基于GIS 的低功耗供水管網檢測系統設計,實現了對供水管網實時運行數據的高精度采集,極大地降低了供水管網日常維護難度和維護成本,提高了工作環境的安全等級,能有效保障工人的人身安全。
系統由PC 上位機、ThingJS 平臺以及無線通信網絡三部分組成,其中ZigBee 網絡中的終端設備以MSP430F149 單片機作為數據處理芯片,外圍電路分別搭載了高精度傳感器(YF-S201 流量傳感器、流通式余氯傳感器、IIC 輸出壓力變送壓力傳感器、霍爾傳感器)、藍牙模塊和存儲芯片(AT24C02),以實現對供水管網運行數據的高精度采集與存儲。單片機負責處理傳感器檢測到的環境參數,ZigBee 網絡以多跳的方式將數據發送至協調器結點,結點通過串口與GPRS 模塊建立通信,最終通過GPRS 網絡將數據發送至PC 上位機[1]。
使用CampusBuilder 軟件導出監測區域的3D 模型數據,將數據上傳至ThingJS 在線開發平臺,平臺通過JavaScript 請求服務器建立WebSocket 連接,用于實時接收GPRS 回傳的現場數據,通過3D 視圖將供水管網運行數據顯示在屏幕上[2-4]。系統的硬件搭建框圖如圖1 所示。

圖1 系統硬件電路搭建框圖
系統采用YF-S201 流量傳感器檢測管道水體流速,當水流帶動傳感器磁性轉子做不規律轉動時,霍爾傳感器對應輸出不同頻率的脈沖信號,使用單片機檢測脈沖頻率即可計算出該區域管道水體流速,進而得出流量,通過分析得出某一區域管網進出水總量的差值,從而判斷該區域是否存在滲漏點[5-6]。傳感器輸出波形示意圖如圖2 所示,流量與脈沖對應關系如表1 所示。

圖2 YF-S201流量傳感器

表1 流量脈沖特性參照表
水中氨和氯組成的化合物(NH2Cl、NHCl2、NHCl3)稱為化合性余氯,而水中的OCl+、HOCl、Cl2等離子稱為游離性余氯[7]。
系統使用流通式余氯傳感器檢測水體中余氯濃度(0.00~20.00 mg/L),余氯濃度對應4~20 mV 電信號輸出,輸出信號線連接PCF8591 芯片完成模數轉換,單片機通過經IIC總線獲取數據,配合燒錄的軟件程序進行高精度實時檢測(1.2% or±10 ppb HOCL),且具有動態溫度補償,進一步提高了檢測精度,當檢測到的數據接近預設警戒線時,系統發出警報。
為滿足監測系統的高精度與低功耗設計要求,系統使用IIC 輸出壓力變送器,使用1.6~3.6 V DC 供電,其工作狀態功耗不高于1.2 mA,睡眠狀態功耗不高于30 nA(@1.6 V),輸出精度為1~2.0%FSO,標準IIC總線最高傳輸速率可達400 kbps,采集速率50 次/s,24 位輸出數據,可同時輸出壓力和溫度數據。
上電后,單片機首先發送指令(0xAA)執行壓力數據讀取操作,在設備回應對指令后,通過串口寄存器發回數據,在這個過程中單片機內部產生串行時鐘、確認信號以及停止條件。將讀取到的數據幀按字節進行解析(第1 個字節為狀態字節;第2-4 字節為24 位無符號壓力數據,高字節在前,低字節在后;第5-7 字節為24 位無符號溫度數據,高字節在前,低字節在后),將解析過的數據信息通過IIC 協議傳遞給MSP430 單片機[8],完成壓力數據的高精度檢測。
在IIC 通信協議里,需要用到數據線SDA 及時鐘線SCL,通過軟件模擬將MSP430F149 單片機P1^2 口(SCL)和P1^3口(SDA)端口設置為IIC通信端口,空閑狀態將P1^2 口和P1^3 口上拉到電源電壓(VDDA);起始條件將P1^2 口置高而P1^3 口由高電平下跳到低電平(GND);停止條件將P1^2 口置高而P1^3 口由低電平上跳到高電平;有效數據出現在有效的開始條件后,若P1^2 口置于高電位,并且P1^3 口處于一個穩定的電壓水平,則傳輸數據有效。當P1^2 口處于低電位時,P1^3 口的電壓才能改變[9-11]。其通信協議規則如圖3 所示。

圖3 IIC通信協議規則
系統在ZigBee 樹狀網絡結構的基礎上搭建了拓撲網格[12],使用的ZigBee 設備工作在2.4 GHz 頻段的第9 信道以最高250 kbps 的速率傳遞數據。通過查閱資料可知,在一個獨立的ZigBee 拓撲網絡中,最多可容納65 536 個設備[13],其優秀的自組網能力使得網絡搭建更加靈活便捷,其網絡結構如圖4 所示。

圖4 ZigBee拓撲網絡結構
當ZigBee 協調器將數據通過串口發送至GPRS模塊后,基站(BSS)將數據發送到網關結點(SGSN),并通過GPRS 網絡把數據傳遞到GPRS 網關支持結點,并最終通過GPRS 網絡發送至PC 上位機[14-15]。GPRS 與Internet 連接原理如圖5 所示。

圖5 PRS與Internet連接原理圖
GPRS只有在有數據傳輸時進行收費,單臺GPRS終端通信月費用可控制在20 元以內,而GSM 采用的是包月的方式,且最低每月基礎套餐價格為15 元,另外在實時通信方面,GPRS 可以更好地完成數據實時傳輸的任務。單臺終端設備的GSM 與GPRS 通信月費比較如表2 所示。

表2 單臺終端設備的GSM與GPRS通信月費比較
首先使用CampusBuilder 搭建環境的3D 地圖,并將地圖數據導出上傳至ThingJS 在線開發平臺;然后使用JavaScript 語言通過WebSocket 協議獲取GPRS 網絡中的環境數據;最后將獲取到的環境數據與模型建立聯系,并搭建數據庫用于存儲分析監測到的環境數據,最終將管網運行狀態實時顯示在PC上位機屏幕上。
系統通過IP 地址(源IP 與目標IP)、端口號(源端口與目標端口)、協議號三部分來識別一個通信。IP 地址在系統搭建時確定,終端設備端口號可以根據需求靈活更改(在1 024~49 151 之間),由操作系統對PC 機端口號進行動態分配(在49 152~65 535之間)。TCP 協議數據格式如圖6 所示。

圖6 TCP協議數據格式
目前大部分瀏覽器支持WebSocket()接口,使用JavaScript 請求服務器建立WebSocket 連接,使用var Socket=new WebSocket(url,[Protocol]);這 一AIP 創 建WebSocket對象。為了繞過防火墻限制,默認使用80端口[16-17]。PC機與服務器三次握手的流程圖如圖7所示。

圖7 PC機與服務器進行三次握手流程圖
供水管網監測點電路采用自動溫度補償設計,滿足系統對運行高穩定性的要求,經實測,系統可在-40~+85 ℃環境中長期穩定工作,且單個檢測點的設備正常工作時采樣電流小于3 mA,非采樣電流小于20 μA,最大運行功耗小于10 mW。檢測點每隔5 s 進行一次采樣,每隔5 min 進行一次數據存儲(可在5~60 min 內自行設置),每隔1 h 進行一次數據上報(可在30 min~12 h 內自行設置)。
供水管網檢測系統正常運行時,ThingJS 平臺可將各監測點數據實時顯示在PC 機界面,管理人員可根據3D 地圖數據判斷供水管網是否穩定運行。當有異常數據產生時,系統及時發出警報,并指引維護人員到故障點進行檢修。系統正常運行數據如表3所示。

表3 系統運行參數
該文供水管網監測系統的設計可實現對某一區域供水管網運行狀態的高精度實時監測,可將監測點數據直觀地顯示在PC 上位機3D 地圖界面。通過對大數據的記錄分析以及突發異常數據的實時報警,可以極大地提高供水管網運行的安全等級。系統設計滿足管網檢測對數據精度、運行功耗、設備安全等各方面的要求,有效解決了管網維護中存在的滲漏檢測難度大、供水水壓不穩定、水質檢測成本高等問題。