摘要:目前大多GPS設(shè)備只能接收GPS信息,不能實(shí)現(xiàn)GPS信息轉(zhuǎn)發(fā)。而本文介紹了一種基于GSM短信模塊的定位跟蹤系統(tǒng),實(shí)現(xiàn)了通過GSM網(wǎng)絡(luò)傳輸GPS信息功能。該系統(tǒng)主要由Atmega16單片機(jī)、GPS接收機(jī)GR-87、以及GSM短信模塊TC35i組成。系統(tǒng)能夠及時準(zhǔn)確地將GPS獲得的信息傳送給GPS設(shè)備,在緊急情況下能夠?qū)崿F(xiàn)短信報警。
GPS 作為成熟實(shí)用的全球精密測時、測距、導(dǎo)航、定位系統(tǒng)在諸多領(lǐng)域均有廣泛的應(yīng)用。目前市面多數(shù)GPS 設(shè)備只有單向通信能力,只能接收GPS信息,而不能將GPS 信息轉(zhuǎn)發(fā)。一旦持有GPS 設(shè)備的人員發(fā)生意外,他人不能及時了解當(dāng)事人狀況。而本文設(shè)計(jì)實(shí)現(xiàn)的系統(tǒng)不僅能夠定時接收全球衛(wèi)星定位信號,并且能通過GSM網(wǎng)絡(luò)向未持有GPS設(shè)備的用戶按需發(fā)送信息;同時在意外發(fā)生時能夠及時將包含地理信息的報警短信發(fā)送到特定手機(jī)號碼進(jìn)行報警操作。
1 硬件系統(tǒng)設(shè)計(jì)
基于GSM 短信模塊的定位跟蹤系統(tǒng)硬件系統(tǒng)主要有GPS 信息接收機(jī)、單片機(jī)控制控制模塊(主機(jī)、從機(jī))、信息發(fā)送模塊、手機(jī)接收測試部分及其他外圍電路組成(見圖1)。GPS 信息接收機(jī)接收到的GPS 信息經(jīng)過串口發(fā)送到單片機(jī)控制模塊中的主機(jī)部分;主機(jī)將選擇出來的信息通過同步串行接口(SPI 接口)傳送給MCU 控制模塊的從機(jī)部分;從機(jī)對信息進(jìn)行編碼;編碼后的消息經(jīng)過短信發(fā)送模塊發(fā)送到指定的手機(jī)。
圖1 系統(tǒng)硬件邏輯框圖
1.1 定位跟蹤模塊
GPS 全球定位系統(tǒng)包括GPS 網(wǎng)絡(luò)和專業(yè)的地面接收設(shè)備。接收設(shè)備可以顯示出當(dāng)前地理信息、時間信息等;如果將當(dāng)前的信息發(fā)送給信息管理中心,便可以接受管理中心的統(tǒng)一調(diào)度;贕SM短信模塊的定位追蹤系統(tǒng)便是基于后一種理論進(jìn)行設(shè)計(jì)實(shí)現(xiàn)的。GPS 模塊接收來自GPS 衛(wèi)星系統(tǒng)的C/A 碼,單片機(jī)控制模塊根據(jù)信息碼計(jì)算得到當(dāng)前的地理信息位置和時間信息等。GPS 接收模塊的硬件主要包含接收天線、接收機(jī)、電平轉(zhuǎn)換電路以及進(jìn)行GPS 信息數(shù)據(jù)處理的單片機(jī)控制模塊中的主機(jī)部分(見圖2)。
圖2 GPS 接收模塊原理框圖
GPS 接收模塊是系統(tǒng)的信息源。硬件實(shí)現(xiàn)過程中采用了型號為GR-87 的GPS 接收模塊。該GPS接收端的主要參數(shù)為:默認(rèn)的發(fā)送地理信息的頻率是1HZ,其時間誤差為±0.1s,距離誤差為10 米之內(nèi)。該型號GPS 接收端的信號輸出電平為TTL 電平,需要外加電平轉(zhuǎn)換電路。最后使用MAX232芯片及其相關(guān)電路來輔助完成串口通信。
1.2 單片機(jī)控制模塊
單片機(jī)控制模塊采用Atmega16L 芯片作為處理器,對GPS 信息數(shù)據(jù)進(jìn)行存儲和處理。本芯片是8 位的AVR 單片機(jī),具有16KB系統(tǒng)內(nèi)可編程Flash,具有高可靠性、高速度、高性能、低功耗等特點(diǎn),同時該芯片擁有豐富的外圍引腳以及接口電路,方便系統(tǒng)的設(shè)計(jì)開發(fā)。
該系統(tǒng)用到兩個單片機(jī)控制模塊,分別作為系統(tǒng)的主機(jī)和從機(jī)。單片機(jī)控制模塊中的主機(jī)部分用于接收GPS 模塊接收到的GPS 信息并對信息進(jìn)行簡單的處理,篩選出用戶需要的信息,將信息以串行通信方式傳送給從機(jī)模塊(見圖3);從機(jī)部分對數(shù)據(jù)進(jìn)行編碼,將編碼后信息傳送給GSM 模塊,根據(jù)需要GSM 將信息發(fā)送到指定號碼。
圖3 SPI 同步串行通信模塊
1.3 GSM 接口
TC35i 模塊是西門子公司推出的一種無線通信模塊,它是集射頻電路、基帶于一體,向用戶提供標(biāo)準(zhǔn)的AT 命令接口,為數(shù)據(jù)、語音、短信息和傳真提供快速、可靠、安全的傳輸,方便用戶的開發(fā)設(shè)計(jì)及應(yīng)用。在該系統(tǒng)中TC35i 直接受從機(jī)控制,在收到控制信號后,將從機(jī)傳送來的信息內(nèi)容發(fā)送給特定的手機(jī)號碼。
圖4 GSM 短信息模塊框圖
2 軟件系統(tǒng)設(shè)計(jì)
軟件設(shè)計(jì)采用了模塊化的設(shè)計(jì)方式,系統(tǒng)軟件由一個主程序和若干個子程序構(gòu)成。主程序負(fù)責(zé)完成對各個功能模塊(子程序)的調(diào)用。系統(tǒng)軟件的其他部分還涉及到單片機(jī)與GSM 模塊之間的串行通信、單片機(jī)控制模塊中主機(jī)和從機(jī)間的SPI 模式通信、單片機(jī)對GPS 信息的解碼、對GSM-At 指令的編碼等。
主程序功能是:系統(tǒng)開機(jī)后對GPS 模塊、GSM模塊初始化,控制主機(jī)部分接收來自GPS 接收模塊的GPS 信息,篩選出其中的特定部分存儲,將數(shù)據(jù)以SPI 通信方式傳給從機(jī);控制從機(jī)部分對信息進(jìn)行編碼并傳送給GSM 模塊。主程序功能框圖如圖5所示。
圖5 軟件系統(tǒng)的流程框圖。
2.1 系統(tǒng)初始化子程序
系統(tǒng)初始化子程序完成設(shè)置系統(tǒng)串口波特率、啟動串口、初始化數(shù)據(jù)存儲單元任務(wù),實(shí)現(xiàn)單片機(jī)控制模塊、外圍器件以及GSM 模塊的初始化工作。
單片機(jī)控制模塊從機(jī)部分和GSM 短信模塊進(jìn)行異步串行通信,需對串口進(jìn)行設(shè)置:
(1)工作方式。
GSM 通信模塊的數(shù)據(jù)接口配置為8 位數(shù)據(jù)位、1 位停止位、無校驗(yàn)位,因此設(shè)置單片機(jī)的串行口工作方式為異步通信模式。
(2)波特率設(shè)定。
Atmega16L 單片機(jī)控制系統(tǒng)的晶振為3.6864M,波特率需為9600b/s,所以根據(jù)記數(shù)初值的計(jì)算公式:X=256-fose × (1/384) × 波特率,UBRRL=0x16 (USART 通信)。
2.2 軟件定時程序
系統(tǒng)通過設(shè)置16 位定時器1 的寄存器初始值實(shí)現(xiàn)定時功能。系統(tǒng)采用頻率為3.6864MHz 的晶振, 機(jī)器周期近似為0.3 us , 初始化時預(yù)置TCNT1H=0xD4,TCNT1L=0xFF,(FFFFH-D4FFH)×0.3us=3.3ms,因此每3.3ms 中斷一次。流程圖如圖6 所示。
圖6 定時器中斷子程序
2.3 SPI 同步串行通信
使用SPI 主從模式進(jìn)行通信關(guān)鍵是時鐘同步,一般為主機(jī)輸出同步時鐘,從機(jī)輸入同步時鐘。系統(tǒng)設(shè)定主機(jī)定時在第5 個時間段時開始發(fā)送數(shù)據(jù),從機(jī)每收到一個字節(jié)數(shù)據(jù)就產(chǎn)生一次SPI 中斷,在中斷程序中將數(shù)據(jù)取走放到相應(yīng)的存儲單元。
2.4 單片機(jī)給GSM 模塊發(fā)送AT 指令程序設(shè)計(jì)
單片機(jī)通過GSM-AT 指令控制GSM 模塊發(fā)送短消息。指令執(zhí)行過程需要單片機(jī)與GSM 模塊完成交互應(yīng)答,每次發(fā)送或接收的字節(jié)數(shù)都有嚴(yán)格規(guī)定,二者必須依據(jù)規(guī)定實(shí)現(xiàn)數(shù)據(jù)交換。本段子程序主要實(shí)現(xiàn)的功能是系統(tǒng)上電、完成初始化后,將數(shù)據(jù)形成短信發(fā)送到GSM 網(wǎng)。程序的流程圖如圖8所示。
圖7 SPI 串行通信流程圖
在單片機(jī)向GSM 模塊發(fā)送指令時,需要注意以下問題:
1、AT 指令的指令符號、數(shù)據(jù)、PDU 數(shù)據(jù)包等都是以ASCII 編碼形式傳送的;2、需將把手機(jī)的短信息工作模式設(shè)置為PDU格式,通過指令A(yù)T+CMGF=0 完成;3、單片機(jī)向手機(jī)發(fā)送指令需以回車符結(jié)束,表示該條指令的結(jié)束。如單片機(jī)向手機(jī)發(fā)送"AT+CMGF=0"這條指令,序列為"41H,54H,2BH,42H,4DH,47H,46H,3DH,30H,30H,0DH",最后一個字節(jié)0DH(回車符)表示該條指令結(jié)束。
圖8 AT 指令程序流程圖
2.5 發(fā)送短消息子程序
發(fā)送短消息子程序是整個系統(tǒng)程序的核心部分。初始短信息已經(jīng)經(jīng)過編碼存放在了存儲器中,當(dāng)需要發(fā)送時,從存儲器中直接提取出來,以ASCII碼的形式進(jìn)行發(fā)送。
發(fā)送短消息子程序流程圖如圖9 所示:
圖9 短信息發(fā)送程序流程圖
3 總結(jié)
GPS 定位信息準(zhǔn)確,GSM 網(wǎng)絡(luò)覆蓋范圍廣,使用GSM 網(wǎng)絡(luò)傳輸GPS 定位信號,汲取了GPS 定位系統(tǒng)的精確性、GSM 網(wǎng)絡(luò)費(fèi)用低廉,短信消息能夠被重發(fā)確保被叫方能夠收到的優(yōu)點(diǎn),拓展了GPS信號的應(yīng)用范圍,特別是解決了GPS 設(shè)備持有者因發(fā)生意外無法及時報警,不能得到及時救治的問題。經(jīng)過測試,基于GSM 短信模塊的定位跟蹤系統(tǒng)能夠及時準(zhǔn)確的將GPS 信息準(zhǔn)確的發(fā)送到指定的手機(jī)號碼;同時可以設(shè)置安全距離等信息,當(dāng)持有GPS 接收設(shè)備的人員出了安全范圍,系統(tǒng)會向指定手機(jī)時時發(fā)送GPS 接收設(shè)備的地理位置。
作者:李銳 周敏健 李文虎 黃濤 來源:《電子測量與儀器學(xué)報》
免責(zé)聲明:本文僅代表作者個人觀點(diǎn),與C114中國通信網(wǎng)無關(guān)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實(shí),對本文以及其中全部或者部分內(nèi)容、文字的真實(shí)性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實(shí)相關(guān)內(nèi)容。