(武漢理工大學 機電工程學院,武漢 430070)
隨著機車系統的數字化程度越來越高,機車檢修過程的數據信息呈指數級速度增長,充分合理地利用這些數據,對于運行人員正確分析故障信息、及時處理故障、完成檢修任務,進而提高機車檢修管理水平有很大的幫助。
目前機務段已有一些信息系統投入應用,但是各個信息系統相互獨立,無法實現檢修過程信息共享,造成了一些基礎性數據的重復錄入和人力資源的大量浪費。同時,機務段生產過程中業務信息的傳達依賴于電話通信,數據信息依靠人工錄入,數據共享通過紙張傳遞[1]。這都不能保證數據的完整性和安全性,易造成數據丟失等問題。而且數據分析過程只是對基礎數據進行簡單的分析和處理,未能深入挖掘其蘊含的豐富知識,無法從時間和空間上深層次理解與運用這些數據,因此存在數據挖掘不夠充分、系統分析功能不全面、檢修信息綜合利用度不夠等不足。
針對上述不足之處,采用ASP.NET技術開發出機車檢修過程管理系統,并建有獨立的SQL數據庫,通過采集機車檢修過程數據,及時地查看每一臺機車檢修過程中的具體信息,并記錄機車在段內的檢修、停時、超修部件等情況,將這些數據制成統計圖表展現給決策者,使其能快速了解段內機車的檢修情況,提高檢修工作效率。
在機車檢修過程管理系統軟件的開發過程中,采用ASP.NET技術、B/S分布式系統結構模型,選用SQL數據庫,通過ADO.NET提供的Data Grid等數據庫組件直接和數據庫聯系,了解和分析機務段的需求,再結合具體的實際情況,實現對ASP.NET技術與數據庫技術的整合應用,進而開發了基于ASP.NET的機車檢修過程管理系統。
ASP.NET是Microsoft公司推出的服務器的一個組件。它可以結合HTML、CSS、Active X控件和ASP.NET指令創建交互的、動態的、高效的應用程序,且易于完成進一步的擴展功能[2]。ASP.NET技術的重要特點為
編程語言多樣化ASP.NET沒有特定的編程語言,用戶在編寫代碼時,可以使用VB、C#、C++等腳本語言。ASP.NET不僅可以只選用一種語言,還可以選用多種語言混合編程,各種不同的語言結合起來,編程語句更加簡便、易懂。ASP.NET可以直接與數據庫通信,讀取和存儲數據,且由于Active X控件可以無限擴展,因此ASP.NET相對于HTML等更方便、更靈活多變。
對象、組件內置為便于編寫復雜的程序,ASP.NET提供6個內置對象,更加便捷地完成一系列從變量到表單提交的工作。還可通過自定義Active X Server Component來擴充控件。
制作簡單、高效ASP.NET使用Visual Studio開發環境,采用代碼托管簡化了頁面開發過程,且多次訪問時,不需要重新編譯。
ASP.NET的一般工作過程如圖1所示,用戶在瀏覽器上輸入URL地址①,服務器做出響應,瀏覽器就會顯示相應的頁面②,用戶在此頁面上進行操作,發送HTTP請求給服務器終端③,讓其執行相對應的ASP應用程序,當程序需要連接到數據庫時,ADO.NET提供接口使其與數據庫交互⑤,從而實時更新數據庫的信息,使用SQL讀取數據庫信息⑥,再將執行后的動態結果生成一個HTML頁面返回瀏覽器端④。

圖1 ASP.NET工作過程Fig.1 Working processing of ASP.NET
B/S結構即為瀏覽器和服務器結構,是隨著互聯網技術的快速發展,在Client/Server結構基礎上的改進。它結合多種腳本語言和Active X等技術,用通用瀏覽器實現強大功能,不再需要復雜的專用軟件,節約了開發成本,簡便了開發過程。B/S結構采用3層客戶服務器結構,將應用分為表示層、業務邏輯層和數據存儲層3個不同的處理層次[3]。從邏輯上看,中間件負責客戶機與服務器、服務器與服務器之間的通信,實現了應用程序與數據庫的高效連接,提供給3層服務器結構一個開發、部署、運行和管理的基礎平臺。在這種3層結構中,層與層之間彼此獨立,不影響其它層,減輕了客戶端電腦的負荷,使得系統維護與升級的成本和工作量降低。圖2為系統的3層構架。

