Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Arduino.h>
- #include <DHT.h>
- // ***** Hardver beállítások *****
- #define RELAY_PIN 5 // Relé modul vezérlője
- #define PUMP_ON LOW // Relé aktív állapota
- #define PUMP_OFF HIGH
- #define SOIL_SENSOR_PIN A0 // Talajnedvesség szenzor (analóg)
- #define SOIL_THRESHOLD 500 // Nedvesség küszöbérték (száraz: nagyobb érték)
- #define DHTPIN 4 // DHT11 adatpin
- #define DHTTYPE DHT11
- DHT dht(DHTPIN, DHTTYPE);
- // ***** Állapotváltozók *****
- bool pumpActive = false;
- void setup() {
- Serial.begin(115200);
- pinMode(RELAY_PIN, OUTPUT);
- digitalWrite(RELAY_PIN, PUMP_OFF); // Biztonságos állapot
- dht.begin();
- }
- void loop() {
- int soilMoisture = analogRead(SOIL_SENSOR_PIN);
- float temperature = dht.readTemperature();
- float humidity = dht.readHumidity();
- Serial.print("Talajnedvesség: "); Serial.println(soilMoisture);
- Serial.print("Hőmérséklet: "); Serial.print(temperature); Serial.println(" °C");
- Serial.print("Páratartalom: "); Serial.print(humidity); Serial.println(" %");
- if ((soilMoisture > SOIL_THRESHOLD || humidity < 40) && temperature > 25 && !pumpActive) {
- Serial.println("💧 Szivattyú BE!");
- digitalWrite(RELAY_PIN, PUMP_ON);
- pumpActive = true;
- } else if ((soilMoisture <= SOIL_THRESHOLD && humidity >= 40) || temperature <= 25 && pumpActive) {
- Serial.println("🚫 Szivattyú KI!");
- digitalWrite(RELAY_PIN, PUMP_OFF);
- pumpActive = false;
- }
- delay(2000); // 2 mp frissítés
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement