Hey @EliotBR, @tony-white and @XYZEng ,
Just a quick update after extensive testing yesterday for a full day.
To specify my exact setup:
- ROV
- DVL A50
- Internal Stock compasses etc.
- NMEA AHRS
The NMEA AHRS is on Serial 3, as a GPS, with the GPS_TYPE set to NMEA. I’m able to view the Yaw angle in BlueOS and this exact angle hasn’t drifted over the day yesterday.
For the DVL, everything was properly set up, all the parameters etc.
We performed full accelerometer and compass calibrations in QGC. After, we calibrated the Gyro and Baro in the BlueOS Verhicle Setup Tab.
I’ve been operating the ROV for a bit to get a log file. And that logfile was processed into the ArduPilot MagFit Tool.
After loading in the Compass Offsets that we gained from the MagFit tool, our test could finally begin!
In our Compass Tab in BlueOS we saw that the GPS (NMEA AHRS) and the internal compasses were pretty much aligned. After operating the ROV for a while there was a huge drift from the internal compasses that almost caused in a 110degrees error comparing to the NMEA AHRS Angle. This NMEA AHRS Angle remained to be the correct angle.
I put the EK3_GBIAS_P_NSE parameter to the minimal value, put the EK3_YAW_M_NSE at max, put the EK3_GYRO_P_NSE at max aswell. All this to make sure the internal compasses had as tiny influence on the EKF as possible.
Allthough when looking into the BlueOS Compass tab, there was still a huge difference between the GPS arrow and the EKF arrow (about 60 degrees).
So I tried to switch off the compasses fully:
I tried to COMPASS_USEx = disabled
COMPASS_ENABLE = disabled
EK3_SRC1_YAW = GPS
This made sure that all internal compasses were fully disabled. It also showed me the following in BlueOS.
One of the lightblue arrows was the actual EKF moving. The other two seem to represent the two internal compasses which didn’t move and seemed to be fully switched off.
The EKF and the GPS2 Arrow did seem to move very nicely yogether with just a 2 degrees offset. At this point I was pretty satisfied with the results. Allthough after operating the ROV for another 10 minutes, the EKF and GPS arrow did offset way more into this:
Again the GPS2 (NMEA AHRS) angle was still giving the right angle.
I tried to use the Auto Declination, but it didn’t make any noticable difference.
One thing I also discovered was that when restarting the ROV, the EKF starts at 0 degrees and then comes a little closer to the GPS angle over time. And then after a while the EKF seems to drift away from the GPS angle again.
What we’d like to do is to fully bypass the internal compasses or atleast be able to properly put the NMEA AHRS as a very first priority for the EKF YAW. Our AHRS works awesome, but we just can’t seem to get that exact angle in BlueOS without the EKF drifting away from it and ending up with using false angles for drawing our paths together with our DVL Velocities.