fix(P4): Heizleistungs-Kurven flackerten in großen Zeitfenstern — Bucket-Mittelung statt Einzelsample #5

Merged
thomas merged 1 commits from fix/verlauf-duty-dezimierung-mitteln into main 2026-07-13 01:27:14 +02:00
Owner

Beobachtung: Bei 60-min-Ansicht mit eingeschalteter Heizleistung sprang die Duty-Kurve im Sekundentakt zwischen zwei verschiedenen Kurvenbildern hin und her.

Ursache: Die Dezimierung pickte pro Chart-Punkt ein Einzelsample (idx = g_histPos - 1 - age). Das Abtast-Raster hängt an g_histPos und wandert mit jedem Sekundentick um eine Position durch den Ringpuffer. Die Temperaturen sind glatt — dort unsichtbar; die Heizleistung schaltet aber PWM-artig schnell, dadurch alternierten zwei Sample-Muster.

Fix: Pro Chart-Punkt wird jetzt über den gesamten stride-Bucket gemittelt (Temperaturen, Zusatzsensor und Duty). Das Bild steht ruhig, und die Leistungs-Kurve zeigt die tatsächliche mittlere Heizleistung statt zufälliger Momentwerte — bei PWM die ehrlichere Aussage. Im 2-min-Fenster (stride 1) ändert sich nichts. Aufwand max. 3600 Additionen pro Sekunde, für den P4 vernachlässigbar.

Version 1.0.12, Changelog ergänzt.

🤖 Generated with Claude Code

Beobachtung: Bei 60-min-Ansicht mit eingeschalteter Heizleistung sprang die Duty-Kurve im Sekundentakt zwischen zwei verschiedenen Kurvenbildern hin und her. Ursache: Die Dezimierung pickte pro Chart-Punkt ein Einzelsample (`idx = g_histPos - 1 - age`). Das Abtast-Raster hängt an `g_histPos` und wandert mit jedem Sekundentick um eine Position durch den Ringpuffer. Die Temperaturen sind glatt — dort unsichtbar; die Heizleistung schaltet aber PWM-artig schnell, dadurch alternierten zwei Sample-Muster. Fix: Pro Chart-Punkt wird jetzt über den gesamten stride-Bucket gemittelt (Temperaturen, Zusatzsensor und Duty). Das Bild steht ruhig, und die Leistungs-Kurve zeigt die tatsächliche mittlere Heizleistung statt zufälliger Momentwerte — bei PWM die ehrlichere Aussage. Im 2-min-Fenster (stride 1) ändert sich nichts. Aufwand max. 3600 Additionen pro Sekunde, für den P4 vernachlässigbar. Version 1.0.12, Changelog ergänzt. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
thomas added 1 commit 2026-07-13 01:27:06 +02:00
Die Dezimierung im Verlauf-Chart pickte pro Punkt ein Einzelsample; das
Abtast-Raster hing an g_histPos und wanderte mit jedem Sekundentick um
eine Position. Die schnell schaltende Heizleistung (PWM) sprang dadurch
sichtbar zwischen zwei Kurvenbildern hin und her. Jetzt wird über den
gesamten stride-Bucket gemittelt — Bild steht ruhig, Leistungs-Kurve
zeigt die echte mittlere Heizleistung. Version 1.0.12.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
thomas merged commit f8df6f85cd into main 2026-07-13 01:27:14 +02:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: thomas/Dual-PID#5