苗自云,于兆磊,朱智林
(1.山東工商學院,山東 煙臺 264003;2.煙臺恩邦電子科技有限公司,山東 煙臺 264006)
高精密時間頻率系統(tǒng)是現(xiàn)代化戰(zhàn)爭中實現(xiàn)精確打擊的基礎,而守時工作是精密時間頻率系統(tǒng)的基礎和核心內(nèi)容[1]。頻率標準源作為時間頻率系統(tǒng)的守時設備,為一些設備提供標準頻率信號??紤]到野外作戰(zhàn)的特殊環(huán)境,需要適應更寬的工作溫度范圍,也要求頻率標準源具有較高的精度和準確度。目前,具有高準確度的頻標主要有原子鐘和晶體振蕩器,原子鐘的頻率準確度較晶體振蕩器更高,但其使用環(huán)境要求較高,且價格昂貴。晶體振蕩器的價格相對便宜,且使用壽命長,應用廣泛,但其精度易受溫度、老化等因素影響,長期穩(wěn)定性差,只能滿足普通需求[2-3]。
GPS信號是具有原子頻率標準的標準源,具有較高的精度和準確度,因此利用GPS接收機接收GPS信號后對地面晶體振蕩器進行校準,可以獲得精度較高的頻率標準源。GPS信號容易受到復雜氣象條件的制約與地理環(huán)境的影響,這時晶體振蕩器只能依靠自身實現(xiàn)高精度頻率輸出[4]。要實現(xiàn)高精度的頻率輸出就需要對晶振的頻率漂移量進行補償。
頻率漂移的補償關(guān)鍵在于利用歷史頻偏數(shù)據(jù)合理建模預測下一階段的頻偏。受制造工藝影響,晶振個體之間會存在物理結(jié)構(gòu)的差異,即使是同一切型、同一切角的石英晶體在相同工作時間、相同的環(huán)境中也會產(chǎn)生不同的頻偏,而且晶振頻率也會受到溫度、老化等因素的影響,因此難以從原理上分析出晶振頻偏的規(guī)律,并用數(shù)學公式推導得到準確描述[5-6]。傳統(tǒng)的預測方法中通常采用最小二乘擬合模型或者經(jīng)驗模型進行預測,最小二乘擬合模型或經(jīng)驗模型需要事先確定樣本的多項式次數(shù),再利用歷史數(shù)據(jù)擬合得到各次項的系數(shù)作外推計算下一時刻的頻偏。這種方法的自適應能力較差,預測精度較低。本文提供了一種基于神經(jīng)網(wǎng)絡的頻率預測算法,經(jīng)過系統(tǒng)訓練和學習,能夠快速找出輸入?yún)?shù)和輸出參數(shù)之間的內(nèi)在聯(lián)系,進行非線性預測,適合本文對頻率漂移量的預測。適用于非線性預測的人工神經(jīng)網(wǎng)絡目前主要有RBF神經(jīng)網(wǎng)絡和BP神經(jīng)網(wǎng)絡等。李依澤[5]等利用BP神經(jīng)網(wǎng)絡對恒溫晶振因老化因素引起的頻偏進行預測;高寶玲[6]等利用BP神經(jīng)網(wǎng)絡設計溫度補償晶體振蕩器對溫度元素引起的頻偏進行補償;孫江濤[7]等使用Kalman濾波算法分別對溫度和老化兩種因素的影響進行預測。本文同時考慮溫度和老化兩種因素,利用BP神經(jīng)網(wǎng)絡和RBF神經(jīng)網(wǎng)絡預測頻偏。最后,使用合適的評價指標比較兩種神經(jīng)網(wǎng)絡的預測結(jié)果,選出預測精度更高與預測效果更好的方法。
守時是指將本地頻標保持在校準時間的過程。一個時間尺度的準確度總是相對于某個標準尺度而言的,守時過程中一般將GPS信號作為標準尺度,使本地頻標與GPS信號的精度和準確度保持在同一水平。守時基本原理如圖1所示。守時即頻率漂移補償,補償?shù)囊话闼悸肥抢镁д癫粩喔橤PS信號,得到相對于GPS信號的頻率漂移量,研究頻率漂移同時間推移或同溫度的變化關(guān)系,通過這種變化關(guān)系預測晶振的頻率漂移量,然后將預測的頻率漂移量轉(zhuǎn)換成補償電壓,通過調(diào)節(jié)電壓控制晶振的輸出頻率,使晶振的輸出頻率在GPS信號丟失的短時間內(nèi)保持相對較高的頻率準確度,從而實現(xiàn)守時[8-9]。
圖1 守時基本原理
守時電路的設計、晶振本身影響因素的作用以及守時算法的編寫都是影響時鐘輸出高精度頻率的原因,而晶振本身影響因素的作用是最主要的[10]。晶振的影響因素有很多,溫度和老化是影響晶振精度和準確度的主要原因。其中老化是指晶振頻率隨工作時間發(fā)生緩慢變化的物理現(xiàn)象。有研究表明,在晶振的諸多影響因素中,溫度對其頻率穩(wěn)定性的影響是最大的[11]。
由于溫度、老化等原因,晶振頻率發(fā)生漂移。頻率漂移的補償關(guān)鍵在于利用歷史頻偏數(shù)據(jù)合理建模預測下一階段的頻偏。通常利用經(jīng)驗模型估計晶振的老化漂移,利用最小二乘法擬合模型預測溫度漂移,但預測精度較低。且晶振實際工作過程中兩種因素對頻偏的影響難以被準確分開。因此可利用神經(jīng)網(wǎng)絡建立一種隱式模型,利用神經(jīng)網(wǎng)絡非線性擬合程度好、自適應性強、可用數(shù)據(jù)訓練的特性擬合晶振因溫度和時間引起的頻率漂移,大幅提高晶振頻率預測的精度。適用于非線性預測的人工神經(jīng)網(wǎng)絡主要有BP神經(jīng)網(wǎng)絡和RBF神經(jīng)網(wǎng)絡等,本文將采用這兩種神經(jīng)網(wǎng)絡分別對相同的歷史數(shù)據(jù)訓練模型,預測失去GPS信號后的晶振輸出頻率。
BP神經(jīng)網(wǎng)絡的結(jié)構(gòu)由輸入層、隱含層和輸出層組成。每一層都由一定數(shù)量的神經(jīng)元構(gòu)成,典型的BP神經(jīng)網(wǎng)絡結(jié)構(gòu)模型如圖2所示。BP神經(jīng)網(wǎng)絡在學習時,輸入樣本從輸入層傳入,經(jīng)隱含層處理后傳向輸出層,實際輸出會與期望樣本進行比對,如果比對結(jié)果誤差過大,則轉(zhuǎn)入誤差的反向傳播過程,對各層神經(jīng)元的連接權(quán)值和閾值進行適當修改,使誤差沿梯度方向下降,反復學習訓練直至均方誤差滿足要求。
圖2 BP神經(jīng)網(wǎng)絡結(jié)構(gòu)
RBF神經(jīng)網(wǎng)絡與BP神經(jīng)網(wǎng)絡均由輸入層、隱含層和輸出層構(gòu)成,均可擬合連續(xù)的非線性函數(shù)。不同的隱含層函數(shù)是兩者的主要區(qū)別,BP神經(jīng)網(wǎng)絡隱含層的傳遞函數(shù)大多為非線性變換函數(shù)—Sigmoid函數(shù),RBF神經(jīng)網(wǎng)絡的隱含層函數(shù)是徑向基函數(shù)[12]。典型的RBF神經(jīng)網(wǎng)絡結(jié)構(gòu)模型如圖3所示,徑向基函數(shù)徑向?qū)ΨQ,常用的是高斯核函數(shù):
圖3 RBF神經(jīng)網(wǎng)絡結(jié)構(gòu)
式中:x為高斯核函數(shù)的輸入樣本;ci為核函數(shù)的中心;σi為方差,控制函數(shù)的徑向作用范圍;p為感知單元的個數(shù)。RBF網(wǎng)絡的輸入層實現(xiàn)從x→Ri(x)的非線性映射,輸出層實現(xiàn)從Ri(x)→yR的線性映射,即:
式中:q為RBF神經(jīng)網(wǎng)絡輸出層神經(jīng)元的個數(shù);ωki為第i個隱含層神經(jīng)元與第k個輸出層神經(jīng)元之間的連接權(quán)值。
研究采用的數(shù)據(jù)集為模擬某地室外環(huán)境下晶振頻率隨溫度和時間變化過程的數(shù)據(jù)??紤]到溫度在短時間范圍內(nèi)變化較小且老化是個長期的過程,需要在較長一段時間的實驗過程中得到實驗值,所以在晶振持續(xù)工作的過程中,每隔15 min測量1次,連續(xù)測量2個月,得到數(shù)據(jù)集。其中,溫度單位為℃,時間單位為h,頻偏單位為Hz。部分頻偏測量值見表1所列。
表1 部分頻偏測量值
將數(shù)據(jù)集劃分成訓練集和測試集,取部分數(shù)據(jù)作為訓練集數(shù)據(jù),將訓練集后一天的數(shù)據(jù)作為測試集。
要實現(xiàn)RBF神經(jīng)網(wǎng)絡的構(gòu)建,首先對數(shù)據(jù)集進行分析,步驟如下。
(1)確定輸入層節(jié)點。影響晶振頻率變化的因素較多,其中溫度和老化是主要因素,選取溫度和時間參數(shù)作為神經(jīng)網(wǎng)絡的輸入層節(jié)點。
(2)確定輸出層節(jié)點。頻偏是指實時頻率與基準頻率的差值,選取頻偏作為輸出層節(jié)點。
(3)確定隱含層節(jié)點。隱含層節(jié)點數(shù)按照經(jīng)驗公式和實際試驗結(jié)合的方式取值。
(4)歸一化處理??紤]到溫度及時間的取值范圍和量綱存在較大差異,無法直接用于網(wǎng)絡訓練,所以事先進行歸一化處理,把數(shù)據(jù)轉(zhuǎn)化為[-1,1]之間的數(shù)值。同時為了與原輸出頻差作對比,預測值需反歸一化處理后輸出。歸一化處理使得神經(jīng)網(wǎng)絡在訓練過程中收斂速度更快、泛化能力更好,轉(zhuǎn)化函數(shù)形式為:
式中:y為標準化之后的數(shù)據(jù);ymax為1,ymin為-1;xmax為數(shù)據(jù)中最大的數(shù);xmin為數(shù)據(jù)中最小的數(shù)。
(5)網(wǎng)絡模型的訓練。使用MATLAB中的神經(jīng)網(wǎng)絡訓練函數(shù)(newrb函數(shù))進行訓練。輸入層節(jié)點數(shù)為2,輸出層節(jié)點數(shù)為1,隱含層節(jié)點數(shù)等采用newrb函數(shù)設置。分別選取前20、30、40天的數(shù)據(jù)進行訓練,發(fā)現(xiàn)前20、30天的訓練效果較差,存在欠擬合現(xiàn)象,所以將前40天的數(shù)據(jù)作為訓練樣本,以第41天的數(shù)據(jù)作為測試樣本。
對BP神經(jīng)網(wǎng)絡進行構(gòu)建時輸入層節(jié)點數(shù)、輸出層節(jié)點數(shù)與RBF神經(jīng)網(wǎng)絡相同。BP神經(jīng)網(wǎng)絡的隱含層傳遞函數(shù)選用tansig函數(shù),輸出層傳遞函數(shù)選用purelin函數(shù)。訓練算法選用Levenberg-Marquardt算法,進行與RBF神經(jīng)網(wǎng)絡同樣的歸一化處理和網(wǎng)絡模型訓練。BP神經(jīng)網(wǎng)絡模型算法流程如圖4所示。
圖4 BP神經(jīng)網(wǎng)絡算法流程
使用神經(jīng)網(wǎng)絡模型算法對頻偏進行預測,得到預測結(jié)果。利用預測值與實測值的最大誤差、均方誤差MSE和訓練次數(shù)作為評估指標對預測結(jié)果進行評估。評估指標的值越小,說明預測值越接近于實測值。MSE的表達式如下:
式中:Predi為第i個預測值;Obsi為第i個實測值;n為測試集數(shù)據(jù)的數(shù)量。
使用前40天的數(shù)據(jù)對模型進行訓練,訓練完成后,用第41天的96個數(shù)據(jù)對RBF神經(jīng)網(wǎng)絡進行測試,測試結(jié)果如圖5所示。圖5中Error表示預測值與實測值之差,可以看出,最大誤差為0.05,均方誤差為8.957 12×10-13,說明RBF神經(jīng)網(wǎng)絡的預測精度較高。
圖5 RBF實測值與預測值的誤差桿狀圖
使用前40天的數(shù)據(jù)對模型進行訓練,訓練完成后,使用第41天的96個數(shù)據(jù)對BP神經(jīng)網(wǎng)絡進行測試,測試結(jié)果如圖6所示。圖6中最大誤差不超過0.15,均方誤差為2.444 4×10-10。通過表2的評價指標對比可知,BP和RBF神經(jīng)網(wǎng)絡模型的預測值和實際輸出值接近。RBF神經(jīng)網(wǎng)絡相比BP神經(jīng)網(wǎng)絡的預測精度更高,且訓練時間和收斂速度更好。
表2 2種神經(jīng)網(wǎng)絡的預測結(jié)果
圖6 BP實測值與預測值的誤差桿狀圖
本研究使用神經(jīng)網(wǎng)絡預測頻偏的方法使得預測值與實際值更加接近,減小了曲線擬合不精確引起的誤差,提高了頻偏預測精度。
神經(jīng)網(wǎng)絡訓練結(jié)束后,發(fā)現(xiàn)2種神經(jīng)網(wǎng)絡關(guān)于溫度的權(quán)值均大于關(guān)于時間的權(quán)值,這也從數(shù)據(jù)角度說明溫度對晶振頻率穩(wěn)定性的影響是最大的。
RBF神經(jīng)網(wǎng)絡模型和BP神經(jīng)網(wǎng)絡模型經(jīng)過對比后發(fā)現(xiàn):RBF神經(jīng)網(wǎng)絡的預測精度較高,且訓練速度更快,所以對于晶振頻偏的預測而言,RBF神經(jīng)網(wǎng)絡更優(yōu),可以更好地為物聯(lián)網(wǎng)服務。