NEWS
[HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write)
-
Hallo zusammen,
Ich stehe kurz vor Unterzeichnung mit Solateur. Es wird dann wohl Huawei werden. Eine Frage ist jedoch noch offen....gibt es nun einen zuverlässigen Weg (Iobroker, API, widget, script)
alle wichtigen Werte zuverlässig in Iobroker zu bekommen und auch Einfluss auf das Ladeverhalten vom Speicher zu haben?
Dumm, wenn ich nachher hier was eingebaut bekomme und es andauernd rumzickt
@fragmike
Bei mir funktioniert es jetzt seit über einem Jahr zuverlässig mit der in Post 1 beschriebenen Methode.
Ab und zu (vll. einmal in zwei Wochen) kommen "komische" Werte vom WR, z.b. Akkustand = 244353455673 oder sowas. Aber dann nur für ein paar Minuten, gerne Nachts, wenn der Akku leer ist. Zur Not kann man so unplausible Daten ja rausfiltern.Die ganzen Monats- / Jahreswerte könnte man (nachdem man die unplausiblen Daten rausgefiltert hat) mit dem sourceanalytix Adapter aufsummieren. Das mache ich aktuell aber nicht, die gucke ich weiterhin in der App nach.
Akku-Entladeleistung begrenzen geht auch gut. Was ich noch nicht hinbekommen habe ist den Akku auf Befehl aus dem Netz zu laden. Das scheint relativ kompliziert über Modbus zu sein. Gehen sollte es eigentlich, denn das entsprechende Register gibt es. Aber Huawei ist da sehr zurückhaltend mit der Beschreibung, was man denn nun in das Register schreiben muss.
-
@fragmike
Bei mir funktioniert es jetzt seit über einem Jahr zuverlässig mit der in Post 1 beschriebenen Methode.
Ab und zu (vll. einmal in zwei Wochen) kommen "komische" Werte vom WR, z.b. Akkustand = 244353455673 oder sowas. Aber dann nur für ein paar Minuten, gerne Nachts, wenn der Akku leer ist. Zur Not kann man so unplausible Daten ja rausfiltern.Die ganzen Monats- / Jahreswerte könnte man (nachdem man die unplausiblen Daten rausgefiltert hat) mit dem sourceanalytix Adapter aufsummieren. Das mache ich aktuell aber nicht, die gucke ich weiterhin in der App nach.
Akku-Entladeleistung begrenzen geht auch gut. Was ich noch nicht hinbekommen habe ist den Akku auf Befehl aus dem Netz zu laden. Das scheint relativ kompliziert über Modbus zu sein. Gehen sollte es eigentlich, denn das entsprechende Register gibt es. Aber Huawei ist da sehr zurückhaltend mit der Beschreibung, was man denn nun in das Register schreiben muss.
@badsnoopy667 Super.. genau das wollte ich hören


-
@badsnoopy667 Super.. genau das wollte ich hören


-
Mal eine Frage, es gibt ja die Möglichkeit den Wechselrichter über RS485 und z.B. einen Rundsteuerempfänger in der Leistung zu drosseln bzw. komplett abzuschalten.

