Un tableau pour la journee, et le report cesse de fabriquer des kilowattheures

Il manquait le bilan qu'on cherche en premier : ce qui a ete produit, consomme,
achete, et ou c'est alle. « La journee » (evcs-journee) le donne sur la fenetre
now/d — le jour civil, pas les 24 dernieres heures, sinon deux journees se
melangent et le total de production n'est plus comparable d'un jour a l'autre.

En controlant ses chiffres, un defaut bien plus large est apparu : la voiture
annoncait 6,9 kWh la ou le compteur cumulatif de la borne et la table des
sessions donnent tous deux 3,6.

Le report de la derniere valeur connue propageait la MOYENNE de la minute au
lieu de sa DERNIERE valeur. Le 07/09 a 14:28 la borne passe de 1577 a 0 W dans
la meme minute : cette minute vaut 788 W en moyenne, et le report la maintenait
pendant les heures sans ecriture qui suivaient — 0,79 kWh fabriques sur la
seule heure de 15 h, exactement 788 x 60 / 1000.

Le defaut ne se voyait ni sur le solaire ni sur la maison, ecrits en continu.
Il frappe les grandeurs intermittentes, au premier rang la borne qui passe
l'essentiel de la journee a zero. Les colonnes « Voiture » de « Le systeme » et
« Les vehicules » etaient donc fausses depuis leur creation, en surestimation.

Corrige dans les trois constructeurs de requetes : la minute observee garde sa
moyenne, juste pour l'energie consommee dans cette minute, mais le report
propage la derniere valeur reellement lue. Aucun seuil, aucune peremption
arbitraire. Apres correction la voiture tombe a 3,6 kWh, egal au centieme a la
somme des sessions.

verifier-dashboards annoncait 73/73 avec le chiffre faux : il prouve qu'une
requete s'execute, pas qu'elle rend la bonne grandeur. Deuxieme fois en trois
jours qu'une source independante est le seul controle qui attrape le defaut.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GwpFpy2aQ2rJok6tNQSbVj
This commit is contained in:
Tallagrand Thierry
2026-09-07 23:10:55 +02:00
parent 1c1b22311a
commit fa5ad0d98a
7 changed files with 826 additions and 15 deletions

View File

@@ -5479,3 +5479,60 @@ inspecter.
---
*Document mis a jour le : 07/09/2026 — Fix H prepare (golden 84/84, gabarit valide contre HA), en attente de validation avant PUT*
## 60. Session du 07/09/2026 — Tableau « La journee », et un report de valeur qui fabriquait de l'energie
### Le tableau
`evcs-journee` (« La journee »), fenetre **`now/d`** — le jour civil en cours et
non `now-24h`, qui melangerait deux journees et rendrait le total de production
incomparable d'un jour a l'autre. Sept panneaux : le bilan depuis minuit
(production, maison, reseau, voiture, batterie chargee/rendue, autonomie),
l'energie heure par heure, les cinq flux sur un axe commun, le SOC contre le
SOC requis par le bilan, une frise source/decisions/censure, les charges du jour
et le journal des evenements.
L'autonomie se calcule sur la maison, pas sur la maison + voiture : sinon une
grosse charge solaire du vehicule gonfle artificiellement le taux.
### ⚠️ Le defaut trouve en controlant les chiffres — il touchait TOUS les tableaux
Premiere version du bilan : **6,9 kWh pour la voiture**, alors que le compteur
cumulatif de la borne et la table `session_charge` donnent tous deux **3,6 kWh**.
Cause, identifiee au watt pres. Le report de la derniere valeur connue
propageait la **MOYENNE de la minute** au lieu de sa **derniere valeur**. Le
07/09 a 14:28, la borne passe de 1577 W a 0 W dans la meme minute : cette minute
vaut donc 788 W en moyenne, et cette moyenne etait ensuite maintenue pendant
toutes les heures sans ecriture qui suivaient. 788 W x 60 min = **0,79 kWh
fabriques sur la seule heure de 15 h**, et le meme mecanisme sur 19 h et 20 h.
Le defaut ne se voyait ni sur le solaire ni sur la maison — ecrits en continu,
donc jamais de long report. **Il frappe les grandeurs intermittentes**, au
premier rang desquelles la borne, qui passe l'essentiel de la journee a zero.
Correctif applique aux **trois** constructeurs de requetes
(`sql_grandeurs`, `ENERGIE_SQL`, `BILAN_BASE`) : la minute observee garde sa
moyenne — juste pour l'energie consommee DANS cette minute — mais le report
vers les minutes suivantes propage
`(array_agg(valeur ORDER BY ts DESC))[1]`, c'est-a-dire la derniere valeur
reellement lue. Aucun seuil, aucune peremption arbitraire.
Verification : apres correction, « Voiture » tombe a **3,6 kWh**, egal au
centieme a la somme des sessions mesurees au compteur de la borne. Les autres
totaux sont inchanges (22,1 / 26,1 / 6,2), ce qui confirme que seul
l'intermittent etait touche. 73/73 requetes valides.
⚠️ **Consequence a garder en tete** : les colonnes « Voiture » des tableaux
« Le systeme » et « Les vehicules » etaient fausses depuis leur creation
(04/09), dans le sens de la SURESTIMATION. Toute lecture d'energie vehicule
anterieure au 07/09 doit etre reprise.
### Rappel de methode, deuxieme fois en trois jours
`verifier-dashboards.mjs` prouve qu'une requete s'EXECUTE, pas qu'elle rend la
grandeur voulue — il annoncait 73/73 avec le chiffre faux. Le seul controle qui
attrape ce genre de defaut est de confronter le resultat a une source
independante : ici le compteur cumulatif de la borne et la table des sessions.
Meme lecon que le 04/09 (colonne « Excedent » integralement nulle, 19/19 vertes).
---
*Document mis a jour le : 07/09/2026 — tableau « La journee », report de la derniere valeur (et non de la moyenne) dans les trois constructeurs de requetes*