General Usage

The DVL operates by bouncing four narrow sonar beams off the bottom of the body of water. The DVL measures the frequency of each return beam.

If any of the four transmit/receiver elements are moving with respect to the bottom, that return beam frequency is shifted due to the Doppler effect. By measuring the frequency shift, we can calculate the relative velocity between each transmit/receive element and the bottom. Depending on how the sensor head is angled with respect to the bottom, and the direction of motion, each beam may sense a different velocity. We also measure the orientation of the sensor head with respect to local level and to magnetic north. All this information is run through an Extended Kalman Filter (EKF), which outputs sensor head velocity in all three axes oriented to magnetic north (we do also apply magnetic deviation, if input by the user, to shift magnetic north toward true north). If the sensor head is fixed reasonably rigidly to your ROV, the velocities then also apply to the ROV.

Since the sensor beams are angled, the bottom does not provide as good a return as you might get from sounding sonars that are pointed straight down. Best overall performance comes when the DVL sensor head is operated in a level position. As the head is tilted more and more off vertical, one or more of the returns become weaker and weaker. While the DVL can operate temporarily with as few as two beams locked on the bottom, performance is degraded. Take-away: keep it as level as you can while operating.

The primary product of the DVL process is velocity in three axes. We also dead reckon by mathematically integrating velocity over time, which results in a new position as a delta from wherever the integration starts. The DVL wakes up at position (0,0) (we ignore the vertical axis since that is more accurately determined by other means). If we then reset the current position to a new value, subsequent delta positions are relative to the given new position.

Because we are mathematically integrating, even the tiniest errors will accumulate into an ever-growing position error. By periodically resetting the current position to a known good position, we can discard accumulated errors.

The following are a few scenarios to illustrate how you can use the DVL. The scenarios are not exhaustive, nor are they necessarily mutually exclusive.

Last updated