張燕強
(昆明船舶設備研究試驗中心,云南昆明 650051)
地磁場是一種矢量場,在一定地域范圍內,其強度受時間和空間的影響較小,在正常情況下,地磁場的磁場強度在50 000 nT 左右。如果遇到礦山,有金屬掩埋物的區域等,則會引發附近的地磁場強度發生異常,通過某些儀器和設備可以將這種磁場的異常波動數據采集下來進行分析,得出有價值的信息,這種技術稱為磁法探測技術。該技術已被應用于很多領域,如地下管道探測、海底掩埋物打撈、未爆彈藥探測以及航空反潛[1]。
為了對金屬掩埋物(如航空未爆彈、地雷等)進行探測和定位,需采用磁傳感器陣列對目標進行探測,采集目標引發的磁異常信息。磁場是矢量場,每個磁傳感器有3 個軸的輸出信號,根據相關定位算法的要求,需對這些傳感器的輸出信號進行同步采集[2-3]。
基于此,該文設計了一種基于現場可編程邏輯門陣列(Field Programmable Gate Array,FPGA)的多路磁異常數據同步采集系統,可同步采集24 路磁異常信號。
當前磁探測領域大多數采用的是由4 個磁通門傳感器構成的平面十字形陣列結構,該結構只能計算一個平面上的磁場梯度變化。而該文采用了一種新型的立方體結構,可采集更多的磁性目標信息,可計算6 個面的磁場梯度變化,從而為金屬磁性目標的定位提供更豐富的數據,提高了定位精度。圖1所示的是由8 個三軸磁通門傳感器組成的立方體陣列,其基線長度為a,磁通門傳感器布置在立方體的8 個頂點,該陣列共有24 路輸出信號。為了實現對金屬磁性目標的探測和定位,根據目標定位算法的要求,需要將這24 路的輸出信號進行同步采集。由于ARM 和DSP 系列的主控芯片從原理上無法保證數據的同步采集,而基于現場可編程邏輯門陣列的多路數據采集方案,由于FPGA 的并行執行特性,可以從原理上保證多路數據的同步性,因此,該文采用Altera 公司的EP4CE10F17I7N 芯片作為主控芯片,發揮其并行運算的優勢,進行信號采集系統的設計,信號采集系統的總體功能框如圖2 所示[4-7]。

圖1 傳感器陣列示意圖

圖2 系統總體結構
磁通門傳感器輸出的模擬信號一般不能直接輸入A/D 轉換芯片,首先,需進行信號放大和調理,使之與A/D 轉換芯片的量程相匹配,然后,經過A/D 轉換后的數字信號進入FPGA 進行預處理,并在存儲器中進行緩存,最后,發送給上位機進行運算,解算被測目標在空間中的位置、磁矩等信息[8-10]。
文中所采用的測量地磁場強度的磁通門傳感器可測量的地磁場強度的范圍為-100~100 μT,輸出模擬信號的范圍為-10~10 V,功耗為0.45 W,噪聲為0.1 nT,帶寬為30 Hz。根據磁通門傳感器可測量的磁場強度范圍和其輸出信號的范圍,可得出磁通門傳感器的靈敏度為100 μT/nT。
為了實現對磁通門傳感器信號進行模數轉換,并保證一定的測量精度,需選擇合適的A/D 轉換芯片[11-12]。根據磁通門傳感器的技術參數,可得到A/D轉換芯片的測量范圍為±10 V,靜態噪聲應小于10 μT,根據式(1)可得到其信噪比約為126 dB。
為了保證系統的測量精度,根據A/D 芯片的技術手冊可知,其有效位數(Effective Number of Bits,ENOB)應不小于20.6。
在A/D 芯片實際工作過程中,其有效位數ENOB并不是一個固定值,隨著系統采樣頻率和增益的增加,A/D 轉換芯片的ENOB 會有所降低,為了留有一定余量和保證精度,該文采用32 位分辨率的A/D 轉換芯片ADS1262,根據技術手冊,ADS1262 在采樣頻率為1 200 Hz的情況下,其有效位數為22位。由于地磁信號是一個頻率在0.2~5 Hz 的低頻信號,1 200 Hz的采樣頻率完全可以滿足需求[13-15]。
傳感器陣列共有8 個三軸磁通門傳感器,多達24 路的輸出信號需要采集,考慮到后期維護的方便以及系統工作的可靠性,電路結構設計為可插拔式的采集結構,每片采集卡采集一個傳感器的三路輸出信號,共設計8 片采集卡和一塊主控板,磁通門傳感器輸出信號調理電路如圖3 所示,經過調理的信號輸入A/D 轉換器進行轉換[16]。

