un widget qui affiche le nombre de litres consommés par heure...

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é.
marcus_54
Messages : 425
Inscription : 28 févr. 2018, 12:15

un widget qui affiche le nombre de litres consommés par heure...

Message par marcus_54 »

Bonjour
J'ai bien galéré pour réussir à l'aide d'un raspberry pi à lire mon compteur connecté 868Mhz et l'envoyer via MQTT.

Ça fonctionne, j'ai la valeur de mon compteur qui apparaît dans un widget sous la forme 29.42 m3

Comment je pourrai faire pour avoir un widget qui affiche le nombre de litres consommés par heure, par jour, par semaine et pas simplement la valeur du compteur avec sa courbe qui va qu'augmenter ?

le brocker m'envoie in={"idx":1136,"svalue":"29.42"}

merci
Domoticz 2024.7
Domoticz sur RPI 4B+ : MQTT; MQTTMapper; Zigbee; RFlink DIY 433; Téléinfo; DS18B20; Capteur; compteur eau wmbusmeter, NanoLeaf...
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: un widget qui affiche le nombre de litres consommés par heure...

Message par Keros »

Tu pourrais nous donner des infos sur le compteur connecté que tu utilises ?

Qu'est-ce qu'il envoie comme infos ? La consommation totale ? Il est capable d'envoyer la conso instantanée ? Peut-être une impulsion dès qu'un litre est consommé.

Si on fait l'analogie avec les widgets électriques, il faudrait un widget de type Général kwh. Tu pourrais avoir les consommations par heures / jours / mois / années.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
marcus_54
Messages : 425
Inscription : 28 févr. 2018, 12:15

Re: un widget qui affiche le nombre de litres consommés par heure...

Message par marcus_54 »

Le compteur en lui-même a été changé, c'est un compteur tout à fait classique, néanmoins ils ont adjoint une tête radio de la marque IZAR sa référence est IZAR RC 868 I

Cette tête radio empêche la lecture de la roue d'une façon optique comme j'avais pu le faire précédemment et obtenir une consommation d'eau sur mon ancien compteur.

Au lieu de ça, il y a une communication RF à 868MHz en partie chiffrée qui est émise toutes les minutes environ.
Le contenu de la trame une fois décodé et le suivant :
{"media":"water","meter":"dme_07","name":"watermeter","id":"24709388","total_m3":29.112,"status":"OK","timestamp":"2024-05-18T19:27:22Z","device":"rtlwmbus[00000001]","rssi_dbm":58}

On voit que la seule information vraiment intéressante est le total_m3 qui est dans ma trame à 29. 112.
Auto Generated Inline Image 1.png
Auto Generated Inline Image 1.png (429.43 Kio) Consulté 4824 fois
Domoticz 2024.7
Domoticz sur RPI 4B+ : MQTT; MQTTMapper; Zigbee; RFlink DIY 433; Téléinfo; DS18B20; Capteur; compteur eau wmbusmeter, NanoLeaf...
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: un widget qui affiche le nombre de litres consommés par heure...

Message par Keros »

Je ne suis pas surpris qu'il n'y ait que la consommation totale puisque cette communication sert au relevé du compteur.

Tu peux encore faire ce que tu souhaites mais il faut passer par un calcul pour déterminer ce qui a été consommé entre deux transmissions de donnée. Tu pourras ensuite mettre la valeur calculée dans un widget.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
marcus_54
Messages : 425
Inscription : 28 févr. 2018, 12:15

Re: un widget qui affiche le nombre de litres consommés par heure...

Message par marcus_54 »

C'est dommage qu'il n'y ait pas un widget qui puisse le faire comme le compteur d'énergie (il prend le relevé total à intervalles réguliers pour comptabiliser la consommation)
En ce qui me concerne, je suis incapable de faire un programme qui permet de réaliser cette opération ☹
Domoticz 2024.7
Domoticz sur RPI 4B+ : MQTT; MQTTMapper; Zigbee; RFlink DIY 433; Téléinfo; DS18B20; Capteur; compteur eau wmbusmeter, NanoLeaf...
lost
Messages : 1511
Inscription : 12 nov. 2016, 11:01

Re: un widget qui affiche le nombre de litres consommés par heure...

Message par lost »

marcus_54 a écrit : 21 mai 2024, 12:43 C'est dommage qu'il n'y ait pas un widget qui puisse le faire comme le compteur d'énergie
Il devrait y avoir moyen d'avoir au moins les consos journalières en plus du total sans trop programmer, le compteur simple pouvant a priori servir à tout selon l'unité sélectionnée:
https://www.domoticz.com/wiki/Domoticz_ ... 's#Counter

