Подключение датчика влажности почвы Ардуино

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

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

Щуп в виде модуля с электродами действует как переменный резистор, у которого сопротивление меняется в зависимости от содержания влаги в почве. Чем больше воды в почве, тем лучше ее проводимость и меньше сопротивление, и, наоборот, меньшее количество воды снижает проводимость и увеличивает сопротивление почвы. Датчик FC-28 (YL-69) выдает напряжение в соответствии с сопротивлением.

Датчик FC-28 Arduino распиновка, характеристики
Датчик FC-28 Arduino распиновка, характеристики

Характеристики FC-28 Arduino

  • Рабочее напряжение: 3,3 — 5 Вольт
  • Ток потребления: 35 мА
  • Выход: цифровой и аналоговый
  • Размер модуля: 16×30 мм
  • Размер щупа: 20×60 мм

Для настройки чувствительности цифрового сигнала имеется потенциометр, который устанавливает минимальное значение влажности почвы при котором сенсор выдаст низкий логический уровень на цифровом контакте D0. До этого значения цифровой выход модуля будет подавать высокий логический уровень. Щуп соединяется с компаратором двумя проводами, а уже сам модуль подключается к Ардуино:

Vcc – питание датчика;
GND – земля;
D0 – цифровой сигнал;
A0 – аналоговый сигнал.

Как подключить датчик влажности почвы Ардуино

Для этого занятия потребуется:

  • Arduino Uno / Arduino Nano / Arduino Mega;
  • датчик влажности почвы FC-28 (YL-69);
  • светодиоды и резисторы;
  • макетная плата;
  • провода «папа-мама».
Как подключить датчик влажности почвы к Ардуино
Как подключить датчик влажности почвы к Ардуино

В первом примере подключим сенсор влажности почвы к плате Ардуино, используя аналоговый выход (A0), так как аналоговый сигнал позволяет более точно отслеживать малейшие колебания влажности почвы. Для этого подключите питание к модулю — GND и 5V (смотри схему подключения на картинке), а контакт A0 подключите к порту A1 на микроконтроллере. После загрузки скетча, откройте монитор порта Arduino IDE.

Скетч для датчика влажности почвы Arduino

#define solPin A1 // порт для подключения датчика
#define ledPin 13 // порт для подключения светодиода

int minsol = 200; // минимальное значение влажности почвы
int sol;

void setup(){
   Serial.begin(9600);

   pinMode(solPin, INPUT);
   pinMode(ledPin, OUTPUT);
}

void loop(){
   sol = analogRead(solPin);
   Serial.print("sol = ");
   Serial.println(sol);

   if (sol > minsol) { digitalWrite(ledPin, LOW); }
   if (sol < minsol) { digitalWrite(ledPin, HIGH); }

   delay(1000);
}

Пояснения к коду:

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



Подключение датчика FC-28 с использованием цифрового сигнала
Подключение датчика FC-28 с использованием цифрового сигнала

Скетч для цифрового сигнала датчика FC-28 Arduino

#define solPin  2 // порт подключения датчика
#define ledPin 13 // порт подключения светодиода

int sol;

void setup(){
   Serial.begin(9600);

   pinMode(solPin, INPUT);
   pinMode(ledPin, OUTPUT);
}

void loop(){
   Serial.print("sol = ");
   Serial.println(digitalRead(solPin));

   if (digitalRead(solPin) == LOW) { digitalWrite(ledPin, LOW); }
   if (digitalRead(solPin) == HIGH) { digitalWrite(ledPin, HIGH); }

   delay(1000);
}

Пояснения к коду:

  1. калибровка сенсора производится на аппаратном уровне при помощи переменного резистора — поворот встроенного потенциометра по часовой стрелке увеличивает чувствительность датчика.

Заключение. Датчики уровня влаги в почве FC-28 и YL-69 имеют простую конструкцию и легко подключаются к плате Ардуино. Однако, модули имеют большой недостаток — это короткий срок службы щупа во влажной среде из-за коррозии металла. Выход из этой ситуации есть — это использование в проектах самодельного датчика влажности, в котором можно очень быстро и недорого менять щупы при необходимости.



3 Replies to “Подключение датчика влажности почвы к Ардуино”

  1. есть небольшой вопрос в фрагменте «int minsol = 200; // минимальное значение влажности почвы
    int sol;» чему равняется «sol»?

  2. я всё подключил и сделал, модуль горит, а как понять влажность? где написано?

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.