文/唐 珂
近年來,隨著國民經濟發展思路的轉變,產業結構的調整,國家提出通過自動化、信息化對傳統產業進行改造實現升級換代,實現兩化融合,促進工業企業的創新和發展,這對煤礦生產、安全和科技發展提出了更高的要求。目前,煤炭生產正處在從自動化向信息化和智能化生產過渡階段。由于存在著數據共享、利用率低、不能聯動等問題,迫切需要我們對煤礦信息化手段進行深入研究,利用信息技術、自動化技術切實改造和提升煤炭企業人、財、物、產、供、銷等各個方面,最終達到優化資源配置,實現效益最大化的目標。
數字礦山中提出了數字礦山的應用架構自下而上分為設備層、控制層、生產執行層、經營管理層、決策支持層五層,在控制層和生產執行層分別規劃設計了2個平臺軟件:生產綜合監控平臺和生產執行系統平臺。作為生產綜合監控系統的核心,生產綜合監控平臺主要完成對現場監控系統與監測系統的數據和控制的集成,為現場運行人員提供一個整體的展現;生產執行平臺是生產執行系統的核心支撐,主要為生產過程管理各子系統提供支撐平臺,并支撐與生產經營層和控制層系統間的數據交換。對于不同層級間的數據交換接口進行了初步定義。
生產執行系統軟件平臺應是一體化的軟件平臺,能夠實現對各子系統的集成,完成數據的集成、共享和應用,該平臺的主要功能包括:
1.實現單點登錄;
2.實現工作流程的定義與修改;
3.與生產綜合監控系統無縫融合,支持工藝畫面、趨勢、報警、視頻圖像等的綜合顯示;
4.實現設備運行參數、人員車輛數據的顯示與查詢;
5.可以將綜合分析指標推送到PDA顯示,也可在PDA上查詢相應指標;
6.設備運行績效及能耗分析;
7.實現礦山建模;
8.支持生產、調度、機電、一通三防、設計、環保、安全、煤質、綜合分析及三維展示等系統的運行。
在平臺的技術實現上,應具備:
1.實現企業服務總線;
2.實現系統權限和用戶管理;
3.實現信息服務,包括數據模型、數據管理、信息轉換與全文檢索;
4.實現文檔管理、技術支持等伙伴服務;
5.實現外系統的接入服務,如應用適配器、數據適配器等;在集成方式上,可以數據集成、流程集成和界面集成;
6.實現業務流程、工作流程的設定;
7.實現相關的管理服務,如平臺管理、集成管理、服務管理等;
8.實現開放的開發服務,如輔助開發、業務定制、流程定制、報表定制等。
一體化軟件平臺用于支撐數字化礦山業務信息系統類應用開發,位于基礎件與應用系統之間,通過統一技術框架、制定技術規范、提供基礎構件和業務構件,從而達到提高開發效率、提升產能的目標?;谏袢A綜合自動化技術現狀和項目需求,一體化軟件平臺側重于規范、即插即用構件等可快速提高開發效率的部分的研發。

