李 豐,伍彩虹
(1.廣東盈峰科技有限公司,廣東 佛山 528322;2.順德職業(yè)技術(shù)學(xué)院,廣東 佛山 528300)
環(huán)境監(jiān)測是應(yīng)對環(huán)境問題的關(guān)鍵,為了提高對環(huán)境的監(jiān)測效率,需要針對環(huán)境監(jiān)測系統(tǒng)展開分析,合理對系統(tǒng)環(huán)境進(jìn)行設(shè)計,使系統(tǒng)能夠更好地投入使用,滿足應(yīng)急人員對環(huán)境問題的響應(yīng)指標(biāo)。環(huán)境信息采用動態(tài)圖表進(jìn)行顯示,應(yīng)用圖形化顯示技術(shù),便于工作人員對數(shù)據(jù)監(jiān)測結(jié)果進(jìn)行觀察,確定環(huán)境數(shù)據(jù)的具體信息情況,將數(shù)據(jù)以圖形的方式進(jìn)行展示,提高對環(huán)境數(shù)據(jù)信息的辨識度。
環(huán)境監(jiān)測過程中,需要注重框架的整體結(jié)構(gòu),確保監(jiān)測系統(tǒng)具有完整的框架,如圖1所示,為系統(tǒng)的各項功能提供支持,滿足可視化系統(tǒng)的設(shè)計指標(biāo)。環(huán)境監(jiān)測系統(tǒng)框架形式如下:第一,數(shù)據(jù)接入層。由傳感器模塊和通信模塊組成,實現(xiàn)對數(shù)據(jù)的采集與傳輸,保障環(huán)境參數(shù)得到精準(zhǔn)確認(rèn),提高環(huán)境的監(jiān)測效果,防止在數(shù)據(jù)采集過程中存在遺漏;第二,核心數(shù)據(jù)層。將數(shù)據(jù)存儲到數(shù)據(jù)庫中,為數(shù)據(jù)處理過程提供支持,實現(xiàn)對數(shù)據(jù)的調(diào)用過程,將應(yīng)急環(huán)境歷史數(shù)據(jù)展示出來,借助核心數(shù)據(jù)層實現(xiàn)查詢功能;第三,應(yīng)用支撐層。為應(yīng)用層提供各項支持,如離線地圖、數(shù)據(jù)訪問、串口通信等,確保數(shù)據(jù)能夠傳輸?shù)礁鱾€層次,滿足環(huán)境監(jiān)測數(shù)據(jù)的可視化基礎(chǔ);第四,應(yīng)用層。將環(huán)境監(jiān)測數(shù)據(jù)展示出來,通過圖形、表格等實現(xiàn)可視化,并且實現(xiàn)對環(huán)境數(shù)據(jù)的實時顯示,及時確定應(yīng)急環(huán)境的狀態(tài)信息,實現(xiàn)對監(jiān)測環(huán)境的管理功能[1]。環(huán)境監(jiān)測系統(tǒng)對框架結(jié)構(gòu)具有較高的要求,需要對不同模塊展開設(shè)計,提高模塊的應(yīng)用效果,使框架能夠順利實現(xiàn),保障環(huán)境監(jiān)測系統(tǒng)具有良好的層次。
圖1 總體框架圖
通過用戶管理模塊可以對不同用戶進(jìn)行管理,規(guī)范用戶的使用流程,規(guī)定用戶對數(shù)據(jù)庫的訪問行為,對用戶的訪問權(quán)限進(jìn)行控制。根據(jù)用戶的層次不同,將其劃分為管理員、高級用戶、普通用戶,同時為用戶分配不同的權(quán)限,滿足用戶對當(dāng)前工作的需求,不向其開放職責(zé)之外的權(quán)限。用戶登錄過程中,由用戶管理模塊實現(xiàn)身份的驗證,檢驗用戶名、密碼、身份信息等是否有效,確定用戶是否滿足身份條件,保障指定用戶能夠進(jìn)行登錄。訪問權(quán)限方面,包括增加、刪除、修改、查看四個權(quán)限,管理員具備所有權(quán)限,可對所有環(huán)境監(jiān)測信息進(jìn)行訪問;高級用戶可以對數(shù)據(jù)信息進(jìn)行查看,相對地,普通用戶僅能對部分信息進(jìn)行查看,部分功能將不被開放,需要提升用戶權(quán)限后才能查看信息,對應(yīng)急環(huán)境數(shù)據(jù)進(jìn)行訪問。在用戶權(quán)限的作用下,可避免數(shù)據(jù)信息被意外修改,有助于提高環(huán)境監(jiān)測數(shù)據(jù)的安全性,保障對用戶權(quán)限的限制作用,防止環(huán)境數(shù)據(jù)被非法使用。權(quán)限對用戶具有約束作用,防止用戶對參數(shù)信息進(jìn)行修改,針對用戶可視化過程進(jìn)行管理,使用戶管理模塊能夠發(fā)揮作用。
環(huán)境監(jiān)測數(shù)據(jù)傳輸過程中,實現(xiàn)對數(shù)據(jù)的發(fā)送和接收,保證數(shù)據(jù)傳輸?shù)姆€(wěn)定性。串口通信模塊設(shè)計需要遵守串行通信的要求,對串口通信參數(shù)進(jìn)行配置,提高通信環(huán)境的標(biāo)準(zhǔn)化程度,避免對數(shù)據(jù)傳輸造成影響。串口通信參數(shù)包括端口號、波特率、校驗位等,是實現(xiàn)穩(wěn)定通信控制的關(guān)鍵,需要對數(shù)據(jù)的傳輸過程進(jìn)行驗證,保障數(shù)據(jù)能夠得到精準(zhǔn)傳輸。數(shù)據(jù)傳輸過程中,引入傳感器網(wǎng)絡(luò)節(jié)點,與計算機(jī)COM口建立通信關(guān)系,使參數(shù)傳輸過程能夠保持一致,提高數(shù)據(jù)的接收效果。對于臨時傳輸?shù)臄?shù)據(jù),采用臨時開放接口的方式,提供一次性數(shù)據(jù)傳輸通道,數(shù)據(jù)傳輸完畢后斷開端口;對于實時傳輸?shù)臄?shù)據(jù),由通信串口對數(shù)據(jù)進(jìn)行監(jiān)聽,將數(shù)據(jù)傳輸?shù)骄彌_區(qū),逐條對數(shù)據(jù)進(jìn)行處理,滿足數(shù)據(jù)的實時處理需求,通過緩沖區(qū)的控制,避免數(shù)據(jù)在傳輸過程中造成丟失。數(shù)據(jù)傳輸過程中,需要對數(shù)據(jù)進(jìn)行解碼校驗,確保數(shù)據(jù)具有完整的報文編碼,提高數(shù)據(jù)傳輸控制的精準(zhǔn)程度。以溫度數(shù)據(jù)傳輸為例,需要注重溫度傳感器的應(yīng)用,采用單片機(jī)對傳感器進(jìn)行控制,遵守單片機(jī)發(fā)送協(xié)議的要求,將溫度信息傳輸?shù)綌?shù)據(jù)庫中,實現(xiàn)對環(huán)境溫度信息的采集。為了滿足溫度監(jiān)測的實時要求,以40 bit且10幀作為一個監(jiān)測周期,對環(huán)境的溫度變化情況進(jìn)行采集,保障溫度數(shù)據(jù)得到有效發(fā)送[2]。
2.3.1 文件存儲
為了滿足環(huán)境監(jiān)測系統(tǒng)可視化需求,需要對本地數(shù)據(jù)進(jìn)行存儲,用于對不變數(shù)據(jù)進(jìn)行保存,實現(xiàn)對數(shù)據(jù)的加載與調(diào)用。應(yīng)急環(huán)境監(jiān)測過程中,需要對地理數(shù)據(jù)進(jìn)行調(diào)用,以gmdb格式進(jìn)行存儲,便于獲取指定的地理數(shù)據(jù)來源,縮短數(shù)據(jù)的調(diào)用時間,使文件存儲能夠發(fā)揮作用。地理數(shù)據(jù)類型及來源在Map中進(jìn)行制定,由GMap實現(xiàn)對實例的加載,對地理文件數(shù)據(jù)加以管理。對地理文件進(jìn)行操作時,需要通過API函數(shù)進(jìn)行控制,包括CreateFile、ReadFile、WriteFile等,提高文件存儲數(shù)據(jù)的采集效率。地理數(shù)據(jù)以字符串方式進(jìn)行調(diào)用,需要對數(shù)據(jù)進(jìn)行分離與轉(zhuǎn)化,使數(shù)據(jù)具有完善的輸出形式,將數(shù)據(jù)向可視化方向進(jìn)行演變。文件存儲主要針對本地基礎(chǔ)數(shù)據(jù),將常用數(shù)據(jù)資源在本地進(jìn)行保存,使數(shù)據(jù)的調(diào)用更加方便,實現(xiàn)對數(shù)據(jù)可視化主體對象的加載。
2.3.2 關(guān)系型數(shù)據(jù)庫存儲
關(guān)系型數(shù)據(jù)與變量具有依存關(guān)系,將數(shù)據(jù)存儲在數(shù)據(jù)庫中,以一系列行與列的形式組成數(shù)據(jù)表,便于對數(shù)據(jù)進(jìn)行查找和調(diào)用,使數(shù)據(jù)參數(shù)更加明確。通常情況下,這種存儲方式適用于數(shù)據(jù)量不大的情況,數(shù)據(jù)具有較強(qiáng)的對應(yīng)關(guān)系。關(guān)系型數(shù)據(jù)存儲過程中,需要對數(shù)據(jù)結(jié)構(gòu)展開設(shè)計,采用編碼對同一組數(shù)據(jù)進(jìn)行標(biāo)識,使數(shù)據(jù)表具有完整的結(jié)構(gòu),便于對數(shù)據(jù)展開調(diào)用,實現(xiàn)對環(huán)境參數(shù)的存儲。對于不同的數(shù)據(jù)而言,需要采用字段方式進(jìn)行標(biāo)識,如溫度(TEMP)、濕度(HUM)、苯濃度,對應(yīng)數(shù)據(jù)類型分別為int、int、float,建立字段與數(shù)據(jù)之間的關(guān)系,便于對環(huán)境數(shù)據(jù)進(jìn)行唯一標(biāo)識。數(shù)據(jù)使用過程中,采用SQL語句進(jìn)行調(diào)用,能夠提高數(shù)據(jù)的調(diào)用效率,通過數(shù)據(jù)表獲取應(yīng)急環(huán)境的相關(guān)信息,構(gòu)建規(guī)范的數(shù)據(jù)設(shè)計環(huán)境。
2.3.3 內(nèi)存數(shù)據(jù)庫存儲
內(nèi)存數(shù)據(jù)庫存儲過程中,一般為非關(guān)系型數(shù)據(jù),以鍵值對的方式進(jìn)行存儲,提高對數(shù)據(jù)的修改速度。以Marker層地理標(biāo)記數(shù)據(jù)為例,采用兩部分對數(shù)據(jù)進(jìn)行存儲,分別為地理位置(POSITION)和狀態(tài)數(shù)據(jù)(STATE),將環(huán)境參數(shù)與地理位置相匹配,產(chǎn)生具有地理標(biāo)記的數(shù)據(jù)源,實現(xiàn)對空間數(shù)據(jù)的有效存儲??臻g數(shù)據(jù)存儲采用節(jié)點矢量形式,根據(jù)地理屬性確定節(jié)點的狀態(tài),對數(shù)據(jù)源的真實性進(jìn)行把控,使內(nèi)存數(shù)據(jù)庫得到有效解析。節(jié)點狀態(tài)存儲過程中采用Hash類型,提高對節(jié)點狀態(tài)的檢索效率,便于對內(nèi)存數(shù)據(jù)庫進(jìn)行查找。為了實現(xiàn)內(nèi)存數(shù)據(jù)庫的有效調(diào)用,需要將地理位置與狀態(tài)數(shù)據(jù)結(jié)合起來,針對非關(guān)系型數(shù)據(jù)進(jìn)行確定,滿足數(shù)據(jù)庫調(diào)用的邏輯需求,使內(nèi)存數(shù)據(jù)能夠得到有效應(yīng)用[3]。
2.4.1 數(shù)據(jù)導(dǎo)入與導(dǎo)出
應(yīng)急環(huán)境監(jiān)測過程中,需要頻繁地對數(shù)據(jù)進(jìn)行調(diào)用,對數(shù)據(jù)進(jìn)行導(dǎo)入和導(dǎo)出處理,并且與可視化過程結(jié)合起來,構(gòu)建數(shù)據(jù)分析的基礎(chǔ)環(huán)境。數(shù)據(jù)導(dǎo)入和導(dǎo)出相對于數(shù)據(jù)庫而言,通過SQL語句進(jìn)行控制,實現(xiàn)對數(shù)據(jù)庫的快速操作,使數(shù)據(jù)導(dǎo)出功能更加完善。如數(shù)據(jù)導(dǎo)入、導(dǎo)出可通過INSERT、SELECT等依據(jù)實現(xiàn),提高對數(shù)據(jù)控制的效率,通過相應(yīng)的語句對數(shù)據(jù)進(jìn)行操作,使數(shù)據(jù)模塊得到有效運用。對于數(shù)據(jù)導(dǎo)入過程,需要通過導(dǎo)入模塊實現(xiàn),將采集到的環(huán)境信息存儲到數(shù)據(jù)庫中,將其以歷史記錄的方式進(jìn)行存儲,為后續(xù)階段數(shù)據(jù)的調(diào)用作準(zhǔn)備。對于數(shù)據(jù)導(dǎo)出過程,由導(dǎo)出模塊來完成,從數(shù)據(jù)庫中導(dǎo)出完整的數(shù)據(jù)信息,便于對環(huán)境數(shù)據(jù)進(jìn)行分析,提高數(shù)據(jù)分析結(jié)果的可靠性。導(dǎo)出模塊將數(shù)據(jù)導(dǎo)出到界面中,由圖形化界面進(jìn)行展示,使數(shù)據(jù)具有整潔的顯示環(huán)境,確保數(shù)據(jù)可以一目了然。同時,還可以將數(shù)據(jù)以報表形式導(dǎo)出,對數(shù)據(jù)進(jìn)行離線存儲,方便對數(shù)據(jù)進(jìn)行保存與分發(fā),并且導(dǎo)出的不同格式的數(shù)據(jù),便于對數(shù)據(jù)類型進(jìn)行整理[4]。
2.4.2 污染點分析評價
環(huán)境監(jiān)測過程中,需要做好污染點的評價工作,采用單因子評價的方式,明確污染點的監(jiān)測指標(biāo),將不同因子的評價指標(biāo)進(jìn)行對比。不同因子展示采用柱狀圖實現(xiàn)可視化,便于對污染點的污染情況進(jìn)行排查,降低污染對環(huán)境的影響。單因子評價公式如下:
式中,Pi為某一評價指標(biāo)的相對污染值;Ci為某一評價指標(biāo)的實測濃度;Csi為某一評價指標(biāo)的最高允許標(biāo)準(zhǔn)值。通過上述公式,可得到監(jiān)測站位與觀測值的條形圖,對不同站點的觀測值進(jìn)行對比,實現(xiàn)對觀測值的有效分析。另外,需要注重等標(biāo)排放法模型的運用,對環(huán)境中的各類污染物進(jìn)行整合,由數(shù)據(jù)分析確定污染物及污染源情況,使用餅狀圖分析污染源的占比情況,便于掌握污染源的集中分布情況。為了降低污染源的影響,需要確保污染點評價的主動性,將評價結(jié)果記錄到數(shù)據(jù)庫中,對評價的總結(jié)果進(jìn)行對比,便于對不同監(jiān)測要素進(jìn)行掌控。
2.5.1 數(shù)據(jù)圖形化處理
為了將環(huán)境數(shù)據(jù)以圖形方式進(jìn)行展示,需要注重圖形繪制工具的應(yīng)用,采用CDC封裝類對圖形進(jìn)行操作,繪制出符合數(shù)據(jù)變化的等比例圖形,使數(shù)據(jù)的展示效果更加清晰。CDC類繪制點、線、面較為方便,可以通過條形圖、扇形圖對數(shù)據(jù)進(jìn)行展示,便于確定數(shù)據(jù)的變化情況。以溫度、濕度為例,經(jīng)過可視化處理后,以時間(d)為x軸,溫度(℃)、濕度(%)為y軸,可繪制出溫度、濕度隨時間變化的折線圖,便于對環(huán)境變化趨勢進(jìn)行展示,有助于數(shù)據(jù)圖形化的實現(xiàn)。圖形是實現(xiàn)數(shù)據(jù)可視的基礎(chǔ),關(guān)鍵點在于數(shù)據(jù)的直觀展示,將數(shù)據(jù)可視化功能發(fā)揮到最大化,提高環(huán)境監(jiān)測效果。另外,還可以采取條形框圖顯示方式,實現(xiàn)對溫度、濕度的動態(tài)顯示,確定當(dāng)前環(huán)境數(shù)據(jù)的實時變化情況,將圖形界面與實時輸出結(jié)合起來。
2.5.2 動態(tài)數(shù)據(jù)圖表
環(huán)境數(shù)據(jù)可借助動態(tài)數(shù)據(jù)圖表進(jìn)行顯示,將動態(tài)數(shù)據(jù)轉(zhuǎn)化為圖表,將重點數(shù)據(jù)進(jìn)行突出顯示,對環(huán)境參數(shù)變化進(jìn)行動態(tài)顯示。圖表繪制過程中,需要注重界面庫的使用,采用MFC、Duilib、QT等展開設(shè)計,使圖表信息得到精準(zhǔn)展現(xiàn)。在圖表信息方面,便于對數(shù)據(jù)進(jìn)行更新,可實時顯示數(shù)據(jù)的變化,對于重點數(shù)據(jù)可單獨進(jìn)行觀察,對數(shù)據(jù)進(jìn)行重點監(jiān)視。圖表設(shè)計過程中,需要使用CListCtrl類,針對圖表的基本信息進(jìn)行設(shè)計,如字體、顏色等,使圖表看起來更加美觀,提高圖表的設(shè)計質(zhì)量。同時,需要對列表的節(jié)點進(jìn)行更新,確定節(jié)點的參數(shù)變化,確保圖表時間范圍的準(zhǔn)確性。為了滿足動態(tài)圖表顯示效果,需要對圖表定時刷新,周期為5 min,對數(shù)據(jù)變化情況進(jìn)行判斷,必要時可手動對數(shù)據(jù)進(jìn)行刷新,及時對環(huán)境數(shù)據(jù)的狀態(tài)進(jìn)行掌控,使數(shù)據(jù)狀態(tài)得到有效展示[5]。
2.5.3 多圖層同步顯示
數(shù)據(jù)可視化顯示過程中,需要注重多圖層同步顯示,對系統(tǒng)內(nèi)的空間數(shù)據(jù)進(jìn)行同步縮放,避免影響到環(huán)境數(shù)據(jù)的展示效果。多圖層包括Map層、Overlay層、矢量數(shù)據(jù)層,需要做好圖層之間的相互綁定工作,防止數(shù)據(jù)變化過程中出現(xiàn)偏差,導(dǎo)致數(shù)據(jù)無法正常投入使用,影響圖層顯示的同步性。在圖層綁定過程中,需要將矢量數(shù)據(jù)層與Overlay層綁定,再將整體與Map層綁定,確保與Map層數(shù)據(jù)的一致性,避免圖層數(shù)據(jù)間發(fā)生偏移。為保證圖層縮放層級相同,可以對Map方法進(jìn)行重寫,使Map層能夠更好地發(fā)揮作用,使圖層能夠得到同步標(biāo)識,保證對圖層進(jìn)行同步操作。圖層運用過程中,需要確保底圖中心重合,構(gòu)建出完善的圖層控制形式,實現(xiàn)多圖層同步控制設(shè)計,提高數(shù)據(jù)可視化顯示的精準(zhǔn)程度。
綜上所述,應(yīng)急環(huán)境監(jiān)測過程中,需要采用可視化監(jiān)測手段,提高應(yīng)急環(huán)境的監(jiān)測水平,對環(huán)境監(jiān)測系統(tǒng)進(jìn)行完善。環(huán)境監(jiān)測系統(tǒng)需要合理進(jìn)行設(shè)計,通過數(shù)據(jù)分析及運用支撐可視化顯示過程,使數(shù)據(jù)能夠更好地進(jìn)行展示,構(gòu)建良好的數(shù)據(jù)查詢環(huán)境。圖形化是確定環(huán)境信息的關(guān)鍵,需要明確節(jié)點位置及屬性,保障監(jiān)測系統(tǒng)對環(huán)境信息的輸出顯示效果。