前言:尋找寫作靈感?中文期刊網(wǎng)用心挑選的水質(zhì)監(jiān)測(cè)云端管理系統(tǒng)設(shè)計(jì),希望能為您的閱讀和創(chuàng)作帶來靈感,歡迎大家閱讀并分享。
摘要:近年來,隨著我國(guó)現(xiàn)代化建設(shè)的大力發(fā)展,工業(yè)行業(yè)也得到了快速的發(fā)展,同時(shí)也加劇了地表水環(huán)境的污染。為了能夠?qū)λ兄亟饘傥廴厩闆r進(jìn)行實(shí)時(shí)監(jiān)測(cè),準(zhǔn)確掌握水質(zhì)信息,結(jié)合了物聯(lián)網(wǎng)技術(shù)提出設(shè)計(jì),實(shí)現(xiàn)水質(zhì)在線監(jiān)測(cè)銅、錳、鉻、鎳等重金屬的含量。每臺(tái)儀器只檢測(cè)單一金屬,采用原子吸收法,通過更換光源,機(jī)械調(diào)整光路后,可改變儀器檢測(cè)金屬種類。在線監(jiān)測(cè)采用B/S架構(gòu),通過租用商業(yè)云服務(wù)器,進(jìn)行數(shù)據(jù)的存儲(chǔ),利用瀏覽器對(duì)儀器進(jìn)行遠(yuǎn)程的控制。
關(guān)鍵詞:物聯(lián)網(wǎng);B/S架構(gòu);云平臺(tái);在線監(jiān)測(cè)
隨著現(xiàn)代化建設(shè)的大力發(fā)展、生活水平的不斷提高也加劇了地表水環(huán)境的污染,我國(guó)當(dāng)前已將發(fā)展在線水質(zhì)監(jiān)測(cè)作為保障水安全和治理水污染的重要技術(shù)方案。而目前的水質(zhì)質(zhì)量監(jiān)測(cè)工作主要是以實(shí)驗(yàn)室的儀器分析、人工的現(xiàn)場(chǎng)采樣為主。雖然在實(shí)驗(yàn)室中的檢測(cè)分析手段完備,但實(shí)驗(yàn)室監(jiān)測(cè)存在采樣誤差大、檢測(cè)數(shù)據(jù)分散、監(jiān)測(cè)頻次低、不能及時(shí)反映水質(zhì)污染變化情況等缺點(diǎn),而且無法實(shí)現(xiàn)多臺(tái)檢測(cè)設(shè)備遠(yuǎn)程在線監(jiān)測(cè)的需求,因此本文結(jié)合了物聯(lián)網(wǎng)的技術(shù),讓管理者通過瀏覽器的形式實(shí)現(xiàn)對(duì)水質(zhì)的遠(yuǎn)程在線監(jiān)測(cè)。
1B/S模式系統(tǒng)結(jié)構(gòu)
考慮到系統(tǒng)對(duì)遠(yuǎn)程監(jiān)測(cè)功能的需求,相較于傳統(tǒng)的C/S模式,需要運(yùn)行專門的客戶端軟件并且不能跨平臺(tái)使用,而本文所選取的B/S模式-瀏覽器/服務(wù)器模式,可以實(shí)現(xiàn)在隨時(shí)隨地都可以通過瀏覽器對(duì)檢測(cè)設(shè)備的控制。系統(tǒng)結(jié)構(gòu)如圖1,瀏覽器主要負(fù)責(zé)用戶與后臺(tái)的交互,Web服務(wù)器作為中間事務(wù)處理的節(jié)點(diǎn),既要響應(yīng)瀏覽器客戶端發(fā)來的訪問請(qǐng)求,又要連接數(shù)據(jù)庫(kù)執(zhí)行相對(duì)應(yīng)的數(shù)據(jù)請(qǐng)求,并最終將結(jié)果返還給客戶端,在瀏覽器頁面上以圖形界面的方式展示出來[1,2]。Web服務(wù)與物聯(lián)網(wǎng)技術(shù)的融合,可以將物聯(lián)網(wǎng)中的不同物聯(lián)網(wǎng)對(duì)象,比如各種控制系統(tǒng)和各類傳感器節(jié)點(diǎn),成功的聯(lián)系起來,將Web服務(wù)作為統(tǒng)一的接口,下與水質(zhì)監(jiān)測(cè)設(shè)備連接,為采集的數(shù)據(jù)提供上傳處理的接口,上與應(yīng)用層相連接,為用戶提供簡(jiǎn)單的界面管理操作的接口,最終可實(shí)現(xiàn)用戶獲取到不同控制系統(tǒng)設(shè)備及應(yīng)用上層應(yīng)用所提供的服務(wù)[3]。
2云服務(wù)器平臺(tái)環(huán)境搭建
云平臺(tái)采用在Linux系統(tǒng)下安裝MQTTBroker并部署Web應(yīng)用,服務(wù)器后臺(tái)業(yè)務(wù)邏輯基于Tornado框架完成對(duì)下層物聯(lián)網(wǎng)網(wǎng)關(guān)上傳的數(shù)據(jù)進(jìn)行分析處理。其中MQTT(消息隊(duì)列遙測(cè)傳輸協(xié)議),是一種基于/訂閱模式的“輕量級(jí)”通訊協(xié)議,該協(xié)議建立在TCP/IP協(xié)議的基礎(chǔ)之上,能用很少的代碼和有限的帶寬,為檢測(cè)設(shè)備的遠(yuǎn)程連接提供實(shí)時(shí)可靠的數(shù)據(jù)交互服務(wù),是一種低帶寬占用、低開銷的即時(shí)通訊協(xié)議[4];Tornado是用Python語言編寫的一個(gè)Web服務(wù)器兼Web應(yīng)用框架,它有較為出色的抗負(fù)載能力,在處理嚴(yán)峻的網(wǎng)絡(luò)流量時(shí)優(yōu)勢(shì)明顯,在創(chuàng)建和編寫時(shí)有足夠的輕量級(jí),能夠簡(jiǎn)單快速地編寫高速的Web應(yīng)用[5,6],十分適用于物聯(lián)網(wǎng)技術(shù)中。負(fù)責(zé)和云平臺(tái)通信、維護(hù)數(shù)據(jù)庫(kù),同時(shí)完成對(duì)多瀏覽器前端的訪問請(qǐng)求響應(yīng)。后臺(tái)程序使用Python語言編寫,頁面前端利用HTML和CSS語言裝載并渲染網(wǎng)頁內(nèi)容,利用JavaScript來響應(yīng)用戶輸入,并完成與后端數(shù)據(jù)庫(kù)的交互。以MySQL數(shù)據(jù)庫(kù)為數(shù)據(jù)存儲(chǔ)系統(tǒng)。
3Web前端頁面設(shè)計(jì)
在前端頁面開發(fā)設(shè)計(jì)中分兩大模塊,分別是前臺(tái)信息展現(xiàn)模塊和后臺(tái)管理模塊。前臺(tái)信息展現(xiàn)模塊主要功能是展現(xiàn)信息供用戶瀏覽,該模塊頁面渲染在后臺(tái)完成,大部分為靜態(tài)文本。對(duì)于后臺(tái)管理模塊,主要采用了MVVM架構(gòu),即Model-View-ViewModel它將視圖UI和業(yè)務(wù)邏輯分開,使得應(yīng)用軟件UI層實(shí)現(xiàn)可定制化和細(xì)節(jié)化通過angularJS框架來實(shí)現(xiàn)[7]。用戶前端展示頁面則通過Ajax技術(shù)實(shí)現(xiàn)頁面異步刷新,簡(jiǎn)單來講,Ajax技術(shù)是能夠?qū)崿F(xiàn)對(duì)局部網(wǎng)頁刷新并且不重新加載整個(gè)網(wǎng)頁的技術(shù)[8,9]。Ajax工作原理如圖2所示。使用Noed.js作為JavaScript運(yùn)行環(huán)境,軟件作為包管理工具,Umi項(xiàng)目模板作為前端開發(fā)框架。設(shè)計(jì)時(shí)將頁面分為導(dǎo)航欄、內(nèi)容區(qū)、底欄這三塊,并將網(wǎng)頁功能分為多個(gè)組件,包括檢測(cè)金屬光源、檢測(cè)狀態(tài)、采樣設(shè)置,以及濃度/吸光度曲線圖組件、報(bào)警表格組件,主要編輯的文件內(nèi)拆解Ul組件。在頁面中需要確定各子組件布局及位置,各組件中需嵌套設(shè)備數(shù)據(jù)的相應(yīng)變化。實(shí)時(shí)監(jiān)測(cè)功能將參數(shù)處理成可視化數(shù)據(jù),在后端程序可根據(jù)檢測(cè)需求,采用線性回歸或者擬合方式的算法對(duì)數(shù)據(jù)進(jìn)行處理,進(jìn)而發(fā)送到前端界面,通過曲線圖或折線圖等易分析的方式呈現(xiàn)數(shù)據(jù)的變化,讓管理者直觀的得到是否滿足檢測(cè)需求的結(jié)果。
4管理系統(tǒng)界面功能說明
元素?zé)艏氨尘盁艉竺鏋閱芜x框,默認(rèn)為“關(guān)”的狀態(tài),當(dāng)選擇為“開”的狀態(tài)時(shí),立即與下位機(jī)檢測(cè)設(shè)備通訊,對(duì)設(shè)備的系統(tǒng)燈或背景燈進(jìn)行操作。采樣模式為下拉菜單,可分為自動(dòng)和手動(dòng)兩種方式。自動(dòng)模式為首先管理者設(shè)置采樣次數(shù),當(dāng)采樣次數(shù)達(dá)到設(shè)定值,自動(dòng)計(jì)算將所有的采樣值求單次,自動(dòng)在右側(cè)表格生成相應(yīng)數(shù)據(jù),且只需在第一次采樣前按下“采樣”按鈕。手動(dòng)模式為每次采樣前均需按下“采樣”按鈕,達(dá)到采樣次數(shù)后需按下“計(jì)算”按鈕。對(duì)樣品采樣前,需先建立標(biāo)樣的濃度/吸光度曲線,可以手動(dòng)輸入已知標(biāo)樣的濃度和吸光度,標(biāo)樣表可以滾動(dòng)添加行數(shù)據(jù),建立曲線方式由下側(cè)的擬合方式或回歸方式(下拉菜單)確定。采樣時(shí),每完成一次采樣,吸光度的最大值就填入采樣表格的相應(yīng)位置,通過與之前建立好的標(biāo)樣曲線對(duì)比,就會(huì)得到水質(zhì)監(jiān)測(cè)的重金屬濃度。
5結(jié)論
目前傳統(tǒng)的水質(zhì)檢測(cè)過程監(jiān)控一般由現(xiàn)場(chǎng)操作員站技術(shù)人員進(jìn)行現(xiàn)場(chǎng)監(jiān)控[10]。本課題借助于物聯(lián)網(wǎng)技術(shù)的發(fā)展及在工業(yè)領(lǐng)域的應(yīng)用,在傳統(tǒng)現(xiàn)場(chǎng)監(jiān)控系統(tǒng)的基礎(chǔ)上,實(shí)現(xiàn)遠(yuǎn)程的瀏覽器控制監(jiān)測(cè),賦予其新的功能,解決水質(zhì)監(jiān)測(cè)過程中產(chǎn)生的實(shí)時(shí)數(shù)據(jù)的采集、傳輸與存儲(chǔ)、在線展示的問題。從而極大地提高了監(jiān)測(cè)過程中的效率同時(shí)節(jié)省生產(chǎn)成本和人力。
作者:劉宇航 單位:沈陽化工大學(xué)