Benachrichtigungen
Alles löschen

AC/DC Speicherlösung mit Victron MPPT, Pylontech, Hoymiles, Huawei und openDTU-OnBattery

608 Beiträge
63 Benutzer
146 Likes
33.4 K Ansichten
(@manos66)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 77
 

Genau 😉 Dadurch kannst du xx Gigawatt an PV Paneele selber anschließen, ohne dass ein Elektriker, Behörde usw usw involviert werden muss. 

Und seit 01.04.2024, du darfst hoechstens 2kW an Solar Paneele fuer eine BKW Registrierung melden.

es zwar mega nervig ist Kabel zu ziehen

 

 


   
AntwortZitat
(@forum2023)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 132
 

Veröffentlicht von: @cacu15

Es geht aber auch über REST, die REST API Dokumentation ist an der Stelle nciht ganz aktuell - dieser Request fehlt z.B. in der Doku komplett (es ist nur der GET aufgeführt). Aber aus dem Code kann man das ganz gut "reverse engineeren". Habe ich gerade eh' gemacht, da ich meine eigene Ladelogik in in ESPHome und nur mit REST (ohne MQTT) baue.:

Um die Leistung (bzw. Spannung und Stromstärke) des Huwei zu ändern, muss man den folgenden HTTP Request schicken:

 

POST      http://<FQDN   / IP von OpenDTU>/api/huawei/limit/config

 

Headers:

Content-Type: application/x-www-form-urlencoded
Authorization: Basic base64(<user>:<password>)

Body (in x-www-form-urlencoded, also <key>=<value> Format):

data="{"online":true,"voltage_valid":true,"voltage":52,"current_valid":true,"current":1}"

Hallo @cacu15,

hast du vielleicht die richtigen Parameter bei der Hand, um beim Huawei über die REST-Api die permanten Defaultwerte für Spannung und Strom zu setzen?

Hintergrund ist, dass ich verhindern möchte, dass das Huawei nach Pannen (Stromausfall, WLan-Fehler, ...) ggf mit Maximalwerten und 3000W losballern kann. Deswegen möchte ich die permanenten Limits (die nach Stromausfällen greifen) auf 48V und 0A setzen.

Ich suche schon eine Weile, habe aber die genauen Werte noch nicht gefunden. Anhand deines Beispiels würde ich auf sowas tippen:

data={"online":false, "voltage":48, "current_valid":true, "current":0}

Würde das für meine Zwecke passen? (Oder müsste es anstelle von "online":true stattdessen "offline":true heißen? Und was macht das "current_valid"?)

 

EDIT: Beim Ausprobieren über Curl habe ich  {"type":"success","message":"Settings saved!","code":1001}  bekommen. Kann ich dann davon ausgehen, dass meine permanenten Werte jetzt korrekt gesetzt sind?

 

EDIT2: Scheint geklappt zu haben. Nach Ausstecken und Einstecken ist das Huawei friedlich geblieben. Vorher wurde es immer ca. 30sec nach dem Einschalten durch den Shelly S wegen Überlast (eben die vollen 3KW) stillgelegt, jetzt bleibt es an.


   
AntwortZitat
(@cacu15)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 117
 

@forum2023 

Sieht für mich OK aus, Dein Request. Der JSON-Key für die Unterscheidung von online oder offline ist "online", siehe Code in https://github.com/helgeerbe/OpenDTU-OnBattery/blob/development/src/WebApi_Huawei.cpp, Methode: void WebApiHuaweiClass::onPost(AsyncWebServerRequest* request). Ein Key "offline" kennt der Code nicht.

Hat ja bei Dir auch anscheinend geklappt mit Deinem Aufruf.


   
forum2023 reacted
AntwortZitat
(@forum2023)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 132
 

Veröffentlicht von: @cacu15

siehe Code in https://github.com/helgeerbe/OpenDTU-OnBattery/blob/development/src/WebApi_Huawei.cpp, /a> Methode: void WebApiHuaweiClass::onPost(AsyncWebServerRequest* request).

Danke für die Verlinkung auf das passende Sourcefile. 👍

