Ich antworte mir mal selbst:
Die aktuell erzeugte Leistung von den Solarpanels kann über die ID 30775 ausgelesen werden.
Fehlt eigentlich nur noch die aktuell im Haus verbrauchte Leistung.
Gibt es hierzu auch eine passende Modbus Registeradresse, oder muss dafür der Home Manager angezapft werden? Weiß das jemand?
hi ich lese den wechselrichter direkt über modbus aus
bei Register
30775 Aktuelle PV-Einspeisewirkleistung über alle Außenleiter, in W
2 S32 FIX0 RO
früher hatte ich das Modul von codeking
nun habe ich aber ein Problem, und zwar zeigt der Wert wenn keine Sonne da auf 0 geht
aber nur kurz dann bring der WR einen Wert von -2147483648 was unterer anschlag der Integer entspricht
ist für die Anzeige selber nicht tragisch aber für den Trend halt blöd da man den Verlauf am Tage wegen der Skalierung nicht wirklich sehen kann
Frage kann ich der variable irgendwie mitgeben das werte unter 0 nicht sinnvoll sind
oder eben wenn ips auf der Variabe den Wert bekommt ne 0 logt
oder dem Trend sagen das er eine fixe Skalierung nehmen soll
ich habe noch nicht wirklich eine Lösung für das Problem
Das Problem besteht auch bei den anderen Leistungswerten.
Ich nutze hier ein Skript, das die Modbus Variablen ausließt und nur Werte >= 0 in eine extra Variable schreibt, die dann geloggt wird. Begrenzt wird der Wert mit:
Vielleicht lässt sich damit auch ein weiteres Phänomen lösen das mich momentan beschäftigt:
Nicht alle Modus Variablen, die ich angelegt habe, werden automatisch alle 5 Sekunden aktualisiert. Ich rätsele derzeit noch, woran das liegen könnte?!?
Möglicherweise klappt es besser, wenn ich ein eigenes Skript benutze, um alle Modbus Variablen auszulesen? Magst Du vielleicht Dein Skript (oder Teile daraus) hier posten?
dafür könnte ich mich auch begeistern. Wenn das möglich ist, dann vielleicht auch ein oberes Limit. Ich kann jetzt nicht genau sagen warum, habe bei aber auch noch einen Max-Wert, der nicht überschritten werden soll.
Für @TorstenS vielleicht noch zur Erklärung: Das Skript liest nicht die Werte über ModBus, sondern nur die Variablen der ModBus Devices. aber ich habe im Gateway dann unter Expertenoptionen Datenblöcke angelegt mit den Adressen, die als Block hintereinander liegen. Somit werden z.B. die Leistungswerte alle zur selben Zeit abgefragt.
Ich habe da aber auch schon gesehen, dass wenn sich Werte hier wohl nicht ändern, mal eine Variable auch keine Aktualisierung erhält.
Ich klinke mich auch mal wieder ein - ich habe eine Frage bezüglich dem Wert 30775, ist das nicht eher die Lade-/Entladeleistung der Batterie? Das wäre ja dann nicht die Leistung die vom Dach kommt (z.B. wenn Batterie fast voll ist, dann lädt es bei mir nur noch mit 1kw Weiter, der Rest geht dann ins Netz - weiterhin ist der Verbrauch vom Haus nicht mit drin).
Habt ihr raus bekommen, welche Modbus Adresse für die aktuelle PV Leistung ist und auch wie schon angefragt für den Verbrauch im Haus?
Experimente gerade mlt dem aktuellen IPSViewDesigner rum:
Die Bilder und Schriftfarben basieren auf den Variablen und sind entsprechend Grün oder Rot. Jedoch wie man sieht, fehlen noch die Werte für den Verbrauch im Haus und für das was gerade aus der PV kommt - die Variable für Verbrauch heute errechne ich noch gerade und die Variable ist nur ein Platzhalter.
das Modbus Register 30775 lasse ich alle 5 sek. auf meinen beiden Wechselrichtern (Sunny Boy und Sunny TriPower) ermitteln. Wenn ich beide Werte zusammenrechne, dann komme ich exakt auf die Leistung, die zur selben Zeit auch im Sunny Portal als die abgegebene Leistung von den PV-Modulen angezeigt wird. Passt also.
Das Einzige, was beachtet werden muss, ist die Umrechnung von @erpe (siehe weiter oben), damit abends „0“ anstatt negativer Werte angezeigt werden.
Die Lade-/Entladeleistung der Batterie ermittle ich auf dem Sunny Boy Storage über die Modbus Register 31393 (Ladeleistung) bzw. 31395 (Entladeleistung).
Übrigens, den momentanen Stromverbrauch (das war ja noch eine meiner offenen Fragen) ermittle ich nicht über ein Modbus Register, da steht der nicht drin.
Wie ich mittlerweile herausgefunden haben, kann man den ja ganz einfach selbst errechnen (ich bin manchmal halt ein Depp und sehe den Wald vor lauter Bäumen nicht… ):
→ momentaner Stromverbrauch = Einspeisung von Dach + Entladeleistung der Batterie + Netzbezug - Netzeinspeisung
@erpe: Vielen Dank noch für den Hinweis mit den Datenblöcken im Expertenmodus. Seitdem ich die dort definiert habe, kommen bei mir alle Daten zuverlässig an.
@pleibling
Dein IPSView Experiment sieht übrigens auch prima aus.
Magst Du die fertige View hier vielleicht teilen? Dann müsste ich das Rad für mich nicht komplett neu erfinden…
kann mir kurz jemand helfen
ich möchte die Variable 34300 in die Variable 52325 schreiben aber nur wenn > -20
sonst soll in Variable 52325 -20 stehen
aber irgendwas mach ich noch falsch