引言
全球定位系統(global positioning system, GPS)自從建成以來,得到了廣泛的應用,在航天、軍事、經濟、通信、電力、交通等領域發揮了巨大的作用。授時系統的功能是使鐘表或測量儀器的時鐘與國際標準時間達到精確同步。通常可用原子鐘來保證儀器的時間與國標時間達到精確同步,但是原子鐘價格昂貴。常用的授時方法主要有無線電授時、衛星授時、網絡授時等。其中利用導航衛星進行物體定位、時鐘授時與同步數據采集控制,可以達到傳統測量控制手段所不及的精確程度,同時可以獲得本地定位信息等數據。這種衛星定位授時同步技術在航空航海、陸上交通、科學考察、極地探險、地理測量、氣象預報、設備巡檢、系統監控等方面得到廣泛應用。GPS時鐘采用世界協調時-UTC,在GPS衛星上載有與UTC時間同步的銫原子鐘,成為一種空間的時間基準,用戶可接收GPS衛星的時間服務信號,校正本機時鐘,與GPS時鐘同步,完成時間傳遞任務,稱為GPS授時。
2 工作原理
GPS授時服務器主要由AT89S52單片機、LCM顯示模塊和GPS OEM 模塊 GPS25-LVS以及輸出模塊等組成。它能夠顯示經緯度、北京時間、速度等實時信息,其系統原理見圖1。
單片機作為主控制器,對GPS25-LVS模塊進行初始化,GPS25-LVS模塊接收衛星傳送的信號,輸出NMEA-0183格式語句,經過單片機的解算處理,最后送至LCM液晶顯示模塊進行顯示,同時由輸出模塊提供多種電氣特性的秒脈沖(1PPS)信號。
3 硬件設計
3.1 GPS OEM模塊的選擇
GARMIN公司的GPS25-LVS系列OEM板[4]采用單一5V供電,內置保護電池,RS232、TTL兩種電平自動輸出NMEA 0183 2.0格式(ASCII字符型)語句,是目前應用最廣泛的GPS接收處理板之一,能滿足各種導航和授時領域的需求。具有很高的性價比和強有力的市場競爭力,其主要性能特點如下:
并行12通道,可同時接收12顆衛星
定位時間:重捕定位精度:15mRMS/差分時可接收實時差分信號用于精確定位,信號格式為RTCM SC-104,波特率自適應。
1PPS秒脈沖信號輸出,精度指標高達10-6秒
雙串口(TTL)輸出,波特率可由軟件設置(1200~9600)
靈敏度:-166Dbw
3.2 GPS25-LVS 模塊的數據輸出格式
GPS25-LVS的通信波特率默認值為4800,1個起始位,8個數據位,1個停止位,無奇偶校驗。通常使用NMEA-0183格式輸出,數據代碼為ASCII碼字符。NMEA-0183是美國海洋電子協會為海用電子設備制定的標準格式,目前廣泛使用V2.0版本。由于該格式為ASCII碼字符串,比較直觀和易于處理,在許多高級語言中都可以直接進行判別、分離,以提取用戶所需要的數據。GPS25-LVS系列OEM板可輸出12句語句,分別是GPGGA,GPGSA,GPGSV,GPRMC,GPVTG,LCGLL,LCVTG,PGRME,PGRMF,PGRMT,PGRMV,GPGLL。
3.3 GPS OEM 與AT89S52 的連接
GPS25-LVS OEM 板有2個串行口, 其串口2 用來接收RTCMSC2104 版本2. 1 的GPS 差分信息,相位數據輸出。串口1 是異步串行數據通信接口,因此可與AT89S52 單片機進行異步串行數據通信。由于串口配置的電平為標準的RS-232電平,而AT89S52 單片機的輸出電壓為0~5V 的TTL 電平,二者的電壓規范不一致,所以不能直接進行通訊。 為使TTL 電平與RS-232 標準兼容,采用了MAXIM 公司的多路發送,接收集成芯片MAX232,實現單片機與OEM 板的串行通信。GPS25-LVS OEM板初始化后,還會輸出秒脈沖信號。1pps信號由CPLD處理后一路作為單片機的外部中斷源,以實現時間信息的同步處理,另外也用來監測信號是否正常。
3.4 矩陣鍵盤及LCM顯示
設計2×4 矩陣鍵盤,可以在系統運行時響應用戶的操作。按鍵有 “菜單”、“向上”、“向下”和“清除”等功能。單片機程序運行中實時檢測按鍵操作,當有按鍵按下后,進行去抖、掃描等操作,取得按鍵的鍵值,根據鍵值和當前狀態,執行不同代碼以實現鍵盤復用。
在系統中, 使用HTM4002A的點陣圖形液晶模塊,該模塊使用S6A0069控制驅動器,內置國標一、二級字庫,該液晶模塊不僅顯示字符、漢字,而且也可以顯示連續、完整的圖形。 該模塊使用單電源5V供電,無需負壓。
3.5 邏輯電路及輸出
邏輯電路主要由CPLD來實現,采用了Altera的 MAX 7000S系列的EPM-7128,基于電可擦除可編程只讀存儲器(EEPROM)的MAX7000產品采用先進的CMOS工藝制造,提供從32到512個宏單元的密度范圍,速度達3.5 ns的管腳到管腳延遲。支持在系統可編程能力(ISP),可以在現場輕松進行重配置。
EPM-7128產生本地秒脈沖,它在有GPS秒脈沖時不起作用,在失去GPS信號時代替GPS給單片機提供秒脈沖輸出。如圖2所示,信號1即為本地秒脈沖,它是依據前1S的1PPS信號上升沿為起始時刻,定時1S得到的,同時為了在一定誤差情況下使自產生的脈沖不至于覆蓋正常工作時的GPS秒脈沖,所以加了一段延時△t,而在檢測到失去GPS信號時,就要去掉△t,以代替GPS秒脈沖。信號2為EPM-7128輸出的一個窄脈沖信號,用來屏蔽脈沖干擾,它分布在GPS秒脈沖上升沿兩側,與GPS秒脈沖進行與操作。在窄脈沖之外的脈沖干擾就會被屏蔽。這樣就實現了防止GPS信號失效和抗干擾脈沖功能。
輸出模塊包括MAX232、DS90C031、74HC245等多種芯片,它們將EPM-7128的輸出轉換為232、差分及TTL等多種電氣特性的秒脈沖信號的輸出,為各種應用提供便捷的解決方案。
4 軟件設計
本系統采用C51編程[2]實現,主程序流程見圖3.首先初始化,OEM板輸出的數據是以數據流的形式輸出,采集的起始時刻未必是一幀數據的開始時刻,所以在數據采集時,必須先判斷字頭塊,在接收到字頭塊后,開始采集數據。設定單片機的波特率為4800bit/s,使其與GPS OEM 板的傳輸波特率一致。給OEM 板發送一條指令,使其發送的0183 數據格式為“$GPGGA”,該指令預先存在數據存儲器里,用循環方式順次從程序存儲器里取出數據就可循環發送,然后OEM 板將輸出相應格式的數據。單片機對接收的信息進行判斷,由于接收到的時間是協調世界時(UTC),因此在此時間上加上8小時才是準確的北京時間,并對時間信息做相應的處理,然后進行顯示。
5 結論
本文采用的GPS OEM 板的串口輸出的協調世界時進行授時,其操作簡便,實用性強,并且提供了豐富的秒脈沖接口,能滿足大多數用戶的要求。在GPS信號正常時具有較高的精度,授時系統經實驗室測試,誤差小于100ns,結果較為滿意。在GPS信號失效時也能保證相當的精確性,但其精度和穩定度與恒溫晶振的頻率精度和穩定度有直接的關系,如果CPLD采用精度更高的時鐘信號,結果將會更為理想。
責任編輯:gt
-
單片機
+關注
關注
6043文章
44622瀏覽量
638527 -
gps
+關注
關注
22文章
2903瀏覽量
166728 -
服務器
+關注
關注
12文章
9303瀏覽量
86061
發布評論請先 登錄
相關推薦
評論