Емкостной датчик влажности почвы V1.2. Подключение к Ардуино

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

Сегодня мы поговорим о емкостном датчике влажности почвы V1.2. Он отличается от простых датчиков влажности почвы, доступных любителям домашнего хозяйства, своим принципом действия.

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

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

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

Есть ли решение данной проблемы? Да. Изменить принцип измерения. Вместо измерения сопротивления мы будем измерять емкость. В этом случае ток практически не течет, и соответственно нет эффекта электролиза. Датчик влажности почвы V1.2, о котором пойдет речь далее, работает именно по такому принципу.

Описание датчика влажности почвы V1.2

Принципиальная схема самого датчика приведена ниже.

Здесь мы видим генератор с фиксированной частотой, который построен на микросхеме таймера NE555. Прямоугольная волна с генератора подается на датчик, который является, по сути, конденсатором.

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

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

Подключение датчика влажности почвы V1.2 к Arduino

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

Для чтения данных с нашего датчика мы будем использовать контакт A0, а схема соединения будет следующей:

 

Первая программа – проверка датчика

Чтобы проверить, работает ли датчик, нам понадобится лишь немного переработанная программа «AnalogReadSerial», которая представлена ​​ниже:

void setup() {
  Serial.begin(9600);
}
void loop() {
  int wilg = analogRead(A0);
  int wil = map(wilg,310,570, 100, 0);
  Serial.println(wil);
  delay(500); 
}

Программа призвана отобразить данные, полученные с датчика в монитор последовательного порта. Если данные стабильны (допустимы колебания в размере 0.5%), то значит датчик работает.

По умолчанию программа “AnalogReadSerial” возвращает считанное значение на пин A0 в диапазоне 0-1024, но мы внесли небольшую модификацию, которая позволяет отображать данные в диапазоне 0-100. Это позволит оценивать степень влажности почвы в процентах.

Датчик выдает напряжение в диапазоне 0-3В, так что с помощью функции map() мы эффективно выделили только диапазон, который использует датчик.

Результаты, отображаемые на мониторе последовательного порта, приведены ниже:

 

Работу датчика можно очень легко проверить. Если в мониторе последовательного порта значения сухого датчика составляют 0…2, а погруженного в стакан с водой 98…100, то это значит, что датчик работает правильно!

Вторая программа – автоматический полив

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

Для этого мы используем Arduino Pro Mini, водяной насос, светодиод и, конечно же, датчик влажности почвы.

В дополнение к ранее упомянутым элементам, для управления насосом потребуется MOSFET-транзистор. Вам понадобится резистор 220 Ом для светодиода и 10 кОм для транзистора, программатор FTDI для загрузки программы в Pro Mini, панель блока питания для макетной платы пластины, к которой мы подключим блок питания.

Зачем нужен отдельный источник питания? Так как насос потребляет гораздо больше энергии, чем может обеспечить нас Arduino и FTDI преобразователь, то питание всего устройства только через порт USB может привести к сгоранию платы, преобразователя или даже материнской платы.

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

 

Насос должен быть отключен до момента отключения программатора и подключения внешнего источника питания.

Краткое пояснение: датчик подключен к контакту А0, транзистор управления насосом вместе со светодиодом подключен к контакту 11. Программатор для Pro Mini подключен — GND к GND, VCC к VCC, RX к TX и TX к RX.

Когда мы обсудили подключение всех элементов, мы можем перейти к самой программе.

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

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

void setup() {
  pinMode(11,OUTPUT);//установка контакта 11 в качестве выходного контакта
}
void loop() {
  int wilg = analogRead(A0);//переменная для влажности
  int wil = map(wilg,310,570, 100, 0);//пересчитать значение в проценты

  if(wil < 60)//если влажность менее 60%
  {
    pinMode(11,HIGH);//насос включается 
    delay(5000);//на 5 секунд
    pinMode(11,LOW);//насос выключается
  }
  else// если нет
  {
    pinMode(11,LOW);//насос отключен
  }
  delay(1800000);//ждем 30 минут для следующего измерения
}

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

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

1 комментарий

  • 19.08.2020 at 10:12

    «Принципиальная схема самого датчика приведена ниже.» Можно её немного пояснить?

    Ответить

Добавить комментарий

Ваш электронный адрес не будет опубликован.


*