Watermeter toevoegen aan Domoticz

De meterstanden van stroom en gas kunnen we eenvoudig met Domoticz uitlezen. Hoe mooi zou het zijn als dit ook met de watermeter zou kunnen. Er zijn dure aanvullingen voor de watermeter te bestellen die de pulsen uitlezen, maar met een simpele inductieve sensor kom je een heel eind.

Hoe werkt het
Op de watermeter zit een schijfje dat bij iedere liter water éénmaal rond draait. Op dat schijfje zit een half maantje van metaal. De inductieve sensor wordt boven het draaischijfje gemonteerd en iedere keer als er een rondje gedraaid is wordt er een signaal naar Domoticz gestuurd dat er één liter water verbruikt is.

Inductieve NPN sensor (type: LJ12A3-4-Z/BX-5V)

Inductieve NPN sensor
De inductieve sensor, hierna te noemen als NPN sensor, heeft 3 aansluitdraden (bruin/zwart/blauw). Deze moeten met de GPIO header pins van de Raspberry Pi verbonden worden. Voor deze montage kun je het beste Dupont female connectoren aan de 3 draden monteren/solderen.

Dupont female header pins

Sensor aansluiten op GPIO header pinnen
– De blauwe draad wordt op een GND-pin (bv. pin 39) aangesloten,
– De zwarte draad op een GPIO (bv. GPIO 21 = pin 40) en
– De bruine draad op een 5V-pin (pin 2 of 4).

De NPN sensor (type: LJ12A3-4-Z/BX-5V) heeft een detectie afstand van 4mm en werkt op een spanning van 6 – 36 Volt. Op de 5 Volt van de Raspberry Pi werkt de sensor prima, maar de lage spanning kan de detectieafstand inperken. De sensor is al verkrijgbaar voor zo’n € 2,53.

De NPN sensor is ook een beschikbaar met een 8mm detectie afstand. De specificaties van de LJ18A3-8-Z/BX-5V sensor zijn hetzelfde als de hierboven beschreven sensor. Echter, de prijs van de sensor is zo’n € 3,66, ongeveer de helft hoger ten opzichte van de 4mm versie.

Inductieve NPN sensor (type: LJ18A3-8-Z/BX-5V)

Sensortest
Zodra de NPN sensor op de Raspberry Pi aangesloten is houd je het blauwe uiteinde van de sensor tegen een stukje metaal aan. Als de sensor goed is aangesloten zal de led bovenop de sensor gaan branden. Vervolgens houd je de sensor boven het draaischijfje van de watermeter met het halve metalen maantje. Ook nu zou de led op de sensor moeten branden zodra het metalen gedeelte van het draaischijfje exact onder de sensor zit.

Mocht de sensor niet reageren, kan het zijn dat het glas van de watermeter te dik is om de draaischijf te detecteren. Het blauwe uiteinde van de sensor kan wat dunner gemaakt worden door deze wat weg te snijden/schuren. Snij of schuur net zoveel weg totdat de sensor het draaischijfje detecteert.

Sensor plaatsen
Zodra de NPN sensor het draaischijfje goed detecteert is het tijd om de NPN sensor definitief op de watermeter de plaatsen. Belangrijk is dat de sensor recht boven het metalen draaischijf geplaatst wordt en zich zo dicht mogelijk boven het schijfje bevindt. Hieronder zie je een montage met een beugel. Het voordeel is dat dit een zgn. non-destructieve manier is om de sensor te plaatsen. Misschien is deze montage niet de charmantste, maar het heeft wel mijn voorkeur.

Goede manier om de sensor boven de watermeter te plaatsen

