Erreur sur Min Max

OK. Ca correspond bien à ça:

J’ai bien compris le sens php de « now ». Je me demandais simplement si, quand on demandait la valeur d’une commande à l’instant « now », il allait chercher cette valeur « value », stockée je ne sais où (table des commandes ?) ou bien prendre la dernière valeur enregistrée dans la fameuse table history. Pure curiosité…

Oui, l’historisation est un vaste sujet déjà abordé maintes fois. :thinking:

Pour les valeurs actuelles, il va les chercher en priorité en cache.

Alors, peut on dire que le max (des températures dans mon cas) sur une journée n’est pas forcément le max des valeurs discrètes mesurées lors de cette même journée ?

@ste.che , @jpty ,

AMHA ( :grin: Je ne connaissais pas cet acronyme) pas forcément « exactement »… . J’ai reproduit un virtuel similaire au tien et j’ai déjà constaté des soucis similaires : température actuelle inférieure au minimum calculé. Je pense que le refresh du virtuel est la cause principale.

Ce sujet m’a interpellé car j’ai rencontré des problèmes similaires sur des consos de convecteurs électriques. Mes radiateurs connectés indiquent la consommation globale d’énergie depuis leur mise en service, en KWxh. Le rythme est beaucoup plus lent : minimum 1 h pour 1 kWxh avec un convecteur de puissance 1 KW pendant 1 heure. Croisé avec le CRON au 1/4h du plugin qui va chercher l’information ça ne fait pas beaucoup de valeurs au final. Pas perturbé par le lissage « 5 mn » et très peu par le lissage 24h.
Sauf que si il n y a pas eu de changement sur une journée il n’y a pas de valeur dans la bdd « archive-history » et les formules max min… basées sur yesterday, to day-1 etc n’aiment pas beaucoup. Le but: calculer la consommation du jour et de la veille).

En conclusion si on veut utiliser efficacement ces formules il faut bien comprendre les mécanismes d’historisation, d’archivage et d’interprétation des dates au format relatif PHP.

Enfin pour le problème des températures min max, des widgets ont étés développés (voir @jag notamment) mais je n’ai aucune idée de comment ils traitent le problème ni même si ils le traitent.

Il vous reste à faire:

  • Changer le lissage des valeurs remontées par vos capteurs en Aucun dans le plugin.
  • Sur le virtuel, passer le type des valeurs où il y a les calculs maxBetween en Numérique et enlever les ° pour avoir des valeurs numériques utilisables ensuite dans des scénarios. ( ° à mettre dans le champ Unité de la commande si besoin)
  • Mettre l’auto actualisation du virtuel à la minute * * * * *

Vous en êtes où ? :wink:

1 « J'aime »

Hello je vais lire tout simplement l historique de la commande et je ne fais rien d autre

@JAG
Merci de ton intervention. Donc il peut arriver épisodiquement et temporairement que l atempérature affichée soit supérieure au max ou inférieure au Min…

Ah je ne pense pas

J’ai ouvert un ticket pour avoir le retour de l’équipe Jeedom !

Vous avez déjà eu le retour de l’équipe Jeedom dans ce que Garnoulle62 a écrit au dessus:

J’ai quand même du mal à comprendre si on peut avoir le vrai max et le vrai min ou si on ne peut pas. Un max et un min sont des valeurs discrètes qui ne doivent pas être modifiées par un méthode de lissage ou autre. Si ce n’est pas un vrai min ni un vrai max, il faut l’indiquer dans la doc et pourquoi ne pas corriger ce comportement ?

Les valeurs sont lissées avant le calcul des max, min.
Lisez toute la discussion fournie en lien juste au dessus. Toutes les réponses à vos questions sont déjà dedans.

Vous n’avez pas répondu:

Et e faisant ça on a le VRAI Max et le VRAI Min ?

Bah oui puisqu’il n’y a plus de lissage qui écrête les données avant calcul des maxs/mins.
C’est ce que j’ai essayé de vous expliquer dans le message 29

Dans mon cas, pour faire le test, il faut changer l’auto actualisation d’un équipement Zigbee, ce qui est déconseillé par Jeedom (voir photo). Je ferai donc la manip quand j’aurai une solution de backup complète. Si quelqu’un peut le faire sans prendre de risque, je suis preneur de la réponse.

Laissez l’équipement Zigbee vivre sa vie et fournir des données quand il a envie.
Pour que les calculs des min et max soient actualisés, il faut que le virtuel qui les contient le fasse:

  • Mettre l’auto actualisation du virtuel à la minute * * * * *

Si vous utilisez maxBetween dans un scénario, le calcul sera fait dans le scénario au moment de son exécution.

Ok pour modifier l’auto actualisation du virtuel.

Précision pour : « Changer le lissage des valeurs remontées par vos capteurs en Aucun dans le plugin. » A faire dans le virtuel ou au niveau du capteur ?

Il faut le faire au moins à la source sur la commande dans le plugin Zigbee.

La réponse de Jeedom : « C’est normal la formule maxBetween utilise l’historique qui a une granularité de 5min et lisse les valeurs il peut donc arriver que la formule ne renvoi pas exactement la valeur maximum. Vous pouvez essayer d’améliorer la précision en mettant aucun lissage sur l’historique de la commande. Attention cela aura un impact sur le stockage ainsi que les performances de jeedom. »

Effectivement en faisant cela il semble ne plus y avoir de valeur Max et Min erronées.

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.