🛒
0 товаров
0 руб.

Интернет-магазин «Неглупый Дом»


🌿 Проект: контроль климата теплицы на датчике температуры и влажности KY-015

Датчик KY-015 и модуль реле

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

Как это работает

KY-015 — это готовый модуль на базе датчика DHT11, который измеряет сразу два параметра одним цифровым сигналом по одному проводу: температуру воздуха и относительную влажность. Для теплицы оба параметра критичны: слишком высокая температура может сжечь растения в солнечный день, а слишком высокая влажность — спровоцировать грибковые заболевания.

Плата проверяет оба значения на каждом цикле измерения. Как только хотя бы один параметр превышает заданный порог, включается реле, управляющее вентилятором или форточкой проветривания — то есть система сначала пытается решить проблему естественным способом. Звуковая сирена включается только при более серьёзном превышении (на 3 градуса выше порога температуры) — это сигнал, что одной вентиляции уже недостаточно и нужно вмешательство человека.

Пошаговая сборка

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

  1. Подключите KY-015: сигнальный контакт → D2, VCC → 5V, GND → GND.
  2. Подключите модуль реле KY-019 (управление вентилятором/форточкой): сигнал → D7.
  3. Подключите активный зуммер: сигнал → D8.
  4. Установите библиотеку DHT (например DHT sensor library от Adafruit) через Менеджер библиотек в Arduino IDE перед прошивкой.
  5. Расположите датчик подальше от прямого источника тепла (нагреватель, прямое солнце через стекло), чтобы показания отражали реальный воздух теплицы, а не локальный нагрев самого датчика.

Скетч

// ВНИМАНИЕ: рекомендую отладить код через монитор порта, так как я языковая
// модель, а не специализированный кодер, и могу что-то упустить. Основу
// и идею я накидал, но проверьте под свою схему.

#include <DHT.h>

#define DHTPIN 2        // пин датчика KY-015
#define DHTTYPE DHT11   // KY-015 использует чип DHT11
DHT dht(DHTPIN, DHTTYPE);

const int relayPin = 7;   // реле вентиляции
const int buzzerPin = 8;  // сирена
const float maxTemp = 32.0;     // порог температуры для проветривания, °C
const float maxHumidity = 85.0; // порог влажности для проветривания, %

void setup() {
  Serial.begin(9600);
  dht.begin();
  pinMode(relayPin, OUTPUT);
  pinMode(buzzerPin, OUTPUT);
}

void loop() {
  float t = dht.readTemperature();
  float h = dht.readHumidity();

  if (isnan(t) || isnan(h)) {
    // DHT11 иногда не успевает ответить вовремя (не чаще раза в секунду) — пропускаем цикл
    Serial.println("Ошибка чтения датчика, пропускаем измерение");
    delay(3000);
    return;
  }

  bool alarm = (t > maxTemp || h > maxHumidity);
  digitalWrite(relayPin, alarm ? HIGH : LOW);
  digitalWrite(buzzerPin, (t > maxTemp + 3) ? HIGH : LOW); // сирена только при сильном перегреве

  Serial.print("Температура: "); Serial.print(t);
  Serial.print(" C, Влажность: "); Serial.print(h);
  Serial.println(" %");

  delay(3000); // DHT11 обновляет показания не чаще раза в секунду, 3 сек — с запасом
}

KY-015 совместим с библиотекой DHT (тип DHT11). Сирена включается с запасом в 3 градуса сверх порога проветривания — сначала пробуем решить проблему вентиляцией, и только потом тревога.

Частые проблемы

Как улучшить проект

Товары по теме

Ещё модули для Arduino: Электронные модули.

← 🌡️ автоматическая вентиляция теплицы по темпе…🌧️ отключение полива по дождю →

🎁 Купить весь комплект со скидкой 10%

Все 2 товара сразу в корзину: 197 ₽ 177 ₽ (экономия 20 ₽)

Скидка применяется автоматически при оформлении заказа, если в корзине именно этот комплект.

Остались вопросы? Проконсультируйтесь с ИИ-инженером — он уже в курсе темы статьи и сразу ответит, ничего вводить не нужно.

Корзина


Поиск



Пример: понижающий или DC-DC или mini360 или aw-023 или арт. OZ/WB/YA