Tracking a Device in Underground Water Bodies—Ideas & Advice Needed!

G’day,

We’re wrestling with a bit of a project and could use your collective brainpower. We’ve got a device that we’re using for some observations in some underground water bodies, and we’re trying to figure out its exact position within its environment.

We’re already using a Garmin sonar for depth readings. Now we need to get the distance to the side walls and, if there is one, the ceiling above the waterline.

We’ve been exploring a couple of ideas for measuring these out-of-water distances and wanted to get your thoughts:

  1. RPLiDAR S3 -360 Degree -is this a good option for a constant 360° scan from the top of our device, even though we’d only really need the data above the device’s height (180 degrees, as the rest is covered by the sonar)? Are there any potential issues with reflections or water spray affecting the readings? Does anyone have sample export of the data produced with this lidar and how complex the postprocessing might be?
  2. Multiple Infrared Laser Distance Sensors (50m/80m) - As second option, we’re considering mounting a few of these pointing outwards and upwards. What are your thoughts on the accuracy and reliability of these in a humid environment? Also, how complex is setting them up with a processing unit to store the data that comes from the sensors? Any recommendations for specific brands or models that play nicely with microcontrollers?

Our goal is to combine the depth data from the Garmin with these lateral/vertical distance measurements to get a complete picture of our device’s location.

Here’s where it gets a bit tricky, and where we’d really appreciate your input:

  • Synchronized Timestamps: We need all the data (depth and distance) to have closely aligned timestamps for post-processing. We’re aiming to use a central controller to trigger the readings from all sensors simultaneously to achieve this. (Would something like a Raspberry Pi be a good option for this central processing and control? Are there better alternatives for real-time clock accuracy and triggering multiple sensors simultaneously? What else would we need for this kind of setup to ensure accurate and simultaneous data capture?
  • Data Logging and Export: We need to store this data on the device and then easily export it, ideally with a timestamp and the measurements in a simple format. CSV/TXT with timestamps and sensor readings - does this sound like a reasonable approach? What are your preferred methods for logging data on a Raspberry Pi or similar for easy retrieval later?
  • Velocity Measurement (Bonus!): It would be fantastic if we could also get some velocity data for our device. Has anyone had experience integrating velocity sensors (like IMUs?) into similar projects? What are some relatively low-power options that might work, and how challenging is it to process that data alongside distance measurements to get a reliable velocity reading?

We’re not electronics gurus, but we’re comfortable with coding and happy to get our hands dirty with wiring and scripting.

Our current power setup allows up to 10 Amp-hours, and we’d prefer to keep the voltage of any new devices below 12V if possible to integrate easily with our existing 24V power supply that also runs the sonar and other onboard systems.

Any thoughts, suggestions, or lessons learned from similar projects would be hugely appreciated! Fire away with your ideas – no matter how big or small!

Cheers!

Hi Daniel
Welcome
You have not specifically described this vessel but does it float or is it submersible. From the text is would seem to float but this is not explicit.

Maybe a device like this would work

This has a rotating mirror and looks to scan 270º. It may be able to be mounted on its side so it scans from water level one side, over the top to water level on the other side. The feasibility of this would depend on whether the rotating mirror can be operated in the horizontal position.

As for plan 2. You might be better off only using one unit and find a way to rotate it 180º back and forth like the above mentioned radar device.

As for the rest. I am afraid I will have to leave that to the digital gurus.
Cheers Bob

1 Like

Thanks, Robert! I really appreciate your help.

Yes, the device floats, but there’s a chance it might get splashed with water.

Based on what I understand, I’ll likely need a Raspberry Pi onboard to log the data—possibly the Raspberry Pi 5 Model B 2GB., or is there a way to just log it to a passive storage without external computer? With all the components onboard, I may end up requiring a higher-power supply.

You will need a MCU of some sort to log your data, but a Pi is much bigger than necessary. Something like this:

has more than enough processing power to connect to the sensors and log the data. For storage I use serial lash RAM modules, such as 24C64 (64K bits) - other sizes are available. They are quick to change, interface easily to an I2C bus, and are very inexpensive. Or you could do it with SPI instead of I2C. You can buy DIP chips and plug them into sockets, but I prefer to make up small modules using an adapter: they can be configured as required for particular purposes. There are commercial models available. They are more robust than SD cards, important for a high-humidity environment, and I find them much more reliable.
This one uses a 64k bit chip. It has configuration jumpers which are only needed if you are attaching multiple chips to the same bus (for instance, to log different data streams).

Depending on how much data needs to be stored and how often it needs to be cleared and written again (i.e. read/write cycles) you could setup 1-2Meg of the onboard flash and use SPIFFS (or similar) to write data.
from memory the S3 mini has 4meg, so depending on what is needed, I would expect you could almost have the OTA as well if needed, if not, even more space for the spiffs storage.