Изучал вопрос измерения уровня воды для контроля уровня в еврокубе и колодце, вот что у меня получилось:
1. Ультразвуковой датчик, как у ТС. Нет защиты от влажности, врет или не измеряет на малых расстояниях. С влажностью можно побороться переходом на
другой датчик, от парктроника. Что у него будет с точностью и с измерением малых расстояний, непонятно. Себе заказал, еще не подключал.
2. ИК-датчик. Судя по описаниям, хорошо измеряет малые расстояния, большие заметно хуже. Высоту еврокуба уже может не взять, поэтому для себя не рассматривал. Если комбинировать с п.1, то должны всю шкалу измерений перекрыть.
3. Датчик давления абсолютный. Готовое изделие, которое можно засунуть в воду, за приемлемые деньги не нашел. Заказал
обычный датчик давления-температуры на новой микрухе BMP280. Буду опыты ставить. Засуну в пластиковую бутылку, загерметизирую и опущу на дно. Разница в давлениях от датчиков на дне и на поверхности даст нам высоту столба жидкости. Как бонус - её температуру. Неясно, какой у неё предел измерений, т.е. максимальная глубина воды, которую он сможет посчитать.
4. Измерение лазерным или УЗ дальномером. Точность достаточная, есть модели с USB выходом. Но они дорогие. Конкретные модели не искал, жду результатов опытов с датчиком давления.
5. Измерение перемещения погруженного в воду поплавка
5.1. Относительный энкодер. Традиционное решение в виде колеса с датчиком от старой мышки для еврокуба не пойдет, для необходимой точности надо не менее 100 отсчетов на оборот, по моим расчетам. Датчик можно оставить, колесо надо искать. Проблема одна - необходимость калибровки после пропадания электричества.
5.2. Абсолютный энкодер. Многообортный потенциометр не подходит, слишком много оборотов нужно, да и сыпятся они. Другие готовые решения, которые с кодом Грея и т.д. дорогие.
5.3. Измерение китайским цифровым штангенциркулем или
другой цифровой линейкой, например для станков. Есть варианты с готовым цифровым выходом. Точность отличная. Имеют на борту свой источник питания, поэтому вопрос необходимости калибровки после пропадания питания не стоит.
В любом случае из п.5 придется колхозить механическую связь между поплавком и датчиком.
Думаю, список далеко не исчерпывающий. Прошу прощения у ТС, что в его теме разместил.