Laut Source brauche ich sowohl für das Setzen der Spannung, als auch für das Setzen des Stromes den entsprechenden Zusatz "xxx_valid":true, so dass das vollständige Kommando als Data-JSON folgendes enthalten muss:

data={"online":false, "voltage_valid":true, "voltage":48, "current_valid":true, "current":0}

Ohne das voltage_valid:true oder das current_valid:true wird der mitgeschickte jeweilige Wert für die Spannung oder den Strom gar nicht erst ausgelesen.

 

EDIT: Damit jemand, der das gleiche Problem hat, den Post mit der Suchfunktion leichter findet, noch ein paar Schlagwörter:

- Ladegerät Huawei R4850G2
- Einstellen der Offline-Werte (bzw Defaultwerte nach Stromausfall) von Spannung und Strom

curl -u "admin:passwort" http://<ip-adresse>/api/huawei/limit/config -d 'data={"online":false, "voltage_valid":true, "voltage":48, "current_valid":true, "current":0}'


   
cerise and Manos66 reacted
AntwortZitat
(@forum2023)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 132
 

Einen Schönheitsfehler gibt es bei der von mir verwendeten Version der OpenDTU-onBattery V4.4.6-dirty/Hash 2024.02.19.post1:

Die oberen Zeilen mit den wichtigsten Statuswerten werden vom WebUI nicht mehr upgedated. Ich muss immer F5 drücken, um die aktuellen Werte zu sehen. (Meine älteren OpenDTUs updaten im gleichen Browser anstands- und anlasslos.)

Ist das ein bekannter Fehler?


   
AntwortZitat
(@cerise)
Vorsichtiger Stromfühler
Beigetreten: Vor 7 Monaten
Beiträge: 38
 

Veröffentlicht von: @forum2023

ein bekannter Fehler?

Ja, wurde hier gefixt.

 


   
forum2023 reacted
AntwortZitat
(@forum2023)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 132
 

Veröffentlicht von: @forum2023

Veröffentlicht von: @forum2023

ein bekannter Fehler?

Ja, wurde hier gefixt.

Nach dem Lesen der Release Notes zu den verschiedenen Versionen habe ich eben die 2024.03.23 eingespielt, und mein Problem ist verschwunden - sehr erfreulich, danke!


   
AntwortZitat
(@forum2023)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 132
 

Veröffentlicht von: @cacu15

ja, ich überlasse die Regelung im Moment ziemlich komplett der OpenDTU.

[...]

Der Vorteil, wenn man ALLES von OpenDTU regeln läßt ist m.E., dass da dann auch sehr schnell zwischen Einspeisen und Laden umgeschaltet wird. Das bekommt man sonst nicht mit dieser Reaktionszeit hin, denke ich.

Ich habe seit eineinhalb Wochen OpenDTU-oB mit dem Huawei, zwei Pylontechs mit zusammen 8kWh Kapazität, einem HM-600 als Einspeise-WR und insgesamt etwa 3kWp an Solarmodulen laufen.

Ich verwende ebenfalls die eingebaute Steuerung für Laden und Entladen und bin ebenfalls recht zufrieden.

Meckern auf hohem Niveau kann ich nur an Tagen wie gestern und heute, an denen ein ständiger und sehr schneller Wolken-Sonne-Wechsel stattfindet.Habe ich sonst Regelschwinger bis etwa 250W rauf und runter, so sind es gestern und heute Schwinger mit bis zu 1000W plus und minus, weil die Regelung doch immer mindestens 10 Sekunden Delay hat.

Gottlob sind so wilde Tage nicht so häufig. 😉


   
AntwortZitat
(@linos)
Vorsichtiger Stromfühler
Beigetreten: Vor 4 Monaten
Beiträge: 27
 

Hallo @forum2023,

Veröffentlicht von: @forum2023

beim Huawei über die REST-Api die permanten Defaultwerte für Spannung und Strom zu setzen?

Hintergrund ist, dass ich verhindern möchte, dass das Huawei nach Pannen (Stromausfall, WLan-Fehler, ...) ggf mit Maximalwerten und 3000W losballern kann. Deswegen möchte ich die permanenten Limits (die nach Stromausfällen greifen) auf 48V und 0A setzen.

