APP下载

基于相位差法海水声速测量系统设计*

2018-09-11吴黎杰蒋志迪张晴月

传感器与微系统 2018年9期
关键词:声速点数信噪比

吴黎杰, 蒋志迪, 张晴月

(1.宁波大学 电路与系统研究所,浙江 宁波 315211;2.宁波大学科学技术学院 信息工程学院,浙江 宁波315211)

0 引 言

对于不同的海域环境,测探仪、浅剖仪等仪器在工作时需要实时准确的数据校正,高精度的海水声速是仪器校正的重要数据,如何提高海水声速测量精度是关键性问题。测量范围和精度是海水测量仪评估的重要指标。声速的直接测量主要是对声波在待测液传播时间的测量,通过距离公式计算出声速[1,2]。

本文设计了一种基于相位差法的海水声速测量系统,利用时间与相位差的线性关系,将对时间的测量转换为对相位差的测量,通过对相位差的高精度测量来提高海水声速测量的精度。系统基于一路单频正弦信号由超声波换能器进行信号功率的放大,传播介质为海水,利用快速傅里叶变换(fast Fourier transformation,FFT)及相位估计来测量换能器接收端接收的信号与原始信号产生的相位差值,从而提高海水声速的测量精度,且系统实现了海水声速实时测量,为水声探测仪器的实时校验提供了便利。

1 系统测量原理

经FFT计算得待测信号相位差Δφ,以确定声速v

(1)

式中λ为同频正弦信号在海水中的波长,f为同频正弦信号的频率,c为海水声速。

图1 测量装置

相位差法测量声速在提高声速测量精度方面有较大优势[3]。在声速精度Δv≤0.02 m/s,L=100 mm,海水声速c=1 500 m/s的条件下,采用相位差法测量声速所需要的相位差精度Δφ=|-2πfL/v2|Δv为

当同频信号频率为1 MHz,计算得到需要的相位差精度Δφ小于0.07 rad。对比看出,由于相位差法计算精度的数量级远低于同等条件下采用脉冲回鸣法[4,5]脉冲时间测量精度(Δt<1.2 ns)的数量级,更易于硬件实现,达到提高声速测量精度的目的。同时,在测量过程中,由于采用的是同一信号源,通过差分数据处理的方式可以消除环境对系统硬件影响而导致的测量误差。

2 相位差测量算法与分析

假设离散后的两路同频信号为

x1(n)=Asin(ωn+φ1)

(2)

x2(n)=Bsin(ωn+φ2),n=1,2,…,N-1

(3)

1)根据离散信号的相关法推导可知:在低信噪比的情况下,相关法测量相位差偏差过大,尤其当噪声与信号有一定的相关性时,相关法不能够有效抑制噪声,如果信号中有谐波成份需要对求得的相位差进一步进行修正,测量精度会因此受到影响。

2)基于FFT进行相位差测量。对离散信号x1(n)和x2(n)进行快FFT,变换后的最大谱线点m=N·fc/fs+1,N为FFT采样点数,fc为信号频率,fs为采样频率。

可以得到两路信号的相位差Δφ表示为

Δφ=arctan(φ1-φ2)=

(4)

(5)

可知,求解相位差时,不需要对2个信号相位值分别求解,直接利用复数共轭相乘就能得到相位差Δφ。

由文献[6]进一步推出系统设计对相位差测量的均方根误差为

(6)

式中A为信号幅度,N为FFT采样点数,SNR为信噪比,b为AD的位数。

在SNR=25 dB条件下,用FFT计算相位差误差与采样点数、AD位数之间的关系如图2所示。

图2 相位差误差与AD位数和采样点数的关系

在AD芯片位数b=8条件下,用FFT计算相位差误差与采样点数、信噪比之间的关系如图3所示。

图3 相位误差与信噪比和采样点数的关系

基于FFT相位差测量能够有效抑制噪声干扰[6],在低信噪比的情况下同样能够得到高精度的相位差测量,并通过对基波的提取而有效抑制谐波成份。系统通过增加采样点数,提高A/D转换位数,增大待测信号的信噪比,能够进一步提高相位差的测量精度。

3 系统电路设计

