張健生 劉偉航



摘? 要:在目前的軌道交通自動售檢票系統(tǒng)運營中,對車票的管理是地鐵運營的痛點之一,二維碼車票的引入,能極大地改善對車票的管理,提升運營滿意度。文章重點研究了AFC系統(tǒng)中,二維碼車票在自動檢票機上的應(yīng)用,將自動檢票機對二維碼車票的處理分為二維碼車票數(shù)據(jù)識別、二維碼車票本地校驗、二維碼車票在線驗證三個環(huán)節(jié),對每個環(huán)節(jié)的流程展開說明,并對三個環(huán)節(jié)在流程處理上提出優(yōu)化意見。
關(guān)鍵詞:二維碼車票;自動檢票機;自動售檢票系統(tǒng)
中圖分類號:TP391;U293.2+2? ? ? 文獻標(biāo)識碼:A 文章編號:2096-4706(2020)20-0172-03
Application of Quick Response Code Ticket in Automatic Gate Machine
ZHANG Jiansheng,LIU Weihang
(Guangzhou GRG Intelligent Technology Solution Co.,Ltd.,Guangzhou? 510663,China)
Abstract:In the current AFC system operation,ticket management is one of the pain points of metro operation,the introduction of QR code tickets can greatly improve the management of tickets and improve operational satisfaction. This paper focuses on the AFC system,QR code ticket use in automatic ticket checking machine,the processing of the QR code ticket by the AGM is divided into QR Code ticket data recognition,QR Code ticket local verification,QR Code ticket online verification three parts,and the flow of each link is described,and puts forward some suggestions on the process of the three links.
Keywords:QR code ticket;automatic gate machine;AFC system
0? 引? 言
在軌道交通自動售檢票系統(tǒng)(AFC系統(tǒng))中,自動檢票機主要負責(zé)對乘客車票的有效性進行判斷,在車票符合規(guī)則的情況下,自動檢票機開啟扇門允許乘客通過,并在乘客顯示屏顯示車票相關(guān)信息。目前在AFC系統(tǒng)中常用的傳統(tǒng)車票類型有儲值卡、單程票。在使用過程中,單程票具有容易丟失、收機困難等缺點,儲值卡具有需要預(yù)儲值、易損壞等缺點。隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,在AFC系統(tǒng)中,引入二維碼車票作為車票媒介,對提升地鐵服務(wù)及提高乘客滿意度有重大意義。
為滿足軌道交通行業(yè)對二維碼車票的引入需求,研究支持二維碼車票的自動檢票機具有重要意義。一方面二維碼車票可以減輕現(xiàn)場運營人員夜間對車票的管理工作,另一方面在軌道交通中支持二維碼車票,乘客無須在車站內(nèi)買票,減少了乘客的排隊購票時間,可以有效提升乘客出行的體驗。為滿足軌道交通行業(yè)對于二維碼車票的支持,研究支持二維碼車票的自動檢票機有著重大的現(xiàn)實意義。
本文重點研究二維碼車票在自動檢票機上的應(yīng)用。自動檢票機對二維碼車票的處理主要分為二維碼識別、二維碼本地校驗、二維碼在線驗證三個環(huán)節(jié),每個環(huán)節(jié)的可靠性是二維碼車票正常使用的基本保障。
1? 自動檢票機軟件概述
自動檢票機軟件一般采用多層軟件設(shè)計,依次分為界面展示層、綜合控制層、聯(lián)網(wǎng)控制層、硬件驅(qū)動層。界面展示層主要負責(zé)顯示待機界面、乘客車票信息、操作員后維護操作等頁面的顯示;綜合控制層負責(zé)對閘機整機軟件業(yè)務(wù)邏輯的調(diào)度,包括閘機硬件模塊的調(diào)度、閘機整機業(yè)務(wù)功能的控制等功能;聯(lián)網(wǎng)控制層主要負責(zé)對接外部服務(wù)器,包括車站服務(wù)器、二維碼車票服務(wù)器、日志服務(wù)器等平臺;硬件驅(qū)動層主要負責(zé)按照閘機軟件接口,對各硬件模塊特定的串口協(xié)議進行封裝。閘機軟件總體框圖如圖1所示。
自動檢票機界面展示層采用HTML5+CSS+JavaScript開發(fā),采用獨立進程模式,與業(yè)務(wù)控制層之間采用WebSocket方式通信。界面展示層主要頁面分為待機界面、乘客車票信息、操作員后維護操作等頁面。待機頁面是指在沒有人操作的情況下,自動檢票機根據(jù)當(dāng)前狀態(tài)顯示的頁面,內(nèi)容包括:自動檢票機工作模式、各硬件模塊狀態(tài)、網(wǎng)絡(luò)狀態(tài)、車票票箱狀態(tài)等信息。并根據(jù)實際情況,在頁面上展示自動檢票機整機狀態(tài);乘客車票信息頁面是指在乘客刷卡時,將乘客的票卡信息顯示在界面上,在車票有效的情況下,顯示車票余額及扣費金額,在車票無效的情況下,顯示車票錯誤信息及提醒乘客進行相關(guān)操作;操作員后維護頁面主要給操作人員提供日常操作功能以及在自動檢票機硬件、軟件故障時,提供給維修員當(dāng)前故障信息,并提供故障解決方法。閘機待機界面及暫停服務(wù)頁面如圖2、圖3所示。
自動檢票機綜合控制層采用C++語言開發(fā),主要分為模式轉(zhuǎn)換、硬件模塊調(diào)度、與界面展示層通信等工作。模式轉(zhuǎn)換功能是根據(jù)自動檢票機當(dāng)前各硬件、軟件模塊狀態(tài)信息,進行相應(yīng)的模式轉(zhuǎn)化,并控制界面展示層進入相應(yīng)的待機界面,例如在扇門模塊故障的情況下,自動檢票機自動轉(zhuǎn)入暫停服務(wù)模式,并控制待機頁面顯示暫停服務(wù)及當(dāng)前錯誤信息;硬件模塊調(diào)度主要是指業(yè)務(wù)邏輯層對自動檢票機各硬件模塊進行調(diào)度,通過控制各硬件模塊驅(qū)動,達到控制硬件模塊的目的,例如在完成有效票檢票后,綜合控制層調(diào)度扇門驅(qū)動進執(zhí)行打開扇門操作,同時調(diào)度聲音模塊播放提示音并通知界面展示層顯示車票信息。
聯(lián)網(wǎng)控制層主要負責(zé)與外部系統(tǒng)進行通信,一般采用Socket協(xié)議與各外部服務(wù)器之間進行通信。與車站服務(wù)器通信主要工作是上報自動檢票機狀態(tài)、上傳交易數(shù)據(jù)、接收來自車站服務(wù)器的控制命令以及車站內(nèi)服務(wù)器參數(shù)版本管理的工作。與車票服務(wù)器的通信主要是為了二維碼等電子票在線驗證時,負責(zé)在線檢票等工作,并維護與車票服務(wù)器的心跳,在心跳不正常時,禁用二維碼車票功能。與日志服務(wù)器通信主要是為了方便線網(wǎng)中心收集自動檢票機的日志。日志分為設(shè)備日志、收益日志、審計日志三類,在每天自動檢票機運營結(jié)束后,自動檢票機通過FTP方式,將日志自動上傳至日志服務(wù)器。
硬件驅(qū)動層主要負責(zé)對各硬件模塊的串口通信協(xié)議封裝,稱為動態(tài)庫供綜合控制層調(diào)度。自動檢票機每個硬件模塊使用不同的串口協(xié)議,不同硬件模塊廠家之間,串口協(xié)議也不相同,為了使綜合控制層軟件適配多家生產(chǎn)商的硬件模塊,對各硬件模塊串口協(xié)議進行封裝,為綜合控制層提供同樣的接口方便調(diào)用。
2? 二維碼車票數(shù)據(jù)識別
自動檢票機處理二維碼車票的第一個環(huán)節(jié)是通過二維碼識別模塊,獲取二維碼信息。通過技術(shù)手段,保證二維碼數(shù)據(jù)的準(zhǔn)確性,是自動檢票機處理二維碼車票的前提條件。目前,自動檢票機與二維碼模塊一般通過串口方式進行通信。自動檢票機在獲取二維碼模塊數(shù)據(jù)時,需要使用串口通信協(xié)議,對二維碼模塊數(shù)據(jù)進行校驗,一般二維碼模塊通信數(shù)據(jù)格式為:起始符→數(shù)據(jù)長度→數(shù)據(jù)內(nèi)容→結(jié)尾符。
自動檢票機需要定時對二維碼模塊數(shù)據(jù)進行輪詢判斷,當(dāng)二維碼數(shù)據(jù)符合協(xié)議規(guī)則時,需要將二維碼數(shù)據(jù)取出,進行下一步驟的操作,自動檢票機獲取二維碼數(shù)據(jù)流程圖如圖4所示。
3? 二維碼車票本地校驗
二維碼車票服務(wù)器生成二維碼數(shù)據(jù)時,按照加密協(xié)議對二維碼車票原始數(shù)據(jù)進行加密處理。因此,自動檢票機從二維碼模塊獲取數(shù)據(jù)后,需要對數(shù)據(jù)內(nèi)容進行解密處理。二維碼車票數(shù)據(jù)內(nèi)容根據(jù)實際情況可能包含不同信息。一般包含二維碼車票類型、車票發(fā)卡方、行業(yè)數(shù)據(jù)、車票狀態(tài)等信息。二維碼車票校驗流程如圖5所示。
在對二維碼車票進行校驗時,按照檢查車票數(shù)據(jù)校驗是否合法、檢查車票類型是否合法、檢查車票狀態(tài)是否合法的順序?qū)嚻边M行校驗,對于不符合車票規(guī)則的數(shù)據(jù),自動檢票機按照無效二維碼車票處理,提醒乘客使用正確二維碼車票。對符合規(guī)則的二維碼車票,自動檢票機對二維碼車票的數(shù)據(jù)、類型、狀態(tài)進行校驗,通過校驗的車票,自動檢票機將對車票進行驗證處理。
4? 二維碼在線驗證
對滿足二維碼車票設(shè)計規(guī)則的車票,自動檢票機將進入二維碼車票驗證的環(huán)節(jié),將二維碼車票數(shù)據(jù)內(nèi)容發(fā)送至二維碼車票服務(wù)器進行校驗。自動檢票機與二維碼車票服務(wù)器之間,通常采用HTTPS傳輸協(xié)議,使用JSON數(shù)據(jù)交換格式。自動檢票機與二維碼車票服務(wù)器之間協(xié)議通常包含設(shè)備編號、時間戳、進出站標(biāo)識、二維碼車票數(shù)據(jù)內(nèi)容等信息。二維碼車票服務(wù)器在接收到自動檢票機驗票請求后,對乘客二維碼車票數(shù)據(jù)及乘客信息進行分析,對符合條件的二維碼車票,返回驗票成功的消息。自動檢票機在接收驗證成功信息后,自動打開扇門并在界面上顯示車票信息。自動檢票機二維碼車票驗證流程如圖6所示。
5? 二維碼車票測試
二維碼車票識別、二維碼車票本地校驗、二維碼車票在線驗證流程開發(fā)完成以后,將二維碼功能與傳統(tǒng)自動檢票機軟件集成,形成支持二維碼車票的自動檢票機,并在實驗室環(huán)境下組織對支持二維碼車票的自動檢票機進行1 000筆二維碼交易壓力測試,并與傳統(tǒng)車票測試數(shù)據(jù)進行對比,實驗室測試數(shù)據(jù)如表1所示。
在表1中可以看出在,實驗室測試環(huán)境下,二維碼車票檢票時間加上自動檢票機其他模塊的耗時,平均總耗時為340 ms,傳統(tǒng)車票的耗時為670 ms,在使用二維碼車票的情況下,自動檢票機的處理時間幾乎縮短了一半,這對大客流車站提升乘客通行效率有著重大意義。
6? 結(jié)? 論
本文根據(jù)實踐經(jīng)驗對二維碼車票在自動檢票機上的應(yīng)用進行總結(jié),按照二維碼車票處理流程,將二維碼車票處理分為二維碼識別、二維碼校驗、二維碼驗證三個環(huán)節(jié)。在每個環(huán)節(jié)上,對二維碼車票的業(yè)務(wù)流程進行說明。此外,二維碼車票的使用,需要充分考慮網(wǎng)絡(luò)斷開的情況下對二維碼車票的降級處理,在斷網(wǎng)的情況下,二維碼車票驗證應(yīng)該支持自動檢票機本地驗證。
參考文獻:
[1] 王國光.自動售檢票系統(tǒng)及關(guān)鍵技術(shù)研究 [D].北京:鐵道部科學(xué)研究院,2005.
[2] 北京市規(guī)劃委員會.地鐵設(shè)計規(guī)范:GB 50157—2013 [S].北京:中國建筑工業(yè)出版社,2013.
[3] 趙時旻.軌道交通自動售檢票系統(tǒng) [M].上海:同濟大學(xué)出版社,2007.
作者簡介:張健生(1990—),男,漢族,廣東潮州人,智能開發(fā)四部軟件工程師,畢業(yè)于廣東工業(yè)大學(xué),工學(xué)碩士,研究方向:軟件開發(fā)。