孟德軍
(沈陽(yáng)鐵路局 信息技術(shù)所,沈陽(yáng)110001)
調(diào)度是鐵路運(yùn)輸組織的中樞神經(jīng),調(diào)度的核心工作就是指揮車輛進(jìn)行運(yùn)輸生產(chǎn)。所以,調(diào)度工作最基本的信息就是當(dāng)前管內(nèi)車輛的具體位置和狀態(tài)。鐵路局現(xiàn)在車系統(tǒng)是在鐵路局建立統(tǒng)一的現(xiàn)在車數(shù)據(jù)庫(kù),匯總鐵路局管內(nèi)所有在站車及在途車數(shù)據(jù),實(shí)現(xiàn)按號(hào)碼制實(shí)時(shí)準(zhǔn)確掌握車輛的位置、數(shù)量、狀態(tài)及作業(yè)過(guò)程。該系統(tǒng)為調(diào)度工作提供可靠的決策數(shù)據(jù),為優(yōu)化運(yùn)輸組織、挖潛提效提供技術(shù)支撐。鐵路局現(xiàn)車系統(tǒng)分為數(shù)據(jù)整合服務(wù)、車站現(xiàn)車管理以及綜合查詢分析3部分。如何按業(yè)務(wù)需求提供方便靈活的查詢分析手段,多層次、多角度展現(xiàn)數(shù)據(jù)是現(xiàn)在車查詢分析系統(tǒng)研究的問(wèn)題,本文重點(diǎn)論述該系統(tǒng)的設(shè)計(jì)要點(diǎn)及實(shí)現(xiàn)技術(shù)。
現(xiàn)在車系統(tǒng)的核心數(shù)據(jù)表簡(jiǎn)化結(jié)構(gòu)如圖1。
圖1 現(xiàn)在車系統(tǒng)簡(jiǎn)化表結(jié)構(gòu)
鐵路局現(xiàn)在車是指當(dāng)前時(shí)刻鐵路局管內(nèi)全部的貨運(yùn)車輛,包括在站車及在途車。車輛重、空狀態(tài)的改變是由站內(nèi)的裝卸作業(yè)來(lái)完成的;車輛位置的改變,站間是由列車運(yùn)行牽引完成的,站內(nèi)則是由調(diào)車作業(yè)完成的。如何適當(dāng)?shù)孛枋鲕囕v位置及狀態(tài)的改變并記錄其變化軌跡是系統(tǒng)要解決的核心問(wèn)題。系統(tǒng)設(shè)計(jì)從以下2個(gè)方面解決這個(gè)核心問(wèn)題。
列車調(diào)度指揮系統(tǒng)(TDCS)提供了完整的列車實(shí)時(shí)運(yùn)行數(shù)據(jù),通過(guò)列車調(diào)度結(jié)合程序傳輸?shù)絋MIS中,系統(tǒng)將其以列車運(yùn)行圖的形式展現(xiàn)給車站車號(hào)員,由其按運(yùn)行線接發(fā)車,實(shí)現(xiàn)了在途車與在站車之間的轉(zhuǎn)化。接車作業(yè)將到達(dá)列車編組轉(zhuǎn)為在站車;發(fā)車作業(yè)將在站車轉(zhuǎn)為出發(fā)列車編組;本站的出發(fā)編組自動(dòng)作為列車運(yùn)行后方站的到達(dá)編組。在途車由列車當(dāng)前運(yùn)行區(qū)間前方站的出發(fā)列車編組自動(dòng)生成。接發(fā)車的具體操作界面如圖2,運(yùn)行線節(jié)點(diǎn)上的“小信封”代表列車編組。
圖2 車站車號(hào)員按運(yùn)行線接發(fā)車
系統(tǒng)內(nèi)車輛典型的作業(yè)過(guò)程簡(jiǎn)單描述如下:(1)由值班員接車,到本站重車自動(dòng)標(biāo)識(shí)為待卸、貨運(yùn)員標(biāo)識(shí)待裝空車、其他為中轉(zhuǎn)車;(2)對(duì)于作業(yè)車由站調(diào)及貨調(diào)指定裝卸股道、貨運(yùn)員安排貨區(qū)及貨位,組織裝卸;(3)由調(diào)車區(qū)長(zhǎng)編制并執(zhí)行鉤計(jì)劃,自動(dòng)生成取送車記錄;(4)車輛裝卸作業(yè)完畢,再次經(jīng)過(guò)調(diào)車編組形成列車,由值班員發(fā)車出站。每一項(xiàng)作業(yè)在更改車輛作業(yè)狀態(tài)的同時(shí)都生成一條作業(yè)日志記錄。
通過(guò)“車ID”來(lái)唯一標(biāo)識(shí)一輛車,從進(jìn)站到出站這段時(shí)間內(nèi)在車站的生產(chǎn)作業(yè)過(guò)程的生存周期,由“時(shí)間戳+序列號(hào)”表示。車輛屬性既包括車號(hào)、車種車型、自重?fù)Q長(zhǎng)等車輛的物理屬性,又包括區(qū)分部屬車與企業(yè)自備車、運(yùn)用車與非運(yùn)用車等業(yè)務(wù)屬性。車輛位置即指車輛在站內(nèi)的場(chǎng)別及股道。車輛的作業(yè)狀態(tài)細(xì)分為“中轉(zhuǎn)、待裝、待卸、待修、送裝、送卸、送修、在裝、在卸、在修、裝完、卸完、修竣、取車”14個(gè)狀態(tài),狀態(tài)的轉(zhuǎn)換由作業(yè)日志記錄。作業(yè)日志從車輛到達(dá)開(kāi)始,至車輛出發(fā)終止,記錄了每一項(xiàng)作業(yè)開(kāi)始及完成的時(shí)間點(diǎn)。該數(shù)據(jù)表以“車ID”及“記錄號(hào)”為聯(lián)合主鍵,采用分區(qū)表存儲(chǔ),可以按制度長(zhǎng)期保存。通過(guò)作業(yè)日志可以自動(dòng)生成到發(fā)車統(tǒng)計(jì)、裝卸車統(tǒng)計(jì)、工作量統(tǒng)計(jì)等一系列的車站統(tǒng)計(jì)報(bào)表。貨物運(yùn)輸表記錄了重車裝載的貨物信息,包括貨物載重、品名品類、收發(fā)貨人、發(fā)到站、貨票號(hào)、裝車計(jì)劃號(hào)等屬性。“列車ID”、“編組ID”、“貨物ID”一律采用“時(shí)間戳+序列號(hào)”形式表示,有利于數(shù)據(jù)表存儲(chǔ)按時(shí)間分區(qū),在保存大量數(shù)據(jù)的同時(shí)方便檢索。
按照分別針對(duì)現(xiàn)在、過(guò)去、未來(lái)情況處理的設(shè)計(jì)思路,系統(tǒng)功能分為現(xiàn)車查詢、統(tǒng)計(jì)報(bào)表與考核、到達(dá)車預(yù)計(jì)3部分。
現(xiàn)車查詢從形式上分為2種:站內(nèi)現(xiàn)車查詢,全局現(xiàn)車分布查詢。
站內(nèi)現(xiàn)車查詢分為匯總分析、按場(chǎng)別股道查詢、按運(yùn)行圖查詢到發(fā)編組3個(gè)功能頁(yè)。其中匯總分析頁(yè)顯示當(dāng)前站內(nèi)車輛統(tǒng)計(jì)概要信息,區(qū)分部屬車與企業(yè)車,重車按去向、空車按車種,以及中轉(zhuǎn)車、待卸車、待裝車、本站裝、檢修車、篷布等實(shí)時(shí)統(tǒng)計(jì)值,以及每階段的作業(yè)時(shí)間分析,如入線、裝卸、出線等作業(yè)階段超過(guò)用戶指定小時(shí)數(shù)的車數(shù)統(tǒng)計(jì)。每一項(xiàng)統(tǒng)計(jì)值都可以展開(kāi)進(jìn)一步查看其在股道上的分布情況,再次展開(kāi)顯示股道現(xiàn)車明細(xì)。股道現(xiàn)車明細(xì)用顏色區(qū)分車輛的在站停留時(shí)間,分別以6 h、12 h、24 h、48 h為階段劃分顯示。點(diǎn)擊每一輛車又可以顯示其作業(yè)過(guò)程軌跡。行調(diào)調(diào)度員還可以查詢車站調(diào)車作業(yè)計(jì)劃(鉤計(jì)劃),監(jiān)控車站作業(yè)。
電子占線板也是查詢站內(nèi)現(xiàn)車的重要手段,它提供圖形化直觀的顯示方式,使得車輛股道占用情況一目了然。在股道上,可以按排列順序或按作業(yè)方式分組顯示車數(shù),代表車數(shù)的每個(gè)圖塊都可以展開(kāi)以查看明細(xì)。占線板上還可以添加鐵鞋、緊固器等符號(hào)及文字標(biāo)注。行調(diào)調(diào)度員還可以在圖上查看股道長(zhǎng)度、站內(nèi)坡度等信息。為用戶提供漫游、縮放、符號(hào)拖曳等基本的圖形操作手段。
全局現(xiàn)車分布圖查詢從內(nèi)容上分為按車輛的狀態(tài)屬性查詢和過(guò)程預(yù)警查詢2大類。按車輛的狀態(tài)屬性查詢就是按車輛重空狀態(tài)、車種屬性、作業(yè)性質(zhì)等用戶自定義條件,查詢?cè)谡拒嚺c在途車的分布情況,在路網(wǎng)示意圖上標(biāo)示出來(lái),如圖3,并且提供鉆取功能,以查看具體車輛明細(xì)。過(guò)程預(yù)警是指查詢停時(shí)過(guò)長(zhǎng),或某一作業(yè)階段耗時(shí)過(guò)長(zhǎng)(超過(guò)標(biāo)準(zhǔn)時(shí)間或用戶指定時(shí)間)的車輛在全局各站上的分布。例如,查詢哪些站的待裝或待卸車輛超過(guò)2 h還沒(méi)有入線,以便調(diào)度員及時(shí)安排動(dòng)力。哪些站裝卸時(shí)間過(guò)長(zhǎng),以便監(jiān)控及督促作業(yè)進(jìn)度。分布圖按車數(shù)采用ABC分類法,用顏色區(qū)分,清晰表現(xiàn)其組成結(jié)構(gòu)。系統(tǒng)還提供篷布、承認(rèn)車、十八點(diǎn)數(shù)據(jù)的分布圖查詢。
圖3 現(xiàn)車分布查詢
系統(tǒng)主要提供如下報(bào)表:
老牌車:也叫大點(diǎn)車,是指在站停留時(shí)間較長(zhǎng)車輛。系統(tǒng)自動(dòng)生成每日六點(diǎn)、十二點(diǎn)、十八點(diǎn)車務(wù)段及大站老牌車統(tǒng)計(jì)報(bào)告;及時(shí)分析老牌車產(chǎn)生的原因,以便調(diào)整車流,避免造成車輛積壓。
原始報(bào)表:自動(dòng)生成運(yùn)統(tǒng)一(列車編組順序表)、運(yùn)統(tǒng)四(分界站、區(qū)段站貨車出入登記簿)、運(yùn)統(tǒng)七(非運(yùn)用車登記簿)、運(yùn)統(tǒng)八(號(hào)碼制貨車停留時(shí)間登記簿)、裝卸七甲。
車站工作匯總:提供到達(dá)列車、出發(fā)列車、出入車輛、裝卸作業(yè)量的統(tǒng)計(jì),以及欠出車分析。
站段操作考核:針對(duì)車站作業(yè)報(bào)告的考核,考核不符合流程、漏報(bào)、錯(cuò)報(bào)及異常的情況。
系統(tǒng)可以根據(jù)用戶指定車站,查詢到達(dá)該站在站及在途的車輛,在路網(wǎng)圖上顯示,用顏色區(qū)分預(yù)計(jì)12 h能到及不能到達(dá)的車輛;提供全局主要卸車點(diǎn)12 h內(nèi)到達(dá)車輛預(yù)計(jì)報(bào)告,以便車站更好地安排機(jī)具、人力組織卸車。系統(tǒng)通過(guò)車流徑路得到車輛走行距離,除以平均旅速,附加技術(shù)作業(yè)站平均中轉(zhuǎn)時(shí)間,計(jì)算出車輛預(yù)計(jì)到達(dá)時(shí)間。
本系統(tǒng)采用標(biāo)準(zhǔn)的3層架構(gòu):數(shù)據(jù)端采用Oracle10g數(shù)據(jù)庫(kù),大量使用存儲(chǔ)過(guò)程表示業(yè)務(wù)邏輯;中間層采用IIS7 Web服務(wù)器、ASP.NET框架以及WebORB數(shù)據(jù)訪問(wèn)中間件;客戶端使用基于FLEX的RIA技術(shù)開(kāi)發(fā)。Actionscript是FlEX的編程語(yǔ)言,它既具有Javascript語(yǔ)言的靈活性和函數(shù)式編程功能,又具有面向?qū)ο笳Z(yǔ)言的特征,是一種混合型的動(dòng)態(tài)語(yǔ)言。使用該語(yǔ)言編程,可以輕松處理復(fù)雜用戶界面的交互邏輯。動(dòng)態(tài)生成矢量圖形,很好地滿足用戶需求。
隨著系統(tǒng)應(yīng)用的深入,用戶往往要求添加新的功能。如果單純采用代碼堆積的辦法,不僅工作量大,久而久之系統(tǒng)趨于不可維護(hù)。我們采取了系統(tǒng)重構(gòu)的方法,將功能歸類,抽象出固定模式,剝離出變化的部分與不變的部分。將不變的部分定義為接口,變化的部分用模塊實(shí)現(xiàn),如果可能就進(jìn)一步將變化部分用數(shù)據(jù)形式描述,將程序越做越活。在本系統(tǒng)中,用戶菜單一律用XML文件定義,車輛分布圖及明細(xì)查詢用后臺(tái)的配置文件統(tǒng)一定義,增加一個(gè)查詢就是增加一條查詢定義,無(wú)需修改代碼。
鐵路局現(xiàn)在車查詢分析系統(tǒng)投產(chǎn)應(yīng)用一年多來(lái),取得了良好的效果,成為鐵路局挖潛提效的重要工具。它可以減輕調(diào)度員的工作強(qiáng)度,提高工作效率,保證工作質(zhì)量,獲得了廣大調(diào)度員的認(rèn)可與好評(píng)。2011年,該系統(tǒng)獲得沈陽(yáng)鐵路局科技進(jìn)步特等獎(jiǎng)。
[1] 陳宜吉. 鐵路貨運(yùn)組織 [M] . 2版. 北京:中國(guó)鐵道出版社,2001.
[2] 楊浩. 鐵路運(yùn)輸組織學(xué)[M] . 北京:中國(guó)鐵道出版社,2001.
[3] 中華人民共和國(guó)鐵道部. 鐵路貨車統(tǒng)計(jì)規(guī)則[M] . 北京:中國(guó)鐵道出版社,2004.