系统主要由现场可编程门阵列(field programmable gate array,FPGA ) A/D转换电路、微控制器C8051F340单片机组成。FPGA作为海水声速测量系统的核心,配置AD芯片的工作时序[7],对AD采集的数据进行实时存储。A/D转换电路实时采集两路待测信号,保证两路待测信号的同时采集,减少信号采集时产生的相位差误差。C8051F340读取FPGA存储的数据,存到片内XRAM中,通过FFT算法计算得到两路信号的相位差,由相应的转换计算得到海水声速。系统总体结构框图如图4所示。

信号数据的采集主要是由FPGA完成,FPGA设计一个DPRAM存储单元实现对采集数据的存储,能够避免采集时间周期短,采样数据多占用内存资源过大的问题[8]。DPRAM在数据存储时,需进行地址分配,与单片机访问地址相匹配,方便单片机数据搬运时的操作,当地址低于4 kB时访问单片机片内XRAM,当地址高于4 kB时访问片外XRAM。用Verilog语言设计AD控制模块、数据处理模块、地址转换模块都可以在FPGA中进行在线调试。单片机通过EMIF接口进行数据读取[9],中间只需要地址转换,数据分离,就能够分别得到2路采样的数字信号。信号采集与处理电路框图如图5所示。

图4 系统总体框图

图5 信号采集与处理电路框图

4 系统软件设计

4.1 FPGA工作流程设计

当检测到由单片机提供的工作信号时,FPGA从休眠状态跳转为工作状态。FPGA控制AD模拟转换电路工作,将AD芯片采集的数据及时存储,完成1次数据存储时,FPGA送给单片机数据采集完毕信号。当再次检测到工作信号时,FPGA重新进行数据采集,实时得到多组数据,使测试结果更加精确。FPGA工作程序流程如图6所示。

图6 FPGA工作程序流程

4.2 单片机工作流程设计

单片机主要对搬运的数据进行计算处理,端口初始化后,若收到采集完毕信号,关闭FPGA工作信号将片内存储的数据通过FFT算法得到2路信号的相位差,并将求得的相位差值进行相位修正,修正范围为[0,2π],然后由海水声速测量原理计算海水声速的值,通过液晶LCD12864进行显示。其中端口初始化包括对内部晶振、液晶显示器(liquid crystal display,LCD)和FFT初始化。配置EMIF主要包括外部存储器接口配置,对片内XRAM地址进行分配和对EMIF时序配置。

5 测试分析

通过信号发生器产生2路具有相位差的正弦信号来模拟信号在海水介质中的传播,利用Chipscope观察FPGA内部采集的数据,设置200个数据采集点,通过在线调试查看采集波形如图7所示。

图7 1 MHz正弦信号采集

通过MATLAB进行仿真计算,信号频率设置为1 MHz,L设置为0.1 m和0.2 m,计算出理论相位差值和理论海水声速值。根据理论值,信号发生器发射e路相位差Δφ分别为0.32 rad和0.63 rad的信号,利用设计的系统进行测试比较,分别得到5组数据,测试结果如表1所示。

表1 测试结果

由测试数据可以看出,通过系统测量得到相位差的测量精确度为0.01 rad,声速的误差优于±0.02 m/s,达到标准声速计量性能一级指标要求,实验数据证明了系统方案的可行性,满足高精度海水声速测量的目的。

6 结 论

本文实现了高精度海水声速测量系统的设计。系统优势是利用单片机EMIF接口与FPGA设计的DPRAM进行通信,实现海水声速的实时、快速、高精度测量,并通过数据测试验证了系统测量的可靠性,从而能够满足对大多数水声探测仪的实时校验。

猜你喜欢

声速点数信噪比
两种64排GE CT冠脉成像信噪比与剂量对比分析研究
基于深度学习的无人机数据链信噪比估计算法
基于CECS 02标准中声速修正系数的研究
看不到的总点数
低信噪比下基于Hough变换的前视阵列SAR稀疏三维成像
声速是如何测定的
画点数
多核并行的大点数FFT、IFFT设计
跨声速风洞全模颤振试验技术
机翼跨声速抖振研究进展