麻小娟,黨海燕,荀艷麗
(西安明德理工學(xué)院,陜西 西安 710124)
實(shí)驗(yàn)室是科研實(shí)驗(yàn)的平臺(tái),其環(huán)境對(duì)于實(shí)驗(yàn)設(shè)備的壽命有著十分重要的影響,對(duì)于科研人員的生命安全也至關(guān)重要。為了進(jìn)一步提高實(shí)驗(yàn)室的安全性,提升實(shí)驗(yàn)室安全管理的智能化,從而更科學(xué)地對(duì)實(shí)驗(yàn)室環(huán)境進(jìn)行監(jiān)測(cè),保證實(shí)驗(yàn)室的安全性,本文開(kāi)發(fā)了實(shí)驗(yàn)室環(huán)境監(jiān)測(cè)平臺(tái)。隨著科技的不斷發(fā)展,物聯(lián)網(wǎng)技術(shù)不斷普及,成為全面應(yīng)用在當(dāng)前人與物以及物與物溝通聯(lián)系領(lǐng)域的新型技術(shù)體系[1-3],給人們生活和生產(chǎn)帶來(lái)了很大的改變。本系統(tǒng)通過(guò)無(wú)線網(wǎng)絡(luò)結(jié)合物聯(lián)網(wǎng)技術(shù)對(duì)多個(gè)實(shí)驗(yàn)室環(huán)境數(shù)據(jù)進(jìn)行采集,為實(shí)驗(yàn)室環(huán)境監(jiān)測(cè)平臺(tái)提供可靠的數(shù)據(jù)[4]。
實(shí)驗(yàn)室環(huán)境監(jiān)測(cè)系統(tǒng)分為上位機(jī)和下位機(jī)兩部分[5]。下位機(jī)是硬件部分,主要完成實(shí)驗(yàn)室環(huán)境數(shù)據(jù)的采集以及發(fā)送。上位機(jī)主要是軟件部分,即實(shí)驗(yàn)室環(huán)境監(jiān)測(cè)平臺(tái),實(shí)現(xiàn)實(shí)驗(yàn)室環(huán)境數(shù)據(jù)的存儲(chǔ)、分析和處理以及可視化顯示。系統(tǒng)框架如圖1所示。
圖1 系統(tǒng)架構(gòu)
系統(tǒng)下位機(jī)主要包含四部分:傳感器、MCU、報(bào)警模塊以及無(wú)線模塊。其中,傳感器用于采集實(shí)驗(yàn)室環(huán)境數(shù)據(jù)[6],本系統(tǒng)溫濕度模塊選用DHT11傳感器,煙霧采集模塊采用MQ-2煙霧濃度傳感器,PM2.5采集模塊采用SDS011傳感器;MCU負(fù)責(zé)對(duì)傳感器采集到的數(shù)據(jù)進(jìn)行解析,本系統(tǒng)采用STC89C52單片機(jī);報(bào)警模塊采用蜂鳴器和發(fā)光二極管分別實(shí)現(xiàn)聲音和光線報(bào)警,從而提醒實(shí)驗(yàn)室管理人員實(shí)驗(yàn)室的異常情況;無(wú)線模塊主要負(fù)責(zé)將數(shù)據(jù)傳遞給服務(wù)器。下位機(jī)的系統(tǒng)原理如圖2所示。
圖2 下位機(jī)系統(tǒng)原理
本系統(tǒng)主要是對(duì)實(shí)驗(yàn)室環(huán)境進(jìn)行監(jiān)測(cè)。根據(jù)實(shí)驗(yàn)室的實(shí)際需求得出本系統(tǒng)主要監(jiān)測(cè)的環(huán)境指標(biāo)有溫度、濕度、PM2.5、煙霧。設(shè)置數(shù)據(jù)庫(kù)名為environment數(shù)據(jù)庫(kù),設(shè)置表名為monitor表,該表主要用于存儲(chǔ)實(shí)驗(yàn)室的各項(xiàng)環(huán)境指標(biāo)的值,其屬性和約束見(jiàn)表1所列。
表1 monitor表的屬性和約束
本系統(tǒng)選取以高效、簡(jiǎn)潔、高可靠性著稱的免費(fèi)開(kāi)源MySQL數(shù)據(jù)庫(kù)進(jìn)行開(kāi)發(fā)設(shè)計(jì)。MySQL數(shù)據(jù)庫(kù)支持標(biāo)準(zhǔn)化SQL查詢語(yǔ)言,能夠?qū)崿F(xiàn)高速存儲(chǔ)數(shù)據(jù);同時(shí)支持線程池,能夠在充分利用硬件資源的情況下,應(yīng)對(duì)大量的并發(fā)請(qǐng)求[7-8]。根據(jù)設(shè)計(jì)的表關(guān)系,采用標(biāo)準(zhǔn)SQL語(yǔ)言在關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)MySQL中創(chuàng)建數(shù)據(jù)庫(kù)表monitor表。
實(shí)驗(yàn)室環(huán)境監(jiān)測(cè)平臺(tái)主要是管理人員能夠直觀查看每個(gè)實(shí)驗(yàn)室的環(huán)境數(shù)據(jù)是否正常,并根據(jù)需要能夠查看每個(gè)實(shí)驗(yàn)室的具體情況以及各種環(huán)境數(shù)據(jù)的變化趨勢(shì),從而推斷實(shí)驗(yàn)室的情況,做出預(yù)防措施。平臺(tái)采用前后端分離的形式實(shí)現(xiàn),數(shù)據(jù)庫(kù)采用MySQL5.7,后端采用MVC模式以及SpringBoot框架和MyBatis持久層框架[9-10],前端采用Vue框架、Element組件和ECharts數(shù)據(jù)可視化組件。
前端通過(guò)created()函數(shù)加載頁(yè)面時(shí),通過(guò)請(qǐng)求alllabortory路徑請(qǐng)求后端,后端通過(guò)調(diào)用tb_laboratoryService接口的 findAllaboratorys()方法找出所有的實(shí)驗(yàn)室,再調(diào)用tb_laboratoryService接口的 findAllaboratory()方法查找出每個(gè)實(shí)驗(yàn)室對(duì)應(yīng)的環(huán)境數(shù)據(jù)。前端采用按鈕展示所有實(shí)驗(yàn)室,為了能夠更加清楚顯示實(shí)驗(yàn)室的狀態(tài),遍歷獲取的結(jié)果集,對(duì)遍歷出來(lái)的對(duì)象分別判斷溫度、濕度、PM2.5以及煙霧是否正常,若有一個(gè)數(shù)據(jù)不正常,則將按鈕設(shè)置為橘黃色,否則將按鈕設(shè)置為綠色。為了實(shí)驗(yàn)室管理員能夠更加清楚地查看實(shí)驗(yàn)室的具體情況,給按鈕設(shè)置點(diǎn)擊事件,通過(guò)this.$router.push({'path':'/Lin',query:index})進(jìn)行頁(yè)面跳轉(zhuǎn),顯示當(dāng)前實(shí)驗(yàn)室環(huán)境的具體情況。
為了能夠清楚展示實(shí)驗(yàn)室環(huán)境數(shù)據(jù)的變化趨勢(shì),系統(tǒng)采用可視化形式進(jìn)行數(shù)據(jù)的顯示。在頁(yè)面中首先為可視化圖標(biāo)設(shè)置對(duì)應(yīng)的空間容器,分別通過(guò)drawLineChart()、drawLineCharts()、Histograms()函數(shù)對(duì)溫度看板、濕度看板和PM2.5看板進(jìn)行繪制,再通過(guò)drawCharts()函數(shù)用后端獲取的數(shù)據(jù)對(duì)其進(jìn)行渲染。具體獲取數(shù)據(jù)流程:通過(guò)$axios的post請(qǐng)求根據(jù)上個(gè)頁(yè)面?zhèn)鬟^(guò)來(lái)的參數(shù)作為傳往后端的參數(shù)。后端通過(guò)monitorService接口的allTemp()方法對(duì)該實(shí)驗(yàn)室的最后20條數(shù)據(jù)即最新采集的數(shù)據(jù)進(jìn)行查找和遍歷,找出所有時(shí)間,通過(guò)new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(monitor_time)將時(shí)間轉(zhuǎn)為字符串格式,并通過(guò)format.substring(10,16)方法對(duì)時(shí)、分進(jìn)行截?。粚⑻幚砗玫臄?shù)據(jù)存入時(shí)間集合,通過(guò)Msg.setDatas()將時(shí)間集合傳入前端。前端定義兩個(gè)數(shù)組,用來(lái)存放圖表的X軸與Y軸的數(shù)據(jù),并用push()方法對(duì)數(shù)組進(jìn)行賦值,從而實(shí)現(xiàn)了數(shù)據(jù)可視化顯示。實(shí)驗(yàn)室環(huán)境監(jiān)測(cè)平臺(tái)界面如圖3所示。
圖3 實(shí)驗(yàn)室環(huán)境監(jiān)測(cè)平臺(tái)界面
本系統(tǒng)結(jié)合物聯(lián)網(wǎng)技術(shù)對(duì)實(shí)驗(yàn)室數(shù)據(jù)進(jìn)行采集,并通過(guò)前后端分離的形式開(kāi)發(fā)了實(shí)驗(yàn)室環(huán)境監(jiān)測(cè)平臺(tái),實(shí)驗(yàn)室管理人員能夠清楚地查看所有實(shí)驗(yàn)室的狀態(tài)、環(huán)境數(shù)據(jù)以及數(shù)據(jù)的變化趨勢(shì)。為了提高用戶體驗(yàn)度,系統(tǒng)采用可視化形式進(jìn)行環(huán)境數(shù)據(jù)的展示,對(duì)有異常數(shù)據(jù)的實(shí)驗(yàn)室按鈕進(jìn)行警示性顏色設(shè)置。本系統(tǒng)平臺(tái)的實(shí)現(xiàn)使實(shí)驗(yàn)室的安全管理更加人性化和智能化,提高了實(shí)驗(yàn)室管理效率。