Меню

Самодельный датчик влажности почвы для ардуино

Датчик влажности почвы (ёмкостный): инструкция по использованию и примеры

Ёмкостный сенсор влажности почвы пригодиться для создания систем автоматического полива растений. Датчик не даст засохнуть комнатным цветкам и флоре на огороде.

Принцип работы

Ёмкостный датчик выполнен в виде штыря, которым погружается в грунт на расстояние до 80 мм. На штыре в виде дорожек расположены два электрода, но в отличии от резистивной модели, электроды ёмкостного сенсора защищены токоизолирующей маской и неподвержены коррозии.

Внутри ёмкостного датчика находится RC-генератор на таймере 555, частота которого зависит от ёмкости между двумя электродами, которые выполняю роль конденсатора. Изменение влажности грунта сказывается на его диэлектрических свойствах и меняет ёмкость, что приводит к повышению или понижению выходного сигнала датчика. Итоговое напряжение пропорционально степени влажности почвы.

Пример работы для Arduino и XOD

В качестве мозга для считывания показаний с датчика рассмотрим платформу из серии Arduino, например Arduino Uno.

Схема устройства

Подключите датчик влажности почвы к аналоговому пину A0 платформы Arduino. Для коммуникации понадобятся соединительные провода «мама-папа».

Для быстрой сборки и отладки устройства возьмите плату расширения Troyka Shield, которая одевается сверху на Arduino Uno методом бутерброда. Для коммуникации используйте трёхпроводной шлейф «мама-мама», который идёт в комплекте с датчиком.

Код для Arduino IDE

Прошейте платформу Arduino скетчем приведённым ниже.

После загрузки скетча, в Serial-порт будут выводиться текущие показания сенсора в 10-битном диапазоне.

Источник

Датчик влажности почвы (резистивный): инструкция по использованию и примеры

Используйте резистивный сенсор влажности почвы для создания систем автоматического полива растений. Датчик подойдёт для ухода за комнатными цветками и флоре на огороде. Не дайте своим растениям засохнуть!

Принцип работы

Датчик для измерения влажности почвы выполнен в виде вилки с двумя электродами, которыми погружается в грунт на расстояние до 40 мм. При подключении питания на электродах создаёться напряжение. Если почва сухая, её сопротивление велико и через датчик между электродами течёт слабый ток. Если земля влажная — её сопротивление становится меньше, а ток датчика между электродами соответственно увеличивается. По итоговому аналоговому сигналу можно судить о степени увлажнения почвы.

Максимальное напряжение на выходе S не превышает 75% от напряжения питания модуля V , т.е. сигнальный диапазон датчика равен:

На показания датчика также влияют следующие факторы:

Электроды датчика покрыты золотом, чтобы предотвратить пассивную коррозию, когда он выключен. Избавиться от электролитической коррозии, вызванной протекающим током, невозможно, поэтому сенсор резистивного типа рекомендуется запитывать через силовой ключ. То есть, включать его только на время измерений, чтобы максимально продлить ресурс. В плане эксплуатации это доставляет неудобство, поэтому рекомендуем обратить внимания на ёмкостный датчик влажности почвы, который в силу своего исполнения неподвержен корозии.

Пример работы для Arduino и XOD

В качестве мозга для считывания показаний с датчика рассмотрим платформу из серии Arduino, например Arduino Uno.

Схема устройства

Подключите датчик влажности почвы к аналоговому пину A0 платформы Arduino. Для коммуникации понадобятся соединительные провода «мама-папа».

Для быстрой сборки и отладки устройства возьмите плату расширения Troyka Shield, которая одевается сверху на Arduino Uno методом бутерброда. Для коммуникации используйте трёхпроводной шлейф «мама-мама», который идёт в комплекте с датчиком.

Код для Arduino IDE

Прошейте платформу Arduino скетчем приведённым ниже.

После загрузки скетча, в Serial-порт будут выводиться текущие показания сенсора в 10-битном диапазоне.

Патч для XOD

