孫曉光
(通號(hào)城市軌道交通技術(shù)有限公司,北京 100070)
聯(lián)鎖是指道岔、信號(hào)、進(jìn)路遵循一定順序,在符合規(guī)定的技術(shù)條件后,才能動(dòng)作或建立相互關(guān)系的技術(shù)[1]。聯(lián)鎖表反映車(chē)站全部列車(chē)和調(diào)車(chē)進(jìn)路,以及進(jìn)路與進(jìn)路、進(jìn)路與道岔及信號(hào)機(jī)之間的聯(lián)鎖關(guān)系[2]。為了生成聯(lián)鎖表,需要從信號(hào)平面布置圖準(zhǔn)確獲取聯(lián)鎖數(shù)據(jù)[3]。為了提取聯(lián)鎖信息,目前聯(lián)鎖表自動(dòng)生成軟件主要基于兩種方式。
1)根據(jù)信號(hào)平面布置圖,采用人工編寫(xiě)并錄入聯(lián)鎖數(shù)據(jù)文件后,自動(dòng)生成聯(lián)鎖表。錄入數(shù)據(jù)工作量大,保證準(zhǔn)確難度高。
2)利用CAD技術(shù),通過(guò)模塊拼接方式描述信號(hào)平面布置圖,自動(dòng)導(dǎo)入信號(hào)平面布置圖生成聯(lián)鎖表[4]。將繁雜的人工編寫(xiě)聯(lián)鎖數(shù)據(jù)文件簡(jiǎn)化為對(duì)站場(chǎng)圖形的直觀(guān)錄入,減少人工填寫(xiě)數(shù)據(jù)的工作量,降低人為錯(cuò)誤的概率[5-6]。
本文結(jié)合工程設(shè)計(jì),提出一種基于信號(hào)平面布置圖自動(dòng)生成聯(lián)鎖表的軟件設(shè)計(jì)和實(shí)現(xiàn)方法,并且對(duì)基于信號(hào)平面布置圖生成其他設(shè)計(jì)圖紙具有較好擴(kuò)展性。
信號(hào)設(shè)計(jì)業(yè)務(wù)中信號(hào)平面布置圖幾乎是所有后續(xù)工作的基礎(chǔ),車(chē)站聯(lián)鎖系統(tǒng)設(shè)計(jì)、研制、施工都是以它為依據(jù)[7]。信號(hào)平面布置圖是根據(jù)站場(chǎng)線(xiàn)路繪制的,反映了站場(chǎng)線(xiàn)路的布置和接發(fā)車(chē)方向,可以確定信號(hào)樓的位置和集中聯(lián)鎖區(qū)的范圍,表明信號(hào)機(jī)、道岔名稱(chēng)編號(hào)和設(shè)置的位置,劃分了軌道區(qū)段。
實(shí)現(xiàn)直接從CAD格式的信號(hào)平面布置圖中獲取聯(lián)鎖數(shù)據(jù)要解決的問(wèn)題如下:
1)識(shí)別、區(qū)分平面布置圖信號(hào)機(jī)、道岔、軌道區(qū)段、警沖標(biāo)等;
2)綁定軌道線(xiàn)和軌道名稱(chēng)、對(duì)應(yīng)軌道線(xiàn)和軌道區(qū)段;
3)建立任意軌道區(qū)段的相鄰軌道區(qū)段關(guān)系;
4)確定進(jìn)路的起始軌道、終止軌道;
5)搜索進(jìn)路,記錄經(jīng)過(guò)的軌道區(qū)段;
6)搜索進(jìn)路經(jīng)過(guò)道岔的位置,確定與該道岔有關(guān)系的雙動(dòng)、防護(hù)、帶動(dòng)道岔的開(kāi)通位置;
7)搜索某條進(jìn)路的敵對(duì)信號(hào),區(qū)分無(wú)條件敵對(duì)、有條件敵對(duì)。
為了解決上述問(wèn)題,軟件設(shè)計(jì)一系列繪圖準(zhǔn)則。繪制信號(hào)平面布置圖時(shí)按照統(tǒng)一的準(zhǔn)則進(jìn)行繪制。
聯(lián)鎖表計(jì)算的信息包括:方向、進(jìn)路號(hào)碼、進(jìn)路、進(jìn)路方式、排列進(jìn)路按下按鈕、確定運(yùn)行方向道岔、信號(hào)機(jī)(名稱(chēng)、顯示、表示器)、道岔、敵對(duì)信號(hào)、軌道區(qū)段、迎面進(jìn)路(列車(chē)、調(diào)車(chē))、其他聯(lián)鎖等。
為了便于本軟件從信號(hào)平面布置圖獲取聯(lián)鎖表所需信息,信號(hào)平面布置圖各種圖塊需要進(jìn)行統(tǒng)一標(biāo)準(zhǔn)化處理。將信號(hào)機(jī)、道岔、絕緣節(jié)、信號(hào)樓等做成統(tǒng)一的圖塊。
信號(hào)機(jī)分列車(chē)信號(hào)機(jī)、調(diào)車(chē)信號(hào)機(jī)。列車(chē)信號(hào)機(jī)可分接車(chē)、發(fā)車(chē)。調(diào)車(chē)信號(hào)機(jī)可以分普通調(diào)車(chē)信號(hào)機(jī)、盡頭線(xiàn)調(diào)車(chē)信號(hào)機(jī)等。信號(hào)機(jī)根據(jù)屬性不同做成不同的圖塊,利用圖塊的屬性區(qū)分信號(hào)機(jī)的性質(zhì)和名稱(chēng),利用圖塊基點(diǎn)和旋轉(zhuǎn)方向獲取信號(hào)機(jī)的位置和方向。
利用道岔和軌道線(xiàn)相交位置,識(shí)別道岔的定位線(xiàn)和反位線(xiàn)。
絕緣節(jié)分為普通、渡線(xiàn)、盡頭線(xiàn)和超限絕緣節(jié)等。除渡線(xiàn)絕緣節(jié)、盡頭線(xiàn)絕緣節(jié)外,軌道區(qū)段由左右各一個(gè)絕緣節(jié)分割開(kāi),利用該特點(diǎn)進(jìn)行軌道區(qū)段切割及命名。絕緣節(jié)是兩個(gè)相鄰軌道區(qū)段的分界,利用絕緣節(jié)該特點(diǎn)找到相鄰軌道區(qū)段。
在繪制平面布置圖時(shí),利用圖塊面板上提供的統(tǒng)一圖塊完成平面布置圖的繪制,如圖1所示。
圖1 平面布置圖標(biāo)準(zhǔn)圖塊面板Fig.1 Panel of standard icons on a layout
根據(jù)聯(lián)鎖表編制需求,結(jié)合聯(lián)鎖表生成步驟及用戶(hù)習(xí)慣,軟件包括5個(gè)主要功能模塊,如圖2所示。
圖2 軟件功能模塊劃分Fig.2 Division of software function module
軟件可以從信號(hào)平面布置圖中識(shí)別并提取信息的前提是信號(hào)平面布置圖必須符合軟件要求的一系列標(biāo)準(zhǔn)規(guī)格。信號(hào)機(jī)、道岔、信號(hào)樓等標(biāo)識(shí)必須采用規(guī)定的圖塊,軌道線(xiàn)采用CAD自帶的多段線(xiàn)繪制。對(duì)于不符合規(guī)格的信號(hào)平面布置圖,軟件輸出校驗(yàn)失敗相關(guān)提示信息,用于支撐用戶(hù)修改信號(hào)平面布置圖。
軟件在平面布置圖中進(jìn)行進(jìn)路搜索,進(jìn)路搜索過(guò)程中需識(shí)別走行軌道區(qū)段。為保證單個(gè)軌道區(qū)段能和一條多段線(xiàn)對(duì)應(yīng),軟件需要對(duì)軌道線(xiàn)進(jìn)行切割。
軟件將平面布置圖中所有軌道線(xiàn)在絕緣節(jié)的位置打斷,將軌道線(xiàn)分割成軌道區(qū)段,兩個(gè)相鄰的絕緣節(jié)之間的軌道線(xiàn)成為一條單獨(dú)的多段線(xiàn),即軌道區(qū)段。
軟件根據(jù)信號(hào)機(jī)、道岔、絕緣節(jié)、信號(hào)樓、運(yùn)行方向等圖塊的基點(diǎn)、塊名、屬性名、左端軌道線(xiàn)、右端軌道線(xiàn)、道岔所在反位線(xiàn)和定位線(xiàn)等,依據(jù)《鐵路信號(hào)聯(lián)鎖圖表編制原則》(TB/T 1123-1992)[8]命名切割形成的軌道區(qū)段名稱(chēng)。
如圖3所示,根據(jù)聯(lián)鎖表進(jìn)路的特征,可分為列車(chē)進(jìn)路、通過(guò)進(jìn)路、調(diào)車(chē)進(jìn)路、延續(xù)進(jìn)路。進(jìn)路方向分為上行和下行,進(jìn)路由始端按鈕和終端按鈕確定,進(jìn)路按照始端信號(hào)機(jī)離信號(hào)樓距離遠(yuǎn)近順序輸出。
圖3 進(jìn)路特征Fig.3 Route characteristics
本文主要以列車(chē)進(jìn)路、調(diào)車(chē)進(jìn)路為例說(shuō)明軟件的實(shí)現(xiàn)邏輯。
4.4.1 始端按鈕和終端按鈕確定
根據(jù)進(jìn)路特征的不同,尋找進(jìn)路的始端按鈕和終端按鈕。
列車(chē)進(jìn)路分為接車(chē)進(jìn)路和發(fā)車(chē)進(jìn)路。接車(chē)進(jìn)路時(shí),始端按鈕為進(jìn)站信號(hào)機(jī),終端按鈕為反向出站信號(hào)機(jī)。發(fā)車(chē)進(jìn)路時(shí),始端按鈕為出站信號(hào)機(jī),終端為反向進(jìn)站信號(hào)機(jī)。
調(diào)車(chē)進(jìn)路的始端按鈕為任意調(diào)車(chē)信號(hào)機(jī)或者出站兼調(diào)車(chē)信號(hào)機(jī),終端按鈕可以是同向或者背向信號(hào)機(jī)。調(diào)車(chē)進(jìn)路終端按鈕可能含有多個(gè)。根據(jù)調(diào)車(chē)始端信號(hào)機(jī)的方向和所在軌道區(qū)段,確定進(jìn)路始端和搜索方向。尋找該軌道區(qū)段的所有后繼軌道區(qū)段,并查詢(xún)后繼區(qū)段是否存在調(diào)車(chē)信號(hào)機(jī),如果存在同向調(diào)車(chē)信號(hào)機(jī),則為終端按鈕,加入終端按鈕數(shù)組中;如果存在背向調(diào)車(chē)信號(hào)機(jī),并且該軌道區(qū)段為盡頭線(xiàn)或者為接近區(qū)段或者為無(wú)岔區(qū)段,則為終端按鈕,加入終端按鈕數(shù)組中;如果該軌道區(qū)段為股道,則對(duì)應(yīng)出站信號(hào)機(jī)為終端按鈕,加入到終端按鈕數(shù)組中;以上條件都不滿(mǎn)足時(shí),繼續(xù)往下搜索該軌道區(qū)段的所有后繼軌道區(qū)段,重復(fù)上述操作至在所有后繼區(qū)段上都找到終端按鈕。
4.4.2 進(jìn)路搜索
根據(jù)進(jìn)路的始端按鈕和終端按鈕確定進(jìn)路的起始軌道和終端軌道以及進(jìn)路搜索的方向,在切割區(qū)段后的平面布置圖中搜索所有可能的路徑。
在進(jìn)路搜索過(guò)程中,最主要的操作是從當(dāng)前軌道區(qū)段,找到相鄰的下一條軌道區(qū)段。為了區(qū)分正線(xiàn)通過(guò)進(jìn)路,尋找后繼區(qū)段分為兩種方式。
1)通過(guò)一條軌道區(qū)段,尋找其左方或右方直接后繼軌道區(qū)段(如正線(xiàn)通過(guò)時(shí))。如圖4所示,11DG的右方直接后繼軌道區(qū)段應(yīng)該為13-17DG。1-5DG的左方直接后繼軌道區(qū)段為D1G。每條軌道區(qū)段(除渡線(xiàn)、起始軌道線(xiàn)和終止軌道線(xiàn)外)均有左右兩個(gè)絕緣節(jié)。向右尋找軌道區(qū)段的直接后繼時(shí),通過(guò)數(shù)據(jù)庫(kù)查詢(xún),獲取右端絕緣節(jié)的右連接線(xiàn);如果不為空,則其為軌道區(qū)段右側(cè)直接后繼。同理,如果向左尋找軌道區(qū)段的直接后繼,通過(guò)數(shù)據(jù)庫(kù)查詢(xún),獲取左端絕緣節(jié)的左連接線(xiàn);如果不為空,則其為軌道區(qū)段的左側(cè)直接后繼。
圖4 信號(hào)平面布置圖上行咽喉部分Fig.4 Layout of signals in the up-direction throat section
2)通過(guò)一條軌道區(qū)段,尋找其左方或者右方所有后繼軌道區(qū)段(如尋找列車(chē)進(jìn)路和調(diào)車(chē)進(jìn)路時(shí))。如圖4所示,1-5DG的右方所有后繼軌道區(qū)段為:1-5DG1,7-15DG,5/21WG。1-5DG1的左方所有后繼軌道區(qū)段為:D1G。尋找所有后繼軌道區(qū)段算法主要流程如圖5所示。
圖5 尋找后繼軌道區(qū)段算法主要流程Fig.5 Flowchart of the algorithm for identifying subsequent track sections
3)通過(guò)始端軌道和終端軌道,搜索從始端軌道到終端軌道存在的進(jìn)路個(gè)數(shù)以及走過(guò)的軌道區(qū)段、信號(hào)機(jī)、道岔定反位。該模塊通過(guò)遞歸調(diào)用尋找后繼軌道區(qū)段過(guò)程來(lái)實(shí)現(xiàn)。
進(jìn)路搜索算法主要流程如圖6所示。
圖6 進(jìn)路搜索算法主要流程Fig.6 Flowchart of the algorithm for searching routes
4.4.3 調(diào)車(chē)進(jìn)路的敵對(duì)信號(hào)
在計(jì)算聯(lián)鎖表的過(guò)程中,調(diào)車(chē)進(jìn)路的敵對(duì)信號(hào)需考慮如下4種情況[9]:
1)始終端按鈕之間的敵對(duì)信號(hào)(進(jìn)路內(nèi)部的所有調(diào)車(chē)信號(hào)均為敵對(duì)信號(hào));
2)始端按鈕前方的敵對(duì)信號(hào)(敵對(duì)列車(chē)信號(hào));
3)終端按鈕后方的敵對(duì)信號(hào)(敵對(duì)列車(chē)信號(hào)和敵對(duì)調(diào)車(chē)信號(hào));
4)始終端按鈕之間道岔上的敵對(duì)信號(hào)(進(jìn)路上存在超限絕緣節(jié)并且設(shè)置了單置調(diào)車(chē),且該信號(hào)的方向朝向本進(jìn)路時(shí),以該單置調(diào)車(chē)為終端的進(jìn)路為敵對(duì)進(jìn)路,其始端信號(hào)為敵對(duì)信號(hào))。
以搜索終端按鈕后方敵對(duì)列車(chē)信號(hào)為例。根據(jù)調(diào)車(chē)終端信號(hào)機(jī)所在的軌道區(qū)段,獲取是否有與該進(jìn)路中調(diào)車(chē)始端信號(hào)機(jī)背向的列車(chē)信號(hào)機(jī)。如果有,則加入對(duì)向敵對(duì)列車(chē)信號(hào)機(jī)隊(duì)列;如果沒(méi)有,獲取該軌道區(qū)段的所有后繼軌道區(qū)段,對(duì)每一條后繼軌道區(qū)段分析,并判斷是否存在背向敵對(duì)列車(chē)信號(hào)機(jī)。如果有,加入敵對(duì)列車(chē)信號(hào)機(jī)隊(duì)列;如果沒(méi)有,分析當(dāng)前軌道區(qū)段的所有后繼軌道區(qū)段,直至找到背向列車(chē)信號(hào)機(jī)為止,并將其加入對(duì)向敵對(duì)列車(chē)信號(hào)機(jī)隊(duì)列中。其他敵對(duì)信號(hào)搜索算法流程類(lèi)似。
4.4.4 調(diào)車(chē)進(jìn)路敵對(duì)條件
搜索所有對(duì)向敵對(duì)調(diào)車(chē)信號(hào)機(jī),計(jì)算不在該調(diào)車(chē)進(jìn)路內(nèi)以該信號(hào)機(jī)為調(diào)車(chē)始端的調(diào)車(chē)進(jìn)路。如存在,則需要加上敵對(duì)條件。
軟件自動(dòng)生成Excel表格作為中間文件,以方便人工審核,人工刪除多余的進(jìn)路(如不需要的變更進(jìn)路),經(jīng)過(guò)修改、確認(rèn)、審核后軟件提供自動(dòng)轉(zhuǎn)換成DWG格式功能,生成標(biāo)準(zhǔn)規(guī)格聯(lián)鎖表。
利用計(jì)算機(jī)輔助軟件將設(shè)計(jì)者從繁雜的計(jì)算中解放出來(lái)是未來(lái)工程設(shè)計(jì)的趨勢(shì),本文設(shè)計(jì)的聯(lián)鎖表自動(dòng)生成軟件可以完成常規(guī)站場(chǎng)聯(lián)鎖表生成過(guò)程中95%以上的工作;后續(xù)可以進(jìn)一步完善對(duì)含有復(fù)式交分道岔、轉(zhuǎn)場(chǎng)進(jìn)路等站場(chǎng)的支持功能。