đź“–
Cerulean Sonar Docs
Docs DirectoryStore
DVL-75
DVL-75
  • DVL-75
  • Overview
    • General Specifications
    • General Use Cases
    • The Basic System
    • System Components
    • Comparison of Tracker 650 and DVL-75
  • Usage Considerations and Scenarios
    • General Usage
    • Scenario: GPS Emulation
    • Scenario: Holding Position
    • Scenario: Autonomous Waypoint Navigation
    • Scenario: Returning to a Series of Known Positions
    • Scenario: Returning to Home
    • Scenario: Using GPS Assist
    • Scenario: Doing Your Own Dead Reckoning
    • Additional Connection Possibilities
    • General Hints and Tips
    • Operation in a Pool
  • Using MAVLink and BlueOS for Position Hold on a BlueROV2
    • ArduPilot Parameters
    • DVL Setup for MAVlink Support
  • Using Other Than the Bottom for the DVL (Side-Tracking Capability)
    • Side-Tracking Capability Design Use-Cases
    • Side-Tracking Capability Considerations
  • Mounting the DVL Components
    • Sensor Head Typical Mounting
    • Sensor Head Side-Tracking Mounting Alignment
    • All-in-One and Most-in-One Mounting Considerations
    • Mounting the Electronics Stack
    • Mounting an Auxiliary GPS
  • Assembling the Electronics Stack
    • Cerulean 300m Electronics Enclosure Assembly
  • Inertial Measurement Unit (IMU)
    • Baseline IMU Calibrations
    • Baseline IMU Background
    • Baseline IMU Blind Initial Calibration Procedure
    • Baseline IMU Status-Assisted Initial Calibration Procedure
    • Baseline IMU Calibration for Each Mission or Each Time Power is Applied
    • Upgraded IMU Calibration for Each Mission or Each Time Power is Applied
  • Communicating with the DVL
    • Factory Defaults and Default Messages
    • The Ethernet Interface
    • Tips on How to Find the IP Address Assigned to Your Ethernet Adapter
    • The Serial Interface
    • Resetting the Communications Parameters to Factory Default
    • What Do the LEDs Mean?
    • Outgoing Message Formats, DVL to Host
      • $GPRMC: NMEA standard Recommended Minimum GPS/Transit Data
      • $DVEXT: DVL Extended Data
      • $DVPDL: DVL Position and Angle Deltas Message
      • Freeform Error and Informational messages ($DVTXT)
      • Re-Tweeted GPS Messages
      • Re-Tweeted IMU Messages (IMU Raw Data)
      • $DVKFA, $DVKFB Kalman Filter Support Messages
        • Driving your own Kalman Filter
    • Commands Accepted by the DVL
      • $GPRMC
      • SET-POSITION
      • CONFIGURATION
      • SUPPRESS-GPS
      • DECLINATION
      • SET-SPEED-OF-SOUND
      • SET-VELOCITY-ADJUSTMENT
      • SEND-GPRMC
      • SEND-DVEXT
      • SEND-DVKFA
      • SEND-DVKFB
      • SEND-FREEFORM
      • SEND-DVPDL
      • RETWEET-GPS
      • RETWEET-IMU
      • SET-SENSOR-ORIENTATION
      • GRAB-IMU-CAL
      • VOID-IMU-CAL
      • BAUD-RATE
      • IP-ADDRESS
      • HOST-ADDRESS
      • MAVLINK-ADDRESS
      • FALLBACK-ADDRESS
      • UNICAST-TO-ME
      • PAUSE
      • RESUME
      • REBOOT
    • Blue Robotics Ping360 Discovery Protocol (Ethernet Only)
    • ARP (Address Resolution Protocol)
    • DHCP (Dynamic Host Configuration Protocol)
    • Ping (Internet Control Message Protocol Ping)
    • Mechanical Drawings
      • Mounting Dimensions, Sensor Head
      • Mounting Dimensions, Electronics Stack
      • RAM Mount Adapter Plate
      • Electronics Stack Assembly Drawing
      • Mounting Bracket for 300m Electronics Enclosure
      • Mounting Bracket for Sensor Head or Electronics Enclosure, fits BlueROV2 Heavy Thruster Guard
      • Mounting Bracket for All-in-One Enclosure, fits BlueROV2 Heavy Thruster Guard
      • Mounting Dimensions, Cerulean 300m Enclosure
      • Mounting Dimensions for the Cerulean All-in-One Enclosure
      • Mounting Dimensions, Cerulean GPS
  • Electrical Drawings
    • Serial Cable Supplied with Baseline Electronics Stack
    • DVL Serial Connection Example
    • Power over Ethernet (POE) Cabling
    • Standard Ethernet Pinouts
    • Optional GPS Wiring
    • Sensor Head Wiring
    • Using External Power with Serial Cable
    • Serial to USB Interface Using Blue Robotics BLUART Board
  • CAD Models
  • Appendix – Coordinate Systems
  • Copyright
