張 文
ZHANG Wen
(內江師范學院 物理與電子信息工程學院,內江 641112)
隨著汽車的不斷普及,車輛被盜案件也是經常發生,而很多車輛在被盜后很難被追回,給受害者造成巨大的損失。GPS全球定位系統是一個由覆蓋全球的24顆衛星組成的衛星系統,這個系統可以保證在任意時刻,地球上任意一點都可以同時觀測到4顆衛星,以保證衛星可以采集到該觀測點的經緯度和高度,以便實現導航、定位、授時等功能。隨著移動通信技術的發展,根據目前GSM網絡技術成熟,覆蓋面廣的特點,合理有效的利用GSM網絡資源,可以避免組建專用數據傳輸網絡的成本高、通訊距離短、通訊效果差等諸多難題。鑒于此提出了將GPS定位器與GSM通信相融合的定位系統設計,該定位器可以將獲取的GPS位置以及運動速度等信息,經過處理后通過GSM網絡以短消息的形式發送到指定的手機用戶。一旦發生車輛被盜情況,就可以迅速定位車輛的位置,為案件的偵破提供至關重要的線索。
在無線方面考慮到數據的傳輸量不大,且只有特殊情況下才會進行通信,因此利用短消息傳輸足以勝任。車載GPS定位系統主要由定位器和手機用戶端組成。定位器主要完成獲取車輛所在的經緯度、運動速度和方向等信息,并把這些數據通過GSM網絡以短消息的形式發送給指定的手機用戶端;手機用戶端將收到的經緯度導入到專用的電子地圖軟件,從而能夠直觀準確的得知車輛所在的具體位置。系統構成如圖1所示。

圖1 系統構成
系統主要實現兩大功能:1)獲取位置。當向定位器發送獲取位置指令時,定位器會以短消息的形式返回位置信息;2)超限報警。當車輛超出預設的區域后自動給指定手機發送具體位置的報警短消息。
定位器的硬件主要由控制器LPC2129、GPS模塊、GSM模塊、天線以及供電管理單元等組成,硬件構成如圖2所示。

圖2 硬件構成

表1 GPS最小GPS數據格式
LPC2129是飛利浦公司推出的一款支持實時仿真和跟蹤的16/32位ARM7 TDMI-S內核的微控制器,它帶有16K字節靜態RAM和128k字節嵌入的高速Flash存儲器,在64腳的封裝中,可使用GPIO多達46個;4路10位A/D轉換器,轉換時間低至2.44us;實時時鐘和看門狗;通過片內PLL可實現最大為60MHz的CPU操作頻率,豐富的片上資源能夠滿足一般的工業控制的需要。LPC2129不僅工作穩定,運算速度更快,而且具有雙串口非常適合此方案[1]。
本設計方案采用當前領先的GPS技術,利用集成的定位芯片LEADTEK LR9548S,它是一款專為OEM應用設計,具有高靈敏度、低功耗、20通道的GPS接收模塊。GPS9548相比其它的獨立的GPS解決方案,能使用戶在很低的信號強度下獲取并連續的追蹤GPS信號,這意味著它可以使用在以前認為不可能使用的環境下,比如林立的都市大廈中、茂密的樹林中、車庫中和許多室內環境下,定位精度小于10米[2]。只需在外圍加上相應電路即可通過串口輸出T包括時間、經度、緯度、速度、運動方向等位置信息。
TC35i是西門子公司推出的一款無線通信模塊,并且已取得國內無線電設備入網證,工作在GSM900和GSM1800雙頻段,功耗分別為2W和1W;電源范圍為直流3.3~4.8V;電流消耗:休眠狀態為3.5mA,空閑狀態為25mA,發射狀態為300mA(平均),峰值為2.5A;該模塊集射頻電路和基帶于一體,向用戶提供標準的AT命令接口,為數據、語音、短消息和傳真提供快速、安全可靠的傳輸。TC35i模塊的數據輸入/輸出接口實際上是一個串行異步收發器,符合ITU-T RS232接口標準,它有固定的參數:8位數據位和1位停止位,無校驗位,波特率在300bps~115kbps之間可選[3]。TC35i模塊的命令接口完全符合GSM07.05和GSM07.07規范,通過微處理器LPC2129的串口1向TC35i模塊的串口發送標準的AT指令來完成定位器短信收發的功能,從而實現與外界手機用戶通信。
GPS數據的分析提取以及短消息命令協議的定義是系統的兩個重要組成部分。
LR9548S模塊遵循美國國家海洋電子協會制定的NMEA-0183通信標準格式,常用語句有6種,包括GGA、GLL、GSA、GSV、RMC和VTG。本系統只關心其時間、經緯度、地面速度以及運動方向信息,因此只處理最小GPS數據格式RMC記錄語句:$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11><CR><LF>
表1為RMC最小格式。在測試LR9548S模塊的數據輸出時,其默認速率為9600bps,發送時間間隔為1s。在進行識別、分解、解析各字段時以逗號分割符“,”作為各字段的分割標志,提取所需GPS數據信息。
收發短消息分三種模式:BLOCK、TEXT和PDU模式。其中只有PDU模式支持中文,可以使用三種編碼:7-bit編碼、8-bit編碼和UCS2編碼。7-bit編碼用于發送普通的ASCII字符;8-bit編碼通常用于發送數據消息,如圖片或鈴聲等;UCS2編碼用于發送Unicode字符。由于在系統中要實現中文短消息的發送,所以選擇用UCS2編碼,即中文Unicode碼,這種模式被所有手機支持,也是手機默認的編碼方式,通過UCS2編碼得到中文Unicode碼,接著就可以進行發送PDU串了[4]。PDU串除了包含所發送的消息本身外,還包含很多其它信息,如服務中心號碼、目標號碼和編碼方式等。
手機用戶端給定位器發送指令要遵循一定規則才能被識別。表2為短消息內容命令格式。1)6位數字密碼。只有通過密碼確認后才有權限操縱定位器執行命令;2)命令。用于指示本次要執行什么操作;3)參數。根據命令的類型,參數也有所不同。

