Le rang du module dans sa chaine accompagne desormais chaque releve de cellules
Le proprietaire demandait si le rang dans le pack etait accessible ou si seul le code-barres l'etait. Il l'etait depuis le debut : l'outil de releve resout adresse <-> code-barres au demarrage mais ne l'ecrivait pas. Desormais : - pylontech-console.mjs --suivi ecrit une colonne 'adresse' (vide en mono-module, jamais devinee) ; - historise-evcs.mjs l'ingere par son NOM dans cellule.rang, enregistre PAR RELEVE et non dans une table figee — un recablage du LVHUB renumerote, et l'historique de chaque ligne doit garder le rang vrai a son instant ; - Grafana : colonne 'Rang' dans le tableau de sante, et la liste deroulante des modules affiche 'rang - code-barres' quand le rang est connu. 75/75 requetes valides. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GwpFpy2aQ2rJok6tNQSbVj
This commit is contained in:
@@ -298,7 +298,7 @@ async function main() {
|
||||
`${horodateFichier()}-${tampon === 'event' ? 'evenements' : 'histo'}-distant-${bc}.csv`);
|
||||
fs.mkdirSync(DOSSIER, { recursive: true });
|
||||
fs.writeFileSync(f, 'heure_reelle,module,etat,courant_mA,soc,' +
|
||||
Array.from({ length: 15 }, (_, i) => `c${i + 1}_mV`).join(',') + ',ecart_mV\n');
|
||||
Array.from({ length: 15 }, (_, i) => `c${i + 1}_mV`).join(',') + ',ecart_mV,adresse\n');
|
||||
console.log(`Module ${bc} (adresse ${ad}), tampon ${tampon} -> ${f}`);
|
||||
|
||||
let ecrits = 0, vides = 0, apresBascule = 0;
|
||||
@@ -426,7 +426,7 @@ async function main() {
|
||||
const hi = Math.max(...v), lo = Math.min(...v);
|
||||
const p = puis.get(ad);
|
||||
fs.appendFileSync(f, [new Date().toISOString(), codes.get(ad),
|
||||
p ? p.mA : '', ...v, hi - lo].join(',') + '\n');
|
||||
p ? p.mA : '', ...v, hi - lo, ad].join(',') + '\n');
|
||||
console.log(`${horodate()} ${codes.get(ad).slice(-4)} haute ${hi} mV (cellule ${c.find((x) => x.mV === hi).n})` +
|
||||
` basse ${lo} mV ecart ${String(hi - lo).padStart(3)} mV` +
|
||||
(p ? ` ${(p.mA / 1000).toFixed(1)} A ${p.soc || ''}` : '') +
|
||||
@@ -441,7 +441,7 @@ async function main() {
|
||||
const v = cel.map((c) => c.mV);
|
||||
const hi = Math.max(...v), lo = Math.min(...v);
|
||||
fs.appendFileSync(f, [
|
||||
new Date().toISOString(), cel[0].etat, cel[0].mA, ...v, hi - lo,
|
||||
new Date().toISOString(), cel[0].etat, cel[0].mA, ...v, hi - lo, '',
|
||||
].join(',') + '\n');
|
||||
const nHi = cel.find((c) => c.mV === hi).n;
|
||||
console.log(`${horodate()} ${String(cel[0].etat).padEnd(7)} ` +
|
||||
|
||||
Reference in New Issue
Block a user