ESPsmart » Блог » Подключение датчика влажности почвы FC-28 к ESP8266
Приглашаем всех желающих, принять участие в тестировании системы управления микроконтроллерами ESP8266/ESP32. Принять участие.

Подключение датчика влажности почвы FC-28 к ESP8266

Нужно отслеживать степень влажности почвы, чтобы подобрать режим полива для растений или организовать автоматическую систему орошения? Измерить влажность можно с помощью специального датчика FC-28.

Подключение датчика влажности почвы FC-28 к ESP8266


Влажность почвы

Влажность почвы - это соотношение влаги, содержащейся в земле, к массе земли в сухом виде, также называют весовым показателем влаги. Существует другое определение, влажность определяется, как отношение объема воды к объему грунта, в котором он находится, но это уже объемный показатель влаги. Измерения влажности осуществляются в процентах. Результат меняется от 0 % при полностью сухой земле до 100 % при ее полном водонасыщении.

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

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

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

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

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

Аналоговое подключение датчика FC-28






При аналоговом подключении используем аналоговый выход датчика и AO платы. Датчик принимает значения от 0 до 1023. Для более наглядного представления влажности замерим значения получаемые от датчика, когда земля сухая. Мы получили значение "579", преобразуем с помощью функции map в диапазон от 0 до 100, а затем выведем в монитор порта.

Скетч для аналогового подключения


int sensor_pin = A0; // Аналоговый ПИН подключения датчика
int data;

void setup() {
  Serial.begin(115200); //  Устанавливаем скорость соединения с последовательным портом
}

void loop() {
  data = analogRead(sensor_pin); // Считываем показания с датчика
  data = map(data, 579, 0, 0, 100); // Переопределяем показания в процентное соотношение
  Serial.print("Влажность: ");
  Serial.print(data); // Выводим показания
  Serial.println("%");
  delay(1000);
}


Монитор порта




Цифровое подключение датчика FC-28




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

Скетч для цифрового подключения


int sensor_pin = 4; // D2, цифровой ПИН подключения датчика

void setup() {
  Serial.begin(115200); //  Устанавливаем скорость соединения с последовательным портом
}

void loop() {
  int data= digitalRead(sensor_pin);  // Считываем значение
  Serial.print(data); // Выводим показания
  delay(1000);
}

Оставить комментарий