Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Automatische Pflanzenbewässerung mit Arduino, WiFi & IFTTT – Büro-Pflanzen überwachen

Komponenten und Materialien

Arduino Due (oder Zero) 1
Andium Anduino WiFi Shield 1
Kapazitiver Bodenfeuchtesensor (korrosionsbeständig) 1

Apps & Online-Dienste

Motivation

Im neuen Büro von Andium vertrockneten Pflanzen, weil niemand an das Gießen dachte. Als IoT-Firma sollte das besser gehen: Pflanzen bekommen eine „Stimme“ per E-Mail/Twitter, wenn sie Durst haben.

Automatische Pflanzenbewässerung mit Arduino, WiFi & IFTTT – Büro-Pflanzen überwachen
Automatische Pflanzenbewässerung mit Arduino, WiFi & IFTTT – Büro-Pflanzen überwachen

Hardware-Aufbau

Der kapazitive Feuchtesensor hat drei Anschlüsse: 3,3 V (rot), GND (schwarz), Signal (blau) → Analogpin A1. Wichtig: Der Sensor darf nur bis zur weißen Markierung in die Erde gesteckt werden; die Elektronik darüber nicht nass machen!

Automatische Pflanzenbewässerung mit Arduino, WiFi & IFTTT – Büro-Pflanzen überwachen

Sensor-Kalibrierung

Zwei Referenzwerte ermitteln:

  1. Trockenwert (dryVal): Sensor in trockener Luft / trockener Erde.
  2. Nasswert (wetVal): Sensor bis zur Markierung in Wasser tauchen.

Sketch zum Auslesen der Rohwerte (alle 3 s):

int inputPin = A1;
void setup() { Serial.begin(115200); delay(3000); }
void loop() {
  Serial.print("Raw val: ");
  Serial.println(analogRead(inputPin));
  delay(3000);
}

Beispielwerte: dryVal = 807, wetVal = 415. Diese Werte in den Hauptsketch eintragen.

Haupt-Sketch (Anduino + Adafruit IO + MQTT)

Der Sketch verbindet sich per WiFi mit Adafruit IO, liest alle 10 Minuten den Feuchtewert, mappt ihn auf 0–100 % relative Feuchte und published ihn an den Feed „officePlants“. Ein lokales LCD (AnduinoLCD) zeigt den aktuellen Wert an.

#include <WiFi101.h>
#include "Adafruit_MQTT.h"
#include "Adafruit_MQTT_Client.h"
#include "AnduinoLCD.h"

#define WLAN_SSID "Ihr_SSID"
#define WLAN_PASS "Ihr_Passwort"
#define AIO_SERVER "io.adafruit.com"
#define AIO_SERVERPORT 1883
#define AIO_USERNAME "Ihr_User"
#define AIO_KEY "Ihr_AIO_Key"

WiFiClient client;
Adafruit_MQTT_Client mqtt(&client, AIO_SERVER, AIO_SERVERPORT, AIO_USERNAME, AIO_KEY);
Adafruit_MQTT_Publish humidityVal = Adafruit_MQTT_Publish(&mqtt, AIO_USERNAME "/feeds/officePlants");
AnduinoLCD LCD = AnduinoLCD(ST7735_CS_PIN, ST7735_DC_PIN, ST7735_RST_PIN);

const int inputPin = A1;
const int dryVal = 807;   // <-- IHR Trockenwert
const int wetVal = 415;   // <-- IHR Nasswert
int humidityPrev = 0;

void setup() {
  Serial.begin(115200); delay(3000);
  connectToWiFi(); connectToAdafruit();
  LCD.begin(); LCDinit();
}

void loop() {
  if (!mqtt.ping(3)) { if (!mqtt.connected()) connect(); }
  int humidity = readHumidity(); // 0-100%
  char buf[4]; String(humidity).toCharArray(buf, 4);
  if (!humidityVal.publish(buf)) Serial.println("Publish failed");
  else { Serial.print("Humidity: "); Serial.println(humidity); displayHumidity(humidity, humidityPrev); }
  humidityPrev = humidity;
  delay(600000); // 10 Min
}

int readHumidity() {
  int raw = analogRead(inputPin);
  return map(raw, dryVal, wetVal, 0, 100);
}
// ... WiFi, MQTT, LCD Funktionen siehe Originalcode ...

Benötigte Bibliotheken: WiFi101, Adafruit_MQTT, AnduinoLCD.

IFTTT-Regel für Benachrichtigung

In IFTTT einen Applet erstellen: „If Adafruit IO feed ‚officePlants‘ < 20 %, then send notification (E-Mail, Twitter, Push)“. Beispiel: Twitter-Account @andiumPlants postet „Water me!“.

Automatische Pflanzenbewässerung mit Arduino, WiFi & IFTTT – Büro-Pflanzen überwachen

Weiterführende Ideen

Code-Bibliothek

Anduino Library (für Andium Shield): GitHub

Herstellungsprozess

  1. Düngemittel: Wissenschaft, Produktion und nachhaltige Zukünfte
  2. Bluetooth-gesteuerter Arduino-Spybot bauen – Überwachungsroboter mit IP-Kamera
  3. FlickMote: Gestensteuerung per Ultraschall & IR für Smart Home (Arduino 101)
  4. DIY Arduino TV-B-Gone: Universelle TV-Aus-Fernbedienung
  5. Einen eigenen LED-Master-Clock mit Alarm bauen – aus 12 Metern Entfernung ablesbar
  6. Find Me: Smarter Gegenstands-Finder mit Arduino und Bluetooth
  7. Optimierte Stromversorgungslösungen für Arduino-Projekte
  8. Arduino Tic Tac Toe mit MAX7219 LED-Matrix und Karton-Gehäuse
  9. Pflanzengesundheit mit TinyML bewerten: Praktischer Leitfaden
  10. Intelligenten Arduino-Vierbeiner-Roboter bauen: Schritt-für-Schritt-Anleitung