Hat schon jemand es hingekriegt dies über NodeRed zu machen?@joeysch
Über node-red hatte ich noch keinen Bedarf, aber ich habe einen RSE, ich hoffe mal, der wird aber nie aktiv und drossel meine PV.Was mich mehr interessieren würde, vielleicht hat es schon einer umgesetzt, wäre die Daten via Modbus RTU zu bekommen, also sich in den RS485 oder was es ist sich einzuklinken. Vielleicht läuft das stabiler und schneller als Modbus TCP. Dann könnte man vielleicht auch direkt den Modbusadapter nehmen oder auch vielleicht die Wallbox selber. Z.B. die Cfos, glaube die kann auch direkt RS485.
-
@ple
Das Drosseln hat bei mir einen anderen Hintergrund. Ich würde mein System gern Schwarzstartfähig und bei Stromausfall weiterbetreiben können.
Da ich ein dreiphasiges Victronsystem habe, ist das soweit kein Problem. Ich bekomme allerdings ein Problem mit der Faktor 1 Regel. Das heißt, wenn ich nicht am Netz bin, muß der erzeugte Strom irgendwo hin. Anfangs geht das noch in die Akkus (ca. 30 KWh) aber wenn die voll sind, muß ich den Wechselrichter drosseln bis hin zum abschalten.
Deshalb wäre die einfachste Methode, wenn ich über NodeRed auf 60% - 30% - 0% schalten könnte. Sonst muß ich mir irgendwas Hardwaremäßiges einfallen lassen und über den RS485 gehen. -
Achtung: Verbindung mit Modbus Adapter klappt nicht, node-red klappt.
Hier eine Anleitung um den SUN2000 Wechselrichter incl. Batterie und Power Meter per node-red auszulesen und Werte zu schreiben:
1. Wechselrichter korrekt konfigurieren:
Im Wechselrichter muss die Konfiguration per Modbus (TCP) aktiviert sein. Das kann der Installateur direkt erledigen. Alternativ lädt man sich die SUN2000 App auf's Handy und verbindet sich damit über das WLAN des Wechselrichters (also davorstehend im Keller) mit dem WR und stellt das ein. (Unter Kommunikationseinstellungen glaube ich, die Menüs sind ziemlich unübersichtlich mMn.)
Zum Login in die App als Installateur braucht man ein Passwort: 00000a
Eventuell braucht man zum Verbinden auf das WLAN des Wechselrichters auch ein Passwort: Changeme2. Node-Red installieren und Flow importieren:
Man muss im ioBroker node-red installieren. Außerdem muss man in node-red noch drei zusätzliche NPM Module installieren (geht bei den Instanzeinstellungen):
• node-red-contrib-calc
• node-red-contrib-buffer-parser
• node-red-contrib-modbusHat man das erledigt, kann man diesen Flow importieren:
Huawei_SUN2000_node_red_flow_read_write_2023-11.txt
Achtung, weil das hier schon ein paar Mal zu Problemen geführt hat: Man muss die Client-ID in allen Modbus-Nodes korrekt eintragen. Bei mir steht da 2, weil mein Wechselrichter schonmal getauscht wurde. Das muss überall auf den richtigen Wert (meistens 1) geändert werden damit Daten kommen!
Nachdem man den Flow importiert hat muss man ganz rechts im Menü unter "Globale-Konfigurations-Nodes" beim modbus-client noch die IP Adresse vom Wechselrichter und wieder die richtige Client-ID (typischerweise 1) eintragen. (Port ist 502)3. Hinweise:
Dann sollte die Verbindung eigentlich schon funktionieren. Bei mir war dann noch das Problem, das node-red gemeckert hat, dass die Objekte in iobroker nicht existieren in die er schreiben will.
Um das zu fixen habe ich im Flow alle Output-Nodes (die graublauen Boxen rechts) einmal doppeltgeklickt und dort bei "Auto-create --> Create states if not exist" ausgewählt. Dann kann man noch die Einheit und den Typ festlegen und dann werden die States automatisch beim ersten Lesen angelegt. Hierfür ist es erforderlich, dass in den node-red Instanzeinstellungen noch der Hacken bei "Erstellung von Fremd-Objekten zulassen" aktiviert wird.
Zusätzlich habe ich noch den Wert "Readonly --> Object is writeable" gesetzt. K.a. ob das nötig ist, aber ich hatte den Eindruck, dass die Werte sonst nicht korrekt aktualisiert werden.Zum Nachlesen gibt es hier noch die Huawei SUN2000 Modbus Register Übersicht:
Solar Inverter Modbus Interface Definitions V5.pdf (Stand 2023)
Im Flow werden die wichtigsten Größen aber schon abgefragt.4. Modbus-Register schreiben:
Man kann auch Register schreiben! Damit kann man z.B. die Batterie-Entladung auf 0W setzen wenn das eAuto lädt. Damit entlädt sich die Batterie dann nicht unnötig, wenn man das Auto mit Netzstrom lädt im Winter oder Nachts.
Man kann auch TOU (Zeitgesteuertes Laden) aktivieren. Damit kann man wenn man Tibber oder Awattar nutzt zu den günstigen Stunden den Akku aufladen. Um die günstigsten Stunden auszulesen gibt es hier im Forum entsprechende Skripte.4.1 Zeitgesteuertes Laden korrekt konfigurieren und schreiben:
• AC-Laden muss auf 1 stehen (Register 47087). Kann auch mMn permanent auf 1 bleiben.
• Battery Working Mode (Register 47086) kann zwischen 2 (Maximaler Eigenverbrauch) und 5 (TOU, zeitgesteuert Laden) umgestellt werden.
• Man definiert dann in der Huawei FusionSolar App unter Geräte - Dongle - Parametereinstellungen (die 4 Punkte oben rechts) einfach eine Zeit von 0:00 bis 23:59 jeden Tag "laden" (also den ganzen Tag). Dafür muss die Batterie auf TOU (5) gestellt sein.
• Sobald man jetzt per Modbus das Register 47086 von 2 auf 5 umschaltet, fängt die Batterie aus dem Netz an zu laden.
• Maximaler Ladestrom kann über Register 47075 eingestellt werden.
• Stellt man den Working Mode wieder zurück auf 2, hört das Netzladen auf und die Batterie verhält sich wieder "normal".Die nötigen ioBroker Datenpunkte muss man noch anlegen. Also zB. Battery_Max_Charge_Power_SET oder Workingmode_Change.
5. Weiteres
5.1 Mehrere Wechselrichter abfragen
Es gibt noch weitere Möglichkeiten den Flow aufzubauen. Man kann mehrere Adressbereiche auf einmal abfragen, das ist ggf. etwas effizienter. Den Flow dazu habe ich aber nicht getestet:Außerdem enthält der Flow ein Beispiel für die Abfrage mehrerer Wechselrichter in Kaskade. Im Prinzip muss man nur die korrekten IDs pro Wechselrichter eintragen und nicht zu viele Register abfragen, sonst kommen keine Daten mehr. Damit lassen sich auch 3 Wechselrichter (oder ggf. sogar mehr) in einem Flow abfragen.
5.2 Aktuelle Firmware / Modbus Interface Definitions
Hier noch ein Link zu den aktuellen Firmware Versionen:
SUN2000 FirmwareVielen Dank an alle, die den Input geliefert haben!
Ich hoffe es hilf, wenn ich es hier einmal zusammengefasst habe.@badsnoopy667 Hallo. Ich will mich heute an die Thematik herantrauen. Node-Red ist in meinem iOBroker schon installiert und läuft. Auch die drei zusätzlichen Dateien sind eingebunden
.Ich habe aber noch eine Frage zum Flow, da ich eine ANlage ohne Batterien habe: muss ich den Flow deshalb noch anpassen?
-
@ple
Das Drosseln hat bei mir einen anderen Hintergrund. Ich würde mein System gern Schwarzstartfähig und bei Stromausfall weiterbetreiben können.
Da ich ein dreiphasiges Victronsystem habe, ist das soweit kein Problem. Ich bekomme allerdings ein Problem mit der Faktor 1 Regel. Das heißt, wenn ich nicht am Netz bin, muß der erzeugte Strom irgendwo hin. Anfangs geht das noch in die Akkus (ca. 30 KWh) aber wenn die voll sind, muß ich den Wechselrichter drosseln bis hin zum abschalten.
Deshalb wäre die einfachste Methode, wenn ich über NodeRed auf 60% - 30% - 0% schalten könnte. Sonst muß ich mir irgendwas Hardwaremäßiges einfallen lassen und über den RS485 gehen.@joeysch sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):
@ple
Das Drosseln hat bei mir einen anderen Hintergrund. Ich würde mein System gern Schwarzstartfähig und bei Stromausfall weiterbetreiben können.
Da ich ein dreiphasiges Victronsystem habe, ist das soweit kein Problem. Ich bekomme allerdings ein Problem mit der Faktor 1 Regel. Das heißt, wenn ich nicht am Netz bin, muß der erzeugte Strom irgendwo hin. Anfangs geht das noch in die Akkus (ca. 30 KWh) aber wenn die voll sind, muß ich den Wechselrichter drosseln bis hin zum abschalten.
Deshalb wäre die einfachste Methode, wenn ich über NodeRed auf 60% - 30% - 0% schalten könnte. Sonst muß ich mir irgendwas Hardwaremäßiges einfallen lassen und über den RS485 gehen.SUN2000MA V100R001C20 Modbus Interface Definitions.pdf
Seite 57, da fangen die schreibbaren Register an, da gibt es ne Menge "Power max" gedönst. vielleicht ist da was passendes bei. -
@joeysch sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):
@ple
Das Drosseln hat bei mir einen anderen Hintergrund. Ich würde mein System gern Schwarzstartfähig und bei Stromausfall weiterbetreiben können.
Da ich ein dreiphasiges Victronsystem habe, ist das soweit kein Problem. Ich bekomme allerdings ein Problem mit der Faktor 1 Regel. Das heißt, wenn ich nicht am Netz bin, muß der erzeugte Strom irgendwo hin. Anfangs geht das noch in die Akkus (ca. 30 KWh) aber wenn die voll sind, muß ich den Wechselrichter drosseln bis hin zum abschalten.
Deshalb wäre die einfachste Methode, wenn ich über NodeRed auf 60% - 30% - 0% schalten könnte. Sonst muß ich mir irgendwas Hardwaremäßiges einfallen lassen und über den RS485 gehen.SUN2000MA V100R001C20 Modbus Interface Definitions.pdf
Seite 57, da fangen die schreibbaren Register an, da gibt es ne Menge "Power max" gedönst. vielleicht ist da was passendes bei. -
@christof-lewandowski said in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):
Hab alles nach Anleitung konfiguriert, doch bekomme immer die Meldung:
7.5.2023, 11:58:08node: 30000 msg : error "Error: Port Not Open"Hab natürlich die IP Adresse des Wechselrichters in der globalen Konfig gesetzt, als auch die ID auf 1 (auch in den einzelnen Modbus-Gettern. Auch ein Port Test auf Port 502 ist erfolgreich.
Jemand noch zufällig eine Idee?Nutzen den WLAN Dongle mit einem 10 KTL-M1 und 10kW Speicher.
Komischerweise kommen diese Meldungen nicht mehr, funktionieren tut es trotzdem noch nicht

@christof-lewandowski said in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):
Hab alles nach Anleitung konfiguriert, doch bekomme immer die Meldung:
7.5.2023, 11:58:08node: 30000 msg : error "Error: Port Not Open"Hab natürlich die IP Adresse des Wechselrichters in der globalen Konfig gesetzt, als auch die ID auf 1 (auch in den einzelnen Modbus-Gettern. Auch ein Port Test auf Port 502 ist erfolgreich.
Jemand noch zufällig eine Idee?Nutzen den WLAN Dongle mit einem 10 KTL-M1 und 10kW Speicher.
Die Meldungen sind zwar weg, funktionieren tut es trotzdem noch nicht :D.
Hab nun die Meldung:"Getter -> Inject while node is not ready for input."ModbusTCP im Dongle ist aktiviert. WEiß jemand, ob nur eine Verbindung möglich ist? Hab noch ein Mgmt System im EInsatz, was ebenfalls über ModbusTCP die Daten abgreift.
@christof-lewandowski sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):
zwar weg, funktionieren tut es trotzdem noch nicht :D.
Hab nun die Meldung:der Port ist 6607 wenn du den Wechselrichter abrufst.
502 wenn du den Dongle abrufst. -
@atifan
Theoretisch geht das. Es gibt Modbus Register dafür. Praktisch ist das so kompliziert und schlecht dokumentiert, das wird nix befürchte ich. -
Achtung: Verbindung mit Modbus Adapter klappt nicht, node-red klappt.
Hier eine Anleitung um den SUN2000 Wechselrichter incl. Batterie und Power Meter per node-red auszulesen und Werte zu schreiben:
1. Wechselrichter korrekt konfigurieren:
Im Wechselrichter muss die Konfiguration per Modbus (TCP) aktiviert sein. Das kann der Installateur direkt erledigen. Alternativ lädt man sich die SUN2000 App auf's Handy und verbindet sich damit über das WLAN des Wechselrichters (also davorstehend im Keller) mit dem WR und stellt das ein. (Unter Kommunikationseinstellungen glaube ich, die Menüs sind ziemlich unübersichtlich mMn.)
Zum Login in die App als Installateur braucht man ein Passwort: 00000a
Eventuell braucht man zum Verbinden auf das WLAN des Wechselrichters auch ein Passwort: Changeme2. Node-Red installieren und Flow importieren:
Man muss im ioBroker node-red installieren. Außerdem muss man in node-red noch drei zusätzliche NPM Module installieren (geht bei den Instanzeinstellungen):
• node-red-contrib-calc
• node-red-contrib-buffer-parser
• node-red-contrib-modbusHat man das erledigt, kann man diesen Flow importieren:
Huawei_SUN2000_node_red_flow_read_write_2023-11.txt
Achtung, weil das hier schon ein paar Mal zu Problemen geführt hat: Man muss die Client-ID in allen Modbus-Nodes korrekt eintragen. Bei mir steht da 2, weil mein Wechselrichter schonmal getauscht wurde. Das muss überall auf den richtigen Wert (meistens 1) geändert werden damit Daten kommen!
Nachdem man den Flow importiert hat muss man ganz rechts im Menü unter "Globale-Konfigurations-Nodes" beim modbus-client noch die IP Adresse vom Wechselrichter und wieder die richtige Client-ID (typischerweise 1) eintragen. (Port ist 502)3. Hinweise:
Dann sollte die Verbindung eigentlich schon funktionieren. Bei mir war dann noch das Problem, das node-red gemeckert hat, dass die Objekte in iobroker nicht existieren in die er schreiben will.
Um das zu fixen habe ich im Flow alle Output-Nodes (die graublauen Boxen rechts) einmal doppeltgeklickt und dort bei "Auto-create --> Create states if not exist" ausgewählt. Dann kann man noch die Einheit und den Typ festlegen und dann werden die States automatisch beim ersten Lesen angelegt. Hierfür ist es erforderlich, dass in den node-red Instanzeinstellungen noch der Hacken bei "Erstellung von Fremd-Objekten zulassen" aktiviert wird.
Zusätzlich habe ich noch den Wert "Readonly --> Object is writeable" gesetzt. K.a. ob das nötig ist, aber ich hatte den Eindruck, dass die Werte sonst nicht korrekt aktualisiert werden.Zum Nachlesen gibt es hier noch die Huawei SUN2000 Modbus Register Übersicht:
Solar Inverter Modbus Interface Definitions V5.pdf (Stand 2023)
Im Flow werden die wichtigsten Größen aber schon abgefragt.4. Modbus-Register schreiben:
Man kann auch Register schreiben! Damit kann man z.B. die Batterie-Entladung auf 0W setzen wenn das eAuto lädt. Damit entlädt sich die Batterie dann nicht unnötig, wenn man das Auto mit Netzstrom lädt im Winter oder Nachts.
Man kann auch TOU (Zeitgesteuertes Laden) aktivieren. Damit kann man wenn man Tibber oder Awattar nutzt zu den günstigen Stunden den Akku aufladen. Um die günstigsten Stunden auszulesen gibt es hier im Forum entsprechende Skripte.4.1 Zeitgesteuertes Laden korrekt konfigurieren und schreiben:
• AC-Laden muss auf 1 stehen (Register 47087). Kann auch mMn permanent auf 1 bleiben.
• Battery Working Mode (Register 47086) kann zwischen 2 (Maximaler Eigenverbrauch) und 5 (TOU, zeitgesteuert Laden) umgestellt werden.
• Man definiert dann in der Huawei FusionSolar App unter Geräte - Dongle - Parametereinstellungen (die 4 Punkte oben rechts) einfach eine Zeit von 0:00 bis 23:59 jeden Tag "laden" (also den ganzen Tag). Dafür muss die Batterie auf TOU (5) gestellt sein.
• Sobald man jetzt per Modbus das Register 47086 von 2 auf 5 umschaltet, fängt die Batterie aus dem Netz an zu laden.
• Maximaler Ladestrom kann über Register 47075 eingestellt werden.
• Stellt man den Working Mode wieder zurück auf 2, hört das Netzladen auf und die Batterie verhält sich wieder "normal".Die nötigen ioBroker Datenpunkte muss man noch anlegen. Also zB. Battery_Max_Charge_Power_SET oder Workingmode_Change.
5. Weiteres
5.1 Mehrere Wechselrichter abfragen
Es gibt noch weitere Möglichkeiten den Flow aufzubauen. Man kann mehrere Adressbereiche auf einmal abfragen, das ist ggf. etwas effizienter. Den Flow dazu habe ich aber nicht getestet:Außerdem enthält der Flow ein Beispiel für die Abfrage mehrerer Wechselrichter in Kaskade. Im Prinzip muss man nur die korrekten IDs pro Wechselrichter eintragen und nicht zu viele Register abfragen, sonst kommen keine Daten mehr. Damit lassen sich auch 3 Wechselrichter (oder ggf. sogar mehr) in einem Flow abfragen.
5.2 Aktuelle Firmware / Modbus Interface Definitions
Hier noch ein Link zu den aktuellen Firmware Versionen:
SUN2000 FirmwareVielen Dank an alle, die den Input geliefert haben!
Ich hoffe es hilf, wenn ich es hier einmal zusammengefasst habe.@badsnoopy667 Moin, moin, sonnige Grüße von der Küste. Ich habe gestern umgesetzt was in der Anleitung steht - aber leider ohne den erhofften Erfolg.
Ich meine alles gemacht zu haben was hier steht:
- User ID auf 1 gesetzt .. so wie es in meinem WR eingestellt ist
- ich kann den WR anpingen
- MOD-TCP ist im WR auch entsprechend der Vorgaben gesetzt
Nach dem Stoppen und Starten von NodeRed werden die Objekte nicht angelegt, die Kommunikation startet nicht und folgendes lese ich im Protokoll. Was habe ich vergessen oder falsch gemacht?

