Benötigte Komponenten
- Arduino UNO R3 kompatibles Board
- Wasserstandsensor
- 3 Buchse-Stecker Kabel
Beschreibung
In dieser Anleitung zeigen wir Ihnen, wie Sie den Wasserstandsensor auslesen können. Dieser Sensor erkennt die Tiefe von Wasser mit Hilfe einer Verstärkerschaltung und mehreren Leiterbahnen auf der Platine. Beim Eintauchen des Moduls verändert sich der Widerstand der Leiterbahnen je nach Tiefe des Wassers. Das Signal der Wassertiefe lässt sich dann am analogen Eingang des Arduinos umwandeln und auslesen.
Mit dem Wasserstandsensor können Sie Regen und Wassertief messen oder erkennen, ob ein Leck vorhanden ist. Der Sensor besteht hauptsächlich aus einem Transistor, einem 1M Ohm Widerstand und mehreren offenen Leiterbahnen.
Der Sensor besitzt einen 1M Ohm Pullup-Widerstand, um den Sensor auf „High“ zu ziehen, bis Wassertropfen die Leiterbahnen des Sensors kurzschließen. Somit funktioniert der Sensor sogar am digitalen Eingang des Arduinos. Am analogen Eingang kann allerdings die Menge an Wasser zwischen den Kontakten der Leiterbahnen gemessen werden.
Der Wasserstand wird durch eine Reihe von freiliegenden parallelen Leiterbahnen ermittelt. Je nach Wassermenge verändert sich der analoge Wert. Dieser analoge Wert kann ausgelesen und in einem Programm verwendet werden, um die Funktion des Wasserstands-Sensors zu erreichen.
Schaltplan
Anschlussplan
Wasserstandsensor | Arduino |
- | GND |
+ | 5V |
S | A0 |
Code für Arduino
int Sensor = A0;
int alterMesswert = 0; // Variable, um den vorherigen Messwert zu vergleichen
char printBuffer[128];
void setup()
{
Serial.begin(9600);
}
void loop()
{
int messwert = analogRead(Sensor); // Sensor auslesen und in der Variable Messwert speichern
if(((alterMesswert>=messwert) && ((alterMesswert - messwert) > 10)) || ((alterMesswert<messwert) && ((messwert - alterMesswert) > 10)))
{
sprintf(printBuffer,"Messwert ist %d\n",Sensor, messwert);
Serial.print(printBuffer);
alterMesswert = messwert;
}
}