После загрузки прошивки, в отладочной ноде watch будут выводиться текущие показания сенсора в диапазоне от 0 до 0,75:

Пример для Espruino

В качестве мозга для считывания показаний с датчика рассмотрим платформы из серии Espruino, например Iskra JS.

Схема устройства

Подключите датчик влажности почвы к аналоговому пину A0 платформы Iskra JS. Для коммуникации понадобятся соединительные провода «мама-папа».

Для быстрой сборки и отладки устройства возьмите плату расширения Troyka Shield, которая одевается сверху на Iskra JS методом бутерброда. Для коммуникации используйте трёхпроводной шлейф «мама-мама», который идёт в комплекте с датчиком.

Исходный код

Прошейте платформу Iskra JS скриптом приведённым ниже.

После загрузки скрипта, в консоль будут выводиться текущие показания сенсора в диапазоне от 0 до 75%.

Пример для Raspberry Pi

В качестве мозга для считывания показаний с датчика рассмотрим одноплатные компьютеры Raspberry Pi, например Raspberry Pi 4.

Схема устройства

К сожалению в компьютере Raspberry Pi нет встроеенного аналого-цифрового преобразователя. Используйте плату расширения Troyka Cap, которое добавит малине аналоговые пины.

Читайте также:  Сульфат аммония цвет удобрения

Подключите датчик влажности почвы к Raspberry Pi через плату расширения Troyka Cap к 3 пину. Для коммуникации используйте трёхпроводной шлейф «мама-мама», который идёт в комплекте с датчиком.

Программная настройка

Исходный код

Запустите скрипт на малине приведённым ниже.

После загрузки скрипта, в консоль малины будут выводиться текущие показания сенсора в диапазоне от 0 до 75%.

Элементы платы

Измерительные электроды

Датчик построен на основе транзисторного усилителя тока. Для измерения влажности почвы на датчике расположены два электрода, которые для проведения измерений необходимо воткнуть в почву. Электроды подключены в цепь между коллектором (точка SP) и базой (точка SN) встроенного транзистора на плате MMBT2222ALT1G.

При изменении влажности почвы, меняется сопротивление между базой и коллектором, к которому подключен положительный полюс источника питания. Соответственно меняется и протекающий ток от коллектора через эмиттер на землю. В результате изменяется и выходное аналоговое напряжение сенсора (точка OUT). Подробности найдёте на принципиальной схеме датчика.

Troyka-контакты

Датчик подключается к управляющей электронике через три провода.

Источник

Тестируем почву с Ардуино и датчиком влажности FC-28

Соединяем Arduino с датчиком влажности почвы FC-28, чтобы определить, когда ваша почва под растениями нуждается в воде.

В этой статье мы собираемся использовать датчик влажности почвы FC-28 с Ардуино. Этот датчик измеряет объемное содержание воды в почве и дает нам уровень влаги. Датчик дает нам на выходе аналоговые и цифровые данное. Мы собираемся подключить его в обоих режимах.

Как работает датчик почвы FC-28?

Датчик влажности почвы состоит из двух датчиков, которые используются для измерения объемного содержания воды. Два зонда позволяют току пройти через почву, которая дает значение сопротивления, что позволяет в итоге измерить значение влаги.

Когда есть вода, почва будет проводить больше электричества, а это значит, что будет меньше сопротивление. Сухая почва плохо проводит электричество, поэтому когда воды меньше, почва проводит меньше электричества, а это значит, что сопротивление будет больше.

Датчик FC-28 можно соединить в аналоговом и цифровом режимах. Сначала мы подключим его в аналоговом режиме, а затем в цифровом.

Спецификация

Спецификации датчика влажности почвы FC-28:

  • входное напряжение: 3.3–5V
  • выходное напряжение: 0–4.2V
  • входной ток: 35mA
  • выходной сигнал: аналоговый и цифровой

Датчик влажности почвы FC-28 имеет четыре контакта:

  • VCC: питание
  • A0: аналоговый выход
  • D0: цифровой выход
  • GND: земля