圖3 信號調理電路
經計算,在1 200 Hz 的采樣頻率下,系統每秒鐘采集的數據量為900 kb,該系統的數據傳輸采用串口WiFi,由于串口傳輸是一種異步傳輸,當傳輸速率設置過高時,容易出現誤碼或者丟幀的情況,而采用常用的460 800 b/s 的波特率時,每秒鐘最多只能傳輸450 kb 的數據量,無法做到實時傳輸,因此,需先將采集到的數據進行緩存,該文采用型號為MT48LC16M16A2P 的SDRAM 作為存儲介質,因其具有可以高速并行讀寫的特點。
數據采集系統的軟件部分主要包括與上位機的通信程序、A/D 采集程序以及SDRAM 的讀寫程序。其中,與上位機的通信采用常規的串口通信,A/D 采集程序根據ADS1262 的技術手冊要求,采用SPI 通信協議來實現,SDRAM 讀寫程序采用狀態機來控制數據流的讀寫。以上程序均采用Verilog HDL 語言在QuartusII13.1 平臺上進行開發,采集系統軟件結構如圖4 所示。為了降低系統中采集系統的功耗,在軟件層面設置了休眠模式,上電后,系統處于休眠模式,在接收到上位機發出的喚醒指令時,采集系統才開始采集磁場數據,同時將采集到的數據存儲到SDRAM 中,待采集完成后發送到上位機進行處理。

圖4 采集系統工作流程
由于該文所采用的SDRAM 在100 MHz 的時鐘域之下工作,而主程序工作在50 MHz 的時鐘域之下,因此,將系統采集到的磁場數據從50 MHz 的時鐘域寫入到工作在100 MHz 的時鐘域下的SDRAM中,并從SDRAM 讀出,存在數據跨時鐘域傳輸的問題。
跨時鐘域的數據傳輸問題可以采用雙口RAM來解決。雙口RAM 有兩套獨立的時鐘、數據輸入端口、寫使能端口和讀使能端口,數據從50 MHz 的時鐘域寫入100 MHz 的時鐘域時,100 MHz 的時鐘域端口可以每隔兩個時鐘周期讀取一次存入到雙口RAM 中的數據;而將數據從100 MHz 時鐘域中讀出到50 MHz 時鐘域時,可以設置100 MHz 時鐘域中的數據每隔兩個周期向雙口RAM 中寫入一個數據,50 MHz 時鐘域每隔一個周期從雙口RAM 中讀取一個數據。通過以上方式,即可解決數據的跨時鐘域的傳輸問題。
數據采集系統采用串口型WiFi 與上位機進行通信,只需按照串口通信協議編寫好串口通信程序即可,該系統的串口通信設置了1 位停止位,無奇偶校驗位,設置波特率460 800 b/s,在50 MHz 的主程序工作時鐘下,每個比特的數據傳輸時間約為109 個時鐘周期。
為了測試磁通門傳感器與信號采集系統的功能是否正常,將8 個磁通門傳感器分別安裝于如圖1 所示的磁場梯度張量儀結構上,進行地磁場信號的采集,由于該文采用的磁通門傳感器是三軸的,采集系統總共采集到24 路磁場信號,取其中一個傳感器的信號進行分析,1 號磁通門傳感器所采集到的地磁信號的X軸分量如圖5 所示。

圖5 X軸地磁分量
對X軸的信號進行快速傅里葉分析,所得結果如圖6 所示,可以觀察到,所采集到的磁場信號中,除了直流分量外,還包含很多基頻和倍頻噪聲分量,其中基頻噪聲為50 Hz,這是由于受到了市電干擾的影響。

圖6 X軸信號頻譜
由于地磁信號是一個頻率在0.2~5 Hz 之間的信號,磁傳感器的帶寬為0~30 Hz,因此,需對上述的噪聲信號進行濾除,又根據地磁總場的計算公式如式(2)所示,可得采集系統所采集到的地磁總場信號如圖7 所示,可以觀察到濾波后8 個磁通門傳感器所采集到的地磁信號與理論值接近50 000 nT,采集系統工作正常。

圖7 地磁總場信號
該文所設計的多路磁異常數據同步采集系統采集到的數據將直接用于金屬磁性目標的定位算中,因此,各路磁場數據的同步性直接影響到定位誤差,對采集系統的同步性有較高的要求,有必要對采集系統的同步性作測試。
利用QuartusII13.1 軟件的SignalTap 調試工具抓取采集系統各通道開始采集地磁信號的實時波形,觀察到當采集命令發出后,各個通道開始的時間有一定差異,各路通道的延遲時間統計如圖8 所示。

圖8 各采集通道延遲時間
由圖8 可知,系統各個通道開始采集信號的時間最大差距為110 ns,對應的頻率為9.09 MHz,而這對于低頻地磁信號采集來說影響很小,因此,可認為系統是同步采集的。
在測試完信號采集系統的基本功能后,將8 個磁通門傳感器按照圖1 所示的方案安裝在磁場梯度張量儀上,并進行編號,如圖9 所示。

圖9 磁通門傳感器布置方案
將金屬磁性目標在距離磁場梯度張量儀中心2 m 的位置進行移動,數據采集系統所采集的磁場總場波動情況如圖10 所示。

圖10 磁場波動情況
由圖10 可知,金屬磁性目標在距離為2 m 的位置進行揮動時,引起了局部區域的磁異常,且磁異常的數據可被該文設計的磁異常數據采集系統正常采集和記錄,為后續的金屬磁性目標的定位算法提供了數據基礎,因此,該文設計達到了預期的結果。
該文根據磁通門傳感器的工作原理,設計了一套多路磁異常數據同步采集系統,介紹了硬件和軟件兩個層面對采集系統的設計過程,并對采集系統進行了測試和試驗,試驗結果表明,系統同步采集性能良好,能完成對24 路磁異常信號的同步采集,可為后續金屬磁性目標在空間中的定位提供可靠的數據。