Home        Store        Learn        Blog

Noisy ping signal

I am currently using 2 ping sonar units deployed in two ice thickness sensors I have built. The pings are attached to a buoy by means of an arm that extends down into the water about 750mm and the sonars are facing up to calculate the distance to ice water interface and are driven by a Raspberry Pi Zero at about 1Hz. Both setups are for all intents and purposes identical, but in different sections of a pond that’s been sectioned with a floating boom and a weighted plastic sheet hanging down to minimize mixing. The two units are about 10m from each other.

One of them is working beautifully, really rock solid. Shown below:
[posted in first reply since new users can only upload one piece of media at a time]

But the other is significantly noisier, and getting worse:

Both plots are over 48hrs. The ice characteristics, as far as I can tell, are very similar between the two units. Could it be cross-talk? but if so why is it only showing up on one unit, and why is it getting worse? I’ve tried rebooting the unit several times, but it hasn’t seemed to have an effect.

Rock solid good signal

What exactly is the data in the plots? Where does snow level come from? Is there possibly anything adjacent nearby to the Ping devices? How deep is the water where each Ping is deployed? Any chance of viewing a profile from the Ping devices?

Sorry for the delay. The snow level comes from a MaxBotix MB7364 ultrasonic range finder. Basically the origin on that plot is calibrated to the middle of the pole where there is a disk of closed cell foam to provide floatation. Since we deployed it after the ice had formed any signal less than the distance we know from the Ping to the disk is ice, and any signal less than the distance we know from the ultrasonic range finder to the disk we know is snow (or an animal or w/e). There is an adjacent ping device, but turning that one off to track down a different issue for a while did not have an impact on the weird readings on this one.

After ruminating on this for a few days I am, however, starting to wonder if there is something characteristically different about the ice above this sonar. The ping isn’t giving crazy values, it’s actually pretty solidly reflecting off the bottom of the foam disk. Why it isn’t detecting the ice-water interface is the big question, which you’re right will probably be greatly aided by having the raw data. Unfortunately that will have to wait until ice-out in a few months. The water where it is deployed is about 5’ deep over all.

Well, I have to say this is not a use case we thought about during the development!

It looks like the distance from the Ping to the ice is right around the minimum range spec on Ping (~1/2 meter). I’d say the closer the ice gets to the Ping, the more likely that Ping will pick a stronger, but further away return (the foam disk).


We do tend to do that with equipment… In testing I was able to get good solid reads most of the time down to 300 - 400mm, but I built the sensor so that with the amount ice we expected we would stay close to or within the published limits.

What you suggest seems maybe to be happening

This is the plot from 12AM to 9PM local time today. We had a very cold night and morning today so we would expect to see some ice growth. This doesn’t line up exactly with the temperature profiles of the day, but the thermodynamics of ice formation are weird and this is maybe close enough. We go from a minimum (maximum?) interpreted ice-thickness of 16mm around 6:45 AM down to -4.64 right now. The negative here means it thinks the ice is above the level of the foam disk, or as you say further away signal from the disk. I will try to recover the cards and pull some of the raw data tomorrow if I can before I leave and it really becomes impossible for a while.