西北大學信科院開題報告基于手機的校園導航系統(tǒng).doc
《西北大學信科院開題報告基于手機的校園導航系統(tǒng).doc》由會員分享,可在線閱讀,更多相關《西北大學信科院開題報告基于手機的校園導航系統(tǒng).doc(10頁珍藏版)》請在裝配圖網上搜索。
西北大學本科畢業(yè)論文(設計)開題報告登記表 學生姓名 劉曉旭 性別 男 學號 2011117147 學 院 信息科學與技術學院 年級 2011 專業(yè) 電子信息工程 指導教師 姓 名 劉成 指導教師 專業(yè)技術職務 工程師 開題報告日期 2015.3.3 論文(設計)題 目 基于手機的校園導航系統(tǒng) 開 題 報 告 內 容 選題來源 1.教師指定(√)2.教師課題()3.創(chuàng)新基金項目()4.自選() 論文(設計)選題的背景與意義、理論與實證準備、擬解決的問題、研究(設計)方法與技術路線 1、背景與意義 高校的逐年擴建以及學生的逐漸增加,令來訪學校的人員越來越多,但高校的面積一般都很大,各個院系和機構分布錯綜復雜,來訪者需要經過一番周折才能順利抵達目的地。而且高校一般很少利用紙質的地圖對來訪者進行引導,因此,建立具有校園信息查詢,智能導航功能的手機應用,對提高高?,F(xiàn)代化建設以及人性化服務具有很好的價值。 隨著移動技術的迅猛發(fā)展,手機早已不止當初的通話功能了,它現(xiàn)已成為集通信、電腦為一體移動計算工具,人們對手機所賦予的功能也越來越多,而傳統(tǒng)電腦中的導航系統(tǒng)用安卓技術來實現(xiàn)早已成為可能。導航軟件在智能手機中的應用已經成為熱點之一,越來越多的App被安裝到手機上,給人們的生活帶來了極大的便利。 如今全球定位系統(tǒng)較最初有了很大的飛躍,定位精度越來越準確,基本能夠滿足大范圍的導航服務,然而基于GPS的導航對于周圍環(huán)境要求比較嚴格,如若沒有添加道路信息和建筑物的標注,則在局部小環(huán)境下,導航系統(tǒng)發(fā)揮的作用就會相對較小。而該系統(tǒng)可以在GPS的基礎上實現(xiàn)對校園環(huán)境的搜索和導航,以提更加便利的服務。 2、 研究內容和技術路線 (1)精確定位的實現(xiàn) 手機定位是指通過特定的定位技術來獲取移動手機或中斷用戶的位置信息(如經緯度坐標),在電子地圖上標出被定位對象的位置的技術或者服務。定位技術目前來說主要有三種,一種是基于GPS的定位,一種是基于移動運營商的基站的定位,還有一種是基于wifi熱點的定位。 1 基于GPS的定位:是利用手機上的GPS定位模塊將自己的位置信號發(fā)送到定位后臺來實現(xiàn)手機定位的。GPS定位系統(tǒng)是以21+3顆衛(wèi)星分布模式為基礎,向全球各地提供經緯度,高度,速度等信息的一種無線電導航定位系統(tǒng)。它由三部分組成: l 空間部分,由21顆主衛(wèi)星和3顆備用衛(wèi)星組成,分布在6個軌道平面,基本可覆蓋全球所有位置。 l 地面控制部分,由主控站、地面天線、監(jiān)測站以及通訊輔助系統(tǒng)所組成。 l 用戶裝置部分,也就是擁有GPS模塊的手機或導航儀。 利用衛(wèi)星傳送過來的參數(shù)加之計算就可以確定用戶的位置了。 2 基于移動運營商基站的定位:這種方式通過移動運商的網絡(如GSM網)獲取移動終端用戶的經緯度坐標,在電子地圖平臺的支持下,為用戶提供相應服務。它的大致原理是:手機測量在不同基站的下行導頻信號,得到不同那個基站下行導頻的到達時刻或者到達時間差,根據(jù)該測量結果并結合基站的坐標,一般采用三角公式估算法,就能計算出移動電話的位置。而實際上該算法需要考慮更過的基站以實現(xiàn)更為精確的定位。 3 基于wifi熱點的定位:如果智能手機連接上了某個WiFi熱點,那么就可以調用數(shù)據(jù)庫中附近所有熱點的地理位置信息,而服務器會參考每個熱點的信號強弱來計算出設備的大致地理信息。其原理大致分為以下幾步: l 每一個無限AP都有全球唯一的MAC地址,并且短時間內無限AP不會移動。 l 移動設備在開啟WiFi的情況下,即可掃描并收集周圍的無線接入點信號,無論是否加密,是否已經連接,甚至信號強度不足都可以顯示在無線信號列表中,都可以獲取到無線接入點廣播出來的MAC地址。 l 設備將這些能夠標識AP的數(shù)據(jù)發(fā)送到位置服務器,服務器檢索出每一個AP的地理位置,并結合每個信號的強弱程度,計算出設備的地理位置信息并返回到用戶設備。 l 而位置服務商要不斷更新、補充自己的數(shù)據(jù)庫,以保證數(shù)據(jù)的準確性。 (2)地圖數(shù)據(jù)的獲取 百度地圖的API是基于在Android2.1系統(tǒng)平臺之上,對開發(fā)者免費開放的應用程序接口,它包括HTTP服務接口,Android API 等開發(fā)工具,可以實現(xiàn)顯示基本地圖,導航,定位,離線地圖,數(shù)據(jù)存儲等功能。它可以應用于各種終端,開發(fā)者可以用此接口實現(xiàn)自己定制的地圖App。在百度提供的Sdk4.0地圖開發(fā)包中包含了各種接口,用戶可以調用任意的函數(shù)方法來實現(xiàn)相應的功能,比如用戶可以利用setSatellite(boolean)來顯示衛(wèi)星圖,setCenter(latitude,longitude)來設置地圖中心點等。百度地圖開發(fā)包所提供的庫能夠很方便的實現(xiàn)很多函數(shù)。 (3)路徑規(guī)劃 路徑規(guī)劃是指在具有障礙物的環(huán)境中,按照一定的評價標準,尋找一條從起始狀態(tài)到目標狀態(tài)的無碰撞路徑,在本系統(tǒng)中,通過百度地圖,結合路網信息和建筑物信息,應用導航中所潛入的算法,來實現(xiàn)從所處位置到目的地的指引。目前應用較多的有以下幾種路徑規(guī)劃算法: 1 Dijkstra算法:它是從一個頂點到其余各項點的最短路徑算法,解決的是有向圖中最短路徑問題,它的特點就是一起始點為中心點向外層層擴展,直到擴展到終點為止。它的主要特點是每次迭代時選擇的下一個頂點時標記點之外距離源點最近的頂點,由于該算法主要計算從源點到其他所有點的最短路徑,所以算法效率較低。 Dijkstra算法目前已經廣泛應用于顯示現(xiàn)實生活中,特別是在路徑規(guī)劃和導航應用上。而伴隨著城市越來越大,交通路網信息也越來越復雜,這使得道路交通系統(tǒng)變得更復雜,相應的數(shù)據(jù)量也越來越大。 優(yōu)點:總是能夠為用戶找到一條最短路徑。 缺點:數(shù)據(jù)量大,效率較低。 2 A*算法:它是一種在平面上存在多個節(jié)點的路徑,求出最低通過成本的算法,也是靜態(tài)路網中求解最短最有效的直接搜索方法。其公式表示為:,也就是說其估價值與實際值越接近,估價函數(shù)取得就越好。 其中,是從初始點經由節(jié)點n到目標點的估價函數(shù),是在狀態(tài)空間中從初始節(jié)點到n節(jié)點的實際代價,是從n到目標節(jié)點最佳路徑的估計代價。保證找到最短路徑條件,關鍵在于估價函數(shù)的選取,估價值到目標節(jié)點的距離實際值,此時,搜索范圍的點數(shù)多,搜索范圍大,效率低。如果估價值大于實際值,搜索的點數(shù)少,效率高,但不能保證找到最優(yōu)解。 優(yōu)點:該算法作為啟發(fā)式搜索方式,搜索效率比傳統(tǒng)的Dijkstra效率快。 缺點:隨著數(shù)據(jù)量的加大搜索,它自身的效率會變得越來越低,而且在障礙陷阱中易陷入死循環(huán),不能同時進行多個節(jié)點的最優(yōu)路徑搜索。 3 距離矢量算法:它是Arpanet網絡上最早使用的路由算法,他的基本思想如下:每個路由器維護一個距離矢量表,然后通過相鄰路由器之間的距離矢量通告進行距離矢量表的更新。每個距離矢量表包括兩部分:達到目的結合點的最佳輸出線路,和達到目的結合點所需要的時間或者距離,通信子網中的其他每個路由器都在表中占據(jù)一個表項,并作為該表項的索引。每個一段時間,路由器回想所有鄰居節(jié)點發(fā)送它到每個目的節(jié)點的距離表,同時它也接受每個鄰居節(jié)點發(fā)來的距離表。這樣以此類推,經過一段時間后便可將網絡中各路由器所獲得的距離矢量信息在各路由器上統(tǒng)一起來,這樣個路由器只需要查看這個距離矢量表就離異為不同來源分組找到一條最佳的路由。該算法多用于路由動態(tài)協(xié)議。 在分析本系統(tǒng)的系統(tǒng)需求后,認為校園導航所需算法滿足以下幾點: l 校園路網和建筑物信息相對位于外界交通信息來說數(shù)據(jù)量小很多 l 需要對多個節(jié)點進行同時搜索 l 該算法所需運算量不要太大,適合在安卓平臺上進行計算并實現(xiàn)路徑導航 綜合以上三點,該系統(tǒng)擬采用Dijkstra算法。 (4) 人機交互界面 自從智能手機問世以來,人們的生活越來越離不開手機了,手機變成了一個人們隨身攜帶、和其生活方式緊密聯(lián)系著的產品,因此手機UI的發(fā)展對吸引用戶來說有著很大的意義,而人機交互界面則更是直接影響了手機用戶的使用體驗,雖然影響手機用戶體驗各方面因素所涉及的實現(xiàn)技術不同,但是用戶直接的溝通渠道卻是手機的人機交互界面。用戶體驗的范圍廣泛來說涵蓋了手機和通訊網絡特性、應用程序的功能、信息的可視化、瀏覽菜單的友好性、功能選用的便捷程度,以及設備在使用時的感覺。 目前,現(xiàn)有導航的界面已經在當前科學技術發(fā)展層次上已經做得很完善了,所以對本次的校園路徑導航系統(tǒng)進行了模塊規(guī)劃,大致分為如下幾個功能: 1 定位功能:時刻了解自己所處地理位置以及周邊環(huán)境,由于百度地圖提供的sdk庫,我們只需調用相關函數(shù)即可。 2 衛(wèi)星圖切換功能:由于道路更新以及建筑物不斷在建設,百度地圖所提供的數(shù)據(jù)肯定會與周圍建筑有所出入,此時若將平面地圖切換到衛(wèi)星地圖,用戶參照周圍建筑物就能更加清晰地了解自己所處的位置。 3 檢索功能:添加文本輸入框,用戶輸入目的地,如:西北大學南校區(qū)圖書館,點擊查詢,程序會在數(shù)據(jù)庫中尋找相關地址,若有名稱相同的地方,用戶可根據(jù)周圍環(huán)境進行選擇即可。 4 導航系統(tǒng)功能:在定位和目的地查詢的基礎上,添加此項功能,即可在當前圖層上繪制出前往的步行路線。 以上為此次校園路徑導航的所需要的基本功能模塊,在同一個屏 幕下,盡可能地實現(xiàn)界面清爽,操作簡單的目的。 (5) 數(shù)據(jù)存儲 所有應用程序必然伴隨著數(shù)據(jù)的輸入、輸出、安卓系統(tǒng)也不例外,應用程序參數(shù)的設置、程序運行狀態(tài)數(shù)據(jù)這些都需要保存到外部存儲器上,這樣系統(tǒng)關機后數(shù)據(jù)才不會丟失。android系統(tǒng)提供了一些專本的IO API,通過這些API可以更有效地進行輸入、輸出。如果應用程序只有少量數(shù)據(jù)需要保存,那么使用普通文件就可以了;但是如果應用程序中有大量的數(shù)據(jù)需要存儲、訪問,就需要借助數(shù)據(jù)庫了,android系統(tǒng)內置了SQLite數(shù)據(jù)庫,它是一個真正輕量級的數(shù)據(jù)庫,它沒有后臺進程,整個數(shù)據(jù)庫就對應一個文件,這樣就可以非常方便的在不同設備間進行移植,android不僅內置了SQLite數(shù)據(jù)庫,而且為訪問SQLite數(shù)據(jù)庫提供了大量便捷的API。 (6) 開發(fā)平臺:由于本系統(tǒng)是基于安卓的校園路徑導航,所以其開發(fā)環(huán)境是以安卓應用層為中心進行開發(fā)。而安卓應用程序是由Java語言寫成的,是建立在應用程序框架之上,所以安卓編程就是面向應用程序框架API編程,而Java作為一種軟件編程語言,是一種可以撰寫跨平臺應用軟件的面向對象的程序設計語言,廣泛應用于個人電腦,數(shù)據(jù)中心,移動電話和互聯(lián)網。 Eclipse作為一個開放源代碼、基于Java的可擴展開發(fā)平臺,就其本身而言,它只是一個框架和一組服務,用于通過插件組件構建其開發(fā)環(huán)境。由于eclipse是一個開放源碼項目,任何人都可以免費得到,并可以在此基礎上開發(fā)各自的插件,而android也作為一個開源平臺,和eclipse相得益彰。 對于eclise來說,它集成的DDMS透視圖能很好的監(jiān)控和控制模擬器,對于沒有安卓手機的開發(fā)者來說,能在該模擬器上很方便地開發(fā)大部分安卓程序。 3、技術難點與擬解決的方案 本次設計基于java編程語言,在開源軟件eclipse上實現(xiàn)android開發(fā),采用了自底向上方法設計,運用java以及android開發(fā)知識。對于用戶界面的設計以及百度地圖的導入、定位、檢索,這四個模塊已經完成并實現(xiàn)了相應的功能,而其中對地圖的修改和對路網信息、建筑物的提取為本次系統(tǒng)設計的難點。 你解決的方案: 方案一:注冊百度商戶,對地圖上不完善的道路信息和建筑物進行標注,實現(xiàn)校園建筑物的全部覆蓋,再用百度地圖中自帶的導航算法進行導航。 方案二:建立數(shù)據(jù)庫,對地圖上標注信息不全的地方進行數(shù)據(jù)重寫或者覆蓋,建立新的地理位置圖層,然后再專門針對數(shù)據(jù)庫進行算法的編寫與實現(xiàn)。 方案三:設置服務器,建立一個獨立的服務器用來響應用戶的命令,向其它服務器傳輸請求,并返回結果給用戶。 方案一工作量大,如果原先百度地圖上沒有進行標注,則需要一個一個進行標注。并且如果采用百度地圖自帶的算法進行路徑導航的話,其結果并不一定能達到本次系統(tǒng)所預期的最優(yōu)度。 方法三的只要用戶連接網絡,一切的定位導航部分便可以交給服務器去做,省時省力,但是卻需要消耗用戶流量等移動資費。并在用戶離線狀態(tài)下無法使用該應用。 方法二能夠使用離線地圖,在離線情況下也可以進行導航和定位,并且相對于搭建服務器,以及網絡編程來說,其開發(fā)難度要相對較小。故在安卓手機軟硬件限制下,擬采取方案二。 4、研究(設計)方法與技術路線 系統(tǒng)總體結構有:UI界面設計部分,數(shù)據(jù)存儲設計部分,Dijkstra算法實現(xiàn)部分。而數(shù)據(jù)存儲設計部分和Dijkstra算法實現(xiàn)部分,是實現(xiàn)校園手機導航的核心部分。 UI界面設計部分:包括地圖界面,定位界面,檢索目的地界面,導航界面以及衛(wèi)星圖切換界面。 數(shù)據(jù)存儲部分:利用android系統(tǒng)自己集成的輕量級的數(shù)據(jù)庫SQLite,對目標進行標注,存儲,讀取,定時讀取GPS數(shù)據(jù)以獲得用戶目前所在的位置信息,并將其保存在數(shù)據(jù)庫中,用戶也可以選擇其他目標信息。 Dijkstra算法實現(xiàn)部分:將地圖中的建筑坐標抽象成一個一個的二維點,對其進行最短路徑規(guī)劃,完成之后再調用到圖層上,并顯示出來。 下面的框圖表示研究內容: 總系統(tǒng) 地圖圖層界面 定位 檢索 衛(wèi)星/ 導航 功能 功能 地圖 功能 切換 對數(shù)據(jù)的存儲和讀寫 Dijkstra算法 該校園路徑導航系統(tǒng)包括以上這五大部分,其中 (1) UI界面分布如下: 其中作為整個導航界面的北京圖層。 (2) 定位與檢索部分:在UI主界面的基礎上添加定位和檢索按鈕,分別為這兩個按鈕設置監(jiān)聽: l 獲取普通界面組件,也就是被監(jiān)聽的對象,在此系統(tǒng)中為按鈕,點擊按鈕觸發(fā)監(jiān)聽事件 l 實現(xiàn)事件監(jiān)聽類,該監(jiān)聽類是一個特殊的Java類,必須實現(xiàn)一個OnCLicklistener接口 l 調用事件源的SetOnClcikListner方法將事件監(jiān)聽器對象注冊給 普通組件(也就是事件源,即點擊按鈕) l 在實現(xiàn)時間監(jiān)聽類的過程中,即可調用LocationClient類,以及MKsearch類實現(xiàn)這兩個方法。 (3) 路徑導航部分:同定位檢索功能的實現(xiàn)一樣,路徑導航部分也是在地圖圖層的基礎上進行設計的,其原理與定位、檢索的原理一樣,同樣是設計監(jiān)聽器借口,并調用導航類,以實現(xiàn)不加算法的導航。 (4)數(shù)據(jù)存儲部分:android提供了SQLiteDataBase代表一個數(shù)據(jù)庫(底層就是一個數(shù)據(jù)庫文件),一旦應用程序獲得了代表指定數(shù)據(jù)庫的SQLiteDataBase對象,接下來就可以通過SQLiteDataBase對象來管理,操作數(shù)據(jù)庫了。我們可以在數(shù)據(jù)庫中按照一定的規(guī)則建造數(shù)據(jù)表,以實現(xiàn)對周圍路網和建筑物的管理和分類。 (5)算法實現(xiàn)部分:由于該系統(tǒng)采用了dijkstra算法,且且該算法目前在一定的范圍內已經比較成熟,故,將數(shù)據(jù)庫表格中的數(shù)據(jù)進行制作成一個二維數(shù)組,用來表示路網信息和建筑物信息,然后應用最短路徑算法,對其進行計算,并利用畫筆繪制出相應的路線,以達到校園導航的目的。 軟件流程: 1 首先在程序中調用setcenter(latitute,longitude)將西北大學的經緯度作為參數(shù)傳遞給方法,這樣在打開界面后就可以直接讓主視圖定位在西北大學上方。 2 然后點擊“我在哪”按鈕,啟動ButtonListener監(jiān)聽器,觸發(fā)事件發(fā)生后,程序迅速響應,開始進行定位,將自己所處位置信息以文本的方式顯示在地圖上。 3 其次在地圖上放的文本控件中輸入所需要前往的目的地,點擊“查詢”按鈕,再次設置監(jiān)聽,啟動監(jiān)聽器,程序迅速響應,定位到目的地位置上空,并以紅色標注,用來確定目的地。 4 點擊“導航”按鈕,觸發(fā)監(jiān)聽器,讓程序后臺的應用最短路徑算法進行計算,并在地圖圖層上開始描繪線路。其中,該算法需要將校園環(huán)境與周圍建筑物考慮其中,使規(guī)劃的路線具有實際應用價值。 5 如若對周邊環(huán)境不是很熟悉,可以點擊地圖下方的的“地圖/衛(wèi)星”按鈕,用來切換衛(wèi)星地圖視角,對比周圍建筑物,使得自己能夠更加清楚地了解自己所在位置。 論文(設計)寫作提綱 中文摘要 英文摘要 第一章 緒論 1.1 論文背景及意義 1.2 主要工作 第二章 校園路徑導航系統(tǒng)設計概述 2.1 GPS以及路徑導航系統(tǒng)簡介 2.2 BaiduMap的選擇 2.3 安卓開發(fā)環(huán)境搭建 第三章 校園路徑導航設計方案 3.1 系統(tǒng)功能模塊劃分 3.2 系統(tǒng)構架設計 3.3 用戶界面設計 第4章 數(shù)據(jù)存儲設計 4.1 數(shù)據(jù)庫存儲原理 4.2 數(shù)據(jù)庫存儲實現(xiàn) 第5章 dijkstra算法 5.1 dijkstra算法原理 5.2 dijkstra算法在Android中的實現(xiàn) 第六章 系統(tǒng)子模塊的設計與實現(xiàn) 6.1 基礎地圖模塊的實現(xiàn) 6.2 定位功能的實現(xiàn) 6.3 輸入目的地功能的實現(xiàn) 6.4 導航功能的實現(xiàn) 第七章 設計總結 附錄 工作步驟與時間安排 一、3月3日—3月10日:畢業(yè)設計初期,收集資料,閱讀文獻,對設計課題的背景、意義、設計思路形成一個整體的概念和框架,撰寫開題報告。 二、3月9日—4月9日:系統(tǒng)整體及各模塊分析,完成各個子模塊的設計與實現(xiàn),并將各子模塊連接成系統(tǒng),實現(xiàn)系統(tǒng)頂層設計。并將生成的.apk文件下載到安卓真機上進行整體調試。 三、4月10日—4月15日:進行匯總整理資料,撰寫論文并認真修改完善論文,最終定稿。 指導教師 意 見 指導教師簽名: 年 月 日 注:此表由學生填寫后交指導教師簽署意見,并交院系教務辦保存,否則不得開題;此表將作為畢業(yè)論文(設計)最終評分的依據(jù)。- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 西北大學 信科院 開題 報告 基于 手機 校園 導航系統(tǒng)
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://m.jqnhouse.com/p-9341224.html