SMA Energy Meter auswerten

Endlich habe ich es geschafft die Werte des Ende letzten Jahres eingebauten SMA Energy Meter auszuwerten. Dabei gab es gleich zwei H├╝rden zu nehmen: Zeit und Unwissen ­čÖé Wobei das Unwissen die ben├Âtigte Zeit in unbekannte Dimensionen trieb. Denn das Programm zur Auswertung der Datenpakete des SMA EM ist in C geschrieben und bis dato wusste ich gerade mal, dass C eine Programmiersprache ist. Dank vieler Google Suchen und Forenpostings konnten die H├╝rden nach und nach genommen werden und das fertige Produkt erfreut den Frickler aus dem Heim und Hobbybereich – mich ­čÖé

Das SMA Energy Meter kann sich jeder Haus- und Wohnungsbesitzer in seinen Sicherungsschrank einbauen lassen. Es gibt hier keine zwingende Verbindung mit einer Photovoltaikanlage. Logischerweise wird dann nur der importierte Strom ausgewertet. F├╝r Android und iOS gibt es Apps um sich die Daten in Realtime anzeigen zu lassen.

Wie sieht jetzt das Ergebnis meiner Bastelei aus?

Auswertung der 3 Phasen im Haus
Auswertung Last der 3 Phasen im Haus (15 Minuten)

Der erste Teil visualisiert die Last auf den 3 Phasen im Haus. F├╝r jede Phase (L1, L2 und L3) wird ermittelt, ob Strom von EVU gezogen wird (Import) oder ob Strom „├╝brig“ ist und zum EVU exportiert wird (Export). ├ťbrig bedeutet, von der Solaranlage erzeugter Strom abz├╝glich Eigenverbrauch.

Auswertung Import, Export und PV Leistung
Auswertung Import, Export und Solarertrag (15 Minuten)

Aufsummiert ergibt sich dieses Bild. Zus├Ątzlich wird noch die gerade gelieferte Leistung der PV Anlage angezeigt. Die grafische Aufarbeitung ├╝bernimmt Highcharts.

Was wurde alles gemacht um das Ergebnis zu erhalten?
1. Ein Programm in C geschrieben, dass die Multicast Pakete vom SMA Energy Meter aufnimmt und in eine SQLite Datenbank schreibt
2. Installation und Konfiguration von SBFSpot, ein Programm zur Auswertung von SMA Wechselrichtern. Die gewonnenen Daten werden ebenfalls in eine SQLite DB geschrieben
3. Erstellung einer Webseite, die die gespeicherten Daten aus der Datenbank ausliest und grafisch darstellt.

Getestet wurde das meiste davon auf einem Raspberry Pi2 (die Quadcore Variante). Das Livesystem ist ein Ubuntu Linux unter ESXi. Der Pollingintervall betr├Ągt 1 Minute. Auf dem Pi hatte ich auch mit 5 Sekunden experimentiert. L├Ąsst man sich dann aber mehrere Tage gleichzeitig anzeigen, dauert die Darstellung von 100.000 Datens├Ątzen recht lange.

ToDo: Optimierung der Webseite um z.B. einzelne Tage auszuwerten. Im Moment kann man sich nur die letzten XYZ Minuten anzeigen lassen.

Mein Dank geht an die Helfer aus dem Computerbase Unterforum f├╝r Programmierung, Fefe, J├╝rgen Wolf f├╝r das Buch Linux-Unix Programmierung und EB-Systeme f├╝r die Protokollanalyse.

Solarertrag, Export und Import

Solarertrag, Export und Import (12 Stunden)