?

基于時刻表的列車模擬運行的研究與設計

2015-06-28 15:42穆亞倩
鐵路計算機應用 2015年3期
關鍵詞:時刻表列車運行流程圖

穆亞倩,王 飛

(1.蘭州交通大學 光電技術與智能控制教育部重點實驗室,蘭州 730070;2.中鐵十一局集團 電務工程有限公司,武漢 430079)

研究與開發

基于時刻表的列車模擬運行的研究與設計

穆亞倩1,王 飛2

(1.蘭州交通大學 光電技術與智能控制教育部重點實驗室,蘭州 730070;2.中鐵十一局集團 電務工程有限公司,武漢 430079)

為了實現城市軌道交通的安全有效運輸,提出了一種適用于城市軌道交通列車運行時刻表的編制方法。把例如起始時間、終止時間等一些列車運行時所必需的數據以XML格式存儲在列車時刻表中,在對XML格式的時刻表數據進行解析時采用了較為方便有效的Tinyxml解析器,把解析出來的時刻表用于列車的模擬運行上。采用了定時器以獲得最新的時刻表數據。利用流程圖和VC++ 6.0詳細說明了列車時刻表模擬運行法的軟件實現過程,實現了ATS系統與聯鎖系統之間的有關時刻表和命令對信息的校核與傳遞。

城市軌道交通;時刻表;Tinyxml;列車模擬運行

在大中型城市的公共交通系統中,軌道交通系統正在扮演著重要的角色。一般來說,城市軌道交通系統有以下特點:單一旅客運輸方式、運行距離短、每日有運行高峰期、客流隨節假日波動比較大等;在設計上也有站間運行距離短、行車密度較高、行駛速度較快、安全性能要求高等特點[1]。

地鐵列車在運營時間上是按照一定的時刻表運行的。也就是說,列車運行圖和運營時刻表是城市軌道交通行車組織的計劃和基礎。文獻 [1]分析了列車自動監控(ATS,Automatic Train Supervision)子系統中的時刻表和運行圖管理模塊,并實現了地鐵列車時刻表的自動編制和運行圖繪制功能。文獻 [2]對時刻表編輯系統和在線調整系統進行了研究與介紹。文獻 [3]研究了在列車時刻表的優化和城市軌道交通的再生制動問題。

在這一背景下,本文提出了一種時刻表的編制方法并引用了 Tinyxml解析器 ,把解析出來的時刻表用于列車的模擬運行上。

1 列車時刻表概述

列車時刻表是計劃列車到達、出發或通過車站的時刻以及在??空緢鰰r停留的時間的表格[2]。它為ATS系統中的列車自動運行提供了時間依據,同時也是組織列車運行的基礎。時刻表描述了在一個給定的運行日內,計劃的所有的列車移動 (旅行 )的時刻標準和所有臨時速度的限制要求[3~5]。根據其作用特點可以分為基本運行時刻表、計劃運行時刻表和實際運行時刻表。

1.1 基本運行時刻表

基本列車時刻表規定了各次列車占用區間的順序 (車次號)、列車在一個車站到達和離開 (或通過 )的時刻、列車在區間的運行時間、列車在??寇囌镜耐U緯r間、折返站列車折返作業時間以及調車機車出入場的時間等[5~6]。

1.2 計劃運行時刻表

