劉承勃 張升 郭宵彬 苗新芳
(中車青島四方機(jī)車車輛股份有限公司,山東青島 266111)
《國(guó)務(wù)院辦公廳關(guān)于保障城市軌道交通安全運(yùn)行的意見》于2018年3月正式發(fā)布,對(duì)于新時(shí)期城市軌道交通的重要性及其安全保障技術(shù)的應(yīng)用提出明確要求。當(dāng)前城市軌道交通系統(tǒng)在運(yùn)行過程中常運(yùn)用軌道電路、應(yīng)答器、多傳感器信息融合等設(shè)備及技術(shù)進(jìn)行列車定位,但在信號(hào)系統(tǒng)出現(xiàn)故障時(shí)僅依靠人工記點(diǎn)無法滿足精確定位要求。在此背景下,通過引入無線射頻識(shí)別技術(shù)(RFID),利用電子標(biāo)簽與閱讀器間的識(shí)別、感應(yīng)、發(fā)射、解碼與傳遞等機(jī)制實(shí)現(xiàn)自動(dòng)報(bào)點(diǎn)功能,能夠有效提高定位精度、節(jié)約維護(hù)成本、屏蔽噪聲干擾,對(duì)于列車自動(dòng)定位功能的實(shí)現(xiàn)與軌道交通安全運(yùn)行具有重要應(yīng)用價(jià)值。
一方面,出于相關(guān)部門對(duì)于列車運(yùn)行控制系統(tǒng)的信息安全保護(hù)需求,在系統(tǒng)設(shè)計(jì)環(huán)節(jié)需提供用戶權(quán)限管理功能,分別針對(duì)中央級(jí)、車站級(jí)2個(gè)級(jí)別進(jìn)行用戶權(quán)限的分配,包括在中央級(jí)設(shè)置整體軌道交通系統(tǒng)信息調(diào)度與查看、用戶權(quán)限管理與身份認(rèn)證、系統(tǒng)運(yùn)維等功能,在車站級(jí)設(shè)置列車發(fā)車、到達(dá)以及乘客導(dǎo)向等信息的管理功能[1]。另一方面,根據(jù)列車記點(diǎn)系統(tǒng)的實(shí)際應(yīng)用情況,該系統(tǒng)需將列車運(yùn)行過程中經(jīng)過各車站采集到的站點(diǎn)數(shù)據(jù)匯總,并上傳至上級(jí)控制系統(tǒng),因此需分別完成中央級(jí)、車站級(jí)系統(tǒng)設(shè)計(jì)[2]。中央級(jí)管理系統(tǒng)需提供列車實(shí)時(shí)位置查詢、電子標(biāo)簽與讀寫器等基礎(chǔ)設(shè)施運(yùn)維管理、數(shù)據(jù)存儲(chǔ)與查詢、人工補(bǔ)錄信息、系統(tǒng)安全管理以及行車日志管理等功能,車站級(jí)管理系統(tǒng)則需提供用戶登錄管理、列車實(shí)時(shí)記點(diǎn)、歷史記點(diǎn)數(shù)據(jù)統(tǒng)計(jì)與查詢等功能。
在軟件設(shè)計(jì)上,服務(wù)器端、客戶端分別使用Windows Server 2012和Linux操作系統(tǒng),在服務(wù)器端配置基于SQL Server 2008的數(shù)據(jù)庫(kù)管理系統(tǒng)以及本文設(shè)計(jì)的列車自動(dòng)記點(diǎn)系統(tǒng)。在硬件設(shè)計(jì)上,服務(wù)器端工作站配置雙路十六核CPU,512GB DDR4內(nèi)存,部分插槽支持64GB容量,主板支持三路顯卡;客戶機(jī)端配置六核CPU,主板部分?jǐn)U展槽為3×PCI-E,16GB DDR4內(nèi)存;其他網(wǎng)絡(luò)設(shè)備包含RFID閱讀器、電子標(biāo)簽以及計(jì)算機(jī)處理系統(tǒng)等。
基于安全性、可擴(kuò)展性、界面友好等原則進(jìn)行系統(tǒng)設(shè)計(jì),選用2.4G超高頻有源RFID電子標(biāo)簽,以車站各站臺(tái)為基準(zhǔn),分別在上行列車、下行列車兩側(cè)對(duì)應(yīng)的列車進(jìn)站??亢筌囶^、車尾所處區(qū)域安裝1臺(tái)閱讀器,其中沿上行列車方向布設(shè)閱讀器編號(hào)為R2-U和R1-U,沿下行列車方向布設(shè)閱讀器R2-D、R1-D,用于讀取站臺(tái)電子標(biāo)簽信息[3]。在各列車車身上分別標(biāo)有車體號(hào),在上、下行列車車頭位置安裝編號(hào)為T1-U、T1-D的RFID有源電子標(biāo)簽,車尾安裝T2-U、T2-D 2個(gè)RFID標(biāo)簽,各標(biāo)簽中分別存有列車的ID即車體號(hào)信息。當(dāng)列車進(jìn)出站時(shí)車頭、車尾分別靠近布設(shè)在站臺(tái)相應(yīng)位置的閱讀器,利用閱讀器讀取標(biāo)簽信息,并經(jīng)由RFID網(wǎng)絡(luò)設(shè)備獲取對(duì)應(yīng)的車體號(hào)[4]。
(1)網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)?;贘2EE開發(fā)標(biāo)準(zhǔn)與SSM框架進(jìn)行列車自動(dòng)記點(diǎn)系統(tǒng)網(wǎng)絡(luò)架構(gòu)設(shè)計(jì),將系統(tǒng)整體框架劃分為4個(gè)層級(jí):1)表示層。選用Spring MVC建構(gòu)整體框架,用于對(duì)系統(tǒng)內(nèi)各層級(jí)業(yè)務(wù)進(jìn)行管控,將用戶傳送請(qǐng)求調(diào)用后反饋至系統(tǒng)界面。2)業(yè)務(wù)邏輯層?;赟pring技術(shù)提供IoC容器,支持對(duì)目標(biāo)信息進(jìn)行查找與定位,并完成對(duì)象創(chuàng)建,對(duì)業(yè)務(wù)模型及邏輯進(jìn)行管理,保證數(shù)據(jù)完整性。3)數(shù)據(jù)持久層。選用Mybatis框架建構(gòu),內(nèi)部提供數(shù)據(jù)資源、檢索工具、查詢語(yǔ)言以及其他服務(wù)功能,可與MySQL數(shù)據(jù)庫(kù)建立連接,并反饋處理結(jié)果。4)實(shí)體層。用于控制和管理實(shí)體設(shè)備。在系統(tǒng)整體部署上,表示層作為列車自動(dòng)記點(diǎn)系統(tǒng)門戶,用于展示系統(tǒng)界面;業(yè)務(wù)邏輯層由應(yīng)用、管理2個(gè)模塊組成,應(yīng)用模塊提供列車運(yùn)行管理、實(shí)時(shí)記點(diǎn)與歷史記點(diǎn)數(shù)據(jù)管理、讀寫器與電子標(biāo)簽管理、網(wǎng)絡(luò)管理等功能;應(yīng)用支持層包含工作流引擎、中間件以及安全組件;數(shù)據(jù)層包含記點(diǎn)、設(shè)備以及管理3類數(shù)據(jù)庫(kù)。
(2)功能模塊設(shè)計(jì)。依據(jù)系統(tǒng)層級(jí)區(qū)別進(jìn)行功能模塊設(shè)計(jì),中央級(jí)管理系統(tǒng)作為上級(jí)系統(tǒng)需同時(shí)支持車站級(jí)管理系統(tǒng)提供的具體功能,因此該系統(tǒng)的功能模塊更加完善,主要分為4部分:1)用戶權(quán)限管理與身份認(rèn)證模塊,面向中央級(jí)、車站級(jí)用戶提供不同管理權(quán)限,用戶經(jīng)由身份認(rèn)證后支持對(duì)用戶信息進(jìn)行新建、修改、刪除及更新等功能。2)列車信息調(diào)度與查看模塊,用于對(duì)列車實(shí)時(shí)位置、運(yùn)行狀態(tài)、自動(dòng)記點(diǎn)以及歷史記點(diǎn)信息進(jìn)行管理。3)硬件設(shè)備管理模塊,主要用于實(shí)現(xiàn)對(duì)電子標(biāo)簽狀態(tài)、讀寫器狀態(tài)以及RFID網(wǎng)絡(luò)運(yùn)行狀態(tài)的自動(dòng)監(jiān)測(cè),并將相關(guān)狀態(tài)信息反饋至界面進(jìn)行顯示。4)數(shù)據(jù)庫(kù)管理模塊,將基于RFID技術(shù)采集的列車信息收集、存儲(chǔ)與備份,支持?jǐn)?shù)據(jù)查詢與恢復(fù)功能,并提供外部接口等。
(3)數(shù)據(jù)庫(kù)設(shè)計(jì)。基于安全性、穩(wěn)定性、容錯(cuò)性以及通用性原則進(jìn)行系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì),標(biāo)識(shí)為TAPS,并根據(jù)SQL Server 2008進(jìn)行不同字段類型的識(shí)別與判斷。依據(jù)系統(tǒng)功能需求將數(shù)據(jù)類型大體劃分為用戶、列車、車站、標(biāo)簽以及讀寫器5類,細(xì)化不同數(shù)據(jù)的表結(jié)構(gòu)設(shè)計(jì),明確字段名稱、字段名、字段類型、能否為空等信息。以列車信息表為例,該表包含5個(gè)字段,其中車體號(hào)的字段名稱為Train ID,字段類型為Int,不能為空;所在線路,Subwayline ID,nvarchar(20),否;車站標(biāo)識(shí),Station ID,Int,否;列車位置,Localtion,nvarchar(20),否;列車狀態(tài),TrainState,nvarchar(20),否。
基于上述技術(shù)方案設(shè)計(jì)思路,在系統(tǒng)設(shè)計(jì)環(huán)節(jié)需建構(gòu)列車位置檢測(cè)與識(shí)別邏輯,用于判斷列車進(jìn)出站、停站、折返、故障晚點(diǎn)、越站等運(yùn)行狀態(tài),并支持識(shí)別列車的行車方向、運(yùn)行軌跡及實(shí)時(shí)位置等信息,擬圍繞列車位置檢測(cè)、行車方向判斷2個(gè)層面進(jìn)行自動(dòng)記點(diǎn)算法的建構(gòu),輔助實(shí)現(xiàn)列車定位功能。
將閱讀器檢測(cè)、識(shí)別電子標(biāo)簽的行為設(shè)為RB,4個(gè)閱讀器分別標(biāo)記為RB-U-1、RB-U-2、RB-D-1和RB-D-2,以行車方向作為分類依據(jù)進(jìn)行列車常規(guī)運(yùn)行流程的建構(gòu)。沿列車上行方向進(jìn)行5種狀態(tài)設(shè)計(jì):(1)列車未進(jìn)站,4個(gè)讀卡器均處于初始狀態(tài),即RB=0。(2)列車剛進(jìn)站,RB-U-1、RB-D-2讀卡器分別讀取車頭標(biāo)簽,確認(rèn)列車行進(jìn)方向,即RB=1。(3)列車進(jìn)站完成,RB-U-2、RB-D-1讀取車頭標(biāo)簽,RB-U-1、RB-D-2讀取車尾標(biāo)簽,求取經(jīng)驗(yàn)值記為列車進(jìn)站停靠時(shí)間,即RB=2。(4)列車出站,RU-U-2、RB-D-1讀取車尾標(biāo)簽,讀卡器讀取超時(shí),取經(jīng)驗(yàn)值記為出站用時(shí),即RB=3。(5)列車區(qū)段出清,讀卡器讀取再次超時(shí),即RB=4。沿列車下行方向重復(fù)上述流程,讀卡器讀取車頭、車尾標(biāo)簽與上行方向相反。
針對(duì)讀卡器閱讀行為分別設(shè)置閱讀狀態(tài)RB,用于求取不同列車狀態(tài)過渡階段對(duì)應(yīng)的經(jīng)驗(yàn)值,完成時(shí)間參數(shù)的統(tǒng)計(jì)分析,并且RB需根據(jù)RS數(shù)值變化進(jìn)行動(dòng)態(tài)調(diào)整。設(shè)RB每間隔1s讀取到RS的次數(shù)為n,則當(dāng)RS=0時(shí),n=0;當(dāng)RS=1時(shí),n取值區(qū)間為[1,2];當(dāng)RS=2時(shí),n取值區(qū)間為[3,30];當(dāng)RS=3時(shí),n不小于60。利用布爾值進(jìn)行列車狀態(tài)屬性TS的描述,列車狀態(tài)包含進(jìn)站、???、出站、區(qū)段出清、故障等類型,其中當(dāng)列車處于初始化狀態(tài)時(shí),對(duì)應(yīng)的TS屬性為假;當(dāng)列車處于進(jìn)站狀態(tài)時(shí),對(duì)應(yīng)的進(jìn)站TS屬性為真;當(dāng)列車發(fā)生故障后,對(duì)應(yīng)的故障TS屬性為真。當(dāng)有新列車進(jìn)站時(shí),RB、RS與TS均需經(jīng)由初始化完成更新。
以下行方向?yàn)槔M(jìn)行列車進(jìn)出站邏輯的設(shè)計(jì),列車進(jìn)站流程為:開始→A點(diǎn)閱讀器讀取車頭標(biāo)簽→記錄讀取時(shí)刻,開始計(jì)時(shí)→30s內(nèi)B點(diǎn)閱讀器讀取車頭標(biāo)簽→記錄讀取時(shí)刻→A點(diǎn)站臺(tái)閱讀器連續(xù)n次讀取車頭標(biāo)簽信息,當(dāng)判斷該閱讀器讀取超時(shí),由B點(diǎn)站臺(tái)閱讀器連續(xù)n次讀取車尾標(biāo)簽信息,倘若該閱讀器仍讀取超時(shí),則判斷為列車越站→成功讀取車頭/車尾標(biāo)簽,列車進(jìn)站。列車出站流程為:開始→A點(diǎn)閱讀器讀取車尾標(biāo)簽,或B點(diǎn)閱讀器讀取車頭標(biāo)簽→記錄讀取時(shí)刻,開始計(jì)時(shí)→A點(diǎn)閱讀器連續(xù)n次均未成功讀取車尾標(biāo)簽,或B點(diǎn)閱讀器連續(xù)n次未成功讀取車頭標(biāo)簽,倘若閱讀器成功讀取標(biāo)簽,則判斷為列車延時(shí)超過,并由列車站臺(tái)發(fā)出故障告警;反之則記錄出站時(shí)刻,并開始計(jì)時(shí)→30s內(nèi)B點(diǎn)站臺(tái)閱讀器讀取車尾標(biāo)簽→列車區(qū)段出清。
基于模塊化設(shè)計(jì)思路實(shí)現(xiàn)系統(tǒng)邏輯判斷與更新功能,輔助完成列車記點(diǎn)、記時(shí)以及列車運(yùn)行狀態(tài)的實(shí)時(shí)更新。當(dāng)有新的列車進(jìn)站時(shí),閱讀器通過讀取車頭或車尾標(biāo)簽獲得列車ID,圍繞以下4種列車狀態(tài)進(jìn)行邏輯判斷:(1)列車到站即RB=1時(shí),閱讀器檢測(cè)車頭或車尾標(biāo)簽,記錄此時(shí)刻t1,以閱讀器實(shí)際讀取次數(shù)n時(shí)刻的平均值記為到站時(shí)間(n≦2);當(dāng)RB>1且RS>1時(shí),判斷列車出現(xiàn)故障。(2)列車進(jìn)站即RB=2時(shí),閱讀器檢測(cè)標(biāo)簽并記錄臨時(shí)時(shí)間點(diǎn)t2’,當(dāng)RB=2狀態(tài)持續(xù)一段時(shí)間后,即可判斷列車進(jìn)站完畢,此時(shí)記錄列車進(jìn)站時(shí)刻t2,取閱讀器實(shí)際讀取次數(shù)n的時(shí)間均值記為進(jìn)站時(shí)間;當(dāng)RB>2且RS>2時(shí),判斷列車出現(xiàn)故障。(3)列車出站即RB=0時(shí),TS屬性為真,取RB變化為0時(shí)實(shí)際讀取次數(shù)前n-4次的時(shí)間均值記為列車出站時(shí)刻t3。(4)列車區(qū)段出清即RB=4時(shí),以閱讀器實(shí)際讀取次數(shù)n時(shí)刻的平均值記為出清時(shí)間(n≦2);當(dāng)RB>2且RS>2時(shí),判斷列車出現(xiàn)故障。
基于系統(tǒng)建構(gòu)的軟硬件環(huán)境,采用黑盒測(cè)試方法進(jìn)行系統(tǒng)核心業(yè)務(wù)模塊的功能測(cè)試,測(cè)試對(duì)象包含列車運(yùn)行功能、車站布設(shè)工作站的實(shí)時(shí)記點(diǎn)功能、歷史記點(diǎn)數(shù)據(jù)功能以及中央級(jí)系統(tǒng)等功能的實(shí)現(xiàn)情況。以布設(shè)在各車站的工作站記點(diǎn)情況為例,選取ZSGY站點(diǎn)作為驗(yàn)收站,主要驗(yàn)收內(nèi)容為該站工作站界面,測(cè)試內(nèi)容包含以下2方面:在本站層面,輸入列車狀態(tài)判斷為列車進(jìn)站或出站,期望輸出該站界面顯示列車的車體號(hào)與進(jìn)出站時(shí)間,結(jié)果為正確即通過測(cè)試;在鄰站層面,以列車前、后站點(diǎn)的出站、進(jìn)站時(shí)間顯示作為測(cè)試項(xiàng),輸入列車狀態(tài)判斷為列車出站或進(jìn)站,期望輸出該站界面顯示列車車體號(hào)、前站出站或后站進(jìn)站時(shí)間,結(jié)果為正確即通過測(cè)試。在此基礎(chǔ)上,還需基于QALoad軟件進(jìn)行系統(tǒng)性能測(cè)試,分別判斷系統(tǒng)在運(yùn)行不同數(shù)量的并發(fā)用戶時(shí)應(yīng)用程序、數(shù)據(jù)庫(kù)的CPU占用率,判斷系統(tǒng)響應(yīng)時(shí)間是否處于理想狀態(tài),完成系統(tǒng)性能測(cè)試。
通過對(duì)本文設(shè)計(jì)的列車自動(dòng)記點(diǎn)系統(tǒng)分別進(jìn)行功能和性能測(cè)試結(jié)果顯示,該系統(tǒng)支持對(duì)列車運(yùn)行位置信息的實(shí)時(shí)檢測(cè)與動(dòng)態(tài)反饋,可提供實(shí)時(shí)記點(diǎn)與數(shù)據(jù)上傳服務(wù),管理員基于自身權(quán)限登錄系統(tǒng)后可實(shí)現(xiàn)對(duì)列車電子標(biāo)簽、讀寫器以及RFID網(wǎng)絡(luò)等狀態(tài)信息的實(shí)時(shí)檢測(cè)與管理。系統(tǒng)在最大并發(fā)用戶數(shù)運(yùn)行狀態(tài)下響應(yīng)時(shí)間控制在7.94s以內(nèi),應(yīng)用程序與數(shù)據(jù)庫(kù)的CPU占用率分別為9.07%和14.52%,滿足預(yù)期設(shè)計(jì)要求。
實(shí)際應(yīng)用結(jié)果表明,通過引入RFID技術(shù)建構(gòu)自動(dòng)記點(diǎn)算法可實(shí)現(xiàn)對(duì)列車運(yùn)行位置、行車方向、運(yùn)行狀態(tài)等信息的實(shí)時(shí)讀取、識(shí)別與反饋,供中央級(jí)、車站級(jí)管理員分別獲取車站以及各區(qū)段的列車運(yùn)行狀態(tài)信息,能夠在機(jī)電設(shè)備故障引發(fā)信號(hào)系統(tǒng)失效的緊急情境下輔助相關(guān)調(diào)度人員進(jìn)行列車狀態(tài)、位置等信息的實(shí)時(shí)判斷,有效避免列車碰撞事故的發(fā)生,對(duì)于保障列車安全穩(wěn)定運(yùn)行具有現(xiàn)實(shí)意義。