賈振華,許曉冬,呂德東,2,張 閣,2,朱曉輝,2
(1.中國空間技術(shù)研究院通信衛(wèi)星事業(yè)部 北京 100094;2.北京市衛(wèi)星移動寬帶通信工程技術(shù)研究中心 北京100094)
基于IRIG-B碼的測控時(shí)間系統(tǒng)的設(shè)計(jì)
賈振華1,許曉冬1,呂德東1,2,張 閣1,2,朱曉輝1,2
(1.中國空間技術(shù)研究院通信衛(wèi)星事業(yè)部 北京 100094;2.北京市衛(wèi)星移動寬帶通信工程技術(shù)研究中心 北京100094)
時(shí)間系統(tǒng)對于測控設(shè)備的正常運(yùn)行和故障診斷起著至關(guān)重要的作用。IRIG-B碼是國際靶場試驗(yàn)通用的同步時(shí)間碼。本文基于IRIG-B碼對某測控設(shè)備的時(shí)間系統(tǒng)進(jìn)行設(shè)計(jì),并在該設(shè)備中成功實(shí)現(xiàn)時(shí)間同步,精度可達(dá)級。與以往的各種方法相比,在解碼的方案中作出了改進(jìn),利用移位寄存器實(shí)現(xiàn)幀同步和碼元邊沿提取,使得設(shè)計(jì)簡單易行,具有較強(qiáng)的容錯(cuò)能力和抗干擾性。同時(shí),本地時(shí)間的正常工作使得設(shè)備在B碼異常的情況下仍然可以獲得準(zhǔn)確的時(shí)間信息,從而為數(shù)據(jù)處理、存儲及事后分析提供精確的時(shí)間定位,具有靈活性,開放性,簡單實(shí)用,功耗低的優(yōu)點(diǎn)。
IRIG-B碼;時(shí)間系統(tǒng);VHDL;移位寄存器;解碼
對于航天測控來說,時(shí)間統(tǒng)一系統(tǒng)的主要作用有[1]:標(biāo)志航天實(shí)驗(yàn)中重要事件的時(shí)刻;統(tǒng)一航天測試系統(tǒng)的時(shí)間頻率;提供對航天飛行控制所需的精密時(shí)刻。
通常時(shí)間振蕩器會隨著時(shí)間的產(chǎn)生而出現(xiàn)漂移,需要標(biāo)準(zhǔn)的授時(shí)系統(tǒng)做校準(zhǔn)。IRIG-B碼具備傳輸比較容易的串行碼格式,速率適中,編碼信息量豐富,因而得到了廣泛的應(yīng)用。文章介紹了一種B碼的解碼方案,結(jié)合本地晶振精度可達(dá)μs級。該方案在XILINX公司Virtex-7系列FPGA平臺上實(shí)現(xiàn),最終成功應(yīng)用在某測控設(shè)備中。
IRIG[2]的全稱為Inter Range Instrumentation Group(靶場儀器組),負(fù)責(zé)制定美國靶場定時(shí)系統(tǒng)的時(shí)間碼標(biāo)準(zhǔn),為靶場中的衛(wèi)星導(dǎo)航、航天發(fā)射、導(dǎo)彈制導(dǎo)等提供標(biāo)準(zhǔn)時(shí)間。
IRIG-B格式時(shí)間碼[3](簡稱B碼)包含直流碼(DC碼)和交流碼(AC碼)兩種格式,是每秒一幀的時(shí)間串碼,每幀包括100個(gè)碼元。直流碼每個(gè)碼元寬度為10 ms[4]。其中,二進(jìn)制“l(fā)”的脈沖時(shí)寬為5 ms;二進(jìn)制“0”的脈沖時(shí)寬分別為2 ms;位置識別標(biāo)志的脈沖時(shí)寬分別為8 ms。連續(xù)的兩位置識別標(biāo)志為準(zhǔn)秒時(shí)刻。如圖1(a)所示,表示197天16時(shí)45分32秒。交流碼(AC碼)是直流碼(DC碼)對1 kHz正弦信號進(jìn)行幅度調(diào)制后形成的,如圖1(b)所示。
圖1 B碼格式
時(shí)間系統(tǒng)為設(shè)備提供絕對時(shí)間和同步脈沖信號。設(shè)備能夠?qū)涣鰾碼和直流B碼進(jìn)行解碼處理,準(zhǔn)確提取出和主站同步的幀參考點(diǎn),向各單元送出同步脈沖,最終將時(shí)、分、秒等時(shí)間信息以串行BCD碼的形式送入計(jì)算機(jī)。在傳送過程中,如果B碼信號中斷或者出現(xiàn)錯(cuò)誤,則通過切換本地時(shí)間,將時(shí)、分、秒、毫秒信息輸入計(jì)算機(jī)和其它單元模塊。時(shí)間系統(tǒng)的總體方案設(shè)計(jì)如圖2所示。
圖2 時(shí)間系統(tǒng)總體方案設(shè)計(jì)
由于B碼解調(diào)需要整個(gè)秒周期,在對IRIG-B碼信號進(jìn)行檢測時(shí),如果1.1 s仍未檢測到幀頭或找到幀頭后沒有電平反轉(zhuǎn) ,則認(rèn)為B碼信號中斷或者出現(xiàn)錯(cuò)誤,將解碼程序復(fù)位,同時(shí)切換到本地時(shí)鐘;若檢測到B碼后脈寬不在1ms~9ms之間,則認(rèn)為B碼信號出現(xiàn)毛刺,上報(bào)給監(jiān)控系統(tǒng)。為了達(dá)到監(jiān)測的作用,由FPGA獨(dú)立產(chǎn)生一個(gè)計(jì)數(shù)器[5],計(jì)時(shí)1.1 s。
輸出時(shí)間數(shù)據(jù)可作為時(shí)間戳打在每幀遙測數(shù)據(jù)的后面。在遙測數(shù)據(jù)接收過程中,時(shí)間信息可實(shí)時(shí)顯示在上位機(jī)界面,能夠?yàn)閿?shù)據(jù)存儲、處理和事后分析提供精確的時(shí)間定位[6],便于觀察分析。
3.1 直流碼(DC碼)解碼方案
直流碼解碼主要包括脈寬鑒別模塊,提取邊沿脈沖模塊,提取秒脈沖模塊以及提取時(shí)間信息模塊[7-8]。解碼流程如圖3所示。
圖3 直流B碼解碼程序流程
1)脈寬鑒別模塊
脈寬鑒別模塊用于檢測直流碼信號的脈沖寬度[9]。計(jì)數(shù)器counter_pulse_wide在1MHz的時(shí)鐘的上升沿對每個(gè)碼元進(jìn)行計(jì)數(shù),在碼元上升沿處清零,在碼元下降沿處根據(jù)計(jì)數(shù)器的值對該碼元進(jìn)行判斷。為避免時(shí)鐘同步誤差及傳輸或解調(diào)中受到噪聲影響或外部干擾而產(chǎn)生毛刺或抖動,保證碼元值判斷的準(zhǔn)確性,將檢測門限留有一定裕度。碼元值存儲在寄存器pulse_width_dc_in(2 downto 0)中。 計(jì)數(shù)值、碼元值與寄存器值的關(guān)系如表1所示。
表1 計(jì)數(shù)值、碼元值與寄存器值的關(guān)系
2)提取邊沿脈沖模塊
文章采用同步提取碼元邊沿窄脈沖的方法代替碼元上升沿或下降沿等觸發(fā)條件實(shí)現(xiàn)碼元計(jì)數(shù)。為消除直流碼傳輸過程中的毛刺、干擾造成的邊沿誤判,增強(qiáng)解碼過程的容錯(cuò)能力,使用移位寄存器提取邊沿窄脈沖。移位寄存器是一個(gè)具有移位功能的寄存器,即寄存器中所存的二進(jìn)制數(shù)據(jù)或代碼能夠在移位脈沖的作用下依次左移或右移一個(gè)比特。提取上升沿的VHDL程序如下:
Modelsim仿真時(shí)移位寄存器的變化情況如圖4所示:
3)提取秒脈沖模塊
圖4 邊沿提取移位寄存器的變化
文中采用移位寄存器的方法查找?guī)瑓⒖紭?biāo)志PR,進(jìn)而提取準(zhǔn)秒時(shí)刻信號PPS。設(shè)計(jì)一個(gè)兩位移位寄存器buffer_pulse_width(1 downto 0),在移位脈沖nd_fall_pulse_dc_in的作用下,依次左移,并將pulse_width_dc_in(1)賦給寄存器的最低位。當(dāng)移位寄存器buffer_pulse_width=”11”時(shí),即檢測到兩個(gè)連續(xù)的8ms碼元,產(chǎn)生B碼鎖定的標(biāo)志信號flag_lock_PP_dc_in,該信號高電平有效。VHDL程序如下:
4)提取時(shí)間信息模塊
由B碼的碼制原理可知,B碼的每一幀中第1-41個(gè)碼元用來表示時(shí)間信息和位置標(biāo)志信息。其中蘊(yùn)含時(shí)間信息的秒、分、時(shí)、天時(shí)間信息的碼元有30個(gè)[10]。定義九個(gè)寄存器分別存儲秒個(gè)位,秒十位,分個(gè)位,分十位,時(shí)個(gè)位,時(shí)十位,天個(gè)位,天十位,天百位的信息。為直流解碼后的Modelsim仿真時(shí)序圖如圖5所示,可以準(zhǔn)確解得197天16時(shí)45分32秒,與輸入的時(shí)間信息一致。
圖5 直流信號解碼功能仿真時(shí)序圖
3.2 交流碼(AC碼)解碼方案
由于直流IRIG-B碼不適合于長距離傳輸,所以一般時(shí)統(tǒng)站與接收端距離比較遠(yuǎn)的時(shí)候,都使用交流碼來傳輸[11-12],論文選用了Matlab7.6.0版本的軟件來實(shí)現(xiàn)仿真設(shè)計(jì)。
交流B碼是由幅度不同的正弦波組合而成的波形,直接去判斷碼元信息比較困難,因此對交流B碼解碼的核心思想,首先要把交流B碼首先轉(zhuǎn)換成較為整齊的直流B碼,再通過對直流B碼脈寬的檢測,判斷碼元中包含的時(shí)間信息。對交流碼信號進(jìn)行解調(diào)時(shí),用與調(diào)制時(shí)同幅度、同相位的l kHz正弦波與接收到的信號相乘,得到如下結(jié)果:
由上式可得,ω(t)信號由原來的調(diào)制信號 x(t)和頻率被搬移到±2ω0附近的信號組成。因此通過低通濾波器濾除頻率為±2ω0的部分,保留原來調(diào)制前的信號頻譜[13]。圖6(a)為交流碼信號與正弦波相乘后的波形及其頻譜圖。正負(fù)2 kHz處的頻譜分量幅度為中心頻率的一半,與理論結(jié)果一致。圖6(b)為通過64階、截止頻率為1 kHz的低通濾波器[14-15]后的波形。在2 ms脈沖處出現(xiàn)尖峰狀,通過合理設(shè)置幅值門限,然后對高于門限的時(shí)刻計(jì)數(shù),從而判斷脈沖寬度,得到碼元信息。
圖6 交流碼解調(diào)及濾波圖
文章介紹了一種基于IRIG-B碼測控設(shè)備時(shí)間系統(tǒng)的設(shè)計(jì)方案。論文采用容錯(cuò)技術(shù)來判定碼元寬度,并對B碼傳輸過程中可能出現(xiàn)的毛刺進(jìn)行了容錯(cuò)設(shè)計(jì),保證時(shí)間系統(tǒng)具有更好的抗干擾能力。該測控設(shè)備時(shí)間系統(tǒng)方案可根據(jù)不同的應(yīng)用進(jìn)行擴(kuò)展,進(jìn)一步增強(qiáng)了系統(tǒng)在其他領(lǐng)域應(yīng)用的靈活性。
[1]江濤,孫昕.GPS與IRIG-B在電網(wǎng)授時(shí)系統(tǒng)中的應(yīng)用[J].繼電器,2007,35:333-335.
[2]周國平,邢燦華.IRIG-B格式時(shí)間編碼電路的設(shè)計(jì)[J].電氣技術(shù)與自動化,2005,34(2):88-90.
[3]史玉琴.基于EPLD的IRIG-B編/解碼器的分析與設(shè)計(jì)明[J].現(xiàn)代電子技術(shù),2007,14:79-81.
[4]CILETTI M D.Advanced digital design with theVerilogHDL[M].Publishing House of Electronics Industry,2005.
[5]張斌,張東來,王超.基于FPGA的IRIG-B(DC)碼同步解碼設(shè)計(jì)[J].測控技術(shù),2008,27(2):45-47
[6]陳源,劉明波,侯孝民.基于IRIG-碼的軟件化測控系統(tǒng)時(shí)間同步方法研究[J].遙測遙控,2012,33(2):53-57.
[7]平步青.基于FPGA的I R IG—B編解碼系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].蘇州:蘇州大學(xué),2012.
[8]馮培倫,邢曉楠,趙建文.基于FPGA的IRIG-B碼(DC碼)解碼器設(shè)計(jì)[J].火力與指揮控制,2014,39:184-185.
[9]吳煒,周燁,黃子強(qiáng).FPGA實(shí)現(xiàn)IRIG-B(DC)碼編碼和解碼的設(shè)計(jì) [J].電子設(shè)計(jì)工程,2010(12):162-164.
[10]郗海燕,王娟.基于FPGA的IRIG-B(DC)解碼設(shè)計(jì)[J].電子設(shè)計(jì)工程, 2014,2(3):182-184.
[11]陳利.基于FPGA的IRIG-B碼基帶產(chǎn)生電路的設(shè)計(jì)與實(shí)現(xiàn)[D].蘇州:蘇州大學(xué),2014.
[12]張明迪.基于FPGA的IRIG-B碼解碼設(shè)計(jì)[D].哈爾濱:哈爾濱工程大學(xué),2011.
[13]樂正友.信號與系統(tǒng)[M].北京:清華大學(xué)出版社,2004.
[14]劉慶良,盧榮軍,李建清.FIR數(shù)字濾波器的FPGA實(shí)現(xiàn)研究[J].電子設(shè)計(jì)工程,2010,18(3):59-62.
[15]杜勇,路建工,李元洲.數(shù)字濾波器的MATLAB與FPGA實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2012.
Design of measurement and control time system based on IRIG-B
JIA Zhen-hua1,XU Xiao-dong1,LV De-dong1,2, ZHANG Ge1,2,ZHU Xiao-hui1,2
(1.China Academy of Space Technology Institute of Telecommunication Satellite, Beijing, 100094,China;2.The Satellite Mobile Broadband Communication Engineering Technology Research Center of Beijing, Beijing 100094,China)
Time System plays very important role in formal function and trouble checking of measurement and control device.IRIG-B is the current synchronization time code in international shooting range.The paper designs the time system of measurement and control device based on IRIG-B,and has realized the time synchronization.It can fully satisfy most measurement and control system requirement.Compared with other methods before, it improves in decode scheme, which makes the design easy to realize.Local time system can ensure the equipment acquire correct time information,and provide time orientation for data processing,storage and analysis afterwards.
IRIG-B;time system;VHDL;shift-register;decode
TN764
A
1674-6236(2017)12-0077-04
2016-05-28稿件編號:201605272
賈振華(1991—),女,山西大同人,碩士研究生。研究方向:航天器電子與信息系統(tǒng)。