Calculating time of flight from a series of acoustic waveforms
5 views (last 30 days)
I am trying to calculate the time of flight (in milliseconds) from a set of acoustic signals. The data I have looks like this:
voltage 500x8000 double
time 500x8000 double
I've tried playing around with the xcorr function but I'm not sure of how I can actually measure the time of flight. I notice the xcorr function produces a 2M-1 long vector for each correlation, how can I use these values to extract the position of the peak in relation to the time vector? Many thanks.
Pranav Murali on 19 Mar 2020
You are trying to calculate the time of flight from the dataset you have. The transmitted and received signal (Voltage in your case) are correlated and the time at which the correlation reaches maximum is the Time of Flight.
The xcorr function can be used to find the correlation between the transmitted and received signals. Then determine the maximum value(s) and the corresponding index in the matrix. You can then determine the time of flight by subtracting the values stored in the corresponding index of the time matrix and the time at start of transmission.