张燕强
(昆明船舶设备研究试验中心,云南昆明 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 路磁异常信号的同步采集,可为后续金属磁性目标在空间中的定位提供可靠的数据。