《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于位置云技術的智能拼車匹配系統設計
基于位置云技術的智能拼車匹配系統設計
來源:電子技術應用2013年第8期
張 凱,陸 鈞,孫 躍
南京信息工程大學 信息與控制學院,江蘇 南京210044
摘要: 為了讓人們便捷地找到合適的拼車伙伴,運用位置云平臺的云存儲與檢索服務,結合Web服務器和數據庫技術,設計并實現了智能拼車匹配系統,并開發了基于嵌入式平臺的客戶端裝置。介紹了系統的架構,論述了位置云端存儲與檢索的實現方法,說明了客戶端的硬件結構和主要功能模塊的軟件設計。測試表明,系統運行穩定,能夠實現用戶注冊、登錄管理、地圖定位、拼車需求發布、智能匹配等功能,能夠及時響應請求并匹配出合適的結果,具有一定的應用前景。
中圖分類號: TP391
文獻標識碼: A
文章編號: 0258-7998(2013)08-0020-03
The design of an intelligent carpool-matching system based on LBS-Cloud service
Zhang Kai,Lu Jun,Sun Yue
School of Information and Control,Nanjing University of Information Science & Technology,Nanjing 210044,China
Abstract: In order to make carpool travels more conveniently, an intelligent carpool-matching system was designed and developed based on the LBS-Cloud platform and combined with Web server and database technology. The client device was developed based on embedded platform.The architecture of this system and the implementation method of LBS-Cloud storage and retrieval were introduced. The test showed that the whole system worked well. The functions such as registration,login,auto locate, intelligent matching and so on,could be all realized successfully. The intelligent carpool system has limitless applications.
Key words : LBS-Cloud;Android;carpool-matching;database

    隨著社會的發展,汽車保有量迅速增長,道路擁堵情況以及尾氣污染日益嚴重。根據有關統計,機動車尾氣排放約占霧霾天氣PM2.5來源的四分之一以上,是導致空氣污染的重要原因。因此我國需要學習一些發達國家的城市治理經驗,一方面大力發展公共交通,另一方面倡導人們最大限度地合理使用汽車,積極拼車出行,以達到減少擁堵和排污的效果[1]。

    拼車雙方有相似的出行路線和時間表是實現拼車的關鍵。由于拼車在國內興起不久,拼車的組織、制度還很不完善。在現有的拼車網站或者應用中,大多是以列表形式羅列出各種拼車需求,用戶需要在繁多的拼車需求中找出適合自己的拼車對象,并不是十分方便和快捷。
    位置云(LBS云)服務作為云技術在地圖定位領域的應用,是一種集位置存儲與檢索于一體的云服務。LBS云平臺一方面可以完成龐大的位置數據存儲,另一方面能夠返回各類基于位置數據的檢索請求,是開發基于位置服務系統的理想選擇。
    針對以上分析,基于百度LBS云平臺,結合Web服務器和數據庫,設計和實現了智能拼車匹配系統及其嵌入式客戶端。用戶只需登錄客戶端,在地圖上將自己的拼車信息發送到服務器,等待服務器返回匹配結果,就能夠方便、及時地找到周圍合適的拼車伙伴,完成快捷的拼車出行,從而節約出行成本。同時能夠減少車輛出行,為緩解交通擁堵情況以及節能減排做出貢獻。
1 系統設計
1.1 系統架構

    系統采用Client/Server(C/S)體系結構,其架構如圖1所示。系統主要包括服務器、基本數據庫、位置云平臺、無線網絡和客戶端[2]。客戶端完成前臺操作處理和計算,通過無線網絡訪問Web服務器和數據庫,服務器對客戶端的拼車請求進行處理并返回匹配結果。

