趙珩越 鄒喜華 鄧 果 李毓磊
近年來(lái),我國(guó)鐵路里程和大型樞紐站場(chǎng)數(shù)量飛速增長(zhǎng),隨之出現(xiàn)了許多極為復(fù)雜的線路和場(chǎng)站系統(tǒng)。由于鐵路信號(hào)系統(tǒng)結(jié)構(gòu)復(fù)雜,設(shè)備數(shù)量多,占地面積大,采用實(shí)地設(shè)備培訓(xùn),成本高,學(xué)習(xí)和研究效率低下[1],不利于系統(tǒng)的研發(fā)、仿真和教培。
三維虛擬仿真技術(shù)可為用戶提供多方面的感官模擬體驗(yàn),如同身在場(chǎng)景之中觀察和操作物體[2]。這種能夠給實(shí)驗(yàn)人員帶來(lái)真實(shí)沉浸感的技術(shù)能夠更好地實(shí)現(xiàn)實(shí)際場(chǎng)景的復(fù)現(xiàn),代替實(shí)際設(shè)備進(jìn)行操作訓(xùn)練和故障維修訓(xùn)練,降低了訓(xùn)練的硬件成本,提升了訓(xùn)練效率[3]。隨著軌道交通行業(yè)自動(dòng)化程度的快速提高,目前雖然已經(jīng)出現(xiàn)了各種鐵路信號(hào)設(shè)備或場(chǎng)站設(shè)備的三維場(chǎng)景仿真系統(tǒng)[4-5],但大多是無(wú)車(chē)狀態(tài)下的車(chē)站場(chǎng)景演示,或者是單獨(dú)的列車(chē)操作,不具備車(chē)地通信的功能。
本文基于Unity3D 引擎,設(shè)計(jì)了一個(gè)三維站場(chǎng)模擬平臺(tái),采用桌面三維和虛擬現(xiàn)實(shí)(VR)方式,展示車(chē)站和區(qū)間線路的實(shí)際線路環(huán)境,以及鐵路設(shè)備和列車(chē)運(yùn)行的狀態(tài);通過(guò)與CTCS-3 級(jí)列控仿真系統(tǒng)數(shù)據(jù)交互進(jìn)行車(chē)地通信的仿真試驗(yàn),實(shí)現(xiàn)對(duì)列控系統(tǒng)更有效的教學(xué)和研究[6-7]。
本文選取CTCS-3 級(jí)列控仿真系統(tǒng)中的調(diào)度集中控制(CTC) 系統(tǒng)和車(chē)載設(shè)備進(jìn)行三維站場(chǎng)模擬仿真功能的設(shè)計(jì)。三維站場(chǎng)模擬平臺(tái)軟件結(jié)構(gòu)見(jiàn)圖1。
圖1 三維站場(chǎng)模擬平臺(tái)軟件結(jié)構(gòu)
CTC 系統(tǒng)主要對(duì)車(chē)站及區(qū)間的進(jìn)路、道岔和信號(hào)機(jī)進(jìn)行聯(lián)鎖控制,實(shí)現(xiàn)進(jìn)路的建立和解鎖,控制列車(chē)的運(yùn)行。其上位機(jī)大屏顯示為車(chē)站的調(diào)度集中控制界面[8][14]。
車(chē)載系統(tǒng)主要控制線路中列車(chē)的增減,與CTC 系統(tǒng)進(jìn)行數(shù)據(jù)交互,顯示每一輛列車(chē)的位置、速度等運(yùn)行狀態(tài),其上位機(jī)顯示為增減列車(chē)的界面以及列車(chē)人機(jī)交互DMI 顯示界面[9]。
本文設(shè)計(jì)的三維站場(chǎng)模擬平臺(tái)將實(shí)現(xiàn)以下功能:①根據(jù)列控車(chē)站和區(qū)間的線路情況,構(gòu)建三維站場(chǎng),實(shí)現(xiàn)場(chǎng)景漫游;②借助基于TCP Socket 協(xié)議的網(wǎng)絡(luò)模塊,實(shí)時(shí)接收列控仿真系統(tǒng)中CTC 系統(tǒng)和車(chē)載系統(tǒng)傳來(lái)的數(shù)據(jù);③根據(jù)CTC 系統(tǒng)的數(shù)據(jù),在三維站場(chǎng)中實(shí)時(shí)顯示信號(hào)機(jī)、道岔、進(jìn)路等車(chē)站設(shè)備的狀態(tài);④根據(jù)業(yè)務(wù)流程和車(chē)載系統(tǒng)的位置、速度等列車(chē)運(yùn)行狀態(tài),實(shí)現(xiàn)列車(chē)增減和機(jī)車(chē)運(yùn)行情況的模擬,以三維動(dòng)畫(huà)的方式展現(xiàn)在三維場(chǎng)景中[10-12]。
三維站場(chǎng)模擬平臺(tái)作為系統(tǒng)的服務(wù)端,CTC系統(tǒng)(唯一連接)和車(chē)載系統(tǒng)(多個(gè)連接)作為客戶端。CTC 系統(tǒng)以500 ms 的周期向三維站場(chǎng)發(fā)送站場(chǎng)表示信息,每個(gè)車(chē)載系統(tǒng)均以100 ms 的周期向三維站場(chǎng)發(fā)送列車(chē)運(yùn)行狀態(tài)信息。
三維站場(chǎng)與CTC 以及車(chē)載之間進(jìn)行數(shù)據(jù)交互時(shí),字節(jié)轉(zhuǎn)換均采用大端模式,CTC 發(fā)送的數(shù)據(jù)包結(jié)構(gòu)如表1 所示,車(chē)載發(fā)送的數(shù)據(jù)包結(jié)構(gòu)如表2所示。每個(gè)信號(hào)機(jī)的信息由3 個(gè)字節(jié)表示,每個(gè)字節(jié)分別為該信號(hào)機(jī)在設(shè)備表里的編號(hào)、點(diǎn)燈顏色和斷絲狀態(tài);每個(gè)道岔由3 個(gè)字節(jié)表示,每個(gè)字節(jié)分別為編號(hào)、道岔轉(zhuǎn)換狀態(tài)(無(wú)表示、定位、反位)和道岔單鎖情況;每段軌道區(qū)段信息由4 個(gè)字節(jié)表示,每個(gè)字節(jié)分別為編號(hào)、占用狀態(tài)、鎖閉狀態(tài)以及分路不良情況。
表1 站場(chǎng)表示信息的數(shù)據(jù)包結(jié)構(gòu)
表2 列車(chē)運(yùn)行狀態(tài)信息的數(shù)據(jù)包結(jié)構(gòu)
根據(jù)真實(shí)線路和設(shè)備資料進(jìn)行三維站場(chǎng)軟件的開(kāi)發(fā),制作模型以及規(guī)劃線路,設(shè)計(jì)流程如圖2 所示。首先,使用Maya進(jìn)行三維建模,并導(dǎo)入至Unity3D 引擎中,編輯線路并搭建場(chǎng)景;其次,在Unity3D 的mono 平臺(tái)下使用C#語(yǔ)言編寫(xiě)交互邏輯[13],包括數(shù)據(jù)讀取、動(dòng)畫(huà)控制、信號(hào)機(jī)和道岔的狀態(tài)變化,以及列車(chē)運(yùn)行邏輯等;最后,進(jìn)行軟件聯(lián)合調(diào)試,實(shí)現(xiàn)列控系統(tǒng)在三維場(chǎng)景中的真實(shí)復(fù)現(xiàn)。
圖2 三維站場(chǎng)模擬平臺(tái)軟件設(shè)計(jì)流程
三維站場(chǎng)模型主要有高鐵列車(chē)、軌道、轉(zhuǎn)轍機(jī)、信號(hào)機(jī)、車(chē)站站臺(tái)、接觸網(wǎng)等。其中:列車(chē)模型采用CRH380B 型動(dòng)車(chē)組;轉(zhuǎn)轍機(jī)采用ZD6 和S700K 兩種型號(hào);信號(hào)機(jī)采用高柱五顯示的進(jìn)站信號(hào)機(jī)、矮柱三顯示的出站信號(hào)機(jī)和通過(guò)信號(hào)機(jī),以及矮柱二顯示的調(diào)車(chē)信號(hào)機(jī)[14];軌道采用高鐵的無(wú)砟軌道,應(yīng)用18、42、62 號(hào)道岔[15],類(lèi)型分為直線軌道、單開(kāi)道岔軌道和單式渡線道岔軌道;軌道模型中將尖軌與轉(zhuǎn)轍機(jī)模型組合在一起,方便制作轉(zhuǎn)轍動(dòng)畫(huà)。
2.2.1 單位軌道預(yù)制體的制作
制作軌道預(yù)制體時(shí),要沿著軌道的走向生成路徑點(diǎn)集,使列車(chē)可以沿著路徑點(diǎn)移動(dòng)。
在Unity3D 引擎中,根據(jù)導(dǎo)入的軌道模型,以模型起點(diǎn)為父節(jié)點(diǎn)坐標(biāo),沿軌道走向計(jì)算出間隔為1m 的點(diǎn)集坐標(biāo)。
如圖3 所示,點(diǎn)O 為道岔軌道模型的父節(jié)點(diǎn),點(diǎn)N 為路徑點(diǎn),直線部分為ON0,側(cè)線部分由直線ON1、弧線N1N2、直線N2N3構(gòu)成[12]。已知對(duì)應(yīng)型號(hào)道岔中的直線段長(zhǎng)l0、l1、l3,圓弧弧長(zhǎng)l2,圓弧半徑R 以及轍叉角α,即可計(jì)算出該軌道點(diǎn)集中每個(gè)點(diǎn)的局部坐標(biāo)。
圖3 軌道路徑示意圖
設(shè)l 為列車(chē)從O 點(diǎn)開(kāi)始行駛的距離。當(dāng)N 在直線路徑中時(shí),N 點(diǎn)坐標(biāo)為(l,0)。當(dāng)N 點(diǎn)在側(cè)線路徑中時(shí),若0≤l≤l1,則N 點(diǎn)坐標(biāo)為(l,0);若l1<l≤l2,則N 點(diǎn) 坐標(biāo) 如 式(1) 所示;若l2<l≤l3,則N 點(diǎn)坐標(biāo)如式(2)所示。
式中,“±”代表不同的側(cè)線轉(zhuǎn)轍方向,轉(zhuǎn)轍向左時(shí)為“+”,轉(zhuǎn)轍向右時(shí)為“-”。
在每個(gè)點(diǎn)的坐標(biāo)位置生成一個(gè)空物體(GameObject 類(lèi)型)作為軌道預(yù)制體的子物體,即列車(chē)行駛所需的路徑點(diǎn)集。每個(gè)生成的路徑點(diǎn)上需要掛載一個(gè)結(jié)構(gòu)體,存放鄰接點(diǎn)數(shù)據(jù),即當(dāng)前點(diǎn)、前鄰接點(diǎn)和后鄰接點(diǎn)的GameObject 類(lèi)型數(shù)據(jù),這樣相當(dāng)于將所有的點(diǎn)存放在一個(gè)雙向鏈表中,任意一個(gè)點(diǎn)都能直接找到其前、后鄰接的點(diǎn)。另外,在一段軌道點(diǎn)集的頭點(diǎn)和尾點(diǎn)上做接口標(biāo)記,其頭點(diǎn)的前鄰接點(diǎn)和尾點(diǎn)的后鄰接點(diǎn)為空,用于軌道之間的拼接。
2.2.2 線路編輯器
對(duì)于不同車(chē)站,其軌道線路有所不同,因此設(shè)計(jì)了一個(gè)線路編輯工具,用來(lái)制作任意站場(chǎng)和線路的三維模型。
線路編輯工具界面見(jiàn)圖4。使用時(shí)先將軌道模型欄中的多個(gè)軌道拖入場(chǎng)景,使一個(gè)軌道模型的端點(diǎn)靠近另一個(gè)軌道模型的端點(diǎn)處,則其自動(dòng)拼接到被靠近的軌道模型上,再將軌道路徑點(diǎn)的頭、尾點(diǎn)結(jié)構(gòu)體中的鄰接點(diǎn)數(shù)據(jù)也相應(yīng)添加,并在界面右側(cè)UI 中設(shè)置該軌道的編號(hào)。
界面下側(cè)的模型選擇欄中添加了不同類(lèi)型、不同方向、不同尺寸的道岔軌道、直線軌道及其組合模型。另外,轉(zhuǎn)轍機(jī)和色燈信號(hào)機(jī)的模型也列入其中,可以擺放在軌道線路的對(duì)應(yīng)位置。在Unity3D引擎中使用該工具,即可將制作的單位軌道按需求拼接成完整的線路。
2.3.1 站場(chǎng)資源的導(dǎo)入
將制作好的整段線路軌道預(yù)制體的Transform信息存儲(chǔ)在一個(gè)json 文件中。在三維站場(chǎng)的場(chǎng)景中讀取此json 文件,根據(jù)文件中的Transform 信息,將制作好的線路模型加載到場(chǎng)景中。
2.3.2 桌面三維視角的場(chǎng)景漫游
圖4 線路編輯工具界面
三維站場(chǎng)采用了4 個(gè)切換視角,分別為宏觀視角、跟車(chē)定位視角、第一人稱漫游視角和第三人稱漫游視角。三維站場(chǎng)的4 個(gè)視角見(jiàn)圖5。
圖5 三維站場(chǎng)的視角
宏觀視角采用在場(chǎng)景中的主攝像機(jī)上掛載控制腳本,使用鼠標(biāo)中鍵平移、右鍵旋轉(zhuǎn)、滾輪縮放的方式,對(duì)三維站場(chǎng)的全景場(chǎng)景進(jìn)行全方位的觀察;第一人稱與第三人稱漫游視角添加了角色控制器(Character Controller),使用WASD 鍵移動(dòng)角色,并將相機(jī)綁定在角色上進(jìn)行跟隨;場(chǎng)景中添加列車(chē)時(shí),可以將攝像機(jī)綁定在列車(chē)上,切換至列車(chē)跟車(chē)定位視角,方便觀察某一輛列車(chē)的運(yùn)行狀態(tài)。
2.3.3 VR 視角的實(shí)現(xiàn)
為了提高用戶的沉浸感,本系統(tǒng)增加了一個(gè)VR 視角的版本,采用Vive Input Utility 的插件來(lái)編寫(xiě)VR 人機(jī)交互功能腳本。在場(chǎng)景中添加插件的ViveCameraRig 預(yù)制,預(yù)制中包含camera 相機(jī),代表VR 頭盔顯示器,RightHand 和LeftHand 分別代表2 只手柄控制器。使用ViveInput.GetPressDown選擇控制器以及控制器按鈕進(jìn)行交互邏輯的編輯;使用手柄Grip 側(cè)握鍵進(jìn)行地面視角和行車(chē)視角切換。在地面視角中,添加ViveCurvePointers 組件,使用圓盤(pán)鍵進(jìn)行位置瞬移;在行車(chē)視角中,ViveCameraRig 切換至列車(chē)駕駛艙,模擬司機(jī)駕駛的視角。司機(jī)視角的VR 畫(huà)面見(jiàn)圖6。
圖6 司機(jī)VR 視角
2.3.4 信號(hào)數(shù)據(jù)接收
三維站場(chǎng)作為服務(wù)器端,數(shù)據(jù)接收模塊采用Socket 編程接口、TCP 網(wǎng)絡(luò)協(xié)議接收客戶端數(shù)據(jù)。編寫(xiě)一個(gè)Client 類(lèi)作為接入的客戶端,每接入一個(gè)客戶端,即創(chuàng)建一個(gè)Client 實(shí)例,實(shí)時(shí)接收數(shù)據(jù)包,判斷數(shù)據(jù)包的幀頭和幀尾的幀長(zhǎng),以確定客戶端類(lèi)型(CTC 站場(chǎng)信息或車(chē)載運(yùn)行狀態(tài))。將數(shù)據(jù)解析之后得到場(chǎng)景所需的信息(如信號(hào)機(jī)、轉(zhuǎn)轍機(jī)的狀態(tài),列車(chē)的編號(hào)和位置信息等),更新對(duì)應(yīng)的結(jié)構(gòu)體(StationData,TrainData)中的數(shù)據(jù)信息,隨即進(jìn)行相應(yīng)的邏輯處理。數(shù)據(jù)處理邏輯框架見(jiàn)圖7。
圖7 數(shù)據(jù)處理邏輯框架
2.3.5 信號(hào)機(jī)與轉(zhuǎn)轍機(jī)的邏輯控制
CTC 中心定時(shí)500 ms 向三維站場(chǎng)發(fā)送站場(chǎng)表示信息,在StationData 中進(jìn)行更新。數(shù)據(jù)包中,信號(hào)機(jī)點(diǎn)燈的數(shù)據(jù)解析為0~14 的整型數(shù)據(jù),分別代表不同的色燈顯示,且色燈顯示需要結(jié)合信號(hào)機(jī)類(lèi)型和點(diǎn)燈數(shù)據(jù)信息。
場(chǎng)景中信號(hào)機(jī)都貼有暗色的貼圖,每一個(gè)色燈上添加一個(gè)Spot Light 組件,即聚光燈組件。每次接收數(shù)據(jù)都會(huì)更新一次站場(chǎng)中所有信號(hào)機(jī)的色燈顯示,若對(duì)應(yīng)編號(hào)的信號(hào)機(jī)點(diǎn)燈數(shù)據(jù)發(fā)生變化,則改變相應(yīng)色燈的Spot Light 的Intensity(燈光強(qiáng)度)屬性;若數(shù)據(jù)不變,則保持色燈不變。
數(shù)據(jù)包中的道岔轉(zhuǎn)換狀態(tài)分為0x00 (無(wú)表示)、0x01(定位)和0x02(反位)[4]。每次接收數(shù)據(jù)后,在站場(chǎng)中更新轉(zhuǎn)轍機(jī)的狀態(tài),若對(duì)應(yīng)道岔狀態(tài)發(fā)生變化,則控制播放對(duì)應(yīng)轉(zhuǎn)轍機(jī)的轉(zhuǎn)轍動(dòng)畫(huà),將尖軌扳到相應(yīng)位置。轉(zhuǎn)轍動(dòng)畫(huà)使用Animaton 制作移向反位和移向定位2 個(gè)動(dòng)畫(huà)片段AnimationClip,由動(dòng)畫(huà)狀態(tài)機(jī)Animator 控制Animation-Clip 實(shí)現(xiàn)轉(zhuǎn)轍機(jī)狀態(tài)的切換。同時(shí),在道岔軌道的頭或尾端路徑點(diǎn)結(jié)構(gòu)體中,鄰接點(diǎn)也進(jìn)行相應(yīng)的切換,確保鏈表中的路徑點(diǎn)集與站場(chǎng)中的進(jìn)路一致。
2.3.6 列車(chē)運(yùn)行邏輯控制
每當(dāng)一個(gè)車(chē)載接入系統(tǒng)中,數(shù)據(jù)接收模塊對(duì)車(chē)載數(shù)據(jù)進(jìn)行解析后,便實(shí)例化一個(gè)TrainData,每次接收數(shù)據(jù)更新一次TrainData 中的數(shù)據(jù)。列車(chē)運(yùn)行控制邏輯流程見(jiàn)圖8。
第一次接收數(shù)據(jù)時(shí),根據(jù)數(shù)據(jù)包中的信息初始化列車(chē)。其中,列車(chē)設(shè)備編號(hào)和車(chē)次號(hào)作為列車(chē)的標(biāo)識(shí);列車(chē)長(zhǎng)度決定初始化的車(chē)廂數(shù)量;列車(chē)運(yùn)行方向決定正向或反向;列車(chē)所在的線路號(hào)決定下行或上行;而列車(chē)位置,即列車(chē)所在位置的公里標(biāo)(double 類(lèi)型,強(qiáng)轉(zhuǎn)為float 類(lèi)型,以兼容Unity3D中的Vector3 坐標(biāo)類(lèi)型),將其映射為Unity3D 場(chǎng)景中的三維坐標(biāo),找到軌道路徑點(diǎn)集中與其最接近的一個(gè)點(diǎn)作為該列車(chē)車(chē)頭所在的坐標(biāo)點(diǎn)。
每次收到的位置信息(公里標(biāo))作為列車(chē)車(chē)頭所要達(dá)到的位置,對(duì)比上一幀,若公里標(biāo)增加,則列車(chē)向下行方向運(yùn)行;公里標(biāo)減少,列車(chē)向上行方向運(yùn)行;公里標(biāo)不變,則列車(chē)停車(chē)。根據(jù)行車(chē)方向不同,在路徑點(diǎn)的雙向鏈表中,向不同的方向獲取其鄰接路徑點(diǎn),作為當(dāng)前車(chē)頭所在路徑點(diǎn)的下一路徑點(diǎn),并以相同的方向,依次找到每一節(jié)車(chē)廂頭部所在的路徑點(diǎn)以及車(chē)尾所在的路徑點(diǎn),存儲(chǔ)到全局的List 集合m_next 中。
DoTween 是一種快速、高效、安全的面向?qū)ο蟮膭?dòng)畫(huà)引擎。根據(jù)當(dāng)前列車(chē)速度計(jì)算到達(dá)下一個(gè)點(diǎn)所需的時(shí)間,在Unity3D 中使用DoTween 插件中的DoMove 函數(shù),在路徑點(diǎn)集之間做補(bǔ)間動(dòng)畫(huà),使列車(chē)沿著軌道線路平滑移動(dòng)[16]。由于使用DoTween 插件做連續(xù)補(bǔ)間動(dòng)畫(huà)時(shí),會(huì)產(chǎn)生10 ms 以上的延時(shí),因此列車(chē)實(shí)際運(yùn)行速度會(huì)低于理論速度。為彌補(bǔ)這個(gè)延時(shí),需計(jì)算公里標(biāo)位置和當(dāng)前列車(chē)所在位置的距離,若距離在一個(gè)可接受的誤差范圍a 之內(nèi),則不對(duì)補(bǔ)間動(dòng)畫(huà)做處理;若距離大于a,則車(chē)頭位置直接移向下一點(diǎn),代替補(bǔ)間動(dòng)畫(huà),以補(bǔ)償誤差距離。在車(chē)頭位置移動(dòng)后,使用DoMove 函數(shù)將每一節(jié)車(chē)廂移動(dòng)到m_next 中對(duì)應(yīng)路徑點(diǎn)上,并使用DoLookAt 函數(shù),將車(chē)頭和每一節(jié)車(chē)廂的尾端朝向后面相鄰車(chē)廂的頭端點(diǎn),最后一節(jié)車(chē)廂朝向車(chē)尾,這樣完成列車(chē)運(yùn)行時(shí)車(chē)廂跟車(chē)的效果。
圖8 列車(chē)運(yùn)行控制邏輯流程
在三維站場(chǎng)中,根據(jù)列控系統(tǒng)的實(shí)際調(diào)車(chē)需求可同時(shí)在場(chǎng)景中出現(xiàn)多輛列車(chē),每輛列車(chē)的設(shè)備編號(hào)和車(chē)次號(hào)都會(huì)添加在界面中的UI 中,點(diǎn)擊對(duì)應(yīng)的車(chē)次號(hào),即可切換相機(jī)位置,移動(dòng)到跟車(chē)視角進(jìn)行行車(chē)跟蹤觀察[19]。
以主干為鄭西線的華山北站至臨潼東站一段連續(xù)高鐵線路為例,其軌道線路以1:1 的比例再現(xiàn)于三維場(chǎng)景中,該三維站場(chǎng)數(shù)據(jù)采集自國(guó)家級(jí)實(shí)驗(yàn)教學(xué)示范中心的CTCS-3 級(jí)列控仿真系統(tǒng)。華山北站虛擬場(chǎng)景見(jiàn)圖9。
圖9 三維站場(chǎng)模擬平臺(tái)中的華山北站虛擬場(chǎng)景圖
1)將三維站場(chǎng)平臺(tái)軟件與CTCS-3 級(jí)列控仿真系統(tǒng)接入同一局域網(wǎng)內(nèi),三維站場(chǎng)作為服務(wù)器端[17-18]。
2)接入CTC 中心系統(tǒng),將華山北站的下行正向設(shè)為側(cè)線接車(chē)狀態(tài),下行正向進(jìn)站信號(hào)機(jī)為雙黃閃,出站通過(guò),亮綠燈。CTC 大屏如圖10(a)所示,對(duì)應(yīng)的三維場(chǎng)景如圖10(b)所示。
3)接入車(chē)載系統(tǒng),在下行正向進(jìn)站前公里標(biāo)為947000 的位置增加一輛列車(chē),車(chē)次號(hào)為G103,施加牽引使列車(chē)行駛,列車(chē)受到列控仿真系統(tǒng)的控制,進(jìn)行進(jìn)站和出站的作業(yè)。
4)列車(chē)占用軌道區(qū)段時(shí),CTC 大屏上對(duì)應(yīng)的區(qū)段為紅光帶顯示。圖11 為該次列車(chē)在華山北站上行咽喉處出站時(shí)的運(yùn)行狀態(tài)。三維場(chǎng)景中列車(chē)也位于同一個(gè)區(qū)段內(nèi),列車(chē)的位置和速度與DMI 顯示一致,體現(xiàn)了該三維站場(chǎng)與列控仿真系統(tǒng)保持通信的實(shí)時(shí)性。
圖10 華山北站列車(chē)下行正向側(cè)線接車(chē)的聯(lián)合調(diào)試
本文設(shè)計(jì)的三維站場(chǎng)模擬平臺(tái)軟件和CTCS-3級(jí)列控仿真系統(tǒng)配合使用,通過(guò)設(shè)計(jì)的線路編輯器搭建真實(shí)站場(chǎng)的軌道線路,實(shí)現(xiàn)真實(shí)線路的場(chǎng)站設(shè)備控制、聯(lián)鎖控制、行車(chē)控制,以及場(chǎng)景多視角漫游等功能。以三維VR 的技術(shù)展現(xiàn)了列控仿真系統(tǒng)的工作方式,以一種新穎的方式模擬了車(chē)地通信中各個(gè)崗位的工作場(chǎng)景。在后續(xù)平臺(tái)開(kāi)發(fā)中,結(jié)合列控仿真系統(tǒng)和車(chē)載系統(tǒng),還可逐步實(shí)現(xiàn)更復(fù)雜的軌道交通系統(tǒng)的仿真。
圖11 華山北站上行咽喉處G103 次列車(chē)運(yùn)行的聯(lián)合調(diào)試