張友兵,劉 嶺,崔俊鋒,牛道恒
(北京全路通信信號(hào)研究設(shè)計(jì)院有限公司 通用技術(shù)研究院, 北京 100073)
人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)系統(tǒng)的應(yīng)用研究
張友兵,劉 嶺,崔俊鋒,牛道恒
(北京全路通信信號(hào)研究設(shè)計(jì)院有限公司 通用技術(shù)研究院, 北京 100073)
在CTCS-2級(jí)和CTCS-3級(jí)列車控制車載設(shè)備中,司機(jī)通過觀察和操作人機(jī)界面(DMI,Driver Machine Interface)單元監(jiān)控和調(diào)整列車運(yùn)行狀態(tài)。但是司機(jī)的錯(cuò)誤操作、人機(jī)界面設(shè)備故障等均可能導(dǎo)致列車控制車載設(shè)備故障,造成運(yùn)營(yíng)晚點(diǎn)。為了對(duì)司機(jī)操作和車載設(shè)備故障進(jìn)行復(fù)現(xiàn),需要開發(fā)一種可以復(fù)現(xiàn)人機(jī)界面運(yùn)營(yíng)過程的系統(tǒng)。本文介紹了列車控制車載設(shè)備人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)系統(tǒng)的系統(tǒng)框架、基本原理、人機(jī)界面日志記錄包含的信息,以及人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)系統(tǒng)4種典型應(yīng)用場(chǎng)景,包括復(fù)現(xiàn)人機(jī)界面故障、支持人機(jī)界面軟件調(diào)試、人機(jī)界面功能演示和自動(dòng)測(cè)試人機(jī)界面功能。
車載設(shè)備;人機(jī)界面;運(yùn)營(yíng)復(fù)現(xiàn)
在CTCS-2級(jí)和CTCS-3級(jí)列車控制車載設(shè)備中,車載主機(jī)向人機(jī)界面實(shí)時(shí)傳遞列車的位置、速度、等級(jí)、模式等信息,人機(jī)界面以圖形、文字等形式實(shí)時(shí)顯示列車的各種運(yùn)行狀態(tài)信息。此外,司機(jī)操作人機(jī)界面的按鍵時(shí),人機(jī)界面將把按鍵信息及時(shí)傳遞給車載主機(jī),達(dá)到調(diào)整列車運(yùn)行狀態(tài)的目的[1]。
在列車運(yùn)行過程中,如果司機(jī)錯(cuò)誤操作了人機(jī)界面,或者人機(jī)界面軟件缺陷、車載主機(jī)軟件缺陷等均會(huì)影響列車控制系統(tǒng)的正常運(yùn)行,降低鐵路運(yùn)輸效率。為了對(duì)司機(jī)操作和車載設(shè)備故障進(jìn)行復(fù)現(xiàn),需要開發(fā)一種可以利用人機(jī)界面日志記錄復(fù)現(xiàn)人機(jī)界面運(yùn)營(yíng)過程的系統(tǒng)。當(dāng)現(xiàn)場(chǎng)人機(jī)界面發(fā)生故障時(shí),可以下載該人機(jī)界面的日志記錄文件,并使用人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)系統(tǒng)復(fù)現(xiàn)該人機(jī)界面的運(yùn)營(yíng)過程,便于通過觀察快速發(fā)現(xiàn)問題和解決問題。
該系統(tǒng)以真實(shí)人機(jī)界面設(shè)備產(chǎn)生的日志記錄文件為腳本,以日志記錄文件中前后兩條日志記錄的系統(tǒng)時(shí)間間隔作為處理消息的時(shí)間間隔。提取日志記錄文件中車載設(shè)備發(fā)送給人機(jī)界面的消息并發(fā)送給人機(jī)界面,驅(qū)動(dòng)人機(jī)界面正常工作。提取日志記錄文件中人機(jī)界面發(fā)送給車載主機(jī)的消息,根據(jù)消息內(nèi)容、按鍵布局、按鍵菜單結(jié)構(gòu)和軟件邏輯將消息轉(zhuǎn)換成對(duì)應(yīng)的按鍵操作命令,重新發(fā)送給人機(jī)界面,人機(jī)界面接收到按鍵命令時(shí)自動(dòng)觸發(fā)按壓按鍵的操作,模擬司機(jī)操作人機(jī)界面按鍵的過程[2]。
人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)系統(tǒng)原理圖如圖1所示,該系統(tǒng)包括人機(jī)界面日志記錄文件、車載主機(jī)模擬工具和人機(jī)界面設(shè)備。人機(jī)界面日志記錄文件為人機(jī)界面設(shè)備運(yùn)行過程中的日志記錄數(shù)據(jù),包含人機(jī)界面設(shè)備與車載主機(jī)交互的所有消息。車載主機(jī)模擬工具在系統(tǒng)中模擬車載主機(jī)的功能,以人機(jī)界面日志記錄文件為腳本驅(qū)動(dòng)人機(jī)界面工作。人機(jī)界面設(shè)備為真實(shí)的人機(jī)界面設(shè)備或者具有人機(jī)界面軟件邏輯的PC機(jī)軟件。
圖1 人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)系統(tǒng)原理圖
2.1 人機(jī)界面日志記錄的構(gòu)成
人機(jī)界面設(shè)備在運(yùn)行過程中,將從車載主機(jī)收到的消息和發(fā)送給車載主機(jī)的消息均以固定的格式記錄在日志記錄文件中。每條日志記錄包含時(shí)間戳、系統(tǒng)時(shí)間、消息方向和消息內(nèi)容4個(gè)組成部分。時(shí)間戳以100 ms為單位,人機(jī)界面上電啟動(dòng)時(shí)的時(shí)間戳初始值為0,此后隨著時(shí)間向上累加。系統(tǒng)時(shí)間包括年、月、日、時(shí)、分、秒和毫秒,為消息產(chǎn)生時(shí)的人機(jī)界面設(shè)備的時(shí)間。消息方向記錄本條消息是由車載主機(jī)發(fā)送給人機(jī)界面,還是由人機(jī)界面發(fā)送給車載主機(jī)。消息內(nèi)容為本條消息的具體內(nèi)容。
2.2 對(duì)時(shí)間戳的信息挖掘
人機(jī)界面設(shè)備上電時(shí)初始化時(shí)間戳為0,此后時(shí)間戳以100 ms為單位向上累加,當(dāng)人機(jī)界面設(shè)備斷電時(shí),時(shí)間戳停止向上累加,每一條人機(jī)界面日志記錄攜帶的時(shí)間戳為產(chǎn)生該條日志記錄時(shí)刻的時(shí)間戳。對(duì)于同一次運(yùn)營(yíng),人機(jī)界面日志記錄的時(shí)間戳總是從小到大向上增長(zhǎng)的。前一次運(yùn)營(yíng)的最后一條日志記錄的時(shí)間戳到后一次運(yùn)營(yíng)的第一條日志記錄的時(shí)間戳?xí)霈F(xiàn)從大到小的跳變,根據(jù)時(shí)間戳的這個(gè)特征可以將包含多次運(yùn)營(yíng)的人機(jī)界面日志記錄文件分割開來。用一次運(yùn)營(yíng)的開始時(shí)間和結(jié)束時(shí)間標(biāo)記本次運(yùn)營(yíng)的時(shí)間范圍,便于操作人員選擇期望的運(yùn)營(yíng)數(shù)據(jù),進(jìn)行人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)。
2.3 對(duì)系統(tǒng)時(shí)間的信息挖掘
人機(jī)界面設(shè)備上電后與車載主機(jī)建立正常的通信連接后,車載主機(jī)向人機(jī)界面設(shè)備發(fā)送系統(tǒng)校時(shí)消息,人機(jī)界面設(shè)備據(jù)此設(shè)置本設(shè)備的系統(tǒng)時(shí)間。每一條日志記錄攜帶的系統(tǒng)時(shí)間即為產(chǎn)生該條日志記錄時(shí)刻的人機(jī)界面設(shè)備系統(tǒng)時(shí)間。復(fù)現(xiàn)人機(jī)界面運(yùn)營(yíng)過程時(shí),車載主機(jī)模擬工具按先后順序依次處理一次運(yùn)營(yíng)的每一條日志記錄。處理完前一條日志記錄時(shí),根據(jù)后一條日志記錄與前一條日志記錄的系統(tǒng)時(shí)間差,可以計(jì)算出處理后一條日志記錄需要推延多長(zhǎng)時(shí)間。當(dāng)時(shí)間延遲滿足前后兩條日志記錄的系統(tǒng)時(shí)間間隔時(shí),車載主機(jī)模擬工作才處理后一條日志記錄。通過這種方式保證車載主機(jī)模擬工具處理日志記錄的時(shí)機(jī)是完全符合車載主機(jī)與人機(jī)界面設(shè)備交互消息的時(shí)機(jī)。
日志記錄的系統(tǒng)時(shí)間也為選擇一次運(yùn)營(yíng)的復(fù)現(xiàn)起始時(shí)間提供了基礎(chǔ)。在復(fù)現(xiàn)故障場(chǎng)景時(shí),得知故障發(fā)生的時(shí)間,可以定位故障屬于哪一次運(yùn)營(yíng),設(shè)置復(fù)現(xiàn)起始時(shí)間為故障發(fā)生時(shí)間前面的一個(gè)時(shí)間點(diǎn),車載主機(jī)模擬工具則處理復(fù)現(xiàn)起始時(shí)間之后的日志記錄,提高復(fù)現(xiàn)故障場(chǎng)景的效率。
2.4 對(duì)消息方向的信息挖掘
人機(jī)界面設(shè)備從車載主機(jī)接收到ETCS和CTCS動(dòng)態(tài)消息或其他消息,產(chǎn)生的日志記錄攜帶的消息方向分別為“ETCSDyn”、“CTCSDyn”或“receive”。人機(jī)界面發(fā)送給車載主機(jī)的消息,產(chǎn)生的日志記錄攜帶的消息方向?yàn)椤皊end”。通過日志記錄攜帶的消息方向可以快速辨別出該消息是車載主機(jī)發(fā)送給人機(jī)界面設(shè)備或是人機(jī)界面設(shè)備發(fā)送給車載主機(jī)。
2.5 對(duì)消息內(nèi)容的信息挖掘
對(duì)于消息方向?yàn)槿藱C(jī)界面設(shè)備發(fā)送給車載主機(jī),則車載主機(jī)模擬工具需要根據(jù)消息內(nèi)容進(jìn)一步辨別該消息是人機(jī)界面設(shè)備自動(dòng)發(fā)送給車載主機(jī),還是由于司機(jī)操作人機(jī)界面設(shè)備按鍵觸發(fā)人機(jī)界面設(shè)備發(fā)送消息。如果辨別該消息為人機(jī)界面設(shè)備自動(dòng)發(fā)送給車載主機(jī),則忽略該條日志記錄。如果辨別該消息為司機(jī)操作人機(jī)界面設(shè)備按鍵觸發(fā)人機(jī)界面設(shè)備發(fā)送消息,則車載主機(jī)模擬工具需要根據(jù)消息內(nèi)容、按鍵布局、按鍵菜單結(jié)構(gòu)和軟件邏輯將消息轉(zhuǎn)換成對(duì)應(yīng)的按鍵操作命令,重新發(fā)送給人機(jī)界面,人機(jī)界面接收到按鍵命令時(shí)自動(dòng)觸發(fā)按壓按鍵的操作,模擬司機(jī)操作人機(jī)界面按鍵的過程。
3.1 復(fù)現(xiàn)故障場(chǎng)景
在高速列車上均裝備有人機(jī)界面設(shè)備,列車在運(yùn)行過程中發(fā)生故障時(shí),可以下載人機(jī)界面設(shè)備存儲(chǔ)的日志記錄文件。使用人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)系統(tǒng)復(fù)現(xiàn)日志記錄文件對(duì)應(yīng)時(shí)間段的人機(jī)界面設(shè)備運(yùn)行過程,觀察故障時(shí)間段的人機(jī)界面設(shè)備運(yùn)行狀態(tài),定位和分析故障可能發(fā)生的原因。
由于人機(jī)界面設(shè)備存儲(chǔ)的日志記錄文件包含多次運(yùn)營(yíng),為了快速?gòu)?fù)現(xiàn)故障時(shí)刻的人機(jī)界面運(yùn)行狀態(tài),提高復(fù)現(xiàn)的效率,車載主機(jī)模擬工具增加根據(jù)運(yùn)營(yíng)次數(shù)不同對(duì)日志記錄進(jìn)行分割、從指定時(shí)間點(diǎn)開始復(fù)現(xiàn)、加快或放慢復(fù)現(xiàn)速度等功能。
將人機(jī)界面設(shè)備上電開始產(chǎn)生日志記錄到人機(jī)界面設(shè)備下電停止產(chǎn)生日志記錄作為一次運(yùn)營(yíng)。車載主機(jī)模擬工具根據(jù)運(yùn)營(yíng)次數(shù)對(duì)日志記錄文件進(jìn)行分割,用開始時(shí)間和結(jié)束時(shí)間標(biāo)記每一次運(yùn)營(yíng)的時(shí)間范圍。復(fù)現(xiàn)故障時(shí),根據(jù)故障發(fā)生的時(shí)間點(diǎn)判斷故障屬于哪一次運(yùn)營(yíng),選擇包含故障時(shí)間點(diǎn)的該次運(yùn)營(yíng)進(jìn)行故障復(fù)現(xiàn)。根據(jù)故障發(fā)生時(shí)間點(diǎn)設(shè)置開始復(fù)現(xiàn)的起始時(shí)間,忽略起始時(shí)間之前的運(yùn)營(yíng)過程,可以提高復(fù)現(xiàn)效率。在復(fù)現(xiàn)過程中可以加快或減慢復(fù)現(xiàn)速度,對(duì)于不需要關(guān)注的過程,可以加快復(fù)現(xiàn)速度,對(duì)于需要關(guān)注的過程,可以放慢復(fù)現(xiàn)速度。
3.2 支持人機(jī)界面軟件調(diào)試
將需要測(cè)試的PC版人機(jī)界面軟件置于人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)系統(tǒng)中,使用車載主機(jī)模擬工具驅(qū)動(dòng)人機(jī)界面軟件工作,搭建測(cè)試環(huán)境簡(jiǎn)單方便。不但可以使用真實(shí)的人機(jī)界面運(yùn)行日志記錄作為腳本驅(qū)動(dòng)被測(cè)試人機(jī)界面軟件工作,測(cè)試人機(jī)界面軟件的正常功能。而且還可以人工設(shè)計(jì)特殊的人機(jī)界面運(yùn)行日志記錄,測(cè)試正常情況下無法走到的人機(jī)界面軟件邏輯,提高了人機(jī)界面軟件測(cè)試的覆蓋率。
3.3 人機(jī)界面功能演示
真實(shí)的車載設(shè)備重量大、體積大,會(huì)給展示帶來不便,使用人機(jī)界面運(yùn)行過程復(fù)現(xiàn)系統(tǒng)驅(qū)動(dòng)PC版人機(jī)界面工作,以展示人機(jī)界面設(shè)備的工作過程。
3.4 自動(dòng)測(cè)試人機(jī)界面功能
按照人機(jī)界面日志記錄格式設(shè)計(jì)車載主機(jī)與人機(jī)界面設(shè)備交互消息的消息序列,構(gòu)成驅(qū)動(dòng)人機(jī)界面設(shè)備工作的測(cè)試腳本。對(duì)人機(jī)界面設(shè)備執(zhí)行自動(dòng)測(cè)試時(shí),車載主機(jī)模擬工具加載測(cè)試腳本,將方向?yàn)檐囕d主機(jī)至人機(jī)界面設(shè)備的消息發(fā)送給人機(jī)界面設(shè)備,驅(qū)動(dòng)人機(jī)界面設(shè)備正常工作。遇到方向?yàn)槿藱C(jī)界面設(shè)備至車載主機(jī)的消息,忽略此類消息。車載主機(jī)模擬工具與人機(jī)界面設(shè)備交互的所有消息按照日志記錄格式全部記錄下來,得到執(zhí)行結(jié)果腳本。
使用工具分析測(cè)試腳本中期望的人機(jī)界面設(shè)備至車載主機(jī)的消息與執(zhí)行結(jié)果腳本中實(shí)際收到的人機(jī)界面設(shè)備至車載主機(jī)的消息是否一致,以判斷人機(jī)界面設(shè)備軟件邏輯是否符合設(shè)計(jì),達(dá)到對(duì)人機(jī)界面功能的自動(dòng)測(cè)試。使用人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)系統(tǒng)自動(dòng)測(cè)試人機(jī)界面功能的原理圖如圖2所示。
CTCS3-300T列車控制車載設(shè)備在我國(guó)高速鐵路中已經(jīng)得到廣泛應(yīng)用。當(dāng)列車控制系統(tǒng)在運(yùn)營(yíng)過程中發(fā)生故障時(shí),現(xiàn)場(chǎng)值班人員會(huì)盡快下載列車控制車載設(shè)備各種歷史數(shù)據(jù)(包括人機(jī)界面設(shè)備記錄的數(shù)據(jù))并將數(shù)據(jù)發(fā)送給相關(guān)人員。相關(guān)人員使用人機(jī)界面運(yùn)營(yíng)過程復(fù)現(xiàn)系統(tǒng)再現(xiàn)發(fā)生故障時(shí)段的設(shè)備運(yùn)營(yíng)過程,通過觀察分析,可以快速定位故障發(fā)生的原因,提出解決問題的方法,達(dá)到提高列車運(yùn)輸效率的目的。
圖2 自動(dòng)測(cè)試人機(jī)界面原理圖
[1] 中國(guó)鐵路總公司. CTCS-2/3級(jí)列控車載設(shè)備人機(jī)界面(DMI)顯示暫行規(guī)范[S].中國(guó)鐵路總公司,2014.
[2] 北京全路通信信號(hào)研究設(shè)計(jì)院有限公司. CTCS3-300T列控車載設(shè)備DMI司機(jī)操作手冊(cè)[S]. 北京全路通信信號(hào)研究設(shè)計(jì)院有限公司,2013.
責(zé)任編輯 方 圓
DMI Operation Reappearing System
ZHANG Youbing, LIU Ling, CUI Junfeng, NIU Daoheng
( Beijing National Railway Research & Design Institute of Signal & Communication Ltd., Research Institute of General Technology, Beijing 100073, China )
In CTCS-2 and CTCS-3 Train Control Systems, The driver monitors and adjusts the train running status through observing and operating the DMI equipment. But the wrong operation and DMI equipment failure could cause the Train Control System fault, and the train delay. In order to reappear driver’s operations and on-board equipment faults, it was needed to provide a system of reappearing DMI operation process. This paper introduced the system frame and basic principles of the DMI Operation Reappearing System, described the useful information which was included in the DMI logs, introduced four typical applications about reappearing the DMI defaults, debugging the DMI software, displaying the DMI functions and testing the DMI functions automatically.
on-board equipment; Driver Machine Interface(DMI); operation reappearing
U284.48∶TP39
A
1005-8451(2015)09-0047-04
2015-01-14
鐵路總公司重大課題(2003B001-A-1);鐵路總公司重點(diǎn)課題(2014X003-H)。
張友兵,工程師;劉 嶺,高級(jí)工程師。