2021-4-9 | 交通管理論文
1.在鐵路信息化建設(shè)目標的指導下,主動適應(yīng)車輛修制改革和客車技術(shù)管理不斷發(fā)展的需要,充分利用既有的信息資源和系統(tǒng)資源,制定客車技術(shù)管理信息化建設(shè)的總體規(guī)劃和發(fā)展方向,編制客車技術(shù)管理的技術(shù)規(guī)范和數(shù)據(jù)編碼,為客車綜合管理軟件建設(shè)提供指導性方案和技術(shù)依據(jù),以不斷提高鐵路客車技術(shù)管理的現(xiàn)代化水平和信息化程度和實現(xiàn)客車生產(chǎn)、經(jīng)營、技術(shù)管理科學化、信息化。依據(jù)每輛客車由新造到報廢所產(chǎn)生的全部技術(shù)數(shù)據(jù),形成鐵路客車技術(shù)信息庫,使客車技術(shù)管理數(shù)據(jù)資源規(guī)范、統(tǒng)一,數(shù)據(jù)存儲實時、完整,信息資源高度共享,信息分析準確、快捷,為鐵路客車技術(shù)管理的宏觀決策、生產(chǎn)組織、質(zhì)量控制和企業(yè)發(fā)展提供全面的信息服務(wù)和技術(shù)支持。
實現(xiàn)對車輛段客車調(diào)度信息的管理,包括客車的技術(shù)履歷、各種技術(shù)參數(shù)、客車當前位置、走行公里統(tǒng)計、命令查詢、車統(tǒng)—14、交路、車電等管理等,提供了簡便的錄入、查詢和統(tǒng)計打印的功能,并將車統(tǒng)—181錄入、查詢和統(tǒng)計打印功能編入動態(tài)編組程序中,從而能進行有效的故障技術(shù)分析和調(diào)度管理。在編組界面中,可以根據(jù)實際情況對各列車進行動態(tài)編組。工作人員在電子動態(tài)板上移動運行客車、備用客車、檢修客車,直觀明了,輕松自如。將有關(guān)規(guī)章等作為編組條件,計算機自動記錄編組后狀態(tài),自動更新計算機網(wǎng)絡(luò)上每個工作站,并能對車輛故障進行分類管理,實現(xiàn)各種故障的分析匯總功能。根據(jù)需要,系統(tǒng)還具備多條件查詢、打印功能及對各類信息的綜合處理能力。
2.系統(tǒng)特點
(1)以電子動態(tài)編組板為基本界面,在此界面下,全部完成動態(tài)編組和車統(tǒng)—181的錄入、分析、統(tǒng)計、打印,直觀快捷。(2)以車號、車次為紐帶,通過電子動態(tài)編組板將調(diào)度、庫檢、乘務(wù)、上部、車電等部門有機結(jié)合起來。(3)通過計算機網(wǎng)絡(luò),將鐵路局、車輛段機關(guān)、調(diào)度室與客技站的業(yè)務(wù)有機聯(lián)系起來,實現(xiàn)信息共享,信息準確、快捷。(4)具有強大的統(tǒng)計分析功能,能進行分類顯示和多種條件查詢、統(tǒng)計、分析。(5)具有車統(tǒng)—181自動報警、定檢到期報警功能。當某一輛客車有181故障未處理時或定檢到期時,在編組動態(tài)板上,該客車紅色閃爍報警,并用不同的閃爍方式提示報警原因。(6)具有子母車、茶爐車、空調(diào)車編組錯誤提示功能。(7)具有界面友好,可操作性強和易學易用等特點。
3.系統(tǒng)軟件設(shè)計和實現(xiàn)
3.1界面設(shè)計
3.2實現(xiàn)流程
(1)圖形顯示車次
程序啟動時,從車次庫中讀取車次信息,根據(jù)車次數(shù)據(jù),繪制出該車次圖形,該車次上時,快捷顯示該車次的到達日期、往返公 里、運行區(qū)間及當前區(qū)間。
(2)圖形顯示股道
程序啟動時,從股道庫中讀取股道信息,根據(jù)股道數(shù)據(jù),繪制出該股道圖形,顯示股道號,用鼠標放在該股道上時,快捷顯示該股道的股道長度、允許停放車輛數(shù)。
(3)圖形顯示客車
程序啟動時,從客車履歷庫中讀取客車數(shù)據(jù),根據(jù)客車數(shù)據(jù),繪制出該客車圖形,顯示車號、非運用車狀態(tài)、一位端、雙層車等信息,用鼠標放在該客車上時,快捷顯示該客車的車種、車型、轉(zhuǎn)向架型號、制動機型號、子母車、廣播室、茶爐、空調(diào)、廠段輔修單位及到期。
(4)單擊列車
顯示整列車所有客車的主要基本信息,包括子母車、廣播室、茶爐、辦公車、轉(zhuǎn)向架、制動機、軸報型號及乘務(wù)員交路人員、天數(shù)等信息。
(5)客車控件實現(xiàn)方法
選擇TGraphicControl作為祖先類,然后在ClassName框中輸入新控件(類)的名稱,一般以“T”開頭。PalettePage是用來選擇新控件在Delphi的窗口中的控件頁面名稱。在UnitFileName中添好新控件文件的路徑及文件名,單擊OK按鈕,新的控件便加入了。現(xiàn)在為該控件編寫代碼。
按照上面的方法,選擇TGraphicControl為祖先類,新控件的名稱是TTrainBox(客車控件)。選擇好文件路徑和文件名后,單擊OK按鈕,開始編寫代碼。
每一個控件,都會被創(chuàng)建(Create)和刪除(Destroy),所以必須首先編寫這兩個過程。對于控件中的每一個過程,都必須在前面先定義,然后再在后面編寫。定義的過程或?qū)傩杂兴姆N:①在private后定義的是屬于控件內(nèi)部使用的,使用該控件的人無法看到;②在protected后定義的一般是看不到的,只在別人使用該控件作為祖先類編寫其它控件時才可見;③在public后定義的只允許別人在程序中調(diào)用;④在published后定義的可以在屬性窗口(ObjectInspector)中看到。由于創(chuàng)建和刪除過程除了在編程過程中建立控件時自動執(zhí)行外,還可能在程序運行過程中動態(tài)創(chuàng)建控件時被調(diào)用,所以把它定義在public后。
首先為這個控件添加一些屬性。我們定義一個Data屬性用于設(shè)置客車的履歷資料,在履歷資料中存儲客車的車號、車種、車型、配屬、標記速度等信息,程序可以自動通過車種顯示客車的不同顏色,也可以通過車型或標記速度顯示不同的顏色。
在程序中一般不直接使用屬性,所以要定義一個變量,和該屬性對應(yīng)起來,以便修改或讀取其值。因為它只在控件內(nèi)部使用,所以我們把它定義在private后。其它的變量和屬性也類似的定義,因為執(zhí)行寫入該類屬性的時候需要做其它的事情,所以不能光用一個變量來處理,應(yīng)該用一個過程來處理。這種過程一般定義在protected后。
因為我們編寫的是可視化控件,所以必須在控件上畫圖。我們這個控件的祖先類TGraphicControl中封裝有一個Canvas(畫布)對象,我們可以直接使用它來畫圖。
祖先類TGraphicControl中有一個Paint事件,當控件需要重畫時,便會自動觸發(fā),但我們要為這個事件編寫一段程序。首先在protected后定義一個Canvas對象。由于它是祖先類中已有的,所以不需要加任何說明。我們將使用這個對象來畫圖。然后就要定義一個Paint過程,編寫繪制控件的代碼。先在public后定義Paint過程。由于它是由祖先類觸發(fā)的,而不是由用戶調(diào)用的,所以后面必須加上override,否則,該控件將會由于Paint過程永遠不會被調(diào)用而不成為可視化控件。Paint過程中的寬、高等變量是用來控制客車控件的大小,這部分程序和普通的Application中的程序差別不大,大部分都是對畫布進行操作。FFlash是和該控件的屬性Flash相關(guān)聯(lián)的布爾型變量,在程序中判斷該客車是否需要報警閃爍提示。當需要報警時,通過執(zhí)行toFlash(n:integer)方法,使該客車控件在主界面中閃爍報警,整形變量n表示報警方式(0:表示整個客車閃爍;1:表示左邊1/3閃爍;2:表示中間1/3閃爍;3:表示右邊1/3閃爍。),因此,可以區(qū)分報警原因。