Statistique par heure

bonjour,

J’ai fait avec un PZEM004t un Wattmetre en MQTT.
Celui ci me remonte la consommation de ma clim.
La consommation a Kwh augmente régulièrement ce qui est normal.
Comment faire des states de consommations par heure, jour mois années ?
je crois qu’il faut passer par le plugin virtuel mais e ne connais pas la formule a taper par la suite.
Il semble que cela ce fasse via la commande statisticsBetween
IL y a des argument a jouter du style sum, count, std, variance, avg, min, max mais que veulent il dire ?

Par avance merci pour votre aide

Sympa ce petit tutoriel.

Et pour un souci ça manque cruellement d’infos…

bonjour,
sum, addition
count, nombre
std, standard
variance, variation
avg, moyenne
min, minimum
max, maximum

Bonjour,

Que veux tu avoir comme info supplémentaires ?

Le but final est de faire un comptage capable de géré les heures pleines et les heures creuses.

Pour l’heure j’ai repris le code de décodage linky de l’auteur de http://fumeebleue.fr qui est bien plus qualifiée que moi.
Se code écrit pour du Mysensor, je l’ai adapté pour du MQTT.
Il récupère plein de trames de Linky dont Heure plein Heure creuses.

Mon code PZEM fonctionne aussi en MQTT.
Je souscrit a l’information HP HC de Linky et je peu donc publier au topic ClimHP ou ClimHC suivant l’information remontée par Linky.

Mais un PZEM ne peu pas gérer 2 compteur a la fois.
Donc deux solutions :

  • soit je modifie mon code pour gérer 2 PZEM a la fois (c’est jouable).

  • Soit je fais systematiquement une soustraction de la PuissanceConsomméeAvant - PuissanceConsomméeMaintenant.
    Si on est en HC je la publie dans le topic ClimHC
    Si on est en HP je la publie dans le topic ClimHP
    Jeedom de son coté devra faire le calcul AncienCompteurClimHC + ClimHC

Il me reste aussi a trouver la formule qui va bien dans jeedom pour faire les stats
Heure, Jour Mois Année.

Voila, vous savez tout.

Quelqu’un peu m’aider ?

bonjour,
sur le même principe tu met en mémoire dans plusieurs variables ton index
chaque
heure
jour
semaine
mois
année
le delta entre ton index maintenant - la variable mémoire te donnera ce que tu désire.

Merci

Il me semble que jeedom a déjà des fonctions qui font ça.
C’est la syntaxe que je connais pas
statisticsBetween …

Pour cela il y a la doc : https://doc.jeedom.com/fr_FR/core/4.2/scenario

J’ai déjà essayé sans succès…on est pas tous développeur.

Peu on l’écrire la formule pour le calcul sur maintenant par rapport au début de l’heure.

Ca m’aiderait vraiment et me ferait une base de départ.

1 « J'aime »

Je suis à des années lumières d’être développeur…

Bonjour,

Je reviens sur ce sujet que j’avais abandonné.

J’ai fait un appareil qui communique avec un compteur Linky.
Le compteur linky me remonte ma consommation totale depuis qu’il a été installé.

Comment connaitre ma consommation d’aujourd’hui via plugin virtuel.

J’ai essayé la formule suivante mais le résultat est incorrecte.

statisticsBetween(#[Maison][Linky_MQTT_Relay][Energie Heure Pleine]#,sum,today,now)

Peut on m’aider

Cordialement

Bonsoir,

en prenant la valeur actuel - la valeur mini de la journée
soit
#[Maison][Linky_MQTT_Relay][Energie Heure Pleine]# - min(#[Maison][Linky_MQTT_Relay][Energie Heure Pleine]#, today)

ca marche impeccable.

Merci

Cette méthode impose l’historisation de l’index, c’est dommage car l’index ne sert pas vraiment a grand chose…
pour éviter l’historisation, tu peut aussi lancer un scénario tout les jours a 00h00 ,celui se chargera de récupérer l’index qu’il stockera dans une variable ou un virtuel, et ensuite dans le virtuel tu aura juste a faire :
#[Maison][Linky_MQTT_Relay][Energie Heure Pleine]# - variable(indexMinuit)

Bien pensé.
Au final il faudrait historiser la valeur min et la valeur max pour pouvoir aire un suivi.

Peu ton faire ça avec des scénario ?

Tout dépend de quelle statistique tu as besoin, si tu veut juste ta conso a la journée, il suffit que dans un scénario qui se lance a 23h59 (donc jour J) récupère la valeur du tag ou virtuel et tu l’envoi (event) dans une autre cmd info d’un virtuel, qui lui sera historisé.

j’aimerai mettre ta solution en pratique pour des PZEM004.
je récupère la valeur de la consommation cumulée toutes les 5 secondes.

Cette valeur a beau être historiser, et utiliser dans un virtuel, elle me remonte ds résultats avérant comme si elle ne prenait pas le mini en compte.

#[Maison][Consommation_Production][PZEM1energyKWh]#- min(#[Maison][Consommation_Production][PZEM1energyKWh]#, Today)

Si tu voies une erreur je suis preneur.

Ta solution avec un scénario est plus fiable je trouve et avec moins d’historique inutile.
Mais je ne parviens pas a envoyer l’info a minuit dans un virtuel.
Comment faire ?

Hello,

puis dans le virtuel :

1 « J'aime »

voici les parametre que j’ai reglé

Voici le resultat du virtuel apres sauvegarde

il ne tient pas compte du min

Supprime les données de l’historique #[Maison][Consommation_Production][PZEM1energyKWh]#
et dans ton virtuel enlève « historiser » et « Inverser », attend que ton compteur prenne 1 ou 2 wh et « test » ton virtuel.

Edit : Tu semble nommée tes infos en Kwh (nom et Unité) hors ceux-ci sont en Wh.