I’m super excited to share this new compass and semi-autonomous software upgrade to my Blue Dot ROV kits. As we've been diving our ROVs I’ve started to recognize a few ways in which the experience could be even sleeker. One problem I’venoticed while exploring low-visibility dive sites is that it’s easy to get disoriented. Currents and slightly unbalanced torques from motors can disorient you before you reach the bottom. To try out a possible solution, I bought an I2C capable 3-axis magnetometer (QMC5883L) off Amazon.
After I installed the compass on my Raspberry Pi 3B, I had a lot of trouble getting readings until I found this open-source python package: https://github.com/RigacciOrg/py-qmc5883l. This incredible package by RigacciOrg lets you calculate your unit’s bearing, and it also provides a graphic interface that lets you calibrate your compass.
I did a test dive at my local lake on Wednesday, and I was blown away by how much easier it is to navigate in murky or low-light conditions. This weekend, I wrote another update to the Archimedes software package. It uses the bearing values to maintain the ROV’s heading. I’m very new to PID (adjustments based on error proportion, integral, and derivative), but the simple loop I got running is already super responsive, and holds my ROV’s heading to within 5 degree accuracy. Weather permitting, I’ll be trying out this semi-autonomous upgrade in the wild this week, so stay tuned!
Thanks for reading another post of mine! If you’re interested in learning more about the ROV’s code or ordering a kit for yourself, check out the Blue Dot website www.BlueDotROV.com
Blue Dot ROV