摘 要: 以S3C2410為處理器核心,以Linux操作系統(tǒng)為平臺,,運用GPS全球定位技術(shù),、GSM數(shù)字移動通信技術(shù)、GUI開發(fā)技術(shù),、多媒體功能應(yīng)用技術(shù),、數(shù)據(jù)庫技術(shù)等,設(shè)計了嵌入式車載導(dǎo)航與防盜系統(tǒng),,實現(xiàn)了定位,、導(dǎo)航,、防盜,、影音播放等功能。通過軟硬件測試,,驗證了該系統(tǒng)的穩(wěn)定性和可操作性,。
關(guān)鍵詞: GPS/GPRS;Linux,;ARM,;Qt/Embedded;SQLite
GPS車載導(dǎo)航與防盜系統(tǒng)是集合全球定位系統(tǒng)(GPS),、地理信息處理系統(tǒng)(GIS),、數(shù)字移動通信系統(tǒng)(GSM)和計算機數(shù)據(jù)處理技術(shù),通過移動通信網(wǎng)絡(luò)的形式傳遞信息的高科技產(chǎn)品,,可實現(xiàn)全球衛(wèi)星智能導(dǎo)航,、防盜報警、娛樂等諸多功能,。
1 總體設(shè)計
根據(jù)車載導(dǎo)航與防盜的實際需求,,本系統(tǒng)具有以下功能:
(1)定位功能:GPS通過接收衛(wèi)星信號,準確地定位其所在的位置,,位置誤差小于10 m,,利用GPS在地圖上實時顯示車輛當前位置;
(2)地圖導(dǎo)航功能:輸入目標地點后,,自動在地圖上顯示出行車路線,。若用戶不小心錯過路口,,沒有走車載GPS導(dǎo)航系統(tǒng)推薦的最佳線路,該系統(tǒng)將重新為用戶設(shè)計一條回到主航線的路線,,或是為用戶設(shè)計一條從新位置到達終點的最佳線路,;
(3)語音導(dǎo)航功能:輸入目標地點后,車輛若遇到前方路口或者轉(zhuǎn)彎時,,車載GPS語音系統(tǒng)提示用戶轉(zhuǎn)向等語音提示,;
(4)防盜功能:若車輛被盜,則通過GPRS發(fā)送短信給用戶,,返回車輛當前位置,,便于追蹤;
(5)娛樂功能:播放U盤,、SD卡中的圖片,、音頻、視頻文件以及游戲模式,;
(6)智能導(dǎo)航功能:在短時間內(nèi)失去GPS信號時,,可根據(jù)車內(nèi)的加速度傳感器,結(jié)合行車速度計算出行車的實際情況,。
2 系統(tǒng)硬件設(shè)計
鑒于以上功能,,可將系統(tǒng)硬件整體架構(gòu)分為主控模塊、GPS模塊,、GPRS模塊,、重力加速度傳感器模塊、LCD觸摸屏模塊和語音報讀模塊七大功能模塊,,如圖1所示,。
(1)主控模塊:選用FS2410開發(fā)板,主要用于控制并協(xié)調(diào)系統(tǒng)模塊間的正常通信,。此控制模塊包含兩片大小為32 MB的NAND Flash,、一片大小為2 MB的NOR Flash以及一片以太網(wǎng)控制芯片、兩個USB接口,、一個HOST接口,、一個SD卡接口、一個液晶接口,、兩路串口通信模塊等硬件資源,。其中雙串口能達到GPS模塊、GPRS模塊通信的要求,。
(2)GPS模塊:GPS是20世紀70年代由美國陸??杖娐?lián)合研制的新一代空間衛(wèi)星導(dǎo)航定位系統(tǒng)。其主要功能是按照衛(wèi)星的截止角跟蹤衛(wèi)星的運行,,捕獲相應(yīng)的衛(wèi)星信號,,從而測量出接收器到衛(wèi)星的偽距離和距離的變化率,,計算出衛(wèi)星軌道參數(shù)等數(shù)據(jù),進而得出用戶所在地理位置的經(jīng)緯度,、高度,、速度、時間等信息,。本系統(tǒng)采用的芯片是SIRF2e/LP,,定位精度可達到2 m,加速度可達到0.1 m/s,,最高海拔支持18 000 m,。該模塊在本系統(tǒng)中與S3C2410的UART接口2相連接。
(3)GPRS模塊:本系統(tǒng)采用的是PTB206 型號的通信模塊,,它支持GSM900/DCS 1 800 MHz的頻段,,支持GSM 07.07標準AT指令集,支持上傳和下載,,速率能達到85.6 kb/s,,內(nèi)嵌TCP/IP協(xié)議。該模塊在本系統(tǒng)中與S3C2410的UART接口1相連接,。
(4)重力加速度傳感器模塊:是一種重力傳感器(G-sensor),,根據(jù)電壓效應(yīng)原理,由彈性敏感器件構(gòu)成懸臂式位移器,,結(jié)合儲能彈簧來驅(qū)動電觸點,,完成從重力變化到電信號的轉(zhuǎn)換,,從而計算出產(chǎn)生電壓與所施加的加速度傳感器之間的關(guān)系,,以實現(xiàn)將加速度轉(zhuǎn)化成電壓輸出、檢測目標是否有移動的行為,、判斷設(shè)備是否被盜,,并配合GPRS模塊實現(xiàn)防盜、追蹤的目的,。系統(tǒng)中使用的芯片是ADXL345,,它是一款小巧纖薄的低功耗三軸加速度計,分辨率為3.9 mg/LSB,,測量傾斜角度變化精度能達到1.0°,,可以對高達±16 g的加速度進行高分辨率(13位)測量,數(shù)字輸出數(shù)據(jù)為16位二進制補碼格式,。該模塊可通過SPI(3線或4線)或者I2C數(shù)字接口與主控模塊的GPIO口相連接,。
(5)LCD觸摸屏模塊:主要用于電子地圖、多媒體應(yīng)用,,可提供豐富的圖形界面以及人機交互操作,。本系統(tǒng)中采用的是臺灣東華公司的一款型號為WXCAT-35TG3的3.5寸TFT LCD,。分辨率為RGB 320×240,屏幕表面有一片四線電阻式觸摸屏,。
(6)語音報讀模塊:在導(dǎo)航,、防盜報警時,本模塊將實現(xiàn)各種功能的提示,。在本系統(tǒng)中采用的語音芯片是ISD1420P,。利用該芯片可以實現(xiàn)語音分段錄、放音的功能,,最小分段20 s/160段,,并且高優(yōu)先級錄音,低電平或負邊沿觸發(fā)放音,。
3 系統(tǒng)軟件設(shè)計
在本系統(tǒng)中,,軟件開發(fā)平臺采用的是ubuntu 8.10,UBOOT選用的版本是1.3.4,,Linux內(nèi)核選用的版本是Linux-2.6.26,,交叉編譯器選用的是gcc-4.1.1,GUI的版本用的是QT-embedded-4.5.2[1],。
3.1 總體IO任務(wù)分解
圖2顯示的是總體IO任務(wù)分解,。
(1)重力加速度傳感器的任務(wù):實時地獲取當前的角度數(shù)據(jù)并送于主控;
(2)GPS任務(wù):通過UART2接收任務(wù),,負責GPS數(shù)據(jù)的接收,、檢驗,并把獲取的數(shù)據(jù)進行處理并送于主控,;
(3)GPRS任務(wù):在系統(tǒng)開機時,,負責建立GPRS數(shù)據(jù)鏈路,同時主控通過UART1發(fā)送任務(wù),,將數(shù)據(jù)發(fā)送給用戶,,實現(xiàn)監(jiān)控;
(4)主控任務(wù):對重力加速度傳感器,、GPS模塊獲取到的數(shù)據(jù)實時地進行讀寫與計算控制,,并且針對GPRS模塊進行數(shù)據(jù)的發(fā)送,同時結(jié)合用戶實時的需要開啟相應(yīng)的應(yīng)用服務(wù),。
3.2 GPS的數(shù)據(jù)接收與處理
GPS模塊采用中斷方式對GPS數(shù)據(jù)進行接收以及對GPS數(shù)據(jù)中的時間,、位置等進行處理[2]。在默認情況下,,GPS模塊輸出數(shù)據(jù)的波特率為4 800 b/s,,輸出信息的消息類型有:GPRMC、GPRGA、GPGSA,、GPGSV,、PGRME等,詳細的GPS數(shù)據(jù)處理流程如圖3所示,。
3.3 地圖的處理與顯示
MapInfo是美國MapInfo公司的桌面地理信息系統(tǒng)軟件,,是一種數(shù)據(jù)可視化、信息地圖化的桌面解決方案,。它是以mif格式來存儲的,,每個mif文件由兩個部分組成:文件頭和數(shù)據(jù)區(qū)。其中文件頭用于將MapInfo這樣的地圖數(shù)據(jù)生成電子地圖,,數(shù)據(jù)區(qū)則用來定義幾何對象,。導(dǎo)航的界面顯示是Trolltech[3]公司的Qt/Embedded2.3.6和Qtopia1.7來實現(xiàn)應(yīng)用程序的人機界面交互的。地圖的存儲采用的是SQLite[4]數(shù)據(jù)庫,,它是一款開源的輕型數(shù)據(jù)庫,,占用的資源非常低,在嵌入式設(shè)備中,,只需要幾百K的內(nèi)存就可以運行,。
3.4 GPRS模塊的設(shè)計
GPRS模塊用于實現(xiàn)防盜追蹤功能,處理器利用AT指令(Attention Command)來進行模塊操作[5],。AT指令是一套通過串口來控制MODEM的標準協(xié)議族,,指令的格式以AT開頭,以CR結(jié)束,。詳細的GPRS工作流程如圖4所示,。
3.5 加速度傳感器的設(shè)計
加速度傳感器需實現(xiàn)兩大功能:(1)防盜功能:當發(fā)生盜竊時,加速度信號會發(fā)生不同于靜止狀態(tài)的不規(guī)則變化,,采用標準差分析法對加速度信號進行分析,,可以判斷盜竊事件的發(fā)生;(2)GPS盲區(qū)內(nèi)的定位:利用加速度傳感器獲取車輛的加速度,,當車輛進入“城市峽谷”等GPS盲區(qū)點時,,利用航位推算的DR算法來實現(xiàn)短時間內(nèi)的定位,。
4 系統(tǒng)的實現(xiàn)
本系統(tǒng)以北京海淀區(qū)北四環(huán)為例,,展示了系統(tǒng)的運行情況,驗證了系統(tǒng)的穩(wěn)定性和實用性,。其中圖5顯示的是導(dǎo)航時導(dǎo)航線路的選取與設(shè)置,。圖6是防盜通信設(shè)置主界面,通過此界面來設(shè)置防盜端的手機號碼,、防盜消息的發(fā)送來實現(xiàn)防盜,,同時通過系統(tǒng)密碼的設(shè)置來加強系統(tǒng)的安全性。圖7是多媒體播放部分,圖中顯示的是正在播放音頻文件主界面,。
本文以FS2410開發(fā)板作為硬件支持,,以Linux為開發(fā)平臺,以Qt/Embedded為GUI設(shè)計界面,,通過嵌入式軟硬件結(jié)合的設(shè)計方法,,最終設(shè)計并實現(xiàn)了嵌入式車載導(dǎo)航與防盜系統(tǒng)。
參考文獻
[1] 韋東山.嵌入式Linux應(yīng)用開發(fā)完全手冊[M].北京:人民郵電出版社,,2009.
[2] 劉基余.GPS衛(wèi)星導(dǎo)航定位原理與方法[M].北京:科學出版社,,2008.
[3] Trolltech.Qt reference documentation Qt/Embedded[A]. Norway:Trolltech,2004.
[4] 胡菲菲.SQLite在嵌入式電子地圖中的應(yīng)用[J].湖南科技學院學報,,2008,,29(4):82-84.
[5] 孫勇,劉杰.基于ARM的GPRS通信終端設(shè)計[J].工業(yè)控制計算機,,2010,,23(5):49-52.