NEWS
Erfassung mechanischer Wasserzähler (induktiver Sensor + ESP8266 )
-
Hallo zusammen,
anbei meine Umsetzung einer elektronischen Erfassung eines mechanischen Wasserzählers ohne Impulsausgang o.ä..
Inspiriert haben mich die Beiträge von ruhr70, Schubi und starfish. Ohne deren Beiträge wäre die Umsetzung nicht möglich gewesen.
Ziel des Projekts:
-
Erfassung der Messung des Wasserzählers und Übermittlung an ioBroker.
-
Ermittlung des täglichen Wasserverbrauchs
(- Warnung bei Rohrbruch => noch nicht umgesetzt)
Einkaufsliste:
-
1x induktiver Näherungsschalter Endschalter PNP - NC, TTL kompatibel, LJ12A3 https://www.ebay.de/itm/232176583655
-
1x WeMos D1 MINI - ESP8266 ESP12 NodeMcu Dev-Kit WiFi Modul Board Arduino https://www.ebay.de/itm/252745698566
-
1x DIN-Hutschiene, geschlitzt http://www.mercateo.com/p/108EL-467(2d) … 500mm.html
-
1x Stahlwinkel
-
1x 1 kOhm Widerstand
-
3x 220 Ohm Widerstand
-
1x 100nF Entstör-Kondensator
-
1x Lochrasterplatine 45x39 mm (https://www.pollin.de/p/punktrasterpla … ck-442529)
****Umsetzung:
Hardware:****
Die Positionierung des Näherungsschalters habe ich mittels zweier Hutschienen (geschlitzt) umgesetzt. Das erlaubt eine sehr genaue Positionierung in X- und Y-Richtung. Das Ganze habe ich dann mit einem Stahl-Winkel an der Wand befestigt. Die Positionierung in Z-Richtung erfolgt über das Gewinde bzw. Muttern am Sensor selbst.
Der induktive Näherungsschalter wird mit der 5V Versorgung (braun) und GND (blau) des Wemos versorgt. Der Ausgang des Sensor wird mittels Spannungsteiler an den Eingang D3 des ESPs verbunden. Ursprünglich hatte ich für den Spannungsteiler 1k:2k Ohm berechnet. Aus irgendwelchen Gründen (Bier?!) habe ich jedoch 1k:660 Ohm verwendet. Seltsamerweise funktioniert dies besser als der berechnete Spannungsteiler.
Bei Tests habe ich festgestellt, dass der Zähler am ESP ständig Impulse gezählt hat. Dank meines 30-Jahren alten Oszis war die Ursache schnell gefunden - Störeinflüße auf die umgeschirmten Leitung. Ein Enstörkondensator (100nF) zwischen Eingang und Masse hat hier schnell Abhilfe geschaffen.
Im Schaltplan im Anhang ist ein optischer Sensor dargestellt. Ich habel leider in der Bauteilbibliothek keinen anderen gefunden und selber erstellen wollte ich nicht.
Zunächst habe ich es auf einem Breadboard getestet und später auf eine kleine Platine gelötet. Ok…. ordentliches Platinenlayout und Leiterbahnen ist etwas anderes...
Die ganze Geschichte versorge ich dank des USB-Anschlusses mit einem herkömmlichen Smartphone-USB-Ladegerät.
Zusätzlich habe ich noch zwei LEDs mit zwei GPIOs des ESP verbunden und in ioBroker entsprechende Datenpunkte angelegt. Warum? Weil es funktionert...
Software:
-
ioBroker
-
ESPEasy für den ESP8266 => Installation bzw. Flash gemäß https://www.letscontrolit.com/wiki/inde … are_Upload
Nach dem erfolgreichen Flashen und Einrichtung des Wemos mit ESPEasy habe ich die Eingänge enstprechende konfiguiert. Den Eingang D3 habe ich als "Counter" parametriert. Unter Config sind die Daten des mqtt-Adapters eingetragen. Ich kann ihr nur auf den hervorragenden Thread viewtopic.php?f=35&t=5460 verweisen. Hier wird detailiert beschrieben wie der Adapter und ESPEasy einzurichten sind.
Danach erscheint auch schon der "Counter" als Datenpunkt in den Objekten.
Die Datenpunkte des Counters speichere ich via SQL und berechne mir hieraus auch den täglichen Verbrauch.
! ````
sendTo('sql.0', 'query', 'SELECTid
, (from_unixtime((ts
/ 1000))) AS time,val
FROMioBroker
.ts_number
WHERE (ioBroker
.ts_number
.id
= 28) ORDER BY (from_unixtime((ts
/ 1000))) DESC LIMIT 2', function (result) {
if (result.error) {
console.error(result.error);
} else {
//show result;
//console.log('Rows: ' + JSON.stringify(result.result));
//console.log(result.result[0].time)
//console.log(result.result[0].val)
//console.log(result.result[1].time)
//console.log(result.result[1].val)
var Differenz = (result.result[0].val) - (result.result[1].val);
console.log("Verbraucher letzter Tag: " + Differenz +" l");
setState("javascript.0.WaterCount_Daily_DELTA"/WaterCount_Daily_DELTA/, Differenz);
}
});Die ganze Geschichte funktioniert nun schon eine Woche ohne Probleme. Ein Abgleich mit dem manuellen Zähler hat ergeben, dass der Counter auf den Liter genau zählt. [3428_befestigung_1.jpg](/assets/uploads/files/3428_befestigung_1.jpg) [3428_befestigung_2.jpg](/assets/uploads/files/3428_befestigung_2.jpg) [3428_befestigung_3.jpg](/assets/uploads/files/3428_befestigung_3.jpg) [3428_befestigung_4.jpg](/assets/uploads/files/3428_befestigung_4.jpg) [3428_befestigung_5.jpg](/assets/uploads/files/3428_befestigung_5.jpg) [3428_platine_oben.jpg](/assets/uploads/files/3428_platine_oben.jpg) [3428_platine_unten.jpg](/assets/uploads/files/3428_platine_unten.jpg) [3428_schematic_steckplatine.png](/assets/uploads/files/3428_schematic_steckplatine.png) [3428_schematic_schaltplan.png](/assets/uploads/files/3428_schematic_schaltplan.png)
-
-
Kannst du noch ein wenig genauer beschreiben welche elektronischen Dinge benötigt werden?
-
das ist doch oben alles schön deutlich zu sehen und lesen … sorry.
-
sauber ! auf die idee mit dem sensor muss man erst einmal kommen !
-
Ich tue mich ein wenig schwer mit dem Widerständen und dem Entstör Kondensator.
Ist es egal welche Spannung die Bauteile vertragen. Ich kenn mich mit Elektronik nicht so gut aus, Sorry!
Was genau machst Du mit den Leuchtdioden?
-
Ich tue mich ein wenig schwer mit dem Widerständen und dem Entstör Kondensator.
Ist es egal welche Spannung die Bauteile vertragen. Ich kenn mich mit Elektronik nicht so gut aus, Sorry!
Was genau machst Du mit den Leuchtdioden? `
Spannung ist hier kein Thema. Der Kondensator muss aber keramisch sein, um zu entstören.
Gruß
Christian
-
Ok Danke. Ich werde mich dann mal versuchen.
-
Vielen Dank für die tolle Anleitung!
Reizt mich sehr das nachzubauen
Bekommen am Freitag einen neuen Wasserzähler - mal sehen wie der aussieht.
LG Schubi
-
Sehr schönes Projekt.
Kannst du sagen wie viele Impulse pro m³ bzw. pro Liter da ankommen?
-
Ich tue mich ein wenig schwer mit dem Widerständen und dem Entstör Kondensator.
Ist es egal welche Spannung die Bauteile vertragen. Ich kenn mich mit Elektronik nicht so gut aus, Sorry!
Was genau machst Du mit den Leuchtdioden? `
Bei den Widerständen sollte die Spannung überhaupt kein Problem sein. Der Entstör Kondensator sollte schon > 12 V aushalten.
Was ich mit den LEDs mache? Nichts - die habe ich zum Spaß an andere Ausgänge gelötet und via iobroker dann testweise angesteuert.
Ich habe es gemacht, weil es funktioniert
-
Sehr schönes Projekt.
Kannst du sagen wie viele Impulse pro m³ bzw. pro Liter da ankommen? `
Pro Impuls genau ein Liter. D.h. der Counter im ESP zeigt somit genau die Literzahl an.
Das Teil läuft jetzt fast ein Jahr ohne Probleme. Der Zählerstand entspricht überraschenderweise genau dem Wert in ioBroker. Ein paar Liter hätte ich durchaus erwartet…
Mittlerweile hat sich auch Stromzähler dazugesellt und die Synology logged brav alle 3 Stunden Ping, Down- und Upload des Internetanschlusses
-
Hallo George
Interessantes Projekt!
Trage mich auch schon länger mit dem Wunsch, den Wasserzähler auszulesen. Habe mir jetzt deine Bilder nochmal genauer angesehen, Kann es sein, daß dies so wie dargestellt nur mit diesem "speziellen" Zähler funktioniert, der diese "Halb-Scheibe" auf dem sich drehenden Zeiger hat? Ich könnte mir vorstellen, daß die "herkömmlichen" Zähler mit einfachen Zeigern dafür nicht geeignet sind, weil da nicht genügend Auslöse-Masse für den Abstandssensor zusammenkommt. Und die Zeiger auch viel tiefer im Gehäuse liegen.
Habe trotzdem testhalber einen Sensor bestellt. Mal wieder basteln…
Ingo
-
Nun ja, induktive Sensoren funktionieren nur mit Metallobjekten.
Aber ich denke so speziell ist ein Zähler mit dem Halbkreis nicht. Ist schon üblich…
In den anderen Fällen sollte man mit einem Lichtempfindlichen Sensor arbeiten. Einige Jungs machen das bei alten Stromzählern so. Einfach mal googeln.
-
Ich habe einen Wasserzähler mit solch schwarzem "Zahnrad". Nutze den EX-26A. Der zählt die Zähne, also die Hell-Dunkel-Phasen. Dann nur noch Impulse teilen durch Umdrehungen pro Liter und Zähne pro Umdrehung und schon hat man L/min. Funktioniert auch sehr gut.
-
Ja, die Projekte mit den "Licht-Sensoren" habe ich mir bereits angesehen. Aber schon allein preislich ist ein EX-26A ja in einer ganz anderen Liga als der Näherungsschalter.
-
Ja, die Projekte mit den "Licht-Sensoren" habe ich mir bereits angesehen. Aber schon allein preislich ist ein EX-26A ja in einer ganz anderen Liga als der Näherungsschalter. ` 27€ bei Ali finde ich ok.
-
27€ finde ich auch noch okay. Hatte nur mal auf die Schnelle gegooglet und da kam was von knapp 100€. Waren wohl dann die Preise in D.
-
27€ finde ich auch noch okay. Hatte nur mal auf die Schnelle gegooglet und da kam was von knapp 100€. Waren wohl dann die Preise in D. ` So ist… daher hatte ich meinen bei Ali bestellt. Sind die gleichen die man hier bekommt.
-
Das hört sich nach einer richtig guten Idee an!
Ich habe vor geraumer Zeit überlegt meinen Zähler mit einem optischen Sensor auszustatten. Da der aber in meiner Küche sitzt und viel Streulicht ab bekäme und somit eine gute Isolation verlangen würde, hab ich das Projekt erstmal verschoben. Dann hab ich durch Zufall heute deinen Beitrag gelesen und sofort den Induktiven Sensor bestellt (Hab auch den "Standard" WZ mit metallischer halb-kreis Scheibe für 1000 Pulse/m³).
Ich werde allerdings die Kommunikation über einen nRF24L01 + Arduino implementieren, da ich noch genug Arduinos hier rumliegen habe, die ich erstmal verbrauchen will.
-
Ich habe so eine Wasseruhr.
Klappt das dann mit diesem Sensor nicht?
4720_uhr.jpg