李 陽,黃 俊,李 建
(重慶郵電大學 信號與信息處理重慶市重點實驗室,重慶400065)
隨著城市交通機動化的發(fā)展,交通擁堵、環(huán)境污染越來越嚴重,發(fā)展慢行交通,建立公共自行車系統(tǒng),鼓勵更多的出行者采用非機動交通工具,引導居民形成“公共自行車+公共交通”的出行模式,使之成為提高城市交通運行效率和減少環(huán)境污染的有效途徑,我國許多城市已經(jīng)開始試點和推行公共自行車服務,公共自行車因此得到了快速發(fā)展,正逐漸成為我國公共交通體系中不可或缺的一環(huán)[1]。
公共自行車租賃系統(tǒng)主要以當?shù)厥忻窈屯獾赜慰蜑閷ο?,在城市或特定區(qū)域范圍內(nèi)提供若干個站點和若干公共自行車,系統(tǒng)可提供人們免費或者象征性收費使用自行車,并能在任意服務站點實現(xiàn)通租通還[2]。
目前,公共自行車系統(tǒng)已發(fā)展到第三代,其采用許多現(xiàn)代技術(shù)手段,如網(wǎng)絡技術(shù)、無線通信技術(shù)、智能卡技術(shù)等。管理中心、租賃站點服務終端、停車器都實現(xiàn)了互聯(lián),能夠?qū)崟r進行通信,不僅可以實現(xiàn)異地還車,很多其他交易如會員注冊也不受服務站點地理位置的限制[3]。但與此同時,目前的公共自行車系統(tǒng)仍存在一些問題,如:只提供自行車的租賃和管理;高峰期的機動調(diào)運能力低下,上班和下班高峰期借車和還車困難;車輛故障不能及時修理解決,刷卡系統(tǒng)時有故障;數(shù)據(jù)傳輸速率低下,數(shù)據(jù)安全沒有保證。
本文中所設計的站點控制平臺,針對以上問題,提出利用RFID 技術(shù)、CAN 總線技術(shù)、計算機網(wǎng)絡技術(shù)等手段的有效的解決方案;CAN 總線技術(shù)保證站點控制平臺與鎖樁部分的數(shù)據(jù)實施有效且安全可靠;采用TCP、UDP、FTP 等多種通信手段相結(jié)合的通信方式,能夠處理多種數(shù)據(jù),為后臺的調(diào)度方案提供數(shù)據(jù)支持,從而解決高峰時期調(diào)度車輛難的問題。
一個公共自行車租賃系統(tǒng)包含一個站點控制平臺及其下的若干鎖樁、服務器集群等組成。
站點控制平臺通過對鎖樁的控制,可以提供車輛租賃服務,此外還提供用戶自助服務,用戶在此處查詢可租還車輛、查詢用戶和周圍網(wǎng)站車輛信息,也可以進行App 租車以及登錄并進行個人業(yè)務處理。
如圖1 所示,站點控制平臺與鎖樁通過CAN 總線的方式進行通信的,CAN 總線具有實時性強可靠性高的特點,保證了車輛租還的實時可靠;站點控制平臺與后臺服務平臺通過有線和無線兩種方式進行通信,在兩種方式都可用的情況下,優(yōu)先使用有線通信方式進行通信,在特殊情況下使用GPRS 方式進行網(wǎng)絡通信,保證網(wǎng)絡數(shù)據(jù)能夠正??煽康倪M行。
圖1 公共自行車租賃系統(tǒng)結(jié)構(gòu)圖
站點控制平臺的軟件設計基于Linux 內(nèi)核進行應用程序設計。應用程序采用QT 進行開發(fā),站點控制平臺的軟件設計基于Linux 內(nèi)核進行應用程序設計。QT 版本為QT4.8.5,開發(fā)環(huán)境為QtCreator2.4.1,交叉編譯器采用arm-linux-gcc-4.4.1,Linux 內(nèi)核版本Linux3.2.1。整個站點控制平臺軟件設計運用嵌入式Linux、RFID 無線射頻、CAN 總線等技術(shù)手段,包括公共自行車租/還管理、數(shù)據(jù)通信處理、數(shù)據(jù)存儲管理、調(diào)度管理的智能管理系統(tǒng),對自行車租用實現(xiàn)了各站點控制平臺之間通租通還、自助服務、操作方便、智能科學管理的要求[4]。自行車租賃站點控制平臺的主要功能模塊如圖2所示。
圖2 站點控制平臺的主要功能模塊
站點控制平臺的數(shù)據(jù)流圖如3 所示。從圖上可以看出,整個軟件設計可以根據(jù)多站點控制平臺向上可通過網(wǎng)口設備,進行UDP,TCP,NTP 同步以及FTP 通信,多種通信方式保證了各數(shù)據(jù)處理流程有序進行;向下可通過CAN 總線與鎖樁通信;此外還可以通過讀卡器模塊在站點控制平臺進行讀/寫卡操作。
圖3 站點控制平臺的數(shù)據(jù)流圖
在站點開啟時,需要與后臺的服務器進行同步,同時,需要向后臺服務平臺請求本站點的基本信息以及周圍站點的實時信息,同時更新特殊卡的狀態(tài)信息。具體的初始化流程圖如圖4 所示。
圖4 初始化程序流程圖
在站點開啟時,需要與后臺的服務器進行同步,同步包括時間同步和數(shù)據(jù)同步;時間同步是指使用NTP 服務與服務器進行時間同步,數(shù)據(jù)同步是向服務器請求更新本地數(shù)據(jù)庫的數(shù)據(jù),同時更新配置文件的內(nèi)容,與后臺數(shù)據(jù)庫保持一致。
租車流程如圖5 所示,站點控制平臺與鎖樁通信時采用一應一答形式,用戶持卡到鎖樁刷卡租車操作時,首先鎖樁向站點發(fā)出卡校驗請求,判斷是工作人員的調(diào)度卡還是用戶卡,若為工作人員的調(diào)度卡,則判斷為調(diào)度車輛操作;若為用戶卡,則進行卡片的狀態(tài)判斷;若為特殊卡狀態(tài),則拒絕租車。再判斷該卡是否已經(jīng)租車,若已租車且未還車,則拒絕其租車;否則繼續(xù)判斷其卡片內(nèi)的余額。如果余額足夠,超過一次租車所有的最大金額,則允許其租車;否則拒絕租車。
圖5 租車流程圖
用戶一旦成功租車,站點控制平臺就會在本地Sqlite 數(shù)據(jù)庫生成租還車數(shù)據(jù),同時,修改數(shù)據(jù)庫中鎖樁的狀態(tài)表,保證一旦網(wǎng)絡出現(xiàn)故障無法與服務器進行通信,站點能夠存儲一定量數(shù)據(jù)。
還車流程如圖6 所示,用戶持卡和自行車到站點控制平臺下的鎖樁進行還車操作。用戶將車推入鎖樁后,將卡放在讀卡區(qū)進行刷卡操作,鎖樁獲取用戶卡中的卡信息和車輛卡中的卡信息,并將卡信息與車輛信息進行比對,如果卡信息與車輛信息匹配,則鎖樁向站點控制平臺發(fā)送還車信息,站點確認信息后返回還車響應信息。用戶卡還車流程如圖6 所示。
圖6 還車流程圖
手機App 登錄界面及用戶操作界面如圖7 所示。站點控制平臺支持用戶使用手機App 進行租車。用戶需要下載專用的租車軟件,在登錄后,軟件自動匹配最近站點,一旦進入站點范圍,就可以租車。用戶在App 上可申請租車驗證碼。在站點控制平臺輸入驗證碼后,完成租車操作。
圖7 App 租車流程圖(截圖)
此外,手機App 還提供了多種便捷服務。手機App 提供對其他站點信息進行查詢的功能,通過調(diào)用Google 地圖API函數(shù)[5],生成附近站點的地圖坐標位置,用戶可以在地圖上直觀的看到站點和網(wǎng)點分布,并可以查詢每個站點的信息;此外,手機App 還提供對用戶卡的租還車記錄的查詢操作以及聯(lián)系客服中心的功能。
針對傳統(tǒng)自行車租賃系統(tǒng)中鎖樁與站點控制平臺通信可靠性低,實時性差的問題,本次設計采用了CAN 總線通信方式。而在實際使用中,會遇到多個鎖樁同時租還車的現(xiàn)象,從而導致在大量數(shù)據(jù)涌入時數(shù)據(jù)丟失。本次設計考慮到這一問題,提出FIFO+Hash 算法的解決方案,其基本方法為:首先,對CAN 數(shù)據(jù)進行優(yōu)先級區(qū)分,高優(yōu)先級優(yōu)先處理。其次,采用多線程的方式,使用A 線程對數(shù)據(jù)進行循環(huán)讀取,并將讀到的CAN 數(shù)據(jù)插入到設定好的FIFO 隊列中,規(guī)則為高優(yōu)先級插入高優(yōu)先級FIFO,低優(yōu)先級插入低優(yōu)先級FIFO,F(xiàn)IFO 隊列設定的容量足夠大。B 線程則對FIFO 隊列進行出隊的操作,將得到的CAN 數(shù)據(jù)根據(jù)CAN Id 分別插入Hash 表中,CAN Id 為對應的Key 值,CAN 幀可根據(jù)Key 進行組裝。在處理數(shù)據(jù)時,根據(jù)Key 值取出相應的CAN 數(shù)據(jù)。從而解決的在CAN 數(shù)據(jù)突發(fā)量大時數(shù)據(jù)丟包的問題。具體設計流程如圖8 所示。
圖8 FIFO+Hash 算法流程圖
本文設計的公共自行車站點控制平臺,根據(jù)實際需求,實現(xiàn)有卡和App 租車兩種方式租車,提出并實現(xiàn)了以RJ-45 以太網(wǎng)接口與GPRS 無線通信兩種方式與監(jiān)控中心與服務平臺進行數(shù)據(jù)交互,同時,提出并實現(xiàn)了采用CAN-BUS 與鎖樁進行實時有效的通信。本文中的設計從實用性和可靠性方面對已有的公共電動自行車自助服務終端系統(tǒng)進行了優(yōu)化,下一步的研究方向,是加強手機App 的功能,如通過掃描二維碼進行租還車等,逐步取消使用卡片進行操作;同時,將更多的支付平臺集成到站點控制平臺,使用戶可以通過多種支付方式進行租還車。
[1]李婷婷.城市公共自行車租賃點選址規(guī)劃研究[D].北京:北京交通大學,2010.
[2]黃孝斌,魏劍平,樊勇,等. 物聯(lián)網(wǎng)助力城市信息化發(fā)展——探索城市管理新模式[J].中國科學院院刊,2010(1):64-70.
[3]晏婷,黃俊.電動自行車自助服務終端系統(tǒng)的設計與實現(xiàn)[J].電視技術(shù),2015,39(4):110-113.
[4]陳勇,王宏偉.基于Qt/E 的只能倉儲管理便攜式終端設計[J].重慶郵電大學學報:自然科學版,2012,24(3):369-373.
[5]徐光俠,封雷,涂演.基于Android 和Google Maps 的生活輔助系統(tǒng)的設計與實現(xiàn)[J].重慶郵電大學學報:自然科學版,2012,24(2):242-247.