Powered by GitBook
On this page

Using Other Than the Bottom for the DVL (Side-Tracking Capability)

PreviousDVL Setup for MAVlink SupportNextSide-Tracking Capability Design Use-Cases

Last updated 3 years ago

In the “standard” use-case, the DVL assumes it is pointed (relatively) straight down at a (relatively) flat bottom. The math to resolve the four velocity vectors requires the normal (perpendicular) to the reflective surface be known (relatively) accurately. The DVL also needs to be aligned within 20 to 30 degrees (preferably less) with the normal to the reflective surface for the acoustics to work correctly. These assumptions hold in the standard use-case of the DVL because ROVs, in general, operate in a known and upright/level attitude, and the gravity vector provides a reference to the normal to the reflective surface (in this use-case, the ocean floor).

In some other use cases, the user wants to point the DVL at some surface other than the ocean floor, and usually that other surface is not horizontal. Examples of this type of surface include ship hulls, solid piers, dense netting, and so on. We call these non-standard use cases “side-tracking capability,” and we will call the other surface the “target surface.”

In side-tracking capability, the DVL doesn’t start out knowing the normal to the target surface because the “straight down” assumption noted above does not hold. We use more mathematics in side-tracking capability to resolve this, which sometimes adds noise and error.

We will also note the measurements and definitions change when using side-tracking capability. Refer to the figure below:

In normal (bottom-tracking) mode, X and Y are measured in inertial space. If the bottom of the ocean is stationary, X and Y are computed in inertial space relative to the ROV heading, but altitude is a function of distance between the ROV and the bottom, which will vary with both the depth of the ROV and the water. When transformed to world space, X and Y are rotated about the Z (altitude) axis based on the heading of the ROV, and altitude is left alone.

In the more general side-tracking mode, X, Y and Z velocities are calculated in the sensor frame and then rotated into world frame, where they are used by the dead reckoning algorithm to calculate the world X-Y (i.e., lat/long) position. The sensor-frame X-Y velocities are computed in inertial space relative to the sensor-frame side-to-side motions (in the right-hand figure this is starboard-to-port) based on the normal to the target surface. The sensor-frame Z velocity are computed based on the change in distance to the target surface. “Altitude” is always the sensor range from the DVL to the target surface (Altitude is never transformed into other coordinate frames).

When these X, Y and Z velocities are transformed into world space, they become a mixture of inertial and sensor range measurements. In the case of the right-hand figure above, measured X will become world Z, and measured Y and measured Z will become ROV X and X. ROV X and Y will then be transformed into world space based on ROV heading. The take-away is that world-frame X-Y measurements are possibly less accurate if the sensor is not pointing straight down at an ocean floor.

For body-frame measurements such as are used in position hold and ROV-relative dead reckoning, most of these considerations cancel out and it “just works.”

DVL in normal/neutral position
DVL facing forward in side-tracking position