vortexntnu / vortex-acoustics

Analyzes signals from the A1 hydrophones. Runs on Nucleo-F767ZI
MIT License
4 stars 3 forks source link

Estimating distance using intensity #22

Closed oyssolbo closed 3 years ago

oyssolbo commented 3 years ago

The current estimate uses the power of the sound-source to estimate the distance. It is inadequite, as we often may not know the power of the sound-source beforehand.

oyssolbo commented 3 years ago

As of 03.01.21, the source-power is given as 177. Which unit is it given in? {W, mW, micro-W, ... }

Areskiko commented 3 years ago

If you're referring to line 5 in acoustics.py: image Then it's measured in decibel as per the specifications of the pinger that were found online, searching for the model that was listed in the competition guidelines.

oyssolbo commented 3 years ago

But how could that be used to estimate the distance. The equation requires power in W to be valid?

Areskiko commented 3 years ago

I assumed this meant I could use decibels. If not we need a different approach. Although, even if we can, it's not a very good approach as it's a very rough estimate with many factors that could drastically change the result. Things like echo for instance

oyssolbo commented 3 years ago

Fair point. I think we can assume that they have used the proper reference-value for dB (10^(-12) W if I remember correctly) and not any other reference giving dBA, dBm etc.

I am currently looking into the odas-library's predecessor (don't remember its name atm), as it looks like it has some nice trilateration-code. As I understand, it requires only the measured time and the hydrophones' position to trilaterate the pinger

oyssolbo commented 3 years ago

By switching from the current method, we may be able to solve issue #19 at the same time. Currently the measurements estimate the total distance given in x,y,z from the pinger. If the problem could be reduced to estimating distance in x,y by using the library, it could solve both #19 and #22

oyssolbo commented 3 years ago

Forgot to link to the issue before merging. Closing manually