崔崴
摘要:GPS是英文Global Positioning System(全球定位系統(tǒng))的簡稱。由于GPS技術具有全天候,高精度和自動測量功能,作為先進的測量工具和新的生產力,已被納入國家經濟建設,國防建設和社會發(fā)展的各個領域。本次設計以單片機STC89C52為核心,采用GPS模塊(SiRF Star III),LCD1602液晶顯示屏等芯片,利用GPS模塊與單片機串口通訊原理,實現了GPS信息的提取、顯示。本設計精確度高,體積小,可連續(xù)導航,可用于自駕車出游,出租車定位等領域。
1.引言
GPS是全球定位系統(tǒng)(Global Positioning System)的簡稱,它是一種基于衛(wèi)星形式的定位系統(tǒng),其目的是獲取目標位置的地理坐標信息、時間信息以實現最終的位置鎖定。如今它廣泛用于現代測量以及建筑建設,也更多的用于民間,且范圍越來越廣,作用越來越大。
GPS技術已遍布各行各業(yè)的方方面面,現在市面上已經有各式各樣由GPS接收模塊所研發(fā)的定位產品,如車載導航儀、帶GPS功能的手機平板等。本次設計針對廣大普通用戶,切合他們實際需求,運用單片機的基本原理和GPS的理論知識,選擇合適的GPS接收模塊,設計并制作一個既實用又價廉的定位系統(tǒng)。
2.SiRF Star Ⅲ GPS信號接收模塊
SiRF Star Ⅲ是完全獨立的GPS接收器,這一芯片通過采用20萬次/頻率的相關器提高了靈敏度,可以同時追蹤20個衛(wèi)星信道。它使用了全新的SiRFstar TM III GPS架構GSC3F(高性能GPS單芯片),GPS集成實時時鐘(RTC),ARM7-TDMI CPU,4Mbit的FLASH存儲器,低噪聲放大器和SAW濾波器,TCXO,復位和調節(jié)器等,且具有內置備用電池,GPS接收機貼片天線,可選擇的內部/外部射頻連接器。尺寸參數如下:
貼片天線尺寸:35(寬)mm×35(厚)mm×3(高)mm;
尺寸:39.0(寬)毫米×35.5(厚)mm×8.0(高)mm;
重量:21.5克。
GPS接收模塊中RX為信號輸入端,TX為信號輸出端,接口電路如圖1
3.系統(tǒng)方案
本設計主要完成了GPS信號的接收與處理、數據的傳輸與顯示。在硬件上有SiRF Star Ⅲ GPS接收處理模塊和LCD1602液晶顯示模塊,并且還需要中央處理器來將各個部分連接起來。因為單片機的結構簡單明了,價格比較低,功能強大且操作簡單,其中又以51單片機最合適,所以選著STC89C52作為核心單片機。系統(tǒng)的結構框圖如圖2
4.系統(tǒng)的硬件設計
考慮到成本及操作難度等,8位單片機更簡單,成本也更低,所以采用低電壓,高性能CMOS 8 位單片機STC89C52作為主控制器。該器件采用ATMEL高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容[4]。它有4個8位I/O口、一個雙工串口、兩個16位的計/定數器、五個中斷源;擁有的全雙工異步通信接口,可以與外部接口直接進行讀取數據、數據處理以及數據輸出。
LCD1602叫做1602字符型液晶屏,它被用來顯示數字、字母、符號。它是一種點陣型液晶顯示模塊。它由若干個5x11或者5x7點陣字符組成,字符間有間隔,一個字符位只能顯示一個字符,故他并不能用來顯示圖形。在本設計中,由于LCD1602顯示內容有限,單次只能顯示兩行內容,且本系統(tǒng)需要得到日期、時間、經緯度、海拔、速度共計3組數據,故需要LCD1602用三次來顯示,而這三次顯示的切換就需要用按鍵來實現。每當按下鍵盤依次切換下一組信息顯示,共計三組重復切換。系統(tǒng)的硬件電路如圖3.
5.軟件設計
1)NMEA-0183數據格式
此協議是為了在不同的GPS導航設備中建立統(tǒng)一的RTCM標準。得益于這種格式的廣泛使用,GPS接收模塊的通用化程度越來越高。
NMEA-0183數據格式采用ASCII字符編碼形式輸出,其中包括有經度緯度、速度、日期、時間、速度、海拔、方向以及衛(wèi)星狀況等信息。其中串行通信時的默認參數為:數據位=8bit,開始位=1bit,停止位=1bit,無奇偶校驗,波特率=9600bps。
幀格式形如:$aaccc,ddd,ddd,…,ddd*hh
1. “$”:幀命令起始位;
2. aaccc:地址域,后三位為語句名,前兩位為識別符;
3. ddd…ddd:數據;
4. “*”:校驗和前綴;
5. hh:校驗和(check sum),*與$之間所有字符的ASCII碼的校驗和(各字節(jié)做異或運算,得到校驗和后,再轉換16進制格式的ASCII字符。)
6.
2)系統(tǒng)軟件主要由初始化模塊和數據接收處理模塊流程圖
初始化模塊是在完成上電后對單片機、LCD以及GPS模塊的一個初始化操作。對單片機進行波特率設置,串口工作模式設置以及中斷模式的設置,完成單片機與GPS模塊的串口通信。另外初始化也包括對LCD顯示屏的開機畫面和顯示模式設置。
數據接收模塊主要職能是對GPS模塊所接收到的數據進行處理。通過單片機串口接收到GPS模塊傳過來的信息后,判斷是否為起始位”$”,再接收后續(xù)數據內容,然后根據每位數據所代表的信息進行識別并進行ASCII碼處理,以便進行顯示。判斷若整個數據接收正確則接受,否則放棄接收。在本次設計中主要提取這些內容:日期、時間、經度緯度、海拔高程、速度。需要注意的是GPS所提供的是國際標準的UTC時間,與北京時間相差8小時,所以在時間處理上應在UTC時間上加上8小時進行修正。系統(tǒng)工作時,GPS模塊不斷接收到新的GPS信息,單片機也不斷刷新串口數據接收,最后通過單片機送至顯示器進行顯示。
數據接收處理程序流程圖如下面圖4所示。
5.系統(tǒng)調試與測試結果
1)系統(tǒng)調試 接線完成后用萬用表對每個接點進行檢查,看接線是否有短路或斷路,同時還要對每個器件的引腳進行檢測,看是否有短路的情況,若發(fā)現及時更改。完成硬件調試。
在將程序編寫完成后,先使用Keil uVision5檢測程序是否有語法編譯的錯誤,將這些語法錯誤改正過來。調試過程中,從每一個小的單元到一個模塊的程序逐步檢查。單獨檢測LCD12864液晶顯示屏的顯示以及初始化程序,看顯示屏上有無數據顯示。在LCD12864正常情況下,檢測GPS VK2828U7G5LF模塊,在確定檢測到信號時,把它連接到單片機,看顯示屏上是否有數據。每個模塊都確定無誤且滿足預定功能后,就可以將程序連起來,生成“.hex”文件備用。
2)測試結果
將接受裝置放于樓頂開放的環(huán)境以接收信號,啟動GPS接收系統(tǒng),經過測試,液晶顯示的結果如下圖,顯示信息緯度為:29度33分87秒,經度103度43分55秒,海拔為351.3米,由于測試時處于靜止狀態(tài),故當時速度為0。
6.結束語
本系統(tǒng)是自行設計開發(fā)的一種便捷GPS定位系統(tǒng)。測試結果顯示數據穩(wěn)定,定位精度較好。本系統(tǒng)能夠滿足日常使用,且具有小巧輕便、性價比高等特點。