Sensor: Wasserstandsensor: Unterschied zwischen den Versionen
(12 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 88: | Zeile 88: | ||
Diese Messung wird auch als Messung der elektrischen Leitfähigkeit oder Konduktivmessung bezeichnet. | Diese Messung wird auch als Messung der elektrischen Leitfähigkeit oder Konduktivmessung bezeichnet. | ||
* | * Bewertung der Sensordaten | ||
Die Widerstandswerte des Wasserstandsensors werden im Sensor bereits berechnet, sodass mit den Werten eine Wasserstandhöhe ermittelt werden kann. | Die Widerstandswerte des Wasserstandsensors werden im Sensor bereits berechnet, sodass mit den Werten eine Wasserstandhöhe ermittelt werden kann. | ||
Mit einem PC und ein Arduino-Mikrocontroller kann man diese Werte auslesen. | Mit einem PC und ein Arduino-Mikrocontroller kann man diese Werte auslesen. | ||
Zeile 95: | Zeile 95: | ||
===Datenblätter=== | ===Datenblätter=== | ||
Datenblatt des Sensors: [http://www.fecegypt.com/uploads/dataSheet/1480850810_water.pdf K-0135]<br/> | Datenblatt des Sensors: [http://www.fecegypt.com/uploads/dataSheet/1480850810_water.pdf K-0135]<br/> | ||
===Schaltplan=== | ===Schaltplan=== | ||
Zeile 137: | Zeile 129: | ||
===Arduino Quelltext=== | ===Arduino Quelltext=== | ||
<source line lang="cpp" style="font-size:small"> | <source line lang="cpp" style="font-size:small">void loop() | ||
void loop() | |||
{ | { | ||
/*---------------------------------*/ | /*---------------------------------*/ | ||
/* Sensorwerte einlesen */ | /* Sensorwerte einlesen */ | ||
/*---------------------------------*/ | /*---------------------------------*/ | ||
int value = analogRead( | int value = analogRead(0); | ||
/*---------------------------------*/ | /*---------------------------------*/ | ||
/* Ausgabe | /* Ausgabe (mm) */ | ||
/*---------------------------------*/ | /*---------------------------------*/ | ||
Serial.println(value/10); | Serial.println(value/10); | ||
Zeile 189: | Zeile 174: | ||
== YouTube Video == | == YouTube Video == | ||
[https://www.youtube.com/watch?v=TASVBaN5v-k Wasserstandsensor K-0135] | |||
== Schwierigkeitsgrad == | == Schwierigkeitsgrad == | ||
( | ( ** ) | ||
== Quellenverzeichnis == | == Quellenverzeichnis == |
Aktuelle Version vom 18. Januar 2019, 09:26 Uhr
→ zurück zur Übersicht: WS 18/19: Sensortechnik (MTR)
Autor: Thomas Miska
Betreuer: Prof. Schneider
Aufgabe
In dieser Artikel werden folgenden Punkte abgearbeitet:
- Auswahl eines Primärsensors
- Signalverarbeitung
- Bewertung der Sensordaten
- Inbetriebnahme des Wasserstandsensor K-0135 der Firma Hoya.
Einleitung
Für einen Wasserstand Messung benötigt man einen Sensor, welcher in der Lage ist den Wasserpegel möglichst genau zu messen.
Hierzu wird der Wasserstandsensor (Allgemeine Sensorbezeichnung: K-0135) verwendet.
Technische Übersicht
Eigenschaft | Daten |
---|---|
Betriebsspannung | 5V (DC) |
Betriebsstrom: | < 20mA |
Schnittellen: | 3 |
Sensortyp: | Analog |
Ausgangsspannung des Signals: | 0 ~ 4,2V |
Betriebstemperatur: | 10°C ~ 30°C |
Produktabmessung: | 65mm x 20mm x 8mm |
Funktionsweise
Der Sensor ermittelt mithilfe eines Verstärkerschaltkreises, bestehend aus einem Transistor mit mehrere kammförmige Antennen auf der Platine, den ungefähr geschätzten Wasserstand.
Sobald der Sensor ins Wasser getaucht wird, fungieren die Antennen als Widerstand, der abhängig von der tauchtiefe des Sensor ist.
Durch den erbrachten Widerstandswert lässt sich der Pegelstand errechnen und wird anschließend in ein elektrisches Signal umgewandelt.
Der Sensor kann sowohl Digital, als auch Analog angeschlossen werden.
Eine Digitale Messung ermöglicht es die Rückmeldung, ob Wasser an dem Sensor anliegt.
Die Analoge Messung sendet den aktuellen Wasserstand bzw. die Wassermenge zurück.
Equipment
Verwendete Software
Für die Abarbeitung der obgenannten Aufgabestellungen wurde folgenden Software verwendet:
- Arduino Software IDE 1.8.1
- Fritzing
- Tortoise SVN
Verwendete Komponente
Für die Abarbeitung der obgenannten Aufgabestellungen wurde folgenden Komponente eingesetzt:
- Wasserstandsensor K-0135
- Arduino UNO R3 (Elegoo Edition)
Messkette
- Primärsensor
Der Primärsensor ist das K-0135. Trifft Wasser auf die Antennen des Moduls entsteht ein Widerstand. Durch diesen Widerstand lässt sich der Wasserstand ermitteln.
- Verstärker
Der Sensor besitzt ein Verstärkerschaltkreis bestehend aus einem Transistor mit mehreren kammförmig verteilten Antennen.
- Analog-Digital Umsetzer
Der Sensor besitzt kein integrierten A/D-Wandler.
- Bussystem
Für den Sensor wird kein Bussystem benötigt.
- Digitale Signalverarbeitung
Das Ausgangssignal entsteht die Veränderung der Spannung, die mit dem Widerstand der Antennen einhergeht. Diese Messung wird auch als Messung der elektrischen Leitfähigkeit oder Konduktivmessung bezeichnet.
- Bewertung der Sensordaten
Die Widerstandswerte des Wasserstandsensors werden im Sensor bereits berechnet, sodass mit den Werten eine Wasserstandhöhe ermittelt werden kann. Mit einem PC und ein Arduino-Mikrocontroller kann man diese Werte auslesen.
Hardwareaufbau
Datenblätter
Datenblatt des Sensors: K-0135
Schaltplan
Steckplatine
Signalverarbeitung
Da der Sensor bereits korrekte Werte ausgibt ist eine Kennlinie nicht nötig. Die Werte müssen jedoch in eine Maßeinheit umgerechnet werden. Im Falle der Umwandlung in mm reicht es die Werte durch 10 zu teilen.
Wasserstandmessung
Der Wasserstand wird durch den analogen Eingang erfasst. Anhand mehreren durchgeführten Tests hat sich rausgestellt, dass das Modul Änderung in mm Bereich erkennen kann. Diese sind jedoch schwierig zu bewerten, da mehreren Faktoren Einfluss auf die Messung haben.
Einfluss des Einbauwinkels auf die Messung
Je nach nachdem wie der Sensor eingebaut ist, kann die Wasserstandhöhe nicht genau ermittelt werden. Deshalb ist es notwendig, dass das Modul 90° zum Boden ausgerichtet ist.
Restliches Wasser
Sobald der Wasserstand abrupt sinkt, bleibt eine gewisse Menge Wasser auf den Antennen über dem Wasserspiegel. Durch diesen Einfluss ist das sofortige auswerten der Messwerte bei schnellen Veränderung nur bedingt möglich.
Umgang mit der Messunsicherheit
Um Messunsicherheit zu vermeiden, sollte man folgendes beachten:
- den Sensor exakt ausrichten (90°)
- Messwerte verzögert bewerten
- Die Messwerte mit geeigneter Referenz überprüfen
Arduino Quelltext
void loop()
{
/*---------------------------------*/
/* Sensorwerte einlesen */
/*---------------------------------*/
int value = analogRead(0);
/*---------------------------------*/
/* Ausgabe (mm) */
/*---------------------------------*/
Serial.println(value/10);
}
Bewertung des Sensors
Vorteile
- Schnelle Messung
- Berührungslose Messung
- Einfache Bauweise
- Geringe Leistungsaufnahme
- Schnelle Reaktionszeit (Messunsicherheit beachten)
- Geringe Platzbedarf
- Kostengünstig
- Flexibel einsetzbar
Nachteile
- Einbauwinkel ausschlaggebend
- Restwasser auf dem Bauteil
- geringer Messbereich
- keine exakte Bestimmung des Wasserstands möglich
Gesamtfazit
Der Wasserstandsensor ist ein kostengünstiges Modul für kleine Projekte. Reicht der Messbereich aus und sind die Messunsicherheiten zu vernachlässigen, ist der Sensor ein hervorragendes Modul um den Wasserstand zu ermitteln. Mögliche Anwendungsgebiete für den Sensor: Wetterstation, Bewässerungsanlage für Pflanzen, Wassermelder.
Lernerfolg
Für den Auswahl des Sensor wurde ein Sensor gewählt welcher sich bereits im Besitz befand, jedoch noch keiner Beachtung geschenkt wurde. Mit diesem Projekt konnte man sich nun mit dem Sensor befassen und anderes als man es sonst tut, sich viel mehr mit dem Sensor befasst. So werden Messunsicherheiten entdeckt, welche bei der Recherche nicht erwähnt wurden. Während der Vorlesung Sensortechnik, konnte man ein Zusammenhang finden, wie dieser Sensor funktioniert.
YouTube Video
Schwierigkeitsgrad
( ** )
Quellenverzeichnis
→ zurück zur Übersicht: WS 18/19: Sensortechnik (MTR)