NEWS
[HowTo] Huawei SUN2000 WR Modbus mit node-red (read + write)
-
@kep42010
Sehr gut!
Nur mal direkt als Hinweis: Die Daten müssen gepuffert werden. Wenn Du die Daten abrufst kommen sie nicht genau (!) gleichzeitig an. Das führt dann bei der Berechnung von Erzeugung, Batterieladung, Eigenverbrauch etc. zu ziemlichen Abweichungen, vor allem bei wolkigem Wetter.
Daher schreibe ich alle Werte die kommen erstmal für ca. 20 Sekunden in Listen und bilde dann den Mittelwert der Liste. Und zwar genau im gleichen Moment (über Timer). Somit habe ich dann alle 20 Sekunden Mittelwerte die zusammenpassen. Damit kann man dann gut weiterrechnen und auch nette Diagramme basteln:Grau: Hausverbauch
Blau: Akku- Laden
Hellblau: Akku- Entladen
Gelb: Wallbox
Grün: Einspeisung -
@badsnoopy667 Mega, genau das ist auch was ich vorhab. Wallbox gezielt ansteuern und einige Hausverbraucher smart zuschalten
-
@biervoegelhasso Ist es möglich dein Grafana Dashboard als als import in mein Grafana zu bekommen ? Ich danke dir um deine Unterstützung. Lg Daniel
-
@badsnoopy667
Wie kommst du an die kWh Verbräuche?
Suche da noch die passenden Adressen für, damit ich das in Influx schieben kann und später zu visualisieren.
In Fusion Solar stehen die zumindest drin. -
@ple
Die Werte für z.B. Eigenverbrauch, Erzeugung usw. (in kWh) bekomme ich nicht über Modbus. Dafür gibt es keine Register (außer für den Tagesetrtrag, der schließt aber Batterieentladung mit ein, also unnütz).
Die Werte berechne ich mir selber. Dazu zähle ich sie alle 10 Sekunden hoch:Kann das irgendwie schlecht in Worte fassen, ich hoffe man erkennt es auf dem Bild. Die Werte in kWh werden alle 10 Sekunden um den Wert in W ergänzt, geteilt durch 360000 Millisekunden. Dann stimmt die Einheit.
"Sind die Werte nicht total ungenau, wenn man nur alle 10 Sekunden aktualisiert?" Nicht wirklich. 0.2-0.3 kWh am Tag hat man bestimmt Abweichung, aber das ist mir völlig egal.
-
@badsnoopy667
so hat mir keine Ruhe gelassen.
Mit dem Update des dongle auf die 130 gibt es neue Register, nun braucht man nicht mehr rumrechnen für aktuelle Leistung Bezug, Einspeisung, Batterie (habe keine) und Hausverbauch.
Man muss dazu wissen, das man die Unit id 100 dafür eintragen muss beim Register, welches man auslesen möchte. Die globale bleibt weiterhin auf 1 stehen.
Leider gibt es noch keine Register für kWh, habe mal ein paar durchprobiert aber nichts gefunden. Denke aber das kommt noch von Huawei, wäre auch sonst echt blöd. Ich habe mal angefragt.
Ansonsten teile ich hier noch meinen Flow, der kann auch die Leistung in W pro String rausgeben. Habe die dann noch summiert für die Dachflächen SO und NW. Man kann gut sehen wie NW einspringt wenn SO abnimmt.
Ich habe viel mit NodeRed rumgespielt, keine Ahnung ob es noch besser geht.
Flow.txt -
Kann mir jemand erklären wie wo genau ich diese Daten eintragen muss?
Bin leider ganz neu bei Node Red und blicke gerade nicht durch.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 die ClientID (typischerweise 1) eintragen. (Port ist 502)
So sieht das bei mir aus.
Verstehe aber nicht wo ich die IP usw. eintragen muss -
@fridolin01
Bei mir gibt es unter dem Menüpunkt "modbus-client" noch einen weiteren Punkt "WLAN-FE", siehe Screenshot. WEnn man da doppelklickt kann man die benötigten Daten eingeben.Hast Du die zusätzlichen node-red Pakete installiert?
EDIT: Bin mir sicher, Du hast die zusätzlichen Module nicht installiert. In deinem Screenshot sieht man links ja: "unknown: calculator". Also bitte die drei fehlenden Module installieren:Man muss bei 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-modbusSieht für mich ein bisschen so aus, als würde da was fehlen.
PS: Die Client-ID muss in allen Modbus Nodes korrekt eingetragen werden, das also dann auch nochmal prüfen.
-
Hallo zusammen,
Ich habe leider das selbe Problem.
Ich habe den flow Import und der Typ Modus-client ist unbekannt.
iobroker Version 5.3.8
Node-red Version 3.3.1Könnt ihr mir weiterhelfen?
Viele Grüße
-
@mickym Das klingt doch nach einer Frage für Dich, oder?
-
@martyl Hast Du die Node-Red Instanz neu gestartet?
Wieder ein Grund warum ich das Eintragen zusätzlicher Nodes in der Adapterkonfig nicht mag, sondern lieber den Paletten-Manager nutze. Was ich Dir empfehlen würde, wenn der Neustart der Node-Red Instanz nichts gebracht hat.
Am fehlenden Backup mit zusätzlichen Nodes hoffe ich stark, dass da bei den Entwicklern sich was tut und man auf die Konfiguration im Adapter verzichten kann. Wenn man derzeit die Projektfunktion in NodeRed nutzt, wird nämlich nichts gesichert: https://forum.iobroker.net/topic/57022/neuaufbau-kein-recovery-nodered-mit-backitup-möglich/3
-
Hey, ja ich hatte es neugestartet.
Direkt in Node-red fehlt mir leider der Palettenmanager.Habt ihr noch einen Tipp?
-
@martyl Du musst in der Adapterkonfiguration den Pallettenmanager aktivieren.
-
Moin zusammen
So meine Werte bekomme ich nun in den IOBroker vom WR
probiere leider Erfolglos seit 2 Tagen und unzähligen Anläufen meine Autarkie zu berechnen und in Grafana anzuzeigen.
Eigentlich sollten hierzu alle Werte bereit stehen.
Kannst du mir erklären wie das Blockly dafür aussehen müsste?
Meine Rechnung sieht wie folgt aus
1-Eigenverbrauch(Täglich)/Gesamtverbrauch(Täglich)Daten sind vorhanden, da Hausverbauch per Shelly 3EM aufgezeichnet werden.
Rest sollte aus dem WR kommen oder nicht?
Dazu rechne ich aktuelle WR Leistung - aktueller Verbrauch = aktuelle Einspeisung
Oder gibt der WR die aktuelle Einspeiung direkt aus?
Habe noch kein Huawei Smart Meter verbaut, und deswegen keine Daten zum Vergleich -
Ich bin zwar mit Grafana noch nicht ganz fertig, aber das sollte dir bereits helfen.
Die Variablen Preise für Strom import/export müsstest noch anpassen. Ich bin mir nicht sicher ob die im Panel direkt hinterlegt sind.
Die erste Zeile im Grafana sind die aktuellen Werte. Wochen/Monats/Jahreauswertung bin ich noch dran, dauert aber noch.
Fehler könnten auch noch vorhanden sein, müssten mal validieren.Gruß
-
@ple
Ohne die entsprechenden Blockly Berechnungen wirds schwierig oder nicht?
trotzdem Danke für den Export -
@fridolin01
Das wird alles in Grafana gemacht, kein blockly, kein Java. Das ist schon echt cool was man mit Grafana so machen kann.
Also wenn du meine Flow nimmst+ mein Dashboard und die Variablen für Stromkosten angelegt sind, müsste das so klappen.
Einzig im Flow müsstest du die pv Stränge ändern, da bei mir pv1,2,4,6,7,8 belegt sind. -
vielen, vielen Dank für die tolle Anleitung. Hat damit alles perfekt geklappt. Jetzt benötige ich nur noch eine(n) Idee/Tipp von Dir.
Ich habe einen Huawei mit 10 Kw Speicher. Im Moment lese ich die Energie-Daten mit node-red aus einem anderem System aus und würde diese gerne verwenden um die Huawei Batterie zu laden und zu entladen. Finde aber nicht die richtige Adresse um dies anzusteuern. Könnte ich mit den Ladewerten arbeiten? Hast Du eine Idee ?
Wäre sehr nett von Dir wenn Du mir Feedback gibst, danke
Michael -
@softfruits
Hi. Ich bin mir nicht sicher, was Du meinst? Willst Du der Batterie sagen, wann sie laden und wann sie entladen soll?
Das macht sie ja eigentlich selber. Sobald Überschuss da ist, geht der in den Akku. Wenn Strom gebraucht wird, entlädt der Akku. Man kann die maximale Lade- und Entladeleistung festlegen, damit z.B. der Akku nicht entlädt, wenn man ein eAuto anklemmt. Aber soweit ich weiß kann man dem Akku nicht sagen: Hey, jetzt bitte aufladen.
Kannst Du nochmal genauer sagen was du möchtest? -
@ple
Habe mich mal mit deinem Grafana Export beschäftigt.
Das Problem ist das alle deine Datenpunkte bei mir garnicht existieren.
Lese ich nicht genug Daten aus dem WR per Node Red?
Verstehe nicht wie du an die Datenpunkte kommst.
Das sind meine und auch die einzigen.