蔣 磊,陳 朋,金 峰,韓禮波
(1.浙江工業(yè)大學(xué)信息工程學(xué)院,杭州 310023;2.杭州應(yīng)用聲學(xué)研究所,杭州 310012)
基于FPGA的海底回波信號(hào)模擬器
蔣 磊1,陳 朋1,金 峰1,韓禮波2
(1.浙江工業(yè)大學(xué)信息工程學(xué)院,杭州 310023;2.杭州應(yīng)用聲學(xué)研究所,杭州 310012)
以海上測(cè)試和水池測(cè)試為主的多普勒計(jì)程儀測(cè)試存在周期長、成本較高等缺點(diǎn)。為此,根據(jù)多普勒計(jì)程儀的測(cè)速原理,研究深度和速度模擬原理,在現(xiàn)場(chǎng)可編程門陣列(FPGA)的基礎(chǔ)上,設(shè)計(jì)一種新的海底回波信號(hào)模擬器。該模擬器模擬海底回波信號(hào),在多普勒計(jì)程儀接收模擬的回波信號(hào)后進(jìn)行計(jì)算,從而得到深度和速度值,對(duì)比設(shè)定值以達(dá)到檢驗(yàn)多普勒計(jì)程儀的目的。實(shí)驗(yàn)結(jié)果證明該模擬器的測(cè)量誤差較小。
多普勒計(jì)程儀;模擬器;現(xiàn)場(chǎng)可編程門陣列;Verilog語言;回波信號(hào)
DO I:10.3969/j.issn.1000-3428.2015.10.013
隨著海洋事業(yè)的發(fā)展,多普勒計(jì)程儀作為一種重要的導(dǎo)航設(shè)備有著廣泛的應(yīng)用前景[1-3]。多普勒計(jì)程儀處于不斷更新?lián)Q代中,對(duì)該設(shè)備的測(cè)試方式通常以海試和水池實(shí)驗(yàn)為主。但航海實(shí)驗(yàn)的成本高、周期長。水池實(shí)驗(yàn)的空間有限、數(shù)據(jù)不精確。因此,需要開發(fā)相應(yīng)的陸上模擬系統(tǒng),用于陸地環(huán)境下檢測(cè)多普勒計(jì)程儀的性能。目前,已有的系統(tǒng)有海軍工程大學(xué)開發(fā)的基于PXI總線的半實(shí)物仿真系統(tǒng)[4],還有中國船舶重工集團(tuán)公司研究的一種高精度、多功能回波模擬技術(shù)[5],哈爾濱工業(yè)大學(xué)設(shè)計(jì)的仿真系統(tǒng)[6]。 文獻(xiàn)[7]對(duì)回波速度和深度模擬的原理做了深入研究。這些系統(tǒng)大多用數(shù)字信號(hào)處理器(Digital Signal Processor,DSP)或復(fù)雜可編程邏輯器件(Complex Programmable Logic Device,CPLD)作為控制核心?,F(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array,F(xiàn)PGA)比CPLD的集成度高、功耗低、更靈活。和DSP相比,F(xiàn)PGA具有并行處理能力,內(nèi)部有DSP資源,運(yùn)算速率更高,更適合于要求高的系統(tǒng),并且FPGA實(shí)現(xiàn)信號(hào)處理也是未來的發(fā)展方向。所以,本文設(shè)計(jì)一種基于FPGA的模擬器,模擬多普勒計(jì)程儀海底回波信號(hào),用來檢驗(yàn)多普勒計(jì)程儀的工作狀態(tài)。
啟動(dòng)多普勒計(jì)程儀,模擬器接收多普勒計(jì)程儀發(fā)射的信號(hào),然后以一定的采樣頻率對(duì)波形進(jìn)行A/D采集,將采集到的數(shù)據(jù)存儲(chǔ)。在經(jīng)過一定的延時(shí)后,以不同于采樣頻率的回放頻率對(duì)存儲(chǔ)的數(shù)據(jù)進(jìn)行回放,經(jīng)過D/A轉(zhuǎn)換后輸出相對(duì)于發(fā)射信號(hào)具有一定延時(shí)、頻移
的回波信號(hào)。海底回波模擬器信號(hào)處理系統(tǒng)如圖1所示。多普勒計(jì)程儀發(fā)射信號(hào)、接收回波模擬信號(hào)后傳給信號(hào)處理機(jī)解算出對(duì)應(yīng)的參數(shù),和設(shè)定值比較,檢驗(yàn)多普勒計(jì)程儀的工作狀態(tài)是否正常。模擬器FPGA板模擬海底回波信號(hào)。FPGA通過RS232接口和上位機(jī)的顯示控制軟件通信,顯示控制軟件接收A/D采集的數(shù)據(jù),檢驗(yàn)多普勒計(jì)程儀發(fā)射信號(hào)的頻率、幅值等參數(shù),并發(fā)送參數(shù)(Vχ,Vy,h)。
圖1 模擬器信號(hào)處理系統(tǒng)
與模擬器有關(guān)的主要技術(shù)指標(biāo):
(1)深度范圍:2 m~500 m。
(2)速度范圍:0 m/s~25 m/s。
模擬器主要實(shí)現(xiàn)不同速度和深度的海底回波模擬,這是在多普勒速度理論[8]的基礎(chǔ)上實(shí)現(xiàn)的,多普勒測(cè)速公式[9-10]如下:
其中,f0為發(fā)射信號(hào)的頻率;fr為回波信號(hào)的頻率;fd為頻率的偏移量;V為船舶行駛速度;φ為波束與船舶中垂線的夾角;C為海水中的聲速。
在信號(hào)發(fā)射后,從不同海底深度返回的信號(hào)的時(shí)間是不同的,海底深度 h和回波時(shí)間延遲T的關(guān)系式[11]如下:
多普勒計(jì)程儀發(fā)射的波束形成后的四波束結(jié)構(gòu)配置圖如圖2所示。
圖2 多普勒計(jì)程儀四波束結(jié)構(gòu)配置
這種四波束配置的方式稱為詹納斯配置,它可以消除船上下左右晃動(dòng)產(chǎn)生的誤差[12]。海洋是一個(gè)不斷變化的環(huán)境,溫度和深度的變化等因素都會(huì)使海水中的聲速發(fā)生變化,多普勒計(jì)程儀中使用的相控陣可以有效地克服這些不良影響。待檢測(cè)的多普勒計(jì)程儀的換能器在X和Y方向各有4個(gè)陣元,在本文設(shè)計(jì)中,模擬的是四波束方向的回波,每個(gè)方向有4路回波分別對(duì)應(yīng)4個(gè)陣元。設(shè)計(jì)的海底回波信號(hào)模擬器可以模擬不同環(huán)境下的回波。
模擬器主要實(shí)現(xiàn)不同速度和深度的海底回波模擬,因此,對(duì)海底回波的模擬主要是速度模擬和深度模擬。應(yīng)答信號(hào)中多普勒頻移通過改變D/A的輸出頻率fh來實(shí)現(xiàn),則多普勒頻移與回放頻率的關(guān)系如下:
不同方向回波的頻率是不同的,根據(jù)式(1)可計(jì)算4個(gè)方向回波的頻率,由下式表示:
其中,fs為多普勒計(jì)程儀發(fā)射信號(hào)的頻率,為1.2 MHz;fh+χ,fh-χ為船舶行駛方向?qū)?yīng)的回波頻率;fh+y,fh-y為船舶垂直于行駛方向?qū)?yīng)的回波頻率;φ為波束與船舶中垂線的夾角,是20.7°;C為海水中的聲速,是1 500 m/s;Vχ為船舶行駛方向的速度;Vy為船舶垂直于行駛方向的速度。
在信號(hào)發(fā)射后,從不同海底深度返回到換能器的時(shí)間是不同的,深度的模擬對(duì)應(yīng)著回波信號(hào)相對(duì)于發(fā)射信號(hào)的延時(shí)時(shí)間。假定多普勒計(jì)程儀發(fā)射信號(hào)起始時(shí)刻為t0,4個(gè)方向波束的模擬信號(hào)應(yīng)答起始時(shí)刻分別為t1,t2,t3,t4,平均值等于設(shè)定的深度求得
的延時(shí)時(shí)間。應(yīng)答信號(hào)時(shí)間延遲T與海底深度h的關(guān)系滿足下式:
4.1 模擬器硬件結(jié)構(gòu)
系統(tǒng)的硬件結(jié)構(gòu)如圖3所示。
圖3 模擬器硬件結(jié)構(gòu)
FPGA選用Xilinx公司的Spartan-6系列的XC6SLX9芯片,內(nèi)部集成有豐富的可配置邏輯塊、大量的DSP單元、塊狀RAM等資源。1路A/D采集采用ADS7883芯片,12位分辨率,串行輸出。1路發(fā)射信號(hào)觸發(fā)通道、8路D/A輸出通道、RS232串口通信設(shè)計(jì)中使用了8片DAC7311芯片,DAC7311是12位分辨率、低功率、串行輸出的。其中,A/D采集和D/A轉(zhuǎn)換的時(shí)鐘由FPGA的直接數(shù)字頻率合成(Direct Digital Synthesis,DDS)IP核產(chǎn)生。
4.2 模擬器
回波模擬器設(shè)計(jì)為PCI板卡形式,可以插在工控機(jī)PCI卡槽里面,其實(shí)物圖如圖4所示,供電電壓由板卡上金手指接口供電。DSUB9接口用于RS232通信。DSUB25接口包含了1路A/D采樣通道,1路發(fā)射信號(hào)觸發(fā)通道,8路模擬回波信號(hào)輸出通道。
圖4 回波模擬器
4.3 FPGA設(shè)計(jì)
FPGA設(shè)計(jì)仿真環(huán)境為X ilinx的ISE13.4,采用模塊化設(shè)計(jì)程序,所有模塊用Verilog編程。FPGA的邏輯設(shè)計(jì)如圖5所示,F(xiàn)PGA為控制核心,它控制A/D采集、D/A轉(zhuǎn)換輸出、實(shí)現(xiàn)頻移、延時(shí)操作、產(chǎn)生模擬回波信號(hào)和上位機(jī)通信等任務(wù)。
圖5 FPGA內(nèi)部框架
4.3.1 A/D控制模塊
在觸發(fā)電路產(chǎn)生的觸發(fā)信號(hào)為高電平時(shí),控制AD芯片工作,以1.2 MHz的采樣頻率采集多普勒計(jì)程儀發(fā)射的150 kHz的模擬信號(hào),將采集到的
12 bit數(shù)字信號(hào)存在雙口RAM里,以待后續(xù)處理。觸發(fā)信號(hào)為低電平時(shí),停止采集。
4.3.2 串口控制模塊
FPGA通過RS232接口和上位機(jī)的顯示控制軟件通信。串口的發(fā)送端將存在RAM里的波形數(shù)據(jù)傳給上位機(jī)的顯示控制軟件以便檢測(cè)發(fā)射信號(hào)的頻率、幅值等參數(shù)并顯示波形信號(hào),判斷多普勒計(jì)程儀發(fā)射機(jī)工作是否正常。
接收端接收上位機(jī)發(fā)送的參數(shù)(Vχ,Vy,h),并將參數(shù)緩存在先入先出(First Input First Output,F(xiàn)IFO)隊(duì)列。為了確定接收的參數(shù)是正確的,在位機(jī)發(fā)送參數(shù)時(shí),在每個(gè)參數(shù)前都加了判斷數(shù)據(jù)。首先從FIFO中讀取4個(gè)8 bit的數(shù)據(jù),每2個(gè)數(shù)據(jù)完成8 bit~16 bit的轉(zhuǎn)化,合成16 bit的十六進(jìn)制數(shù)據(jù),第一個(gè)16 bit數(shù)據(jù)為判斷數(shù)據(jù),如果為 ff00,那么第2個(gè)16 bit數(shù)據(jù)就是Vχ。按照上述方法,再讀取2次,每次讀4個(gè)數(shù)據(jù),如果判斷數(shù)據(jù)為ff01,那么接收的為Vy;如果判斷數(shù)據(jù)為ff02,那么接收的為h。判斷數(shù)據(jù)不正確,上位機(jī)重新發(fā)送參數(shù),直到接收的參數(shù)正確為止。
4.3.3 回放控制模塊
模擬的回波信號(hào)的多普勒頻移通過改變D/A轉(zhuǎn)換的輸出頻率來實(shí)現(xiàn),根據(jù)速度參數(shù)Vχ和Vy,由式(4)計(jì)算模擬信號(hào)的頻移,求取4個(gè)波束方向的回波頻率?;夭l率由DDS IP核產(chǎn)生,所以,根據(jù)回波頻率計(jì)算對(duì)應(yīng)的D/A轉(zhuǎn)換時(shí)鐘,求出頻率控制字,傳遞給DDS求出D/A轉(zhuǎn)換時(shí)鐘。
信號(hào)應(yīng)答采用循環(huán)方式分時(shí)應(yīng)答,首先應(yīng)答X方向的信號(hào),然后依次為Y方向、-X方向、-Y方向。每個(gè)方向之間的應(yīng)答信號(hào)間隔tm為0.1 m s,回波脈沖寬度為 tP?;夭ㄐ盘?hào)的延時(shí)時(shí)序如圖 6所示。根據(jù)深度參數(shù) h,由式(5)計(jì)算4個(gè)方向回波信號(hào)的延時(shí),如式(6)所示。
圖6 四波束應(yīng)答時(shí)序示意圖
4.3.4 A/D和D/A時(shí)鐘模塊
2個(gè)DDS IP核分別產(chǎn)生A/D采集和D/A轉(zhuǎn)換的時(shí)鐘。完成一次A/D采集用了20個(gè)時(shí)鐘周期,因此,1.2 MHz的采樣頻率對(duì)應(yīng)的A/D采集時(shí)鐘為24 MHz,完成一次D/A轉(zhuǎn)換也用了20個(gè)時(shí)鐘周期。根據(jù)回放控制模塊求得的頻率控制字,傳遞給DDS求出D/A轉(zhuǎn)換的時(shí)鐘頻率。
4.3.5 D/A控制模塊
控制D/A芯片輸出模擬海底回波的信號(hào),回波信號(hào)由存儲(chǔ)在雙口RAM里的波形數(shù)據(jù)作為來源。多普勒計(jì)程儀的換能器在X方向和Y方向分別有X1,X2,X3,X4和Y1,Y2,Y3,Y4共8個(gè)子陣,所以,要輸出8路模擬信號(hào)。多普勒計(jì)程儀的接收器接收的波形因?yàn)槁烦滩顣?huì)產(chǎn)生相位差,所以,模擬的回波信號(hào)之間要有相位差。對(duì)于 X方向、Y方向的4個(gè)通道的信號(hào)相位延遲都為(0°,90°,180°,270°)。-X,-Y方向的4個(gè)通道的信號(hào)相位延遲為(0°,-90°,-180°,-270°)。相位的延遲通過延時(shí)讀取存儲(chǔ)的數(shù)字信號(hào)進(jìn)行D/A轉(zhuǎn)換的方法實(shí)現(xiàn)。因?yàn)椴蓸勇适前l(fā)射信號(hào)頻率的8倍,所以采集到的波形數(shù)據(jù)一個(gè)周期有8個(gè)。則 X,Y方向依次從χ(n),χ(n-2),χ(n-4),χ(n-6)開始讀取波形數(shù)據(jù)。則 -X,-Y方向依次從 χ(n-6),χ(n-4),χ(n-2),χ(n)開始讀取波形數(shù)據(jù)。分別從t1,t2,t3,t4時(shí)刻控制D/A轉(zhuǎn)換輸出4個(gè)方向的波束。前4路 D/A通道輸出的是 X方向的波束,后4路輸出的是Y方向的波束。
ISE13.4工具對(duì)設(shè)計(jì)模塊進(jìn)行綜合、映射、布局和布線后,將生成的bit文件下載XC6SLX9-2FTG256中,F(xiàn)PGA芯片的資源利用情況如表1所示。
表1 XC6SLX9-2FTG 256的資源使用情況
在表1中,Slice用于實(shí)現(xiàn)時(shí)序邏輯,求應(yīng)答時(shí)間用了一個(gè)DSP48A1做乘法器,求2個(gè)DDS的頻率控制字用了2個(gè)DSP48A1做乘法器。RAMB8BWER的大小為9 kb,采用一個(gè)配置為FIFO,用來緩存上位機(jī)發(fā)下來的參數(shù)。RAMB16BWER的大小為18 kb,采用27個(gè)組成雙口RAM來緩存A/D采集的數(shù)據(jù)。
為了驗(yàn)證海底回波模擬器的性能,將模擬器和多普勒計(jì)程儀進(jìn)行了聯(lián)機(jī)調(diào)試,搭建了如圖7所示的調(diào)試系統(tǒng)。
圖7 聯(lián)機(jī)調(diào)試系統(tǒng)
本文設(shè)計(jì)的回波模擬器插在工控機(jī)1的PCI插槽上。工控機(jī)1的顯示控制軟件接收A/D采集的數(shù)據(jù),分析多普勒計(jì)程儀發(fā)射信號(hào)的頻率、幅值并顯示信號(hào)波形,并且發(fā)射指令參數(shù)(Vχ,Vy,h)。多普勒計(jì)程儀接收返回的海底回波模擬信號(hào),經(jīng)過處理計(jì)算得到速度和深度值,將得到的值通過串口傳到工控機(jī)2的顯示控制軟件以便比較測(cè)量值和設(shè)定值。對(duì)模擬器進(jìn)行了多次測(cè)試,深度和速度分別取了5組測(cè)量值,和設(shè)定值的比較如表2和表3所示。
表2 深度測(cè)量值
表3 速度測(cè)量值
在速度誤差小于0.3%,深度誤差小于0.3%,結(jié)果有一定的誤差,這是由于公式計(jì)算過程中小數(shù)部分的舍去、多普勒計(jì)程儀接收電路的精度和噪聲的影響等原因,但數(shù)據(jù)均在誤差范圍之內(nèi),大量的測(cè)試證明了模擬方法的有效性,同時(shí)驗(yàn)證了模擬系統(tǒng)的精度。
本文分析多普勒計(jì)程儀的海底回波信號(hào)模擬器原理并推導(dǎo)模擬公式,同時(shí)介紹模擬器的結(jié)構(gòu)和工作流程,進(jìn)行陸上模擬測(cè)試并分析了測(cè)試數(shù)據(jù),證明了海底回波模擬器的有效性和準(zhǔn)確性。下一步的研究方向?yàn)楦倪M(jìn)程序中算法的實(shí)現(xiàn)方法,從而進(jìn)一步提高測(cè)量精度。
[1] 張福斌,徐德民,嚴(yán)衛(wèi)生,等.水下航行器導(dǎo)航與控制一體化系統(tǒng)的半實(shí)物仿真實(shí)驗(yàn)設(shè)計(jì)[J].系統(tǒng)仿真學(xué)報(bào),2006,18(3):604-606.
[2] Morgado M,Batista P,Oliveira P.Position USBL/DVL Sensor-based Navigation Filter in the Presence of Unknown Ocean Currents[J].Automatic,2011,47(12):2604-2614.
[3] Snyder J.Doppler Velocity Log Navigationfor Observation-class ROVs[J].Sea Technology,2010,51(12):27-30.
[4] Yuan Bingcheng,Chen Xi,Huang Xiongfei.Solution to Hardware-in-loop Simulation Test System for Phased Array Doppler Sonar[C]//Proceedings of the 7th International Conference on System Simulation and Scientific Computing.Washington D.C.,USA:IEEE Press,2008:1549-1552.
[5] 李金明,趙俊渭,王明洲,等.一種高精度水下目標(biāo)回波模擬技術(shù)的研究[J].儀器儀表學(xué)報(bào),2006,27(6):560-563.
[6] 石 慧.相控陣多普勒計(jì)程儀半實(shí)物仿真系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2012.
[7] 付志霞.多普勒計(jì)程儀海底回波信號(hào)模擬器設(shè)計(jì)[D].大連:大連海事大學(xué),2012.
[8] 謝宜生,沈國江,吳琦燦.基于MSP430的車載雷達(dá)測(cè)速測(cè)距系統(tǒng)[J].計(jì)算機(jī)工程,2011,37(18):237-239.
[9] 齊本勝,范新南,王 森,等.寬帶聲學(xué)多普勒測(cè)流儀設(shè)計(jì)[J].儀器儀表學(xué)報(bào),2003,24(4):233-234.
[10] Brumley B H,Cabrera R G,Deines K L.Performance of a Broad-band Acoustic Doppler Current Profiler[J]. Journal of Oceanic Engineering,1991,16(4):402-407.
[11] 黃雄飛,周徐昌,苑秉成.多普勒計(jì)程儀作用距離估計(jì)[J].應(yīng)用聲學(xué),2009,28(5):362-366.
[12] 田 坦.水下定位與導(dǎo)航技術(shù)[M].北京:國防工業(yè)出版社,2007.
編輯 劉 冰
FPGA-based Seabed Echo Signal Simulator
JIANG Lei1,CHEN Peng1,JIN Feng1,HAN Libo2
(1.College of Information Engineering,Zhejiang University of Technology,Hangzhou 310023,China;2.Hangzhou Applied Acoustics Research Institute,Hangzhou 310012,China)
Doppler log test has the disadvantage of long cycle and high cost which is given priority to sea and pool testing.According to the principle of Doppler log measuring,the principle of depth and speed simulation is studied.This paper designs a new signal simulator based on Field Programmable Gate Array(FPGA),it can simulate the seabed echo signal.The seabed echo signal is received by the Doppler log.The values of depth and speed are given by calculating.By comparing the set values,the measurement is accomplished.Experimental result indicates that the measuring error of this simulator is small.
Doppler log;simulator;Field Programmable Gate Array(FPGA);Verilog language;echo signal
蔣 磊,陳 朋,金 峰,等.基于FPGA的海底回波信號(hào)模擬器[J].計(jì)算機(jī)工程,2015,41(10):66-70.
英文引用格式:Jiang Lei,Chen Peng,Jin Feng,et al.FPGA-based Seabed Echo Signal Simulator[J].Computer Engineering,2015,41(10):66-70.
1000-3428(2015)10-0066-05
A
TP391
國家自然科學(xué)基金資助項(xiàng)目(61303139)。
蔣 磊(1988-),男,碩士研究生,主研方向:嵌入式系統(tǒng);陳 朋,副教授、博士;金 峰,碩士研究生;韓禮波,工程師、碩士。
2014-09-30
2014-11-17E-mail:jianglei.074@163.com