-
@christof-lewandowski sagte in [HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write):
zwar weg, funktionieren tut es trotzdem noch nicht :D.
Hab nun die Meldung:der Port ist 6607 wenn du den Wechselrichter abrufst.
502 wenn du den Dongle abrufst.@atifan
Danke. Habs jetzt mit dem modbus-proxy "gelöst". Damit kann mein Solarmanager UND node-red Daten per ModbusTCP abgreifen.
Gestern liefs zumindest noch, heute möchte Node-red den Flow nicht mehr starten... -
Achtung: Verbindung mit Modbus Adapter klappt nicht, node-red klappt.
Hier eine Anleitung um den SUN2000 Wechselrichter incl. Batterie und Power Meter per node-red auszulesen und Werte zu schreiben:
1. Wechselrichter korrekt konfigurieren:
Im Wechselrichter muss die Konfiguration per Modbus (TCP) aktiviert sein. Das kann der Installateur direkt erledigen. Alternativ lädt man sich die SUN2000 App auf's Handy und verbindet sich damit über das WLAN des Wechselrichters (also davorstehend im Keller) mit dem WR und stellt das ein. (Unter Kommunikationseinstellungen glaube ich, die Menüs sind ziemlich unübersichtlich mMn.)
Zum Login in die App als Installateur braucht man ein Passwort: 00000a
Eventuell braucht man zum Verbinden auf das WLAN des Wechselrichters auch ein Passwort: Changeme2. Node-Red installieren und Flow importieren:
Man muss im ioBroker node-red installieren. Außerdem muss man in node-red noch drei zusätzliche NPM Module installieren (geht bei den Instanzeinstellungen):
• node-red-contrib-calc
• node-red-contrib-buffer-parser
• node-red-contrib-modbusHat man das erledigt, kann man diesen Flow importieren:
Huawei_SUN2000_node_red_flow_read_write_2023-11.txt
Achtung, weil das hier schon ein paar Mal zu Problemen geführt hat: Man muss die Client-ID in allen Modbus-Nodes korrekt eintragen. Bei mir steht da 2, weil mein Wechselrichter schonmal getauscht wurde. Das muss überall auf den richtigen Wert (meistens 1) geändert werden damit Daten kommen!
Nachdem man den Flow importiert hat muss man ganz rechts im Menü unter "Globale-Konfigurations-Nodes" beim modbus-client noch die IP Adresse vom Wechselrichter und wieder die richtige Client-ID (typischerweise 1) eintragen. (Port ist 502)3. Hinweise:
Dann sollte die Verbindung eigentlich schon funktionieren. Bei mir war dann noch das Problem, das node-red gemeckert hat, dass die Objekte in iobroker nicht existieren in die er schreiben will.
Um das zu fixen habe ich im Flow alle Output-Nodes (die graublauen Boxen rechts) einmal doppeltgeklickt und dort bei "Auto-create --> Create states if not exist" ausgewählt. Dann kann man noch die Einheit und den Typ festlegen und dann werden die States automatisch beim ersten Lesen angelegt. Hierfür ist es erforderlich, dass in den node-red Instanzeinstellungen noch der Hacken bei "Erstellung von Fremd-Objekten zulassen" aktiviert wird.
Zusätzlich habe ich noch den Wert "Readonly --> Object is writeable" gesetzt. K.a. ob das nötig ist, aber ich hatte den Eindruck, dass die Werte sonst nicht korrekt aktualisiert werden.Zum Nachlesen gibt es hier noch die Huawei SUN2000 Modbus Register Übersicht:
Solar Inverter Modbus Interface Definitions V5.pdf (Stand 2023)
Im Flow werden die wichtigsten Größen aber schon abgefragt.4. Modbus-Register schreiben:
Man kann auch Register schreiben! Damit kann man z.B. die Batterie-Entladung auf 0W setzen wenn das eAuto lädt. Damit entlädt sich die Batterie dann nicht unnötig, wenn man das Auto mit Netzstrom lädt im Winter oder Nachts.
Man kann auch TOU (Zeitgesteuertes Laden) aktivieren. Damit kann man wenn man Tibber oder Awattar nutzt zu den günstigen Stunden den Akku aufladen. Um die günstigsten Stunden auszulesen gibt es hier im Forum entsprechende Skripte.4.1 Zeitgesteuertes Laden korrekt konfigurieren und schreiben:
• AC-Laden muss auf 1 stehen (Register 47087). Kann auch mMn permanent auf 1 bleiben.
• Battery Working Mode (Register 47086) kann zwischen 2 (Maximaler Eigenverbrauch) und 5 (TOU, zeitgesteuert Laden) umgestellt werden.
• Man definiert dann in der Huawei FusionSolar App unter Geräte - Dongle - Parametereinstellungen (die 4 Punkte oben rechts) einfach eine Zeit von 0:00 bis 23:59 jeden Tag "laden" (also den ganzen Tag). Dafür muss die Batterie auf TOU (5) gestellt sein.
• Sobald man jetzt per Modbus das Register 47086 von 2 auf 5 umschaltet, fängt die Batterie aus dem Netz an zu laden.
• Maximaler Ladestrom kann über Register 47075 eingestellt werden.
• Stellt man den Working Mode wieder zurück auf 2, hört das Netzladen auf und die Batterie verhält sich wieder "normal".Die nötigen ioBroker Datenpunkte muss man noch anlegen. Also zB. Battery_Max_Charge_Power_SET oder Workingmode_Change.
5. Weiteres
5.1 Mehrere Wechselrichter abfragen
Es gibt noch weitere Möglichkeiten den Flow aufzubauen. Man kann mehrere Adressbereiche auf einmal abfragen, das ist ggf. etwas effizienter. Den Flow dazu habe ich aber nicht getestet:Außerdem enthält der Flow ein Beispiel für die Abfrage mehrerer Wechselrichter in Kaskade. Im Prinzip muss man nur die korrekten IDs pro Wechselrichter eintragen und nicht zu viele Register abfragen, sonst kommen keine Daten mehr. Damit lassen sich auch 3 Wechselrichter (oder ggf. sogar mehr) in einem Flow abfragen.
5.2 Aktuelle Firmware / Modbus Interface Definitions
Hier noch ein Link zu den aktuellen Firmware Versionen:
SUN2000 FirmwareVielen Dank an alle, die den Input geliefert haben!
Ich hoffe es hilf, wenn ich es hier einmal zusammengefasst habe.@badsnoopy667 Hallo, vielen Dank für die Anleitung, habe es eingerichtet und es funktioniert (Node-red Anfänger). Es werden nur nicht alle Werte erfasst. Im Node-red sind die Kästchen heller….. Ist das normal? Die wichtigsten Werte sind ja vorhanden…… ich hänge es mal als Bilder an, sollte hoffentlich zu sehen sein…….
Vielen Dank





