Acquisition des infos d'un compteur d'eau.

Forum dédié au protocole MQTT : fonctionnement, intégration ...
Pour les questions concernant le plugin de FlyingDomotic, merci d'utiliser le sous-forum dédié.
Ian22
Messages : 34
Inscription : 23 juil. 2021, 13:49

Re: Acquisition des infos d'un compteur d'eau.

Message par Ian22 »

Oui, j'ai fait et refait tout çà plusieurs fois mais rien. Le problème est qu'après la création du matériel, le wiget n'est pas créé et je n'ai rien dans les dispositifs. Je pense que je vais restaurer domoticz avec une sauvegarde du mois dernier, je verrai si c'est mieux !
Merci de ton aide,

Ian.
pierrotori
Messages : 821
Inscription : 29 févr. 2016, 12:11

Re: Acquisition des infos d'un compteur d'eau.

Message par pierrotori »

voici mon expérience après l'acquisition d'une antenne rtl sdr
je suis en docker, voici mon docker compose

Code : Tout sélectionner

# https://hub.docker.com/r/wmbusmeters/wmbusmeters
services:
  wmbusmeters:
    image: wmbusmeters/wmbusmeters:latest
    container_name: wmbusmeters
    privileged: true
    volumes:
      - /home/pi/wmbusmeters:/wmbusmeters_data
      - /etc/localtime:/etc/localtime:ro
      - /dev/bus:/dev/bus:ro
      - /dev/serial:/dev/serial:ro
      - /var/log:/wmbusmeters_data/logs
    mem_limit: 12m
    mem_reservation: 6m
    logging:
      driver: none
    restart: always
mon fichier de configuration wmbusmeter

Code : Tout sélectionner

loglevel=normal
device=rtlwmbus:868.9M
donotprobe=/dev/ttyUSB0;/dev/ttyACM0;/dev/ttyAMA0
logtelegrams=false
format=json
meterfiles=/wmbusmeters_data/logs/meter_readings
meterfilesaction=overwrite
meterfilesnaming=name
meterfilestimestamp=day
meterfilesaction=overwrite
logfile=/wmbusmeters_data/logs/wmbusmeters.log
pollinterval=120s
et le fichier de config meter du compteur

Code : Tout sélectionner

name=diehl_61
id=XXXXXXXX
key=NOKEY
driver=izar
shell=/usr/bin/mosquitto_pub -h localhost -t domoticz/in -m "{\"idx\":621,\"svalue\":\"$METER_TOTAL_M3\"}"
shell=/usr/bin/mosquitto_pub -h localhost -t domoticz/in -m "{\"idx\":620,\"svalue\":\"$METER_TOTAL_L\"}"
le json du compteur

Code : Tout sélectionner

{
    "_":"telegram",
    "media":"water",
    "meter":"izar",
    "name":"",
    "id":"211aee8d",
    "last_month_total_m3":767.813,
    "remaining_battery_life_y":8.5,
    "total_m3":881.167,
    "transmit_period_s":8,
    "current_alarms":"no_alarm",
    "last_month_measure_date":"2024-01-01",
    "manufacture_year":"2018",
    "prefix":"C18FA",
    "previous_alarms":"no_alarm",
    "serial_number":"542221",
    "timestamp":"2024-12-21T16:57:43Z"
}
j'ai bien l'index dans domoticz mais l'eau reste à zero en remontant la variable $METER_TOTAL_L dans domoticz
Avez vous fait des formules avant sur la variables ?
De plus la cpu est passée de 2% à 25%, peut on ajouter dans donotprobe des drivers supplémentaires ou affiner le driver dans device pour limiter la consommation CPU?
Ian22
Messages : 34
Inscription : 23 juil. 2021, 13:49

Re: Acquisition des infos d'un compteur d'eau.

Message par Ian22 »

Bonjour,

Et si tu ajoutes

calculate_total_l=total_m3

dans ton fichier config meter ?


Bonne nuit !
pierrotori
Messages : 821
Inscription : 29 févr. 2016, 12:11

Re: Acquisition des infos d'un compteur d'eau.

Message par pierrotori »

ca marche avec l'ajout des variables merci

j'ai l'eau en 881511 en l/min l'index qui est 881.511 pour l'index, vous avez ajouté d'autres fonctions pour avoir la conso instantanée par exemple ?
Ian22
Messages : 34
Inscription : 23 juil. 2021, 13:49

Re: Acquisition des infos d'un compteur d'eau.

Message par Ian22 »

Salut,

Je suppose que tu as deux widgets, qui correspondent chacun à une des lignes de shell de ton fichier config meter. La première ligne, index 621, ne sert à rien. Si tu la supprimes, le widget restant te donnera l'index de ton compteur en m³, le timestamp et le type de compteur utilisé pour le device (rfx meter). Dans le bandeau en haut du widget, tu auras la consommation journalière de ton compteur calculée à partir de 0h00. C'est pour cà que tu vois 0 liter tant que tu n'as pas reçu d'info.