表2 消息內容的命令格式
LPC2129控制器在運行主程序前必須初始化運行環境,即為編寫ARM芯片啟動代碼,包括異常向量表、堆棧初始化、存儲系統初始化和目標板初始化等,一般用匯編語言編寫。軟件設計關鍵是編寫功能子函數,程序通過調用各子函數實現對應的功能,主要包括四部分:GPS數據的解析和提取、PDU短信編解碼、短信的接收和發送、命令的解析和執行[5]。圖3為程序流程圖。

圖3 程序流程圖
設備開機后定位器首先進行初始化,包括控制器LPC2129的功能管腳選擇、串口工作方式設置、中斷向量、TC35i的初始化以及工作模式設置等。接下來程序進入循環執行命令的五個環節:1)檢驗GPS數據是否有效。等待GPS接收機模塊LR9548S接收到有效的數據為止,同時點亮GPS指示燈,如果是無效的GPS數據指示燈就一直顯示熄滅狀態;2)檢驗是否超限。如果超限即刻發送一條短信至預先設定好的手機用戶。3)檢測是否收到新短信。如果沒有收到新短信,則返回1),如果收到新的短信,則要到新短信的存儲位置讀取,并對接收的短信內容進行PDU解碼。4)驗證密碼。如果密碼錯誤或者為非指令短信,則刪除該條短信并返回1)。如果密碼正確就開始解析短信命令,并執行相應的命令子程序。5)處理完畢后,刪除短信。以免出現存儲空間裝滿無法接受新短信的情況。
嵌入式車載定位系統是GPS與GSM網絡技術完美結合的結晶。該系統體積小、工作穩定可靠,一旦發現車輛丟失后,可迅速向車載定位器發送定位指令,將手機接收到的經緯度數據輸入到Google地球電子地圖軟件的搜索欄后,點擊搜索按鈕,圖上就會立刻直觀顯示當前車輛所在位置,能為案件的偵破提供重要的線索。
[1]劉玉民,焦彥軍,石美傳.基于ARM的CAN網絡打印服務器設計[J].國外電子元器件,2008(05):11-13.
[2]陳玲玲,劉鳳鴟.基于嵌入式微處理器的GPS定位系統[J].吉林化工學院學報,2009(03):43-45.
[3]李瑞峰,顧義坤.于GSM/GPRS 網絡的家用機器人遠程監控系統設計[J].制造業自動化,2006(10):71-73.
[4]李家福,余立建,等.基于GSM網絡的智能監控模塊設計[J].國外電子元器件,2005(12):63-65.
[5]張紹兵,郭繼坤,趙艷芹.基于CAN總線智能適配卡的軟硬件設計[J].計算機測量與控制,2008(16):45-47.