張 金
(1.北京全路通信信號(hào)研究設(shè)計(jì)院集團(tuán)有限公司,北京 100070;2.北京市高速鐵路運(yùn)行控制系統(tǒng)工程技術(shù)研究中心,北京 100070)
為滿足控車要求,列控中心與車站計(jì)算機(jī)聯(lián)鎖、臨時(shí)限速服務(wù)器、ZPW-2000A軌道電路、軌旁電子單元(LEU)、調(diào)度集中系統(tǒng)站機(jī)、集中監(jiān)測(cè)系統(tǒng)等多個(gè)設(shè)備通信,確保系統(tǒng)間安全通信和數(shù)據(jù)交換通信并獲取信息。其中,集中監(jiān)測(cè)系統(tǒng)是保證行車安全、監(jiān)測(cè)信號(hào)設(shè)備狀態(tài)、發(fā)現(xiàn)信號(hào)設(shè)備隱患、輔助故障處理、指導(dǎo)現(xiàn)場(chǎng)維修等的重要設(shè)備。
現(xiàn)場(chǎng)工作人員依據(jù)《列控中心與監(jiān)測(cè)維護(hù)機(jī)接口數(shù)據(jù)格式細(xì)化V0.0.1》與《關(guān)于印發(fā)《高鐵列控中心接口暫行技術(shù)規(guī)范》的通知》(鐵總運(yùn)[2015]75號(hào))協(xié)議,將列控中心每400 ms發(fā)送給監(jiān)測(cè)維護(hù)機(jī)8 192 Byte數(shù)據(jù),即列控維護(hù)數(shù)據(jù)(簡(jiǎn)稱8K區(qū)數(shù)據(jù))進(jìn)行人工解析, 從而分析信號(hào)設(shè)備故障原因。
隨著軌道交通的不斷發(fā)展,企業(yè)的產(chǎn)品和業(yè)務(wù)不斷拓展,人工對(duì)列控維護(hù)數(shù)據(jù)進(jìn)行解析并排查故障已不能滿足現(xiàn)場(chǎng)需求?;谏鲜鲆蛩?,為緩解人工工作量和生產(chǎn)壓力等問題,亟需研制一套能夠幫助售后人員快速定位設(shè)備問題區(qū),解析設(shè)備故障的有效工具。列控維護(hù)數(shù)據(jù)解析工具是對(duì)現(xiàn)場(chǎng)采集的列控維護(hù)數(shù)據(jù)進(jìn)行解析,解析數(shù)據(jù)與協(xié)議內(nèi)容進(jìn)行自動(dòng)匹配并顯示在人機(jī)界面供現(xiàn)場(chǎng)人員快速定位設(shè)備問題區(qū),故數(shù)據(jù)解析過程如圖 1所示。
圖1 數(shù)據(jù)解析過程Fig.1 Process of data parsing
列控維護(hù)數(shù)據(jù)解析工具為使現(xiàn)場(chǎng)人員對(duì)采集數(shù)據(jù)進(jìn)行快速解析,提供數(shù)據(jù)導(dǎo)入與解析兩大功能。
1) 導(dǎo)入功能
分別提供單系和雙系的8 K數(shù)據(jù)文件導(dǎo)入功能和第一分冊(cè)/第七分冊(cè)/TCC接口表等文件的導(dǎo)入讀取功能。
2) 解析功能需求
單系數(shù)據(jù)解析功能:加載單系數(shù)據(jù)文件,需要匹配Excel表時(shí)加載對(duì)應(yīng)的Excel表。加載完畢后界面顯示對(duì)應(yīng)的協(xié)議數(shù)據(jù)包名稱,用戶勾選數(shù)據(jù)包,工具解析該數(shù)據(jù)包數(shù)據(jù),同時(shí)顯示在數(shù)據(jù)解析界面。提供標(biāo)記變化數(shù)據(jù)包功能,供用戶快速定位發(fā)生變化的數(shù)據(jù)位置;
雙系數(shù)據(jù)解析功能:加載雙系數(shù)據(jù)文件,需要匹配Excel表時(shí)加載對(duì)應(yīng)的Excel表。加載完畢后對(duì)比兩系數(shù)據(jù),找出不同步時(shí)間點(diǎn),不一致時(shí)間點(diǎn),在界面顯示,供用戶定位兩系不同步時(shí)間點(diǎn)。
列控維護(hù)數(shù)據(jù)解析工具的功能流程如圖 2所示。
圖2 列控維護(hù)數(shù)據(jù)解析工具功能流程示意Fig.2 Flowchart of train control maintenance parsing tool
為了具有較高的可靠性、可用性以及可維護(hù)性,本工具在軟件結(jié)構(gòu)設(shè)計(jì)中考慮后續(xù)功能的擴(kuò)展性,采用將結(jié)構(gòu)化與面向?qū)ο笙嘟Y(jié)合的方法進(jìn)行設(shè)計(jì)。
考慮到列控中心與監(jiān)測(cè)維護(hù)機(jī)接口數(shù)據(jù)格式在后續(xù)有擴(kuò)展變化的可能性,故將協(xié)議按照一定規(guī)則編寫成配置文件,可解析多種不同協(xié)議,不修改或者盡量少修改代碼,僅修改協(xié)議配置文件,即可適配新的協(xié)議解析需求。這種結(jié)構(gòu)設(shè)計(jì)既保證了程序設(shè)計(jì)的高交互性與高重用性,也使工具的適應(yīng)性得到很大提升。
本工具的系統(tǒng)架構(gòu)如圖3所示,主要采用Python做為編程語言,可以輕松駕馭Windows,Linux,Mac等主流操作系統(tǒng),可移植性極強(qiáng)。
圖3 工具系統(tǒng)架構(gòu)Fig.3 Software architecture diagram
列控維護(hù)數(shù)據(jù)解析工具可實(shí)現(xiàn)對(duì)單、雙系數(shù)據(jù)解析,并自動(dòng)匹配協(xié)議內(nèi)容,對(duì)變化數(shù)據(jù)包進(jìn)行自動(dòng)標(biāo)識(shí)。本文以北辛店線路所的8 K區(qū)數(shù)據(jù)作為輸入數(shù)據(jù)為例,分別介紹協(xié)議配置以及單、雙系數(shù)據(jù)解析應(yīng)用。
8K協(xié)議主要參考《列控中心與監(jiān)測(cè)維護(hù)機(jī)接口數(shù)據(jù)格式細(xì)化》和《關(guān)于印發(fā)《高鐵列控中心接口暫行技術(shù)規(guī)范》的通知》(鐵總運(yùn)[2015]75號(hào)),協(xié)議大致分為基本信息、邏輯檢查信息、通道狀態(tài)、與聯(lián)鎖接口信息、與TSRS接口信息、與TCC接口信息、與CTC接口信息這7類。為將這7大類協(xié)議配置至配置文件中,并方便后續(xù)的擴(kuò)展變化,主要記錄了協(xié)議的字節(jié)偏移量、循環(huán)名稱、字節(jié)個(gè)數(shù)、子節(jié)點(diǎn)個(gè)數(shù)、需要配置的Excel的名稱以及對(duì)應(yīng)列、替換的規(guī)則、所占位長(zhǎng)度、解析順序、狀態(tài)信息和狀態(tài)信息碼等。
以基本信息下的PIO驅(qū)動(dòng)和采集信息為例,PIO驅(qū)動(dòng)信息的首地址為3 600,一個(gè)機(jī)籠包含5塊板,一塊板共32個(gè)驅(qū)采點(diǎn),采集在驅(qū)動(dòng)之后,因而采集的首地址為驅(qū)動(dòng)首地址加上該站所有PIO板,即采集首地址=3 600+20×N。其中,N為該站配置PIO機(jī)籠個(gè)數(shù),每個(gè)機(jī)籠可插入5對(duì)PIO板,1 bit為驅(qū)動(dòng)/采集吸起,0 bit為驅(qū)動(dòng)/采集落下。PIO解析結(jié)果對(duì)應(yīng)的點(diǎn)位名稱為《TCC接口文件-第七分冊(cè)-集中監(jiān)測(cè)接口表-列控信息分冊(cè)-XX站》中的“PIO驅(qū)動(dòng)配置表”,具體的地址配置格式如表 1所示。
表 1 PIO驅(qū)動(dòng)和采集協(xié)議信息Tab.1 The protocol of PIO’s drive acquisition
因此,根據(jù)協(xié)議將PIO驅(qū)動(dòng)/采集的配置信息進(jìn)行編制。以“offset”代表該協(xié)議的首地址,“bytecount”和“namecount”分別表示該協(xié)議所占字節(jié)數(shù)和子節(jié)點(diǎn)個(gè)數(shù),N表示該站所配置的PIO機(jī)籠個(gè)數(shù),“matchname”表示協(xié)議對(duì)應(yīng)的標(biāo)題列,用“@”來動(dòng)態(tài)替換籠號(hào)、板號(hào)及接點(diǎn)號(hào),具體的PIO驅(qū)動(dòng)配置示例如下:
協(xié)議的格式分為兩大類,一類為二級(jí)協(xié)議,如基本信息→PIO驅(qū)動(dòng)信息;另一類為三級(jí)協(xié)議,如與CTC接口信息→接收CTC信息→數(shù)據(jù)包描述信息。對(duì)于第二種類型的協(xié)議,直接進(jìn)行下一級(jí)拓展即可。
列控維護(hù)數(shù)據(jù)解析工具的文件上傳功能集成了原有8KDAT文件解壓縮工具,可以加載列控維護(hù)數(shù)據(jù).dat文件,也可以直接加載解壓縮后的.txt文件,選擇需要解析的時(shí)間范圍,界面默認(rèn)數(shù)據(jù)包中的起止時(shí)間,也可限制數(shù)據(jù)查看的時(shí)間范圍。
單系數(shù)據(jù)解析提供協(xié)議結(jié)構(gòu)樹、變化協(xié)議樹、只顯示變化項(xiàng)、顯示全部數(shù)據(jù)、隱藏?cái)?shù)據(jù)列等功能,如圖 4所示。
圖4 單系解析界面Fig.4 The graphical interface of single-file parsing
雙系數(shù)據(jù)解析提供變化時(shí)間、雙系不同步時(shí)間、雙系數(shù)據(jù)同步選擇對(duì)比、雙系同步解析、自身上下數(shù)據(jù)包對(duì)比等功能,如圖 5所示。
圖5 雙系解析界面Fig.5 The graphical interface of double-file parsing
列控維護(hù)數(shù)據(jù)解析工具主要實(shí)現(xiàn)篩選變化數(shù)據(jù)包、協(xié)議以及對(duì)數(shù)據(jù)進(jìn)行協(xié)議對(duì)照解析,同時(shí)匹配工程手冊(cè)的第一分冊(cè)、第七分冊(cè)和TCC接口表進(jìn)行替換,解決了人工對(duì)解析協(xié)議的難題。目前,列控維護(hù)數(shù)據(jù)解析工具已投入使用,且隨著工具的功能不斷完善,現(xiàn)場(chǎng)人員故障分析效率顯著提高,現(xiàn)已成為售后人員在現(xiàn)場(chǎng)分析設(shè)備故障時(shí)不可或缺的一部分。