Sensor in deksel
Een alternatief voor plaatsing van de sensor is deze in het deksel van de meter te monteren. Boor een gat in het deksel van de watermeter, monteer de sensor exact boven het draaischijfje (dit komt erg nauwkeurig) en draai de sensor vast met de twee meegeleverde moeren. Op zich is dit een mooie manier van plaatsen, maar er moet wel een gat geboord worden in het deksel dat eigendom is van de provider. Ik heb geprobeerd een los dekseltje te bestellen, maar dat is erg lastig… bijna onmogelijk. Bovendien kan het deksel oplichten als de kabel door zijn gewicht een beetje ‘leunt’. Dan bevindt de sensor zich niet meer direct boven het draaischijfje. Op onderstaande afbeelding zie je dat het deksel met plakband dichtgehouden wordt.

Sensor in Domoticz
Uiteraard wil je in Domoticz zien hoeveel water je dagelijks verbruikt. Hiervoor moet je in Domoticz een RFXMeter sensor aanmaken. Dit doe je door middel van JSON:

http://192.168.2.152:8080/json.htm?type=createvirtualsensor&idx=29&sensorname=Water&sensortype=113

Uiteraard moet je het IP adres en het poort nummer aanpassen naar de waarde van jouw Raspberry Pi. Het is daarom handig om de Pi een vast IP-adres te geven.

Als het goed is krijg je nu een melding in de Domoticz browser te zien dat de sensor aangemaakt is en welk idx de sensor heeft gekregen. Het idx-nummer hebben we bij de volgende stap nodig:

http://192.168.2.152:8080/json.htm?type=setused&idx=178&name=RFXMeter&switchtype=2&used=true

Mijn sensor had idx 178 gekregen, maar dit moet je dus aanpassen naar de waarde die je bij de vorige stap hebt gezien. Als het allemaal goed gegaan is krijg je onderstaande sensor (uiteraard met 0 liter) te zien onder Utility-tabblad:

Python script
Met het meegeleverde Python script lees je de GPIO uit en schrijf je iedere verbruikte liter water via JSON naar Domoticz.

Je huidige stand van de watermeter kun je in het script op regel 9 invullen bij “Counter”. Op regel 12 vul je het IP adres en het poort nummer van de Raspberry Pi in en op regel 14 het idx-nummer van de zojuist aangemaakte RFXMeter sensor. Indien je de sensor op GPIO 21 (pin 40) hebt aangesloten dan hoef je verder niets meer aan te passen in het Python script. Mocht je een andere GPIO gebruiken dan moet je overal waar “40” staat de waarde vervangen door de door jou gebruikte pin. Plaats het script in de folder /home/pi/domoticz/scripts/.

Meterstand
De meterstand wordt bijgehouden in het bestand meterstand.txt. Hierdoor blijft de meterstand behouden bij een herstart van de Raspberry Pi (zonder dit bestand zou de meterstand telkens op 0 springen). Mocht de meterstand in Domoticz een keer, om wat voor reden dan ook, niet meer juist zijn dan kun je het bestand meterstand.txt aanpassen naar de juiste waarde. Bij de eerstvolgende update van de sensor is dit in Domoticz zichtbaar.

Crontab
Om het script automatisch te laten draaien gaan we een cronjob aanmaken in de crontab. Open de crontab met onderstaand commando:

sudo crontab -e

Nu de crontab van de root-user geopend is voeg je onderstaande regel toen:

@reboot /usr/bin/python /home/pi/domoticz/scripts/watermeter.py >/var/log/cronlog.log 2>&1

Sluit de crontab met “CTRL X” en bevestig dat je de wijziging wilt opslaan. Vanaf nu wordt het script automatisch na iedere reboot gestart. Om te controleren of het script daadwerkelijk gestart is kun je onderstaand commando ingeven:

grep cron /var/log/syslog

In het overzicht wat je te zien krijgt moet de regel staan die je toegevoegd hebt aan de crontab. Mocht dat niet het geval zijn, dan kun je het script eventueel handmatig start, om te zien of het goed draait:

sudo python /home/pi/domoticz/scripts/watermeter.py

Vanaf nu kun je het waterverbruik in Domoticz monitoren!

Have A Nice Day!

Geef als eerste een reactie

Laat een reactie achter

Het e-mailadres wordt niet gepubliceerd.


*