高精度晶體振蕩器的守時補償方法
【專利摘要】本發(fā)明提供一種高精度晶體振蕩器守時補償方法,包括:通過FPGA采集板卡對晶體振蕩器的頻率進行處理,得到晶體振蕩器與GPS秒脈沖之間的對時誤差,測量晶體振蕩器的工作溫度,構造溫度特性曲線,得到晶體振蕩器溫度特性模型,對溫度補償之后的對時誤差數據進行卡爾曼濾波,得到構造的基準時鐘,從而獲得GPS誤差特性曲線,在分離了溫度誤差及GPS誤差之后,采用最小二乘法預測守時補償值。本發(fā)明根據GPS接收機的誤差特性、晶體振蕩器的相位隨機誤差特性、溫度頻率偏移誤差特性以及老化特性等,對晶振守時誤差進行晶振溫度?頻率變化特性模型的重構,并使用卡爾曼濾波的方法構建基準時鐘,以此分離各誤差源的特性,得到高精度的守時補償值。
【專利說明】
高精度晶體振蕩器的守時補償方法
技術領域
[0001] 本發(fā)明涉及電力系統(tǒng)繼電保護及同步采樣技術領域,具體而言涉及基于實時溫度 測量更新晶體振蕩器溫度模型參數,以此構造基準時鐘模型并生成守時補償值的方法。
【背景技術】
[0002] 基于GPS的晶振馴服技術是利用GPS接收機輸出的秒脈沖信號鎖定本地時鐘,當 GPS模塊失鎖或者秒脈沖信號丟失之后,則主要依靠晶振自身的穩(wěn)定度及預設的補償量來 保證晶振在守時階段的準確度。因此,當晶振自身的穩(wěn)定度一定時,對于守時階段的補償算 法的研究具有重要意義。
[0003] 目前對于溫度補償晶體振蕩器的守時補償算法主要是針對算法本身的改進,如采 用改進kalman濾波或者滑動平均等算法來實現守時。由于kalman濾波對于已知誤差模型的 預測較為有效,滑動平均算法則主要應用于具有正態(tài)分布特性的誤差中,而守時誤差中包 含各類誤差特性,若將其統(tǒng)一處理,將會導致由于模型不準確而造成的預測偏差。另外還有 利用歷史數據采用擬合的方式預測守時補償值。預測需基于準確的模型,若采用各誤差特 性相疊加的對時誤差進行分析處理,會導致由于誤差特性混疊從而加大預測算法的復雜 度,同時降低預測準確度。因此迫切需要提出一種分離各個誤差特性的守時方法。
【發(fā)明內容】
[0004] 本發(fā)明的目的在于解決目前守時算法將誤差統(tǒng)一建模處理而未考慮各誤差源的 分布特性導致守時精度降低的問題。
[0005] 為解決上述技術問題,本發(fā)明所采用的技術方案如下:
[0006] -種高精度晶體振蕩器守時補償方法,包括以下步驟:
[0007] 通過FPGA采集板卡對晶體振蕩器的頻率進行處理,得到晶體振蕩器與GPS秒脈沖 之間的對時誤差,采用高精度溫度變送器測量晶體振蕩器的工作溫度,構造溫度特性曲線, 得到晶體振蕩器溫度特性模型,對溫度補償之后的對時誤差數據進行卡爾曼濾波,得到構 造的基準時鐘,從而獲得GPS誤差特性曲線,在分離了溫度誤差及GPS誤差之后,采用最小二 乘法預測守時補償值。
[0008] 在一些實施例中,具體步驟為:
[0009] 第一步,以晶體振蕩器的頻率作為基準,對振蕩器自身時鐘進行計數,得到相對時 標(程序運行開始累計的時間值)。同時,判斷GPS接收機的時鐘是否有效,若有效進一步判 斷GPS秒脈沖是否失準,得到以GPS秒脈沖為基準的晶體振蕩器對時誤差。
[0010] 第二步,得到晶體振蕩器的初始溫度頻率特性曲線。
[0011]選取測量的溫度數據,將其中的最大值及最小值去除(避免溫度傳感器的突變量 對測量造成較大影響),其余值取算術平均。同時對振蕩器的頻率處理方式也相同,將最大 與最小溫度值對應的頻率去除,其余頻率值取算術平均:
[0013]其中,化為第i秒的晶體振蕩器頻率計數值,η為計數次數。將頻率與溫度的采樣值 代入如下方程中進行求解:
[0015] 式中,△ fi為對應溫度Ti時測得的頻率fi和fQ的差值;△ Ti為實時溫度Ti與To的差 值;Δ E頻率修正量。通過引入頻率修正量實現對三次函數的ao、bo、co三個溫度特性曲線的 參數進行更新修正,得到晶體振蕩器的初始溫度頻率特性曲線。
[0016] 第三步,得到晶體振蕩器溫度頻率特性曲線。
[0017] 在濾除GPS接收機及振蕩器頻率偏差的綜合誤差曲線中的高頻隨機分量之后,采 用濾波后的數據取負值作為基準時鐘信號,再次采集溫度及振蕩器頻率,進而計算出新的 溫度頻率特性的各次參數。重復上述步驟,直到溫度頻率特性參數更新值小于設定范圍,則 停止更新。最終得到的溫度頻率特性曲線。
[0018] 第四步,采用卡爾曼濾波得到基準時鐘。
[0019] 實際測得的誤差量包含了 GPS的隨機抖動及晶體振蕩器的各誤差特性曲線,其表 達式為
[0020] XGPS = ErrGPS+X( 3)式中,XGPS表示總的誤差曲線;ErrGPS為GPS接收機的隨機抖動;X 為晶體振蕩器初始溫度特性曲線造成的頻率偏移。
[0021] 采用卡爾曼濾波算法對XCPS進行預處理,。卡爾曼濾波的核心由5個基本公式組成, 主要可以分為時間更新方程和測量更新方程。其中時間更新方程負責及時向前推算當前狀 態(tài)變量和誤差協(xié)方差估計值,以便為下一個時間狀態(tài)構造先驗估計,測量更新方程將先驗 估計和新的測量變量結合以構造改進的后驗估計。
[0022] 時間更新方程:
[0024]狀態(tài)更新方程:
[0025] Κ, =ΡΚ1!' {IIP, IIr + R):
[0026] i = Α + Α%(5)式中,喊為k時刻系統(tǒng)觀測值,pL為k_l時刻對系統(tǒng) pL =(\-Κ,Π )Ρκ
[0027] 的控制量,Α、Β為系統(tǒng)參數,ΡιΓ為誤差協(xié)方差,Q為觀測隨機誤差的方差;Kk為卡爾 曼增益,Η為測量系統(tǒng)參數,ZkSk時刻的測量值,時刻的預測值。
[0028]經過卡爾曼濾波處理可以濾除GPS接收機隨機抖動中的高頻分量,從而可以得到 一個較為準確的時間基準。
[0029] 第五步,構造 GPS誤差特性曲線。
[0030] 對晶體振蕩器計數模塊進行兩路并行頻率計數,其中一路采用GPS為基準的頻率 計數得到Errl,另一路采用之前經過卡爾曼濾波處理之后的數據為基準進行頻率計數得到 Err2,其表達式為:
[0031] Erri = S-Xgps = S-Errcps-X (6)
[0032] Err2 = S-X(7)式中S為第四步構建出的較為準確的基準時鐘,Em為GPS接收機有 效時的守時誤差,Err2表不GPS丟失之后,利用S作為基準時鐘而產生的守時誤差,Xgps表不 GPS接收機與晶體振蕩器的綜合誤差,ErrCPS表示GPS接收機的誤差。
[0033] 由于在守時系統(tǒng)中采用兩路并行頻率計數的形式,Em可以直接得到,Em經過濾 波及求差之后得到的。因此,由式(6)、式⑴可以得到GPS的誤差Em PS為:
[0034] Errcps = Εγγ2~Εγπ (8)
[0035] 第六步,在重構了GPS誤差特性曲線的基礎上,根據式
[0036] X=Xcps-ErrGPs(9)
[0037] 得到晶體振蕩器總的誤差特性曲線X,利用溫度傳感器及構建的晶體振蕩器溫度 特性模型,對晶體振蕩器溫度特性進行補償,得到溫度補償之后的晶體振蕩器誤差曲線為 Xte_。當經過溫度補償之后,該晶體振蕩器誤差模型就可以表示為:fo'zfB+fKxoHAT+ft (υ+δ(1〇)式中,ΔΤ為考慮到溫度傳感器的誤差;f\(X)為晶體振蕩器的隨機相位偏差;f3 (X)為晶體振蕩器的老化偏差,S為其他系統(tǒng)誤差;fV為進行了溫度補償之后的晶體振蕩器 輸出頻率。
[0038] 對式(10)中的fV進行最小二乘預測。最小二乘法的表達式為:
[0039]
式中,Xpre 是采用最小二乘預測的守時數據。N為進行最小二乘算法采用的數據量。擬合得到的直線反 映晶體振蕩器頻率的變化,同時也為生成補償值提供依據。
[0040] 應當理解,前述構思以及在下面更加詳細地描述的額外構思的所有組合只要在這 樣的構思不相互矛盾的情況下都可以被視為本公開的發(fā)明主題的一部分。另外,所要求保 護的主題的所有組合都被視為本公開的發(fā)明主題的一部分。
[0041] 結合附圖從下面的描述中可以更加全面地理解本發(fā)明教導的前述和其他方面、實 施例和特征。本發(fā)明的其他附加方面例如示例性實施方式的特征和/或有益效果將在下面 的描述中顯見,或通過根據本發(fā)明教導的【具體實施方式】的實踐中得知。
【附圖說明】
[0042] 附圖不意在按比例繪制。在附圖中,在各個圖中示出的每個相同或近似相同的組 成部分可以用相同的標號表示。為了清晰起見,在每個圖中,并非每個組成部分均被標記。 現在,將通過例子并參考附圖來描述本發(fā)明的各個方面的實施例,其中:
[0043]圖1是分頻計數的流程圖。
[0044]圖2是基于GPS的晶體振蕩器歷史數據的示意圖。
[0045] 圖3是最小二乘擬合結果的示意圖。
[0046] 圖4是基于誤差分離的改進守時算法仿真曲線的示意圖。
[0047]圖5是總仿真曲線的示意圖。
[0048]圖6是晶體振蕩器守時結構圖。
【具體實施方式】
[0049] 為了更了解本發(fā)明的技術內容,特舉具體實施例并配合所附圖式說明如下。
[0050] 在本公開中參照附圖來描述本發(fā)明的各方面,附圖中示出了許多說明的實施例。 本公開的實施例不必定意在包括本發(fā)明的所有方面。應當理解,上面介紹的多種構思和實 施例,以及下面更加詳細地描述的那些構思和實施方式可以以很多方式中任意一種來實 施,這是因為本發(fā)明所公開的構思和實施例并不限于任何實施方式。另外,本發(fā)明公開的一 些方面可以單獨使用,或者與本發(fā)明公開的其他方面的任何適當組合來使用。
[0051 ]根據本發(fā)明的實施例,提出一種高精度溫度補償晶體振蕩器的守時方法。該方法 綜合考慮了 GPS接收機的誤差、晶振振蕩器的相位隨機誤差、溫度頻率偏移誤差以及老化特 性誤差,利用對時誤差的歷史數據,通過誤差反饋更新基準時鐘源,得到精確的晶體振蕩器 溫度特性模型,進一步以更新生成的時鐘源為基準得到晶體振蕩器誤差特性,通過最小二 乘法預測出守時補償值。
[0052]在一些具體的實施例中,我們下面將結合附圖1-附圖6來更加詳細地說明前述方 法的實現。
[0053]第一步,以晶體振蕩器的頻率作為基準,對振蕩器自身時鐘進行計數,得到相對時 標(程序運行開始累計的時間值)。同時,判斷GPS接收機的時鐘是否有效,若有效進一步判 斷GPS秒脈沖是否失準,得到以GPS秒脈沖為基準的晶體振蕩器對時誤差。程序流程圖如圖1 所示。
[0054]第二步,得到晶體振蕩器的初始溫度頻率特性曲線:
[0055]采用標稱頻率為25MHz的溫度補償晶體振蕩器,其晶體為AT切型,溫度頻率偏移特 性為三次函數:
[0057]式中,fo為參考溫度點的頻率,可以設置零度或者室溫為參考溫度點;Af為實際 溫度與參考溫度點之間的偏差;T為實測溫度;To是參考溫度;AQ、BQ、C()分別為溫度特性曲線 的一次、二次、三次溫度系數。因此,要得到AT切型晶體振蕩器的溫度特性曲線只需確定其 三個溫度系數即可。GPS接收機標準差為25ns。歷史數據是基于GPS接收機的晶體振蕩器輸 出頻率偏差數據,其24小時內的歷史數據如圖2所示(1秒為間隔進行采樣)。
[0058]選取測量的溫度數據,采取連續(xù)取5s的數據,將其中的最大值及最小值去除(避免 溫度傳感器的突變量對測量造成較大影響),其余值取算術平均。同時對振蕩器的頻率處理 方式也相同,將最大與最小溫度值對應的頻率去除,其余頻率值取算術平均:
[0059]
其中,&為第1秒的晶體振蕩器頻率計數 值,η為計數次數。將頻率與溫度的采樣值代入如下方程中進行求解:
[0061]式中,△ fi為對應溫度Ti時測得的頻率fi和fo的差值;△ Ti為實時溫度Ti與To的差 值;Δ E頻率修正量。通過引入頻率修正量實現對三次函數的ao、bo、co三個溫度特性曲線的 參數進行更新修正,得到晶體振蕩器的初始溫度頻率特性曲線。
[0062]第三步,得到晶體振蕩器溫度頻率特性曲線:
[0063] 采用卡爾曼濾波濾除GPS接收機及振蕩器頻率偏差的綜合誤差曲線中的高頻隨機 分量,采用濾波后的數據取負值作為基準時鐘信號,再次采集溫度及振蕩器頻率,計算出新 的溫度頻率特性的各次參數。重復上述步驟,直到溫度頻率特性參數更新值小于設定范圍, 則停止更新,最終得到溫度頻率特性曲線。為了避免得到病態(tài)方程,設置溫度變化在〇. 1度 以上時再進行數據更新。
[0064] 第四步,采用卡爾曼濾波得到基準時鐘:
[0065] 實際測得的誤差包含了 GPS的隨機抖動及晶體振蕩器的各誤差特性曲線,其表達 式為:
[0066] XGPS = Err gps+X (4)式中,Xgps表示總的誤差曲線;Errcps為GPS接收機的隨機抖動;X 為晶體振蕩器使用初始溫度特性曲線所造成的頻率偏移。
[0067]采用卡爾曼濾波算法對Xgps進行預處理。卡爾曼濾波的核心由5個基本公式組成, 主要可以分為時間更新方程和測量更新方程。其中時間更新方程負責及時向前推算當前狀 態(tài)變量和誤差協(xié)方差估計值,以便為下一個時間狀態(tài)構造先驗估計,測量更新方程將先驗 估計和新的測量變量結合以構造改進的后驗估計。
[0068] 時間更新方程:
[0070]狀態(tài)更新方程:
[0071] Kk^ i\llj {IiPk 11' +R) ζ
[0072] 1 =XA:+[A,(Z,f-(6)式中,4為k時刻系統(tǒng)觀測值,?/:-#k-l時刻對系統(tǒng)
[0073] /1=(1-^//)/-
[0074] 的控制量,A、B為系統(tǒng)參數,ΡιΓ為誤差協(xié)方差,Q為觀測隨機誤差的方差;Kk為卡爾 曼增益,Η為測量系統(tǒng)參數,ZkSk時刻的測量值,1,為1^時刻的預測值。
[0075]經過卡爾曼濾波處理濾除GPS接收機隨機抖動中的高頻分量,從而得到一個較為 準確的時間基準。
[0076] 第五步,構造 GPS誤差特性曲線:
[0077] 對晶體振蕩器計數模塊進行兩路并行頻率計數,其中一路采用GPS為基準的頻率 計數得到Errl,另一路采用之前經過卡爾曼濾波處理之后的數據為基準進行頻率計數得到 Err2,其表達式為:
[0078] Erri = S-Xgps = S-Errcps-X (7)
[0079] Err2 = S-X(8)式中S為第四步構建出的較為準確的基準時鐘,Em為GPS接收機有 效時的守時誤差,Err2表不GPS丟失之后,利用S作為基準時鐘而產生的守時誤差,Xgps表不 GPS接收機與晶體振蕩器的綜合誤差,ErrCPS表示GPS接收機的誤差。
[0080] 由于在守時系統(tǒng)中采用兩路并行頻率計數的形式,Em可以直接得到,Em經過濾 波及求差之后得到的。因此,由式(7)、式⑶可以得到GPS的誤差Em PS為:
[0081 ] Errcps = Err2-Erri (9)
[0082] 第六步,在重構了GPS誤差特性曲線的基礎上,根據式
[0083] X=Xops-Errcps (10)
[0084] 得到晶體振蕩器總的誤差特性曲線X,利用溫度傳感器及構建的晶體振蕩器溫度 特性模型,對晶體振蕩器溫度特性進行補償。得到溫度補償之后的晶體振蕩器誤差曲線為 Xte_。當經過溫度補償之后,該晶體振蕩器誤差模型就可以表示為:fo'zfB+fKxoHAT+ft (υ+δ(11)式中,ΔΤ為考慮到溫度傳感器的誤差;f\(X)為晶體振蕩器的隨機相位偏差;f3 (X)為晶體振蕩器的老化偏差,S為其他系統(tǒng)誤差;fV為進行了溫度補償之后的晶體振蕩器 輸出頻率。
[0085] 對于直線擬合y = a*x+b
[0091] 這里E(x)為求均值。
[0092] 根據上述公式,對式(11)中的fV進行最小二乘預測。最小二乘法的表達式為:
[0094] 式中XlSti時刻對應的晶體振蕩器誤差值,Xpre是采用最小二乘預測的守時數據,N 為進行最小二乘算法采用的數據量t
[0095] 擬合得到的直線反映晶體振蕩器頻率的變化,同時也為生成補償值提供依據。通 過多次實驗反復調整式中的參數,以N=200為例對上述頻率特性曲線進行最小二乘擬合, 結果如圖3所示?;谡`差分離的守時算法的守時曲線如圖4所示。
[0096] 通過仿真來對比本發(fā)明提出的基于誤差分離的改進守時算法與僅基于溫度補償 的算法以及基于預測的守時算法,得到10小時守時曲線如圖5所示。
[0097] 由圖5曲線(a)可見,由于傳統(tǒng)的守時補償方法沒有考慮晶體振蕩器的溫度特性以 及GPS的特性,其10小時守時誤差為165微秒。在圖5曲線(b)中是基于溫度補償之后的晶體 振蕩器守時誤差曲線,由圖可知,其10小時守時誤差在45微秒以內。這是由于對晶體振蕩器 進行了建模,考慮了溫度的影響,但是由于模型本身的誤差,以及忽略了GPS的隨機抖動,其 守時精度仍然具有改進空間。圖5曲線(c)采用本發(fā)明的守時算法,可見在基準信號GPS丟失 10小時后,守時誤差呈現一個抖動的下降趨勢,基本保證10小時守時誤差在2微秒以內。
[0098] 雖然本發(fā)明已以較佳實施例揭露如上,然其并非用以限定本發(fā)明。本發(fā)明所屬技 術領域中具有通常知識者,在不脫離本發(fā)明的精神和范圍內,當可作各種的更動與潤飾。因 此,本發(fā)明的保護范圍當視權利要求書所界定者為準。
【主權項】
1. 一種晶體振蕩器的守時補償方法,其特征在于,包括以下步驟: 1) 采用溫度變送器測量晶體振蕩器的工作溫度,通過FPGA采集板卡對晶體振蕩器的頻 率進行處理得到對時誤差; 2) 根據采集的工作溫度數據,構造晶體振蕩器的溫度特性曲線,更新晶體振蕩器的溫 度特性曲線參數,得到晶體振蕩器溫度特性模型并進行溫度-頻率誤差補償; 3) 將溫度-頻率誤差補償之后的對時誤差數據進行卡爾曼濾波,得到構造的基準時鐘, 從而獲得GPS誤差特性; 4) 在分離了溫度誤差及GPS誤差之后,采用最小二乘法預測守時補償值。2. 根據權利要求1所述的晶體振蕩器守時補償方法,其特征在于,在所述步驟1)中,通 過溫度傳感器獲取晶體振蕩器的工作溫度,并在FPGA采集板卡設置分頻電路,得到晶體振 蕩器的頻率與GPS秒脈沖之間的對時誤差。3. 根據權利要求2所述的晶體振蕩器守時補償方法,其特征在于,在根據前述步驟1)得 到晶體振蕩器的實時溫度及其相應頻率值后,在所述步驟2)中,按照下述方式處理進行溫 度-頻率誤差補償: 先設定初始溫度特性參數,然后對其進行修正以獲取溫度特性模型;其中在選取測量 數據構造溫度特性模型時,采用連續(xù)若干點的數據,將其中的最大值及最小值去除,然后將 其余值取算術平均,同時對晶體振蕩器的頻率處理方式也相同,將最大與最小溫度值對應 的頻率去除,然后將其會頗率倌取筧術平詢,具體樸理如下:(1) 其中,N1為第i秒的晶體振蕩器頻率計數值,η為計數次數; 將頻率與溫度的采樣值代入如下方程中進行求解:⑵ 式中,Δ fi為對應溫度Ti時測得的頻率fi和fo的差值;fo為基準頻率,Δ Ti為實時溫度Ti 與To的差值;△ E頻率修正量,通過引入該修正量實現對三次函數的ao、bo、Co三個溫度特性 曲線的參數進行更新修正,實現溫度-頻率誤差補償修正。4. 根據權利要求1所述的高精度晶體振蕩器守時補償方法,其特征在于,在所述步驟3) 中,采用卡爾曼濾波得到基準時鐘,具體如下: 測得的數據為基于GPS時鐘的晶體振蕩器頻率計數值,即測得的數據為XCPS,其中包含 了 GPS的隨機抖動及晶體振蕩器的各誤差特性曲線: Xcps = ErrGPs+X (3) 式中,Xgps表不總的誤差曲線,也即實際測得的誤差量;Errcps為GPS接收機的隨機抖動; X為晶體振蕩器初始溫度特性曲線造成的頻率偏移; 采用卡爾曼濾波算法對Xcps進行預處理,卡爾曼濾波的核心由5個基本公式組成,包括 時間更新方程和測量更新方程,其中時間更新方程負責及時向前推算當前狀態(tài)變量和誤差 協(xié)方差估計值,以便為下一個時間狀態(tài)構造先驗估計,測量更新方程將先驗估計和新的測 量變量結合以構造改進的后驗估計; 時間更新方程:Cl) ㈤ 式中,S為k時刻系統(tǒng)觀測值,(6/^為k-Ι時刻對系統(tǒng)的控制量,A、B為系統(tǒng)參數,/T為誤 差協(xié)方差,Q為觀測隨機誤差的方差;Kk為卡爾曼增益,H為測量系統(tǒng)參數,ZkSk時刻的測量 值,;^為k時刻的預測值。 經過卡爾曼濾波處理之后的數據,濾除GPS接收機隨機抖動中的高頻分量,從而可以得 到一個準確的時間基準。5.根據權利要求4所述的高精度晶體振蕩器的守時補償方法,其特征在于: 在重構了 GPS誤差特性曲線的基礎上,便可得到晶體振蕩器總的誤差特性曲線X: X = XGPS-Errcps (6) 在得到晶體振蕩器總的誤差曲線之后,基于溫度傳感器及構建的晶體振蕩器溫度特性 模型,對晶體振蕩器溫度特性進行補償; 得到溫度補償之后的晶體振蕩器誤差曲線為Xtemp,當經過溫度補償之后,該晶體振蕩器 誤差模型就可以表示為: fo' =fB+fi(x〇)+ Δ T+f3(t)+5 (7) 式中,A T為考慮到溫度傳感器的誤差,本文取溫度變送器的分辨率對應的誤差;A(X0) 為晶體振蕩器的隨機相位偏差;f3(t)為晶體振蕩器的老化偏差,δ為其他系統(tǒng)誤差;為進 行了溫度補償之后的晶體振蕩器輸出頻率; 然后,對式(7)中的fη'講行最小二乘預測,最小二乘法的表汰式為:(S) 式中,XAt1時刻對應的晶體振蕩器誤差值,Xpre3是采用最小二乘預測的守時數據,N為 進行最小二乘算法采用的數據量,其M
【文檔編號】H03B5/04GK106026919SQ201610324056
【公開日】2016年10月12日
【申請日】2016年5月16日
【發(fā)明人】卜京, 賈鵬輝, 游步新, 殷明慧, 謝云云, 姚娟, 楊陽
【申請人】南京理工大學