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