Hey divers!
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
Hi,
Does the pre programmed sd card for the model c 0.1.1 come with the code for the compass? And can you do a tutorial on how to install it? thanks :)
Yeah it actually does, but it’s not the code that runs in reboot. To get the semi autonomous software working, you’ll need to pick up the magnetometer in the above post (QMC5883L), and ssh into the ROVs computer to run the modified code on at reboot. I’m hoping I’ll have some time to do a video tutorial on that, but I’m more than happy to walk you through it here once you finish your build. Feel free to start a thread on it and we can work on it together!! -Costas