陳林
(宿遷學院 江蘇省宿遷市 223800)
Android 系統是免費、開放的平臺,所以其受到了三星、華為、中興等諸多手機廠商的支持。根據凱度移動通信消費者指數2015年 6月公布的智 能手機操作系統市場份額數據,Android 系統在中國市場的占有率達 79%,是中國智能手機市場占有率最大的操作系統。Android 系統在中國市場占有率極高,成為多數手機用戶的系統,因此,本文基于Android 手機,設計城市實時公交查詢系統。
本文設計的城市公交實時查詢系統主要有三個板塊,分別為后臺服務器、車輛終端、手機客戶端,系統設計的期望功能為為使用者提供查詢車輛的位置、站臺信息、發車時刻以及道路交通狀況。
系統的主要模塊有三個,分別為后臺服務器、車輛終端、手機客戶端,后臺模擬器的作用主要為定位車輛位置,實時更新車輛位置,并且更改道路交通狀況信息。車輛終端則負責實時反應車輛位置,手機客戶端則可以用來查詢這些信息,系統后臺服務器是指一個運行在電腦上的一個Java 應用程序,該應用后面維護著一 個數據庫,用來儲存公交運行中的各種數據;手機客戶端和模擬車輛終端都是運行在Android 手機上的應用程序。 三個模塊相結合,從而使該城市實時公交查詢系統數據更準確、使用更便捷。
系統設計的期望功能為為使用者提供查詢車輛的位置、站臺信息、發車時刻以及道路交通狀況。系統的主要運行方式是:手機客戶端和模擬車輛終端向后臺服務器發出的請求,后臺服務器實時更改數據庫中的數據,并根據手機客戶端上的請求向手機客戶端反饋信息。
模擬后臺服務器為該城市公交實時查詢系統的核心,它存儲著所有信息,并擔任信息更新的工作,模擬車輛終端和模擬手機客戶端的信息都將存儲在這一數據庫中,由它實現信息的交互與更新。因此,模擬后臺服務器的設計至關重要。模擬后臺服務器的主界面為系統后臺界面,管理員登錄賬號后,通過點擊“添加路線”、“刪除路線”、“更改路線”等,即可使用相應功能,添加或修改刪除公交線路。模擬后臺服務器是一個電腦上的一個Java 應用程序,后面維護著一個大的總數據庫,而這一數據庫下是每一條公交線路的數據,可以稱之為小數據庫,數據庫中的數據將根據車輛終端及手機客戶端所反應的信息不斷進行更新,從而實現系統的城市實時公交查詢功能。在應用投入使用前期,城市實時公交查詢系統的管理員要盡可能完善地導入城市公交地線路信息,為用戶提供全面準確地服務。
模擬后臺服務器的功能主要為:增加和刪除公交路線和行車線路;接收并發布用戶選定的線路上公交車傳來的站點擁堵信息;為用戶發布選定線路上距離最近站點的公交實時位置以及預計到達時間。這樣,用戶能夠根據城市實時公交查詢系統發布的公交實時位置以及預計到達時間,合理規劃自己的出行時間。
模擬后臺服務器連接著一個 Access 數據庫,該數據庫命名為bus,用來存儲系統中所要用到的一些數據。Java 中有多種訪問數據庫的方法,而本城市公交實時查詢系統采用的是把JDBC 轉換成 ODBC 驅動器的方法,靠ODBC 和數據庫建立通信連接。根據該城市實時公交查詢系統所期望實現的功能,建立五張數據庫,分別為“公交線路(Bus lines)”、“公交站點(bus stop)”、“公交位置(Bus location)”、“道路狀況(Road conditions)”、“到達時間( arrival time)”。
模擬后臺服務器的運行流程如圖1 所示。

