đź“–
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
  1. Inertial Measurement Unit (IMU)

Baseline IMU Background

The baseline DVL contains an IMU that has internal magnetometers, accelerometers, and gyros. These sensors are imperfect and can have manufacturing biases and linearity errors. Additionally, external magnetic disturbances can cause the magnetometers to make a bad estimate of magnetic north. The dominant error source for the IMU is usually electrical currents nearby. The currents on circuit boards are a big error source, but we have minimized these by separating the IMU/sensor head from the electronics stack. Other big error sources are the power systems and ferrous materials on the ROV. Thus, we recommend doing a recalibration every time the DVL is mounted in a different way on the ROV.

The IMU has a built-in processing system (an Extended Kalman Filter) that attempts to compensate for drift and offsets in the IMU’s sensors and for external magnetic influences by running a self-calibration process. When you “calibrate” the IMU, what you are really doing is moving the system around so the IMU self-calibration process gets enough motion input to complete its self-calibration. The IMU does not have to start this process from scratch each time it powers up if the calibration coefficients can be loaded from a source external to the IMU.

The calibration coefficients are stored in non-volatile memory in the DVL. On first power-up out of the box, the DVL executive waits until the IMU reports it has achieved a full calibration. As soon as the executive sees this, it stores the calibration coefficients and holds onto them for use on subsequent power-up. If you re-mount the sensor head, you want to manually invalidate the calibration, and the DVL executive will then start looking for the IMU to report it is fully calibrated so it can save new coefficients.

Any time after either an initial calibration or a subsequent boot-up calibration is complete, you can “grab” calibration data and the newest calibration data will immediately store in flash as soon as the IMU thinks its calibration is fully valid. Generally, you should only invalidate the stored calibration set while the IMU is happy and thinks it is self-calibrated. This is so you can be confident a new calibration set gets stored right away. When you power up the DVL, restoring the IMU to fully calibrated should be simple – like turning the ROV upside down a couple of times and waving it around once or twice.

We recommend you do the initial IMU dance (see below) on your boat or on the dock next to your boat rather than back in the shop, as this is likely to be the least magnetically-disturbed environment and most similar to where it is used in the water. Remember your boat engines are probably big cast iron blocks so try not to do it right on top of them.

Leaving the system sit for a long time doesn’t get you a better calibration. The IMU’s Kalman filter wants to see motion and change in orientation so it can self-calibrate. It starts at “zero,” and after enough motion, it determines a set of self-calibration coefficients. These are what we store in the DVL’s flash memory. When the system starts up again, we re-load this set of self-calibration constants back into the IMU, and it then only needs to see enough motion to say “oh yeah, the calibration is reasonable, let’s go.” It’s not starting the calibration from zero again.

The IMU normally goes up and down in calibration confidence as the system moves around.

Of course, if you put the system next to a big iron boat after calibrating, all bets are off on the effectiveness of the calibration.

Things to remember about IMU calibration (baseline IMU only):

  • IMU calibration coefficients are saved in receiver flash memory and a good saved calibration set will result in much faster calibration on startup.

  • The IMU should be fully calibrated each time it is mounted in a new or different location on the ROV.

  • You need to tell the DVL to invalidate its IMU calibration coefficients when you remount it, then you need to do calibration maneuvers until calibration completes (see below). Invalidating a calibration set schedules a new set to be stored.

  • Failing to invalidate old IMU data when re-mounting the receiver may result in long, annoying, difficult startups.

PreviousBaseline IMU CalibrationsNextBaseline IMU Blind Initial Calibration Procedure

Last updated 3 years ago