1.2 服務器設計
    服務器端采用開源的Tomcat服務器,它支持Java類Servlet,在Java環境運行時能夠很好地支持運行Web應用部署[3]。當收到客戶端請求時,服務器啟動并加載Servlet容器,Servlet根據請求生成響應內容并傳給服務器,再由服務器將響應返回客戶端。
    本系統中,需要部署4個Servlet類,分別用于注冊、登錄、存儲以及匹配。服務器與客戶端的通信采用Http通信協議的post方法,部署服務器時,先繼承HttpServlet抽象類,然后覆蓋HttpServlet的doGet()方法,通過Http-ServletRequest對象來獲取請求信息,最后由HttpServletResponse對象生成響應結果返回給客戶端。寫完服務器的Servlet程序后在web.xml文件中進行屬性配置,就能夠通過8080端口連接部署的服務器[4]。
1.3 數據庫設計
    采用MySQL 5.6數據庫軟件,在服務器端可以直接引入Java數據庫連接(JDBC)驅動,通過接口成功連接數據庫之后,發送SQL語句操作數據庫并處理結果[5]。
    拼車時間和方式的匹配通過對數據庫schedule表的條件查詢實現。當有用戶的匹配請求發送至服務器時,服務器端調用條件查詢類來進行篩選,并返回符合條件的結果。
    服務器使用JDBC接口連接數據庫,在服務器的lib文件夾中插入mysql-connector-java-bin.jar驅動,Servlet程序中先要注冊驅動:Class.forName("com.mysql.jdbc.Driver");然后通過DriverManager.getConnection類連接建立的test數據庫,端口為3306,使用prepareStatement( )對象執行SQL查詢語句,executeQuery( )方法把查詢結果返回并存放在ResultSet類對象中。此外,在程序中還應設置CharacterEncoding屬性為utf-8的編碼方式,以避免中文出現亂碼。
2 位置云技術
    在拼車系統中,基于百度LBS云服務,將用戶發送的出發地和目的地位置信息存儲在位置云平臺中,利用位置云計算能力,迅速篩選出這兩個位置周圍符合條件的其他用戶,并返回相應用戶的基本信息,完成拼車路徑的智能匹配。
2.1 位置云存儲的實現
    百度LBS云存儲使用接口的方式進行存儲管理,用位置數據存儲容器databox對所存儲的位置數據進行字段定義,包括基本字段databox和擴展字段databox_meta。用單元數據poi存儲具體的位置信息,同樣包括基本信息poi和擴展信息poi_ect。實現位置數據存儲的關鍵代碼如下:
    url: api.map.baidu.com/geodata/databox
    postfield:method=create&name=carpool&ak=key
            //創建名為carpool的databox
    url: api.map.baidu.com/geodata/poi
    postfield:method=create&name=start&ak=key
                //創建存儲出發地信息的poi
    postfield:method=create&name=destination&ak=key
            //創建存儲目的地信息的poi
2.2 位置云檢索的實現
    位置云檢索同樣使用接口方式來發送檢索請求。在拼車匹配模塊中需要檢索出發地和目的地都相近的用戶,采用周邊檢索命令來實現。通過location變量設置檢索中心點,格式為:經度,緯度;通過radius變量設置檢索半徑,單位為m。實現位置數據檢索的關鍵代碼如下:
    url: api.map.baidu.com/geodata/poi
    GET:api.map.baidu.com/geosearch/start&location=lon,
    lat&radius=3000&scope=2&ak=key
                //檢索出發地周圍3 km的拼車用戶
    GET:api.map.baidu.com/geosearch/destination&location=
    lond,latd&radius=3000&scope=2&ak=key
    //檢索目的地周圍3 km的拼車用戶