Aus den gleichen Beweggründen habe ich mir zum einrichten das Projekt "Esp-HuaweiR4850-Controller" auf einen D1mini geflasht.

Ging wirklich super... Würde dir den Tipp geben deine Ladeschlussspannung einzugeben und einen minimalen Strom zB 1A zulassen, damit das Huawei nicht durcheinander kommt bei zB 0A


   
AntwortZitat
(@linos)
Vorsichtiger Stromfühler
Beigetreten: Vor 4 Monaten
Beiträge: 27
 

Hi Leute,
da mein Wlan nicht so toll am Einsatzort ist und Kabel einfach Kabel ist wollte ich das Thema LAN erneut aufgreifen.

Innerhalb der letzten 39 Seiten (finde es nicht mehr) wurde bereits gesagt, dass die GPIOs ausgehen können bei bestimmten Konstellationen.

Wäre folgendes Setup grundlegent möglich und wenn ja, welches Board würde dafür gehen?

Huawei; Relais f. Huawei; HM-600; JK-BMS; Ethernet


   
AntwortZitat
(@forum2023)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 132
 

Veröffentlicht von: @linos

Aus den gleichen Beweggründen habe ich mir zum einrichten das Projekt "Esp-HuaweiR4850-Controller" auf einen D1mini geflasht.

Klingt interessant. Da ich aber schon eine OpenDTU-oB zur Steuerung des Huawei nutze und sowieso nicht so der Hardware-Mensch bin, war die schnelle Lösung per Software über ein richtig bestücktes curl-Kommando auf dem Prompt die passendste Lösung.

Veröffentlicht von: @linos

Würde dir den Tipp geben deine Ladeschlussspannung einzugeben und einen minimalen Strom zB 1A zulassen, damit das Huawei nicht durcheinander kommt bei zB 0A

Nicht lieber die "floating Voltage"? Diese Defaultspannung kann ja u.U. viele Stunden anliegen, z.B. wenn zu Beginn der Nacht ein kurzer Stromausfall stattfindet oder wenn man tagsüber unterwegs ist. Da wäre mir die Ladeschlussspannung zu heikel.

Aber ein bisschen Saft zu geben, damit der Akku im Zweifelsfall nicht in die Tiefentladung rutschen kann, ist vermutlich gar nicht dumm. (Dann stelle ich für meinen Pylontech mal 49.0V und 1.0A als Default ein.)


   
AntwortZitat
(@linos)
Vorsichtiger Stromfühler
Beigetreten: Vor 4 Monaten
Beiträge: 27
 

Veröffentlicht von: @forum2023

Klingt interessant. Da ich aber schon eine OpenDTU-oB zur Steuerung des Huawei nutze und sowieso nicht so der Hardware-Mensch bin, war die schnelle Lösung per Software über ein richtig bestücktes curl-Kommando auf dem Prompt die passendste Lösung.

Die DTU-ob ist bei mir auch geblieben. Habe den D1mini mit dem Projekt nur kurz an den CAN vom Huawei gehangen um die Werte einmalig zu setzten. Eine Integration in DTU-ob wäre bestimmt nicht verkehrt. Könntest ja auch eine Anfrage auf Github erstellen

[quotee data-userid="13865" data-postid="201509"]

Nicht lieber die "floating Voltage"? Diese Defaultspannung kann ja u.U. viele Stunden anliegen, z.B. wenn zu Beginn der Nacht ein kurzer Stromausfall stattfindet oder wenn man tagsüber unterwegs ist. Da wäre mir die Ladeschlussspannung zu heikel.

Kannst du natürlich auch machen. Mit Ladeschlussspannung meine ich deine persönliche Grenze und nicht absolute von 3,65V/Zelle.

Persönlich habe ich 3,40V/Zelle eingestellt, denn wenn der Fall eintritt und der Akku recht voll sein sollte, damit das Huawei dann immer das höhere Potenzial besitzt.

