NEWS
Visualisierung PV-Anlage mit SMA-Wechselrichter/Sunny Webbox
-
@krissi
Ich hatte die folgende Vorgehensweise gewählt (ich gehe mal davon aus dass Du ioBroker bereits im Eisatz hast).Installation
Die folgenden Adapter werden in ioBroker benötigt und können einfach über die grafische Oberfläche von ioBroker installiert:
- SQL (SQL-Protokollierung)
Bei der Konfiguration des Adapters sind dann die Daten des MariaDB-Servers einzutragen (IP-Adresse,
Datenbankname, Username, Passwort müssen entsprechend Deines Setups angepasst werden). Die Default-Settings im 2. Reiter können unverändert übernommen werden.
- node-red
Hier sollten folgende Einstellungen gemacht werden:
Damit die Daten des Wechselrichters in einer Datenbank gespeichert werden, habe ich MariaDB auf dem RasPi installiert.
Eine gute Anleitung hierzu findet man z.B. hier: https://christiankronen.de/raspberry-pi-als-mysql-server/
Bei mir läuft MariaDB-Version 10.3.31. Meine Datenbank habe ich solaranlage genannt. In der Datenbank habe ich dann eine Tabelle Messdaten angelegt
und folgende Felder für die Daten definiert
In der Datenbank sehen die Daten vom 1. Juli 2021 dann so aus:
Die Installation von Grafana zur Visualisierung der Daten ist hier beschrieben: https://grafana.com/tutorials/install-grafana-on-raspberry-pi/Nun habe ich auf dem RasPi im Verzeichnis /home/pi eine Verzeichnis mit dem Namen sunny angelegt und mit chmod 777 home/pi/sunny alle Zugriffsrechte auf dieses Verzeichnis erlaubt. In dieser Verzeichnis überträgt die Sunny Webbox per FTP die CSV-Dateien (siehe Screenshot):
Der FTP-Transfer ist wie folgt in der Sunny Webbox konfiguriert:
Die Namensgebung der CSV-Dateien hat immer die Form YYYY-MM-DD.csv
Über eine Cron-Job erstelle ich nach Mitternacht täglich diese leere CSV-Datei damit die Datei bereits existiert wenn der erst FTP-Transfer erfolgt. Dies erfolgt mit folgendem Befehl:
touch /home/pi/sunny/date +"%F"
.csv;chmod 777 /home/pi/sunny/date +"%F"
.csv
Als Beispiel hänge ich hier mal die Originaldatei vom 01. Juli 2021 mit an: 2021-07-01.csv
Von der CSV-Dateien interessieren mich für die Speicherung in der Datenbank und die spätere Visualisierung nur 3 Spalten:
Spalte 1: Timestamp
Spalte 12: Tagesertrag
Spalte 43: aktuelle EinspeiseleistungSpeicherung der Daten in der Datenbank
Jetzt kommt der node-red Adapter ins Spiel ... das sieht dann bei mir so aus:
Hier ist die exportierte Flow-Datei die man in die eigene node-red Instanz importieren muss: solaranlage.json
Neben der automatischen Datenübernahme (erfolgt alle 15 Minuten) habe ich noch einen zusätzliche Möglichkeit des manuellen Datenimports integriert. Außerdem schreibe ich die Daten auch noch in eine MariaDB Datenbank auf einem extern gehosteten vServer.
In diesen Nodes müssen dann die spezifischen Zugangsdaten der Datenbank eingetragen werden:
Wenn es Fragen zur Funktionsweise des Flows geben sollte ... gerne nachfragen.
Visualisierung
- An der Weboberfläche von Grafana anmelden
- Unter Configuration --> Data sources den blauen "Add data source" Button anklicken und dann MySQL auswählen.
Anschließend die Daten der MariaDB Datenbank eintragen.
und unten den Save & Test Button anklicken.
Dann unter Create --> Import mein Dashboard importieren: Solaranlage-1641681716072.json
Ich hoffe dass diese Beschreibung hilfreich ist den Weg zu meiner Visualisierung nachvollziehen zu können.
Wenn alles richtig gemacht wurde und die Anpassungen stimmen sollte das Dashboard die entsprechenden Werte der MariaDB anzeigen.Sollte es Fragen oder Probleme geben versuche ich gerne zu unterstützen.
- SQL (SQL-Protokollierung)
-
Hi, danke erstmal für deine Mühe. Ich habe das ganze jetzt mit einer neuen ioBroker installation bis zum NodeRed Adapter laufen. CSV wird auch gesichert, allerdings speichert der mir eine zip Datei. Da sind noch Log...xml.zip Dateien und Mean.xml.zip drin!?
Die Daten würde ich gerne in meiner Influxdb speichern, eventuell kannst Du mir da weiterhelfen. Den Adpater habe ich schon installiert und eine neue Datenbank erstell, Verbindung funktioniert auch. Jetzt brauche ich wie gesagt die Umsetzung in Node-Red. Dann sollte ich wieder alleine klar kommen. Ich bin nur nicht der Node-Red Profil.
Danke und Gruß
Krissi -
Schöner View aber warum nutzt ihr zum Auslesen der Daten nicht den Modbus Adapter, schreibt diese dann mit Hilfe des Influx Adapters in eine InfluxDB und Visualisiert dann mit Grafana?
-
Habe ich schon probiert, ich bekomme da leider nur die Gesamtanlage als Daten raus. Läuft bei mir so. Ich habe das schon alles Mögliche probiert, ich komm da aber nicht weiter.
-
@krissi Was genau hast du probiert?
DIe Daten per Modbus auszulesen?
-
Genau, das funktioniert wie gesagt nur für die gesamte Anlage.
Ich komm nicht einzeln an die Wechselrichter. -
@krissi Was für WR?
ich lese STP15000 und STP6000 problemlos über Modbus aus.
Wie äußert sich denn das Problem?
-
@wendy2702
Wie hast Du die Wechselrichter an die Webbox angebunden? Bei mir steht SMA-Com als Schnittstelle und SMA-Net als Protokoll. Die Webox hat kein BT, ist noch eine Alte. Ich bekomme nur über Port 502 und Geräte ID 2 etwas ausgelesen. -
Auslesen kann ich dann
Eingangsregister:
30513 Gesamtertrag_Total
30517 Tagesertrag_Total
30775 AC_Wirkleistung -
@krissi Ich lese die WR direkt aus.
Der STP15000 sollte doch MOdbus können und wenn nicht mal schauen ob es neue FW gibt. Weiss ja nicht wie alt deine WR sind und welche FW installiert ist.
Mit Sunny Explorer kannst du dich aber mit deinen WRs verbinden?
-
Nein, die Webbox hat kein BT. Ich habe die letze Firmware (1.51) auf der Webbox drauf. Die Wechselrichter sind über RS485 an der Webbox angeschlossen
-
Meine WR sind beide 11 Jahre alt.
-
SunnyBoy 2500 und 3000
-
@krissi OK.
Dann muss man mal bei SMA schauen.
Mein STP ist 8 Jahre alt.
Gut möglich das Modbus für die älteren Geräte nicht mehr implementiert wurde.
-
Da hab ich schon alles durchsucht. Bleibt im Moment nur die Lösung von Lintux. Ich hänge da aber wie gesagt an Node-Red und dem Auslesen der Dateien.
-
Ich habe auf der Webbox übrigens die Firmware 1.52 , es gab mal eine 1.53 oder sogar 1.55, die ist aber nicht mehr bei SMA zu bekommen.
-
@krissi und welche Versionen haben die Sunny Boys ?
-
Keine Ahnung, ich denke nicht das man da eine Firmware updaten kann.
-
@krissi.
Speichert Dein Wechselrichter die Messwerte auch auf der Sunny Webbox?
Auf meiner Webbox liegen die CSV-Dateien in einem separaten Order namens CSV ... und dort in Unterordnern (2022 --> 03 --> 2022-03-08.csv).
Ich muss zunächst Dein Setup verstehen ... bei mir gibt es definitiv keine ZIP-Datei, weder auf der der SD-Karte in der Webbox noch nach dem Dateitransfer auf dem Raspberry Pi.Die Konfiguration der Webbox für den FTP-Transfer der CSV-Datei sieht bei mir so aus:
Mit InfluxDB habe ich keine Erfahrung ... ich nutze als Datenbank immer MariaDB. Grundsätzlich sollten sich die Daten aber auch über Node-Red in eine InfluxDB Datenbank schreiben lassen.