Inhaltsverzeichnis:

Salzstandsmonitor für Wasserenthärter - Gunook
Salzstandsmonitor für Wasserenthärter - Gunook
Anonim
Wasserenthärter Salzstandsmonitor
Wasserenthärter Salzstandsmonitor

Wasserenthärter arbeiten nach einem Verfahren namens Ionenaustausch, bei dem Calcium- und Magnesiumionen aus hartem Wasser über ein spezielles Harz mit Natriumchlorid (Salz) ausgetauscht werden. Das Wasser gelangt in einen Druckbehälter, wo es durch die Harzkügelchen fließt und das Kalzium und Magnesium durch Natrium ersetzt wird. Die Harzkügelchen werden irgendwann erschöpft und können keine harten Mineralien mehr aufnehmen. Beim Auflade- oder Regenerationsprozess wird eine Salzwasserlösung durch die Harzkügelchen geleitet, die die Härtemineralien ablöst und unschädlich in den Abfluss spült. Die Harzperlen bleiben erfrischt und sind bereit, mehr enthärtetes Wasser herzustellen.

Ionenaustauscher-Wasserenthärter gibt es in vielen Formen und Größen, aber alle haben eines gemeinsam: einen Soletank, der alle paar Wochen mit Salz gefüllt werden muss, um eine regelmäßige Versorgung mit weichem Wasser zu gewährleisten. Wasserenthärter sind nicht gerade attraktive Ausrüstungsgegenstände und werden daher an einen unzugänglichen Ort verbannt, sodass ein besonderer Besuch erforderlich ist, um den Salzgehalt zu überprüfen. Meistens kommt der Hinweis zum Hinzufügen von mehr Salz von Haushaltsmitgliedern, die sich über hartes Wasser ärgern. Ein passender Salzstandssensor ist erforderlich, der eine Erinnerung senden kann, wenn der Salzgehalt im Enthärter niedrig ist. In diesem Instructable wird ein Entfernungssensor verwendet, um alle paar Stunden den Salzgehalt im Wasserenthärter zu messen und das Ergebnis auf ThingSpeak zu veröffentlichen. Wenn der Salzstand niedrig wird, sendet ThingSpeak eine Erinnerungs-E-Mail, um den Soletank mit Salz zu füllen. Alle Komponenten für dieses Projekt sind wie gewohnt bei eBay erhältlich, die billigsten Teile kommen aus Asien. Selbst wenn alle Komponenten gekauft werden müssen, werden die Gesamtkosten etwa 10 US-Dollar betragen. Für dieses Projekt sind eine Vielzahl von Fähigkeiten wie Löten oder die Verwendung der Arduino-IDE erforderlich. Alle diese Techniken werden in anderen Instructables behandelt und werden hier nicht wiederholt.

Lieferungen

AA BatteriehalterVL53L0X Bereichsmodul BAT43 Shottky Diode 100nF Kondensator 2 x 5k Widerstände 2 x 470 Ohm Widerstände FT232RL Serielles Adaptermodul AA Lithium Thionyl Chloride Batterie ESP-07 Mikrocontroller Modul Kleinigkeiten, Kabel, Box etc.

Schritt 1: Salzstandsdetektor

Salzstandsdetektor
Salzstandsdetektor

Ein VL53L0X wird verwendet, um die Salzoberfläche im Wasserenthärter zu erfassen. Der Sensor funktioniert, indem er einen Lichtimpuls aussendet und die Zeit misst, die es braucht, um zurück zu reflektieren. Die besten Ergebnisse erzielen Sie, wenn Sie im Dunkeln eine weiße reflektierende Oberfläche verwenden, genau das, was wir im Salzbehälter haben. Der Sensor selbst ist sehr klein und schwer zu handhaben. Als solches kann es als Modul mit einer I2C-Schnittstelle gekauft werden. Dies macht es viel einfacher, sich mit anderen Mikrocontrollern wie dem Arduino oder Raspberry Pi zu verbinden. Da die Laser- und Sensorfenster sehr klein sind, wird eine Schicht Frischhaltefolie verwendet, um zu verhindern, dass Schmutz das Gerät blockiert das Modul. Dies wurde erreicht, indem das Modul während des Lötens mit dem Sensor nach unten auf ein Stück Holz gelegt wurde, um zu verhindern, dass Löt- oder Drahtkontakthöcker auf der Sensorseite bilden.