圖2 系統的3層構架示意Fig.2 Schematic diagram of the three layer structure of the system
B/S結構的重要特點有:
開發、維護、升級方式簡捷只需要打開通用的瀏覽器,就可以在任何地方操作,不需要安裝任何客戶端,更不需要維護和升級,因此系統的擴展性能很好;
分布性、共享性較強且成本較低在訪問權限范圍內,不同人員可以從不同地點以不同的接入方式訪問到相同的數據庫。但同時數據安全和管理訪問權限也可以得到有效的保證。一次性完成開發B/S結構,使得成本降低。
機車檢修過程中會產生大量的機車質量信息數據,這些數據是非常寶貴的信息資源,是建設信息化機務段的基礎。對這些數據資產進行有效管理既是生產調度指揮中心的重要要求,也是機車質量管理重要的潛在價值[4]。采集和統計整理這些數據資源既是機務段信息化建設的出發點,又是機務段信息化的目標。為了使信息系統的應用效果達到最佳,必須對數據作充分的分析。當數據積累到一定程度時,通過先進的數據分析手段,可以深入挖掘機車質量特性等眾多有價值的信息,從而充分體現信息化帶來的數據資產價值。
機車檢修過程產生的數據包含有檢修過程狀態、故障原因、停時、超修等數據。集中管理、統計和共享這些數據,并利用此數據對機車質量進行分析,建立故障模型、完善故障診斷技術等。因此,機車檢修過程在整個機務段的作業流程中有著非常重要的作用。
目前,機務段機車檢修過程是手動記錄機車檢修的相關內容,這種方式會產生大量繁復的數據,工作量很大,不能從收集到的數據中獲取一些深層次的知識和信息,這樣就會導致數據挖掘不充分、分析不全面,未能實現基礎數據標準化、數值化、資產化。而且檢修過程中,各部門只能通過紙質進行交互,機務段機車檢修工作效率低下[5]。基于ASP.NET的機車檢修過程管理系統通過統計采集到的各類機車檢修數據,分析故障原因、停時、超修數據,制作成各種統計圖,便于工作人員了解機車檢修進度,學習各種故障類型和解決方案,形成故障診斷技術知識庫,并能根據機車某些故障狀態和指標,預測機車的故障類型,及時提供解決方案,因此不但在很大程度上提高了工作人員的工作效率,也為決策者提供了參考依據,使其能快速了解段內機車的生產情況。
機車檢修過程管理系統的主要功能是及時地查看每一臺機車檢修過程中的具體信息,并記錄機車在段內的檢修、停時、超修部件等情況,將這些數據制成統計圖表展現給決策者,使其能快速了解段內機車的生產情況,提高工作效率。主要包括以下幾個模塊:過程管理、停時管理、超修管理、停時統計、超修統計、檢修統計以及基本信息設置。
過程管理模塊的主要作用是查看機車檢修過程中的各項內容是否完成,并查詢檢修的具體信息。同時可以實時查詢到機車在段內的檢修情況,了解機車的檢修進度。停時管理模塊主要是根據機車的扣修時間以及交車時間,確定機車在段內的停時。對于超過規定停時的機車,記錄其超停時原因和相關的改造項目以及對應的折算臺數。超修管理模塊的主要作用是記錄機車在段內檢修時各專業的超修情況,便于查詢和統計。停時統計模塊主要用于統計各個修程和機型的機車在段內的停時情況,便于決策者了解各機型,各修程的機車檢修情況。超修統計模塊統計各個專業的超修項目出現的次數及其折算情況,以圖表的形式展現出來,便于相關人員的決策和信息收集。檢修統計模塊主要用于統計各個機型的機車在不同修程內的數量以及改造項目的數量,為相關人員在決策或者考核中提供數據支持。基本信息設置模塊主要是對檢修過程管理模塊的基本信息進行設置,包括檢修部件設置、超停時原因設置、改造項目設置、標準停時設置以及折算臺數設置。
ADO.NET是由微軟公司開發的用于訪問數據庫的一套組件模型,它可以實現應用程序與數據庫在數據緩存非完全連接時進行交互,靈活多變,廣泛地滿足了不同的數據訪問要求[6]。ADO.NET組件對象模型是.NET Framework的重要組成部分,由Connection,Command,Data Reader,Data Adapter和Data Set 5個對象組成,它們相互之間分工合作,完成應用程序對數據庫的訪問。其中,Connection對象連接數據源,Command對象生成并執行應用程序中的數據庫語句,Data Reader對象按順序讀取執行數據庫語句后得到的數據,Data Adapter對象將語句執行后得到的數據搬運到數據集中,Data Set對象存放數據源數據[7]。在系統開發過程中,利用ADO.NET訪問數據庫的步驟如下:
1)創建數據庫Connection對象,以連接到數據庫;
2)創建數據庫Command對象,以在數據庫中執行數據庫語句的操作;
3)使用Data Reader對象在數據庫中讀取執行指定的操作后在數據庫中得到的結果,或者創建數據Data Adapter對象將結果填充到創建的Data Set中,作為應用程序的數據源;
4)在應用程序對數據結果執行操作后,使用Command對象或者Data Adapter對象更新數據源中的數據;
5)釋放ADO.NET中的5個組件對象,斷開與數據庫的連接。圖3為ADO.NET訪問技術原理。

