王磊+黎望懷+劉殿武


【摘要】 煤礦安全生產熱力圖WebApp是基于百度地圖開放平臺Javascrip API開發的,采用.NET的三層構架,將地理信息由XML轉換成JSON數據交換格式,利用HTML5的canvas標簽圖像功能,將煤礦安全生產事故信息在地圖上以熱力圖的模式反饋給煤礦安全監管人員。分析事故信息與時間和空間上的關系,為煤礦安全監管提供及時準確的監管信息。
【關鍵字】 煤礦安全生產 熱力圖 HTML5
引言
湖南地區煤礦點多面廣,開采難度大,安全監管任務重。為了能夠讓安全監管人員隨時隨地的掌握煤礦安全的數據信息,采用萬維網聯盟宣布的新一代超文本標記語言HTML5.0在移動應用和圖形顯示上的優勢,利用Web的具有跨平臺的優點,可以很好的兼容Android和iOS平臺,降低了開發成本,用戶無需安裝、維護和更新[1]。將煤礦安全生產中的事故時間、事故類型、事故原因、事故致因、經濟損失等信息在WebApp的地圖上以熱力圖的形式展示,將事故的信息與地理位置結合起來,為煤礦安全監管理提供準確、及時地決策支持數據。監管人員可以在時間和空間上來審視和剖析煤礦安全監管事故數據的關系,更深層次的挖掘安全事故之間的聯系,總結相關的事故規律。
一、系統體系結構與數據庫的設計
系統采用界面層、應用服務層和數據服務層三層結構進行設計[2]。界面層的主要是解決用戶與WebApp之間的交互問題。一是反饋地圖數據信息,二是用戶信息檢索。系統嵌入百度地圖Javascrip API中的熱力圖,用以構建WebAPP的地理信息平臺,將事故的信息與發生的地理位置用熱力圖的形式反饋在地圖上。用戶可以根據自己的需求,設置需要檢索和展示的參數,觀察和對比煤礦事故的各類信息。應用服務器用于處理用戶的信息檢索,地理的數據轉換和熱力圖的參數設置。數據服務層用于存取煤礦礦井信息、煤礦安全生產事故信息和煤礦地理坐標信息等。
數據庫主要有三個表。一個是煤礦礦山的信息,二是煤礦安全生產事故信息,三是煤礦地理坐標。煤礦礦山信息主要保存的是礦山的規模、類型和煤礦生產能力。煤礦安全生產事故信息保存的是煤礦事故的類型,起因,傷亡人數等。煤礦地理坐標信息保存的是煤礦的經緯度。根據這些信息能夠將煤礦信息和煤礦事故信息在地圖上以空間和時間的方式反饋給用戶。
二、熱力圖
熱力圖是用不同顏色的區塊疊加在地圖上實時描述相關信息分布、密度和變化趨勢的一個WebApp。熱力圖的優勢在于沒有使用枯燥的數據表格式的分析,而是采用圖像化的方式進行表示,能夠清晰的顯示熱度信息在地圖上的分布情況。將各類煤礦安全生產事故數據根據時間、地點、事故類型、事故原因、事故致因、經濟損失等類型進行統計,形成多層次可視化的熱力圖,更深層次的挖掘煤礦安全事故與地理信息之間的聯系。
系統基于百度地圖開放平臺作為WEBAPP的基礎。百度的熱力地圖是在開源代碼heatmap.js的基礎上開發的。可以將其Javascrip代碼嵌入到系統的前端中,并調用百度開放平臺所提供的API函數實現相關功能。
主要設置的參數有:密鑰(ak),使用百度地圖開放平臺需要在“百度開發者中心”注冊,并創建應用,而后獲取密鑰。將密鑰嵌入到百度提供的源代碼中,即可調用百度地圖的JavaScript API,對于熱力圖而言沒有設置使用次數的限制。openHeatmap()和closeHeatmap()函數用于“顯示和關閉熱力圖”。初始化地圖函數map.centerAndZoom(point,size)是用于初始化地圖,其中有兩個參數:point是設置初始化地圖的時候中心點的坐標,size是地圖的級別。百度的地圖級從20米到2000公里,共3-19級,共17個級別。系統設置成初始為8級,能夠較好的展示整個湖南省的地區。熱力圖采用HTML5的canvas標簽繪制圖形圖像,降低了對瀏覽器插件的依賴,便于在移動終端、便攜電腦等終端設備上的Web瀏覽器上顯示圖形信息[3]。
三、XML與JSON之間的轉換
百度熱力地圖中采用的是JSON數據格式,系統中采用的是XML的數據格式。地理信息需要將XML的數據格式轉換成為JSON數據格式,因為從安全性和運行效率上看JSON比XML更適合在Web應用中做為數據的交換格式使用[4]。
XML(Extensible Markup Language)可擴展標記語言,是一種跨平臺的格式化語言,采用了父/子的數據結構,應用程序可以共享和解析同一個XML文件。JSON (Java Script Object Notation)是一種輕量級的數據交換格式,是基于Javascrip語言的一種獨立文本格式,可以傳輸字符串、數組、數值、布爾值和對象等多種數據類型。
百度熱力圖JSON數據格式是[“lng”:116.418264,“lat”:39.912984,”count”:50],其中“lng”和“lat”是百度坐標的經緯度。但是百度坐標的值與GPS的經緯度是不同的,不能通用。如果采用GPS的坐標,需要由百度的地圖轉換接口進行轉換。“count”是權重,于在熱力圖上展示不同的層級。例如在煤礦事故中作為量值,該地區發生煤礦事故為3起,則該值為3,能夠反映出該地區事故發生的情況與其他地區進行對比。對于有些煤礦事故類型而言,數據的值偏小。偏小的值在熱力圖上顏色較淺,用戶難以觀察。為了能夠在地圖上明確的展示數據的分布情況,需要將數據的值放大處理。在對比多個類型的數據的時候,需要將數據統一放大到同一個數量級別,才能夠方便用戶在不同的事故類型之間進行對比。
.NET技術提供了處理DATASET數據集轉成XML數據結構的方法,從查詢的到的數據寫入到文件中的XML數據結構如下:
四、煤礦安全生產事故熱力圖
湖南省地區根據其含煤建造的展布及煤炭資源賦存特征大體呈現為桑石、黔溆、漣邵、韶山、郴耒、資汝六大煤田區[5]。通過對歷年的煤礦事故的總計得出的熱力圖,與湖南省的煤炭資源的分布相吻合,主要煤礦事故集中的地區是漣邵和郴耒煤田區。
湖南省煤礦常發事故類型有四種,如圖2所示。從左至右分別是 “冒頂片幫事故”,“瓦斯事故”,“中毒和窒息事故”和“透水事故”。
冒頂片幫事故是指礦井頂板和側壁發生坍塌致害的事故,這類事故我省六大煤田區中都有分布,是一個非常普遍的事故類型。瓦斯事故是指礦井釋放大量瓦斯氣體致害的事故,該類主要集中在漣邵煤田和郴耒煤田區。中毒和窒息事故主要是由瓦斯事故造成,所以在邵煤田和郴耒煤田區也是該類事故的高發地區。從透水事故的熱力圖上看主要發生在桑石、黔溆和郴耒煤田。根據不同事故類型在地圖上的分布情況,分析煤炭事故在煤層地理上的分布規律,可以有針對性的實施安全管理措施。
五、結論
利用熱力圖的方式展示煤礦安全生產事故信息,能夠將信息的數量和地理位置反映出來。安全監管人員能夠從空間和時間的層面上直觀的分析數據的特征。湖南省煤礦資源地質結構復雜,分布不均。
煤礦安全生產事故多以冒頂片幫和瓦斯事故為主,反映出煤礦事故與地質環境之間存在著關聯。WebApp提供給用戶方便簡介的系統功能訪問方式,便于安監人員使用和操作,提供了一種煤礦安全生產監管的手段。
參 考 文 獻
[1] 周森鵬,陸正球,張城,等. 基于HTML5的企業WebApp設計與實現[J]. 現代計算機(專業版), 2015(7): 51-54.
[2] 杜傳明. 百度地圖API在小型地理信息系統中的應用[J]. 測繪與空間地理信息, 2011, 34(2): 167-168, 171.
[3] 徐莎,楊帆,徐昌慶. 基于HTML5的WebGIS的研究與應用[J]. 信息技術, 2012(4): 149-151.
[4] 胡千里. 比較XML與JSON在Web中的應用[J]. 中小企業管理與科技(下旬刊), 2011(7): 273-275.
[5] 陳美英. 湖南省煤炭資源構造特點及找煤潛力分析[J]. 資源與產業, 2009, 11(6): 68-72.