Schritt 2: Programmierung des ESP-07

Programmierung des ESP-07
Programmierung des ESP-07

Die Absicht war, den Salzstandsmonitor batteriebetrieben zu machen, und so wurde eine Barebone-Version des ESP8266-Chipmoduls gewählt, um den Standby-Strom zu minimieren und eine Batterielebensdauer von mindestens einem Jahr zu erreichen. Im Gegensatz zu einigen der anspruchsvolleren Versionen, die Spannungsregler und eine USB-Schnittstelle enthalten, müssen dem in diesem Projekt verwendeten ESP-07 einige zusätzliche Komponenten hinzugefügt werden. Ein serieller Adapter wird vorübergehend verdrahtet, um den ESP-07 zu flashen und zu überwachen die serielle Schnittstelle während des Tests. Denken Sie daran, dass der serielle Adapter entfernt wird, sobald wir zufrieden sind, dass alles richtig funktioniert, machen Sie ihn nicht zu solide. Aus irgendeinem Grund mussten die SDA- und SCL-Leitungen vertauscht werden, damit der Sensor funktioniert. Vielleicht eine Eigenart der chinesischen Fertigung?Eine Lithium-Thionylchlorid-Batterie wird verwendet, um dieses Projekt mit Strom zu versorgen. Die AA-Größe dieser Batterie hat eine konstante Spannung von 3,6 V und eine Kapazität von 2600 mAh, ideal für die Stromversorgung des ESP-07. Diese Batterien finden Sie im Batteriefachhandel, jedoch nicht im üblichen Fachhandel. Ich denke, sie wagen es nicht, die breite Öffentlichkeit auf eine Batterie mit doppelter Spannung loszulassen!

Wenn das ESP-07 hochfährt, machen die Pins seltsame Dinge, bis es die Startroutine beendet. Als Sicherheitsmaßnahme sind in den Anschlüssen zu den Modulausgängen Widerstände enthalten, um schädliche Ströme zu vermeiden. Die Arduino-Skizze für dieses Projekt ist in der Textdatei beigefügt. Wie üblich müssen Sie es mit Ihren eigenen Router-Anmeldeinformationen und einem API-Schlüssel von Ihrem ThingSpeak-Konto bearbeiten. Außerdem wird eine statische IP-Adresse verwendet, um die WLAN-Verbindungszeit zu beschleunigen und Strom zu sparen. Dies kann bedeuten, dass die IP-Adressen geändert werden, damit sie zu Ihrem Netzwerk passen. Beachten Sie, dass in der IP-Adresse Kommas und kein Punkt verwendet werden! Es gibt eine Vielzahl von Informationen im Internet zum Flashen und Verwenden des ESP8266, wenn Sie weitere Hilfe benötigen. Zusammenfassend läuft das Flashen wie folgt ab:

Starten Sie die Arduino IDE auf dem PC und stellen Sie sicher, dass die ESP8266-Platine installiert und ausgewählt istSie müssen möglicherweise die Bibliotheken für den Sensor und WiFiLoad in der unten angehängten Monitorskizze installieren und nach Bedarf ändernÜberprüfen Sie die Skizze, die fehlerfrei kompiliert wird Verbinden Sie GPIO0 über einen 5k-Widerstand mit Masse Batterie in die Halterung einstecken USB-Adapter einsteckenCode hochladen, um zu überprüfen, ob sie richtig angeschlossen istEntfernen Sie die Batterie und entfernen Sie dann die GPIO0-Verbindung. Starten Sie den seriellen Monitor und ersetzen Sie die BatterieSie sollten mit den seriellen Ausdrucken aus der Skizze begrüßt werden, bevor das Modul in den Ruhezustand geht

