Best way to determine distance between multiple BlueROV's?

Interesting idea!

If you want it to be direction agnostic then you’ll need to transmit in all directions and receive from all directions, which would likely get expensive quite fast. Also relevant are vertical directionality and maximum distance.

If they’re all basically on a horizontal plane and within ~50m of each other, you could maybe get away with something like a single ping360 sonar on top of each ROV and some custom firmware that can do individual receives and transmits. To achieve that you’d need a centralised controller like in NetTrack, where it tells all of them “X is now transmitting”, and if you are X you then do a transmit sweep while the others do a receive sweep, until the receivers have all locked onto the direction to the transmitter, then the controller could get X to transmit in the direction of each ROV one at a time, and time how long it takes from the send command to when the signal is received. Seems like it would be relatively slow to do something like that, but if the general direction is known it the receive sweeps could be in quite a small angle range of uncertainty.

Additionally, because directionality is known you could do only one measurement per ROV if desired (to speed things up) and you’d have a network graph specifying where each is and which one is closest to it. Alternatively you could do all the possible measurements and get an estimate of error, as they did in NetTrack. There’s also the option to do something like MiloNet where ones that are close enough do measurements to each other, but if one is only close enough to one of the others (ie it’s on the edge of the network) then you can still get an estimate of distance, which massively extends the total range you can cover as long as you have ROVs spaced within their maximum detection distance (e.g. you could have a long line, or cross (+) configuration going like 200m out from the center and still tracking distances.

Unfortunately this idea is quite reliant on relative horizontal position, although thanks to the 25 degree vertical beam height of the ping360 you could have relatively significant depth differences for far apart ROVs, and integrate each ROV’s depth measurements to help determine which ROV you’d need to use to communicate. Oh also ping360 is rated to 50m of return signal, so maybe the detectable range would be greater for a single direction…

In case you haven’t noticed, I’ve gotten more excited about this as I’ve been writing… :stuck_out_tongue:

1 Like