Этот проект превращает Arduino в интеллектуальную систему управления парником с:
Автоматическим поливом по таймеру и влажности почвы
Контролем микроклимата (температура, влажность, CO2)
Управлением освещением (фитолампа)
Мониторингом через веб-интерфейс
Аварийными уведомлениями в Telegram
Необходимые компоненты:
Arduino Mega (много пинов)
Датчик влажности почвы Capacitive Soil Moisture
Датчик DHT22 (температура/влажность воздуха)
Датчик CO2 MH-Z19
Фотодиод GY-302 (освещенность)
Релейный модуль (4 канала)
Водяная помпа 12V + соленоидный клапан
Фитолампа 24V
Модуль ESP8266 для Wi-Fi
LCD дисплей 20x4 + I2C
Код (основные функции):
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <DHT.h>
#include <SoftwareSerial.h>
// Датчики
#define DHTPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
SoftwareSerial co2Serial(10, 11); // Для MH-Z19
// LCD
LiquidCrystal_I2C lcd(0x27, 20, 4);
// Пины
const int soilPin = A0;
const int lightSensorPin = A1;
const int waterPumpPin = 6;
const int lampPin = 7;
const int fanPin = 8;
// Настройки
const int drySoil = 2500; // Калибровка под почву!
const int minLight = 200; // Люкс
void setup() {
Serial.begin(9600);
co2Serial.begin(9600);
dht.begin();
lcd.init();
lcd.backlight();
pinMode(waterPumpPin, OUTPUT);
pinMode(lampPin, OUTPUT);
pinMode(fanPin, OUTPUT);
}
void loop() {
// Чтение данных
int soilMoisture = analogRead(soilPin);
float temp = dht.readTemperature();
float humidity = dht.readHumidity();
int co2 = readCO2();
int lightLevel = analogRead(lightSensorPin);
// Вывод на LCD
updateDisplay(soilMoisture, temp, humidity, co2, lightLevel);
// Логика управления
controlWatering(soilMoisture);
controlClimate(temp, humidity, co2);
controlLighting(lightLevel);
delay(10000); // Проверка каждые 10 сек
}
void controlWatering(int moisture) {
if (moisture > drySoil) {
digitalWrite(waterPumpPin, HIGH);
delay(3000); // Полив 3 секунды
digitalWrite(waterPumpPin, LOW);
}
}
void controlClimate(float temp, float hum, int co2) {
if (temp > 28 || hum > 80% || co2 > 1200) {
digitalWrite(fanPin, HIGH);
} else {
digitalWrite(fanPin, LOW);
}
}
void controlLighting(int light) {
if (light < minLight) {
digitalWrite(lampPin, HIGH);
} else {
digitalWrite(lampPin, LOW);
}
}Ключевые функции:
Умный полив:
Помпа включается при влажности почвы <30%
Защита от перелива (таймер 3 сек)
Климат-контроль:
Вентилятор включается при:
Температуре >28°C
Влажности >80%
CO2 >1200 ppm
Освещение:
Фитолампа работает при освещенности <200 люкс
Веб-интерфейс:
Данные передаются через ESP8266 на ThingSpeak или Blynk
Схема подключения:
| Компонент | Arduino |
|---|---|
| Датчик почвы | A0 |
| DHT22 | Pin 2 |
| MH-Z19 (CO2) | RX-10, TX-11 |
| Фотодиод | A1 |
| Помпа | Pin 6 |
| Фитолампа | Pin 7 |
| Вентилятор | Pin 8 |
| LCD I2C | SDA (20), SCL (21) |
Доработки:
Резервное питание от солнечной панели + аккумулятора
Капельный полив с электромагнитными клапанами
Ночной режим с УФ-лампой для грибов
Готов к сборке! Для промышленных теплиц добавьте датчик pH воды и камеру для мониторинга роста. 🌱💧