每日運營開始之前,根據當日的運營計劃,系統會自動地從數據庫中選擇一個基本運行圖或時刻表作為當日的計劃運行時刻表?;蛘哒{度員在調度員工作站上選擇適當的基本運行時刻表,也可作為當日的計劃運行時刻表。

無論哪種方式創建的計劃運行時刻表都會出現調度員確認的提示信息,經調度員修改或確認后,ATS系統根據該計劃運行時刻表組織和實施當日的列車運行計劃,并將該計劃顯示在控制中心的各個工作站上[5~6]。

1.3 實際運行時刻表

實際運行時刻表由ATS系統根據列車在各個車站及車站之間實際運行的情況自動生成的,其主要記錄了列車在每個車站的到發時刻以及在區間的運行時間,并將其在調度員工作站上顯示出來[6]。

2 列車時刻表自動編制

列車時刻表編制前,需要人工地輸入一些基本數據,包括列車在各個區間的運行時間、列車停站時間、列車折返時間等。這些輸入的數據必須介于標準值表里所定義的最大值和最小值之間,即最小值≤計劃數據≤最大值[7]。

在輸入以上數據后,還需要根據一天中的運營計劃確定列車的運行時段數、各運行時段的起始時間和結束時間 ,以及各時段的列車運行間隔和周期[7]。在此基礎上,可計算得出各時段的上線列車數。設某時段的列車運行間隔為H,周期為T,上線列車數為N,則有:

在以上數據的基礎上,選定運營所需要的折返模式,便可自動推定出列車時刻表并將之顯示出來。推定出時刻表的流程圖如圖1所示。

圖1 推定出時刻表的流程圖

3 列車時刻表模擬運行概述

依照列車運行時刻表 ,隨著時間的流逝 ,控制中心會不停獲取所有列車在各個區間內的最新的運行數據 ,它的核心目的是不停刷新更新列車時刻表 ,判斷各站之間運行線路上是否有新的列車出現,把新出現的列車加入到對應下一站的列車運行列表中,并啟動該站列車運行線程[8]。在列車運行過程中 ,根據列車的到達時刻和出發時刻來計算列車在本車站的??繒r間。當此列車從該站完全通過時 , 此列車在該站的的運行線程結束,從該站的列車運行列表中刪除此列車。相應地,此列車的運行線程會出現在下一站的列車運行時刻表中。由于這種監控運行的方法不考慮列車在其它站的運行狀況,而只顯示在當前車站區段內的運行情況,所以它一般只適用于聯鎖車站的監控。

另外,列車的運行時間和時刻表數據要實時地保持一致。因為列車的運行起始時刻和終止時刻都取決于時刻表,同時列車運行時間的變化也體現在列車時刻表的變化上;當某列車在某站內出現異常情況或者需要調整時,會生成新的時刻表,以便給后續列車提供新的準確的時刻表依據來運行[7~9]。

4 列車時刻表模擬運行建模

在列車時刻表模擬運行的建模中 , 車站、時刻表、命令對等單元都是一個個實體對象,這些對象不僅有自己的名稱和數據類型等基本屬性,而且相互之間也存在著一定的協調關系。這些實體對象及其之間的協調關系共同完成了列車時刻表的模擬運行[7]。下面是部分實例模型的具體設計。

(1)車站模型

屬性:本站車站站名,本站車站ID號,下站車站站名,下站車站ID號,上站車站站名,上站車站ID 號 ,股道 ID 號。

作用:站間聯鎖控制,故障設置。

(2)時刻表模型

屬性:列車車次號,股道 ID,接發車標志,某列車在上一站離開的時刻,某列車在本站到達的時刻,某列車在本站開出的時刻,某列車在下站到達的時刻等。

作用:列車車次號追蹤,時刻表調整等。

(3)命令對模型

屬性:股道 ID,接發車標志,始端按鈕 ID 號,終端按鈕 ID 號,上一車站的 ID 號,本車站的 ID 號等。

作用:進路辦理。

5 列車時刻表模擬運行軟件設計

要保證實時有效地完成時刻表模擬運行任務,在軟件上對總的模擬運行流程的設計是很重要的環節,關鍵運行過程流程圖見圖2所示。本設計采用模塊化,下文對各模塊的內容分別進行了詳細闡述。

圖2 關鍵運行過程流程圖

5.1 讀入推定的時刻表數據

在本次模擬中,首先需要將推定出的時刻表數據寫成XML形式的文件,其中,部分XML形式的時刻表文件如下:

在對時刻表文件解析時采用了 Tinyxml。Tinyxml是一個開源的解析 XML 的解析庫,能夠在Windows 或 Linux 中編譯 C++。這個解析庫通過解析XML文件,然后在內存中生成DOM模型,從而很方便的遍歷這棵XML樹。DOM模型即文檔對象模型,是將整個文檔分成多個元素(如書、章、節、段等),并利用樹型結構表示這些元素之間的順序關系以及嵌套包含關系。它最大的特點就是它很小,也很方便,添加 6 個文件(tinystr.h、tinyxml. h、tinystr.cpp、tinyxml.cpp、tinyxmlerror.cpp、tinyxmlparser.cpp)到 C++ 工程后就可以靜態連接到程序里。它很適合如配置文件、數據文件等這類簡單文件的解析。Tinyxml實現的是 DOM 訪問模型,因此提供了一系列的類對應XML文件中的各個節點。主要類間的定義如下。

TiXmlDocument:表示整個 XML 文檔,不對應其中某個特定的節點。

TiXmlElement:表示元素節點,可以包含子節點和 TiXmlAttribute。

TiXmlComment:表示注釋。

TiXmlDeclaration:表示聲明。

TiXmlText:表示文本節點。

TiXmlUnknown:表示未知節點,通常是出錯了

計算機讀取并解析時刻表文件的流程圖如圖3所示。

圖3 解析時刻表流程圖

5.2 定時器處理過程

為了保證隨時解析讀取到的時刻表都是最新的,因此在基于時刻表的模擬運行中加入了定時器部分,設置定時器的間隔時間為 300 ms,即 300 ms 讀取一次最新的時刻表,定時器處理的流程圖如圖4所示。

圖4 定時器處理過程流程圖

5.3 查找下列列車到站的間隔時間

獲取到最新的基本時刻表后,需要從時刻表中讀取到所有的即將到站的列車中所需時間最短的那趟車的車次號及最短時間間隔等信息,其流程如下:

(1)定義一個時間差數組;

(2)獲取并讀出車站所有基本時刻表時間,并且獲取當前時間,并且將兩個時間轉換為同一類型的時間;

(3)車站所有基本時刻表時間減去當前時間,并把所得的差值放在定義好的時間差數組中;

(4)求出時間差數組中的最小差值,即為所需時間最短的那趟車的時間差,相應地推算出該趟列車的車次號及??康恼久?,股道名等基本信息。

在控制中心調度臺上可以詳細地看到各個區間內的列車到達下一站的時間間隔情況,并且當定義定時器的時間間隔為 300 ms時,控制臺的最新的時間間隔消息會每隔 300 ms刷新一次,因此區間內的每條列車到達下一站與當前的時間間隔會呈現倒計時狀態,實驗界面如圖 5 所示。

5.4 將辦理下條列車進路的指令自動發送給聯鎖系統

在本次列車運行仿真中,定義當區間內的某趟列車到達下一站時間與當前的時間差減小到 3 min時,進路設定系統會自動地向聯鎖系統下發辦理進路的指令。

根據其來源于時刻表和列車運行調整系統的信息,自動進路設定系統會發出列車進路設置命令;根據其來源于控制中心的排列進路的指令,聯鎖系統負責實際的安全排列進路[10~12]。

圖5 實驗界面圖

聯鎖系統與ATS系統之間會進行命令的許可校核,當許可校核得到否定結果時,聯鎖系統將向ATS系統回送一個相應的信息,然后由 ATS系統重復傳輸相同的控制命令,直至達到規定的次數和時間為止[10~12]。此二者必須協同地相互配合和相互協調,才能安全有效的完成列車基于時刻表運行的任務。

6 結束語

隨著城市軌道交通的快速發展,制作一個地鐵列車運行時刻表并依照此時刻表來運行并不是一件難事,但要制作一個把設備情況和運營情況能完美的結合起來的時刻表仍需繼續研究[13]。本文首先介紹列車時刻表的概述及分類。接著介紹一種適用于城市軌道交通列車運行時刻表的編制方法,給出了詳細的推定時刻表的流程。在解析時刻表時用到了TinyXml解析器,詳細介紹了 TinyXml的解析方法。最后介紹了列車時刻表模擬法,并把解析出來的時刻表用于模擬列車運行上。在本次模擬運行中主要采用流程圖和模塊化研究了列車時刻表模擬運行法的軟件實現過程,完成了聯鎖系統與ATS系統之間有關時刻表信息和命令對信息的傳遞。其中,對 ATS子系統時刻表編制及模擬運行尚有許多內容值得進一步研究 ,部分實際因素并沒有全部考慮進去 ,例如聯鎖系統與 ATS系統之間如何快速準確地完成許可校核、運行圖的自動調整問題等,都值得在以后的學習中繼續深入研究。

[1] 白 鑫 . 城市軌道交通信號系統關鍵技術研究 [D].成都:西南交通大學 , 2000:67-70.

[2] 王堅強 . 城市軌道交通時刻表編輯系統及在線調整系統研究與設計 [D].成都:西南交通大學 , 2010:5-8.

[3] 趙 樂 . 基于再生制動的地鐵列車時刻表優化模型與算法研究 [D]. 北京:北京交通大學,2014:7-8 .

[4] 中國建筑工業出版社 .城市公共交通規范 [M]. 北京:中國建筑工業出版社 , 1997.

[5] 朱美超 . 城市軌道交通時刻表編輯器的設計與實現 [D]. 南京:南京理工大學 , 2008:15.

[6] 張雁鵬,黨建武,邢建平 . 城市軌道交通列車自動監督時刻表管理設計系統 [J]. 城市軌道交通研究,2013(10):48-52.

[7] 畢瑩玉 . 上海地鐵列車運行建模及仿真 [D]. 上海:同濟大學,2008:48-51.

[8] 李永軍 . 地鐵 ATS 系統仿真研究 [D]. 北京:北京交通大學 , 2005.

[9] 李永軍,唐禎敏 . 地鐵調度監督系統的仿真研究 [J]. 現代城市軌道交通 , 2004(4):30-32.

[10] 劉伯鴻,李國寧 . 城市軌道交通信號 [M]. 成都:西南交通大學出版社,2011:94-95.

[11] 林瑜筠,呂永昌 . 計算機聯鎖 [M].北京:中國鐵道出版社,2007:34.

[12] 徐 飛,陳浩然 . 廣州地鐵一號線列車運行控制的特點及實現方法 [J]. 地鐵與輕軌 , 1997(2):26-29.

[13] 李玉寶,鐘毅強 . 地鐵系統時刻表編輯器淺析 [J]. 鐵道通信信號 , 2012(1):38-40.

責任編輯 徐侃春

Research and design of train simulated running process of train based on train timetable schedule

MU Yaqian1, WANG Fei2
( 1.Key Laboratory of Opto-Electronic Technology and Intelligent Control of the Ministry of Education, Lanzhou Jiaotong University, Lanzhou 730070, China; 2. China Railway Eleven Bureau Group Signal and Communication Engineering Co. Ltd, Wuhan 430079, China )

In order to implement eff i cient and safe transport for Urban Transit, this paper put forward a method of drawing up train timetable which was suitable for it. The data such as the start-time and the end-time were stored in XML format and then parsed by the TinyXml which was very convenient and eff i cient. The parsed data were used on the train simulated the running process. The timer was used to ensure the latest data. In the paper, the software implemented process of train simulated running was introduced in detail by using program f l ow chart and VC + +6.0. It was implemented the checking and transferring about train timetable and command between ATS and interlock system.

Urban Transit; time table; Tinyxml; train simulated running

U292∶TP39

:A

1005-8451(2015)03-0001-05

2014-08-18

甘肅省自然科學基金項目(1212RJZA046)。

穆亞倩,在讀碩士研究生;王 飛,助理工程師。

猜你喜歡
時刻表列車運行流程圖
城市軌道交通時刻表調整服務器故障分析及探討
令你誤車的列車時刻表
一種程序源代碼的標準化流程圖轉化方法?
CBTC系統列車運行間隔控制仿真研究
相同徑路的高速列車運行圖編制方法
寧??h村級權力清單36條
計算機編制周期性列車運行圖關鍵技術
短文改錯
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合