專利名稱:一種高精度同步時鐘調(diào)整方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種位于不同地理位置的對時單元的時鐘同步調(diào)整方法。
背景技術(shù):
傳統(tǒng)的同步報文+秒脈沖的對時方式中,秒脈沖信號作為一個觸發(fā)信號,MCU通過該信號來讀取當前的時間值,與同步報文中的時間進行比較,若同步報文中的時間大于該秒脈沖的時間,則調(diào)快時鐘,若同步報文中的時間小于當前時間,則調(diào)慢時鐘。此種方法對時鐘的調(diào)整是單向的,時鐘難以穩(wěn)定,波動大,且對偶爾偏差響應(yīng)劇烈。傳統(tǒng)方法存在以下問題
1 =PPS脈沖識別造成的延時。傳統(tǒng)方式中MCU通過中斷來識別PPS秒脈沖,雖然中斷能有效避免同步設(shè)備系統(tǒng)運行負荷對脈沖的響應(yīng)速度的影響,但是從硬件響應(yīng)中斷到進入中斷程序再到讀取當前之間,這個過程本身消耗的時間在高精度的同步要求下是不能被忽略的。2 對時設(shè)備時鐘的抖動問題。傳統(tǒng)方式中,根據(jù)時間報文和PPS秒脈沖確定時鐘偏差,慢了加,快了減。此種方式對時設(shè)備時鐘抖動大,在小范圍能難以穩(wěn)定,更難達到精確穩(wěn)定時鐘的要求。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種能夠為不同地域的對時單元提供精確的絕對時間的對時方法。為了達到上述目的,本發(fā)明的技術(shù)方案是提供了一種高精度同步時鐘調(diào)整方法, 其特征在于步驟為
步驟1、由GPS時鐘服務(wù)器通過GPS天線與衛(wèi)星進行對時,對時完成后,GPS時鐘服務(wù)器通過網(wǎng)口輸出NTP協(xié)議報文及與時間整秒同步的PPS秒脈沖;
步驟2、在前三秒內(nèi),對時設(shè)備直接將NTP協(xié)議報文中的時間寫入本地時鐘; 步驟3、對時設(shè)備等待PPS秒脈沖,硬件在捕捉到PPS秒脈沖后,硬件時標功能記錄本地時鐘硬件時間,進入步驟4;
步驟4、判斷第一次對時是否完成,若是,則跳至步驟6,否則進入步驟5 ; 步驟5、將當前PPS脈沖到來時本地時鐘的硬件時間與之前幾秒脈沖到來時記錄的硬件時間進行比較,計算固定頻率后返回步驟3,固定頻率計算完成后根據(jù)固定頻率修改當前時鐘速度,重復(fù)多次步驟3至步驟5,第一次對時完成;
步驟6、讀取本地時鐘的硬件時間及NTP協(xié)議報文時間字段中的GPS時間,計算兩者之間的偏差值,判斷該偏差值是否縮小到臨時頻率調(diào)整的門限值,若否,則根據(jù)該偏差值調(diào)整本地時鐘的當前運行頻率后返回步驟3,若是,則進入步驟7 ;
步驟7、判斷固定頻率變量Rb是否有更新,若有更新,則將本地時鐘的運行頻率調(diào)整為固定頻率變量Rb所存儲的固定頻率后進入步驟8,若沒有更新,則直接進入步驟8 ;
3步驟8、進行臨時頻率調(diào)整根據(jù)偏差值調(diào)整時鐘的當前運行頻率,當調(diào)整時間范圍到后,將當前運行頻率恢復(fù)到當前的固定頻率變量Rb所存儲的固定頻率,進入步驟9 ;
步驟9、進行固定頻率計算步驟類似步驟5,根據(jù)當前及歷史的固定頻率通過多次均值濾波算法得到新的固定頻率,并將其保存入固定頻率變量Rb,返回步驟3。結(jié)合本發(fā)明目前在直流電網(wǎng)同步數(shù)據(jù)采集中的應(yīng)用,相對于傳統(tǒng)的時鐘同步方式,實現(xiàn)的有益效果主要體現(xiàn)在以下幾個方面
1、低成本優(yōu)勢本發(fā)明使用價格低廉的NTP時鐘服務(wù)器,一臺時鐘服務(wù)器可作為多個采集板的對時時鐘源,有效的節(jié)約了直流電網(wǎng)同步采集實施的成本。2、高對時精度本發(fā)明實現(xiàn)的對時精度已經(jīng)遠遠超過傳統(tǒng)的秒脈沖配合NTP報文網(wǎng)絡(luò)對時方式。3、靈活的脈沖輸出,無需外擴電路,節(jié)約系統(tǒng)設(shè)計,實施成本系統(tǒng)在對時完成后能夠輸出與絕對時間重合的連續(xù)脈沖,供給電量采集模塊作為同步采集信號。該脈沖的占空比,周期,啟停時間完全又軟件實現(xiàn),硬件電路無需做任何修改就能根據(jù)實際應(yīng)用提供相應(yīng)的脈沖群,大大節(jié)約了直流電網(wǎng)電量同步采集系統(tǒng)的實現(xiàn)難度及系統(tǒng)成本。
圖1為實施本發(fā)明的系統(tǒng)框圖2為本發(fā)明提供的一種高精度同步時鐘調(diào)整方法的流程圖。
具體實施例方式為使本發(fā)明更明顯易懂,茲以一優(yōu)選實施例,并配合附圖作詳細說明如下。本發(fā)明提供的一種高精度同步時鐘調(diào)整方法應(yīng)用在如圖1所示的系統(tǒng)上,其步驟為
步驟1、由GPS時鐘服務(wù)器通過GPS天線與衛(wèi)星進行對時,對時完成后,GPS時鐘服務(wù)器通過網(wǎng)口輸出NTP協(xié)議報文及與時間整秒同步的PPS秒脈沖;
步驟2、在前三秒內(nèi),對時設(shè)備直接將NTP協(xié)議報文中的時間寫入本地時鐘; 步驟3、對時設(shè)備等待PPS秒脈沖,硬件在捕捉到PPS秒脈沖后,硬件時標功能記錄本地時鐘硬件時間,進入步驟4 ;
步驟4、判斷第一次對時是否完成,若是,則跳至步驟6,否則進入步驟5 ; 步驟5、將當前PPS脈沖到來時本地時鐘的硬件時間與之前幾秒脈沖到來時記錄的硬件時間進行比較,計算固定頻率后返回步驟3。固定頻率計算完成后根據(jù)固定頻率修改當前時鐘速度,重復(fù)多次步驟3至步驟5,第一次對時完成;;
步驟6、讀取本地時鐘的硬件時間及NTP協(xié)議報文時間字段中的GPS時間,計算兩者之間的偏差值,判斷該偏差值是否縮小到臨時頻率調(diào)整的門限值,若否,則根據(jù)該偏差值調(diào)整本地時鐘的當前運行頻率后返回步驟3,若是,則進入步驟7 ;
步驟7、判斷固定頻率變量Rb是否有更新,若有更新,則將本地時鐘的運行頻率調(diào)整為固定頻率變量Rb所存儲的固定頻率后進入步驟8,若沒有更新,則直接進入步驟8 ;
步驟8、進行臨時頻率調(diào)整根據(jù)偏差值調(diào)整時鐘的當前運行頻率,當調(diào)整時間范圍到后,將當前運行頻率恢復(fù)到當前的固定頻率變量Rb所存儲的固定頻率,進入步驟9;步驟9、進行固定頻率計算步驟類似步驟5,根據(jù)當前及歷史的固定頻率通過多次均值濾波算法得到新的固定頻率,并將其保存入固定頻率變量Rb,返回步驟3。在上述方法中固定頻率是指對時單元的時鐘以一定速率行進,該速率基本和 GPS時鐘一致,但不可能完全吻合,所謂的固定頻率即通過計算得到對時單元時鐘頻率的一個固定調(diào)整量,使時鐘以固定的速度運行,該速度的理想值是GPS時鐘的運行速度。固定頻率并不是在每個對時周期內(nèi)都調(diào)整,由于固定頻率是時鐘長期運行的基礎(chǔ)速率,因此固定頻率計算的是一段時間(多個對時周期)內(nèi)對時單元時鐘運行速度和GPS時鐘運行速度間的速度偏差,計算過程中對時單元時鐘不進行調(diào)整。計算采用多次均值濾波算法消除長時間內(nèi)因時鐘抖動造成的偶爾誤差數(shù)據(jù)。臨時頻率是指由于對時單元始終本身并不是理想時鐘,存在抖動,加之晶振的溫飄,GPS時鐘服務(wù)器脈沖輸出本身也不可能完全穩(wěn)定。因此只使用固定頻率時,本地時鐘會呈現(xiàn)小范圍的波動,且波動不規(guī)律。臨時頻率調(diào)整的作用便是用來消除該波動。臨時頻率的調(diào)整方法是在時鐘以固定頻率運行后,在每一個對時周期內(nèi)使用一個極小的時間范圍 (IOms以內(nèi)),根據(jù)偏差量調(diào)整時鐘的頻率,當調(diào)整時間到后,將時鐘頻率恢復(fù)到固定頻率值。臨時頻率調(diào)整在每個對時周期中都進行,使用極小時間范圍作為調(diào)整時間能是時鐘運行更平穩(wěn)。
權(quán)利要求
1. 一種高精度同步時鐘調(diào)整方法,其特征在于步驟為步驟1、由GPS時鐘服務(wù)器通過GPS天線與衛(wèi)星進行對時,對時完成后,GPS時鐘服務(wù)器通過網(wǎng)口輸出NTP協(xié)議報文及與時間整秒同步的PPS秒脈沖;步驟2、在前三秒內(nèi),對時設(shè)備直接將NTP協(xié)議報文中的時間寫入本地時鐘; 步驟3、對時設(shè)備等待PPS秒脈沖,硬件在捕捉到PPS秒脈沖后,硬件時標功能記錄本地時鐘硬件時間,進入步驟4 ;步驟4、判斷第一次對時是否完成,若是,則跳至步驟6,否則進入步驟5 ; 步驟5、將當前PPS脈沖到來時本地時鐘的硬件時間與之前幾秒脈沖到來時記錄的硬件時間進行比較,計算固定頻率后返回步驟3,固定頻率計算完成后根據(jù)固定頻率修改當前時鐘速度,重復(fù)多次步驟3至步驟5,第一次對時完成;步驟6、讀取本地時鐘的硬件時間及NTP協(xié)議報文時間字段中的GPS時間,計算兩者之間的偏差值,判斷該偏差值是否縮小到臨時頻率調(diào)整的門限值,若否,則根據(jù)該偏差值調(diào)整本地時鐘的當前運行頻率后返回步驟3,若是,則進入步驟7 ;步驟7、判斷固定頻率變量Rb是否有更新,若有更新,則將本地時鐘的運行頻率調(diào)整為固定頻率變量Rb所存儲的固定頻率后進入步驟8,若沒有更新,則直接進入步驟8 ;步驟8、進行臨時頻率調(diào)整根據(jù)偏差值調(diào)整時鐘的當前運行頻率,當調(diào)整時間范圍到后,將當前運行頻率恢復(fù)到當前的固定頻率變量Rb所存儲的固定頻率,進入步驟9 ;步驟9、進行固定頻率計算步驟類似步驟5,根據(jù)當前及歷史的固定頻率通過多次均值濾波算法得到新的固定頻率,并將其保存入固定頻率變量Rb,返回步驟3。
全文摘要
本發(fā)明提供了一種高精度同步時鐘調(diào)整方法,其特征在于步驟為系統(tǒng)開始運行時會計算一次固定頻率,當?shù)谝淮喂潭l率計算完成后,在以后的每個對時周期內(nèi),根據(jù)偏差直接修改時鐘頻率,直至偏差值到達臨時頻率調(diào)整的門限值。當偏差值達到臨時頻率調(diào)整的門限值時,將第一次計算得到的固定頻率設(shè)置為時鐘的當前運行頻率,然后根據(jù)此時的偏差進行臨時頻率調(diào)整,同時開始新一輪的固定頻率的計算。本發(fā)明的優(yōu)點是1、低成本優(yōu)勢;2、高對時精度;3、靈活的脈沖輸出,無需外擴電路,節(jié)約系統(tǒng)設(shè)計,實施成本。
文檔編號H04L12/56GK102412957SQ20111039845
公開日2012年4月11日 申請日期2011年12月5日 優(yōu)先權(quán)日2011年12月5日
發(fā)明者奚培鋒, 張偉, 李乙, 薛吉, 鄔宇 申請人:上海電器科學研究所(集團)有限公司, 上海電器科學研究院