Wer eine Solaranlage (Solar steht in diesem Fall für Solarthermie, d.h. dem Erzeugen von Warmwasser über Sonnenenergie), genauer Photovoltaik- oder PV-Anlage, sein Eigen nennen darf, ist im Regelfall auch an der Leistung und folglich der Eigenstromersparnis oder auch dem Leistungsertrag gemäß Einspeisungsvertrag interessiert.
Update September 2023
Nachdem wir einige Probleme mit dem Adapter in ioBroker hatten, haben wir die SolarEdge-API direkt über ein Blockly-Script eingebunden. Anleitung in diesem Artikel.
Es gibt unzählige Anleitungen im Internet, die sich mit den unterschiedlichsten Wechselrichter unterschiedlichster Marken und deren Einbindung in das Smarthome beschäftigen und auseinandersetzen. Eins vorweg: Dieser Artikel beschreibt einen pragmatischen Ansatz mit möglichst wenig technischer Unterstützung bzw. weiteren Tools zusätzlich zu ioBroker, eine gewissen Ungenauigkeit sollte man akzeptieren. Wer es ganz genau wissen und dokumentieren möchte, der kommt um eine Anbindung via Modbus und auch Visualisierungsseite ohne Flot- oder Grafana-Diagramme aus den Daten einer influxDB nicht herum (beschrieben z.B. hier im ioBroker-Forum).
Unser Plan: Wir möchten den digitalen Stromzähler im Keller auslesen, um genau zu sein die aktuell bezogene bzw. eingespeiste Leistung. Diesen Wert speichern wir über die Objekte in ioBroker ab und nutzen die historischen Werte für eine Visualisierung in VIS, um Strombezug oder Einspeisung in einer Graph-Darstellung farblich zu markieren. Außerdem möchten wir die produzierte Leistung der Anlage Tages, Monats- und Jahresaktuell auflisten. Hierzu nutzen wir die Werte der Anlage, die das Hersteller-eigene Portal des Wechselrichters zur Verfügung stellt. In unserem Fall ein Wechselrichter von Solaredge mit dem entsprechenden ioBroker-Adapter dafür.
Fangen wir mit Schritt 1 an: Zugriff auf das Solaredge-Portal mit dem Solaredge-Adpater
Der Adapter wird ganz klassisch über die Adapter-Liste installiert. Für die Konfiguration benötigen wir einen API-Key der Solaredge-Plattform. Diesen können wir sehr einfach in den Einstellungen der Solaredge-Plattform erzeugen. Hierzu einfach einloggen, PV-Anlage auswählen und in den Einstellungen „Admin-Bereich“ den „API-Zugriff“ aktivieren und einen API-Key erzeugen.
Mit dem API-Key und der Standort-ID können wir den Solaredge-Adapter in ioBroker korrekt konfigurieren und den Zugriff testen:
Ist die Konfiguration korrekt hinterlegt, werden die Daten der PV-Anlage über die API der Solaredge-Plattform ausgelesen und in den Objekten gespeichert:
Die Objekte beinhalten folgende Daten:
- currentPower
- lastDayData
- lastMonthData
- lastUpdateTime
- lastYearData
- lifeTimeData
Die Aktualisierung erfolgt ca. alle 5 bis 10 Minuten. Für eine halbwegs genaue Auswertung und Visualisierung der Leistung der Anlage also eher ungeeignet, diese Werte nutzen wir nur für die Historisierung der Tages- und Monatsdaten.
Im zweiten Schritt kümmern wir uns um den halbwegs aktuellen Wert der PV-Leistung bzw. dem Gesamtverbrauch des Smarthomes. Hierzu lesen wir den digitalen Stromzähler aus und speichern den Leistungswert (entweder positiv, wenn wir mehr Leistung beziehen als produzieren oder negativ, wenn wir mit der PV-Anlage mehr Leistung produzieren als im Haushalt konsumieren) über die ioBroker-Objekte.
Wie wir einen digitalen Stromzähler in unseren ioBroker einbinden können, haben wir in diesem Artikel bereits beschrieben. Sollte die Hardware unseres ioBrokers nicht direkt am Stromzähler aufgestellt sein, können wir uns eines einfachen Workarounds bedienen: Wir haben in unserem Fall einen RaspberryPi im Schaltkasten installiert, der den Stromzähler ausliest und die Daten via MQTT an den eigentlichen ioBroker meldet. Es gäbe hierfür auch noch diverse andere Wege z.B. Master/Slave), nach unserer Erfahrung reicht für diesen Anwendungsfalls die Übertragung via MQTT allerdings aus, wie dies eingerichtet werden kann haben wir hier im Artikel zu MQTT beschrieben. Diese Lösung funktioniert auch hervorragend zwischen zwei Standorten über ein VPN-Verbindung zweier Fritz-Boxen.
Wir aktivieren in den ioBroker-Objekten die Speicherung des Leistungs-Objekts des digitalen Stromzählers:
Für eine Speicherung der Tages-, Wochen-, Monats- und Jahreswerte können wir entweder den Adapter sourceanalytics oder unser hier beschriebenes Script nutzen.
Mit Abschluss von Schritt 2 können wir uns direkt um die Visualisierung in VIS kümmern.
Unser Ziel ist die Darstellung der absoluten Werte der PV-produzierten Leistung und eine einfache Grafik, die aufzeigt, ob Leistung bezogen oder eingespeist wird:
Die absoluten Daten können wir aus direkt aus den Objekten des Solaredge-Adpaters und unserer Historisierung auslesen, für die Grafik setzen wird das Element „history sparkline“ ein.
Mit diesen wenigen Handgriffen haben wir eine halbwegs aktuelle Visualisierung unserer PV-Anlage in ioBroker umgesetzt.
Hi leider ist der Adapter im Ioborker nicht mehr verfuegbar. Hast du eine Idee wie man diesen installiert bekommt?
Am besten über das Logo für „Installieren aus eigener Quelle“ gehen und dort bei „Benutzdefiniert“ die Github-URL (https://github.com/92lleo/ioBroker.solaredge) einfügen. Viel Erfolg!
Hallo, bei mir tut sich nichts bei dem Link. Befehl ausführen steht nun schon 15 dort?