BYD Batteriespeicher Daten programmatisch auslesen

  • Hi zusammen

    der BYD Speicher bietet ja eine eigene (nicht sehr schicke) Web-Oberfläche. Ich hab mir für meine eigene Visualisierung ein python modul geschrieben, das die wichtigen Informationen, die man unter "Rundata" - sowie unter "Statistics Information" findet, programmatisch über ein Skript ausliest.

    In der Regel werden die meisten Daten auch dem WR übermittelt - aber nicht so z.B. Werte für Total Charge Energy, Total Discharge Energy etc.


    Aufruf des Skripts - sowie dessen Output:

    python readbyd.txt

    Start querying BYD....

    Returnvalue -should be zero if successful : 0

    ----------------Start Values BYD ----------------

    {'Total_Charge_Energy': 476.989,

    'Total_Cycle_Counts': 65.0,

    'Total_Discharge_Energy': 420.6,

    'arrayvoltage': 262.059,

    'current': -1.207,

    'maxcelltemp': 21.0,

    'maxcellvol': 3.278,

    'maxtemppos': 2.0,

    'maxvolpos': 1.0,

    'mincelltemp': 18.5,

    'mincellvol': 3.272,

    'mintemppos': 4.0,

    'minvolpos': 4.0,

    'packvoltage': 262.097,

    'power': 0.0,

    'soc': 57.5,

    'socah': 12.3,

    'socwh': 3116.0,

    'soh': 100.0,

    'sysTemp': 18.8}

    ----------------End - Values from BYD ----------------

    Specific values from array....

    BYD Total Charge Energy : 476.989 Kwh

    BYD Total Discharge Energy : 420.6 Kwh

    Calculations...

    Charging (+) / Discharging (-) Energy : -316.0 W

    Efficiency is : 0.882


    Nötige Anpassungen:

    Ihr müsst die IP-Adresse für Euer LAN, sowie Euer Password für die BYD eintragen (siehe Zeile 71-73) im Skript:

    #Please adjust the parameters below as appropriate for your environment:

    userid = 'installer'

    password = 'byd@12345'

    BYDboxIP = '192.168.178.43'

    #No configurable parameters beyond this point


    Unzulänglichkeiten / offene Punkte (die ich selber nicht verstehe ... :():

    Ich hätte gedacht, dass der SOCWH Wert den der BYD ausgibt auch berechnet werden kann:

    SOCWH-Berechnet = packvoltage * socah

    Leider deckt sich bei mir SOCWH die der BYD ausgibt aber nicht mit "SOCWH-Berechnet"


    Getestet mit:

    BYD HV 6.4, Firmware verison V3.003 R

    python 3.6 (windows)

    python 3.5 (raspberry)



    Trotzdem Viel Spass damit für diejenigen, die Interesse daran haben - aber bitte "Use at your own Risk"

    Feedback gerne willkommen


    (PS: der Anhang ist ein python skript - aber leider kann ich nur Dateien mit der Endung .txt hochladen)

    (PPS: Sorry - das Thema sollte eigentlich in "Speichersysteme OnGrid" - leider kann ich es nicht dahin verschieben)

    Dateien

    • readbyd.txt

      (9,13 kB, 70 Mal heruntergeladen, zuletzt: )

    PV: 9,4Kwp, LG 335, Kostal Plenticore, BYD 6,4

  • Ich antworte mir mal selber... -Aktualisierung des Skriptes...

    So - jetzt habe ich auch den "Fehler" gemacht und meine Kostal Firmware upgegraded. Und da dachte ich, ich muss auch den Anleitungen folgen und in diesem Zug die Firmware für den BYD mit hochzuziehen.

    Anyway: Firmware BYD: 3.012R.

    Leider komm ich mit dieser Firmware des BYD nicht mehr an die socah, socwh, soch etc. rann und die Webseite des BYD sieht "anders aus". Deswegen ein neues Skript.

    Unten seht ihr die Kernparameter, die ich abfrage...


    Aufruf:

    python3 readbyd.txt


    Output:

    Start querying BYD....

    Returnvalue -should be zero if successful : 0

    ----------------Start Values BYD ----------------

    {'Total_Charge_Energy': 782.613,

    'Total_Cycle_Counts': 112.0,

    'Total_Discharge_Energy': 720.957,

    'arrayvoltage': 262.866,

    'current': 0.003,

    'maxcelltemp': 21.7,

    'maxcellvol': 3.287,

    'maxtemppos': '2',

    'maxvolpos': 1,

    'mincelltemp': 19.4,

    'mincellvol': 3.284,

    'mintemppos': '4',

    'minvolpos': '3',

    'packvoltage': 263.372,

    'power': '0',

    'soc': '55.500%',

    'sysTemp': '22.400'}

    ----------------End - Values from BYD ----------------

    Specific values from array....

    BYD Total Charge Energy : 782.613 Kwh

    BYD Total Discharge Energy : 720.957 Kwh

    Calculations...

    Charging (+) / Discharging (-) Energy : 1.0 W

    Efficiency is : 0.921

    Dateien

    • readbyd.txt

      (9,25 kB, 39 Mal heruntergeladen, zuletzt: )

    PV: 9,4Kwp, LG 335, Kostal Plenticore, BYD 6,4

  • Yep

    das Skript verbindet sich auf die Webseite des BYD, holt sich die Werte ab und legt sie in ein Array. Ich selber speichere diese dann über ein weiteres Skript in ner Datenbank.

    Leider schraubt BYD in Abhängigkeit von der Firmware an dem was sie auf der WEB-Oberfläche zur Verfügung stellen. Deshalb auch veschiedene Versionen des Skripts...

    PV: 9,4Kwp, LG 335, Kostal Plenticore, BYD 6,4

  • Ich hab von Kostal den Plenticore. Auch den zapfe ich an - genauso wie den Energymanager, da ich auch ne Wärmepumpe habe und bei der steuere, ob ich die Heizphase über Nachtstrom - oder wenn die Sonne scheint am Tag betreibe.

    Hier ein paar weitere links:

    Kostal Plenticore Daten per skript über Modbus auslesen

    Skript zum Auslesen des B-Control Energy Manager EM300


    Deine Signatur ist nicht sehr aufschlussreich - bist Du noch in der "Findungsphase" ? ;)

    PV: 9,4Kwp, LG 335, Kostal Plenticore, BYD 6,4

  • hi


    Wir betreiben 4 klassische nur einspeise Anlagen von 20 bis 130kwp. Daher habe ich schon einige an Erfahrung sammeln dürfen die letzten Jahre


    Nachdem ich vor kurzem mal zufaellig über einen LG resu gestolpert bin hat sich mein privates Interesse geweckt..


    Es ist jetzt eine 14 kwp Anlage bestellt und 2 byd boxen (ja ich weiss dass die parallel Schaltung noch nicht freigegebennkst aber nach dem letzten Kontakt mit eft systems bin ich für q4 zuversichtlich


    Ebenfalls kostsl plenticore aber der kostal energy manager dazu noch ein pico IQ für die Ost Seite der Anlage mit AC laden


    Ich möchte die daten vom kostal der byd und dem energy manager gerne ich.meine smathome Steuerung bekommen

  • :-) Ok das ist definitiv nicht mehr Findungsphase ^^

    Anbei mal ein Screenshot von Heute. Der Peak Mittags war Warmwasseraufbereitung und was man sonst so mittags macht.

    Ich hab bei mir nur ne kleine Lösung (siehe Signatur) - aber das Spannende ist die Korrelation PV - Wärmepumpe. Mache das über nen Raspberry. Visualisierung auch über den Raspberry und node-red...

    Ansteuern der Wäpu über "umprogrammieren" der Zeitprogramme. Dazu zapfe ich auch den DWD an um die Strahlungsdaten für die nahe Zukunft zu kriegen Das funkt eigentlich auch ganz ok.


    das mit 2 Batteriespeichern - und zwei WR´s wird sicher ein interessantes Thema.




  • ich nutze ne loxone und ne ochsner GWW dazu neun rpi um auf den ebus der ochsner zu kommen somit habe ich die voll im griff sowohl was heizen als auch passiv kühlen betrifft


    Ich möchte über Sollwert Anpassung und Überwachung der Puffer Speicher ein entladen des PV Speichers in der Nacht verhindern sofern die Haus soll Tempe nicht unterschritten werden


    Aufgrund der Beobachtung der erteagswerte einer der anderen hier laufenden Anlagen mit Süd West und Süd Ost Ausrichtung verspreche ich mir einiges von dieser.kombi

  • aber nochmals zurück zum Thema daten...


    Du nutzt dem em300 ich hatte jetzt den kostal EM bestellt und jetzt festgestellt dass der zwar ne API hat es aber bisher keinerlei Zugriff darauf gibt ...


    Ich über lege auch den em300 zu nehmen um diesen per rpi auslesen zu koennen.


    Was meinst du ?


    Hat der kostal EM Vorteile ?