Verbrauch: Tankstand ab Fahrtbeginn statt davor (2026.9.1.24)
DER VERBRAUCH WAR SYSTEMATISCH ZU HOCH Der Startwert kam aus wert_bei(), also dem letzten Literstand VOR der Fahrt - und das ist im Stand der Wert vom Ende der VORIGEN Fahrt. An der Fahrt Eichstaett - Adelschlag nachgemessen: 36,4 l um 13:52 (Ende der vorigen Fahrt), 36,2 l um 16:20:49 (erster Datensatz der neuen). In der Standzeit dazwischen ist niemand gefahren; diese 0,2 l Setzung wurden der neuen Fahrt zugerechnet. alt: 36,4 - 35,6 = 0,8 l auf 6,896 km -> 11,6 l/100 km neu: 36,2 - 35,6 = 0,6 l auf 6,896 km -> 8,7 l/100 km Neu wert_ab() in verlauf.py: der erste Wert AB dem Zeitpunkt. Fuer einen ZAEHLER ist "zuletzt davor" richtig (der Kilometerstand aendert sich im Stand nicht), fuer einen gemessenen FUELLSTAND nicht - der driftet. Das Fahrtende bleibt bei wert_bei(). Livepfad und Rueckblick benutzen beide die neue Funktion. Bereits gerechnete Fahrten behalten ihren Wert: _verbrauch_screenen() fuellt nur fehlende. Die Neuberechnung kommt mit dem Korrekturwert aus den Tankvorgaengen, den der Eigentuemer vorgeschlagen hat. ANZEIGE Hoechstgeschwindigkeit ohne Nachkommastelle. Statuswort raus aus der Fahrtenliste - "vollstaendig" sagt dem Nutzer nichts, und "offen" verspricht Daten, die bei einer laengst abgeschlossenen Fahrt nie mehr kommen; fehlt ein Wert, steht dort ein Strich. Strecke und Verbrauch stehen jetzt in einer Spalte: die Wertspalte wuchs mit dem Inhalt, gemessen 86px gegen 37px, und die Zahlen standen versetzt. Feste Mindestbreite in beiden Oberflaechen, nachgemessen alle Zeilen 92px. Verifiziert: py_compile, Panel als Modul, tsc --noEmit sauber, 165/165 Tests, wert_ab() gegen vier Randfaelle, im Browser nachgesehen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -41,6 +41,7 @@ from .verlauf import (
|
||||
route_aus_verlauf,
|
||||
verbrauch_aus_literstaenden,
|
||||
verlauf_lesen,
|
||||
wert_ab,
|
||||
wert_bei,
|
||||
)
|
||||
|
||||
@@ -338,13 +339,12 @@ async def _verbrauch_screenen(
|
||||
if not verlauf:
|
||||
return
|
||||
|
||||
# wert_bei() aus demselben Grund wie beim Kilometerstand (siehe Modulkopf):
|
||||
# der Tankstand zu Fahrtbeginn ist der zuletzt DAVOR gemeldete, nicht der
|
||||
# zeitlich nächstgelegene - der läge womöglich schon in der Fahrt und hätte
|
||||
# einen Teil des Verbrauchs vorweggenommen. historienimport.py liest ihn
|
||||
# seit jeher so.
|
||||
# Anders als beim Kilometerstand: fuer den Tankstand gilt der erste Wert AB
|
||||
# dem Fahrtbeginn, nicht der letzte davor. Ein Fuellstand ist keine
|
||||
# Zaehlung, er driftet im Stand - siehe wert_ab() in verlauf.py fuer die
|
||||
# Messung, die das gezeigt hat. Das Ende bleibt bei wert_bei().
|
||||
verbrauch = verbrauch_aus_literstaenden(
|
||||
wert_bei(verlauf, start), wert_bei(verlauf, ende), fahrt.get("distance_km")
|
||||
wert_ab(verlauf, start), wert_bei(verlauf, ende), fahrt.get("distance_km")
|
||||
)
|
||||
if verbrauch is not None:
|
||||
await k.ablage.fahrt_aktualisieren(fahrt["trip_id"], {"verbrauch_l_100km": verbrauch})
|
||||
|
||||
Reference in New Issue
Block a user