Eine Reduzierung der Zykluszeit auf etwa 20 Sekunden erleichtert das Debugging erheblich. Abhängig von Ihrem Router muss die Verbindungszeit möglicherweise angepasst werden, um eine zuverlässige Verbindung herzustellen. Wenn alles funktioniert, kann der USB-Adapter entfernt und der Monitor für den Service verkabelt werden.

Schritt 3: Endgültige Verkabelung

Endverkabelung
Endverkabelung

Wenn wir denken, dass der Monitor so eingerichtet ist, wie es uns gefällt, kann die Verkabelung wie auf dem Bild aufgeräumt werden. Die rote Betriebs-LED sollte entfernt werden, da dies während des Tiefschlafs Strom verbraucht. Es kann mit einem Schraubendreher vorsichtig abgeklopft oder abgelötet werden. Wenn das WLAN-Signal auf der niedrigen Seite ist, kann die Reichweite durch den Anschluss einer externen Antenne verbessert werden. In diesem Fall muss die Verbindung zur Keramikantenne wie die LED entfernt werden. Wird das ESP-07 ohne Keramik-Antennen-Link betrieben, muss immer eine externe Antenne angeschlossen sein.

Schritt 4: Installation des Sensors

Installation des Sensors
Installation des Sensors
Installation des Sensors
Installation des Sensors

Der Sensor muss oberhalb des höchsten Salzniveaus im Soletank montiert werden. Bei dieser Installation erwies sich der Deckel des Wasserenthärters als bequemer Ort, um den Sensor zu positionieren. In den Deckel ist ein kleines Loch gebohrt, damit der Sensor den Salzstand sehen kann. Da das Solegemisch sehr korrosiv ist, wird eine Schicht Frischhaltefolie verwendet, um das Loch abzudecken und den Sensor zu schützen. Akku und ESP-07 können auch neben dem Sensor auf dem Deckel montiert werden. Es besteht immer die Möglichkeit, eine externe Antenne anzuschließen, wenn sich die WLAN-Signalstärke als gering herausstellt nur oben auf den Deckel geklebt, da der Wasserenthärter in einem Schrank versteckt war. In exponierteren Situationen wäre ein geeignetes Gehäuse erforderlich.

Schritt 5: Akkulaufzeit

Batterielebensdauer
Batterielebensdauer
Batterielebensdauer
Batterielebensdauer