3 客戶端設計
3.1 客戶端硬件設計

    客戶端裝置要求攜帶方便、低功耗、高性能、可擴展,因此使用S3C6410嵌入式微處理器作為控制核心。客戶端硬件結構如圖2所示,主要由S3C6410處理器、GPS定位模塊、3G無線模塊及外圍電路等組成。外圍電路包括256 MB RAM內存、2 GB NAND Flash存儲器、7寸液晶屏和串口接口等。

    選用GPS模塊的型號為WGS100,它采用高靈敏度導航芯片SIRF3,20通道通信,最多可以同時與20顆衛星建立通信;有RS232和TTL兩種電平輸出方式,缺省通信速率為9 600 b/s;采用可靠的外置天線,定位穩定,功耗低,可直接由常見的5 V電源供電。在客戶端中采用RS232方式與S3C6410處理器連接通信,由GPS模塊定位當前位置數據,再由處理器處理后在客戶端軟件的地圖頁面定位和顯示當前位置,定位過程如圖3所示。

3.2 客戶端軟件設計
    智能拼車匹配系統的Android客戶端基于Eclipse 4.2開發,主要包括注冊模塊、登錄模塊、地圖模塊和拼車模塊4個功能模塊。
    客戶端有注冊、登錄、拼車3個界面,在工程的layout文件夾中,建立3個xml文件進行窗口控件設計。在拼車界面中,需要載入地圖頁面,其代碼如下:
    <com.baidu.mapapi.MapView//地圖窗口接口
    android:id="@+id/bmapsView"//窗口id
    android:layout_width="fill_parent"//寬度
    android:layout_height="fill_parent"//高度
    android:clickable="true" /> //地圖可點擊
    各功能模塊程序設計:
    (1)登錄模塊:向服務器驗證用戶輸入的用戶名和密碼是否正確,并返回提示信息。與服務器的通信采用post方式,關鍵代碼如下:
    StringurlStr = "http://172.16.72.186:8080/loginser/login";
         //登錄Servlet的路徑
    HttpPost request = new HttpPost(urlStr);
//request繼承HttpPost方法
    HttpResponse response =client.execute(request);
//執行請求返回響應
    (2)注冊模塊:將新用戶名、密碼等信息發送到服務器進行保存,完成后跳轉到登錄界面,通信方法與登錄模塊相同。
    (3)地圖模塊:基于百度地圖api接口實現實時定位、地圖搜索和路線規劃等基本功能。程序中,設置setBu-
iltInZoomControls對象啟用縮放控件,setClickable對象設置地圖可點擊,繼承MyLocationOverlay對象顯示當前位置層,用MKSearch( )方法來初始化地圖搜索功能,設置enableCompass對象開啟指南針功能。定位當前位置的關鍵代碼如下:
    pt=new GeoPoint((int)(location.getLatitude() * 1e6),(int)
(location.getLongitude() * 1e6));//獲取當前經緯度
    mapView.getController().animateTo(pt);
