《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于位置云技術的智能拼車匹配系統設計
基于位置云技術的智能拼車匹配系統設計
來源:電子技術應用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亚洲国产精品_日韩亚洲一区二区
一区二区三区精品久久久| 亚洲午夜免费福利视频| 欧美精品一二三| 久久久久青草大香线综合精品| 亚洲免费在线观看视频| 一区二区欧美日韩视频| 99re这里只有精品6| 亚洲第一主播视频| 午夜精品一区二区三区在线播放| 99精品欧美一区二区三区| 在线观看91精品国产麻豆| 国产主播一区二区| 国产欧美日韩不卡免费| 欧美日韩专区在线| 欧美—级a级欧美特级ar全黄| 欧美国产日韩视频| 另类亚洲自拍| 久久久噜久噜久久综合| 香蕉乱码成人久久天堂爱免费| 亚洲自拍偷拍麻豆| 亚洲免费视频网站| 欧美一级视频一区二区| 先锋影音久久| 久久国产精品99久久久久久老狼 | 一本大道久久a久久精二百| 亚洲精品视频在线| 99视频精品全国免费| 夜夜嗨av一区二区三区中文字幕| 宅男精品视频| 午夜精品福利在线观看| 欧美诱惑福利视频| 久久亚洲视频| 欧美激情中文字幕乱码免费| 欧美日韩国产探花| 在线观看不卡av| 亚洲一区二区三区四区中文| 亚洲深夜激情| 欧美一区二区三区精品| 亚洲狠狠婷婷| 一区二区三区你懂的| 亚洲女同在线| 久久久欧美精品| 欧美精品18videos性欧美| 欧美性猛交xxxx乱大交退制版 | 亚洲天堂激情| 性色一区二区| 噜噜噜91成人网| 欧美日韩视频第一区| 国产美女精品视频| 1024精品一区二区三区| 99在线热播精品免费| 午夜久久久久久| 亚洲国产一区视频| 亚洲天堂第二页| 久久久夜精品| 欧美日韩中文在线观看| 国产亚洲第一区| 亚洲精品一区久久久久久| 亚洲欧美韩国| 亚洲精品在线视频| 欧美一区二区私人影院日本| 免费在线亚洲欧美| 国产精品国产三级国产aⅴ浪潮 | 国产精品99久久久久久久女警| 欧美中文字幕视频在线观看| 夜夜嗨av一区二区三区网站四季av| 欧美亚洲免费电影| 欧美精品日韩| 国产亚洲精品美女| 亚洲精选视频在线| 欧美在现视频| 亚洲一区二区免费看| 久久亚洲欧美国产精品乐播| 国产精品久久久久国产精品日日 | 亚洲一区二区高清| 日韩视频永久免费观看| 久久精品亚洲乱码伦伦中文| 欧美日韩另类字幕中文| 黄页网站一区| 亚洲一级一区| 一区二区免费在线观看| 美女在线一区二区| 国产精自产拍久久久久久| 日韩视频免费| 亚洲人在线视频| 久久精品一区二区三区不卡牛牛 | 亚洲区免费影片| 欧美在线免费观看| 欧美三级小说| 亚洲国产精品久久久久久女王| 午夜在线一区二区| 亚洲专区一区| 欧美剧在线观看| 在线看欧美日韩| 欧美在线视频不卡| 亚洲欧美网站| 国产精品vip| 日韩亚洲国产精品| 亚洲日本va午夜在线影院| 久久久久.com| 国产欧美一区二区三区视频| 一区二区免费在线观看| 99re66热这里只有精品4| 美腿丝袜亚洲色图| 国产亚洲午夜| 亚洲欧美日韩国产一区| 亚洲免费在线视频一区 二区| 欧美日韩免费高清一区色橹橹| 在线看日韩av| 亚洲国产精品久久久久婷婷884| 欧美中在线观看| 国产精品亚洲成人| 亚洲婷婷综合久久一本伊一区| 亚洲无吗在线| 欧美日韩一二区| 日韩一级大片在线| 99精品欧美一区| 欧美伦理91| 日韩一本二本av| 一区二区三区色| 欧美日韩国产丝袜另类| 亚洲精品中文在线| 一区二区三区高清在线观看| 欧美日韩国产精品自在自线| 亚洲人成人一区二区在线观看| 日韩一本二本av| 欧美精品久久久久久久| 亚洲精品一区中文| 亚洲一区二区成人在线观看| 国产精品福利在线观看| 亚洲午夜羞羞片| 性欧美长视频| 韩国精品在线观看| 亚洲欧洲日本国产| 欧美国产成人在线| 日韩视频在线观看免费| 亚洲综合色在线| 国产精品无码专区在线观看| 午夜精品久久久久久久99水蜜桃 | 欧美三级日本三级少妇99| 亚洲视频观看| 欧美一区二区免费| 国产一区二区三区久久悠悠色av| 久久精品99国产精品日本| 麻豆91精品91久久久的内涵| 亚洲国产精品99久久久久久久久| 日韩手机在线导航| 欧美性jizz18性欧美| 午夜精品久久久久久久久| 久久人人爽人人爽爽久久| 亚洲国产精品一区二区第一页 | 在线视频亚洲| 久久福利影视| 亚洲高清激情| 亚洲一区二区三区精品在线| 国产伦精品一区| 亚洲高清三级视频| 欧美精品一区在线播放| 亚洲丝袜av一区| 久久久久天天天天| 亚洲精品国产精品国自产观看| 亚洲综合999| 黄页网站一区| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 欧美视频日韩视频在线观看| 一区二区欧美国产| 久久精视频免费在线久久完整在线看| 国产日韩欧美一二三区| 亚洲激情在线播放| 国产精品国色综合久久| 性视频1819p久久| 欧美激情日韩| 亚洲欧美一区二区在线观看| 欧美国产精品专区| 亚洲欧美不卡| 欧美顶级少妇做爰| 亚洲男人天堂2024| 欧美福利精品| 亚洲欧美精品| 欧美日本高清一区| 欧美伊人精品成人久久综合97| 欧美日韩国产综合久久| 欧美伊久线香蕉线新在线| 欧美日韩精品二区第二页| 性欧美18~19sex高清播放| 欧美精品精品一区| 欧美一级视频精品观看| 欧美日韩一区二区视频在线| 久久精品理论片| 欧美视频精品在线| 亚洲欧洲视频| 国产精品爽爽ⅴa在线观看| 亚洲美女淫视频| 国产亚洲精品aa| 亚洲午夜精品一区二区三区他趣| 精品成人一区二区三区四区| 午夜视频久久久久久| 亚洲精品在线免费| 久久综合99re88久久爱| 亚洲尤物在线|