GPS技術(shù)在機(jī)車頭燈自動(dòng)尋跡中的應(yīng)用
摘要 介紹GPS技術(shù),分析機(jī)車頭燈自動(dòng)尋跡的可行性,重點(diǎn)闡述如何使用ARM微控制器來(lái)控制GPS接收機(jī),實(shí)現(xiàn)機(jī)車頭燈依照鐵軌曲率自動(dòng)旋轉(zhuǎn)的整體解決方案,以及運(yùn)用占先式多任務(wù)實(shí)時(shí)嵌入式操作系統(tǒng)μCOS-II實(shí)現(xiàn)控制的軟件處理過(guò)程。
關(guān)鍵詞 GPS 機(jī)車頭燈 自動(dòng)尋跡 μCOS-II
引言
GPS(Global Positioning System,全球定位系統(tǒng)),全稱“導(dǎo)航衛(wèi)星測(cè)時(shí)與測(cè)距全球定位系統(tǒng)”,是美國(guó)國(guó)防部于1973年11月授權(quán)開(kāi)始研制的海陸空三軍共用的美國(guó)第二代衛(wèi)星導(dǎo)航系統(tǒng),于1994 年建成, 具有全天候、高精度、自動(dòng)化、高效益、速度快和成本低等顯著優(yōu)點(diǎn)。GPS由空間部分、地面監(jiān)控部分和用戶接收機(jī)三大部分組成。GPS接收機(jī)通過(guò)接收衛(wèi)星信號(hào)解算出自身的經(jīng)緯度位置、速度, 以實(shí)現(xiàn)定位導(dǎo)航及定時(shí)的功能,成為目前世界上應(yīng)用范圍最廣泛、實(shí)用性最強(qiáng)的全球精密授時(shí)、測(cè)距、導(dǎo)航、定位系統(tǒng)。我國(guó)GPS技術(shù)也在測(cè)量、海空導(dǎo)航、車輛監(jiān)控調(diào)度、導(dǎo)彈制導(dǎo)、精密定位、動(dòng)態(tài)觀測(cè)、時(shí)間傳遞、速度測(cè)量等方面加以應(yīng)用。
將GPS應(yīng)用于鐵路列車,最早的報(bào)道是1984年美國(guó)柏林頓北方鐵路公司(Burlington Northern)和Rock well公司的合作。在80年代末期,開(kāi)發(fā)出ARES(Advanced Railroad Electronic System)系統(tǒng),并且已將GPS作為國(guó)家鐵路標(biāo)準(zhǔn)精確定位系統(tǒng)[1]。目前,歐洲各國(guó)鐵路正在加強(qiáng)利用GPS技術(shù),并沿相應(yīng)線路設(shè)置差分機(jī)站,使之與移動(dòng)通信技術(shù)結(jié)合,以提高鐵路的通過(guò)能力[2、3]。在我國(guó),采用GPS、GIS、GSM和計(jì)算機(jī)等高新技術(shù)集成的RITS(鐵路智能運(yùn)輸系統(tǒng))技術(shù),成功地研制出了鐵路“GPS安全報(bào)警系統(tǒng)”,該系統(tǒng)已于2001年8月在我國(guó)第一條客運(yùn)專項(xiàng)——秦沈客運(yùn)鐵路專線上交付使用。因此,GPS實(shí)時(shí)定位技術(shù)在鐵路列車上的應(yīng)用將越來(lái)越普及,而開(kāi)發(fā)GPS在鐵路列車上的應(yīng)用具有廣闊前景。
1 機(jī)車頭燈自動(dòng)尋跡的可行性分析
在我國(guó),機(jī)車頭燈是不能旋轉(zhuǎn)的,它被固定在機(jī)車頭部。當(dāng)機(jī)車進(jìn)入彎道時(shí),機(jī)車頭燈照射的方向和鐵軌線路相切,也就是說(shuō),機(jī)車頭燈不能始終照射在軌道的中心線上。因此,機(jī)車在夜間高速行駛中帶來(lái)了安全隱患。
GPS定位技術(shù)的工作原理是,GPS接收機(jī)從24顆在軌衛(wèi)星中選出4顆最佳位置的衛(wèi)星,衛(wèi)星發(fā)出的時(shí)間信號(hào)好比一個(gè)精確的時(shí)鐘信號(hào),從而算出每個(gè)衛(wèi)星的半徑距離,再以衛(wèi)星的位置利用三角定位原理定出機(jī)車的位置及高度。GPS接收機(jī)定位精度在50m以內(nèi),如果需要的話,加上后期優(yōu)化算法處理過(guò)程,精確度可以更高,而采用DGPS技術(shù)后定位精度可達(dá)3m??梢?jiàn)GPS技術(shù)是一個(gè)高精度的定位技術(shù)。
鐵路不同于公路,一輛確定的機(jī)車只在固定的某一段線路及某一時(shí)段上運(yùn)行。通過(guò)裝有GPS接收機(jī)的控制系統(tǒng)接收離散定位數(shù)據(jù),可以高精度的模擬出該機(jī)車所經(jīng)過(guò)的鐵路軌跡,從而計(jì)算出該段線路所有彎道的起始位置、結(jié)束位置和曲率半徑。當(dāng)系統(tǒng)獲得了以上數(shù)據(jù),根據(jù)算法和控制指令,可以控制步進(jìn)電機(jī)驅(qū)動(dòng)頭燈,使它始終照射在鐵路中心線上。
2 系統(tǒng)整體解決方案
2.1 機(jī)車頭燈自動(dòng)尋跡系統(tǒng)的硬件構(gòu)成
本系統(tǒng)使用ARM核微控制器作為控制中心,外圍電路由GPS接收機(jī)、電氣控制模塊和Flash存儲(chǔ)模塊組成。硬件原理圖如圖1所示。
圖1 機(jī)車頭燈自動(dòng)尋跡系統(tǒng)硬件原理圖
2.1.1 系統(tǒng)中央處理單元
采用Atmel公司的嵌入式CPU芯片AT91R40008,這是一款具有ARM7TDMI核的處理器,外圍接口豐富,處理能力強(qiáng),低功耗,具有兩條主要總線:先進(jìn)系統(tǒng)總線ASB(Advanced System Bus)和先進(jìn)外圍總線APB(Advanced Peripheral Bus)。它用于接收GPS接收機(jī)發(fā)來(lái)的數(shù)據(jù)、進(jìn)行線路數(shù)據(jù)提取,線路算法計(jì)算和產(chǎn)生控制信號(hào)。
2.1.2 GPS接收機(jī)
為簡(jiǎn)化整個(gè)系統(tǒng)的設(shè)計(jì),采用了LBWXG1 Jupiter GPS接收機(jī),這款接收機(jī)的幾個(gè)重要參數(shù)如下:同時(shí)跟蹤12顆衛(wèi)星,重新捕獲時(shí)間小于2.0s,熱啟動(dòng)時(shí)間小于18s,冷啟動(dòng)時(shí)間小于120s,速度精度為0.1m/s,定位精度小于15m(2dRMS),時(shí)間精度為1μs,加速度限制為4g,速度限制為950m/s,數(shù)據(jù)更新率為 1次/s,可連續(xù)更新,能夠輸出NMEA格式或者二進(jìn)制格式數(shù)據(jù)。該型GPS接收機(jī)可以滿足機(jī)車定位精度要求,用于接收衛(wèi)星信號(hào),向中央處理器傳送數(shù)據(jù)。
2.1.3 電氣控制模塊
由專用的硬件電路組成,用于接收微處理器的控制信息,驅(qū)動(dòng)步進(jìn)電機(jī)控制機(jī)車頭燈旋轉(zhuǎn)。
2.2 機(jī)車頭燈自動(dòng)尋跡系統(tǒng)的工作原理
整個(gè)系統(tǒng)解決方案分2個(gè)階段。
第1階段是GIS地圖生成階段。對(duì)于一條從來(lái)沒(méi)有運(yùn)行該系統(tǒng)的鐵路線路來(lái)說(shuō),線路數(shù)據(jù)文件是不存在的,必須通過(guò)調(diào)用系統(tǒng)中線路采集程序生成GIS地圖。首先,Jupiter GPS接收機(jī)通過(guò)GPS天線接收衛(wèi)星信號(hào),讀取RMC數(shù)據(jù),從中解算出機(jī)車移動(dòng)終端的位置信息,就是提取機(jī)車當(dāng)前位置的經(jīng)度(Long)和緯度(Lat)數(shù)據(jù),并以(Lat ,Long)的形式存儲(chǔ)在存儲(chǔ)器中。然后,采用樣條插值擬合算法,優(yōu)化線路數(shù)據(jù)。最后,重復(fù)以上二步,最終形成該條線路離散GIS地圖,并保存在系統(tǒng)Flash中,作為系統(tǒng)參考地圖。
第2階段是系統(tǒng)控制階段。當(dāng)系統(tǒng)生成GIS參考地圖后,就可以在該條線路上運(yùn)行系統(tǒng)控制程序,控制機(jī)車頭燈自動(dòng)尋跡。當(dāng)機(jī)車運(yùn)行時(shí),Jupiter GPS接收機(jī)接收衛(wèi)星信號(hào),通過(guò)RS232串口發(fā)送到中央控制單元MCU,MCU讀取RMC數(shù)據(jù),從中提取經(jīng)度(Long)、緯度(Lat)和速度(Velocity)數(shù)據(jù)。然后,根據(jù)系統(tǒng)位置識(shí)別算法,識(shí)別出與GIS參考地圖數(shù)據(jù)最接近的地理位置,從而判斷機(jī)車前方是否進(jìn)入彎道。若進(jìn)入,則求解彎道的曲率半徑及旋轉(zhuǎn)步數(shù),進(jìn)而控制步進(jìn)電機(jī)旋轉(zhuǎn)。
2.3 機(jī)車頭燈自動(dòng)尋跡系統(tǒng)的軟件構(gòu)成
2.3.1 GPS數(shù)據(jù)的提取
日前,幾乎所有GPS廠商都遵循美國(guó)國(guó)家海洋電子協(xié)會(huì)(National Marine Electronics Association)制定的NMEA-0183 version 2.01通信標(biāo)準(zhǔn)格式,所有數(shù)據(jù)信息以ASCII格式編碼,輸出語(yǔ)句達(dá)十多種,包括GGA、GSA、GSV、RMC、BIT、RID、ZCH等。這些定位數(shù)據(jù)語(yǔ)句不僅給出了位置、速度、時(shí)間等信息,而且指出當(dāng)?shù)氐男l(wèi)星接收情況。實(shí)際導(dǎo)航中,應(yīng)讀取GPS的空間定位數(shù)據(jù)時(shí),可以根據(jù)需要每隔幾秒鐘更新一次數(shù)據(jù)。
Jupiter GPS接收機(jī)語(yǔ)句輸出遵循串行通信協(xié)議,數(shù)據(jù)格式為8位數(shù)據(jù)位、l位起始位、l位停止位,無(wú)奇偶校驗(yàn),并且可以根據(jù)需要選擇傳輸速率。
圖2 GPS數(shù)據(jù)提取流程圖
機(jī)車頭燈自動(dòng)尋跡系統(tǒng)要求高精確度、高實(shí)時(shí)性和高可靠性,因此對(duì)于更新率應(yīng)采用系統(tǒng)最小設(shè)定值:1s更新一次,并且在提取過(guò)程中只需要提取RMC數(shù)據(jù),從中得到經(jīng)度、緯度和速度數(shù)據(jù),提取流程如圖2所示。RMC數(shù)據(jù)設(shè)置包括時(shí)間、經(jīng)度、緯度、高度、系統(tǒng)狀況、速度、過(guò)程和日期等信息。RMC數(shù)據(jù)設(shè)置描述如表1所列,其數(shù)據(jù)設(shè)置示例如下:
$GPRMC,185203,A,3339.7332,N,11751.7598,
W,0.000,121.7,160404,13.8,E*55
表1 RMC數(shù)據(jù)設(shè)置描述
2.3.2 GIS地圖生成算法
該系統(tǒng)采用樣條插值法。樣條插值法克服了分段三次埃爾米特插值的弱點(diǎn),它只需要在插值區(qū)間端點(diǎn)比拉格朗日插值多二個(gè)邊界條件,就可以構(gòu)造出插值函數(shù),而且這類插值函數(shù)在插值節(jié)點(diǎn)處具有二階導(dǎo)數(shù)連續(xù),從而具有更好的光滑性。
首先,線路數(shù)據(jù)采用分段處理的方法。在給定區(qū)間[a,b]上的一個(gè)劃分:a=x0<x1<L<xn=b。已知函數(shù)f(x)在點(diǎn)xj上的函數(shù)值為f(xj)=yj (j=0,1,L,n),其中x代表緯度,y代表經(jīng)度。存在分段函數(shù)
函數(shù)S(x)就是f(x)樣條插值函數(shù),根據(jù)樣條插值函數(shù)f(x)滿足以下條件:
?、?nbsp; 插值條件和函數(shù)連續(xù)條件,S(xj)=yj,S(xj+0)=S(xj-0);
?、?nbsp; n-1個(gè)內(nèi)結(jié)點(diǎn)處的一階導(dǎo)數(shù)連續(xù),S′(xj+0)=S′(xj-0);
?、?nbsp; n-1個(gè)內(nèi)結(jié)點(diǎn)處的二階導(dǎo)數(shù)連續(xù),S″(xj+0)=S″(xj-0);
?、?nbsp; 自然邊界條件,S″(x0)=0, S″(xn)=0??汕蟪龇侄魏瘮?shù)S(x),也就是優(yōu)化軌跡曲線。
然后,根據(jù)分段函數(shù)S(x),在給定的區(qū)間[a,b]上均勻取點(diǎn),一般保證每相鄰兩點(diǎn)之間的距離小于二分之一的GPS精度,形成該段線路離散GIS地圖數(shù)據(jù)庫(kù)。在不同的分段上重復(fù)使用這個(gè)算法,計(jì)算所有的分段,形成完整的GIS參考地圖。
2.3.3 微控制器控制過(guò)程
機(jī)車頭燈自動(dòng)尋跡系統(tǒng)軟件總流程圖如圖3所示。
該系統(tǒng)控制軟件以μCOSII嵌入式實(shí)時(shí)操作系統(tǒng)為平臺(tái),嵌入式操作系統(tǒng)μCOSII是一個(gè)公開(kāi)源代碼的占先式多任務(wù)的微內(nèi)核RTOS,其性能和安全性可以與商業(yè)產(chǎn)品競(jìng)爭(zhēng),具有可移植性、可裁剪性、可剝奪性等優(yōu)點(diǎn)[4]。
在嵌入式操作系統(tǒng)μCOSII中,首先進(jìn)行系統(tǒng)的初始化,開(kāi)定時(shí)器,開(kāi)串口中斷,并進(jìn)行相應(yīng)的I/O設(shè)置。然后,加載2個(gè)主要的任務(wù)。任務(wù)1串口接收程序,負(fù)責(zé)實(shí)時(shí)接收J(rèn)upiter GPS接收機(jī)發(fā)來(lái)的RMC數(shù)據(jù),并提取經(jīng)度(Long)、緯度(Lat)和速度(velocity)數(shù)據(jù),通過(guò)信號(hào)量的方式,發(fā)送給任務(wù)2。任務(wù)2控制算法程序進(jìn)行路徑比較、彎道判斷和旋轉(zhuǎn)角度計(jì)算,得出結(jié)果發(fā)送至控制命令,驅(qū)動(dòng)電氣控制模塊,進(jìn)而驅(qū)動(dòng)步進(jìn)電機(jī)旋轉(zhuǎn)。
圖3 機(jī)車頭燈自動(dòng)尋跡系統(tǒng)軟件總流程圖
結(jié)語(yǔ)
筆者已研制出了實(shí)驗(yàn)系統(tǒng),并且針對(duì)定位精度要求高、響應(yīng)時(shí)間要求快這兩個(gè)關(guān)鍵問(wèn)題提出了相應(yīng)的解決方案,通過(guò)一年多的試運(yùn)行,取得了良好的實(shí)驗(yàn)效果。
隨著GPS定位技術(shù)的日益成熟,定位精度日益提高,在不久的將來(lái),作為獨(dú)立于鐵路信號(hào)系統(tǒng)的GPS列車定位系統(tǒng)對(duì)高速列車的安全將起著重大作用。未來(lái)GPS技術(shù)在鐵路上必將大有作為。