//地圖上標記當前位置
    (4)拼車模塊:設置出發地、目的地以及時間區間,點擊拼車方式按鈕發送拼車信息到服務器,其中出發地和目的地的經緯度存儲到位置云平臺進行匹配。服務器進行條件篩選后,返回匹配結果并在客戶端顯示。通過點擊地圖設置地點,獲取經緯度的關鍵代碼如下:
    public boolean onTap(GeoPoint p, MapView mapView) {
//點擊地圖事件監聽
    GeoPoint gpoint = newGeoPoint((int)lat,(int)lon);
//獲取點擊地點經緯度
    編寫好各模塊程序后,需要在工程文件根目錄下的AndroidManifest.xml文件中進行相關設置,才能正常運行代碼[6],其中關鍵權限設置如下:
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>//設置位置服務
    <uses-permission android:name="android.permission.
    INTERNET"></uses-permission>  //設置網絡權限
4 系統功能測試
    將客戶端程序打包成apk應用文件,安裝到客戶端中。在PC端開啟服務器和數據庫服務,登錄客戶端后進入主界面,測試發送從當前位置到南京火車站的搭乘需求到服務器,設置時間區間為9:30~10:30,如圖4所示。測試前,預先向服務器發布了20條各不相同的拼車數據,服務器從這些已有的拼車信息中匹配出2個合適的拼車對象,如圖5所示。

    為了滿足人們對于快捷拼車出行的實際需求,設計開發了基于位置云服務的智能拼車匹配系統及其嵌入式客戶端裝置,利用百度地圖API開發接口,實現了地圖的定位、搜索等基本功能。結合Tomcat服務器與LBS云存儲和檢索技術,能夠迅速完成拼車位置信息的存儲和檢索,為用戶及時地匹配到周圍合適的拼車伙伴。
參考文獻
[1] 王茂福.拼車的發展及其效應[J].中國軟科學,2010(17):54-55.
[2] 韓超,梁泉.Android系統原理及開發要點詳解[M].北京:電子工業出版社,2010.
[3] 劉尚旺,何東健,閆艷.Tomcat與IIS或Apache服務器集 成的應用研究[J].計算機工程與設計,2009,30(10):2541-2546.
[4] 陳菁菁.程序員突擊&mdash;Tomcat原理與Java Web系統開發[M]. 北京:清華大學出版社,2009.
[5] 吳吉義,王中友.程序員突擊&mdash;MySql原理與Web系統開發[M].北京:清華大學出版社,2009.
[6] 何孟翰.Google Android SDK開發實戰演練[M].北京:人民郵電出版社,2012.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
一色屋精品视频在线看| 亚洲每日在线| 欧美好骚综合网| 久久先锋资源| 久久高清一区| 久久成人人人人精品欧| 先锋影音一区二区三区| 亚洲男人av电影| 亚洲一区二区四区| 亚洲在线视频免费观看| 亚洲在线观看免费视频| 亚洲一二三区视频在线观看| 一区二区免费在线视频| 亚洲视频欧美视频| 亚洲网站啪啪| 亚洲欧美经典视频| 欧美亚洲在线播放| 久久精品国产久精国产一老狼| 欧美一级黄色录像| 国产精品看片你懂得| 欧美日韩精品伦理作品在线免费观看| 欧美电影打屁股sp| 一区免费观看| 一本久道久久久| 亚洲免费观看在线视频| 一区二区久久久久| 亚洲欧美国产77777| 欧美亚洲在线| 久久久综合网站| 免费在线亚洲欧美| 欧美精品一区在线发布| 欧美少妇一区| 国产欧美va欧美不卡在线| 国产色婷婷国产综合在线理论片a| 国产一区香蕉久久| 一区在线影院| 亚洲麻豆国产自偷在线| 亚洲网址在线| 久久国产精品久久国产精品| 亚洲日本中文| 亚洲欧美日产图| 久久先锋影音av| 欧美日韩成人激情| 国产精品视频一区二区高潮| 国产一区视频在线观看免费| 亚洲黄色性网站| 国产精品99久久久久久久女警| 亚洲欧美一区二区激情| 久久精品欧美| 亚洲午夜国产成人av电影男同| 欧美一区二区三区另类| 在线播放国产一区中文字幕剧情欧美 | 国产精品亚洲精品| 国产欧美成人| 亚洲国产精品电影| 中文久久精品| 午夜欧美精品久久久久久久| 亚洲欧洲在线播放| 亚洲午夜国产一区99re久久 | 久久夜色精品国产噜噜av| 欧美激情一区二区三区四区| 国产精品免费一区二区三区观看| 黄色成人av网| 99综合在线| 久久国产精品黑丝| 亚洲图片你懂的| 榴莲视频成人在线观看| 国产精品成人观看视频国产奇米| 国产一区高清视频| 99视频精品全部免费在线| 久久国产欧美精品| 亚洲综合色网站| 欧美精品v国产精品v日韩精品| 日韩网站在线| 欧美伊人久久久久久午夜久久久久| 欧美不卡视频一区发布| 国产精品综合久久久| 亚洲精品久久久一区二区三区| 性亚洲最疯狂xxxx高清| 日韩天堂在线观看| 久久看片网站| 国产精品稀缺呦系列在线| 亚洲国产一区在线| 欧美亚洲一区二区在线观看| 一区二区三区四区五区精品| 美女视频黄 久久| 国产视频一区免费看| 在线亚洲电影| 亚洲最新合集| 免费日本视频一区| 国产一区亚洲一区| 亚洲欧美成aⅴ人在线观看| 一区二区激情视频| 免费视频久久| 黄色av一区| 欧美在线国产| 久久福利资源站| 国产精品一区二区a| 99这里只有精品| 99国产精品国产精品毛片| 久久久久综合| 国产一区成人| 欧美一区观看| 久久激情五月婷婷| 国产日本欧美一区二区三区| 西瓜成人精品人成网站| 一区二区三区 在线观看视频| 老色鬼精品视频在线观看播放| 国产乱肥老妇国产一区二| 一本大道久久a久久精品综合| 日韩视频一区二区在线观看| 巨乳诱惑日韩免费av| 国产专区精品视频| 午夜视频一区| 久久精品九九| 国产伪娘ts一区 | 一区二区三区色| 中国成人在线视频| 欧美日韩亚洲一区二区三区在线观看 | 亚洲欧美日产图| 亚洲午夜激情在线| 欧美性大战久久久久久久蜜臀| 亚洲国产一区二区三区高清| 日韩亚洲欧美中文三级| 99精品欧美一区| 欧美日韩大片一区二区三区| 亚洲三级电影全部在线观看高清| 一本色道久久88亚洲综合88| 欧美伊人久久久久久久久影院| 国产精品久久一卡二卡| 这里只有精品视频| 亚洲免费在线电影| 国产精品你懂的| 欧美一区二视频| 欧美 亚欧 日韩视频在线| 亚洲国产天堂久久综合网| 一本久道久久综合狠狠爱| 欧美午夜一区二区| 午夜精品久久久久久久久久久久久 | 国产一区二区三区在线观看免费| 久久激情视频| 欧美精品日韩精品| 中文精品一区二区三区| 久久国产精品久久久久久久久久| 狠狠色狠狠色综合| 99在线精品观看| 国产精品一区二区女厕厕| 久久精品理论片| 欧美日韩国产三级| 亚洲欧美日本另类| 欧美jjzz| 亚洲一区二区在| 国产精品第三页| 亚洲第一毛片| 亚洲在线第一页| 狠狠色狠狠色综合系列| 日韩一区二区高清| 国产欧美va欧美va香蕉在| 91久久精品国产| 欧美性猛交xxxx乱大交退制版| 欧美亚洲综合在线| 欧美日本免费| 欧美一区二区高清| 欧美精品自拍| 欧美在现视频| 欧美日韩精品福利| 欧美亚洲视频在线观看| 欧美国产在线电影| 午夜精品www| 欧美日韩国产精品专区| 亚洲欧美日韩在线一区| 欧美国产欧美综合 | 欧美日韩理论| 久久精品国产第一区二区三区| 欧美日韩一区国产| 国产一区二区三区av电影 | 麻豆精品在线观看| 在线亚洲美日韩| 免费成人你懂的| 亚洲综合电影一区二区三区| 免费亚洲婷婷| 亚洲综合欧美日韩| 欧美精品偷拍| 久久精品国产v日韩v亚洲| 国产精品成av人在线视午夜片| 亚洲欧洲精品一区二区三区不卡| 国产精品久久久| 亚洲精品中文字幕在线| 国内久久婷婷综合| 亚洲免费小视频| 91久久精品一区二区三区| 久久久精彩视频| 亚洲一区二区伦理| 欧美美女视频| 亚洲国产另类 国产精品国产免费| 国产伦精品一区二区三区在线观看| 夜夜爽av福利精品导航 | 久久成人综合网| 一区二区三区日韩欧美精品| 欧美黄色一级视频|