Um die Akkulaufzeit abzuschätzen, müssen wir den Standby-Strom und den Strom messen, wenn der Monitor wach ist. Dies erwies sich als ziemlich schwierig, da das ESP-07 bei Änderungen wie dem Ändern von Meterbereichen leicht blockieren kann. Die endgültige Lösung bestand darin, einen 0,1-Ohm-Widerstand in das Stromkabel einzufügen und den Strom während der Wachphase mit einem Oszilloskop zu messen. Jede Messung dauerte 6,7 Sekunden mit einem durchschnittlichen Strom von 77mA. Der Ruhestrom wurde gemessen, indem eine Diode und ein 5k-Widerstand parallel in das Stromkabel geschaltet wurden. Die Diode führt den Weckstrom, aber der niedrige Standby-Strom wird vom Widerstand getragen. Dies ergab einen Standby-Strom von 28,8 µA. Die Ruhezeit im Programm ist zwischen den Messungen auf ca. 1 Stunde eingestellt. Über ein Jahr verbraucht der Monitor 250 mAh im Standby und 1255 mAh im Wachzustand oder 1505 mAh insgesamt. Der in diesem Monitor verwendete 2600-mAh-Akku sollte locker über ein Jahr halten. Die Akkulaufzeit kann durch weniger häufiges Messen des Salzgehalts noch verlängert werden. Leider kann die Sleep-Zeit des ESP-07 nicht ohne weiteres länger als etwa eine Stunde gemacht werden. Eine Möglichkeit, dieses Problem zu umgehen, besteht darin, das ESP-07 stündlich aufzuwecken und dann sofort wieder in den Ruhezustand zu versetzen. Es besteht die Möglichkeit, das Modem nicht aufzuwecken, und die Tabelle zeigt, dass dies den Stromverbrauch halbiert. Durch die Messung des Salzgehalts nur 4 Mal am Tag können wir eine Batterielebensdauer von etwa 5 Jahren erwarten. Der folgende Code verwendet den ESP8266 RTC-Speicher, um zu speichern, wie oft das Modul im Tiefschlaf war. In dieser Skizze gibt es 6 Schlafphasen, bevor eine Messung durchgeführt wird, was 7 Stunden zwischen den Messungen ergibt. Dies kann natürlich auf Ihre Anwendung abgestimmt werden. Lassen Sie die Batterie immer fest einrasten, eine unterbrochene Verbindung kann das ESP-07 blockieren und die Batterie entladen. Die Batterie sollte mehrere Jahre halten, bevor sie mit diesen längeren Ruhezeiten ausgetauscht wird. Auch hier ist es am besten, das Modul mit 10 Sekunden Schlaf zu testen, 7 Stunden sind eine lange Zeit, um zu warten, um zu überprüfen, ob es funktioniert…

Schritt 6: Salzgehaltstabelle

Salzgehaltstabelle
Salzgehaltstabelle

Die beiden Diagramme zeigen den Salzgehalt im Wasserenthärter und die WLAN-Signalstärke, ein nützliches Tool zur Fehlersuche. Die Regeneration dieses Wasserenthärters ist zählergesteuert und als Doppeltank-Modell können die Tanks zu jeder Tageszeit umgeschaltet werden. Die Salzgehaltstabelle zeigt an, wann die Regeneration stattgefunden hat und die Zeit zwischen den Regenerationen gibt eine Vorstellung vom Wasserverbrauch. Dieser Monitor zeigt nicht nur an, wenn mehr Salz benötigt wird, sondern kann bei einem dosierten Enthärter auch auf übermäßigen Wasserverbrauch hinweisen. Der VL53L0X hat eine Reichweite von bis zu ca. 2 m, abhängig von der reflektierenden Oberfläche. Andere Anwendungen sind möglich, wie die Überwachung von Öl- oder Wassertankständen, bei denen sich die Tiefe im Laufe der Zeit langsam ändert.

Schritt 7: E-Mail-Erinnerung

E-Mail-Erinnerung
E-Mail-Erinnerung

Erinnerungs-E-Mails über niedrige Salzkonzentrationen können von ThingSpeak gesendet werden. Dazu müssen zwei Apps über das APPS-Menü eingerichtet werden. Die erste ist eine MATLAB-Analyse, die eine E-Mail erstellt und sendet, wenn der Salzgehalt einen definierten Grenzwert überschreitet. Die andere App ist eine TimeControl, bei der Sie entscheiden können, wie oft der Salzgehalt überprüft werden soll. Die Einrichtung der TimeControl-App ist recht intuitiv, in diesem Fall wird der Salzgehalt täglich durch Ausführen der MATLAB-Analyse überprüft. Eine nörgelnde E-Mail wird täglich gesendet, sobald der Salzgehalt den niedrigen Wert erreicht. Die in diesem Instructable verwendete MATLAB-Analyse ist unten angehängt. Es muss mit Ihrer eigenen Kanal-ID und ApiKey aktualisiert werden. Außerdem muss der Mindestsalzstand für Ihren Tank in die 'if'-Anweisung eingefügt werden. Hoffentlich bietet dies genügend Details, um E-Mails zu empfangen, ohne sich in die Feinheiten der ThingSpeak-Codierung vertiefen zu müssen.

Empfohlen: