陳 杰
(1.中煤科工集團沈陽研究院有限公司,遼寧 撫順 113122;2.煤礦安全技術國家重點實驗室,遼寧 撫順 113122)
在我國加快經濟體制轉軌的時代背景下,煤礦企業從傳統的粗放型管理模式向集約型管理模式轉變,必須以信息技術所帶來的企業管理提升和創新為支撐力量,信息技術是煤礦行業可持續發展的重要技術保障之一。隨著5G、云計算、大數據、人工智能等信息技術不斷發展,進一步加速煤礦企業的信息化發展,在煤礦產業中的應用不斷深入,煤礦信息化發展取得階段性進展,受到各部門及各級領導的廣泛關注,煤礦信息化、智能化是我國煤礦產業發展的必然趨勢。
近幾年,國家及各地方政府陸續制定了智慧礦山的建設規范,煤礦企業、廠商、科研院所也已經開始了煤礦智能化建設方面的試點,很多的煤礦企業都相繼在智能化建設方面取得一些進展。總體來講,從產業的角度看,煤礦企業在逐步推動礦井綜合自動化與信息化管理以及推進數字化礦山建設進程。目前煤炭行業智能化水平與其他行業相比,仍相對較低,離真正的智慧礦山尚有距離。
為進一步落實國家《智慧礦山信息系統通用技術規范》、《煤炭工業智能化礦井設計標準》及中煤科工集團《智慧企業建設指導意見》和《智慧企業建設總體規劃》,結合煤礦企業自身特點,建設一套智能化生產控制平臺,智能化生產控制平臺以互聯網、物聯網、工業互聯網建設為基礎,以大數據、人工智能為技術手段,具備“自分析、自管理、自趨優、自恢復、自學習、自提升”特征的智慧平臺,為創建一流的智慧企業提供有力的支撐和保障[1-6]。
系統總體架構如圖1。
圖1 系統總體架構Fig.1 Overall system architecture
由于煤礦企業的各類安全生產相關子系統由不同廠家承建,智能化程度各不相同,因此管控一體化平臺系統設計要考慮各子系統的接入方式、傳輸標準、協議規范等,并針對不同的子系統形成統一的接口標準,并考慮協議的轉換、數據處理、指令下發方案。作為整個平臺的邊緣層,實現子系統的數據接入、協議解析與智能控制。
當然海量的各子系統工業數據的存儲、分析、計算及智能控制,需要強大的基礎設施作為支撐。即工業互聯網中常說的IaaS 層,其中包括服務器資源、存儲資源、網絡資源等。同時采用超融合、虛擬化等技術對外提供基礎設施服務,并可按需分配[7-8]。
同時為了保證智慧煤礦管控一體化平臺系統各功能模塊能夠高效、穩定的對外提供服務,需建立統一的高并發、高可用的架構體系,包括采用容器化、分布式(存儲、部署、計算等)、微服務、大數據等技術架構來搭建工業互聯網PaaS 層。為系統運行提供開發環境、運行環境、大數據分析、數據中臺、微服務等平臺環境支持。
最終將設計、開發與煤礦企業用戶直接交互的應用層功能模塊,其中包括安全生產監控、災害預警、統計分析、GIS 一張圖、領導駕駛艙、智能控制、移動APP 等應用模塊。
智慧煤礦管控一體化平臺基于PaaS 層將開發出智能采掘、智能運輸、智能通風、智能監控、智能診斷等智慧應用模塊,實現生產的智能化調度、控制與管理。同時平臺系統保持高度的開放性,可滿足第三方專業應用模塊的集成接入。同時,可根據后續業務應用的需要進行應用模塊的擴展。
系統的邊緣層側重于設備的接入、協議轉換及邊緣數據處理。IaaS 層側重于云基礎設施,包括服務器、存儲、網絡、虛擬化等,本文不做過多闡述;PaaS層為平臺層,主要包括微服務架構、微服務組件庫、數據建模與分析、大數據系統、資源管理等,為應用層的設計與開發提供基礎的架構和服務支撐;應用層則側重于各業務邏輯系統的設計與開發,滿足用戶的各類監控、生產、分析等業務流程需求。
邊緣層數據融合如圖2。
圖2 邊緣層數據融合Fig.2 Edge layer data fusion
智慧煤礦管控一體化平臺系統所需接入的子系統類型眾多,包括采煤系統,掘進系統,機電系統,運輸系統,通風系統,排水系統等,涉及到安全生產的方方面面。其中監測監控、人員定位、語音廣播等安全監測類系統多采用FTP、WebAPI 等接口方式進行數據的采集、傳輸、處理。而大多數的自動化控制子系統軟件平臺均采用組態方式進行構建,支持OPC、Modbus 等數據通訊協議。該邊緣層的設計主要包括數據的接入、數據的處理及智能控制3 部分。其主要核心是通過DCOM、TCP/IP 等技術對多源設備、異構系統、生產要素等信息進行實時高效采集。從系統的成熟度、穩定性等考慮,選用第三方SCADA 系統作為控制類子系統的開發、監視及控制平臺,能夠提供友好的用戶交互界面設計及快捷的子系統數據接入,其中的數據采集器IOServer 支持上千種協議及設備,能快速實現數據的接入服務,對生產設備數據、或其他信息系統數據等多種來源的業務數據信息進行自動采集、處理、存儲,保證數據的及時、準確和共享。
2.1.1 安全監測子系統系統數據接入
對于安全監測類子系統,包括煤礦安全監控系統、人員定位系統、語音廣播系統等,此類系統一般在子系統層次上進行閉鎖控制、系統間融合聯動等,并有相應的行業標準。因此只需采集各系統的基礎信息、實時數據、異常數據進行數據的接入。供管控一體化平臺進行大數據分析、集中監測、實時預警。
在數據接入上采用通用的FTP 方式進行文件的傳輸,協議規范滿足國家煤礦安全監察局文件煤安監辦[2019]42 號文件關于感知數據接入細則的要求。在此,需要獨立的數據引擎軟件,對協議文件數據進行實時的讀取、解析、處理,并最終存入關系型數據庫、分布式文件系統等,進行海量數據存儲。為實時監測顯示、統計查詢分析以及大數據分析提供數據來源。
2.1.2 自動化控制子系統數據接入
對于自動化子系統,包括抽放子系統、主扇監控子系統、電力監控子系統、排水子系統、立井提升子系統、壓風子系統等。共同的特點是均采用組態的方式進行開發建設,能夠以標準化協議規范對外提供數據,并對OPC、Modbus 等通用的協議標準提供支持。同時針對現場的實際需求,采用OPC UA 架構,來實現管控一體化平臺與現場控制系統的連接,來實現數據交換;在數據接入上選用第三方成熟的SCADA 產品,并利用其提供的IOServer 數據采集器,以其高開放性和穩定性來實現各控制類子系統的數據采集、控制命令下發,最終實現給子系統的完美對接;獲得實時數據可以通過SCADA 系統進行直接圖形化展示,亦可存入數據庫進行永久保存。本數據采集服務軟件能有效解決礦山現場設備協議的差異性、子系統通訊接口的多樣性,提供統一的數據采集工具,只需要進行簡單的配置,便可接入1 個新的設備或子系統實時數據。同時數據采集服務軟件可通過簡單配置即可實現將數據轉存到各種數據庫中,如工業實時歷史數據庫、關系庫等,無需用戶考慮復雜的數據庫存儲邏輯,只需要在數據存儲頁面配置數據庫信息即可完成。
2.1.3 邊緣層數據的處理
通過FTP、UDP 等方式接入的原始數據一般會存在大量的數據冗余,數據格式不滿足管控一體化平臺應用的規范化要求,因此,需對數據進行數據預處理、數據緩存、數據持久化以及數據分析等處理。基于高性能計算、實時操作系統、邊緣分析算法等技術支撐,對數據進行加工處理,從而提升操作響應靈敏度、消除網絡堵塞,并與PaaS 平臺數據分析形成協同。滿足在實時業務、應用智能、安全與隱私保護等方面的基本需求。
2.1.4 智能控制數據的下發
由于OPC 采用Server/Client 架構,數據可以雙向通訊,OPC Server 作為數據源即子系統數據對外接口,OPC Client 客戶端即圖2 中的IOServer 數據采集器,可通過連接各子系統的OPC Server 接口來獲取數據,同時IOServer 客戶端也可將指令數據寫入OPC Server 服務器。因此,用戶可以方便的通過圖形界面,發送開、關等控制指令或者由程序根據智能控制策略進行自動控制指令的下發,并最終下發到PLC 等控制器設備實現設備的遠程控制。
平臺層的建設主要包括數據服務相關的數據存儲、數據查詢、數據建模等服務,涉及非關系型數據庫、關系型數據庫、數據倉庫技術等。還包括用戶服務、租戶管理、授權管理、用戶管理、資源管理、基礎設施管理等基礎資源管理服務。同時還包括計算服務、客戶端展示服務、采集服務等。
2.2.1 通用PaaS 平臺環境
管控一體化平臺PaaS 層是整個系統的核心,起著承上啟下的作用,任一環境、服務出現問題都有可能導致整個系統無法正常運行,所以從設計角度要滿足運行環境、服務的高并發、高可用。
首先從開發環境、運行環境方面考慮,采用主流的Spring 系列JAVA 框架作為整個系統的主要后臺開發環境,使用JDK、Tomcat、Nginx、Redis 等平臺和中間件來搭建系統的運行環境。其中JDK、Tomcat用來作為應用服務器提供系統各類服務的運行環境,Nginx 是著名的反向代理工具,可以用來作為負載均衡服務器,實現多臺應用服務器的分布式部署,并具備緩存功能,可實現靜態頁面的緩存,有利于提升整個系統的訪問性能。這里需要注意的一點就是在應用服務的程序設計上要考慮狀態無關性,訪問者的狀態數據要進行統一的存儲和管理。同時使用Docker 技術來實現應用服務的容器化部署,實現了應用服務程序的依賴隔離,快速部署與啟動。
2.2.2 大數據分析平臺
大數據分析平臺作為整個系統數據計算的核心,是整個系統的大腦。首先要對邊緣層采集上來的數據進行ETL 處理,將各業務子系統的數據經過抽取、清洗轉換之后加載到數據倉庫中,目的是將子系統中的分散、零亂、標準不統一的數據整合到一起,為下一步的大數據分析做準備。此處,可選擇Hive 等數據倉庫工具來實現各子系統數據的結構化處理[9-11]。
其次要應用大數據的開發建設工具Hadoop 來實現,該工具的核心是分布式計算與分布式數據存儲。能夠很好的解決管控一體化平臺數據量大、安全性要求高的問題。通過它的分布式文件系統能夠很好地實現數據文件的冗余備份、海量存儲及并發數據的讀取。此外,管控一體化平臺系統需進行大量的預測預警及智能控制響應,如瓦斯災害預警、火災預警等,需對采集上來的各子系統清洗后的數據通過一定的算法模型進行大數據分析,當達到預警條件時,發出預警信息,并根據智能控制配置規則進行相應的智能控制,通過系統邊緣層進行控制指令的下發。并根據預警結果不斷優化算法模型,來提高系統預判的準確性。決策驅動整個系統穩定、有序運行[12-14]。
2.2.3 數據中臺
管控一體化平臺數據中臺,首先需建立統一的數據標準規范,并對服務器資源集中虛擬化部署,形成一個統一的礦山數據中心,進行統一數據存儲管理。 數據中臺后臺數據庫由自定義業務關系數據庫、工業實時歷史數據庫、非關系型數據庫3 部分構成。
1)自定義業務關系數據庫。該數據庫,主要是針對管控一體化平臺各子系統具體業務邏輯,以及子系統之間的業務關系而設計,根據各子系統相關對象屬性信息抽象出關系型數據庫中對應的數據表,同時也是為了便于業務數據的管理,提高數據檢索速度,并增強數據安全性。數據庫將采用通用關系型數據庫的設計方案,如Mysql、SqlServer 等。
2)工業實時歷史數據庫。主要針對自動化控制類系統,工業實時歷史數據庫能夠實時存儲生產過程數據。實時歷史數據主要包括煤礦井上、井下所有自動化監控監測系統的數據,包括但不限于綜采系統、主運系統、供排水系統、通風系統等生產及生產輔助自動化系統中的工作指示(如電流、電壓等)及報警信號等。 將數據采集軟件中實時采集的數據進行存儲,數據結構主要包含參數名稱、時間戳、質量戳。由于設備監測點的數量比較多,采集參數多數是秒級的采集與存儲,并發數據量較大,隨著存儲量的增大,為保障數據的訪問速度及吞吐量,需進行高效的數據壓縮。工業實時歷史數據庫能夠實現對大量過程數據的采集、存儲、管理、檢索和統計分析,并提供開放的數據訪問和開發接口支持。實時數據庫系統既作為監控軟件的核心部分,也可以被獨立應用以作為企業信息集成的基本平臺,用戶可選用其他客戶端工具連接或自行開發以滿足其特殊需求。提供構建于實時數據庫系統之上的應用工具軟件集,為用戶提供功能強大的可視化工具集,包括管理工具、SQL 查詢工具、開發工具包(SDK 和OLE DB Provider、OLE Automation)、報表工具、統計分析工具等,提供各類標準的接口,實現與其他應用程序的數據交換。
3)非關系型數據庫。對于煤礦不同業務單元的數據內容,如:地形地貌數據、地質勘探數據、儲量評價數據、地質模型數據、工業實時數據和歷史數據、生產技術數據、安全信息數據、生產計劃數據、生產經營數據、設備物資數據、人力資源數據、企業運營數據等。基于數據表現形式,在本平臺上數據分類按照基礎數據、業務數據、業務分析數據、視頻數據、文檔數據等5 類。其中的文檔類數據為非關系型的數據類型,以及需要數據緩存來滿足實時性、高并發訪問性能要求的各類數據,將采用MongoDB、Redis 等非關系型數據庫來實現數據的存儲,數據的高效訪問等操作。同時它的數據緩存功能可以很好的起到數據緩沖的作用,避免數據造成堵塞、堆積。也可用來提取緩存熱點數據,提供終端用戶的訪問體驗。
2.2.4 統一開發平臺
管控一體化平臺的基礎資源數據是礦山企業內部相對比較穩定,變化緩慢的靜態數據,比如人員、組織機構、設備、物資等數據。根據煤礦企業業務特點進行分析,本系統主要是針對人的管理、機電設備管理、安全管理和生產管理等業務領域的基礎數據進行規劃設計與維護管理。系統可自動同步相關業務數據,無需人工干預,即可實現各業務應用系統中基礎數據的同步更新。同時開發建設基礎數據維護管理模塊,用戶可在本平臺系統中錄入、修改基礎數據信息,形成管控一體化平臺主數據系統,統一管理、統一維護又服務于各子系統。
作為一個管控一體化平,由于子系統眾多,系統的登錄驗證服務應做到統一規劃、建設,每個子系統的訪問認證應該統一處理,這就有必要開發建設統一的單點登錄服務,為整個管控一體化平臺提供登錄驗證服務,保障整個平臺的安全性,一次登錄,可訪問平臺下的不同業務子系統。同時在應用服務器分布式部署上也可以集中存儲用戶狀態,實現負載均衡的狀態無關性,避免了不同應用服務器之間的狀態同步。
為此,重點將主數據系統和單點登錄系統作為統一的開發平臺而設計,為業務應用功能模塊的開發提供統一的數據及認證服務。業務應用層開發人員可不用考慮該平臺的具體實現細節,只需了解訪問接口的使用規范即可。實現了業務解耦與協同開發作業。
2.2.5 微服務系統平臺
業務微服務架構如圖3。
圖3 業務微服務架構Fig.3 Business microservice architecture
通過主流的微服務技術和工具Springboot、Springcloud 等來構建本系統的微服務架構[15-16]。來承載本系統的大部分業務邏輯對外提供服務需求,各業務邏輯系統微服務之間基于松耦合設計,同時微服務之間采用輕量級的基于HTTP 的RESTful API通信機制互相溝通,互相配合。每個微服務都圍繞著具體系統業務邏輯進行構建,并進行獨立的、分布式部署,實現生產環境服務的高可用。
微服務本身由有眾多中間件構成,其中包括API 網關、注冊中心、接入服務/認證、配置中心、監控中心、日志中心等,這些中間件將協同作業,互相配合,方能提供各業務邏輯對外提供服務的窗口。涉及技術眾多、結構配置復雜。本文將不做深入探討,起到一個拋磚引玉的作用。
穩固的基石決定了強大的、開放的上層建筑,有了邊緣層、PaaS 平臺層穩固的、可擴展的、高可用的、智慧的架構體系設計,使應用層建設,構建礦山智能應用變得簡單、高效。
首先管控一體化平臺的應用層設計原則應考慮數據的融合展示、集中管控。其次展示方式上應具備數據、圖形、二三維等多種表現形式。如GIS 一張圖、領導駕駛艙、數據大屏,能夠根據不用用戶、不同使用場景進行定制設計,滿足煤礦企業安全生產一體化監管要求。
關于智能控制,從各自動化控制子系統的節能減排、提質增效、助力安全生產等角度考慮,從智能監測、智能采掘、智能運輸、智能通風、智能監控、智能診斷、智能報警、信息融合與聯動控制等具體功能出發,實現全礦區智能控制,提升設備性能、降低設備壽命損耗、經濟環保、保障安全等多個目標,逐步減少各個生產現場的作業人員,達到減人增效的根本要求。
本系統應用層平臺建設將采用C/S 結合B/S 的軟件架構,前臺使用VUE、H5、JS、CSS、Echarts 等技術及框架。后臺采用JAVA、NodeJS、Spring 開發建設,還包括其他智能報表組件、工藝流程圖、3D 組件、視頻組件、GIS 組件、UI 組件等,共同構建滿足安全生產控制要求的可視化應用。
其次,由于智能手機的普遍應用,移動APP 也成為了各類應用所必備的一種形式。管控一體化平臺也應具備移動APP 監測功能。首先由于智能手機操作系統主要集中為Android 和蘋果的IOS 系統,2個平臺2 種開發環境和運行環境,如果針對2 個平臺進行開發,無疑將會浪費人力、時間成本,重復的工作相當于做兩遍,通過技術調研、可行性分析,當下混合式移動開發模式已成為了主流,一次開發可以實現不同平臺的編譯、運行,實現了跨平臺運行。通過框架選型,IONIC4 以其快速開發可伸縮應用程序的優勢,以及對Angular、組件化編程的強大支持,成為了本次APP 應用開發的首選。
通過對智慧煤礦管控一體化平臺系統的研究,捋順了管控一體化平臺的整體構建思路、系統的層級關系及重點建設內容。通過整體的架構設計、邊緣層設計、IaaS 層設計、PaaS 層設計、應用層設計,實現了數據的集成、縱向貫通、大數據匯聚與分析。并通過微服務架構實現了服務的高可用、可擴展,為整個管控一體化平臺的運行提供服務支撐。結合煤礦的實際應用,設計了基于數據、圖形、GIS、三維、組態等多種表現形式的終端應用,為用戶提供基于安全監管、智能控制于一體的智能化平臺,為煤礦企業的安全生產保駕護航。并在煤礦現場得到了實際應用,在保障安全生產、減人增效方面效果顯著。