使用互相关的飞行时间估计

时间:2017-02-13 21:55:09

标签: matlab signal-processing waveform cross-correlation

我正在做一个通过透射法找到材料相速的实验。我有两个不同距离的接收信号作为csv文件。你可以看到下图;

received_1 receivedd_2

我想使用互相关方法来寻找飞行时间。我使用matlab代码进行交叉相关,如下所示:

 clc
  clear all

 % received signal 1
   data = read_tektronix_csv('TEK0058.CSV');
   plot(data.time, data.values)
   s1=data.values;

%received signal 2
   data = read_tektronix_csv('TEK0059.CSV');
   plot(data.time, data.values)
   s2=data.values;

   [acor,lag] = xcorr(s1,s2);
   Fs=1E9;

[~,I] = max(abs(acor));
lagDiff = lag(I)
timeDiff = lagDiff/Fs

figure
plot(lag,acor)

那个matlab代码给了我3.17E-7秒作为飞行时间.figtt的真实时间必须是4.881E-5。

如下图所示,从两个接收信号中获得了互相关。

enter image description here

代码算法有问题吗?

谢谢。

0 个答案:

没有答案