邸興,張杰
(中國(guó)飛行試驗(yàn)研究院,西安 710089 )
?
基于北斗的高速攝像機(jī)時(shí)間同步器設(shè)計(jì)※
邸興,張杰
(中國(guó)飛行試驗(yàn)研究院,西安 710089 )
為了滿足民用飛機(jī)在飛行試驗(yàn)中高速攝像機(jī)對(duì)時(shí)間同步的需求,基于國(guó)產(chǎn)北斗衛(wèi)星導(dǎo)航系統(tǒng)設(shè)計(jì)了具有精確輸出IRIG-B(AC)碼的時(shí)間同步器,用于機(jī)載高速攝像機(jī)的精確時(shí)間同步。以FPGA為核心,使用直接數(shù)字頻率合成技術(shù)實(shí)現(xiàn)了IRIG-B(AC)碼的產(chǎn)生。實(shí)驗(yàn)結(jié)果表明,該同步器時(shí)間同步精度滿足要求,可以實(shí)現(xiàn)對(duì)高速攝像機(jī)進(jìn)行時(shí)間同步的功能。
北斗衛(wèi)星系統(tǒng);FPGA;直接數(shù)字頻率合成;時(shí)間同步
在民用飛機(jī)飛行試驗(yàn)中,為了保證圖像測(cè)試數(shù)據(jù)準(zhǔn)確可靠,機(jī)上圖像測(cè)試系統(tǒng)中不同測(cè)試設(shè)備的時(shí)間需要嚴(yán)格統(tǒng)一。原子鐘是一種非常穩(wěn)定的時(shí)鐘源,可以提供精確的時(shí)間信息用于時(shí)間同步,但是在機(jī)載環(huán)境下,由于安裝空間狹小,安裝位置受限,無(wú)法使用原子鐘作為時(shí)鐘源。
使用導(dǎo)航衛(wèi)星對(duì)機(jī)載高速攝像機(jī)進(jìn)行時(shí)間同步,可以滿足圖像測(cè)試系統(tǒng)對(duì)時(shí)間同步的精度要求。隨著我國(guó)北斗二代衛(wèi)星導(dǎo)航系統(tǒng)一期組網(wǎng)完成和接口控制文件的公布,北斗衛(wèi)星導(dǎo)航系統(tǒng)開始向亞太大部分地區(qū)正式提供連續(xù)無(wú)源定位、導(dǎo)航、授時(shí)等服務(wù)。本文使用北斗衛(wèi)星導(dǎo)航系統(tǒng),設(shè)計(jì)了機(jī)載高速攝像機(jī)時(shí)間同步器。
目前,絕大多數(shù)機(jī)載高速攝像機(jī)外部同步時(shí)間輸入都支持IRIG-B碼[1],時(shí)間同步器接收北斗衛(wèi)星時(shí)間信息,將衛(wèi)星發(fā)送的UTC時(shí)間編碼轉(zhuǎn)換為IRIG-B時(shí)間碼需要的格式,并產(chǎn)生IRIG-B時(shí)間碼的波形輸出,IRIG-B時(shí)間碼的起始位置必須和整秒的起始位置嚴(yán)格對(duì)齊。時(shí)間同步器內(nèi)部結(jié)構(gòu)如圖1所示。
圖1 時(shí)間同步器內(nèi)部結(jié)構(gòu)
UM220-T接收北斗二代衛(wèi)星時(shí)間信息,將時(shí)間信息以NMEA-0183語(yǔ)句輸出至STM32微控制器,STM32微控制器解碼UTC時(shí)間,并將其編碼為IRIG-B需要的時(shí)間信息,通過串行總線輸入FPGA中,同時(shí)STM32微控制器通過SPI接口控制OLED顯示屏,實(shí)時(shí)顯示當(dāng)前定位狀態(tài)和時(shí)間信息。FPGA將接收的時(shí)間信息編碼為IRIG-B(DC)碼和IRIG-B(AC)碼輸出,由于FPGA輸出的IRIG-B(AC)碼實(shí)際上為數(shù)字信號(hào),需要通過高速D/A轉(zhuǎn)換器以及運(yùn)放信號(hào)調(diào)理來實(shí)現(xiàn)將數(shù)字IRIG-B(AC)碼轉(zhuǎn)換成模擬信號(hào),用于機(jī)載高速攝像機(jī)時(shí)間同步。
1.1 UM220-T北斗衛(wèi)星接收模塊
圖2 電源供電部分電路
UM220-T模塊是針對(duì)授時(shí)應(yīng)用領(lǐng)域推出的北斗/GPS雙系統(tǒng)精密授時(shí)產(chǎn)品,支持靜態(tài)授時(shí)、單星授時(shí),集成度高、功耗低,適合北斗授時(shí)領(lǐng)域的應(yīng)用;采用先進(jìn)的多路徑抑制技術(shù),以及優(yōu)化的授時(shí)算法,提供精確的1 PPS輸出。創(chuàng)新的多系統(tǒng)融合開放式架構(gòu),保證不同系統(tǒng)的可用衛(wèi)星均可參與聯(lián)合定位、授時(shí),保障長(zhǎng)時(shí)間連續(xù)可靠的授時(shí)輸出。支持單星授時(shí)功能,在僅有一顆可見衛(wèi)星時(shí),仍能保持精確、穩(wěn)定的 1 PPS輸出。
1.2 STM32微控制器
本設(shè)計(jì)使用ARM Cortex-M3內(nèi)核的STM32F103RB,具有擴(kuò)展工業(yè)級(jí)的工作溫度范圍,主頻可達(dá)72 MHz。
方案中使用STM32F103RB微控制器完成接收UM220-T發(fā)送的時(shí)間信息[2],從中解碼出當(dāng)前UTC時(shí)間,將其轉(zhuǎn)換為標(biāo)準(zhǔn)的IRIG-B時(shí)間后通過自定義串行輸出口輸出至FPGA。同時(shí),STM32F103RB微控制器還負(fù)責(zé)驅(qū)動(dòng)OLED顯示屏,實(shí)時(shí)顯示當(dāng)前的定位狀態(tài)和時(shí)間信息,方案設(shè)計(jì)中還增加了實(shí)時(shí)時(shí)鐘芯片(RTC),以便于在收星條件不好時(shí),為測(cè)試系統(tǒng)提供一個(gè)參考時(shí)間。
1.3 FPGA芯片實(shí)現(xiàn)IRIG-B編碼
當(dāng)前,絕大多數(shù)機(jī)載高速攝像機(jī)都支持使用IRIG-B進(jìn)行時(shí)間同步,IRIG是美國(guó)靶場(chǎng)儀器組的簡(jiǎn)稱。IRIG時(shí)間標(biāo)準(zhǔn)有兩大類:一類是并行時(shí)間碼格式,這類碼由于是并行格式,傳輸距離較近,且是二進(jìn)制,因此遠(yuǎn)不如串行格式廣泛;另一類是串行時(shí)間碼,共有6種格式,即A、B、D、E、G、H。它們的主要差別是時(shí)間碼的幀速率不同,IRIG-B為其中的B型碼,B型碼的時(shí)幀速率為1 F/s。北斗時(shí)間同步器設(shè)計(jì)中使用FPGA直接數(shù)字頻率合成技術(shù)實(shí)現(xiàn)時(shí)間信息的IRIG-B碼型產(chǎn)生。
2.1 硬件電路設(shè)計(jì)
2.1.1 供電部分電路
同步器內(nèi)部設(shè)計(jì)中,UM220-T、STM32F103RB、RTC供電電壓為3.3 V,F(xiàn)PGA的I/O供電電壓為3.3 V,F(xiàn)PGA內(nèi)核以及PLL供電電壓為1.2 V,高速D/A運(yùn)放供電為±5 V,機(jī)上電源提供28 V供電,故需要將28 V電壓轉(zhuǎn)換為各個(gè)部分需要的電壓。設(shè)計(jì)中采用北京新雷能科技有限公司生產(chǎn)的DPB16-24D5-5EB電源,它具有18~36 V的寬范圍輸入電壓,輸出±5 V。通過LM1085-3.3的LDO芯片,將5 V電壓降壓得到3.3 V電壓,此芯片最大電流支持到3 A。再通過AMS1117-1.2獲取1.2 V電壓,由于1.2 V是FPGA內(nèi)核的工作電壓,以及FPGA內(nèi)部PLL的工作電壓,因此對(duì)1.2 V電壓的純凈程度要求比較高。需采用鉭電容濾波,設(shè)計(jì)中電源輸入部分還加入了SS14二極管反接保護(hù)電路。電源供電部分電路如圖2所示。
2.1.2 FPGA編碼部分電路
FPGA使用EP2C5T144I8,主要實(shí)現(xiàn)IRIG-B時(shí)間同步碼的編碼工作,STM32F103RB將解碼到的時(shí)間信息編碼成天、時(shí)、分、秒的8 421碼,在數(shù)據(jù)有效脈沖的使能下將數(shù)據(jù)送入FPGA,F(xiàn)PGA精確檢測(cè)秒脈沖(PPS)的上升沿,在秒脈沖的上升沿開始一整秒B碼時(shí)間數(shù)據(jù)的發(fā)送。本設(shè)計(jì)中FPGA將輸出的數(shù)據(jù)編碼為12位的并行數(shù)字信號(hào),需要使用D/A信號(hào)調(diào)理將并行的數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào)[3]。本設(shè)計(jì)中選用美信公司的MAX7541,它具有0.6 μs的轉(zhuǎn)換時(shí)間和12位的分辨率。MAX7541輸出數(shù)據(jù)經(jīng)運(yùn)放信號(hào)調(diào)理和阻抗變換后產(chǎn)生標(biāo)準(zhǔn)的IRIG-B(AC)碼。
IRIG-B(AC)碼實(shí)際上是用IRIG-B(DC)碼對(duì)標(biāo)準(zhǔn)正弦波載頻進(jìn)行幅度調(diào)制,標(biāo)準(zhǔn)正弦波載頻的頻率與碼元速率嚴(yán)格相關(guān),一般為碼元速率的10倍。B碼的標(biāo)準(zhǔn)正弦波載頻頻率為1 kHz。同時(shí),其正交過零點(diǎn)與所調(diào)制格式碼元的前沿相符合,標(biāo)準(zhǔn)的調(diào)制比為10:3。
正弦波是FPGA產(chǎn)生的[4-5],利用Quartus自帶的LMP模塊來進(jìn)行ROM建模,存儲(chǔ)了256個(gè)點(diǎn)的SIN函數(shù)的波形值。首先計(jì)算256個(gè)SIN函數(shù)的值,由于點(diǎn)數(shù)比較多,利用MATLAB工具產(chǎn)生一個(gè)完整周期SIN函數(shù)的256個(gè)點(diǎn)的值??紤]到FPGA處理整數(shù)相對(duì)簡(jiǎn)單,所以需要對(duì)SIN函數(shù)值進(jìn)行整數(shù)化。
2.1.3 STM32編解碼顯示電路
STM32解碼UM220-T輸出的NMEA-0183語(yǔ)句,從中解算出當(dāng)前的UTC時(shí)間,將其編碼后送入FPGA。STM32通過I2C接口與RTC時(shí)鐘芯片SD2400通信,提供當(dāng)無(wú)法接收衛(wèi)星時(shí)間時(shí)的參考時(shí)間輸出。
OLED作為下一代顯示技術(shù),由于其顯示屏為全固態(tài)器件,因此具有高低溫范圍寬、抗震特性好的特點(diǎn)。本設(shè)計(jì)中采用并行接口驅(qū)動(dòng)OLED顯示,完成時(shí)間、定位狀態(tài)的顯示功能。OLED顯示驅(qū)動(dòng)電路略——編者注。
2.2 軟件程序設(shè)計(jì)
2.2.1 NMEA-0183解碼
NMEA-0183是美國(guó)國(guó)家海洋電子協(xié)會(huì)(National Marine Electronics Association)為海用電子設(shè)備制定的標(biāo)準(zhǔn)格式。目前已成為GPS導(dǎo)航設(shè)備統(tǒng)一的 RTCM(Radio Technical Commission for Maritime services)標(biāo)準(zhǔn)協(xié)議。
NMEA-0183常用命令如表1所列。
表1 NMEA-0183常用命令
每條語(yǔ)句都有固定的格式,輸出的各個(gè)參數(shù)之間使用逗號(hào)隔開。UM220-T北斗衛(wèi)星接收模塊也使用這些標(biāo)準(zhǔn)語(yǔ)句進(jìn)行導(dǎo)航數(shù)據(jù)的輸出。本設(shè)計(jì)主要用于時(shí)間同步,因此僅需要對(duì)GPRMC語(yǔ)句中的定位狀態(tài)和時(shí)間信息進(jìn)行解碼。
STM32F103RB先在內(nèi)存中開辟兩塊緩沖區(qū)A和B,使用中斷模式接收UM220-T發(fā)送的數(shù)據(jù)。當(dāng)接收到$符號(hào)時(shí)表示數(shù)據(jù)幀開始,接下來將數(shù)據(jù)存入內(nèi)存中開辟的數(shù)據(jù)緩沖區(qū)A中;當(dāng)接收到回車換行符時(shí)表示一條數(shù)據(jù)幀接收完成,置位A區(qū)數(shù)據(jù)完成標(biāo)志位,等待下一幀數(shù)據(jù)到來時(shí)采用同樣的方式存入數(shù)據(jù)緩沖區(qū)B。
當(dāng)主程序檢測(cè)到緩沖區(qū)接收完成標(biāo)志位置位時(shí),從緩沖區(qū)中取出數(shù)據(jù),完成數(shù)據(jù)解碼[6],解算出當(dāng)前UTC時(shí)間,清空數(shù)據(jù)緩沖區(qū)和標(biāo)志位,將時(shí)間信息編碼成串行數(shù)據(jù)送入FPGA中(編碼時(shí)需要注意閏年B碼天數(shù)的處理)。主程序?qū)崿F(xiàn)的流程圖如圖3所示。
圖3 主程序流程圖
2.2.2 FPGA實(shí)現(xiàn)IRIG-B時(shí)間碼
IRIG-B碼是每秒一幀的時(shí)間串碼,每個(gè)碼元寬度為10 ms,一個(gè)時(shí)幀周期包括100個(gè)碼元,為脈寬編碼。碼元的“準(zhǔn)時(shí)”參考點(diǎn)是其脈沖前沿,每一幀的參考標(biāo)志由一個(gè)位置識(shí)別標(biāo)志和相鄰的參考碼元組成,其寬度為8 ms。每10個(gè)碼元有一個(gè)位置識(shí)別標(biāo)志:P1、P2、P3、…、P9、P0,它們均為8 ms寬度。二進(jìn)制“1”和“0”的脈寬為5 ms和2 ms。
使用Verilog語(yǔ)言進(jìn)行編碼邏輯的設(shè)計(jì),首先根據(jù)STM32F103RB輸出的時(shí)間,產(chǎn)生相應(yīng)的IRIG-B(DC)碼,再使用DC碼調(diào)制正弦載波,產(chǎn)生AC碼信號(hào),通過運(yùn)放調(diào)理電路實(shí)現(xiàn)對(duì)D/A輸出信號(hào)的低通濾波以及分配為多路的功能。
為了驗(yàn)證北斗時(shí)間同步器的精度,課題組將其輸出的波形與中國(guó)科學(xué)院國(guó)家授時(shí)中心的標(biāo)準(zhǔn)時(shí)碼發(fā)生器進(jìn)行了對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明,北斗時(shí)間同步器的同步精度能滿足設(shè)計(jì)要求。對(duì)比實(shí)驗(yàn)結(jié)果如圖4所示。
圖4 與標(biāo)準(zhǔn)時(shí)碼發(fā)生器時(shí)序?qū)Ρ?/p>
課題組將北斗時(shí)間同步器用于機(jī)載高速攝像機(jī)和模擬視頻采集記錄器進(jìn)行時(shí)間同步,結(jié)果表明北斗時(shí)間同步器輸出的IRIG-B(AC)碼可以實(shí)現(xiàn)對(duì)機(jī)載高速攝像機(jī)的時(shí)間同步功能,同步時(shí)間精度小于10 μs。
利用我國(guó)自主知識(shí)產(chǎn)權(quán)的北斗衛(wèi)星導(dǎo)航系統(tǒng),使用基于FPGA的數(shù)字頻率合成技術(shù)設(shè)計(jì)了北斗衛(wèi)星時(shí)間同步器,實(shí)現(xiàn)了對(duì)機(jī)載高速攝像機(jī)進(jìn)行精確的時(shí)間同步,并將其應(yīng)用于飛行試驗(yàn)中,為飛行試驗(yàn)高速攝像機(jī)時(shí)間同步提供了一種新的方式,具有較好的應(yīng)用前景。
[1] 邴志光,束坤,顧燕飛.IRIG-B碼在時(shí)間同步系統(tǒng)中的應(yīng)用[J].現(xiàn)代電子技術(shù),2012,35(7):16-18.
[2] STMicroelectronics.STM32 Reference Manual RM0008[EB/OL].http://www.stmicroelectronics.com.cn/stonline/stappl/resourceSelector/app?page=fullResource Selector& doctype=reference_manual&SeriesID=1031.
[3] 楊秀增.基于AD7543和FPGA的數(shù)/模轉(zhuǎn)換電路設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2009, 32(9):31-33.
[4] 陳亮,張煒.基于FPGA的多功能信號(hào)源生成系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2009,32(6):34-37.
[5] 楊東霞,巨永鋒.基于FPGA和DDS的數(shù)字調(diào)制信號(hào)發(fā)生器設(shè)計(jì)與實(shí)現(xiàn)[J].電子設(shè)計(jì)工程,2013,21(6):90-93.
[6] 鐘鼎,尹媛媛.基于STM32人流量統(tǒng)計(jì)監(jiān)控系統(tǒng)設(shè)計(jì)[J].電子設(shè)計(jì)工程,2011,19(20):94-96.
邸興(碩士),研究方向?yàn)楣怆姕y(cè)試技術(shù)。
Di Xing, Zhang Jie
(Chinese Flight Test Establishment, Xi’an 710089, China)
In order to meet the high speed camera of civil aircraft requirement of time synchronization in the flight test, the time synchronizer with accurate output IRIG-B(AC) code is designed based on Beidou satellite navigation system,which is used for precise time synchronization of airborne high speed camera.Taking FPGA as the core, the IRIG-B (AC) code can be generated using the direct digital frequency synthesis technology.The results of experiment show that the time synchronizer can satisfy the requirement of accuracy,and it can realize the time synchronization of high speed camera.
Beidou satellite system;FPGA;direct digital frequency synthesis;time synchronization
TP23
A
士然
2014-07-24)