|
嵌入式培訓目的及意義_嵌入式GPS數(shù)據(jù)采集系統(tǒng)的設計與實現(xiàn),
1 引 言
嵌入式系統(tǒng)是以應用為中心,計算機技術為基礎,軟硬件可裁剪,對功能、可靠性、成本、體積、功耗等有嚴格要求的專用計算機系統(tǒng)。使用嵌入式系統(tǒng)不僅對穩(wěn)定性有很大的改善,而且使應用模塊化,極大提高程序的可讀性、可擴展性和可移植性[1]。
全球定位系統(tǒng)(Global Position System,GPS)是可在海、陸、空進行全方位實時三維導航與定位的新一代衛(wèi)星導航定位系統(tǒng),具有全天候、高精度和高效益等特點,現(xiàn)GPS已在各領域得到廣泛應用[2]。
本文采用嵌入式操作系統(tǒng)μC/OS-II,控制OEM板接收導航信息,并對GPS數(shù)據(jù)采集系統(tǒng)的硬件和軟件提出了詳細的設計方案,給出了提取GPS特征數(shù)據(jù)的算法,這些對研究嵌入式系統(tǒng)應用、GPS定位及其在組合導航中的應用以及對OEM板的二次開發(fā)等都是實用的。
2 系統(tǒng)總體設計
嵌入式GPS數(shù)據(jù)采集系統(tǒng)由接收部分(OEM板)、電平轉換部分(MAX232)、控制部分、顯示部分組成,硬件結構如圖1所示。
OEM板通過天線接收來自GPS的導航數(shù)據(jù)并經(jīng)過電平轉換后發(fā)送給EP7312, EP7312接收OEM板發(fā)來
的數(shù)據(jù)并存儲、顯示。EP7312與OEM板之間采用異步串行方式通信,幀格式1位起始位,8位數(shù)據(jù)位,1位停止位,無校驗位,波特率為9600 bit.s-1。通過軟件控制EP7312對GPS信號進行實時處理,以獲得當前的經(jīng)度、緯度坐標等所需信息,并通過液晶顯示。
3 系統(tǒng)硬件配置
3.1 接收模塊
GPS-OEM板主要是由變頻器、標頻器、信號通道、微處理器和存儲單元等構成。在上電完成初始自檢后,它將自動地接收來自天線的GPS射頻信號,經(jīng)過變頻、放大、相關、混頻等一系列處理后,完成并行通道對其視界內(nèi)幾何位置最佳的數(shù)顆衛(wèi)星的連續(xù)跟蹤,并且測出信號從衛(wèi)星到接收天線的傳播時間,解譯出GPS衛(wèi)星所發(fā)送的導航電文,最后經(jīng)由I/0口輸出串行數(shù)據(jù),這些數(shù)據(jù)主要是向用戶提供定位信息,包括緯度、經(jīng)度、速度、時間等。
系統(tǒng)接收部分選用的Jupiter TU30-D410 -031,是美國Rockwell公司生產(chǎn)的并行12通道OEM板。該OEM板具有體積小、定時時間短、無靜態(tài)漂移等特點,能夠提供位置、速度、時間、定位與導航信息,以載波相位輸出、1PPS時標和10kHz方波輸出,適合各種導航定位的應用。
3.2 控制模塊
系統(tǒng)采用Cirrus Logic公司的32位嵌入式處理器EP7312。該ARM處理器內(nèi)帶8K緩存,支持Thumb指令。EP7312資源豐富,功能強大,有27個通用I/O,2個UART,2個定時器,并內(nèi)帶LCD控制器,可直接連接單色、彩色LCD。EP7312功耗很低,最大不超過90mW。
采用EP7312構成的GPS應用系統(tǒng),具有功耗低、體積小、使用靈活的特點,系統(tǒng)的結構和功能可以根據(jù)需求的不同進行個性化配置,而且可以很方便地進行系統(tǒng)外設的擴展。
3.3 顯示模塊
本系統(tǒng)采用液晶顯示器是SHARP公司的彩色LCD,有效顯示點陣為320×240,其功耗較低,抗干擾能力強,體積小。由于EP7312內(nèi)部帶有LCD控制器,當系統(tǒng)接收OEM板輸出的導航數(shù)據(jù)信息時,只要設置其內(nèi)部控制器的寄存器就可以對LCD實現(xiàn)控制,然后再通過向Frame Buffer輸出接收到的并經(jīng)過處理的導航信息,這時顯示屏上就可以顯示定位點精確的經(jīng)度、緯度及本地時間了。
4 系統(tǒng)軟件設計及實現(xiàn)
4.1 μC/OS-II簡介
μC/OS-II是開源實時嵌入式操作系統(tǒng),絕大部分代碼是用C編寫的,其可移植性較強,可廣泛地應用于各種不同的硬件平臺上[3]。μC/OS-II是一個占先式實時系統(tǒng),當有優(yōu)先級高的任務就緒時,原任務將被打斷而轉為優(yōu)先級較高的任務,這也是實時性的重要保證。μC/OS-II具體移植可參照其它資料。
4.2 應用程序設計
根據(jù)設計要求,系統(tǒng)將應用程序劃分為采集存儲和顯示兩個任務,其優(yōu)先級分別為10和11。采集存儲任務的主要功能是對導航數(shù)據(jù)采集,并且每30秒作為歷史記錄存儲一次,以便與當前的導航信息比較。首先必須掌握系統(tǒng)的通信協(xié)議。GPS-OEM板采用NMEA-0183通信標準格式,可以輸出多種句型,均以“$”開頭。輸出的語句按串口通信協(xié)議,波特率9600bit.s-1,1位開始位,8位數(shù)據(jù)位,1位停止位,無奇偶校驗。輸出數(shù)據(jù)采用的是ASCⅡ碼字符,內(nèi)容包含了緯度、經(jīng)度、速度、日期、航向及衛(wèi)星狀況等信息。語句達十余種,本系統(tǒng)所使用的語句僅限于$GPRMC定位數(shù)據(jù)語句。其結構為:
$GPRMC,<1>,<2>,<3>,<4>,<5>,基于嵌入式gps, 一流的嵌入式研發(fā), 裝嵌入式假牙難受嗎, 嵌入式冰霜壽命, 嵌入式簡約佛龕裝修, 嵌入式設置串口, ipad嵌入式, 嵌入式的設備有哪些, 嵌入式軟件難學嗎, 嵌入式吸頂風扇, 嵌入式轉前端開發(fā), arm嵌入式主機, 嵌入式計算機程序, 嵌入式的例子, 嵌入式三級模擬題, 嵌入式該怎么介紹, 嵌入式升降系統(tǒng)電梯, ddc和嵌入式, 嵌入式設備是啥, 什么嵌入式培養(yǎng), 嵌入式培訓排名6, 李雅普諾夫嵌入式, 電機測速實驗嵌入式,
<6>,<7>,<8>,<9>,<10>,<11>*hh
其中“GP”為交談識別符;“RMC”為語句識別符;“*”為校驗和識別符;“hh”為校驗和,其代表了“$”與“*”之間所有字符的按位異或值(不包括這兩個字符)。
$GPRMC語句數(shù)據(jù)區(qū)的內(nèi)容為:
<1>定位點的協(xié)調(diào)世界時間(UTC),hhmmss(時分秒)格式;
<2>定位狀態(tài),A=有效定位,V=無效定位;
<3>定位點緯度,ddmm.mmmm(度分)格式;
<4>緯度半球,N(北半球)或S(南半球);
<5>定位點經(jīng)度,dddmm.mmmmm(度分)格式;
<6>經(jīng)度半球,E(東經(jīng))或W(西經(jīng));
<7>地面速率,000.0節(jié)~999.9節(jié);
<8>地面航向,000.0度~359.9度;
<9>UTC日期,ddmmyy(日月年)格式;
<
10>磁偏角,000.0度~180度;
<11>磁偏角方向,E(東)或W(西)。
由于TU30-D410-031的波特率設置為9600bit.s-1,因此任務運行時,首先應將串行口的波特率設為此值,EP7312就會接收到OEM板的定位數(shù)據(jù)。在串口收到信息后,先判別是否為語句引導頭“$GPRMC”,否,則放棄此次接收;是,則接收數(shù)據(jù)內(nèi)容。由于接收到$GPRMC幀頭后,再接收11個數(shù)據(jù)包即完成整幀數(shù)據(jù)的接收,存儲后系統(tǒng)將調(diào)用等待延時函數(shù)。
顯示任務的功能是負責所采集的數(shù)據(jù)在LCD上顯示出來,每隔一秒刷新一次。$GPRMC語句輸出了基本的定位信息,可以滿足一般用戶的使用要求。接收來的數(shù)據(jù)存放在內(nèi)存中,提取時先從數(shù)據(jù)中讀取定位狀態(tài)判斷是否有效,若有效再提取相應的時間及經(jīng)緯度等信息。應注意的是在處理北京時間時應在UTC時間上加上8h才是準確的北京時,在超出24h時應作減24h處理。系統(tǒng)運行時GPS定位信息在LCD上顯示界面如圖2。
5 結束語
本文論述了嵌入式系統(tǒng)對GPS數(shù)據(jù)的讀取、處理及顯示的方法,分析了GPS模塊的信息格式并編制通信軟件,成功地實現(xiàn)了GPS定位信息的接收與顯示。該系統(tǒng)程序簡單,可靠,可運用于車輛的導航系統(tǒng)中,另外,其方法思路對嵌入式系統(tǒng)、OEM板開發(fā)也具有很好的參考價值。
參考文獻
[1] 王田苗.嵌入式系統(tǒng)設計與實例開發(fā)[M].北京:清華大學出版社,2003.
[2] 王惠南. GPS導航原理與應用[M].北京:科學出版社,2003.
[3] Jean J. Labrosse.μC/OS-II—源碼公開的實時嵌入式操作系統(tǒng)[M].邵貝貝,譯.北京:中國電力出版社. |
|