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