現(xiàn)代電力系統(tǒng)跨大區(qū)聯(lián)網(wǎng)的實(shí)現(xiàn),使得電力系統(tǒng)的規(guī)模越來越大,電網(wǎng)結(jié)構(gòu)愈趨復(fù)雜,各種類型的電網(wǎng)故障要求繼電保護(hù)設(shè)備能夠快速準(zhǔn)確的判斷故障并做出相應(yīng)動(dòng)作。同時(shí),隨著新的保護(hù)原理和算法被不斷應(yīng)用,從而使繼電保護(hù)裝置的研究向更高的層次發(fā)展,繼電保護(hù)技術(shù)未來趨勢(shì)是向網(wǎng)絡(luò)化,智能化,保護(hù)、控制、測(cè)量和數(shù)據(jù)通信一體化發(fā)展?;谝陨媳尘?,以往單一處理器工作的繼電保護(hù)裝置注定無法滿足現(xiàn)代化智能電網(wǎng)的高要求,多處理器、多板卡分工協(xié)作是當(dāng)前主流模式。
多板卡的繼電保護(hù)裝置內(nèi),各板卡之間需要進(jìn)行大量的數(shù)據(jù)交互,信息共享,板卡間的同步對(duì)數(shù)據(jù)測(cè)量精度、電力參數(shù)計(jì)算精度、保護(hù)動(dòng)作實(shí)時(shí)性有至關(guān)重要的影響。目前,多數(shù)繼電保護(hù)裝置板卡間的同步主要依賴于處理器的串行接口、CAN通信來實(shí)現(xiàn),但由于嵌入式處理器以及嵌入式操作系統(tǒng)的局限性,其對(duì)時(shí)精度僅能達(dá)到毫秒級(jí)。
本文介紹了一種基于FPGA的繼電保護(hù)裝置內(nèi)部對(duì)時(shí)系統(tǒng)。FPGA(Field Programmable Gate Array)是現(xiàn)場(chǎng)可編程門陣列的縮寫。用戶可對(duì)FPGA內(nèi)部的邏輯模塊和I/O模塊重新配置,以實(shí)現(xiàn)用戶的邏輯。它具有靜態(tài)可重復(fù)編程和動(dòng)態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過編寫程序來修改[1]。
FPGA作為硬件邏輯器件工作,具有極高的實(shí)時(shí)性,總延時(shí)僅包括線路傳輸延時(shí)及幾個(gè)解碼主頻時(shí)鐘周期,能夠使得繼電保護(hù)裝置內(nèi)部對(duì)時(shí)精度達(dá)到納秒級(jí)。
IRIG時(shí)間編碼序列是由美國國防部下屬的靶場(chǎng)儀器組(IRIG)提出的并被普遍應(yīng)用的時(shí)間信息傳輸系統(tǒng)[2]?,F(xiàn)廣泛應(yīng)用于軍事、商業(yè)、工業(yè)等諸多領(lǐng)域。IRIG碼共有4種并行二進(jìn)制時(shí)間碼格式和6種串行二進(jìn)制時(shí)間碼格式,串行時(shí)間碼序列分為A、B、C、D、E、F共6種編碼,其中最常見的是IRIG-B時(shí)間碼格式。其以每秒1次的頻率發(fā)送包括天、時(shí)、分、秒等時(shí)間信息[3]。
IRIG-B基本碼元包括“0”碼元、“1”碼元和“P”碼元,共100個(gè)碼元,每個(gè)碼元占用10ms時(shí)間。
“0”碼元、“1”碼元脈沖寬度分別為2ms和5ms,“P”碼元為同步碼元,脈寬為8ms。碼元信息如圖1所示:
圖1 基本碼元信息
B碼以10個(gè)基本碼元為1組,每組傳輸一類信息,以P碼開頭。時(shí)分秒信息以十進(jìn)制編碼表示。第1組以連續(xù)2個(gè)“P”碼開始,其中第2個(gè)“P”碼的上升沿代表整秒時(shí)刻,定義為“Pr”,緊跟著的8個(gè)基本碼元代表秒信息。第2組的第2-8碼元傳輸分信息。接下來的各組碼元如圖2所示:
圖2 IRIG-B碼幀格式
同步系統(tǒng)由主板卡、背板和多個(gè)從板卡組成。主板卡主要包括處理器、時(shí)間芯片、電池及FPGA,從板卡主要包括處理器及FPGA。首先,主板卡的處理器可以通過外部接口或者SNTP對(duì)時(shí)來設(shè)定時(shí)間,包括年月日時(shí)分秒,并存儲(chǔ)在時(shí)間芯片中。當(dāng)裝置斷電或者對(duì)時(shí)丟失時(shí),由時(shí)間芯片來完成時(shí)間的更新。處理器每秒將當(dāng)前時(shí)間通過數(shù)據(jù)總線接口寫入FPGA寄存器,F(xiàn)PGA讀取時(shí)間信息,編碼成IRIG-B格式通過背板差分總線發(fā)送到各個(gè)從板卡。從板卡FPGA將IRIG-B碼流解碼出來,提供到處理器的數(shù)據(jù)總線上,完成同步。
整個(gè)同步系統(tǒng)的框架如圖3所示。
圖3 同步系統(tǒng)框架
圖4 編碼模塊
本同步系統(tǒng)的FPGA使用Altera公司的Cyclone IV系列的EP4CE10芯片,編程采用VHDL語言。
編碼模塊實(shí)現(xiàn)過程介紹如下:
(1)首先定義狀態(tài)機(jī)。
例如,s_prev代表進(jìn)入“Pr”碼編解碼狀態(tài)機(jī),s_sec代表進(jìn)入秒信息編解碼狀態(tài)機(jī)。
圖5 解碼模塊
(2)編碼模塊的流程(如圖4所示)。
根據(jù)圖1中基本碼元信息,首先將輸出置為高電平,不同的碼元,高電平持續(xù)的時(shí)間不同,例如“0”碼元高電平持續(xù)2ms,高電平時(shí)間結(jié)束后,將輸出置為低電平,“0”碼元低電平持續(xù)時(shí)間為8ms。另外,從圖2的B碼幀格式看到,sec、min、hour這3組分別有10個(gè)基本碼元,而day組共有30個(gè)基本碼元,程序每個(gè)狀態(tài)機(jī)中會(huì)根據(jù)本組基本碼元數(shù)量判斷本組碼元是否發(fā)送完畢。
(3)解碼模塊的實(shí)現(xiàn)流程(如圖5所示)。
解碼邏輯首先檢測(cè)“Pr”碼,即整秒時(shí)刻,判斷方法是檢測(cè)連續(xù)2次“P”碼,接收到“Pr”碼之后,即可進(jìn)入秒信息接收狀態(tài)機(jī)。
判斷基本碼元有效性的邏輯中,設(shè)定高低電平時(shí)間的上下限,若碼元脈沖高低電平任一值偏出上下限值,即判定該碼元無效,同時(shí)狀態(tài)機(jī)被復(fù)位,等待下一次幀起始,即整秒時(shí)刻。
通過FPGA實(shí)現(xiàn)IRIG-B時(shí)間信息的傳輸,繼電保護(hù)裝置內(nèi)部板卡間的時(shí)間同步精度達(dá)到納秒級(jí),大大提高了板卡間信息交互的同步性和實(shí)時(shí)性,使得裝置處理大量復(fù)雜電力數(shù)據(jù)的能力得到顯著提高,是一種高效可行的同步方法。
[1]EDA先鋒工作室.Altera FPGA/CPLD設(shè)計(jì)(基礎(chǔ)篇)(第2版)[M].人民郵電出版社,2011,2.
[2]李瑞生,張克元,馮秋芳.電力系統(tǒng)自動(dòng)化GPS精確對(duì)時(shí)的方案[J].繼電器,1999,27(5):31-32.
[3]周斌,黃國方,等.電力自動(dòng)化設(shè)備,2005年9月.