Inhaltsverzeichnis:
- Schritt 1: Materialien sammeln
- Schritt 2: Bauen Sie die Schaltung auf
- Schritt 3: Testen Sie die Schaltung
- Schritt 4: Kalibrieren Sie Ihren Sensor, um Vibrationen zu erkennen
- Schritt 5: Erstellen Sie eine Umgebungsanzeige
- Schritt 6: Verwenden Sie Sensordaten, um das Display zu steuern
- Schritt 7: Montieren Sie den Sensor und das Display auf eine Wasserleitung
- Schritt 8: Zukünftige Vorschläge
Video: Kostengünstiger Wasserdurchflusssensor und Umgebungsanzeige - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:22
Wasser ist ein kostbares Gut. Millionen von Menschen haben keinen Zugang zu sauberem Trinkwasser, und täglich sterben bis zu 4000 Kinder an wasserverseuchten Krankheiten. Dennoch gehen wir weiterhin verschwenderisch mit unseren Ressourcen um. Das übergeordnete Ziel dieses Projekts ist es, ein nachhaltigeres Wassernutzungsverhalten zu motivieren und das Bewusstsein für globale Wasserprobleme zu schärfen. Dies ist eine Anleitung, wie man den Wasserfluss in einem Rohr grob erkennt und eine Umgebungsanzeige ansteuert. Ich verwende einen Piezo-Wandler, einige LEDs und ein Arduino. Das Gerät ist ein grober Prototyp dessen, was schließlich zu einer überzeugenden Technologie werden wird, die zu nachhaltigem Verhalten motiviert und das Bewusstsein für den Wasserverbrauch schärft. Dies ist ein Projekt von Stacey Kuznetsov und Eric Paulos vom Living Environments Lab des Human Computer Interaction Institute der Carnegie Mellon University. Produziert von Stacey [email protected]://staceyk.orgEric [email protected]://www. paulos.net/Living Environments Labhttps://www.living-environments.netDas Video unten veranschaulicht eine frühere Version dieses Projekts, bei der ein Mikrofon anstelle eines Piezoelements verwendet wird, um den Wasserfluss zu erkennen. Sie werden eine bessere Leistung erzielen, wenn Sie einen Piezo-Wandler verwenden, daher wird in dieser Anleitung der Piezo-Ansatz detailliert beschrieben. Besonderer Dank geht an Briam Lim, Bryan Pendleton, Chris Harrison und Stuart Anderson für die Hilfe bei Ideen und Gestaltung dieses Projekts!
Schritt 1: Materialien sammeln
Sie benötigen: - Steckbrett - Mikrocontroller (ich habe einen Arduino verwendet) - Mastix - Piezo-Wandler (https://www.radioshack.com/product/index.jsp?productId=2062402) - Ein paar LEDs (ich habe 2 gelbe verwendet, 2 rote, 2 grüne)- Kerzenhalter oder ähnlich großer Behälter- Draht- 1 MOhm (oder anderer großer Wert) Widerstand- 4,7K Widerstände (3)- 1K Widerstände (1)- Niederwertige Widerstände (für die LEDs)- Clipping-Drähte - Jumper-Drähte - Mastic- Operationsverstärker (LM613)
Schritt 2: Bauen Sie die Schaltung auf
Die Schaltung besteht aus einem Verstärker zur Anhebung des Piezosignals und einem Spannungsteiler zur Anhebung der Basisspannung. Zwischen den beiden Eingängen des Piezos befindet sich ein hochohmiger Widerstand, der als Pull-Down-Widerstand für das Signal dient.
Schritt 3: Testen Sie die Schaltung
Befestigen Sie den Piezo an der Schaltung und schließen Sie das Arduino an. Der Spannungsteiler stellt die Basisspannung auf 2,5 V ein, sodass die Basiswerte für das Signal am analogen Arduino-Pin etwa 512 betragen sollten (auf halbem Weg zwischen 0 und 1023). Meine schwankt um +/-30 um 520. Sie können einige Schwankungen um diese Zahl herum feststellen.
Schritt 4: Kalibrieren Sie Ihren Sensor, um Vibrationen zu erkennen
Wenn der Hahn aufgedreht wird, erzeugen die Schwingungen des Rohres das Piezo, um einen schwankenden Strom zu erzeugen. Da sich der Basiswert um 520 verjüngt, können Sie eine Amplitude um diese Zahl herum berechnen, um Vibrationen zu erkennen. Mein Schwellenwert ist auf 130 eingestellt, aber Sie können diesen abhängig von den Vibrationsarten, die Sie wahrnehmen möchten, und der Empfindlichkeit Ihres speziellen Piezo-Stücks erhöhen oder verringern. Um das Signal zu testen, verwenden Sie Mastix, um das Piezo auf einer ebenen Oberfläche zu befestigen. Versuchen Sie, an verschiedenen Stellen auf die Oberfläche zu tippen oder zu kratzen und unterschiedliche Intensitäten zu sehen, um zu sehen, welche Art von Messwerten Sie auf dem Arduino erhalten. Um das Rauschen zu reduzieren, empfehle ich, einen gleitenden Durchschnitt der Eingabe zu berechnen. Dies ist eine grobe Methode zur Bestimmung der Wellenamplitude, die Fehlalarme aufgrund zufälliger statischer Ströme vermeidet. Es können auch fortgeschrittenere Methoden wie FFT verwendet werden. // Sample Codeint sensor = 2; // Analoges inint val = 0; // Aktueller Messwert für analoges Pinint avg; // Laufender Durchschnitt der Wellenamplitudeint MIDPOINT = 520; // Base readingvoid setup () { Serial.begin (9600); Durchschnitt = MITTELPUNKT; // Durchschnitt am Mittelpunkt einstellen} ungültige Schleife () { val = analogRead (Sensor); // Wellenamplitude berechnen if (val > MIDPOINT) { val = val - MIDPOINT; aufrechtzuerhalten. Sonst { val = MITTELPUNKT - val; } // Berechnen des laufenden Durchschnitts für die Amplitude avg = (avg * 0.5) + (val * 0.5); if (avg > 130) {// Vibration erkannt! Serial.println("TAP"); Verzögerung (100); // Verzögerung, um sicherzustellen, dass der serielle Port nicht überlastet ist }}
Schritt 5: Erstellen Sie eine Umgebungsanzeige
Wenn Ihr Sensor ordnungsgemäß funktioniert, können Sie eine Umgebungsanzeige hinzufügen, um die Informationen anzuzeigen. Meine LEDs sind so gekoppelt, dass jede Farbe von zwei LEDs beleuchtet wird. Verbinden Sie dazu die 'in' (kurze) Leitung jeder Farbe zusammen und verwenden Sie einen niederohmigen Widerstand, bevor Sie ihn mit dem Arduino verbinden. Verbinden Sie das (längere) Erdungskabel aller LEDs und befestigen Sie es an der Masse des Arduino. Sobald die LEDs angeschlossen sind, verwenden Sie den Kerzenhalter, um das Display unterzubringen. Da der Kerzenhalter aus Aluminium besteht, sollten Sie vor dem Einsetzen der LEDs einen Isolator, z. B. ein Stück Plastik, auf den Boden des Behälters legen, um einen Kurzschluss des Stromkreises zu vermeiden.
Schritt 6: Verwenden Sie Sensordaten, um das Display zu steuern
Ich brauche etwa 10 Sekunden, um meine Hände zu waschen. Daher habe ich das Display so programmiert, dass die ersten 10 Sekunden nach dem Einschalten des Wasserhahns ein grünes Licht angezeigt wird. Nach 10 Sekunden leuchten die gelben LEDs auf. Das Display wird rot, wenn das Wasser nach 20 Sekunden eingeschaltet bleibt, und beginnt das rote Licht zu blinken, wenn der Wasserhahn 25 Sekunden oder länger läuft. Verwenden Sie Ihre Fantasie, um alternative Anzeigen zu erstellen!
Schritt 7: Montieren Sie den Sensor und das Display auf eine Wasserleitung
Verwenden Sie Mastix oder Ton, um den Piezo am Wasserhahn zu befestigen, und eine weitere Schicht Mastix, um das Display oben zu befestigen. Möglicherweise müssen Sie Ihre Schwellenamplitude oder Ihren „MIDPOINT“ab Schritt 4 neu einstellen. Das Signal kann auch durch die Temperatur leicht beeinflusst werden des Rohres.
Schritt 8: Zukünftige Vorschläge
Sie können den Arduino mit einer Batterie betreiben. In einem kommenden Tutorial erfahren Sie, wie Sie dieses Display betreiben, indem Sie Strom direkt aus dem fließenden Wasser selbst beziehen oder die Umgebungslichtenergie nutzen!
Empfohlen:
Ein kostengünstiger IoT-Luftqualitätsmonitor basierend auf RaspberryPi 4: 15 Schritte (mit Bildern)
Ein kostengünstiger IoT-Luftqualitätsmonitor auf Basis von RaspberryPi 4: Santiago, Chile, hat während eines winterlichen Umweltnotstands das Privileg, in einem der schönsten Länder der Welt zu leben, aber leider sind es nicht nur Rosen. Chile leidet während der Wintersaison sehr unter Luftverschmutzung, Mai