SoC-Berechnung wenn Online-Abfrage zu alt

Alles rund um SoC (Ladezustand des Fahrzeuges). Probleme, Fragen, Fehlfunktionen gehören hier hin
rleidner
Beiträge: 1529
Registriert: Mo Nov 02, 2020 9:50 am
Has thanked: 99 times
Been thanked: 200 times

Re: SoC-Berechnung wenn Online-Abfrage zu alt

Beitrag von rleidner »

Ich habe zum Test im MQTT-SoC-Modul eine Erweiterung eingebaut, die den fehlenden externen soc_timestamp simuliert:

Das Modul merkt sich in jedem Durchlauf den aktuellen soc und soc_timestamp als previous.*.
Wenn previous.* nicht existiert werden soc und soc_timestamp auf 0 gesetzt.
soc und soc_timestamp sind die aus dem mqtt-Ast.
Wenn "soc_timestamp is None or (soc_timestamp == previous.soc_timestamp and soc != previous.soc)" wird soc_timestamp auf den aktuellen timestamp gesetzt, in den mqtt-Ast geschrieben und soc und soc_timestamp als previous.* gemerkt.

D.h. wenn sich soc_timestamp nicht ändert aber der soc schon wird soc_timestamp auf die aktuelle Zeit gesetzt und im mqtt-Ast eine externe Versorgung simuliert. Auch mit einer (lückenhaften) externen Versorgung des soc_timestamp sollte das klarkommen. Es gewinnt immer die externe Versorgung.

Das funktioniert hier im Test, ist aber erst mal ein "Proof of Concept" und "quick and dirty".
Das mqtt-Modul wird offiziell von openWB gepflegt, daher ist es fraglich ob es Aussicht auf Erfolg haben würde.
Es wäre m.E. immer sinnvoller, soc_timestamp von der externen Quelle versorgen zu lassen.
openWB-2 Standard+ | openWB EVU Kit v2 MID| 9,9kWp mit Kostal Plenticore 8.5 plus | VW ID.3, Kia EV6, Smart EQ forfour
Antworten