Модуль также содержит потенциометр, который установит пороговое значение. Это пороговое значение будет сравниваться на компараторе LM393. Светодиод будет нам сигнализировать значение выше или ниже порогового.

Аналоговый режим

Для подключения датчика в аналоговом режиме нам потребуется использовать аналоговый выход датчика. Датчик влажности почвы FC-28 принимает аналоговые выходные значения от 0 до 1023.

Влажность измеряется в процентах, поэтому мы сопоставим эти значения от 0 до 100, а затем покажем их на последовательном мониторе (serial monitor). Вы можете установить различные значения влаги и повернуть водяную помпу «включено-выключено» согласно этим значениям.

Электрическая схема

Подключите датчик влажности почвы FC-28 к Ардуино следующим образом:

  • VCC FC-28 → 5V Arduino
  • GND FC-28 → GND Arduino
  • A0 FC-28 → A0 Arduino

Код для аналогового выхода

Для аналогового выхода мы пишем такой код:

Объяснение кода

Прежде всего, мы определили две переменные: одну для контакта датчика влажности почвы, а другую для хранения выхода датчика.

В функции setup, команда Serial.begin(9600) поможет в общении между Arduino и серийным монитором. После этого, мы напечатаем «Reading From the Sensor . ” (англ. — считываем с датчика) на обычном дисплее.

В функции цикла, мы прочитаем значение от аналогового выхода датчика и сохраним значение в переменной output_value. Затем мы сопоставим выходные значения с 0-100, потому что влажность измеряется в процентах. Когда мы брали показания с сухого грунта, значение датчика было 550, а во влажном грунте значение датчика было 10. Мы сопоставили эти значения, чтобы получить значение влаги. После этого мы напечатали эти значения на последовательном мониторе.

Цифровой режим

Для подключения датчика влажности почвы FC-28 в цифровом режиме мы подключим цифровой выход датчика к цифровому контакту Arduino.

Модуль датчика содержит потенциометр, который использован для того чтобы установить пороговое значение. Пороговое значение после этого сравнивается со значением выхода датчика используя компаратор LM393, который помещен на модуле датчика FC-28. Компаратор LM393 сравнивает значение выхода датчика и пороговое значение, и после этого дает нам выходное значение через цифровой вывод.

Читайте также:  Как разбавить мочевину для подкормки растений

Когда значение датчика больше чем пороговое значение, цифровой выход передаст нам 5В, и загорится светодиод датчика. В противном случае, когда значение датчика будет меньше чем это пороговое значение на цифровой вывод передастся 0В и светодиод не загорится.

Электрическая схема

Соединения для датчика влажности почвы FC-28 и Ардуино в цифровом режиме следующие:

  • VCC FC-28 → 5V Arduino
  • GND FC-28 → GND Arduino
  • D0 FC-28 → Пин 12 Arduino
  • Светодиод положительный → Вывод 13 Ардуино
  • Светодиод минус → GND Ардуино

Код для цифрового режима

Код для цифрового режима ниже:

Объяснение кода

Прежде всего, мы инициализировали 2 переменные для соединения вывода светодиода и цифрового вывода датчика.

В функции setup мы объявляем пин светодиода как пин выхода, потому что мы включим светодиод через него. Мы объявили пин датчика как входной пин, потому как Ардуино будет принимать значения от датчика через этот вывод.

В функции цикла, мы считываем с вывода датчика. Если значение более высокое чем пороговое значение, то включится светодиод. Если значение датчика будет ниже порогового значения, то индикатор погаснет.

На этом вводный урок по работе с датчиком FC-28 для Ардуино мы завершаем. Успешных вам проектов.

Источник

Как работает датчик влажности почвы, и его взаимодействие с Arduino

Когда вы слышите термин «умный сад», вам приходит в голову система, которая измеряет влажность почвы и автоматически поливает ваши растения.

С этим типом системы вы можете поливать растения только при необходимости и избегать чрезмерного или недостаточного полива.

Если вы хотите построить такую систему, вам обязательно понадобится датчик влажности почвы.

