Inhaltsverzeichnis
Für dieses Projekt benötigst du
Den Tropfensensor am NodeMCU verwenden
Mit einem Tropfensensor oder auch Flüssigkeitssensor kann man eine Flüssigkeit detektieren. Dazu muss sich die Flüssigkeit direkt auf dem Sensor befinden. Es reicht bereits ein kleiner Tropfen aus, um einen eindeutigen Messwert zu erhalten. Man kann den Sensor zum Beispiel als Regensensor verwenden. Sobald ein Tropfen auf den Sensor trifft, kann das Arduino-Board eine Aktion ausführen wie z.B. eine Markise einrollen, Jalousien schließen, einen Alarm auslösen oder einen Scheibenwischer betätigen. Die Funktionsweise ist einfach. An den langen Kontaktstellen, die den Sensor durchziehen, liegt eine Spannung an (entweder + oder -). Sobald eine Flüssigkeit bspw. durch einen Tropfen zwei Kontakte verbindet, fließt ein kleiner Strom von einem Kontakt zum anderen. Dieser Wert wird im Sensor elektronisch aufbereitet und in Form eines analogen Signals an einen analogen Eingang des Boards übermittelt. Da das Board, wie bereits in vorherigen Tutorials beschrieben, keine elektrische Spannung als solche messen kann, wandelt es die am analogen Pin anliegende Spannung in einen Zahlenwert um. 0 bis 5 Volt entspricht einem Zahlenwert von 0 bis 1023 (Das sind 1024 Zahlen, da die Null als erster Zahlenwert gezählt wird). Bei dem Flüssigkeitssensor liegt der Wert im Trockenen bei „0“. Sobald ein Tropfen Wasser auf die Kontakte des Sensors trifft, liegt der Wert bei ca. „480“. Je mehr Tropfen sich auf dem Sensor befinden, desto höher ist der Wert. Im ersten Code geht es nur darum, den Sonsorwert mit dem NodeMCU auszulesen und mit dem „Serial Monitor“ darzustellen.
Die Programmierung ist sehr einfach und ähnelt sehr stark dem Auslesen von Potentiometern oder dem Auslesen des Feuchtigkeitssensors, da einfach nur ein analoger Wert ausgelesen wird.
Hinweis zu Messungen: Wir empfehlen, aufgrund der Elektrolyse durch das Wasser bzw. die Feuchtigkeit an den Sensoren, die Messungen nicht in einem Sekundenabstand durchzuführen. Aus Erfahrungen durch Tests direkt im Wasser empfehlen wir einen Abstand von 15 Minuten zwischen jeder Messung. Bei Messungen im Sekundenbereich, bei direktem und durchgängigem Wasserkontakt, entstehen durch die Elektrolyse nach ca. 24 Stunden Schäden am Sensor.
Der Sketch
int messwert=0; //Unter der Variablen "messwert" wird später der Messwert des Sensors gespeichert.
void setup() //Hier beginnt das Setup.
{
Serial.begin(9600); //Die Kommunikation mit dem seriellen Port wird gestartet. Das benötigt man, um sich den ausgelesenen Wert im "serial monitor" anzeigen zu lassen.
}
void loop() // Hier beginnt der Hauptteil
{
messwert=analogRead(A0); //Die Spannung an dem Sensor wird ausgelesen und unter der Variable „messwert“ gespeichert.
Serial.print("Feuchtigkeits-Messwert:"); //Ausgabe am Serial-Monitor: Das Wort „Feuchtigkeits-Messwert:"
Serial.println(messwert); //und im Anschluss der eigentliche Messwert.
delay(500); // Zum Schluss noch eine kleine Pause, damit nicht zu viele Zahlenwerte über den Serial-Monitor rauschen.
}
Funduino - Dein Onlineshop für Mikroelektronik
-
Dauerhaft bis zu 10% Rabatt für Schüler, Studenten und Lehrkräfte
-
Mehr als 3.500 Artikel sofort verfügbar!
-
Über 8 Jahre Erfahrung mit Arduino, 3D-Druck und co.