Der Strom würde ja dann eh beim erreichen der eingestellten Spannung bis auf 0A singen 

 


   
AntwortZitat
(@forum2023)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 132
 

Veröffentlicht von: @linos

Die DTU-ob ist bei mir auch geblieben. Habe den D1mini mit dem Projekt nur kurz an den CAN vom Huawei gehangen um die Werte einmalig zu setzten. Eine Integration in DTU-ob wäre bestimmt nicht verkehrt. Könntest ja auch eine Anfrage auf Github erstellen

Der Curl-Befehl war ja nur möglich, weil das Huawei an der OpenDTU-oB hing und darüber gesteuert werden konnte. Insofern würde es reichen, in der Doku einen Hinweis zu geben, wie man nach Anschließen des Huawei an die OpenDTU-oB per Kommandozeile die Defaultwerte setzen kann.


   
AntwortZitat
(@cacu15)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 117
 

Veröffentlicht von: @linos

Hi Leute,
da mein Wlan nicht so toll am Einsatzort ist und Kabel einfach Kabel ist wollte ich das Thema LAN erneut aufgreifen.

Innerhalb der letzten 39 Seiten (finde es nicht mehr) wurde bereits gesagt, dass die GPIOs ausgehen können bei bestimmten Konstellationen.

Wäre folgendes Setup grundlegent möglich und wenn ja, welches Board würde dafür gehen?

Huawei; Relais f. Huawei; HM-600; JK-BMS; Ethernet

Hi @linos,

das Setup ist recht ähnlich zu meinem. Bis auf dsas JK-BMS, stattdessen habe ich einen Pylontechakku. Gehe mal davon aus, das das JK-BMS auch über CAN angebunden wird.

Dann wird es auf jeden Fall schwierig. Ich habe es mit einem Olimex ESP32 ISO POE versucht.

  • Für den HM600 brauchst DU ein NRF24L01+ Funktomodul, dass 1 SPI belegt und damit 6 GPIOs braucht
  • Für den CAN Controller des Huawei einen weitern SPI und 5 GPIOs
  • Wenn man für das JK-BMS denselben CAN COntroller verwenden kann, wie für den Pylontech, dann belegt der 2 GPIOs
  • Relais braucht nur 1 GPIO
  • Das Ethernet belegt dann zusätzliche GPIOs (je nach Board), iirc dann sind das 4 GPIO. Die sind dann echt zusätzlich. Man nutzt dann ja das WLAN des ESP32 gar nicht, es belegt aber trotzdem Resourcen.

Das Problem ist dann, dass man ja nicht jeden GPIO nach belieben verwenden kann, manche können nur Inbound, manche nur Outbund.

Ich habe bei mir das Olimex ESP32 POE ans Laufen bekommen mit

  • HM600
  • Pylontech
  • Relais
  • Ethernet

Den Huawei CAN Controller habe ich nicht zum Laufen bekommen, bin aber nicht sicher, woran das genau lag. Ich war der Meinung, dass ich alle GPIOs für das Huawei entsprechend ihrer Spezifikationen verwendet hatte, aber es hat nicht funktioniert. Da war es für mich dann einfacher, doch auf WLAN zu setzen. Dafür habe ich dann einen ESP32 mit einem externen Antennenanschluss genommen (z.B. ein esp32-wroom-32u, wichtig ist das "u"). Damit ist der WLAN Empfang bei mir ausreichend.

 


   
AntwortZitat
(@cacu15)
Vorsichtiger Stromfühler
Beigetreten: Vor 1 Jahr
Beiträge: 117
 

@forum2023 @linos

Das Setzen der permanenten Limits geht nach meinem Verständnis auch ganz ohne CURL direkt über die GUI von OpenDTU oB:

Einfach in dem Dialog für die Huawei Limits die gewünschten Werte eintragen und dann den Schalter "Set limit, CAN bus not connected" drücken. Das ruft dann genau dieselbe Methode auf und setzt die Limits die gelten sollen, wenn das Netzteil offline ist, d.h. keine CAN Connection hat.


   
forum2023 reacted
AntwortZitat
Seite 39 / 41
Teilen: