葛 欣,藺雪葳,牟進(jìn)達(dá),王依岳(哈爾濱理工大學(xué)榮成學(xué)院,山東 榮成 264300)
?
手持定位器的設(shè)計(jì)與實(shí)現(xiàn)
葛 欣,藺雪葳,牟進(jìn)達(dá),王依岳
(哈爾濱理工大學(xué)榮成學(xué)院,山東 榮成 264300)
摘 要:為適應(yīng)定位導(dǎo)航市場的需求,本文設(shè)計(jì)了一種便捷、精確、價(jià)格低廉的手持定位器,主要實(shí)現(xiàn)了接收定位數(shù)據(jù),經(jīng)緯度、海拔、時(shí)間顯示,數(shù)據(jù)傳送至移動終端等基本功能,完成了從定位到數(shù)據(jù)傳輸?shù)淖粉櫣δ堋?/p>
關(guān)鍵詞:手持定位器;GPS定位;GSM通信;串口通信
近年來,隨著科技的發(fā)展,便攜式定位裝置越來越受到人們的關(guān)注。該裝置有較高的實(shí)用價(jià)值,可以用于登山旅游、野外勘探等等。人們對于更加輕便、準(zhǔn)確、可靠的手持定位器的需求越來越強(qiáng)烈。手持定位器的產(chǎn)生和推廣必然是今后定位產(chǎn)品發(fā)展的趨勢[1]。
但是普通手持定位追蹤器只實(shí)現(xiàn)了定位功能,隨著GSM網(wǎng)絡(luò)技術(shù)和GPS技術(shù)之間的聯(lián)系越來越緊密,GSM系統(tǒng)短消息業(yè)務(wù)快速地成為了GPS定位系統(tǒng)應(yīng)用中一種全新的通信鏈路建立、數(shù)據(jù)信息傳輸?shù)耐緩剑狙b置對GSM以及GPS進(jìn)行了完美的結(jié)合.
設(shè)備整體設(shè)計(jì)。該裝置硬件部分由STC12C5A60S2單片機(jī)、GPS模塊、GSM模塊、12864液晶顯示屏、電量檢測模塊組成。GPS模塊通過衛(wèi)星定位,把準(zhǔn)確的經(jīng)緯度通過串口通信傳輸?shù)絾纹瑱C(jī),數(shù)據(jù)進(jìn)行處理后顯示在12864液晶屏上。同時(shí)定位數(shù)據(jù)不斷通過GSM模塊發(fā)送至移動終端,移動終端可以是手機(jī)、電腦等。電源采用5v鋰離子電池,具有重量輕、體積小、循環(huán)壽命長等優(yōu)點(diǎn)。
2.1 主控系統(tǒng)
STC12C5A60S2具有SPI同步通信口,是一種全雙工可設(shè)置主模式/從模式,高速同步的通訊總線,可以用來進(jìn)行多單機(jī)的主從通信,可以及時(shí)接收GPS發(fā)送的定位數(shù)據(jù),及時(shí)把定位數(shù)據(jù)發(fā)送至GSM模塊。而且在原來8052共256字節(jié)RAM的基礎(chǔ)上,擴(kuò)展了256字節(jié)的RAM,共512字節(jié),可以寫入足夠大的程序[2]。
2.2 GPS定位模塊
模塊采用U-BLOX NEO-6M模組U-BLOX NEO-6M模塊采用50個(gè)通道的U-blox6引擎 GPS L1 C/A碼,接收衛(wèi)星數(shù)據(jù)高效迅速,相比于基站定位、RFID/二維碼等[3]。標(biāo)簽識別定位、場景識別定位等,具有方便,可靠性好,性價(jià)比高等一系列優(yōu)點(diǎn),現(xiàn)已廣泛應(yīng)用于民用領(lǐng)域。U-BLOX NEO-6M模組,完全支持OMA SUPL規(guī)范。具有AssistNow自主定位快速功能,可以更快的捕獲衛(wèi)星信息,接收更新速率達(dá)到5Hz,跟蹤靈敏-162dBm。使之更加準(zhǔn)確的定位后,經(jīng)RS232標(biāo)準(zhǔn)I/O輸出串行數(shù)據(jù)或者輸出TTL數(shù)據(jù),向MCU進(jìn)行發(fā)送。
2.3 GSM通信模塊
基于GSM系統(tǒng)的短消息收發(fā)系統(tǒng)的實(shí)現(xiàn)方案,采用在電腦或單片機(jī)通過GSM模塊向手機(jī)等移動終端發(fā)送短信,比較適合本產(chǎn)品的開發(fā)。其短信收發(fā)分為兩種模式:Text、PDU模式,PDU模式比較復(fù)雜,需要用專門的函數(shù)將文本格式轉(zhuǎn)換為PDU格式,應(yīng)用Text模式開發(fā)比較簡單,本設(shè)計(jì)采用的是Text模式。在這種方法中,可以通過PC 與GSM模塊通信獲得定位數(shù)據(jù),但是電腦等硬件體積大,不便于攜帶,可通過手機(jī)與GSM模塊通信,此種方法便于實(shí)現(xiàn)。
該定位器主要完成GPS信號接收、實(shí)時(shí)顯示經(jīng)緯度、無線數(shù)據(jù)傳輸、電源電量顯示等功能,采用模塊化設(shè)計(jì)。硬件設(shè)計(jì)完成后,對軟件進(jìn)行相關(guān)設(shè)計(jì),編寫關(guān)于GPS定位程序、LCD12864顯示定位數(shù)據(jù)程序以及通信模塊無線數(shù)據(jù)傳輸程序。
3.1 系統(tǒng)軟件整體設(shè)計(jì)流程
系統(tǒng)軟件由初始化模塊和數(shù)據(jù)接收處理模塊組成。系統(tǒng)的初始化主要包括RAM初始化、特殊功能寄存器初始化和外圍設(shè)備的初始化。程序工作流程圖如圖1所示。
3.2 軟件模塊設(shè)計(jì)
3.2.1 GPS定位數(shù)據(jù)接收與發(fā)送程序設(shè)計(jì)
接收程序負(fù)責(zé)定位信息的接收、所需協(xié)議語句數(shù)據(jù)的提取以及其他情況(接收溢出、錯(cuò)誤報(bào)警等)的處理。在檢測到有效信息后,接收程序?qū)⒔邮站彌_器中的內(nèi)容讀入MCU的數(shù)據(jù)存儲區(qū)。
如今市場上的GPS模塊種類各異,但大都遵守NMEA-0183協(xié)議。該協(xié)議是美國國家海洋電子協(xié)會為海用電子設(shè)備制定的標(biāo)準(zhǔn)格式,目前已成了GPS導(dǎo)航設(shè)備統(tǒng)一的RTCM標(biāo)準(zhǔn)協(xié)議。NMEA-0183協(xié)議采用ASCII碼來傳遞GPS定位信息,稱之為幀[4]。
定位器使用異步串行通信對數(shù)據(jù)進(jìn)行發(fā)送,首先把數(shù)據(jù)讀入SBUF中,根據(jù)預(yù)先設(shè)置好的通信數(shù)據(jù)格式,對停止位以及起始位進(jìn)行自動植入。當(dāng)發(fā)送抵達(dá)停止位時(shí),標(biāo)識發(fā)送為禁止,當(dāng)禁止接觸時(shí),數(shù)據(jù)接收方單片機(jī)就會做出反應(yīng)。當(dāng)數(shù)據(jù)接收時(shí),采樣時(shí)鐘以輸入數(shù)據(jù)波特率的16倍頻率采樣輸入數(shù)據(jù)線,如果連續(xù)8次采樣到低電平,認(rèn)為是一幀數(shù)據(jù)的起始位,當(dāng)接收到起始位后,連續(xù)接收預(yù)先定位的數(shù)據(jù)以及停止位,這樣就接收到了一幀的數(shù)據(jù)。
GPS系統(tǒng)中有兩種時(shí)間區(qū)分,一為UTC,另一為LT(地方時(shí))兩者的區(qū)別為時(shí)區(qū)不同,因此在計(jì)算定位時(shí)的標(biāo)準(zhǔn)時(shí)間要統(tǒng)一用UTC時(shí)間進(jìn)行換算。整個(gè)地球分為二十四時(shí)區(qū),每個(gè)時(shí)區(qū)都有自己的本地時(shí)間,在國際無線電通信中,為統(tǒng)一而普遍使用一個(gè)標(biāo)準(zhǔn)時(shí)間,稱為通用協(xié)調(diào)時(shí)(UTC,Universal Time Coordinated)。如果要把UTC時(shí)間轉(zhuǎn)化為本地時(shí)間,可以使用以下公式:
UTC + 時(shí)區(qū)差=本地時(shí)間
時(shí)區(qū)差東為正,西為負(fù)。為此,把東八區(qū)時(shí)區(qū)差記為 +0800,那么UTC + (+0800) = 本地(北京)時(shí)間。
3.2.2 通信模塊接收與發(fā)送數(shù)據(jù)程序設(shè)計(jì)
通信部分是由單片機(jī)、SIM900A和移動終端組成。U-BLOX NEO-6M收到的數(shù)據(jù)傳送到單片機(jī)中處理,再由單片機(jī)和SIM900A之間的串行口以AT的形式發(fā)送。發(fā)送的數(shù)據(jù)要進(jìn)行PDU解碼以十六進(jìn)制形式發(fā)送。單片機(jī)發(fā)送數(shù)據(jù)方式采用異步串行通信,與定位數(shù)據(jù)的接收方式相同。
用戶(追蹤器)可以通過接收定位器發(fā)送的短信來提取定位數(shù)據(jù),也可以發(fā)送短信來對定位器進(jìn)行控制和功能設(shè)置。這需要定位器在收到短信后能夠自動識別命令類型并自動執(zhí)行,包括跟蹤開始,跟蹤停止等基本命令。
3.2.3 GPS定位信息顯示程序設(shè)計(jì)
中斷接收程序已對“$GPGGA”協(xié)議語句進(jìn)行了解析,然后將經(jīng)度、緯度、時(shí)間信息等實(shí)時(shí)刷新顯示在LCD12864液晶屏上。GPS模塊不斷收到新的數(shù)據(jù),單片機(jī)不斷刷新RAM,在液晶屏上顯示相應(yīng)數(shù)據(jù)。
本文設(shè)計(jì)了一種基于STC12C5A60S2單片機(jī)的簡易手持定位器,實(shí)現(xiàn)了GPS經(jīng)度、緯度、時(shí)間等信息數(shù)據(jù)的讀取。本設(shè)計(jì)方法靈活,采用了單片機(jī)實(shí)現(xiàn)數(shù)據(jù)處理,易于調(diào)試,價(jià)格便宜,成本低,性能較穩(wěn)定,方便從GPS定位模塊中提取各種所需定位數(shù)據(jù),可廣泛用于民用領(lǐng)域,方便攜帶,在所需衛(wèi)星導(dǎo)航定位信息的廣大領(lǐng)域內(nèi)具有廣闊的應(yīng)用前景。
參考文獻(xiàn):
[1]陶宗儀.GPS的發(fā)展、應(yīng)用及前景[M].航空電子技術(shù),2010(03):1-7.
[2]李全利.單片機(jī)原理及接口技術(shù)(第二版)[M].北京:高等教育出版社,2009:10-16.
[3]陳嘉清.手持定位裝置的設(shè)計(jì)與實(shí)現(xiàn)[D].大連海事大學(xué),2009:25-29.
[4]錢德俊,張哲,胡晨.NMEA0183協(xié)議解析[J].電子器件,2007(02):1-3.
資助項(xiàng)目:哈爾濱理工大學(xué)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目(簡易手持定位追蹤器系統(tǒng)的設(shè)計(jì))
DOI:10.16640/j.cnki.37-1222/t.2016.12.216
作者簡介:葛欣(1995-),女,山東齊河人,本科在讀,研究方向:電子信息工程。