Ich habe ein kleines Skript genutzt und einfach über die korrekte max. Ladekapazität (welche in meinem Falle nach 50.000km noch 28,6kWh beim 94Ah beträgt) sowie dem SoC / Batterie Kapazität, welche ebenfalls korrekt ist, rechnerisch ermittelt.
Passt auch. Wären also bei Deinem Screenshot 20,06kWh.
Müsste also die maximale Ladekapazität bei ca. 47,26kWh liegen.
Die „Batterie-Kapazität“ stellt bei mir korrekt den SoC da. Scheinbar schreibst du den SoC auch in die aktuelle Ladekapazität. Dort gehört aber nicht der %-Wert (bei mir eben die 68%) rein, sondern die kWh. Das wären bei mir im obigen BMW Beispiel 9,2kWh (=100% von 9.2; die 17.8kWh maximale Ladekapazität sind Unsinn; liegt ggf. am Hybrid).
Beim Mini SE (BEV) wären es 20,06kWh aktuelle Ladekapazität (68% von 29,5kWh).
ich hab keine Ahnung von e-Auto, daher muss ich dumm fragen.
Ist ja kein Problem. Wir sind ja dankbar, das du es trotzdem versuchst
Der „SoC“ steht für „State of Charge“. Damit ist die aktuelle Batterieladung in % gemeint.
Somit ist
„aktuelle Ladekapazität“ mit dem Ident bmw_soc bekommt den Inhalt der Variable soc aus den Daten
nicht richtig, da das Modul „aktuelle Ladekapazität“ mit kWh (absolut) anzeigt. SoC ist aber immer % (relativ).
„maximale Ladekapazität“ mit dem Ident bmw_socMax bekommt den Inhalt der Variable socmaxaus den Daten
Was der „bmw_socMax“ sein soll ist mir ehrlich gesagt nicht ganz klar. Aber auch hier vermute ich eben einen %-Wert. Interessant ist, das beim Mini SE hier 29.5 raus kommt, was genau der Akkugröße in kWh entsprechen würde, aber bei meinem BMW 530e Hybrid eine 17.8, welche ich überhaupt nicht zuordnen kann (dessen Akku ist nur ca. 9.2kWh groß).
soc_hv_percent gibt es auch in den Daten, wird aber nicht übernommen (hier der Wert 60)
Das könnte der SoC der HV Batterie ohne „BMW Anpassungen“ sein. Sagt mir aber nichts. Vielleicht sagt sich BMW: Den SoC zeigen wir dem User, den SoC_HV nutzen wir intern. Keine Ahnung.
Ich denke wir müssen mal klären, was die (maximale) Ladekapazität überhaupt sein soll, bevor wir was ändern. bin ja auch ein Spezi
Ich schaue bei Gelegenheit auch mal genauer in meine Daten. Vielleicht erkenne ich da was.
Also ich habe mir jetzt mal mein Debug log angeschaut. Wert „soc“ passt sowohl beim Hybrid als auch BEV genau zum SoC = „Batterie-Kapazität“. Ich persönlich würde das Attribut im Modul eher „aktueller SoC“ oder „aktueller Batterie-Ladestand“ nennen.
Mit dem „socmax“ kann ich irgendwie nichts anfangen. Beim BMW 17.84 und beim Mini 29.98 (also jetzt mehr als gestern, habe aber gar nicht geladen)… das passt für mich zu keinem mir klaren Wert.
Die Brutto-Batteriegröße steht übrigens in " battery_size_max" (die SoC werden auf die Netto-Batteriegröße (also die zum Fahren verfügbare Batteriegröße, die immer kleiner als die Brutto ist, bezogen)). Eine Netto-Batteriegröße finde ich nicht.
Ich weiß ja nicht, wie andere das sehen. Aber ich würde „aktuelle Ladekapazität“ und „maximale Ladekapazität“ rausnehmen. Die machen in der jetzigen Form keinen Sinn, wenn wir sich nicht erklären oder im Debug erkennen können. Es sei denn, die haben bei Verbrennern eine valide Bedeutung. Und ggf. kann man ja ein neues Attribut „Brutto Batteriegröße“ (kWh) aufnehmen (da diese <> „maximale Ladekapazität“ ist).
Aber: Aktuell klappt die Aktualisierung gar nicht mehr, auch nicht in den Apps. Ist das bei euch auch so? Meine Fahrzeuge sind aus den Apps verschwunden…
ja, ist bei mir auch so, war gerade dabei die RemoteService auf Trab zu bringen, aber gibt laufend HTTP-Error 500 (also ein Server-Error)
Da aber die original BMW-App auch erzählt, das der Service nicht geht, lehne ich mich ganz entspannt zurück
Ja, das wäre sehr gut, wenn alle, die was mit E-Autos haben, ein Statement abgeben würden.
definitiv nicht, diese Daten kann ich für meine Diesel gar nicht abrufen
Also bei mir hat die max. Ladekapazität eine wichtige Bedeutung, diese sagt mir aus, wieviel meiner max. Nettobatteriegröße noch tatsächlich vorhanden ist. Dies nennt man im Fachjargon SoH (State of Health). Dieser ist hier als absolute Größe in kWh angegeben und stimmt im Beispiel von meinem i3 auch exakt mit den Daten im i3, welche man dort zudem erst aufwändig im Geheimmenü des Fahrzeugs abrufen muss. Bei Dir passt der Wert des SoH (maximale Ladekapaziät) im Mini ebenfalls mit 29,5kWh (kein Prozentwert!, sondern der Absolutwert in kWh), dieser hat den gleichen Akku wie mein i3 verbaut (bei mir aufgrund der Alterung noch 28,6). Der Wert ist ein wichtiger Indikator für die Alterung des Akkus, auch schwankt er im Sommer und Winter, da der Akku im Winter weniger Kapazität hat. Zudem berechne ich über den Wert der maximalen Ladekapazität meine aktuelle Ladekapazität in kWh, also unser gesuchter Wert.
Also als Beispiel um es zu verdeutlichen:
BMW i3 oder Mini SE haben etwa 29,5kWh netto/nutzbar im Neuzustand und Sommer. Brutto sind es 33kWh.
Max. Ladekapa. (SoH) meines i3 = 28,6kWh (ca.3% Degradation/ Alterung)
Max. Ladekapa. (SoH)des Mini SE = 29,5Wh (0% Degradation/ Alterung)
Dieser Wert kam zuvor immer aus dem Modul über die API, jetzt errechne ich mir diesen einfach wie beschrieben über ein Skript.
Warum dieser Wert beim Hybrid allerdings falsch angegeben wir ist mir schleierhaft. 17,8kWh ergibt da keinen Sinn. Aber bei den BEV passt es und der Wert ist mir auch sehr wichtig, also bitte nicht rausnehmen:-)
in deinem Debug, den du mir zugeschickt hattest, fehlen einige Abrufe.
kannst du noch mal eine kompletten Abruf aufzeichnen und mir mailen? Dazu muss du sicherlich die Anzahl der Zeilen in Debugfenster deutlich erhöhen.
Ich wollte mal alle Felder herausholen, die ggfs. mit dem Thema zu tun haben, damit wir zusammen erarbeiten können, was wir genau mit welchem Feld machen und mit welcher Bedeutung / Bezeichnung.
[battery_size_max] => 35.82 ->max.Bruttokapazität des Akkus (nicht nutzbar)
[beChargingLevelHv] => 93 ->Aktueller Ladezustand in % in Bezug auf die max. Nettokapazität (SoH)
[beEnergyLevelHv] => 26.382 ->Aktuelle Ladekapazität in kWh (geht auch SoH*SoC)
[beMaxRangeElectric] => 200 ->Aktuell max. Reichweite
[beRemainingRangeElectric] => 184 ->verbleibende Reichweite (gemäß akt. Ladezust.)
[beRemainingRangeFuel] => 0 → da rein BEV ohne Tank somit 0Liter Benzin
[charging_connection_type] => conductive ->?
[chargingHVStatus] => CHARGING → Lädt aktuell
[chargingLevelHv] => 93 ->aktuelle Ladezustand in %
[charging_status] => CHARGINGACTIVE → Ladung aktiv
[chargingTimeRemaining] => 35 → verbleibende Zeit in Min. bis Vollladung
[connectorStatus] => CONNECTED → Ladekabel angesteckt
[kombi_current_remaining_range_fuel] => 0 ->reines BEV ohne Tank somit 0 Liter Benzin
[lastChargingEndReason] => UNKNOWN ->?
[lastUpdateReason] => CHARGINGSTARTED → Vermutlich der Trigger zur Datenaktualisierung an BMW Server
[lsc_trigger] => CHARGINGSTARTED
[overall_energy_consumption] => 26.382 → Gesamter Energiebedarf in kWh über die gesamte Fahrtstrecke, Wert ergibt keinen Sinn! Wert entspricht akt. Ladekapazität in kWh
[remaining_charging_time_minutes] => 35 ->verbleibende Zeit in Min. bis zur vollst. Ladung
[remaining_fuel] => 0 → BEV kein Benzintank
[remaining_range] => ->0 BEV kein Benzintank (verbl. Reichweite Benzin)
[single_immediate_charging] => false ->?
[soc_hv_percent] => 84 ->? 84% auch unplausibel Ladezustand bei 93%
[auxPowerRegular] => 1
[soc] => 93 → Aktueller Ladezustand in % (SoC)
[socmax] => 28,56 → Max Netto Ladekapazität in kWh (SoH, schwankt sinngemäß bei veränderten Bedingungen wie Alterung, Aussentemperatur, zudem sollte man das BMS ab und zu neu justieren indem man einen vollen Ladehub von 0% (komplett leer fahren) bis 100% vornimmt.)
Ich habe mal eure Vorschläge / Informationen für mich aufbereitet
Unverändert
Feld: GetDynamicData.beRemainingRangeElectric
Variablen-Ident: bmw_remaining_electric_range
Bezeichnung: "Elektrische Reichweite" in km
Feld: GetDynamicData.beRemainingRangeFuel (nur Hybrid)
Variablen-Ident: bmw_remaining_range
Bezeichnung: "Tankreichweite" in km
Feld: GetDynamicData.charging_status
Variablen-Ident: bmw_charging_status
Bezeichnung: "Ladezyklus-Status"
Feld: GetDynamicData.chargingTimeRemaining
Variablen-Ident: bmw_charging_end
Bezeichnung: "Ladezyklus-Ende"
Feld: GetDynamicData.connectorStatus
Variablen-Ident: bmw_connector_status
Bezeichnung: "Ladekabel-Status"
Ändern
Feld: GetDynamicData.chargingLevelHv
Variablen-Ident: bmw_charging_level
Bezeichnung alt: "Batterie-Kapazität" in %
Bezeichnung neu: "aktueller Batterie-Ladestand (SoC)" in %
Feld: GetNavigationData.socmax
Variablen-Ident: bmw_socMax
Bezeichnung alt: "maximale Ladekapazität" in kWh
Bezeichnung neu: "maximale Netto-Ladekapazität (SoH)" in kWh
Hinzufügen
Feld: GetDynamicData.battery_size_max
Variablen-Ident: bmw_battery_size
Bezeichnung: "Brutto-Batterіekapazität" in %