NEWS
Solaredge Adapter (Photovoltaikanlage)
-
Hallo,
ich habe folgendes Problem. Mein Speicher ist aktuell im Standby Modus. Kann mir jemand sagen, wie ich den wieder aktiv bekomme?
-
@flisse Mache mal ein Javascript so wie das Beispiel im anderen Thread oder wie das hier
schedule("*/5 * * * * *", async function () {
setState("modbus.3.holdingRegisters.103237_Str"/Storage control mode/, 4);
setState("modbus.3.holdingRegisters.103243_StChDisChMode"/Storage Charge/Discharge Mode/, 7);
setState("modbus.3.holdingRegisters.103247_Remote_Control_Charge_Limit"/Remote Control Charge Limit/, 1000);
}); -
@lisalisa sagte in Solaredge Adapter (Photovoltaikanlage):
schedule("*/5 * * * * *", async function () {
setState("modbus.3.holdingRegisters.103237_Str"/Storage control mode/, 4);
setState("modbus.3.holdingRegisters.103243_StChDisChMode"/Storage Charge/Discharge Mode/, 7);
setState("modbus.3.holdingRegisters.103247_Remote_Control_Charge_Limit"/Remote Control Charge Limit/, 1000);
});Hilft leider nicht. Die Werte der entsprechenden Register werden kurz gesetzt, aber direkt wieder zurückgesetzt auf den im Screenshot sichtbaren Wert.
Habs jetzt wieder zum Laufen gebracht. Ich habe mich per Laptop mit dem WLAN des Wechselrichters verbunden und dann die Seite 172.16.0.1 aufgerufen. Dort habe ich dann festgestellt, dass der Speicher deaktiviert war. Habe den wieder aktivieren können und er lief sofort wieder.
-
@cybtrash kannst du mir hierbei etwas helfe? Würde auch gerne annähernd die selbe Anzeige in meinem Vis haben wie ich sie von Monitoring kenne. Modbus hab ich soweit installiert. Einige Werte bekomme ich auch schon. Der Akku fehlt mir noch komplett. Hab hier ein paar Registeradressen, scheinen aber die falschen zu sein, da komplett andere Werte rüber kommen.
Wie hast du das Widget für den Vis erstellt? -
@lisalisa Muss man im Wechselrichter Einstellungen vornehmen, damit man die Modbus Register per ioBroker setzen kann? Bei mir ist es immer so, dass wenn ich einen Wert ändere, der Batteriestatus immer wieder auf 1 geht.
-
@flisse Nicht das ich wüsste., bei mir bleiben die Änderungen per Javascript bestehen.
Du kannst ja mal von deinen WR Einstellungen screenshots senden, ich bin aber grad auch nicht mehr drin in der Materie (ist alles schon ne weile her) -
@lisalisa
Leider etwas spät die Antwort, aber hier mal ein paar Screenshots von den WR-Einstellungen:
Kannst du das bitte einmal mit deinen Einstellungen vergleichen? -
@flisse sagte in Solaredge Adapter (Photovoltaikanlage):
Kannst du das bitte einmal mit deinen Einstellungen vergleichen?
Habe genau die gleichen Werte eingestellt
-
@osu
Hallo zusammen,ich bekomme einfach nicht meine BYD LVS 12 ins System. Daher suche ich nach den modbus-(Holding)Register für die Batterie. Der Akku ist an eine Solaredge - Anlage angeschlossen.
Hat vielleicht einer die Register für die Batterie / gibt es ein Datenblatt wo ich die Register finden kann. Im Netz finde ich nichts und BYD mach daraus ein Geheimnis.
Das ganze soll mit dem IOBroker erfasst werden und für eine LVS gibt es keinen Adapter
-
-
@steff-0 sagte in Solaredge Adapter (Photovoltaikanlage):
....für eine LVS gibt es keinen AdapterDen bydhvs Adapter kannst auch verwenden, der größte Teil funktioniert auch mit LVS
-
@lisalisa
Vielen Dank für die Infos.
Die Modbus-Register funktionieren. Das mit den BYD-HVS-Adapter habe ich nie probiert. Habs jetzt mal hineingezogen... Es funktioniert auch mit der LVS Und der Adapter erkennt auch die Batterie als LVS.In manchen Fällen möchte ich nicht, dass die Batterie weiter entladen wird. Dies ist z.B. der Fall, dass ich bei einer Ladung mit der Wallbox dann eine Restkapazität im PV-Akku für die Nacht vorhalten möchte.
Wie kann man den PV-Akku dazu hindern, weiter Leistung abzugeben? Welchen (Register)"Schalter" muss man da setzen? -
@steff-0 sagte in Solaredge Adapter (Photovoltaikanlage):
@lisalisa
In manchen Fällen möchte ich nicht, dass die Batterie weiter entladen wird. Dies ist z.B. der Fall, dass ich bei einer Ladung mit der Wallbox dann eine Restkapazität im PV-Akku für die Nacht vorhalten möchte.
Wie kann man den PV-Akku dazu hindern, weiter Leistung abzugeben? Welchen (Register)"Schalter" muss man da setzen?Laden begrenzen mache ich aber mit Entladen begrenzen habe mich noch nicht beschäftigt.
Lies da mal durch und suche mal nach meinen anderen Beiträgen , dann müsstest du genug Infos finden.
https://forum.iobroker.net/topic/48259/mit-se8k-rws-und-byd-speicher-das-speicher-laden-regeln -
Hallo zuzsammen,
hier meine aktuellen Adressen falls jemand Bedarf hat - funktionieren auch.
Ich habe die Umrechnung bereits integriert und arbeite in kWh!
Achtung: Anlage mit 2 Wechselrichtern (deviceID1 and 2)_address deviceId name description unit type len factor offset formula role room poll wp cw isScale 97601 1 Batt1_Manufacturer string 8 1 0 true false false false 97617 1 Batt1_Model string 16 1 0 true false false false 97633 1 Batt1_Firmware string 16 1 0 true false false false 97649 1 Batt1_Serial string 16 1 0 true false false false 97665 1 Batt1_ID Device ID uint16be 1 1 0 true false false false 97667 1 Batt1_RatedEnergy Nennenergie kWh floatsw 2 1 0 x * Math.pow(10, -3) true false false false 97669 1 Batt1_MaxChargeConPower Max. Ladeleistung Fortlaufend W floatsw 2 1 0 true false false false 97671 1 Batt1_MaxDischargeConPower Max. Entladeleistung Fortlaufend W floatsw 2 1 0 true false false false 97673 1 Batt1_MaxChargePower Max. Ladeleistung W floatsw 2 1 0 true false false false 97675 1 Batt1_MaxDischargePower Max. Entladeleistung W floatsw 2 1 0 true false false false 97709 1 Batt1_AverageTemp Durchschnittstemperatur °C floatsw 2 1 0 true false false false 97711 1 Batt1_MaxTemp Maximale Temperatur °C floatsw 2 1 0 true false false false 97713 1 Batt1_Voltage Aktuelle Spannung V floatsw 2 1 0 true false false false 97715 1 Batt1_Current Aktueller Strom Minus = Laden; Plus = Entladen A floatsw 2 1 0 true false false false 97717 1 Batt1_Power Aktuelle Leistung Minus = Entladen; Plus = Laden W floatsw 2 1 0 true false false false 97719 1 Batt1_TestExport gesamt Exportierte Energie - heute? kWh uint64le 4 1 0 x * Math.pow(10, -3) true false false false 97723 1 Batt1_TestImport gesamt Importierte Energie - heute? kWh uint64le 4 1 0 x * Math.pow(10, -3) true false false false 97727 1 Batt1_MaxEnergy Maximale Ladung kWh floatsw 2 1 0 x * Math.pow(10, -3) true false false false 97729 1 Batt1_AvailableEnergy Nutzbare Ladung kWh floatsw 2 1 0 x * Math.pow(10, -3) true false false false 97731 1 Batt1_StateOfHealth Lebenszustand % floatsw 2 1 0 true false false false 97733 1 Batt1_StateOfCharge Ladezustand % floatsw 2 1 0 true false false false 97735 1 Batt1_Status Battery operating state: 0 – Off; 1 – Standby; 2 – Init; 3 – Charge; 4 – Discharge; 5 – Fault; 7 - Idle uint32sw 2 1 0 true false false false 97737 1 Batt1_StatusIntern Vendor-defined status codes. uint32sw 2 1 0 true false false false 97739 1 Batt1_EventLog Battery vendor's last fault ID uint16le 1 1 0 true false false false 40001 1 C_SunSpec_ID "Wert = ""SunS"" (0x53756e53). Identifiziert dies eindeutig als eine SunSpec Modbus-Karte" uint32be 2 1 0 true false false false 40003 1 C_SunSpec_DID Wert = 0x0001. Identifiziert dies eindeutig als einen SunSpec “Common Block“ uint16be 1 1 0 true false false false 40004 1 C_SunSpec_Length 65 = Länge eines Blocks in 16-bit Registern uint16be 1 1 0 true false false false 40005 1 C_Manufacturer "Bei SunSpec eingetragener Wert = ""SolarEdge""" string 16 1 0 true false false false 40021 1 C_Model Spezifischer SolarEdge Wert string 16 1 0 true false false false 40045 1 C_Version Spezifischer SolarEdge Wert string 8 1 0 true false false false 40053 1 C_SerialNumber Eindeutiger SolarEdge Wert string 16 1 0 true false false false 40069 1 C_DeviceAddress Modbus-ID der entsprechenden Einheit uint16be 1 1 0 true false false false 40070 1 C_SunSpec_DID 101 = Einphasig, 102 = Spaltphase, 103 = Dreiphasig uint16be 1 1 0 true false false false 40072 1 I_AC_Current AC-Strom Gesamtstromwert A uint16be 1 1 0 x * Math.pow(10, sf['40076']) true false false false 40073 1 I_AC_CurrentA AC-Strom Phase A (L1) Stromwert A uint16be 1 1 0 x * Math.pow(10, sf['40076']) true false false false 40074 1 I_AC_CurrentB AC-Strom Phase B (L2) Stromwert A uint16be 1 1 0 x * Math.pow(10, sf['40076']) true false false false 40075 1 I_AC_CurrentC AC-Strom Phase C (L3) Stromwert A uint16be 1 1 0 x * Math.pow(10, sf['40076']) true false false false 40076 1 I_AC_Current_SF AC-Strom Skalierungsfaktor SF int16be 1 1 0 true false false true 40084 1 I_AC_Power AC-Leistung Leistungswert W int16be 1 1 0 x * Math.pow(10, sf['40085']) true false false false 40085 1 I_AC_Power_SF AC-Leistung Skalierungsfaktor SF int16be 1 1 0 true false false true 40088 1 I_AC_VA Scheinleistung VA int16be 1 1 0 x * Math.pow(10, sf['40089']) true false false false 40089 1 I_AC_VA_SF Scheinleistung Skalierungsfaktor SF int16be 1 1 0 true false false true 40090 1 I_AC_VAR Blindleistung VAR int16be 1 1 0 x * Math.pow(10, sf['40091']) true false false false 40091 1 I_AC_VAR_SF Blindleistung Skalierungsfaktor SF int16be 1 1 0 true false false true 40092 1 I_AC_PF Leistungsfaktor % % int16be 1 1 0 x * Math.pow(10, sf['40093']) true false false false 40093 1 I_AC_PF_SF Leistungsfaktor Skalierungsfaktor SF int16be 1 1 0 true false false true 40094 1 I_AC_Energy_WH AC Energie Gesamt-Energieproduktion kWh uint32be 2 1 0 x * Math.pow(10, sf['40096'] - 3) true false false false 40096 1 I_AC_Energy_WH_SF AC Energie Gesamtenergie Skalierungsfaktor SF uint16be 1 1 0 true false false true 40097 1 I_DC_Current DC-Strom Stromwert A uint16be 1 1 0 x * Math.pow(10, sf['40098']) true false false false 40098 1 I_DC_Current_SF DC-Strom Skalierungsfaktor SF int16be 1 1 0 true false false true 40099 1 I_DC_Voltage DC-Spannung Spannungswert V uint16be 1 1 0 x * Math.pow(10, sf['40100']) true false false false 40100 1 I_DC_Voltage_SF DC-Spannung Skalierungsfaktor SF int16be 1 1 0 true false false true 40101 1 I_DC_Power DC-Leistung Leistungswert W int16be 1 1 0 x * Math.pow(10, sf['40102']) true false false false 40102 1 I_DC_Power_SF DC-Leistung Skalierungsfaktor SF int16be 1 1 0 true false false true 40104 1 I_Temp_Sink Kühlkörpertemperatur °C int16be 1 1 0 x * Math.pow(10, sf['40107']) true false false false 40107 1 I_Temp_SF Kühlkörpertemperatur Skalierungsfaktor SF int16be 1 1 0 true false false true 40108 1 I_Status Betriebszustand (1 = Aus, 2 = Schlafen (Automatisches Herunterfahren) – Nachtmodus, 3 = Aufwachen/Starten, 4 = Wechselrichter ist AN und wandelt Energie, 5 = Begrenzte Produktion, 6 = Herunterfahren, 7 = Fehler, 8 = Wartung/Setup) uint16be 1 1 0 true false false false 40109 1 I_Status_Vendor Anbieter-spezifischer Betriebszustand sowie Fehlercodes: 1 = Aus, 2 = Schlafen (Automatisches Herunterfahren) – Nachtmodus, 3 = Aufwachen/Starten, 4 = Wechselrichter ist AN und wandelt Energie, 5 = Begrenzte Produktion, 6 = Herunterfahren, 7 = Fehler, 8 = Wartung/Setup uint16be 1 1 0 true false false false 40124 1 C_Manufacturer Meter manufacturer string 16 1 0 true false false false 40140 1 C_Model Meter model string 16 1 0 true false false false 40156 1 C_Option Export + Import, Production, consumption string 8 1 0 true false false false 40164 1 C_Version Meter version string 8 1 0 true false false false 40191 1 M_AC_Current AC Current (sum of active phases) A int16be 1 1 0 x * Math.pow(10, sf['40195']) true false false false 40192 1 M_AC_Current_A Phase A AC Current A int16be 1 1 0 x * Math.pow(10, sf['40195']) true false false false 40193 1 M_AC_Current_B Phase B AC Current A int16be 1 1 0 x * Math.pow(10, sf['40195']) true false false false 40194 1 M_AC_Current_C Phase C AC Current A int16be 1 1 0 x * Math.pow(10, sf['40195']) true false false false 40195 1 M_AC_Current_S F AC Current Scale Factor SF int16be 1 1 0 true false false true 40207 1 M_AC_Power Total real power (sum of active phases) Minus = Bezug; Plus = Einspeisung W int16be 1 1 0 x * Math.pow(10, sf['40211']) true false false false 40211 1 M_AC_Power_SF AC Real Power Scale Factor SF int16be 1 1 0 true false false true 40222 1 M_AC_PF Average Power Factor (average of active phases) % int16be 1 1 0 x * Math.pow(10, sf['40226']) true false false false 40226 1 M_AC_PF_SF AC Power Factor Scale Factor SF int16be 1 1 0 true false false true 40227 1 M_Exported Total Exported Real Energy kWh uint32be 2 1 0 x * Math.pow(10, sf['40243'] -3) true false false false 40235 1 M_Imported Total Imported Real Energy kWh uint32be 2 1 0 x * Math.pow(10, sf['40243'] -3) true false false false 40243 1 M_Energy_W_SF Real Energy Scale Factor SF int16be 1 1 0 true false false true 40005 2 C_Manufacturer "Bei SunSpec eingetragener Wert = ""SolarEdge""" string 16 1 0 true false false false 40021 2 C_Model Spezifischer SolarEdge Wert string 16 1 0 true false false false 40045 2 C_Version Spezifischer SolarEdge Wert string 8 1 0 true false false false 40053 2 C_SerialNumber Eindeutiger SolarEdge Wert string 16 1 0 true false false false 40069 2 C_DeviceAddress Modbus-ID der entsprechenden Einheit uint16be 1 1 0 true false false false 40070 2 C_SunSpec_DID 101 = Einphasig, 102 = Spaltphase, 103 = Dreiphasig uint16be 1 1 0 true false false false 40072 2 I_AC_Current AC-Strom Gesamtstromwert A uint16be 1 1 0 x * Math.pow(10, sf['40076']) true false false false 40073 2 I_AC_CurrentA AC-Strom Phase A (L1) Stromwert A uint16be 1 1 0 x * Math.pow(10, sf['40076']) true false false false 40074 2 I_AC_CurrentB AC-Strom Phase B (L2) Stromwert A uint16be 1 1 0 x * Math.pow(10, sf['40076']) true false false false 40075 2 I_AC_CurrentC AC-Strom Phase C (L3) Stromwert A uint16be 1 1 0 x * Math.pow(10, sf['40076']) true false false false 40076 2 I_AC_Current_SF AC-Strom Skalierungsfaktor SF int16be 1 1 0 true false false true 40084 2 I_AC_Power AC-Leistung Leistungswert W int16be 1 1 0 x * Math.pow(10, sf['40085']) true false false false 40085 2 I_AC_Power_SF AC-Leistung Skalierungsfaktor SF int16be 1 1 0 true false false true 40088 2 I_AC_VA Scheinleistung VA int16be 1 1 0 x * Math.pow(10, sf['40089']) true false false false 40089 2 I_AC_VA_SF Scheinleistung Skalierungsfaktor SF int16be 1 1 0 true false false true 40090 2 I_AC_VAR Blindleistung VAR int16be 1 1 0 x * Math.pow(10, sf['40091']) true false false false 40091 2 I_AC_VAR_SF Blindleistung Skalierungsfaktor SF int16be 1 1 0 true false false true 40092 2 I_AC_PF Leistungsfaktor % % int16be 1 1 0 x * Math.pow(10, sf['40093']) true false false false 40093 2 I_AC_PF_SF Leistungsfaktor Skalierungsfaktor SF int16be 1 1 0 true false false true 40094 2 I_AC_Energy_WH AC Energie Gesamt-Energieproduktion kWh uint32be 2 1 0 x * Math.pow(10, sf['40096'] - 3) true false false false 40096 2 I_AC_Energy_WH_SF AC Energie Gesamtenergie Skalierungsfaktor SF uint16be 1 1 0 true false false true 40097 2 I_DC_Current DC-Strom Stromwert A uint16be 1 1 0 x * Math.pow(10, sf['40098']) true false false false 40098 2 I_DC_Current_SF DC-Strom Skalierungsfaktor SF int16be 1 1 0 true false false true 40099 2 I_DC_Voltage DC-Spannung Spannungswert V uint16be 1 1 0 x * Math.pow(10, sf['40100']) true false false false 40100 2 I_DC_Voltage_SF DC-Spannung Skalierungsfaktor SF int16be 1 1 0 true false false true 40101 2 I_DC_Power DC-Leistung Leistungswert W int16be 1 1 0 x * Math.pow(10, sf['40102']) true false false false 40102 2 I_DC_Power_SF DC-Leistung Skalierungsfaktor SF int16be 1 1 0 true false false true 40104 2 I_Temp_Sink Kühlkörpertemperatur °C int16be 1 1 0 x * Math.pow(10, sf['40107']) true false false false 40107 2 I_Temp_SF Kühlkörpertemperatur Skalierungsfaktor SF int16be 1 1 0 true false false true 40108 2 I_Status Betriebszustand (1 = Aus, 2 = Schlafen (Automatisches Herunterfahren) – Nachtmodus, 3 = Aufwachen/Starten, 4 = Wechselrichter ist AN und wandelt Energie, 5 = Begrenzte Produktion, 6 = Herunterfahren, 7 = Fehler, 8 = Wartung/Setup) uint16be 1 1 0 true false false false 40109 2 I_Status_Vendor Anbieter-spezifischer Betriebszustand sowie Fehlercodes: 1 = Aus, 2 = Schlafen (Automatisches Herunterfahren) – Nachtmodus, 3 = Aufwachen/Starten, 4 = Wechselrichter ist AN und wandelt Energie, 5 = Begrenzte Produktion, 6 = Herunterfahren, 7 = Fehler, 8 = Wartung/Setup uint16be 1 1 0 true false false false
Wollte nochmals das Thema mit den TotalImport und TotalExport der Batterie anstoßen. Hat hier jemand schon brauchbare Ergebnisse erzielt? Meine Vermutung ist, dass es um Tageswerte geht. Jedoch ist das Zurücksetzen auf 0 sehr unregelmäßig.
Warum ich diese Werte gerne hätte: Damit kann ich berechnen, welche Ersparnis der Batteriespeicher bringt um zukünftige Wirtschaftlichkeitsberechnungen für meine Anlage fahren zu können. Dies stellt eine Grundlage für weitere Entscheidungen dar.Greetz,
Apfel -
@apfel85: Ich beschäftige mich auch gerade mit dieser Frage.
Auffällig ist, dass die TotalImport und TotalExport Werte immer dann auf 0 gehen, wenn die Modbus-Verbindung verloren geht. Außerdem erhalte ich, wenn die Modbus-Verbindung wieder da ist, einen unplausiblen Wert von -3,402823E+38 für den Battery State of Energy.Es sieht ein wenig so aus, als würde die SolarEdge Firmware im WR hier zu diesem Zeitpunkt abstürzen...
Ich habe jetzt mein Monitoring erweitert und werde das weiter beobachten und ggf. einen Case bei SolarEdge öffnen. -
Grafisch sieht es dann so aus:
Blau und Grün sind die TotalImport/TotalExport Werte. Wenn diese auf 0 fallen, ist kurz vorher immer die Modbus TCP Registerabfrage in einen Timeout gelaufen und die Verbindung wurde geschlossen (Datenpunkt modbus.0.info.connection == false == Orange Punkte). Und anschließend gibt es meist den Wert -3,402823E+38 (Maximalwert für Float 32 Bit) für den SOC (gelb) der Batterie.
Mich würde mal interessieren, ob die Modbus Verbindung seltener unterbrochen wird wenn ich weniger Holding Register abfrage. Wenn ich in den Adapter Settings allerdings das Häkchen bei „Abfrage“ rausnehme, scheint der Adapter trotzdem alle konfigurierten Register abzufragen (Die Dauer der Abfrage in Millisekunden ändert sich nicht). Nur trägt er das Ergebnis nicht in die Objekte ein.
Ich müsste also die Zeilen wieder aus der Config löschen, die ich mühsam dort eingefügt habe. Kann man die irgendwie wieder herstellen? Ich sehe keine Export/Import Funktion. Vermutlich muss ich die Dateien im ioBroker Filesystem sichern?
-
Hallo zusammen,
Ich habe eine Frage, bisher habe ich den Modbus Adapter genutzt um von meinem Wechselrichter die Daten abzuhohlen.
SE25K per LAN und an RS485-1 war das SolarEdge Smart Meter angeschlossen und die RS485-2 (Modbus MultiGerät) hatte ich die Daten abgerufen.
Nun wurde die Anlage Erweitert und der zweite Wechselrichter wurde an die RS485-2 angeschlossen und auf der RS485-1 ist weiterhin das SmartMeter.
Nun kann ich die Daten nicht mehr abrufen.
Wie kann man das noch lösen das ich weiterhin an die Daten komme, nur der erste Wechselrichter hat noch einen Lan Anschluss alle anderen komunizieren über die RS485-2 Schnittstelle.Danke für eure Hilfe.
-
@nobody-0
Du kannst über die LAN Schnittstelle die Daten für beide Wechselrichter abrufen. Dazu im Modbusadapter die Option "Mehrere Geräte-IDs" aktivieren. Du hast dann im Bereich HOLDING REGISTER eine neue Spalte "Slave-ID". Hier kannst Du jedes Register einmal für den ersten und einmal für den zweiten Wechselrichter abfragen. Wenn der zweite Wechselrichter mit Modbus ID 2 konfiguriert wurde, dann nimmst Du dort für den zweiten Wechselrichter die Slave-ID 2. -
Hallo zusammen,
habe seit 2 Jahren den Modbus Adapter an meiner SE PV-Anlage im Einsatz.
Die stimmten auch immer mit den Werten aus der solaredge APP überein.
Seit ca. 4 Wochen besitze ich einen BYD Speicher 8 LVS. Meine Register habe ich schon so wie hier im Forum beschrieben erweitert und bekomme auch Daten.
Die passen aber irgendwie überhaupt nicht mehr.
Müssen jetzt alle Daten wie, PV-Leistung; Einspeise- und Bezug, Hausverbrauch, separat berechnet werden??
Oder habe ich evtl. die falschen Register?? -
Ausversehen auf Speichern gekommen