周 帆,潘彥峰
(1.國(guó)網(wǎng)湖南省電力有限公司,湖南 長(zhǎng)沙 410004;2.網(wǎng)電力科學(xué)研究院,江蘇 南京 211106)
國(guó)網(wǎng)公司從2018年開始陸續(xù)試點(diǎn)了一批第三代智能變電站建設(shè),第三代智能變電站以“一鍵操作、自動(dòng)巡檢、主動(dòng)預(yù)警、智能決策”等功能為主要特征,是對(duì)傳統(tǒng)變電站、第一代智能站及新一代智能站從設(shè)計(jì)、制造、建設(shè)、運(yùn)檢等各方面進(jìn)行的全面總結(jié)與提升[1-2]。第三代智能變電站采用結(jié)構(gòu)標(biāo)準(zhǔn)化、信息標(biāo)準(zhǔn)化的就地模塊替代合并單元與智能終端設(shè)備,設(shè)備實(shí)現(xiàn)數(shù)據(jù)采集和設(shè)備控制操作功能。測(cè)控子機(jī)通過采集不同就地模塊的電氣信息計(jì)算功率,就地模塊對(duì)時(shí)不準(zhǔn)將導(dǎo)致測(cè)控子機(jī)采樣值,存在功率計(jì)算不準(zhǔn)等問題。就地模塊的對(duì)時(shí)依賴授時(shí)系統(tǒng),一旦外部授時(shí)信號(hào)中斷,延時(shí)時(shí)間計(jì)算準(zhǔn)確度將完全依賴于設(shè)備內(nèi)部晶振的守時(shí)精度,一旦晶振穩(wěn)定性不好,長(zhǎng)時(shí)間失去外部授時(shí)信號(hào)將導(dǎo)致延時(shí)計(jì)算偏差加大[3-4]。
近年來,隨著智能變電站對(duì)通信網(wǎng)絡(luò)的普及,時(shí)間同步系統(tǒng)采用網(wǎng)絡(luò)同步的方式也越來越普遍。IEEE1588協(xié)議提出了一種應(yīng)用于電力、通信、工業(yè)控制等領(lǐng)域的高精度網(wǎng)絡(luò)同步協(xié)議,其精度高于1 μs,在現(xiàn)有網(wǎng)絡(luò)同步方式中精度最高。
目前,國(guó)內(nèi)外學(xué)者對(duì)于設(shè)備守時(shí)算法已做過大量研究,但針對(duì)IEEE1588同步協(xié)議下的研究較少。已有的授時(shí)與守時(shí)算法通常采用全球定位系統(tǒng)(global positioning system,GPS)或北斗衛(wèi)星信號(hào)與時(shí)鐘晶振相配合的方案。與世界協(xié)調(diào)時(shí)間(coordinated universal time,UTC)比較,GPS秒脈沖無累計(jì)時(shí)間誤差,但卻有較大的隨機(jī)誤差。時(shí)鐘晶振可以看作是一種比較穩(wěn)定的時(shí)鐘頻率源,其輸出時(shí)間信號(hào)的隨機(jī)誤差可忽略不急,但因受頻率本身硬件特性影響,其頻率在長(zhǎng)時(shí)間運(yùn)行后會(huì)緩慢偏移,所以時(shí)鐘晶振存在累計(jì)時(shí)間誤差的特性。文獻(xiàn)[5-7]提出基于數(shù)字鎖相環(huán)的同步時(shí)鐘實(shí)現(xiàn)方法,算法精度高,但對(duì)硬件性能要求高,會(huì)大幅增加同步時(shí)鐘模塊的成本,而且該方法只實(shí)現(xiàn)了消除周期誤差,未消除累計(jì)誤差。文獻(xiàn)[8-10]提出將歷史時(shí)間數(shù)據(jù)用來訓(xùn)練自適應(yīng)的晶振老化模型,實(shí)現(xiàn)對(duì)晶振頻率進(jìn)行預(yù)測(cè),但其老化模型較簡(jiǎn)單,影響因素考慮不全,自守時(shí)能力受限。
文中從影響守時(shí)精度的因素出發(fā),通過預(yù)測(cè)算法等方式,提出一種基于神經(jīng)網(wǎng)絡(luò)的高精度守時(shí)算法,確保一次設(shè)備就地模塊在長(zhǎng)時(shí)間無外界授時(shí)時(shí),其守時(shí)精度在測(cè)控子機(jī)允許范圍內(nèi),解決因裝置守時(shí)精度差導(dǎo)致的功率計(jì)算不準(zhǔn)等問題提供新思路。
守時(shí)是指設(shè)備在失去外部授時(shí)的情況下,僅依靠自身時(shí)鐘源來保證時(shí)間的同步。對(duì)于IEEE1588同步協(xié)議,守時(shí)是指從時(shí)鐘在失去上一級(jí)主時(shí)鐘同步報(bào)文的情況下,僅依靠從時(shí)鐘自身的時(shí)鐘源保持與主時(shí)鐘的同步。如圖1所示,對(duì)于采用IEEE1588同步協(xié)議的從時(shí)鐘其守時(shí)可以分為兩種情況。一種是對(duì)于IEEE1588同步網(wǎng)絡(luò)中較為重要的時(shí)鐘節(jié)點(diǎn)(上一級(jí)主時(shí)鐘、交換機(jī)和較為重要的就地模塊);其作為下一級(jí)時(shí)鐘的主時(shí)鐘,其時(shí)間同步精度直接影響下一級(jí)時(shí)鐘,因此往往需要配備GPS/北斗等備用授時(shí)源提高其守時(shí)精度。另一種對(duì)于只配備1588授時(shí)模塊的時(shí)鐘(就地模塊);其守時(shí)精度只能依靠本地時(shí)鐘(石英晶振)的頻率穩(wěn)定度和準(zhǔn)確度,因此研究如何保證石英晶體振蕩器的頻率穩(wěn)定性便成為了其守時(shí)算法的核心。
圖1 IEEE1588守時(shí)算法網(wǎng)絡(luò)拓?fù)鋱D
影響晶振性能的因素分別為:老化、溫度、相位噪聲及振動(dòng)、邊沿效應(yīng)。其中老化和溫度是主要影響因素。
通過研究發(fā)現(xiàn)目前對(duì)于溫度的影響主要的補(bǔ)償手段為設(shè)置恒溫槽來控制晶體的工作溫度在零溫度系數(shù)點(diǎn)附近,即降低晶體對(duì)于溫度的靈敏度,從而克服溫度對(duì)于晶振參數(shù)的影響。
而目前對(duì)于晶振老化影響的主要補(bǔ)償手段為老化預(yù)測(cè)。老化預(yù)測(cè)目前有線性模型,對(duì)數(shù)模型等,但是由于不同切型甚至相同切型的晶體老化規(guī)律都有所差別,因此傳統(tǒng)的模型難以對(duì)晶體老化做出準(zhǔn)確的預(yù)測(cè)[11-12]。
由于晶體振蕩器的老化是一個(gè)長(zhǎng)期的效應(yīng),通??梢圆捎妙A(yù)測(cè)的方法來判斷老化的影響。運(yùn)用預(yù)測(cè)法研究石英晶體振蕩器頻率老化的大致基本思路是:通過石英晶體振蕩器的歷史衰老數(shù)據(jù),估計(jì)其在當(dāng)前時(shí)候的輸出頻率,由補(bǔ)償頻率控制器形成所要求的補(bǔ)償頻率,同振蕩器頻率經(jīng)過相應(yīng)計(jì)算后再直接輸出,原理框圖如圖2所所示。
圖2 老化補(bǔ)償原理框圖
頻率的老化模型遵循頻率隨時(shí)間變化的關(guān)系函數(shù),函數(shù)總體上同前一時(shí)間、當(dāng)前時(shí)間和前一時(shí)間的頻率變化率相關(guān)。在知道了n個(gè)樣本的頻率和頻率老化率之后,超出t(n)時(shí)刻的頻率可以通過一個(gè)頻率預(yù)測(cè)模型得到。這種通過初步的測(cè)定n個(gè)樣本而得到未來的頻率老化值稱之為老化預(yù)測(cè)。頻率預(yù)測(cè)模型基于晶振的一組歷史數(shù)據(jù),可以預(yù)測(cè)當(dāng)前時(shí)間的頻率為f(k),同時(shí)補(bǔ)償頻率發(fā)生器產(chǎn)生補(bǔ)償頻率,通過f(k)和補(bǔ)償頻率計(jì)算,最后便可輸出所預(yù)測(cè)的穩(wěn)定頻率。
綜合利用了Kalman濾波技術(shù)和神經(jīng)網(wǎng)絡(luò)[13],并把通過Kalman濾波技術(shù)獲得的歷史數(shù)據(jù),作為神經(jīng)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù)集對(duì)其進(jìn)行培訓(xùn),從而形成精確的晶體振蕩器老化進(jìn)程模型,以提高設(shè)備的守時(shí)能力。同步守時(shí)算法流程如圖3所示。
圖3 同步守時(shí)算法流程
當(dāng)外界存在統(tǒng)一的時(shí)鐘基準(zhǔn),如GPS時(shí)鐘信息或者IEEE1588時(shí)鐘的同步信息時(shí),設(shè)備將先通過GPS接收器和IEEE1588同步信息收集設(shè)備,獲取其同步時(shí)鐘的秒脈沖。然后再利用裝置晶振對(duì)GPS的秒脈沖加以計(jì)算,并作時(shí)間累積統(tǒng)計(jì)。獲得的一組累積晶振計(jì)數(shù)值,用作Kalman濾波器的觀測(cè)數(shù)據(jù),使用Kalman濾波器對(duì)晶振的系統(tǒng)狀況做預(yù)測(cè)和估算。將相鄰兩次獲得的累積晶振數(shù)值相減,獲取晶振分頻器的控制量。
當(dāng)裝置工作于同步的授時(shí)狀態(tài)下時(shí),將通過Kalman濾波器所獲得的晶振頻率的估計(jì)值,當(dāng)作歷史值保留下來。將歷史值對(duì)BP神經(jīng)網(wǎng)絡(luò)實(shí)施培訓(xùn),達(dá)到了誤差精度和迭代次數(shù)后,完成訓(xùn)練。
在沒有外界的時(shí)間基準(zhǔn)時(shí),裝置將沒法再接受到外界的同步時(shí)秒脈沖,因此設(shè)備進(jìn)入守時(shí)狀態(tài)。Kalman濾波器不再運(yùn)行,裝置現(xiàn)在只通過已開發(fā)好的BP神經(jīng)網(wǎng)絡(luò)模塊,對(duì)未來晶體振蕩器的頻率變化趨勢(shì)做預(yù)測(cè)。因?yàn)榫w振蕩器頻率變化趨勢(shì)在短時(shí)內(nèi)比較微弱,所以在同步守時(shí)狀況下,將所得的頻率預(yù)測(cè)值經(jīng)過相加,就可獲得累計(jì)晶振計(jì)數(shù)值,然后再將相鄰兩次的計(jì)算結(jié)果相減,得出晶振分頻器的控制量。
2.2.1 利用Kalman濾波器建立晶振運(yùn)動(dòng)方程
Kalman濾波器,是一個(gè)使用線性系統(tǒng)狀態(tài)方程的最優(yōu)估計(jì)算法,通過迭代運(yùn)算的方法,運(yùn)算工作量較小,計(jì)算速度快,對(duì)數(shù)據(jù)存儲(chǔ)要求較低。利用Kalman濾波器結(jié)合晶振誤差特性,對(duì)晶振建立狀態(tài)空間方程如下:
式中:x(k)、x(k-1)分別為k、k-1時(shí)刻的系統(tǒng)狀態(tài)向量;ω(k)為狀態(tài)噪聲;A是參數(shù)矩陣。
為了消除累計(jì)時(shí)間誤差,同時(shí)降低GPS信號(hào)或IEEE1588同步信號(hào)的抖動(dòng),有必要建立準(zhǔn)確合適的Kalman濾波器,系統(tǒng)的狀態(tài)變量方程如式(2)所示:
式中:tCN(k)為k時(shí)刻晶振累計(jì)計(jì)數(shù);f(k)、v(k)、a(k)分別為晶振頻率、晶振頻率變化率、晶振頻率變化加速率。
系統(tǒng)的觀測(cè)方程可表述為:
式中:z(k)為系統(tǒng)的觀測(cè)量;H為系統(tǒng)的觀測(cè)矩陣;v(k)為系統(tǒng)的觀測(cè)噪聲。
Kalman濾波器方程以線性差分的方式表示晶振頻率的變化,其階數(shù)越高,越能準(zhǔn)確反映非線性程度,但階數(shù)越高,數(shù)值越小,對(duì)濾波精度提高有限,所以文中綜合考慮選用4階方程。
2.2.2 利用神經(jīng)網(wǎng)絡(luò)建立數(shù)學(xué)模型
利用神經(jīng)網(wǎng)絡(luò)可建立的數(shù)學(xué)模型如式(5)所示:
式中,F(xiàn)為神經(jīng)網(wǎng)絡(luò)訓(xùn)練的非線性模型;tCN(k)、v(k)、a(k)分別為第k時(shí)刻的晶振累計(jì)計(jì)數(shù)值、晶振頻率、晶振頻率變化率、晶振頻率變化加速率。預(yù)測(cè)數(shù)據(jù)需要綜合分析選取。
晶振頻率的老化漂移隨時(shí)間流轉(zhuǎn)變化較為緩慢。因此v(k)、a(k)雖然在理論上表達(dá)了晶振頻率的變化特征,但其實(shí),v(k)和a(k)數(shù)值極小,數(shù)量級(jí)在1×10-5到1×10-7,數(shù)值不穩(wěn)定而且波動(dòng)很大,無法準(zhǔn)確描述晶振的頻率特性,不宜用作神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù)。另一方面,晶振累計(jì)計(jì)數(shù)值tCN(k)的值很大,在tCN(k)變化相對(duì)較小時(shí),會(huì)帶來較大的時(shí)間誤差波動(dòng),也不宜作為預(yù)測(cè)對(duì)象。綜合考慮計(jì)算成本和神經(jīng)網(wǎng)絡(luò)模型更新速度,將時(shí)間k作為輸入數(shù)據(jù),k時(shí)刻晶振頻率f(k)作為輸出數(shù)據(jù)。數(shù)學(xué)方程如式(6)所示,其中m為輸入數(shù)據(jù)個(gè)數(shù):
1)網(wǎng)絡(luò)結(jié)構(gòu)
多數(shù)研究已經(jīng)證明,神經(jīng)網(wǎng)絡(luò)采用隱藏層與線性輸出層可以擬合出任意一有理函數(shù),雖然神經(jīng)元層數(shù)越多擬合精度越高,但是神經(jīng)元層數(shù)的增加會(huì)降低訓(xùn)練速度,導(dǎo)致過擬合。綜合考慮下,文中算法采用一層隱藏層、多神經(jīng)元的方式。如圖4所示。
圖4 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)模型
2)激勵(lì)函數(shù)
神經(jīng)網(wǎng)絡(luò)隱藏層函數(shù)通常采用Sigmoid型函數(shù),并能夠滿足對(duì)函數(shù)的擬合需要。由此,隱藏層選取Sigmoid型傳遞函數(shù)tanh。
3)損失函數(shù)
對(duì)于分類、回歸、序列預(yù)測(cè)等常見問題,通常按照一些簡(jiǎn)單的指導(dǎo)原則來選擇正確的損失函數(shù)。晶振老化漂移的預(yù)測(cè)本質(zhì)上屬于回歸問題,回歸問題可以使用均方誤差損失函數(shù)。
4)優(yōu)化器
優(yōu)化器或者稱之為學(xué)習(xí)算法,其功能是通過以最佳的訓(xùn)練方式,來最小化或最大化損失函數(shù)。設(shè)計(jì)不同優(yōu)化器對(duì)BP神經(jīng)網(wǎng)絡(luò)效果影響較大,決定了訓(xùn)練速度和最優(yōu)求解,常見優(yōu)化器包括梯度下降算法、Scaled共軛梯度算法、Levenberd-Marquardt等算法。模型參數(shù)設(shè)置情況為:訓(xùn)練迭代次數(shù)上限為400次;訓(xùn)練誤差精度設(shè)置為均方根誤差為1×10-7,對(duì)不同優(yōu)化器多次訓(xùn)練神經(jīng)網(wǎng)絡(luò),比對(duì)訓(xùn)練效果。
試驗(yàn)設(shè)置同步授時(shí)狀態(tài)時(shí)長(zhǎng)為仿真總時(shí)長(zhǎng)的一半。當(dāng)系統(tǒng)處在同步授時(shí)狀態(tài)時(shí),Kalman濾波器對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,作為神經(jīng)網(wǎng)絡(luò)輸入層的初始數(shù)據(jù),然后進(jìn)行訓(xùn)練。失去外部授時(shí)后,將完成訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型對(duì)晶振頻率進(jìn)行預(yù)測(cè),修正晶振頻率輸出,實(shí)現(xiàn)高精度守時(shí)?;谏窠?jīng)網(wǎng)絡(luò)的守時(shí)算法對(duì)晶振頻率的預(yù)測(cè)效果如圖5所示,可以看出,訓(xùn)練后的神經(jīng)網(wǎng)絡(luò)可以很好地?cái)M合頻率偏移,有效減小晶振頻率老化漂移帶來的累計(jì)時(shí)間誤差。
圖5 基于神經(jīng)網(wǎng)絡(luò)的晶振頻率預(yù)測(cè)
算法同步守時(shí)能力測(cè)試結(jié)果如圖6所示,在外部時(shí)鐘源授時(shí)結(jié)束后的24 h內(nèi),累計(jì)時(shí)間誤差小于4 μs,相比傳統(tǒng)守時(shí)方法有了大幅提高。圖中也顯示出隨著時(shí)間的增長(zhǎng),累計(jì)時(shí)間誤差逐漸增大,神經(jīng)網(wǎng)絡(luò)模型的守時(shí)精度逐漸降低。
圖6 同步守時(shí)算法時(shí)間精度測(cè)試結(jié)果
由結(jié)果可以看出,相比于傳統(tǒng)的線性模型和對(duì)數(shù)模型,神經(jīng)網(wǎng)絡(luò)守時(shí)精度都明顯優(yōu)于前兩者。另外由于不同廠家、不同批次、不同型號(hào)的晶振的老化漂移規(guī)律都有所不同,所以采用傳統(tǒng)的數(shù)學(xué)模型很難滿足現(xiàn)實(shí)需要,神經(jīng)網(wǎng)絡(luò)來對(duì)晶振老化漂移規(guī)律進(jìn)行擬合具有較強(qiáng)的自適應(yīng)性和可行性。
就地模塊作為第三代智能變電站的核心設(shè)備,其守時(shí)性能對(duì)變電站正常運(yùn)行至關(guān)重要。文中重點(diǎn)針對(duì)影響石英晶振守時(shí)的老化因素,提出一種基于Kalman濾波器與神經(jīng)網(wǎng)絡(luò)模型混合應(yīng)用的高精度守時(shí)算法,通過將其與傳統(tǒng)的線性模型和對(duì)數(shù)模型進(jìn)行仿真測(cè)試對(duì)比可知,引入神經(jīng)網(wǎng)絡(luò)可有效預(yù)測(cè)晶振老化漂移,從而提高設(shè)備的守時(shí)精度,這對(duì)提升第三代智能變電站運(yùn)行穩(wěn)定性具有重要意義。