Как работает датчик влажности почвы, и его взаимодействие с Arduino

Как работает датчик влажности почвы?

Работа датчика влажности почвы довольно проста.

Вилка в форме зонда с двумя открытыми проводниками действует как переменный резистор (потенциометр), сопротивление которого изменяется в зависимости от содержания воды в почве.

Рисунок 1 – Работа датчика влажности почвы

Это сопротивление обратно пропорционально влажности почвы:

  • большее количество воды в почве означает лучшую проводимость и приводит к снижению сопротивления;
  • меньшее количество воды в почве означает худшую проводимость и приводит к повышению сопротивления.

Датчик выдает выходное напряжение в соответствии с сопротивлением, измеряя которое мы можем определить уровень влажности.

Обзор аппаратного обеспечения

Типовой датчик влажности почвы состоит из двух компонентов.

Датчик содержит вилочный зонд с двумя открытыми проводниками, который погружается в почву или в любое другое место, где должно измеряться содержание воды.

Как сказано выше, он действует как переменный резистор, сопротивление которого изменяется в зависимости от влажности почвы.

Рисунок 2 – Зонд датчика влажности почвы

Модуль

Датчик также содержит электронный модуль, который соединяет датчик с Arduino.

В соответствии с сопротивлением датчика модуль выдает выходное напряжение, которое доступно на выводе аналогового выхода (AO).

Этот же сигнал подается на высокоточный компаратор LM393 для его оцифровки, с выхода которого сигнал подается на вывод цифрового выхода (DO).

Рисунок 3 – Регулировка чувствительности датчика влажности почвы

Для регулировки чувствительности цифрового выхода (DO) модуль содержит встроенный потенциометр.

С помощью этого потенциометра вы можете установить пороговое значение; таким образом, когда уровень влажности превысит пороговое значение, модуль выдаст низкий логический уровень, в остальных случаях на цифровой выход будет подаваться высокий логический уровень.

Эта настройка очень полезна, когда вы хотите инициировать действие при достижении определенного порога. Например, когда уровень влажности в почве пересекает пороговое значение, вы можете активировать реле, чтобы начать перекачивание воды. Вот вам идея!

Совет: поверните движок потенциометра по часовой стрелке, чтобы увеличить чувствительность, или против часовой стрелки, чтобы уменьшить ее.

Рисунок 4 – Светодиодные индикаторы питания и состояния почвы

Помимо этого, модуль имеет два светодиода. Индикатор питания загорится, когда на модуль будет подано напряжение питания. Светодиод состояния загорится, когда на цифровой выход будет подаваться низкий логический уровень.

Распиновка датчика влажности почвы

Датчик влажности почвы очень прост в использовании и содержит только 4 вывода для связи с внешним миром.

Рисунок 5 – Распиновка датчика влажности почвы

AO (аналоговый выход) выдает аналоговый сигнал с напряжением в диапазоне между напряжением питания и 0 В и будет подключен к одному из аналоговых входов нашей платы Arduino.

Вывод DO (цифровой выход) выдает цифровой выходной сигнал со схемы встроенного компаратора. Вы можете подключить его к любому цифровому выводу на Arduino или напрямую к 5-вольтовому реле или подобному устройству.

Читайте также:  Когда вносить удобрения под кукурузу

Вывод VCC подает питание на датчик. Рекомендуется питать датчик напряжением от 3,3 до 5 В. Обратите внимание, что сигнал на аналоговом выходе будет зависеть от того, какое напряжение питания подается на датчик.

GND для подключения земли.

Измерение влажности почвы с помощью аналогового выхода

Поскольку модуль предоставляет как аналоговый, так и цифровой выходные сигналы, то для нашего первого эксперимента мы будем измерять влажность почвы, считывая аналоговые показания.

Подключение

Давайте подключим наш датчик влажности почвы к плате Arduino.

Сначала вам нужно подать питание на датчик. Для этого вы можете подключить вывод VCC на модуле к выводу 5V на Arduino.