圖1 數字礦山一體化軟件平臺架構
數字化礦山規劃需求一體化軟件架構模型包括以下部分:
1.服務總線技術
服務總線(ESB)是傳統中間件技術與XML、Web服務等技術結合的產物。ESB提供了網絡中最基本的連接中樞,是構筑企業神經系統的必要元素,是面向服務的“一體化軟件平臺”的核心內容。
服務總線的概念是從面向服務體系架構 (Service-OrientedArchitecture,SOA)發展而來的。 SOA描述了一種IT基礎設施的應用集成模型,其中的軟構件集是以一種定義清晰的層次化結構相互耦合。其中,一個ESB是一個預先組裝的SOA實現,它包含了實現SOA分層目標所必需的基礎功能部件。
2.數據服務技術
數據服務技術作為SOA架構的主要服務功能實現。首先數據服務屏蔽基礎設施中提供的各種數據源。從建立核心業務數據入手,對數字礦山數據需求和數據間關系進行服務抽象,并將結果綜合起來形成數據分布,繼而對數據在不同業務場景中的流向進行抽象描述,理順數字礦山中的數據布局。同時數據服務依托ESB對外提供標準數據接口,實現共享數據架構及其提供數據共享的構建方法。
3.流程服務技術
工作流(Workflow)是對工作流程及其各操作步驟之間業務規則的抽象、概括、描述?!耙惑w化軟件平臺”工作流程服務的主要功能是通過服務總線支持去定義、執行和管理數字化礦山的業務流,協調業務流執行過程中工作之間以及群體成員之間的信息交互,為服務使用對象提供業務流支撐。
4.交互服務技術
交互服務是 “一體化軟件平臺”中業務模塊提供給業務人員使用和操作的方式,直接表現為軟件的交互界面?!耙惑w化軟件平臺”交互界面包括Web界面和Winform界面,重點需要研究Web和Winform結合,要應兼顧Web頁面的美觀和Winform界面的穩定、易用優點,避免Web頁面的開發難度大和Winform界面部署復雜的弱點,打造靈活且易于擴展的統一平臺。
5.接入服務技術
接入服務是研究在異構平臺、不同子系統中實現數據交換和業務自動處理。通過接入服務,“一體化軟件平臺”可以實現和外系統獨立應用程序 (如各業務子系統、安全生產綜合監控系統等)或獨立系統的軟件的連接,即使它們具有不同的平臺,也可以實現相互之間交換信息。一體化平臺提供了平臺數據適配器及應用適配器為外系統提供服務。平臺數據適配器完成平臺數據的共享及數據接收任務,應用適配器提供平臺基礎及業務邏輯為外系統使用。
一體化軟件平臺采用基于SOA的技術架構。以總線服務為中心,總線是面向SOA的技術核心,提供數據通訊、協議轉換等標準xml交換通道;展示層為融合一體化思想,提供對WPFUI、webUI等支持;商業流程層以插件化擴展業務功能,對調度管理、煤質管理等自由拆裝集成。服務層以總線為標準提供服務訪問能力,支持wcf和WebService通用xml標準;組件層通過ORM,數據庫模型到實體模型映射,處理緩存及并發機制;基礎設施中平臺數據庫以SqlServer為主,兼容Oracle等大型數據庫;管理服務將對平臺的易用性及擴展性提供必要支持。