圖1
如圖1 所示,模擬后臺服務器首先是一個“登錄界面( login interface)”,只有輸入進正確的賬號密碼后,才能跳轉到后續的功能模塊界面。功能模塊界面主要有三個板塊,分別為“添加路線(Add route)”、“修改路線(Revision of route)”、“刪除路線(Delete route)”,點擊添加路線,即可輸入線路名稱以及各個站點的信息,點擊修改路線,即可修改線路站點,點擊刪除路線,即可一鍵刪除整條路線。模擬后臺服務器的前期錄入工作是比較耗費人力物力的,城市公交線路眾多,全部錄入需要耗費一定的時間,但本文仍未找到更方便合適有效正確的錄入方式,只能選擇人工錄入。
以人工實時更新車輛位置的方式顯然耗費巨大的人力物力,且效率較低,無法實現城市實時公交查詢系統中的實時二字,因此,建議在每一輛公交上防止定位系統,每隔一段固定的時間反應車輛的所屬位置。如,將定位系統的固定發送信息時間定為三分鐘,則每隔三分鐘時間,定位系統便將公交車所處位置的經緯度發送給后臺服務器,后臺服務器便能夠實時接受公交車輛位置并更新。時間設置的越短,則公交車的實時位置反應的越準確。但同時,也要考慮到系統的運行能力,并且公交車的行駛速度較慢,行駛的路線也已固定,無需設定非常短的時間,開發者可以根據城市實時公交查詢系統的使用情況和城市公交實際運行狀態來更改這一固定時間,從而既緩解系統負擔,又能較為準確的反應城市公交車實時位置。
為進一步準確定位車輛位置,避免一些意外狀況的發生,該城市實時公交查詢也可以人工更改車輛位置狀態。模擬車輛終端一共有四個板塊,分別為“登錄界面( login interface)”、“線路選擇(Line selection)”、“站點選擇(Site selection)”、“狀態選擇(State selection)”,車輛終端管理員正確輸入賬號密碼后即可登錄,點擊相應按鈕后即可實現相應的功能,顧名思義,線路選擇是選擇好要更改信息的信息,而后選擇公交車即將到達的站點,并填寫相應的道路交通狀況信息。道路交通狀況信息有四種狀態,分別為“重度擁堵(State1)”、“中度擁堵(State2)”、“輕度擁堵(State3)”、“道路順暢(State4)”,點擊相應的狀況后,后臺服務器就會將要更新的數據更新在數據庫中,從而實現實時更新公交位置及實時反應道路交通狀況的功能。
模擬車輛終端功能:向服務器發送自身的運行方向及所處的位置;實時地向服務器發送該車所在運行區間的擁堵狀況。在發生意外情況時,可以人工更改車輛信息。
模擬車輛終端運行效果良好,比起其他城市實時公交查詢系統來說,它反應的數據更及時,更準確、更全面,用戶能夠隨時查看公交車的位置變化,從而規劃出行路線及時間。但缺點也是有的,給每一輛公交車輛都安裝實時定位系統成本較高,且對系統的運行造成了一定程度的負擔,在實際的運行過程中,公交車輛線路多樣,輛數眾多,系統可能會難以運行,要優化數據庫的設置,設計的更簡潔更節省數據空間。
模擬手機客戶端一共有四個功能板塊,分別為“登錄界面 (login interface)”、“線路選擇(Line selection)”、“站點選擇(Site selection)”、“狀態選擇(State selection)”,與模擬車輛終端所不同的是,用戶在選擇完線路和站點后,即可跳轉到地圖,地圖上顯示線路信息及車輛位置,系統將計算出最近的公交到達用戶所選站點的預估時間,并且顯示車輛終端及手機客戶端所發布的道路交通狀況,用戶即可按照預估時間及實時更新的車輛位置,確定自己出門乘坐公交的時間。而在手機客戶端的狀態選擇中,也有四個模塊,分別為“重度擁堵(State1)”、“中度擁堵(State2)”、“輕度擁堵(State3)”、“道路順暢(State4)”,與模擬車輛終端相同,點擊相應的狀況后,后臺服務器就會將要更新的數據更新在數據庫中,從而實現實時更新公交位置及實時反應道路交通狀況的功能。
模擬手機客戶端功能:按公交路線查詢行車線路(如輸入33,即可查看公交所有站點,以起點站到終點站的順序排列);查詢所處站點的下一輛到達的公交車所處位置;從服務器上獲取在選定線路上的公交傳回的道路擁堵信息。
本論文中的模擬手機客戶端均是基于 Android 平臺開發的應用程序。這一模擬手機客戶端是向用戶發布的公交查詢軟件,軟件的使用界面相當簡潔,用戶通過該系統可以隨時隨地查看所等待公交線路的公交車輛實時位置信息和預估到達時間,便于用戶合理安排乘車時間,提高出行效率。該系統的設計和運行解決了傳統城市公交實時查詢系統公交位置更新不及時,無法反應道路交通狀況等問題,通過車輛定位系統,實時反應車輛位置,通過車輛終端和手機客戶端兩者共同反應,顯示道路交通狀況,避免了盲目候車等問題,具有重要的實用價值。今后,還將對該系統的功能進行擴展,如反應車內乘客擁擠情況等功能,為城市公交數字化、智能化添磚加瓦。
模擬手機客戶端是向用戶發布的公交查詢軟件,本文設計的系統將人、車、服務器三者相結合,能較好的顯示車輛信息,實時反應車輛位置,且具有一定的靈活機動性,在路況較差、交通擁堵等情況下,可以在后臺更改車輛位置,并標明路況,解決了傳統實時公交查詢系統無法顯示道路狀況的問題,方便乘客實時查詢車輛位置和到達站點的預估時間,選擇合適的出行方案。
近年來,我國發展日新月異,城市化進程不斷加快,城市交通問題日益嚴重。城市公交作為城市交通的重要部分,對于城市交通通暢和人們的出行便利具有非常重要的作用。實時公交系統近年來的應用已越來越廣泛,通過城市實時公交查詢系統,人們可以知曉車輛位置與發車時刻,從而更好的安排出行時間。