- Что такое мутность жидкости?
- Как измерить мутность с помощью Arduino?
- Компоненты, необходимые для изготовления измерителя мутности
- Обзор датчика мутности
- Основные характеристики модуля мутности
- Подключение датчика мутности к Arduino - принципиальная схема
- Программирование Arduino для измерения мутности воды
Когда дело доходит до жидкостей, мутность - важный термин. Потому что он играет важную роль в динамике жидкости, а также используется для измерения качества воды. Итак, в этом уроке давайте обсудим, что такое мутность, как измерить мутность жидкости с помощью Arduino. Если вы хотите продолжить этот проект, вы также можете подумать о подключении pH-метра к Arduino, а также прочитать значение pH воды, чтобы лучше оценить качество воды. Ранее мы также создали устройство мониторинга качества воды на основе Интернета вещей с использованием ESP8266, вы также можете проверить это, если хотите. При этом, давайте начнем
Что такое мутность жидкости?
Мутность - это степень или уровень мутности или мутности жидкости. Это происходит из-за наличия в воздухе большого количества невидимых (невооруженным глазом) частиц, похожих на белый дым. Когда свет проходит через жидкости, световые волны рассеиваются из-за присутствия этих крошечных частиц. Мутность жидкости прямо пропорциональна свободным взвешенным частицам, то есть, если количество частиц увеличивается, мутность также увеличивается.
Как измерить мутность с помощью Arduino?
Как я уже упоминал ранее, помутнение происходит из-за рассеяния световых волн, чтобы измерить помутнение, мы должны измерить рассеяние света. Мутность обычно измеряется в нефелометрических единицах мутности (NTU) или единицах мутности Джексона (JTLJ), в зависимости от метода, используемого для измерения. Эти две единицы примерно равны.
Теперь посмотрим, как работает датчик мутности, он состоит из двух частей, передатчика и приемника. Передатчик состоит из источника света, обычно светодиода и схемы драйвера. На стороне приемника есть детектор света, такой как фотодиод или LDR. Помещаем раствор между передатчиком и приемником.
Передатчик просто передает свет, световые волны проходят через раствор, а приемник принимает свет. Обычно (без наличия раствора) проходящий свет полностью принимает на приемной стороне. Но в присутствии мутного раствора количество проходящего света очень мало. То есть на стороне приемника мы получаем только свет низкой интенсивности, и эта интенсивность обратно пропорциональна мутности. Таким образом, мы можем измерить мутность, измерив интенсивность света, если интенсивность света высокая, раствор менее мутный, а если интенсивность света очень низкая, это означает, что раствор более мутный.
Компоненты, необходимые для изготовления измерителя мутности
- Модуль мутности
- Ардуино
- ЖК-дисплей 16 * 2 I2C
- Светодиод RGB с общим катодом
- Макетная плата
- Перемычки
Обзор датчика мутности
Датчик мутности, используемый в этом проекте, показан ниже.
Как видите, этот модуль датчика мутности состоит из 3 частей. Водонепроницаемый провод, схема драйвера и соединительный провод. Тестовый зонд состоит из передатчика и приемника.
На изображении выше показано, что этот тип модуля использует ИК-диод в качестве источника света и ИК-приемник в качестве детектора. Но принцип работы такой же, как и раньше. Часть драйвера (показанная ниже) состоит из операционного усилителя и некоторых компонентов, которые усиливают обнаруженный световой сигнал.
Настоящий датчик может быть подключен к этому модулю с помощью разъема JST XH. Он имеет три контакта, VCC, землю и выход. Vcc подключается к 5 В, а земля к земле. Выходной сигнал этого модуля представляет собой аналоговую величину, которая изменяется в зависимости от интенсивности света.
Основные характеристики модуля мутности
- Рабочее напряжение: 5 В постоянного тока.
- Ток: 30 мА (макс.).
- Температура эксплуатации: от -30 ° C до 80 ° C.
- Совместим с Arduino, Raspberry Pi, AVR, PIC и т. Д.
Подключение датчика мутности к Arduino - принципиальная схема
Полная схема подключения датчика мутности к Arduino показана ниже, схема была разработана с использованием EasyEDA.
Это очень простая принципиальная схема. Выход датчика мутности является аналоговым, так что он подключен к контакту A0 Arduino, ЖК-дисплей I2C подключен к контактам I2C Arduino, то есть SCL к A5 и SDA к A4. Затем светодиод RGB подключается к цифровым контактам D2, D3 и D4. После того, как соединения будут выполнены, моя установка оборудования будет выглядеть следующим образом.
Подключите VCC датчика к Arduino 5v, затем подключите заземление к земле. Выходной контакт датчика - аналог 0 Arduino. Затем подключите VCC и заземление ЖК-модуля к 5 В и заземлению Arduino. Затем от SDA к A4 и SCL к A5, эти два контакта являются выводами I2C Arduino. наконец, соединяет землю светодиода RGB с землей Arduino и подключает зеленый к D3, синий к D4 и красный к D5.
Программирование Arduino для измерения мутности воды
План состоит в том, чтобы отображать значения мутности от 0 до 100. То есть счетчик должен отображать 0 для чистой жидкости и 100 для очень мутной. Этот код Arduino также очень прост, и полный код можно найти внизу этой страницы.
Во-первых, я включил жидкокристаллическую библиотеку I2C, потому что мы используем ЖК-дисплей I2C, чтобы минимизировать количество соединений.
# включить
Затем я установил целое число для входа датчика.
int sensorPin = A0;
В разделе настройки я определил контакты.
pinMode (3, ВЫХОД); pinMode (4, ВЫХОД); pinMode (5, ВЫХОД);
В разделе цикла, как я упоминал ранее, выходной сигнал датчика является аналоговым значением. Итак, нам нужно прочитать эти значения. С помощью функции Arduino AnalogRead мы можем считывать выходные значения в секции цикла.
int sensorValue = analogRead (сенсорпин);
Во-первых, нам нужно понять поведение нашего датчика, а это значит, что нам нужно прочитать минимальное и максимальное значение датчика мутности. мы можем прочитать это значение на последовательном мониторе, используя функцию serial.println .
Чтобы получить эти значения, сначала прочтите показания датчика без каких-либо решений. Я получил значение около 640, и после этого, поместив черную субстанцию между передатчиком и приемником, мы получим значение, которое является минимальным значением, обычно это значение равно нулю. Таким образом, мы получили 640 как максимум и ноль как минимум. Теперь нам нужно преобразовать эти значения в 0-100.
Для этого я использовал функцию карты Arduino.
int мутность = карта (sensorValue, 0,640, 100, 0);
Затем я отобразил эти значения на ЖК-дисплее.
lcd.setCursor (0, 0); lcd.print ("мутность:"); lcd.print (""); lcd.setCursor (10, 0); lcd.print (мутность);
После этого с помощью условий if я задавал другие условия.
если (мутность <20) { digitalWrite (2, HIGH); digitalWrite (3, НИЗКИЙ); digitalWrite (4, НИЗКИЙ); lcd.setCursor (0, 1); lcd.print ("ЯСНО"); }
При этом загорится зеленый светодиод, и на ЖК-дисплее отобразится «все ясно», если значение мутности ниже 20.
если ((мутность> 20) && (мутность <50)) { digitalWrite (2, LOW); digitalWrite (3, ВЫСОКИЙ); digitalWrite (4, НИЗКИЙ); lcd.setCursor (0, 1); lcd.print («это ОБЛАКО»); }
При этом загорится синий светодиод, и на ЖК-дисплее отобразится «облачно», если значение мутности находится в диапазоне от 20 до 50.
if ((мутность> 50) { digitalWrite (2, LOW); digitalWrite (3, HIGH); digitalWrite (4, LOW); lcd.setCursor (0, 1); lcd.print ("это ГРЯЗНО"); }
При этом загорится красный светодиод и на ЖК-дисплее отобразится «грязь», если значение мутности больше 50, как показано ниже.
Просто следуйте схеме и загрузите код, если все пойдет правильно, вы сможете измерить мутность воды, а на ЖК-дисплее должно отображаться качество воды, как показано выше.
Обратите внимание, что этот измеритель мутности отображает процент мутности, и это может быть неточное промышленное значение, но все же его можно использовать для сравнения качества воды двух видов воды. Полную работу этого проекта можно посмотреть на видео ниже. Надеюсь, вам понравилось это руководство и вы узнали что-то полезное, если у вас есть какие-либо вопросы, вы можете оставить их в разделе комментариев ниже или использовать форумы CircuitDigest, чтобы разместить свои технические вопросы или начать соответствующее обсуждение.