圖2 數字礦山一體化軟件平臺技術架構
數字礦山一體化平臺的實施將形成一個平臺、兩套工具,一個平臺為一體化軟件開發基礎運行平臺,包括:基礎平臺、基礎服務和服務總線。兩套工具包括服務管理工具、輔助開發工具。
基礎平臺軟件是以數字化礦山業務為導向,可快速構建應用軟件的平臺。它解決了管理軟件的業務描述以及與操作系統、軟件基礎構架平臺之間的交互管理問題,同時它屏蔽了技術細節,使開發人員能夠集中全力關注產品研發中的業務與管理問題,從而提高了產品研發效率。一體化平臺基礎平臺實現的主要功能包括:
1.系統字典
系統字典由系統管理員進行維護,用于為其他系統及業務模塊提供基礎數據信息。
2.數據字典
數據字典由系統管理員根據實際業務需求進行維護的基礎數據信息。
3.系統模塊
系統模塊提供對基礎平臺上加載運行的所有模塊進行字典信息的定義,可用于制定與模塊相關的編碼規則以及生成具有特定含義的編碼。
4.業務單據規則
業務單據規則是指為了業務單據能夠自動生成有實際意義的、規則性的編號而制定的一個或一組生成規則。
5.排班管理
排班管理主要包括班次信息維護、班組信息維護、工作日歷信息維護、排班策略維護、排班生成。
6.用戶管理
用戶管理用于對登錄系統的賬戶進行管理,同時在用戶管理中可以為每個用戶分配角色以及進行功能授權。
7.角色管理
角色管理用于對登錄系統的賬戶所擁有的角色進行管理。
8.組織機構管理
組織機構管理用于管理單位和部門信息以及他們之間的關聯關系,并以樹形列表形式展現。
9.人員管理
人員管理用于管理系統實際使用人員的信息,每個人員可以屬于一個或多個部門。
面向服務的體系結構是構造分布式系統的應用程序的方法。它將應用程序功能作為服務發送給最終用戶或者其他服務,采用開放標準、與軟件資源進行交互并采用表示的標準方式。數字化礦山技術研究上選擇面向服務開發的方法論。一體化平臺服務主要功能包括:
1.基礎業務數據服務
對系統基礎業務數據進行維護,涉及的模塊包括菜單、人員、用戶、角色、崗位、組織機構、消息提醒、業務提醒等。
2.系統數據服務
對系統全局數據信息進行維護,涉及的模塊包括系統模塊、系統字典、數據字典、業務單據規則。
3.日志服務
提供用戶日常操作日志的查詢功能,為日后企業審計工作提供數據。
4.排班服務
對排班策略及相關參數信息進行分析處理。
5.單點登錄服務
單點登錄是指在多個應用系統中,用戶只需要登錄一次就可以訪問所有相互信任的應用系統。
6.文件服務
為用戶上傳、下載文件提供服務,而無需使用FTP等其他方式,并且性能高效、可靠性高。
一體化軟件平臺服務總線主要功能包括:
1.數據請求應答
客戶端發送請求命令到服務器,服務器處理請求,返回消息到客戶端,客戶端可以根據消息判斷調用是否完成,獲取需要的數據,完成數據調用。
2.數據發布訂閱
客戶端向服務器訂閱和發布消息。服務器接收訂閱,并生成訂閱客戶端列表;接收發布,并將消息推送到已訂閱特定消息的客戶端。
3.服務調用框架
抽象出全局操作和全局對象,基于配置,采用依賴注入和動態代理的技術,對數據服務/訂閱發布服務/數據服務/和文件服務進行統一調用,提高易用性。
4.總線運行宿主
宿主內置對象容器,動態裝載并以Windows服務的形式承載服務,提供元數據支持。開放服務管理接口,易于開發服務管理模塊。
面向SOA架構技術研究中各項任務都以服務形式表現,通過服務總線對所有服務進行統一監控、管理。一體化平臺管理服務主要功能包括:
1.服務狀態
服務狀態功能分類顯示一體化平臺各種服務的運行情況。分類包括基礎服務、文件服務、數據服務等。顯示內容包括服務名稱、狀態和地址。
2.Web服務管理
Web服務是一體化平臺的B/S架構中的Web應用服務器管理。主要完成對Web應用服務中文件的更新備份。
3.文件服務管理
文件服務對外提供文件的存儲、更新、下載功能。文件服務可以方便業務系統對文件控制需求。文件服務管理完成文件服務的安裝、拆卸、啟停、測試功能。
4.數據服務管理
數據服務對外提供數據訪問,數據服務的數據來源可以是Oracle、SqlServer等關系型數據庫,對外以實體模型提供數據。數據服務管理完成數據服務的安裝、拆卸、啟停、測試功能。
“一體化軟件平臺”可以實現以基礎平臺架構為支撐的多種服務擴展。服務擴展以各種服務本地化使用及二次開發的形式表現,根據不同客戶的需要進行定制修改、功能擴展。一體化平臺輔助開發主要功能包括:
1.UI/UE模版
UI/UE是軟件使用的臉面,直接面對使用人員。一體化平臺項目形成了統一的UI/UE模版。包括可定制登錄頁面、專業化的虛擬桌面、標準化表單。
2.服務開發輔助
一體化平臺是面向服務的開發模式,服務提供是面向服務的關鍵功能,作為輔助開發工具,對服務的快速開發,二次開發是必備功能。輔助開發服務開發功能可以提供對服務的圖形化、模板化輔助開發。
3.頁面開發輔助
頁面開發輔助基于標準UI/UE模版、提供快速實現頁面能力,同時頁面功能基于模版驅動,可以通過修改模版來滿足對不同功能需求的要求。
建設“一體化軟件平臺”,可以將目前煤炭板塊各種生產系統的數據和應用有機地整合在一起,完成管控一體化,具體包括:
1.把煤炭生產現場數據、生產管理數據集中起來,實現對于一手數據的準確掌握,通過減少中間傳輸合處理的環節,降低了數據錯誤和誤差發生的次數,提高了數據在不同業務部門間流通的數據使用率,做到一次采集,重復利用。
2.使下屬公司內部各業務部門與下級單位之間能夠實現生產數據的高效、可靠傳輸,彼此之間能夠更加密切地協同工作,充分實現數據共享。
3.為各層面領導者、管理者提供一個可獲取更全面的生產決策信息的平臺,能夠及時地對生產過程進行分析和把握,合理安排生產,極大地提高生產管理能力與效率。