Projekt 65: Wasserstandsmessgerät-Aufsatz für Arduino: Unterschied zwischen den Versionen
Zeile 113: | Zeile 113: | ||
<references /> | <references /> | ||
[1]http://www.pepperl-fuchs.com/global/de/25518.htm | [1] http://www.pepperl-fuchs.com/global/de/25518.htm | ||
[2] http://deskfactory.de/arduino-projekt-utraschall-sr-04 | |||
---- | ---- | ||
→ zurück zum Hauptartikel: [[Angewandte_Elektrotechnik_(WS_15/16)|Angewandte Elektrotechnik (WS 15/16)]] | → zurück zum Hauptartikel: [[Angewandte_Elektrotechnik_(WS_15/16)|Angewandte Elektrotechnik (WS 15/16)]] |
Version vom 15. Dezember 2016, 21:32 Uhr
Autoren: Lukas Brexler, Thorsten Drees
Betreuer: Prof. Göbel
→ zurück zum Hauptartikel: Angewandte Elektrotechnik (WS 15/16)
Aufgabe
Entwickeln Sie einen Wasserstandsmessgerät zur Vermessung der Füllhöhe in einem Tank, Ausgabe per Serial Monitor am PC
Erwartungen an die Projektlösung
- Recherche nach bestehenden Lösungen
- Erstellen Sie das System als prototypischen Eigenbau auf einem Proto-Shield für einen Arduino Uno
- Beschaffen Sie die Bauteile
- Realisierung und Erprobung des Aufbaus
- Machen Sie ein spektakuläres Video, welches die Funktion visualisiert.
- Test und wiss. Dokumentation
- Live Vorführung während der Abschlusspräsentation
Schwierigkeitsgrad
Anspruchsvoll (***)
Einleitung
Diese Aufgabe wurde im Rahmen der Lehrveranstaltung "Angewandte Elektrotechnik" im Masterstudiengang "Business & Systems Engineering" vergeben und bearbeitet. Dieser Wiki-Artikel stellt das Vorgehen dar und zeigt den Lösungsweg auf. Dabei wird darauf eingegangen welche Hard- und Software benötigt wird, wie das Wasserstandsmessgerät funktioniert und welche Möglichkeiten zur Verbesserung oder Weiterentwicklung bestehen.
Aufgabenstellung
Die Aufgabe dieser Projektarbeit bestand darin, einen Wasserstandsmessgerät zur Vermessung der Füllhöhe in einem Tank zu entwickeln. Als Plattform soll der Arduino Uno R3 dienen. Der ermittelte Füllstand soll per Serial Monitor am PC ausgegeben werden. Die Auswahl der eingesetzten Sensorik und Messmethode ist dabei vom Projekteam zu wählen.
Theorie
Bei diesem Projekt wurde sich für die Wasserstandsmessung mittels Ultraschall entschieden. Der eingesetzte Ultraschall Sensoren besitzt einen Signalgeber den sogenannten Trigger und einen Messgeber auch Echo genannt. Die Funktion dieser Bauteile kann mit dem Mund und Ohren einer Fledermaus verglichen werden.
Unter Ultraschall wird hoch Frequenz Ton (meistens 40 KHz) verstanden. Ein kurzer Stoß von Tonwellen wird durch den Signalgeber ausgegeben. Dann wartet der Messgeber auf das Echo.
Die Distanz kann nun wie folgt berechnet werden: L = C x T/2
L ist die Länge, C ist die Geschwindigkeit des Schalls in der Luft. Der Zeitunterschied zwischen Senden und Empfangen der Schallwellen durch Signalgeber und Messgeber wird durch T beschrieben. Da wir den Schall in eine Richtung senden und dieser von einem Gegenstand reflektiert den gleichen Weg zurück antritt, wird die Zeit durch zwei geteilt. Die Schall Geschwindigkeit beträgt in einem Raum um 20 Grad Celsius 344 Meter pro Sekunde.
Die Geschwindigkeit des Schalls wird durch die Luftdichte bestimmt, welche sich mit der Temperatur verändert, dazu mehr im Ausblick.[2]
Benötigtes Material
Das zur Lösung der Projektarbeit verwendete Material besteht aus:
- Ultraschallsensor HC-SR04
- Arduino Uno R3
- Arduino Proto-Shield Kit DEV-07914
- 2x Schraubklemmblock 1.50 mm² Polzahl 2 AKZ350/2-5,08-V PTR Grün
- 2x Abzweigkasten (L x B x H) 86 x 86 x 39 mm ABB 2TKA140012G1 Weiß IP65
- 2m Datenleitung 4 x 0.5 mm²
- div. Einzelardern 0.5 mm²
- 1m Rohr durchmesser 50mm mit Abschlusskappe
- Ablasshahn Kunststoff
- Metallgestell aus ITEM Profil
- USB-Kabel Stecker Typ A zu Stecker Typ B
Projektplanung
Um die Übersicht über das Projekt zu behalten, wurde zu Begin ein Projektplan erstellt. Das folgende Abbildung 1 zeigt einen Screenshot dieses Projektplans.
Systemaufbau
Das Gesamt-System kann in drei Teilsysteme unterteilt werden. Dabei stellt der Wassertank das erste, der Arduino Uno R3 mit dem Ultraschallsensor das zweite und die Software das dritte Teilsystem dar.
Wassertank
Bei dem Projekt kommt als Wassertank ein Rohr mit einer Höhe von 48cm und einem Durchmesser von 10 cm zum Einsatz. Am unteren Ende ist dieses Rohr durche eine Abschlusskappe verschlossen. Desweiteren befindet sich am unteren Ende ddes Rohres ein Ablasshahn der es ermöglicht den Wasserstand zu verändern. Dies geschied von unten da bei dem befüllen von oben keine akkurate Messung möglich ist weil das zufließende Wasser den von oben kommenden Ultraschall reflektiert. Der Ultraschallsensor wird am oberen Ende des Rohres eingehängt. Das Rohr befindet sich auf einem Gestell aus ITEM Profilen um einen sicheren Stand zu gewährleisten, sowie den Zugang zum Ablasshahn zu ermöglichen. Insgesammt fasst der Wassertank ein Volumen von 3,8 Litern. Anzumerken ist das der Durchmesser im unterm Bereich (erste 8 cm)ein um 1 cm größeren Durchmesser besitzt. Hierauf wird im Softwareteil genauer eingegangen. Abbildung 2 Zeigt den kompletten Aufbau des Wassertanks mitsamt der verbauten Sensorik.
Arduino UNO R3 und Ultraschallsensor
Als Ultraschallsensor mit der Bezeichnung HC-SR04 zum Einsatz. Dieses Ultraschallmodul arbeitet in einem Distanzrahmen von 3 bis 400 cm. Die maximale Abweichung beträgt hierbei 0,3 Millimeter.
Die technischen Daten sind folgende:
- Reichweite: 3 bis 400 cm
- Betriebsspannung: 5 V DC
- Frequenz: 40 kHz
- Trigger-Pulsweite: 10 µs
- Maximale Abweichung beträgt 0,3mm
Der hier beschriebene Sensor wurde in eine Abzweigdose verbaut wodurch dieser vor Spritzwasser geschützt ist und sich mittels eines Belches an der Abzweigdose einfach am Rohr befestigen lässt.
Die Verbindung zum Proto-Shield des Arduino Uno R3 erfolg mittels einer 4 x 0,5mm² Steuereitung. Der Schaltplan zur Verdrahung des Sensors mit dem Proto-Shield ist in Abbildung 5 zu sehen. Abbildung 6 zeigt den Arduino mit dem fertig verdratetem Proto-Shield. Hier sieht man auch wie dieser in der Abzweigdose verbaut wurde.
Der Arduiuno Uno R3 wurde für das Projekt mit einem Proto-Shield erweitert. Das Proto-Shield hat dabei die Funktion das einfache wechseln bzw. den einfachen ausbau des Arduinos zu ermöglichen. Die von dem Sensor kommende Steuerleitung wird über die am Proto-Shield angelöteten Schraubklemmen angeschlossen daher kann der Sensor schnell gewechselt werden bzw. die länge der Steuerleitung an andere Situationen angepasst werden. Über die USB-Schnittstelle des Arduino wird dieser sowohl mit Spannung versorgt als auch programmiert. Zudem dient diese Verbindung dazu über den Serial Monitor die Füllstandshöhe sowie das aktuelle Volumen des Wassertanks zu übertragen.
Software
Auswertung
Zur Auswertung wurde der Wassertank zunächst mit zwei Litern Wasser gefüllt. Im nächsten Schritt wurde die Füllhöhe mittels Maßband ermittelt. Im nächsten Schritt wurde über den Seriellen Monitor die vom Arduino ermittelte Füllhöhe und das Volumen ausgegeben. Dieser Vergleich zeigt das die Messung korrekt funktioniert. Zudem wurde durch das Füllen des Wassertanks und anschließendes Ablassen des Wassers über den Ablasshahn eine Kennlinie über den Seriellen Plotter erstellt. Dies Zeigt das es auch bei verschiedenen Füllhöhen nicht zu Messfehlern kommt.
Fazit
Aufgabe war es einen Wasserstandsmessgerät zur Vermessung der Füllhöhe in einem Tank zu entwickeln. Die Ausgabe der Füllstandshöhe sollte dabei per Serial Monitor am PC erfolgen. Das entwickelte System ist in der Lage sowohl die Füllhöhe zu ermitteln als auch das vorhandene Flüssigkeitsvolumenen auszugeben. Die Anschlüsse am am Proto-Shield zur Verbindung des Sensors wurden wie gefordet über Schraubklemmen ausgeführt.
Ausblick
Den größten Einfluss auf die Messgenauigkeit besitzt die Lufttemperatur. Nach der Laufzeitmessung des reflektierten Ultraschallimpulses wird wie bereits beschrieben die Entfernung zum Objekt über die Schallgeschwindigkeit berechnet. Mit der Lufttemperatur ändert sich jedoch auch die Schallgeschwindigkeit um 0,17% pro Grad Kelvin. [1] Um das Wasserstandsmessgerät weiter zu verbessern, wäre daher der Einsatz eines zusätzlichen Temperatursensors anzudenken. Dieser passt die Schallgeschwindigkeit, welche zur Entfernungsberechnung genutz wird, zyklisch an die Umgebungstemperatur an.
Youtube-Video
Zu diesem Projekt wurde ein Ergebnisvideo angefertigt. Dieses lässt sich unter dem folgenden Link abrufen [1].
Quellen
[1] http://www.pepperl-fuchs.com/global/de/25518.htm [2] http://deskfactory.de/arduino-projekt-utraschall-sr-04
→ zurück zum Hauptartikel: Angewandte Elektrotechnik (WS 15/16)