Hello Blue Robotics community,
I want to reach out and see if anyone has experience integrating an external compass/AHRS (via the COMPASS_EXTERNAL
parameter or via AP_EXTERNAL_AHRS
… parameters) into the electronics enclosure of a BlueROV2. If so, I’m especially interested in learning about performance, specifically with respect to potentially improving yaw readings. By way of background, I’ve searched through the forums and found related conversations here and here, with the latter more focused on integration, whereas I’m more curious about the performance of third-party compass/AHRS sensors.
For context, we’re working with @clyde who has been investigating (among other things) fusing data streams from WaterLinked’s UGPS system (USBL) and DVL-A50, as well as all IMU and compass sensors on the Navigator. Our hope is to eventually move towards autonomous ROV operations to increase the standardization and efficiency of our kelp forest ROV video surveys (landing page for that work is here on GitHub).
In particular, Clyde has been digging into the Navigator’s x2 compasses, and has learned a lot (see, e.g., here), including that the x2 compasses in the Navigator can easily get confused, and that the disagreement between the two compasses can lead to erroneous yaw behavior when fusing data and attempting autonomous missions. Without more consistently reliable yaw metrics, it seems autonomous ROV missions may face significant challenges.
In considering a third-party compass/AHRS upgrade, I see Advanced Navigation (we use their GNSS Satellite Compass to provide topside GPS and compass data for our USBL system) has a compass, dubbed Orientus, linked here. I see as well that Movella also has an AHRS linked here. Note that I don’t believe ArduSub has support for these devices.
However, within ArduPilot it looks like support exists for several external AHRS devices such as for devices from VectorNav, MicroStrain, and InertialLabs (links are to the company, not specific components) via the following parameters:
AP_EXTERNAL_AHRS_VECTORNAV_ENABLED
AP_EXTERNAL_AHRS_MICROSTRAIN5_ENABLED
AP_EXTERNAL_AHRS_INERTIAL_LABS_ENABLED
So, I wanted to put this question out to the BR community: has anyone integrated a third-party compass/AHRS into the electronic enclosure? If so, how did the device behave? Is there anything about its performance that can you share?
Thank you very much!
Zach