0 引言
隨著汽車等各種車輛交通工具的普及,,車輛導(dǎo)航設(shè)備的需求也變得日益旺盛。作為車載設(shè)備.不僅要有可靠的性能,,而且需要具有便攜,、低功耗和低價(jià)格等特點(diǎn)。而采用基于ARM微處理器的嵌入式系統(tǒng)與GPS模塊相配合的GPS導(dǎo)航終端機(jī)的設(shè)計(jì)方案,,可以很好的滿足這一系統(tǒng)需求,。為此,本文介紹了一種利用ARM9開發(fā)板和GPS模塊實(shí)現(xiàn)GPS導(dǎo)航功能的終端機(jī)的軟硬件結(jié)構(gòu)和設(shè)計(jì)方法,。
1 GPS導(dǎo)航系統(tǒng)結(jié)構(gòu)
本文所介紹的GPS全球定位導(dǎo)航系統(tǒng)按功能可分為嵌入式主控模塊,、GPS模塊、顯示模塊,、擴(kuò)展模塊及供電模塊等五大部分,。
嵌入式主控模塊基于S3C2440處理器,主要負(fù)責(zé)對(duì)GPS導(dǎo)航模塊數(shù)據(jù)的響應(yīng),、處理和控制,。在硬件上,主控模塊就是一個(gè)嵌入式開發(fā)板,,包括觸摸LCD接口電路,、SD卡接口電路、FLASH,、SDRAM等,。而在軟件上,主控模塊上應(yīng)當(dāng)運(yùn)行嵌入式Linux系統(tǒng),。而嵌入式Linux操作系統(tǒng)的主要作用是管理程序模塊進(jìn)程并調(diào)度進(jìn)程等,。
GPS模塊主要用于接收導(dǎo)航衛(wèi)星數(shù)據(jù),并以特定的格式發(fā)送給主控模塊,。顯示模塊可選用3.5寸TFT帶觸摸屏LCD,,主要用于與用戶進(jìn)行交互。擴(kuò)展模塊主要指的是SD卡,。供電模塊主要為系統(tǒng)正常工作提供電源,。圖1所示是該系統(tǒng)的結(jié)構(gòu)圖。
2 GPS數(shù)據(jù)的提取
GR-87型GPS模塊的輸出語句遵循NMEA-0183標(biāo)準(zhǔn),。該標(biāo)準(zhǔn)的語句都是以“$”開始,,以
3 導(dǎo)航地圖的實(shí)現(xiàn)
在獲得了經(jīng)緯度等定位信息之后,還需要將它們直觀的顯示在電子地圖或其它顯示媒體上,,這樣才能真正起到導(dǎo)航的作用,。要想將其準(zhǔn)確的顯示在電子地圖上,就需要用一定的算法進(jìn)行轉(zhuǎn)化,,即地圖匹配算法,。
一般來說,地圖匹配的基本思路是通過車輛的GPS軌跡與地圖上矢量化的路段對(duì)象進(jìn)行匹配,,從而尋找當(dāng)前所行進(jìn)的道路,,并將當(dāng)前的GPS定位點(diǎn)投影到道路上。
地圖匹配的關(guān)鍵是確定匹配點(diǎn),,設(shè)計(jì)時(shí)可以用投影法來尋找匹配點(diǎn),。投影法的基本思路是依據(jù)點(diǎn)到直線的距離來確定最小的值為投影的匹配點(diǎn),并用最鄰近法進(jìn)行處理,,然后通過設(shè)置閾值來濾掉錯(cuò)誤匹配點(diǎn),,得到初步結(jié)果,從而完成點(diǎn)到線的匹配,。
具體的實(shí)現(xiàn)方法是先預(yù)處理道路層,再將道路轉(zhuǎn)換為折線段,,找到當(dāng)前道路,,然后把當(dāng)前定位點(diǎn)投影到道路上,再找到離定位點(diǎn)最近的公路圖層中的一條線段,,之后再計(jì)算得到點(diǎn)到線上距離最短的點(diǎn),,最后查找各層中在誤差范圍之內(nèi)的道路,。
其算法的基本流程代碼如下:
導(dǎo)航地圖的實(shí)現(xiàn)可以采用嵌入式圖形界面工具Qt embedded來實(shí)現(xiàn)。該圖形界面為人機(jī)交互界面,,用戶可以通過屏幕來了解導(dǎo)航信息,,也可以直接操作觸摸屏來操作系統(tǒng),如地圖的縮放,、查看定位信息等,。
4 結(jié)束語
由于ARM處理器具有低功耗、高性能等特點(diǎn),,因此可以廣泛用于各種便攜式電子產(chǎn)品中,。本設(shè)計(jì)在現(xiàn)有的電子產(chǎn)品基礎(chǔ)上,通過外接GPS模塊來擴(kuò)展GPS導(dǎo)航功能,,可為用戶在節(jié)省費(fèi)用的同時(shí)又不損失太多的便攜性,。為此,作者希望使用ARM開發(fā)板和GPS模塊相結(jié)合來實(shí)現(xiàn)GPS導(dǎo)航功能的方法,,可以為智能設(shè)備擴(kuò)展GPS功能提供一個(gè)參考,。