天地科技股份有限公司上海分公司 曾 苛
虛擬平臺的B-S架構(gòu)污水遠(yuǎn)程監(jiān)測系統(tǒng)研究與設(shè)計(jì)
天地科技股份有限公司上海分公司 曾 苛
排水與污水處理是維系城市人民健康生活的重點(diǎn)環(huán)節(jié),目前國家也越來越重視污水的排放問題。隨著虛擬化技術(shù)的不斷成熟和穩(wěn)定,本設(shè)計(jì)通過對時(shí)下VPS技術(shù)與云技術(shù)進(jìn)行了研究,提出并設(shè)計(jì)了以STM32為現(xiàn)場數(shù)據(jù)采集裝置的控制核心,通過GPRS將數(shù)據(jù)傳送至云主機(jī),在主機(jī)里對數(shù)據(jù)進(jìn)行挖掘及分類存儲后進(jìn)行B-S架構(gòu)的監(jiān)控中心設(shè)計(jì)。主要完成了對污水的數(shù)據(jù)的采集和云存儲。通過JSP編程實(shí)現(xiàn)監(jiān)控端通過瀏覽器的方式瀏覽相關(guān)監(jiān)測數(shù)據(jù)。
數(shù)據(jù)采集;JSP;GPRS;云存儲;服務(wù)器
目前國家對環(huán)保越來越重視,城鎮(zhèn)的排污處理已經(jīng)立法,偷排污水將受法律的嚴(yán)懲。污水處理是人們在水資源利用過程中必不可少的一個(gè)環(huán)節(jié)。我國大部分污水排放都得不到監(jiān)測,有的處于人工監(jiān)測階段, 數(shù)據(jù)監(jiān)測難度大, 實(shí)施艱難, 很難體現(xiàn)企業(yè)和城市污水排放的實(shí)時(shí)變化情況。部分污水處理廠已安裝了一些實(shí)時(shí)監(jiān)控的傳感器和系統(tǒng),但好多設(shè)備復(fù)雜,價(jià)格昂貴,功能單一,只能檢測水質(zhì)的變化,并不能實(shí)時(shí)監(jiān)測污水成分信息和滿足可靠性監(jiān)測的要求。而且對于一些大型的城市,采用原來的zigbee節(jié)點(diǎn)傳輸方式,布點(diǎn)繁多,增加成本投入,而且維護(hù)困難。
云服務(wù)器具有數(shù)據(jù)保障安全、自助管理、故障自恢復(fù)和網(wǎng)絡(luò)安全保障等高級功能,這樣很大程度的簡化了研發(fā)規(guī)劃過程,運(yùn)行使用成本大大降低,搭建可以按用戶需求拓展的網(wǎng)站架構(gòu),通過對云端進(jìn)行對應(yīng)的編程,實(shí)現(xiàn)功能多樣化,從而更適應(yīng)快速多變的互聯(lián)網(wǎng)應(yīng)用特性。
圖1.1 系統(tǒng)整體結(jié)構(gòu)
本系統(tǒng)有三個(gè)部分組成(圖1.1),分別為:現(xiàn)場數(shù)據(jù)檢測采集傳感器、數(shù)據(jù)采集處理中心以及B-S架構(gòu)的實(shí)時(shí)監(jiān)測控制中心,監(jiān)測控制中心采用阿里云服務(wù)。主要完成對監(jiān)測點(diǎn)污水的溶解氧和PH值等實(shí)時(shí)數(shù)據(jù)進(jìn)行監(jiān)測,通過GPRS將數(shù)據(jù)傳送至云主機(jī)。通過一定的算法對采集的數(shù)據(jù)進(jìn)行分類處理。通過網(wǎng)頁瀏覽器的方式監(jiān)測各個(gè)測點(diǎn)的數(shù)據(jù)。
現(xiàn)場數(shù)據(jù)檢測采集傳感器主要包括數(shù)據(jù)采集,數(shù)據(jù)存儲和數(shù)據(jù)發(fā)送三部分。具體功能如下:污水監(jiān)測點(diǎn)的傳感器將采集到模擬量通過AD轉(zhuǎn)換成數(shù)據(jù)通過單片機(jī)處理進(jìn)行存儲。如果是正常的數(shù)據(jù)每隔半個(gè)小時(shí)通過單片機(jī)發(fā)送給GPRS將數(shù)據(jù)傳輸出去,若是超標(biāo)的數(shù)據(jù),數(shù)據(jù)值超過規(guī)定值的百分之五則判定為超標(biāo)污水,這時(shí)單片機(jī)間隔三分鐘將采集到的數(shù)據(jù)傳輸出去。為節(jié)約用電,GPRS在不發(fā)送數(shù)據(jù)時(shí),將處于斷電狀態(tài)。
傳感器的MCU采用Cortex?-M3 為核的32位ARM芯片(圖2.1)。此CPU具有轉(zhuǎn)換時(shí)間為1us的2路12位A/D轉(zhuǎn)換器,并有16個(gè)通道可以實(shí)現(xiàn)多路采集??梢愿呔鹊牟杉鬯谋O(jiān)測信息。供電電路采用蓄電池組進(jìn)行供電,經(jīng)LM2596開關(guān)電源調(diào)節(jié)器輸出3.3V和5V電壓來分別為系統(tǒng)供電和作為A/D采樣的基準(zhǔn)電壓。
GPRS部分主要包括GPRS開關(guān)機(jī)電路、SIM卡部分電路設(shè)計(jì)、射頻部分及網(wǎng)絡(luò)狀態(tài)指示等外圍電路。
圖2.1 GPRS數(shù)據(jù)采集總框架
2.2.1 供電電源及抗干擾設(shè)計(jì)
本設(shè)計(jì)的GPRS模塊采用芯訊通公司的SIM900A模塊。該模塊是單電源供電,直流供電VBAT范圍 3.2~4.8V 之間,模塊發(fā)射數(shù)據(jù)時(shí),功耗會增加,導(dǎo)致電壓降低,這時(shí)峰值電流最高會達(dá)到2A以上,因此供電電源應(yīng)達(dá)到2A,將VBAT引腳并聯(lián)大電容。LM2596是降壓型電源管理單片集成電路,能夠輸出最大3A的電流,具有很好的線性和負(fù)載調(diào)節(jié)特性。
為了增強(qiáng)模塊的抗EMC能力,保證在惡劣環(huán)境下設(shè)備工作正常,我們在外部電源輸入端增加一些共模電感、TVS管等元器件如圖2.2所示:在電源芯片的輸出端增加了100uf的鉭電容和1uf的獨(dú)石電容,來濾除干擾。
圖2.2 電源供電電路圖
2.2.2 開關(guān)機(jī)電路設(shè)計(jì)
因GPRS在發(fā)射數(shù)據(jù)時(shí)的功耗很大,所以在不工作時(shí)我們將GPRS的電源關(guān)掉,以節(jié)省電能的消耗。SIM900A模塊內(nèi)部開關(guān)引腳通過100K電阻上拉到3V電壓,因此設(shè)計(jì)時(shí)候要注意模塊的電壓。電路如圖2.3所示,通過控制NPN三極管8050導(dǎo)通和斷開,來控制GPRS模塊的電源。
圖2.3 驅(qū)動開關(guān)機(jī)圖
SIM卡電路設(shè)計(jì)
2.2.3 SIM卡部分電路設(shè)計(jì)
模塊支持DC1.8/3.0V的SIM卡。在設(shè)計(jì)這部分電路時(shí),電容以及ESD器件需要放置在靠近SIM卡座的位置。電路中給SIM卡供電的SIM_VDD需要并0.1uF或0.22uF 電容,以保障電源輸出穩(wěn)定,減小紋波干擾; SIM_DATA并接20pF電容,SIM_RST并接4.7nF電容,用于防止高頻干擾。
2.2.4 射頻電路設(shè)計(jì)
SIM900A的第60腳為天線接口,可以用微帶線或者其他類型的可控的阻抗為50歐姆的射頻走線和SIM900A的第60腳相連。在射頻部分設(shè)計(jì)時(shí)應(yīng)預(yù)留∏型網(wǎng)絡(luò),前期可以安裝0歐姆電阻、電容可以不裝,以方便后續(xù)天線調(diào)試匹配。
網(wǎng)絡(luò)狀態(tài)指示電路。NETLED信號用來監(jiān)測網(wǎng)絡(luò)狀態(tài)的,通過三極管來驅(qū)動發(fā)光二極管。通過發(fā)光二極管的閃爍狀態(tài)可以判斷當(dāng)前的網(wǎng)絡(luò)狀態(tài)。
酸堿度傳感器采用HA151-PH型耐堿pH電極,其測量范圍為0~14pH ,溫度范圍為0~100℃,耐壓0.6MPa。該探頭采用耐高溫凝膠電介質(zhì)和耐高溫固體電介質(zhì)雙液接界結(jié)構(gòu),可直接用于高粘性懸浮液、乳濁液、含蛋白質(zhì)等液體的酸堿度檢測。耐堿性敏感膜,適用于堿性液體實(shí)時(shí)測量。無需補(bǔ)充電介質(zhì),基本不用維護(hù)。
溶解氧傳感器采用適合各種工業(yè)監(jiān)測使用的覆膜式電流式傳感器。該傳感器的透氣膜采用抗污染特氟隆膜,膜厚50μm,測量上限為20mg/L(ppm), 測量下限為0.02mg/L(ppm)(20℃)。安裝方便,只需直接將探頭浸入被測液體。
信息管理中心主要完成兩個(gè)任務(wù),一是對GPRS數(shù)據(jù)采集終端進(jìn)行監(jiān)聽,當(dāng)各個(gè)監(jiān)控終端的數(shù)據(jù)發(fā)送上來時(shí),分別收集解析,并根據(jù)相應(yīng)的編碼格式進(jìn)行數(shù)據(jù)處理存儲。信息管理中心的第二個(gè)任務(wù)是作為JSP代碼的WEB服務(wù)器。對于監(jiān)控調(diào)度中心,可以通過打開瀏覽web網(wǎng)頁的方式查看各監(jiān)測點(diǎn)的數(shù)據(jù),并根據(jù)各人的權(quán)限可以進(jìn)行相應(yīng)的操作。
本系統(tǒng)設(shè)計(jì)采用的是基于阿里云自主研發(fā)的飛天大規(guī)模分布式計(jì)算系統(tǒng),通過虛擬化技術(shù)整合,為本系統(tǒng)提供互聯(lián)網(wǎng)基礎(chǔ)設(shè)施服務(wù)。
系統(tǒng)通過傳感器數(shù)據(jù)采集后將數(shù)據(jù)發(fā)送給信息管理中心,在云主機(jī)里用Socket編程實(shí)現(xiàn)對數(shù)據(jù)采集端口的監(jiān)聽。云主機(jī)兼做數(shù)據(jù)處理,數(shù)據(jù)庫管理和JSP服務(wù)器。在傳感器數(shù)據(jù)采集端采用的相當(dāng)于C-S架構(gòu)即客戶端-服務(wù)器結(jié)構(gòu),在數(shù)據(jù)監(jiān)控調(diào)度中心則采用B/S架構(gòu),即瀏覽器/服務(wù)器結(jié)構(gòu)。
云主機(jī)各組件的主要功能如下:
JSP服務(wù)組件:該組件的設(shè)計(jì)主要功能是完成JSP訪問我的SQL數(shù)據(jù)庫的編程,在云服務(wù)器中將編寫好的java服務(wù)器頁面與數(shù)據(jù)庫動態(tài)鏈接,監(jiān)控調(diào)度室可以通過web訪問查看相關(guān)參數(shù)。
數(shù)據(jù)接收組件:該組件的主要功能是從網(wǎng)絡(luò)中讀取傳感器通過GPRS發(fā)送來的數(shù)據(jù)信息。
數(shù)據(jù)存儲組件:該組件的主要功能是將接收到的數(shù)據(jù)按照預(yù)先規(guī)定的格式寫入指定的SQL數(shù)據(jù)庫中,便于JSP通過JDBC數(shù)據(jù)庫連接訪問SQL數(shù)據(jù)庫。
數(shù)據(jù)整合組件:將SQL中每日保存的數(shù)據(jù)整理成日報(bào)表,根據(jù)日報(bào)表整理出月報(bào)表,根據(jù)月報(bào)表整理出年報(bào)表。
在數(shù)據(jù)采集傳感器主要是完成數(shù)據(jù)采集處理和發(fā)送。采集后的數(shù)據(jù)按照規(guī)定的協(xié)議將匹配好的數(shù)據(jù)通過GPRS網(wǎng)絡(luò)發(fā)送給服務(wù)器。
每隔三分鐘MCU對數(shù)據(jù)進(jìn)行采集,當(dāng)采集到的數(shù)據(jù)超過10次后啟動GPRS與Web server進(jìn)行連接,與服務(wù)器建立連接上后,自動打包將數(shù)據(jù)發(fā)送。
在本系統(tǒng)設(shè)計(jì)中,數(shù)據(jù)采集主要運(yùn)用socket編程實(shí)現(xiàn)對遠(yuǎn)程數(shù)據(jù)的監(jiān)聽,數(shù)據(jù)采集服務(wù)器接收從傳感器發(fā)送過來的數(shù)據(jù)。云數(shù)據(jù)采集及處理主要功能是完成接收GPRS數(shù)據(jù)并將數(shù)據(jù)進(jìn)行解析,提取出有用的信息,將信息經(jīng)過云處理后存入數(shù)據(jù)庫。因此,云數(shù)據(jù)采集存儲效率更高更安全。在通訊方面,網(wǎng)絡(luò)通訊程序的實(shí)現(xiàn)是采用基于TCP/IP基礎(chǔ)的Socket編程。Socket通常也稱“套接字”,用于描述IP地址和端口,是一個(gè)通信鏈的句柄,可以用來實(shí)現(xiàn)不同虛擬機(jī)或不同計(jì)算機(jī)之間的通訊。應(yīng)用程序通常通過“套接字”向網(wǎng)絡(luò)發(fā)出或者應(yīng)答請求。TCP/IP是目前廣為應(yīng)用的互聯(lián)網(wǎng)協(xié)議,無論從可使用性、可移植性、還是從未來發(fā)展上來看,采用該協(xié)議來開發(fā)通信軟件是一個(gè)最合理的選擇。Socket正如其英文原意那樣,像一個(gè)多孔插座。已逐漸成為網(wǎng)絡(luò)通信軟件研發(fā)的規(guī)范和標(biāo)準(zhǔn),具有功能完善、技術(shù)成熟、跨平臺的特點(diǎn)。
B/S結(jié)構(gòu)即瀏覽器/服務(wù)器結(jié)構(gòu),用戶可以通過www瀏覽器的訪問方式來查看監(jiān)控信息。本設(shè)計(jì)采用B/S架構(gòu),上位機(jī)只需要安裝瀏覽器。這樣可以通過登陸權(quán)限,系統(tǒng)使用部門可以對排污情況進(jìn)行查看,同時(shí)相關(guān)管理部門也可以集中調(diào)度監(jiān)控。其主要的實(shí)物邏輯由服務(wù)端進(jìn)行實(shí)現(xiàn)。將開發(fā)工作主要集中在服務(wù)器上,大大簡化了系統(tǒng)的開發(fā)和維護(hù)。只要在服務(wù)器上安裝一套數(shù)據(jù)庫軟件,瀏覽器可以與數(shù)據(jù)庫直接進(jìn)行交互。
JDBC是一種能夠用于執(zhí)行SQL語句的應(yīng)用程序設(shè)計(jì)接口API??梢詾槎喾N關(guān)系數(shù)據(jù)庫提供統(tǒng)一訪問,它由一組用JAVA語言編寫的類和接口組成。JDBC組成包括一些JAVA語言編寫的類和界面。簡單的說JDBC 可以做三件事:與數(shù)據(jù)庫建立連接、發(fā)送、操作數(shù)據(jù)庫的語句并處理結(jié)果。為數(shù)據(jù)前臺與數(shù)據(jù)庫的交互提供了一種標(biāo)準(zhǔn)的程序應(yīng)用設(shè)計(jì)接口,方便了JAVA程序開發(fā)人員編寫數(shù)據(jù)庫操應(yīng)用程序。使用JDBC可以把SQL語句很方便的傳送給數(shù)據(jù)庫??煽缙脚_運(yùn)行,并且不受數(shù)據(jù)庫供應(yīng)商的限制,這是繼承了Java語言的“一次編譯,到處運(yùn)行”的特點(diǎn)。JDBC是純JAVA的ODBC解決方案。
JDBC連接數(shù)據(jù)的流程如下:
(1) 首先在開發(fā)環(huán)境中裝載數(shù)據(jù)庫的驅(qū)動程序。
(2) 在Java程序中加載驅(qū)動程序。
(3) 創(chuàng)建數(shù)據(jù)連接對象。
(4) 創(chuàng)建Statement對象,用于把 SQL 語句發(fā)送到 DBMS。
(5) 調(diào)用Statement對象,使用適當(dāng)?shù)姆椒▓?zhí)行相對應(yīng)的 SQL 語句。
(6) 關(guān)閉數(shù)據(jù)庫連接。
根據(jù)實(shí)際操作人員的不同,系統(tǒng)后臺分別對訪問者進(jìn)行了不同權(quán)限規(guī)劃。以不同身份登錄該系統(tǒng)時(shí),系統(tǒng)會進(jìn)入不同的界面和操作權(quán)限。根據(jù)地區(qū)特點(diǎn),界面將整個(gè)地區(qū)劃分為五個(gè)區(qū),每個(gè)地區(qū)有11個(gè)監(jiān)測點(diǎn),每個(gè)監(jiān)測點(diǎn)都有不同的編號。這樣就可以根據(jù)需求點(diǎn)擊界面下面的按鈕來查看相關(guān)地點(diǎn)的污水信息。
隨著云計(jì)算的不斷發(fā)展和完善,越來越多的企業(yè)注意到云的商業(yè)價(jià)值。其可靠性和低維護(hù)成本深受廣大企業(yè)的歡迎,也都在考慮將企業(yè)的資源移建到云服務(wù)端。本文充分利用云平臺,基于阿里云設(shè)計(jì)了污水遠(yuǎn)程監(jiān)測系統(tǒng)。在云上建立了自己的數(shù)據(jù)采集中心,通過GPRS采集終端數(shù)據(jù),并對數(shù)據(jù)處理和存儲。利用云計(jì)算的優(yōu)勢將采集的數(shù)據(jù)進(jìn)行處理并存入數(shù)據(jù)庫。云與GPRS數(shù)據(jù)采集終端是一個(gè)類C-S結(jié)構(gòu),通過本地可以登錄到云端,通過JSP編程實(shí)現(xiàn)了對B/S結(jié)構(gòu)的數(shù)據(jù)監(jiān)測中心數(shù)據(jù)訪問。實(shí)現(xiàn)了遠(yuǎn)程數(shù)據(jù)的采集,遠(yuǎn)程數(shù)據(jù)的傳輸,遠(yuǎn)程數(shù)據(jù)的數(shù)據(jù)庫存儲,監(jiān)控調(diào)度管理人員可以查看各個(gè)廠家排放的污水情況,相關(guān)單位也可以登陸網(wǎng)站查看自己的排污情況,具有實(shí)用價(jià)值。
[1]牲煥軍,張維勇,劉國田.ZigBee網(wǎng)絡(luò)的路由協(xié)議研究.奩懲工疊大學(xué)學(xué)攘:鑫然辯學(xué)叛,2008,31(10):1617-1621.
[2]黃緒勇,劉沛,苗世洪,等.無線傳感自組網(wǎng)在電力監(jiān)控中的應(yīng)用動態(tài)[J].電力系統(tǒng)自動化,2007,31(7):99-103.
[3]喬淑云,李德臣.監(jiān)控預(yù)警系統(tǒng)在煤礦電網(wǎng)中的應(yīng)用研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2008,29(23):6161—6163.