Maintenant, il faudra quand même scripter un peu pour extraire la valeur de m3 total dans ce qui est récupéré et alimenter un compteur virtuel (les device virtuels sont une fonctionnalité très appréciable de Domoticz) avec. Si le compteur physique est assez "verbeux", ne pas forcément envoyer les MAJ toutes les minutes à chaque trame recue non plus (de toutes manières, Domoticz n'échantillonnera qu'une valeur par tranche de 5mn en BDD). Ne le faire que si le last_update du compteur virtuel est >= 10mn par exemple, c'est largement suffisant et au dessus des 5mn d'échantillonnage ci dessus, donc toute valeur envoyée au compteur par le script sera conservée en BDD.

C'est pas toutes les heures mais mieux que rien et l'occasion de se lancer dans les scripts Lua/DzVent: Il y a énormément d'exemples à rechercher en ligne pour s'inspirer/aider.
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: un widget qui affiche le nombre de litres consommés par heure...

Message par Keros »

DomoticZ dispose de plusieurs widgets possibles qui peuvent être mis à jour :
  • à chaque unité consommée (comptage d'impulsions)
  • en fonction de la consommation instantanée
Et c'est DomoticZ qui se charge de faire la somme / le total.

Dans ton cas, c'est l'inverse. Je crois que tu es le premier que je vois avec ce besoin "inverse" en 5 ans sur le forum. À mon sens, ce n'est pas super compliqué de faire le script. Tu peux regarder les petits guides que j'ai écrits (lien dans ma signature).

L'idée est assez simple :

À l'instant X (première mise à jour de l'objet) :
  • J'enregistre la valeur dans une variable.
À l'instant X +1 (seconde mise à jour de l'objet) :
  • Je compare la valeur actuelle à celle enregistrée en X
  • Je pousse la comparaison dans un widget virtuel
  • Je réenregistre par-dessus la valeur de la variable avec la dernière
Et ainsi de suite...
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
marcus_54
Messages : 425
Inscription : 28 févr. 2018, 12:15

Re: un widget qui affiche le nombre de litres consommés par heure...

Message par marcus_54 »

Bon le seul langage où je suis un poil à l'aise et encore ça sera le blocky (mais sur domoticz ça craint :shock: )

J'ai créé 2 widgets dummy
un qui s'appelle "compteur eau" idx1136 qui récupère la valeur totale 29.5m3
l'autre qui s'appelle "consommation eau" idx1137 qui serait plutôt du genre compteur incrémental.

le script blocky sera déclenché par les devices

Si le compteur d'eau à une valeur plus grande que la variable "eau actuel" idx13
j'enregistre la nouvelle valeur dans la variable et j'envoie vers mon widget "consommation eau" que je n’ai pas trouvé dans la liste des devices :? (c'est "Alarme Activation")
Éventuellement ,si ça ne fonctionne pas bien, faire la soustraction entre l'ancienne valeur et l'actuel par contre dans blocky je n’ai pas trouvé les opérations mathématiques :(
Pièces jointes
blocky.png
blocky.png (18.18 Kio) Consulté 4782 fois
Domoticz 2024.7
Domoticz sur RPI 4B+ : MQTT; MQTTMapper; Zigbee; RFlink DIY 433; Téléinfo; DS18B20; Capteur; compteur eau wmbusmeter, NanoLeaf...
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: un widget qui affiche le nombre de litres consommés par heure...

Message par Keros »

Le langage graphique ne te permettra pas de réaliser ce que tu souhaites.
Avec le blocky, tu as déjà compris le principe de programmation* : je pense que si tu y vas doucement, tu es capable de comprendre qu'en fait, le blocky que tu utilises peut aussi s'écrire avec du texte. Il y a des lignes de code qui sont l'équivalence des briques graphiques.
Je pense que tu as fait le plus dur en sachant utiliser le Blocky. Disons que le code est un moyen de l'écrire différemment.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Flying Domotic
Messages : 772
Inscription : 10 mars 2020, 15:26

Re: un widget qui affiche le nombre de litres consommés par heure...

Message par Flying Domotic »

Il suffit de créer un widget de type "compteur", et de lui donner le type "eau".

Ca donne ça :
Sans titre.png
Sans titre.png (24.62 Kio) Consulté 4773 fois
Répondre