馬暢
【摘 要】本文介紹CBTC仿真測試系統(tǒng)的整體結(jié)構(gòu)及各子系統(tǒng)的功能。在對線路數(shù)據(jù)進(jìn)行深入研究分析的基礎(chǔ)上,提出一種線路數(shù)據(jù)可視化顯示及生成方案,利用UML構(gòu)建了靜態(tài)模型和動(dòng)態(tài)模型,對該方案進(jìn)行闡述。對于數(shù)據(jù)生成結(jié)果,以XML結(jié)構(gòu)化線路拓?fù)湫畔ⅲ褂脭?shù)據(jù)庫表保存線路設(shè)備數(shù)據(jù)。
【關(guān)鍵詞】軌道交通;CBTC;線路數(shù)據(jù);可視化生成
基于通信的列車自動(dòng)控制(CBTC)系統(tǒng)作為城市軌道交通控制系統(tǒng)的神經(jīng)中樞,必須經(jīng)過嚴(yán)格的功能及安全測試,確保系統(tǒng)的質(zhì)量合格。計(jì)算機(jī)仿真測試與現(xiàn)場試驗(yàn)線測試是CBTC測試的兩種手段,其中計(jì)算機(jī)仿真測試以其經(jīng)濟(jì)、安全、可重復(fù)等優(yōu)點(diǎn)而被廣泛采用[1]。CBTC仿真測試系統(tǒng)通過研究CBTC系統(tǒng)的結(jié)構(gòu)、功能和行為,利用計(jì)算機(jī)對系統(tǒng)真實(shí)的運(yùn)行環(huán)境進(jìn)行模擬,分析系統(tǒng)對測試用例的響應(yīng),進(jìn)而驗(yàn)證系統(tǒng)功能,評估系統(tǒng)安全性。
一、CBTC仿真測試系統(tǒng)結(jié)構(gòu)
CBTC仿真測試系統(tǒng)由測試引擎、車輛仿真子系統(tǒng)、接口中間件子系統(tǒng)、軌旁設(shè)備仿真子系統(tǒng)組成。測試引擎負(fù)責(zé)監(jiān)控車輛運(yùn)動(dòng)狀態(tài)及軌旁設(shè)備狀態(tài),生成、管理、執(zhí)行自動(dòng)化測試腳本,處理測試結(jié)果;車輛仿真子系統(tǒng)是對真實(shí)列車的運(yùn)行動(dòng)力學(xué)仿真,通過牽引力、牽引延時(shí)、制動(dòng)延時(shí)和黏著力等參數(shù)構(gòu)建列車運(yùn)動(dòng)模型[2]。結(jié)合運(yùn)行場景計(jì)算出列車的瞬時(shí)速度、加速度以及位移等信息,并周期向被測系統(tǒng)更新;軌旁仿真子系統(tǒng)負(fù)責(zé)信號機(jī)、道岔、區(qū)段、屏蔽門、按鈕等軌旁設(shè)備仿真,動(dòng)態(tài)顯示站場圖,實(shí)現(xiàn)設(shè)備故障注入,提供一個(gè)虛擬的設(shè)備環(huán)境;接口中間件子系統(tǒng)的作用是對接受到的設(shè)備狀態(tài)信息、控制命令、應(yīng)答器報(bào)文等進(jìn)行格式轉(zhuǎn)換及物理節(jié)點(diǎn)映射,然后再轉(zhuǎn)發(fā)出去,其設(shè)計(jì)目的是屏蔽各種被測CBTC系統(tǒng)的差異性和復(fù)雜性,保證CBTC仿真測試系統(tǒng)的獨(dú)立性,提高它的通用性。
二、站場可視化設(shè)計(jì)
1.可視化技術(shù)簡介
數(shù)據(jù)可視化技術(shù)指的是運(yùn)用計(jì)算機(jī)圖形學(xué)和圖像技術(shù),將數(shù)據(jù)轉(zhuǎn)換位圖形或圖像在屏幕上顯示出來。其主旨是借助于圖形化手段,清晰有效地傳達(dá)與溝通信息,并利用數(shù)據(jù)分析和開發(fā)工具發(fā)現(xiàn)其中未知信息的處理過程。它涉及到計(jì)算機(jī)圖形學(xué)、計(jì)算機(jī)輔助設(shè)計(jì)、計(jì)算機(jī)視覺及人機(jī)交互技術(shù)等諸多領(lǐng)域[3]。
線路數(shù)據(jù)主要來源于站場平面布置圖,該圖是根據(jù)站場縮尺平面圖繪制成的有關(guān)設(shè)備布置情況的技術(shù)圖紙,描述的是CBTC仿真測試過程中的整個(gè)線路環(huán)境,對于被測系統(tǒng)而言就是真實(shí)線路上的各種物理設(shè)備和運(yùn)行場景?,F(xiàn)在CBTC測試中的平面線路布置圖普遍采用DWG格式,圖中各種設(shè)備數(shù)量總和一般數(shù)量巨大,大型的站場圖尤甚,人工生成相應(yīng)的線路數(shù)據(jù)繁雜且容易出錯(cuò)。因此可以采用數(shù)據(jù)可視化技術(shù),通過豐富的圖形交互功能實(shí)現(xiàn)線路數(shù)據(jù)的可視化生成,從而使數(shù)據(jù)可以更加靈活的展示,更易于理解和編輯。
2.設(shè)備圖元設(shè)計(jì)
CBTC線路設(shè)備有信號機(jī)、道岔、區(qū)段、計(jì)軸器、屏蔽門、(有源/無源)應(yīng)答器等。所謂圖元,就是這些設(shè)備在計(jì)算機(jī)屏幕上的圖形表示。對于每一個(gè)設(shè)備圖元,使用唯一的圖元ID號加以區(qū)別,以便于進(jìn)行設(shè)備統(tǒng)計(jì)和進(jìn)路搜索等操作。至于設(shè)備的不同狀態(tài),道岔的岔前、定位和反位可以使用不同的線段顏色表示,區(qū)段的鎖閉、解鎖與此類似;信號機(jī)則可以根據(jù)所點(diǎn)的燈絲,用對應(yīng)的顏色填充相應(yīng)的燈體。設(shè)備圖元根據(jù)車站平面布置圖排列組合,就構(gòu)成了站場圖。站場圖是線路拓?fù)鋽?shù)據(jù)的可視化表現(xiàn)形式,描述了車站站場中信號機(jī)、道岔、軌道區(qū)段等線路設(shè)備之間的連鎖關(guān)系和拓?fù)潢P(guān)系[4]。在CBTC仿真測試系統(tǒng)中,線路拓?fù)鋽?shù)據(jù)用以描述線路設(shè)備間的拓?fù)潢P(guān)系,主要包括圖元ID、設(shè)備類型、設(shè)備名、設(shè)備編號、車站信息、坐標(biāo)、前驅(qū)后繼設(shè)備等信息。對站場圖中設(shè)備按類型、按車站、按所在線路等要求統(tǒng)計(jì)后所得的數(shù)據(jù),即線路設(shè)備統(tǒng)計(jì)數(shù)據(jù)。線路拓?fù)鋽?shù)據(jù)和線路設(shè)備統(tǒng)計(jì)數(shù)據(jù)均是線路數(shù)據(jù)的重要組成部分。
3.交互設(shè)計(jì)
在完成設(shè)備到圖元的可視化映射后,需要實(shí)現(xiàn)人與圖元之間的交互,其中,最重要的是在窗口(用戶界面)中完成圖元與鍵鼠的交互。窗口是人機(jī)溝通的橋梁,而鍵鼠則是最常用的人機(jī)交互設(shè)備。交互操作的實(shí)現(xiàn)有賴于圖元對鍵鼠事件的響應(yīng),比如通過鼠標(biāo)點(diǎn)擊繪制/編輯/選中設(shè)備圖元、鼠標(biāo)拖放圖元實(shí)現(xiàn)重定位、通過滾輪縮放更改圖元尺寸以更好地觀察站場圖中的局部細(xì)節(jié)或是總體概況、獲取鍵盤輸入的設(shè)備信息等。
三、線路數(shù)據(jù)生成分析
1.LDG系統(tǒng)靜態(tài)模型
線路數(shù)據(jù)的主體是線路設(shè)備,對于每一種設(shè)備類型,可以采用面向?qū)ο蟮乃枷氤橄蟪鱿鄳?yīng)的類,用以描述此設(shè)備類型相關(guān)的屬性、操作、關(guān)系和語義。設(shè)備間具有一些共性:名稱、編號、設(shè)備類型、坐標(biāo)(在屏幕上繪圖區(qū)域中的位置)、公里標(biāo)及公里標(biāo)系(平面布置圖中的位置)、車站名、車站編號、左側(cè)設(shè)備類型、左側(cè)設(shè)備編號、右側(cè)設(shè)備類型、右側(cè)設(shè)備編號、所屬ZC區(qū)域、所屬ATS區(qū)域、所屬CI區(qū)域等。當(dāng)然也會(huì)有自己特有的一些屬性和行為,比如信號機(jī)特有的一些屬性:信號機(jī)類型、立柱高度(高柱和矮柱)、防護(hù)方向、是否存在并置信號機(jī)以及并置信號機(jī)編號以及信號顯示等,特有的行為:點(diǎn)亮/熄滅某種色燈;道岔的特有屬性:道岔類型、動(dòng)作類型(單動(dòng)/雙動(dòng))、道岔的位置(定位/反位)、所屬區(qū)段等,特有的行為:改變道岔的位置;區(qū)段特有的屬性:物理類型(計(jì)軸區(qū)段/軌道區(qū)段)、區(qū)段內(nèi)道岔(數(shù)量及編號)、區(qū)段內(nèi)屏蔽門(數(shù)量及編號)、區(qū)段內(nèi)緊急停車按鈕(數(shù)量及編號)、區(qū)段內(nèi)扣車按鈕(數(shù)量及編號)、區(qū)段內(nèi)折返按鈕(數(shù)量及編號)等;應(yīng)答器存在有源、無源應(yīng)答器之分。
2.LDG系統(tǒng)動(dòng)態(tài)模型
序列圖是系統(tǒng)動(dòng)態(tài)模型的重要組成部分,用于表示對象的行為順序。序列圖由一組對象構(gòu)成,每個(gè)對象分別帶有一條豎線,代表生命線,生命線若消失表示對象被銷毀。從一個(gè)對象的生命線指向另一個(gè)對象的生命線的水平箭頭表示消息。序列圖就是描述對象間隨著時(shí)間的推移互相之間交換消息的過程。
3.線路數(shù)據(jù)保存
最終生成的線路數(shù)據(jù)中設(shè)備統(tǒng)計(jì)信息和設(shè)備屬性信息由數(shù)據(jù)庫類保存至數(shù)據(jù)庫;線路拓?fù)鋽?shù)據(jù)則由XML類保存為XML文件。數(shù)據(jù)庫中數(shù)據(jù)的保存關(guān)鍵在于將類映射為數(shù)據(jù)庫表,這個(gè)過程遵循下面的規(guī)則:
(1)每種線路設(shè)備對應(yīng)一張數(shù)據(jù)庫表,以設(shè)備的編號作為主鍵;
(2)沒有屬性的類無需映射為數(shù)據(jù)庫表,如Form類、控制類、XML類和數(shù)據(jù)類;
(3)如果子類映射表中包含父類的屬性,只將子類映射為數(shù)據(jù)庫表,父類并不映射,如DevBase類;
(4)類的屬性可以映射為數(shù)據(jù)庫表中的1個(gè)或多個(gè)屬性列,但并非類中所有的屬性都需要映射,比如設(shè)備類中設(shè)備名在編輯窗口中坐標(biāo)信息、顯示的字體、顏色、對齊方式等;當(dāng)然也可以根據(jù)需要將若干個(gè)屬性映射為表中的一個(gè)屬性列。
四、結(jié)束語
本文從可視化生成線路數(shù)據(jù)的角度出發(fā),對站場圖的顯示進(jìn)行了設(shè)計(jì),分析了研究線路數(shù)據(jù)的組成和特點(diǎn),并利用UML對數(shù)據(jù)生成過程進(jìn)行建模,構(gòu)建LDG系統(tǒng)的靜態(tài)模型和動(dòng)態(tài)模型,使用線路數(shù)據(jù)庫表保存設(shè)備統(tǒng)計(jì)信息和設(shè)備屬性信息,用XML文件保存線路拓?fù)鋽?shù)據(jù),并最終在C#語言開發(fā)環(huán)境下,對LDG系統(tǒng)進(jìn)行實(shí)現(xiàn)。通過實(shí)際的測試,這種線路數(shù)據(jù)自動(dòng)生成的方法實(shí)現(xiàn)簡單、易于擴(kuò)展,有利于實(shí)現(xiàn)CBTC仿真測試系統(tǒng)中各子系統(tǒng)統(tǒng)一的數(shù)據(jù)接口,降低開發(fā)成本,提高系統(tǒng)效率,具有很好的應(yīng)用價(jià)值。
【參考文獻(xiàn)】
[1]饒康康,陳邦興,徐中偉,等.CBTC線路仿真系統(tǒng)的站場圖設(shè)計(jì)與實(shí)現(xiàn)[J].城市軌道交通研究,2013,16(1):38-42.
[2]許文鵬.數(shù)據(jù)可視化系統(tǒng)架構(gòu)的設(shè)計(jì)與實(shí)現(xiàn)[D].北京:北京交通大學(xué),2015.