Оглавление:
- Шаг 1. Детали, тестирование и программирование
- Шаг 2: Строительные работы
- Шаг 3: Подключение и установка всех компонентов
- Шаг 4: Калибровка
- Шаг 5: долгосрочное использование
Видео: Ультразвуковой измеритель уровня в резервуаре: 5 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Необходимо контролировать уровень жидкости в колодце большого диаметра, резервуаре или открытой емкости? Это руководство покажет вам, как сделать эхолотный бесконтактный измеритель уровня жидкости с использованием дешевой электроники!
На рисунке выше показан обзор того, к чему мы стремились в этом проекте. На нашей даче есть колодец большого диаметра для подачи питьевой воды для использования в доме. Однажды мы с братом говорили о том, как наш дедушка измерял уровень воды вручную, чтобы отслеживать потребление и приток воды в течение лета, чтобы избежать овердрафта. Мы думали, что с помощью современной электроники мы сможем возродить традицию, но с меньшими затратами ручного труда. С помощью нескольких приемов программирования нам удалось использовать Arduino с модулем сонара для измерения расстояния до поверхности воды (l) с разумной надежностью и точностью ± несколько миллиметров. Это означало, что мы могли оценить оставшийся объем V, используя известные диаметр D и глубину L, с точностью примерно ± 1 литр.
Поскольку колодец расположен примерно в 25 метрах от дома, и нам нужен был дисплей в помещении, мы решили использовать два Arduinos с промежуточным каналом передачи данных. Вы можете легко изменить проект, чтобы использовать только один Arduino, если это не ваш случай. Почему бы не использовать беспроводную передачу данных? Отчасти из-за простоты и прочности (меньше шансов повредить провод от влаги), а отчасти потому, что мы хотели избежать использования батарей на стороне датчика. С помощью провода мы могли направить передачу данных и питание по одному и тому же кабелю.
1) Модуль Arduino в доме Это основной модуль Arduino. Он отправит сигнал запуска на Arduino в колодце, получит измеренное расстояние и отобразит рассчитанный оставшийся объем воды на дисплее.
2) Ардуино со стороны колодца и модуль сонара Цель этого Arduino состоит в том, чтобы просто получить сигнал запуска из дома, выполнить измерение и отправить обратно расстояние от модуля сонара до уровня воды. Электроника встроена в (относительно герметичный) корпус с пластиковой трубкой, прикрепленной к приемной стороне модуля гидролокатора. Назначение трубы - уменьшить ошибки измерения за счет уменьшения поля зрения, чтобы приемник «видел» только поверхность воды.
Шаг 1. Детали, тестирование и программирование
В этом проекте мы использовали следующие части:
- 2 x Arduino (один для измерения уровня жидкости, один для отображения результатов на дисплее)
- Базовый блок питания 12 В
- Ультразвуковой (сонарный) модуль HC-SR04
- Модуль светодиодного дисплея MAX7219
- Телефонный кабель длиной 25 м (4 провода: питание, заземление и 2 сигнала данных)
- Монтажная коробка
- Горячий клей
- Припой
Стоимость запчастей: около 70 евро.
Чтобы убедиться, что все работает как надо, мы сначала выполнили пайку, электромонтаж и простые стендовые испытания. В Интернете есть множество примеров программ для ультразвукового датчика и светодиодного модуля, поэтому мы просто использовали их, чтобы убедиться, что измеренное расстояние имеет смысл (рисунок 1) и что мы смогли уловить ультразвуковое отражение от поверхности воды на- сайт (рисунок 2). Мы также провели тщательное тестирование канала передачи данных, чтобы убедиться, что он работает на больших расстояниях, что, как оказалось, не представляло никакой проблемы.
Не стоит недооценивать время, потраченное на этот шаг, так как очень важно знать, что система работает, прежде чем прилагать усилия для правильной установки всего в коробки, прокладки кабелей и т. Д.
Во время тестирования мы обнаружили, что модуль гидролокатора иногда улавливает отражение звука от других частей скважины, таких как боковые стенки и водопроводная труба, а не от поверхности воды. Это означало, что измеренное расстояние внезапно окажется намного короче, чем фактическое расстояние до уровня воды. Поскольку мы не можем просто использовать усреднение для сглаживания этого типа ошибки измерения, мы решили отбросить все новые измеренные расстояния, которые слишком отличались от текущей оценки расстояния. Это не проблема, поскольку мы ожидаем, что уровень воды в любом случае будет меняться довольно медленно. После запуска этот модуль выполнит серию измерений и выберет наибольшее полученное значение (т. Е. Самый низкий уровень воды) в качестве наиболее вероятной отправной точки. После этого, в дополнение к решению «сохранить / сбросить», используется частичное обновление оценочного уровня для сглаживания случайных ошибок измерения. Также важно дать возможность погаснуть всем эхо-сигналам перед проведением нового измерения - по крайней мере, в нашем случае, когда стены сделаны из бетона и, следовательно, очень эхо.
Окончательную версию кода, который мы использовали для двух Arduinos, можно найти здесь:
github.com/kelindqv/arduinoUltrasonicTank
Шаг 2: Строительные работы
Поскольку наш колодец находился на некотором удалении от дома, нам пришлось сделать в лужайке небольшую траншею для прокладки кабеля.
Шаг 3: Подключение и установка всех компонентов
Подключите все, как было при тестировании, и надейтесь, что все еще работает! Не забудьте проверить, что вывод TX на одном Arduino переходит в RX другого, и наоборот. Как показано на рисунке 1, мы использовали телефонный кабель для подачи питания на Arduino в колодце, чтобы избежать использования батареек.
На втором и третьем снимках показано расположение пластиковых трубок, при этом передатчик расположен снаружи трубы, а приемник - внутри (да, это было неудобное положение для съемки …)
Шаг 4: Калибровка
Убедившись, что расстояние от датчика до уровня воды рассчитано правильно, калибровка сводилась только к измерению диаметра колодца и общей глубины, чтобы можно было рассчитать объем жидкости. Мы также скорректировали параметры алгоритма (время между измерениями, параметры частичного обновления, количество начальных измерений), чтобы получить надежные и точные измерения.
Итак, насколько хорошо датчик отслеживал уровень жидкости?
Мы могли легко увидеть эффект смыва крана в течение нескольких минут или смыва унитаза, что мы и хотели. Мы даже могли увидеть, что скважина наполнялась за ночь с относительно предсказуемой скоростью - и все это просто взглянув на дисплей. Успех!
Примечание: - Преобразование время-расстояние в настоящее время не корректирует изменения скорости звука из-за колебаний температуры. Это может быть хорошим дополнением в будущем, так как температура в колодце будет сильно отличаться!
Шаг 5: долгосрочное использование
Обновление через 1 год: датчик работает безупречно, без следов коррозии или повреждений, несмотря на влажную среду! Единственная проблема в течение года заключалась в том, что в холодную погоду (зимой) на датчике скапливается конденсат, который, очевидно, блокирует датчик. В нашем случае это не проблема, поскольку показания нам нужны только летом, но другим пользователям, возможно, придется проявить творческий подход!:) Изоляция или вентиляция, вероятно, возможные решения. Удачного изобретения!
Рекомендуемые:
Ультразвуковой контроллер уровня жидкости: 6 шагов (с изображениями)
Ультразвуковой контроллер уровня жидкости: введение Как вы, наверное, знаете, в Иране сухая погода, а в моей стране нехватка воды. Иногда, особенно летом, видно, что правительство перекрывает воду. Так что в большинстве квартир есть резервуары для воды. Есть 1
Измеритель уровня воды в скважине в реальном времени: 6 шагов (с изображениями)
Измеритель уровня воды в скважине в реальном времени: в этих инструкциях описывается, как построить недорогой измеритель уровня воды в реальном времени для использования в вырытых колодцах. Измеритель уровня воды предназначен для подвешивания внутри вырытого колодца, измерения уровня воды один раз в день и отправки данных по Wi-Fi или сотовой связи
Измеритель температуры, проводимости и уровня воды в скважине в реальном времени: 6 шагов (с изображениями)
Измеритель температуры, электропроводности и уровня воды в скважине в реальном времени: в этих инструкциях описывается, как построить недорогой измеритель воды в реальном времени для мониторинга температуры, электропроводности (ЕС) и уровня воды в вырытых колодцах. Счетчик предназначен для подвешивания внутри вырытого колодца, измерения температуры воды, ЕС и
Светодиодный измеритель уровня громкости с Arduino UNO: 7 шагов (с изображениями)
Светодиодный измеритель уровня громкости с Arduino UNO: измеритель единицы громкости (VU) или стандартный индикатор громкости (SVI) - это устройство, отображающее уровень сигнала в звуковом оборудовании. В этом проекте я использовал светодиоды, чтобы указать, насколько интенсивен звуковой сигнал. Когда интенсивность звука i
Ультразвуковой измеритель емкости резервуара для дождевой воды: 10 шагов (с изображениями)
Ультразвуковой измеритель емкости резервуара для дождевой воды: если вы похожи на меня и имеете немного экологической совести (или просто скинфлинты, стремящиеся сэкономить несколько долларов - что тоже я …), у вас может быть резервуар для дождевой воды. У меня есть резервуар, чтобы собирать урожай из-за редких дождей, в которые мы попадаем