基于GPS的時標系統(tǒng)實現(xiàn)方法探究
摘要: 介紹一種利用全球定位系統(tǒng)(GPS)并輔以復雜可編程邏輯器件,給高速數(shù)據(jù)采集系統(tǒng)中的采集數(shù)據(jù)貼上精確時間標簽的方法。該方法顯著地提高了時間標簽的精度和可靠性。利用MAX PLUSⅡ開發(fā)環(huán)境驗證了設計方案的正確性。此設計方案已經(jīng)成功地應用到自行設計的高速數(shù)據(jù)采集卡中。
本文引用地址:http://m.butianyuan.cn/article/88277.htm關鍵詞: 全球定位系統(tǒng)(GPS) 復雜可編程邏輯器件 時間標簽 ADuC812
基于全球定位系統(tǒng)(GPS)的雙端行波故障定位系統(tǒng)是利用行波的第一個波頭到達線路兩端的時間差來計算故障點的位置的。由于行波的傳播速度非常快(約為光速的98%)[1],因此對行波波頭到達線路兩端時刻的時間精度要求非常高。在現(xiàn)場運行中,由于衛(wèi)星信號調整、天線干擾以及GPS接收系統(tǒng)故障等原因,使得GPS接收系統(tǒng)可能在短時間內(nèi)失步。這時不同廠站間GPS接收器發(fā)出的秒脈沖之間的相對誤差可能達到幾百μs。再者,相對于高速數(shù)據(jù)采集系統(tǒng)而言,單片機對時間的分辨能力很低,而且單片機不能直接得到故障發(fā)生時對應于靜態(tài)存儲器(SRAM)的確切地址。這兩方面的因素都會大大降低時間標簽的精度和可靠性,直接影響故障測距的精度,甚至導致定位失敗。針對上述問題,對高速數(shù)據(jù)采集系統(tǒng)中精確時標的實現(xiàn)方法進行了探討。
1 全球定位系統(tǒng)
GPS是美國于1993年全面建成并運行的新一代衛(wèi)星導航、定位和授時系統(tǒng)。電力系統(tǒng)中主要是利用GPS的精確授時特點。GPS接收器在任意時刻能同時接收其視野范圍內(nèi)4~8顆衛(wèi)星信號,其內(nèi)部硬件電路和處理軟件通過對接收到的信號進行解碼和處理,能從中提取并輸出兩種時間信號:(1)時間間隔為1s的脈沖信號PPS,其脈沖前沿與國際標準時間(格林威治時間)的同步誤差不超過1μs;(2)經(jīng)串行口輸出的與PPS脈沖前沿對應的國際標準時間和日期代碼。若以PPS信號作為標準時鐘源去同步電網(wǎng)內(nèi)運行的各時鐘,則能保證各廠站時鐘的高精確度同步運行。
2 ADuC812
ADuC812芯片是美國AD公司推出的微轉換器。它是一個完整的數(shù)據(jù)采集微系統(tǒng),其組成為:一個8通道、5μs轉換時間、精度自校準、12位精度、逐次逼近的ADC;兩個12位DAC;10.5KB的閃存E2PROM;16位計數(shù)/定時器和32條可編程I/O接口的8051/8052微控制器;256字節(jié)的SRAM[3]。由于ADuC812的特殊功能寄存器組中添加了一個DPP(地址為84H),它與特殊功能寄存器DPH、DPL配合,使得ADuC812能夠訪問16MB的外部數(shù)據(jù)地址空間。ADuC812的內(nèi)核是國內(nèi)技術人員熟悉的Intel8051,應用開發(fā)比較方便。
3 復雜可編程邏輯器件及MAX PLUSⅡ開發(fā)平臺
本設計選用ALTERA公司的MAX 7000系列復雜可編程邏輯器件(CPLD)。其高性能和高密度是基于它先進的多重陣列矩陣架構。它采用E2CMOS工藝制作,傳播延遲最小為3.5ns,可以實現(xiàn)速度高于200MHz的計數(shù)器,非常適合高速設計時應用。該公司推出的MAX PLUSⅡ軟件是一款易于使用的開發(fā)工具,其界面友好、集成化程度高、兼容工業(yè)標準、支持FLEXMAXACEX1K等系列產(chǎn)品[4]。CPLD要實現(xiàn)的邏輯功能一般是在MAX PLUSⅡ環(huán)境下通過硬件描述語言開發(fā)出來的,并能脫離硬件對設計方案進行仿真,在確認邏輯功能正確無誤的情況下,通過并行口下載燒到CPLD中。CPLD在實際應用中有如下優(yōu)點:
(1)以內(nèi)部連線代替外部器件的連接,降低了噪聲干擾,實現(xiàn)了線路互聯(lián)的較短延時。
(2)可以在板編程,提高了系統(tǒng)的PCB設計和調試效率。
(3)在實際調試前,可由MAX PLUSⅡ開發(fā)平臺對CPLD的邏輯功能進行仿真,確保了系統(tǒng)邏輯設計的正確性[5]。
4 GPS失步監(jiān)測及時鐘信號實現(xiàn)方案
對GPS的PPS失步監(jiān)測[6]是通過解讀其有關輸出語句報文信息來實現(xiàn)的。報文信息通常使用NMEA-0183格式輸出,目前廣泛使用V2.0版本,輸出的數(shù)據(jù)代碼為ASCⅡ碼字符。在NMEA-0183的主要語句中,GPRMC為時間、定位和日期輸出語句,其標準格式為:
$GPRMC,hhmmss.ss,a,ddmm.mmmm,n,dddmm.mmmm,w,z.z,y.y,ddmmyy,d.d, v*CC
每一項以逗號相隔,其中第一項為格林威治時間的時、分、秒信息;第九項為格林威治時間的日、月、年信息;第二項為定位數(shù)據(jù)是否有效信息,“A”表示有效,“V”表示警告或者數(shù)據(jù)無效。單片機通過解讀此報文信息便可判斷GPS是否失步。
在GPS接收器工作正常時(GPS接收器能接收到衛(wèi)星信號),由GPS提供秒脈沖信號。否則,由頻率為20MHz的高精度恒溫晶振(OXOF系列頻率精度為1×10-8~1×10-9)和一個25位計數(shù)器臨時替代GPS發(fā)出秒脈沖信號,使不同廠站間時鐘偏差在一定時間內(nèi)控制在要求的范圍。時鐘系統(tǒng)原理圖如圖1所示。
時鐘系統(tǒng)工作過程如下:
(1)采用Jupiter型GPS接收器,在秒脈沖信號前沿來臨前先發(fā)報文。
(2)采用單片機(如AT89C2051)接收GPS串行報文數(shù)據(jù),產(chǎn)生年、月、日、時、分、秒信號,并判斷GPS即將發(fā)出的秒脈沖信號是否有效,從而控制P1.0口的狀態(tài)。
(3)采用頻率為20MHz的高精度恒溫晶振驅動25位計數(shù)器計數(shù),當計數(shù)器計滿1312D00H個數(shù)(時間為1s)時,計數(shù)器清零重新開始計數(shù),同時在其輸出口置“1”。當計數(shù)器計到7D000H個數(shù)(時間為25.6ms)時,在其輸出口置“0”,產(chǎn)生秒脈沖信號。
(4)當單片機獲悉GPS接收器跟蹤到衛(wèi)星信號時,P1.0口置“1”,與門(1)打開,與門(2)關閉,在與門(1)的輸出口輸出精確的秒脈沖信號,同時每一個秒脈沖信號上跳沿對25位計數(shù)器清零使之重新開始計數(shù),為計數(shù)器提供精確的時間基準,以減少計數(shù)器的累計誤差。
(5)當單片機獲悉GPS 接收器沒有跟蹤到衛(wèi)星信號時,P1.0口置“0”,與門1關閉,與門2打開,由25位計數(shù)器臨時產(chǎn)生秒脈沖信號。
用MAX PLUSⅡ做仿真實驗時,由于計算機資源不足,無法進行1秒鐘的仿真實驗,可以仿真1ms的情況。計數(shù)器計滿4E20H個數(shù)(0000H-4E1FH),時間為1ms。圖2和圖3反映的是同一次仿真的兩個不同片斷。
5 精確時間標簽的實現(xiàn)方案
時鐘系統(tǒng)能保證在任何情況下產(chǎn)生一個穩(wěn)定的、高精度的秒脈沖信號,從而為高速數(shù)據(jù)采集系統(tǒng)中的采集數(shù)據(jù)貼上精確的時間標簽打下堅實基礎。
時標系統(tǒng)原理圖如圖4所示。高速ADC、地址發(fā)生器、地址計數(shù)器、計時器在時鐘源CLK(5MHz)的同步下以統(tǒng)一的步調工作。在ADuC812初始化時,將P3.5置“0”,P3.4發(fā)出清零脈沖對地址發(fā)生器和地址計數(shù)器同時清零;當故障信號出現(xiàn)時,ADuC812將P3.5置“1”,計時器和地址計數(shù)器同時停止計數(shù);暫態(tài)信號記錄完畢后,ADuC812分時讀出計時器中的值并將該數(shù)值保存在雙口RAM中,此值即為精度為0.2μs的時間信息;ADuC812分時讀出地址計數(shù)器中的值并將該數(shù)值保存在雙口RAM中,此地址的精確時間即為計時器中的計數(shù)值。這樣,就為高速數(shù)據(jù)采集系統(tǒng)中的采集數(shù)據(jù)貼上了精確的時間標簽。
時標系統(tǒng)工作過程如下:
(1)ADuC812初始化時P3.5置“0”,同時P3.4發(fā)出清零脈沖使地址發(fā)生器和地址計數(shù)器同步計數(shù)。ADuC812控制內(nèi)部的A/D轉換模塊對經(jīng)過調整的取自電流互感器二次側的電流進行A/D轉換。采用半波比較,在每個工頻內(nèi)采集36個點,分別用第n個點和第n+18個點、第n+1個點和第n+19個點比較,依此類推。如果大于事先設定的門檻值即認為故障已經(jīng)發(fā)生,ADuC812將P3.5置“1”,計時器和地址計數(shù)器同時停止計數(shù),計時器中的數(shù)據(jù)即為地址計數(shù)器記錄的對應于SRAM相同地址的采集數(shù)據(jù)的時間標簽。由于高速ADC的轉換頻率固定(本次設計為5MHz),所以,可以此為基準為整個SRAM中的采集數(shù)據(jù)貼上時間標簽。
(2)當P3.5置“0”即STOP端口為低電平時,計時器在5MHz的時鐘源下以相同的頻率計數(shù)。由于它是一個24位的計數(shù)器,從而確保了計時器能夠記錄一個整秒,并為一個整秒刻上了時鐘系統(tǒng)輸出的PPS信號(或SECOND信號)的上跳沿給計時器清零,從而為計時器提供精確的時間基準,以消除計時器的累計誤差。
(3)當P3.5置“1”即STOP端口為高電平時,計時器停止計數(shù),在此狀態(tài)下時鐘系統(tǒng)輸出的PPS信號(或SECOND信號)的上跳沿不能對計時器清零。
(4)地址計數(shù)器的工作過程與計時器的工作過程類似,唯一的區(qū)別是地址計數(shù)器的清零信號(CLR)是在初始化時由ADuC812的P3.4口發(fā)出的。由于地址發(fā)生器和地址計數(shù)器共用同一個清零信號,從而確保地址發(fā)生器和地址計數(shù)器中的計數(shù)值完全相同。同理,當STOP端口為高電平時,地址計數(shù)器也停止計數(shù),在此狀態(tài)下ADuC812發(fā)出的清零信號不能改變地址計數(shù)器中的計數(shù)值。
(5)由于ADuC812是一種8位單片機,所以地址計數(shù)器和計時器中的數(shù)據(jù)只能“分批”地送至雙口RAM中保存。所以要設計鎖存器、譯碼電路和總線隔離電路,避免總線沖突以及保證總線上的數(shù)據(jù)能正確無誤地傳遞。在本次設計中,當ADuC812的特殊功能寄存器DPP高3位的值為“00H”時將計時器的高8位數(shù)據(jù)通過ADuC812送至雙口RAM中。依此類推,當特殊功能寄存器DPP高3位的值為“05H”時將地址計數(shù)器的低8位數(shù)據(jù)通過ADuC812送至雙口RAM中保存。當特殊功能寄存器DPP為其它值時釋放數(shù)據(jù)總線,便于ADuC812進行其它操作。其仿真結果如圖5所示。
本文對GPS失步后的補救措施及給高速數(shù)據(jù)采集系統(tǒng)中的采集數(shù)據(jù)貼上精確時間標簽的方法進行了詳盡的敘述和仿真,得出如下結論:
(1)在高頻恒溫晶振的精度得到保證的前提下,時鐘系統(tǒng)產(chǎn)生的秒脈沖信號能滿足實際應用的要求。
(2)設高速ADC的轉換頻率為5MHz,時標系統(tǒng)能為存入SRAM中的轉換數(shù)據(jù)貼上精度為0.2μs的時間標簽。
(3)通過CPLD間接地實現(xiàn)了“低速”的單片機系統(tǒng)對高速數(shù)據(jù)采集系統(tǒng)的實時監(jiān)視。
參考文獻
1 曾祥君,尹項根,陳德樹等. 基于整個輸電網(wǎng)GPS行波故障定位系統(tǒng)的研究.電力系統(tǒng)自動化,1999(10)
2 高厚磊,厲吉文,文鋒等. GPS及其在電力系統(tǒng)中的應用.電力系統(tǒng)自動化,1995;19(9)
3 劉書明,馮小平.數(shù)據(jù)采集系統(tǒng)芯片ADuC812原理與應用.西安:西安電子科技大學出版社,2000
4 趙曙光,郭萬有,楊頌華. 可編程邏輯器件原理、開發(fā)與應用. 西安:西安電子科技大學出版社,2000
5 姚 嘉,施旭霞. CPLD在超高速數(shù)據(jù)采集系統(tǒng)中的應用.電子技術應用,1998; 24(10)
6 Zodiac Serial Data Interface Specification. America:Rockwell, 1996
塵埃粒子計數(shù)器相關文章:塵埃粒子計數(shù)器原理 晶振相關文章:晶振原理 脈沖點火器相關文章:脈沖點火器原理
評論