圖3 ADO.NET訪問技術原理Fig.3 Principle of access technology
其部分相關代碼如下:


機車檢修過程管理系統的頁面由過程管理頁面、停時管理頁面、超修管理頁面、停時統計頁面、超修統計頁面、檢修信息統計頁面、基礎設置頁面共7個頁面組成。此系統集成了檢修過程管理所需的各個功能,模塊功能清晰,操作簡單快捷,實現段內無紙化作業,提高機務人員的工作效率,且深度挖掘數據信息,為機務段決策者提供決策依據,現實數據的共享和資產化。目前該機車檢修過程管理系統已經在機務段投入使用,運行穩定,操作方便簡單,效果明顯。系統界面如圖4所示。

圖4 機車檢修過程管理系統界面Fig.4 Interface of design of maintenance processing for locomotive
基于ASP.NET的機車檢修過程管理系統較好地滿足了機務段檢修運作的需求,提高了機車檢修過程效率,促進了機務段的信息化、數據共享化和資產化,為機務段以后的發展奠定了良好的基礎。整個系統的功能設計思路清晰、易于維護、安全性有保障。同時,系統也存在一些問題,系統的穩定性和處理速度沒有得到檢測,有待進一步研究和改進。
[1]LI Yishan,HONG Lifang.Development of a non-pollution orange fruit expert system software based on ASP.NET[J].Agricultural Sciences in China,2011,10(5):805-812.
[2]Zhang Qian,Zhong Shengjun,Jiang Guanyu.Development of an expert system for dust explosion risk management based on ASP.NET and Prolog[J].Journal of Software,2011,6(9):1857-1865.
[3]方開紅.ADO.NET數據庫訪問技術在ASP.NET開發中的研究與應用[J].軟件工程師,2015,18(7):19-21.
[4]徐春婕.鐵路大型客運站管理系統及關鍵技術研究[D].北京:中國鐵道科學研究院,2014.
[5]李勛,龔慶武,楊群瑛,等.基于數據挖掘技術的保護設備故障信息管理與分析系統[J].電力自動化設備,2011,31(9):88-91.
[6]徐巖柏.ASP.NET數據庫訪問技術[J].中國科技信息,2009(11):145-146.
[7]蔣薇,賴青貴,秦玲,等.基于ADO.NET數據訪問技術的研究和應用[J].微計算機信息,2010,26(30):141-143.