Simple addition et soustraction dans un virtuel qui donne des erreurs ponctuelles

J’ai un problème qui semble tout simple, mais auquel je ne paviens vraiment pas à trouver une solution.
Contexte:

  • mon compteur électrique donne 4 valeurs (prélevement ou injection sur le réseau, selon ma consommation et ma production; jour ou nuit en fonction du tarif heure de pointe ou heure creuse). Chaque valeurs ne peut et ne fait qu’augmenter.
  • Dans un virtuel, j’ai créé une info « compteur net unique » qui additionne les prélèvements et en soustrait les injections. Je compte ainsi l’énergie nette de ma maison. En pratique, la valeur de cette info est écrite « #[Compteurs][Resa_P1][1.8.1 Prelevement Jour]#+#[Compteurs][Resa_P1][1.8.2 Prelevement Nuit]#-#[Compteurs][Resa_P1][2.8.1 Injection Jour]#-#[Compteurs][Resa_P1][2.8.2 Injection Nuit]# ».

Problème: tout cela semble fonctionner. Pourtant, il y a parfois des « erreurs de calculs ponctuelles », que je ne parviens pas à expliquer, ni à résoudre, et qui me posent beaucoup de problèmes.

Dans les captures d’écran de mon historique que je joins, on peut voir les 4 valeurs de mon compteur électrique (1.8.1; 1.8.2; 2.8.1 & 2.8.2), la valeur de l’info virtuelle « compteur net unique », ainsi qu’un historique calculé directement dans la fenêtre d’historique avec exactement la même formule que dans l’info « compteur net unique » de ce virtuel.
Alors qu’il me semble évident que toutes ces valeurs devraient être croissantes, le « compteur net unique » ne l’est pas systématiquement (alors que l’historique calculé avec exactement la même formule l’est !) .
Quelqu’un aurait-il une idée de ce qui se passe?
Un tout grand merci d’avance pour votre aide! N’hésitez pas à m’envoyer un lien vers une autre discussion similaire sur le forum que je n’ai pas trouvée (je doute être le seul qui cale sur ce point).
YL



Bonjour,

Juste une idée : Répéter les valeurs identiques dans le virtuel (il doit y avoir une case à cocher)

Bonjour,

J’ai constaté le même problème je pense.
Dans un virtuel, j’additionne chaque jour la consommation en heures pleines et la consommation en heures creuses de la veille, et j’historise ces données. J’ai environ 40% des cas ou le total n’est pas correct, alors que les 2 données additionnées, qui sont dans le même virtuel sont correctes.
Je me suis corrigé toutes mes stats de consommation à la main dans la BDD hier soir.
Je n’ai pas réussi à trouver une logique, ou un calcul expliquant les résultats erronés.
Ni d’ailleurs à valider une méthode fiable pour régler le problème.
Je ne pense pas que ce soit lié à des valeurs répétées, car il n’ y que 2 valeurs à additionner, et la probabilité d’avoir la même consommation en HP ou HC sur 2 jours de suite est proche de 0.

Bonjour
Je suis pas spécialiste du sujet (ou de Jeedom) mais j’aurais essayé de désactiver la mise a jour automatique et de mettre une mise jour manuelle (tout les 15 minutes par exemple)
Car j’ai remarqué que quand j’avais des erreurs sur les virtuels, si je fais une mise a jour (par le bouton ou un scénario) tout rentrait dans l’ordre.

L’autre option etant de simplement avoir un virtuel avec le résultat, et de faire un scénario qui se lance tout les X minutes, fait le calcul, puis injecte la valeur dans l’info virtuelle (commande Event)

Dans les deux cas, l’avantage de contrôler le temps de mise a jour, est de limiter au strict minimum (pourquoi pas toute les heures / deux heures / sur un événement qui nous interresse) pour limiter la taille de la mémoire alloués ( ou garder plus longtemps les données avec le même espace) et le nombre d’appel de memoire.

Bonjour,
Il serait intéressant de tester la formule avec des parenthèses :

(A+B) - (C+D)