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