Pour ce qui est de la conso CPU, quel est ton matériel ? Et ton système ? J'utilise un Rpi 3B+ et Arch Linux. C'est un quad core et un des coeurs est chargé à 92% par le processus wmbus. La moyenne de conso est d'environ de 25%. Çà me semble correct. J'ai plusieurs applis qui tournent 24/24 et le Rpi tourne bien. Dans la doc de wmbusmeters, il est précisé que pour diminuer la conso Cpu, on peut préciser "listento=t1" par exemple. J'ai essayé mais pas vu de différence notable.

Bonne journée,

Ian
pierrotori
Messages : 821
Inscription : 29 févr. 2016, 12:11

Re: Acquisition des infos d'un compteur d'eau.

Message par pierrotori »

pour les widget j'ai ca
compteur_water.png
compteur_water.png (15.66 Kio) Consulté 2134 fois
pour la cpu j'ai un rpi2, qui tournait 5% max
cpu.png
cpu.png (20.76 Kio) Consulté 2134 fois
j'ai mis juste la fréquence à scanner du wmbus, mais le pourcentage est le même

Code : Tout sélectionner

device=rtlwmbus:868.9M
donotprobe=/dev/ttyUSB0;/dev/ttyACM0;/dev/ttyAMA0
PID UTIL. PR NI VIRT RES SHR S %CPU %MEM TEMPS+ COM.
31806 root 20 0 712 384 384 R 100,0 0,0 229:33.28 rtl_wmbus

faut t'il le scheduler tous les 5 ou 10 min, au lieu de le laisser en permanence ?
sinon tu a fais cette manip https://github.com/wmbusmeters/wmbusmet ... OMOTICZ.mddans la base ?

j'ai ajouté un nouveau champ pour récupérer la consommation mensuelle en litre ou m3 mois

Code : Tout sélectionner

calculate_total_l=total_m3
calculate_total_month_l=last_month_total_m3
calculate_month_conso_m3=(total_m3-last_month_total_m3)
Ian22
Messages : 34
Inscription : 23 juil. 2021, 13:49

Re: Acquisition des infos d'un compteur d'eau.

Message par Ian22 »

Voici le widget que j'ai pour le compteur d'eau :
Capture d’écran_2024-12-22_16-10-35B.jpeg
Capture d’écran_2024-12-22_16-10-35B.jpeg (8.06 Kio) Consulté 2113 fois
C'est juste un compteur (RFX meter).

Si tu utilises uniquement la ligne suivante dans ton fichier du "meter" :

shell=/usr/bin/mosquitto_pub -h localhost -t domoticz/in -m "{\"idx\":620,\"svalue\":\"$METER_TOTAL_L\"}"

le compteur journalier est mis à jour automatiquement dans le widget, avec remise à zéro vers minuit. Pas besoin donc de faire le calcul. Il faut juste fixer le diviseur à 1000 dans les détails du device, pour ramener la valeur du compteur totalisateur en m³ et conserver le journalier en litres.
Capture d’écran_2024-12-22_16-10-35B.jpeg
Capture d’écran_2024-12-22_16-10-35B.jpeg (8.06 Kio) Consulté 2113 fois
Pour ce qui concerne la modif dans la base, non, je n'ai pas fait çà. Je ne suis pas sûr que ce soit "stable" en cas de mise à jour de Domoticz ...

Quel outil utilises-tu pour évaluer ta charge CPU ? Et que veux-tu scheduler, wmbusmeters ?

à++

Ian.
Pièces jointes
Capture d’écran_2024-12-22_16-26-53B.jpeg
Capture d’écran_2024-12-22_16-26-53B.jpeg (19.22 Kio) Consulté 2113 fois
pierrotori
Messages : 821
Inscription : 29 févr. 2016, 12:11

Acquisition des infos d'un compteur d'eau.

Message par pierrotori »

ça fonctionne bien le widget RFXmeter counter , merci
j’utilise la commande top pour la cpu du container wmbusmeter elle est à 100%

j’ai trouvé ce script de papo pour détecter les fuites d’eau

https://github.com/papo-o/domoticz_scri ... te_eau.lua

scheduler je ne sais pas car même si c’était tous les 5 minutes le système fonctionne bien et est très réactif

je viens de migrer le script en dzvents et il fonctionne plutôt bien
Dernière modification par pierrotori le 22 déc. 2024, 21:58, modifié 1 fois.
pierrotori
Messages : 821
Inscription : 29 févr. 2016, 12:11

Re: Acquisition des infos d'un compteur d'eau.

Message par pierrotori »

quelqu’un a réutilisé le dvb sdr pour traiter l’index du compteur de gaz?
Ian22
Messages : 34
Inscription : 23 juil. 2021, 13:49

Re: Acquisition des infos d'un compteur d'eau.

Message par Ian22 »

Chez moi, le gaz est en bouteille :lol:

Pour ce qui est des fuites d'eau, je me contente de jeter un oeil sur les logs du widget de mon compteur d'eau mais j'étais intéressé par le script dont tu parles. Le lien m'envoie vers une page inexistante. Y a-t'il longtemps que tu l'as trouvé ?

à+

Ian
Répondre