-
@badsnoopy667 Hallo, vielen Dank für die Anleitung, habe es eingerichtet und es funktioniert (Node-red Anfänger). Es werden nur nicht alle Werte erfasst. Im Node-red sind die Kästchen heller….. Ist das normal? Die wichtigsten Werte sind ja vorhanden…… ich hänge es mal als Bilder an, sollte hoffentlich zu sehen sein…….
Vielen Dank





@svenh75
die helleren Kästchen sind deaktiviert. Ich glaube da kann man drauf klicken und dann unten in der Ecke auf aktivieren oder so klicken. -
@svenh75
die helleren Kästchen sind deaktiviert. Ich glaube da kann man drauf klicken und dann unten in der Ecke auf aktivieren oder so klicken.@badsnoopy667 Dankeschön, genau so ist es

-
Hallo zusammen. Ich habe zwei SUN2000 und eine Luna2000. Darf ich mir eine Node von Euch runterladen, damit ich die dann an meine Anlage anpassen kann? Bin Node-RED-Anfänger. Muss leider auch blöd Fragen: Wie kann ich denn eine Node runterladen? Vielen herzlichen Dank im voraus.
-
Hallo zusammen. Ich habe zwei SUN2000 und eine Luna2000. Darf ich mir eine Node von Euch runterladen, damit ich die dann an meine Anlage anpassen kann? Bin Node-RED-Anfänger. Muss leider auch blöd Fragen: Wie kann ich denn eine Node runterladen? Vielen herzlichen Dank im voraus.
@harald0708
Du musst den Flow aus Post 1 runterladen und in node-red importieren. Das ist eine Textdatei.
Dann kannst du die Nodes (also die kleinen bunten Kästchen), die sich in diesem Flow befinden, anpassen wie im Post 1 beschrieben (also mit der Unit-ID usw.) -
@harald0708
Du musst den Flow aus Post 1 runterladen und in node-red importieren. Das ist eine Textdatei.
Dann kannst du die Nodes (also die kleinen bunten Kästchen), die sich in diesem Flow befinden, anpassen wie im Post 1 beschrieben (also mit der Unit-ID usw.)@badsnoopy667 Servus, das hab ich erledigt, bin mal so frech, und hänge mich an diese Frage dran. Wie kann ich jetzt dann die Werte im IOBroker verwenden? Brauche die Werte, dass ich meine Wallbox mit den Keba-connect adapter steuern kann. Bitte um Hilfe. danke und schönen Nachmittag