Однако одной из широко известных проблем с этими датчиками является их короткий срок службы при воздействии влажной среды. При постоянной подаче питания на зонд скорость коррозии значительно увеличивается.

Чтобы преодолеть эту проблему, мы рекомендуем не подавать питание на датчик постоянно, а включать его только тогда, когда вы снимаете показания.

Самый простой способ сделать это – подключить вывод VCC к цифровому выводу Arduino и устанавливать на нем высокий или низкий логический уровень, когда это необходимо.

Кроме того, итоговая мощность, потребляемая модулем (оба светодиода горят), составляет около 8 мА, поэтому можно запитать модуль от цифрового вывода на Arduino.

Итак, давайте подключим вывод VCC модуля к цифровому выводу 7 Arduino, а вывод GND модуля к выводу GND Arduino.

И, наконец, подключите вывод AO модуля к выводу A0 аналого-цифрового преобразователя Arduino.

Схема соединений показана на рисунке ниже.

Рисунок 6 – Подключение датчика влажности почвы к Arduino для считывания показаний на аналоговом выходе

Калибровка

Чтобы получить точные показания с датчика влажности почвы, рекомендуется сначала откалибровать его для конкретного типа почвы, которую вы планируете контролировать.

Различные типы почвы могут по-разному влиять на показания датчика, поэтому ваш датчик в зависимости от типа используемой почвы может быть более или менее чувствительным.

Прежде чем вы начнете хранить данные или запускать события, вы должны увидеть, какие показания вы на самом деле получаете от вашего датчика.

Чтобы отметить, какие значения выводит ваш датчик, когда почва максимально сухая, и когда она полностью насыщена влагой, воспользуйтесь скетчем, приведенным ниже.

Когда вы запустите этот скетч, вы увидите похожие значения в мониторе последовательного порта:

850, когда почва сухая;

400, когда почва полностью насыщена влагой.

Рисунок 7 – Калибровка датчика влажности почвы

Этот тест может потребовать несколько проб и ошибок. Как только вы получите хороший контроль над этими показаниями, вы сможете использовать их в качестве пороговых значений, если намерены инициировать какое-либо действие.

Финальная сборка

Основываясь на значениях калибровки, программа, приведенная ниже, задает следующие диапазоны для определения состояния почвы:

  • 750 – достаточно сухая для полива.

Если все в порядке, вы должны увидеть вывод в мониторе последовательного порта, похожий на приведенный ниже.

Рисунок 8 – Вывод аналоговых показаний датчика влажности почвы

Измерение влажности почвы с помощью цифрового выхода

Для нашего второго эксперимента мы определим состояние почвы с помощью цифрового выхода.

Подключение

Мы будем использовать схему из предыдущего примера. На этот раз нам просто нужно удалить подключение к выводу аналого-цифрового преобразователя и подключить вывод DO модуля к цифровому выводу 8 Arduino.

Соберите схему, как показано ниже:

Рисунок 9 – Подключение датчика влажности почвы к Arduino для считывания показаний на цифровом выходе

Калибровка

Для калибровки цифрового выхода (DO) модуль имеет встроенный потенциометр.

Вращая движок этого потенциометра, вы можете установить пороговое значение. Таким образом, когда уровень влажности превысит пороговое значение, светодиод состояния загорится, и модуль выдаст низкий логический уровень.

Рисунок 10 – Состояния цифрового выхода датчика влажности почвы

Теперь, чтобы откалибровать датчик, вставьте зонд в почву, когда ваше растение будет готово к поливу, и подстройте потенциометр по часовой стрелке так, чтобы светодиод состояния горел, а затем подстройте потенциометр обратно против часовой стрелки, пока светодиод не погаснет.

Теперь ваш датчик откалиброван и готов к использованию.

Код Arduino

После того, как схема будет собрана, загрузите в Arduino следующий скетч.

Если все в порядке, вы должны увидеть вывод в мониторе последовательного порта, похожий на приведенный ниже.

Рисунок 11 – Вывод цифровых показаний датчика влажности почвы

Источник

Adblock
detector