Seit einiger Zeit bin ich am Entwickeln einer Webseite zum Online Monitoring von Solaranlagen um den Zustand dieser auch zu betrachten während ich nicht vor Ort bin.
Letztendlich habe ich mich dazu entschlossen die Webseite für jeden zugänglich zu machen. Somit kann z.B. direkt von OpenDTU aus eine Datenübermittlung an das Online Monitoring aktiviert werden und man kann jederzeit den Ertrag einsehen.
Zudem werden die Daten auch Tageweise erfasst und es lassen sich daraus schöne Grafen für Tag/Monat/Jahr anzeigen.
Funktionsweise
Die Funktionsweise ist im Grunde wie bei jedem anderen Hersteller von Wechselrichter auch. Die Daten werden an den Server (in diesem Fall meinem) gesendet und dort gespeichert. Danach können diese von einem Endgerät jederzeit abgerufen werden.
Also im Grunde ist das verhalten nicht „besser“ als bei jedem anderen Anbieter. Die Daten liegen irgendwo auf einem Server, dem man nicht kennt. Einstiege Merkmale sind allerdings anders, da sie mir sehr wichtig waren bei der Entwicklung:
- Möglichst wenig persönliche Daten (nur Mail für Login, Passwort Reset und Bot-Registrierungen)
- Unidirektionale Verbindung (Rest Request), vom Client (Wechselrichter ,DTU) werden nur Daten gesendet und dieser kann nicht beeinflusst (extern gesteuert) werden
- Sourcecode ist Open Source auf Github (jeder kann Fehler und Verbesserungen melden)
- Keine App, die Webseite ist Mobile kompatibel!
Voraussetzungen
Einige Dinge sind nötig, um das Monitoring zu verwenden.
- Account erstellen
- Client wie z.B. OpenDTU
- Aktive Internetverbindung
Alternative
Wer selber die Expertise und Möglichkeiten besitzt, kann das Projekt natürlich auch selber betreiben.
Der Sourcecode und die Anleitung liegt hier auf Github.
Einrichtung des Online Monitorings und Clients
Die hier beschriebene Anleitung zeigen nun Schritt für Schritt wie OpenDTU und das Online-Monitoring zusammen eingerichtet werden werden.
Account und System erstellen
1. Auf der Webseite solar.pihost.org oder solar.tost-soft.de (zweites ist nur ein Proxy auf die erste Domain) einen Account erstellen über die Schaltfläche oben rechts.
2. Auf die Bestätigungsmail warten und danach mit dem Link in dieser den Account freischalten.
3. Anmelden mit der Schaltfläche oben rechts.
4. Systeme erstellen über: Menü oben rechts -> Neues System anlegen
5. Alle Werte eintragen.
Hier sind fast alle Werte optional. Ausgefüllt werden müssen: Name, System-Typ (in unserem Fall Netz-Anlage), Zeitzone und Zugriffsberechtigung (stellt ein, ob die Anlage ohne Anmeldung sichtbar ist).
Alle anderen Werte sind für Anzeigeeinstellungen oder weitere Funktionen und können noch nachträglich geändert werden (Erläuterung am ende der Seite).
System mit dem erstellen Button am Ende der Seite.
6. Zugriffs Token Speichern. Dieser wird nach dem Erstellen des Systems als Pop-up eingeblendet.
Falls dies vergessen worden ist, kann ein neuer über die bearbeiten Menü des Systems angefordert werden.
7. System ID aus der URL Kopieren und abspeichern. (Memo an mich selber, dass muss unbedingt noch besser gemacht werden…)![]()
Damit sind wir auf der Webseite so weit Fertig. Wir haben einen Account und ein System angelegt. Dieses warten nun auf Daten, die es anzeigen kann. Allerdings ohne einen Client der Daten sendet, ist noch nichts zu sehen. Also Weiter zur Einrichtung in OpenDTU.
Einrichtung der Datenübermittlung in OpenDTU
1. Damit OpenDTU die Daten an das Online-Monitoring übermitteln kann, muss zunächst die Passende Firmware auf die DTU-Box aufgespielt werden, welche das senden ermöglicht. Dies ist ein Weiteres Projekt von mir auf Github. Diese kann hier heruntergeladen werden. Bzw. hier, falls Zusätzlich das Deye Sun und Hoymiles W-Series Feature benötigt wird. Eine Auflistung aller Versionen und Features gibt es hier.
2. Als Nächstes können wird die gespeicherten zwei Werte (die ID und den Token) im DTU eintragen. Hierzu im DTU die Seite Einstellungen -> Tost‚s Solar Monitoring Settings aufrufen. Das „Daten Senden“ mit dem Switch aktivieren und die beiden Werte eintragen.
Das Intervall der Datenübermittlung kann angepasst werden. Bitte setzt diesen nicht unter 30 Sekunden, da es sonst etwas zu viele Daten übermittelt werden und endlos Speicher hab ich auch nicht auf dem Server :D. Zudem gibt es ein Limit an Daten pro Tag. Wird dieses überschritten werden keine neuen Daten für diesen Tag mehr akzeptiert.
3. Überprüfen, ob das Senden der Daten erfolgreich ausgeführt worden ist. Hierzu über das Menü: Info -> Tost‚s Solar Monitoring öffnen und sich den Zustand der letzten Datenübermittlung ansehen.
In der Statuszusammenfassung ist abzulesen, ob das Übermitteln erfolgreich war oder ob ein Fehler aufgetreten ist. Ist ein Fehler aufgetreten, muss noch mal geprüft werden, ob alle Werte in den Einstellungen richtig eingestellt worden sind oder ob eine Verbindung zum Internet überhaupt möglich ist.
Hat dies geklappt, können wir zum letzten Punkt übergehen.
Daten im online Monitoring einsehen.
Über das Menü auf der Webseite des Online Monitorings, das eben erstellt System aufrufen: Menü -> Liste aller Systeme -> Zur Detailansicht.
Dort sollten nun die ersten Werte auftauchen. Und nach einigen Minuten müsste sich ein nett anzusehender Graf aufbauen und die Solar Produktion anzeigen. Über die Anzeige: Historische Daten am Ende der Seite kann der Ertrag der Tage angezeigt werden (Dieser wird nur alle 15min aktualisiert).
Sollte hier auch nach angemessener Wartezeit keine Daten angezeigt werden, sollte im DTU auf Fehler geprüft werden, wie im letzten Punkt bei der OpenDTU Einrichtung beschrieben.
Weitere Clients
In der Vergangenheit habe ich bereits einige weiten Implementierungen für z.B. Victon und SMA Geräte geschrieben. Diese können hier gefunden werden.
Alternativ kann auch jede selbst geschriebene Implementierung verwendet werden so lange sie die API Spezifikation erfüllt. Diese sind hier zu finden.
Weitere Einstellungen
Um die Anzeige zu verbessern, kann auf der System bearbeiten Seite im Online Monitoring noch weitere Einstellungen vorgenommen werden.
Diese sind:
- KWH Preis einstellen, um gespartes Geld zu berechnen.
- Geräte benennen. ID angeben und durch Namen ersetzten.
- System öffentlich stellen. Somit hat jeden lesenden Zugriff auf das System. Bzw. bei „Produktion“ nur auf die Eingans Werte. Über die Ausgangswerte bei Batterieanlagen könnten Rückschlüsse über Verhalten des Benutzers getroffen werden. z.B., ob jemand zu Hause ist.
- Eingänge benennt. Index und ID des Gerätes angeben und den Eingang (Solarmodul) benennen.
- Shorter einstellen. Dieser ersetzt in der URL die lange ID, besser zu merken.
- Zeitabstand der Datenübermittlung: Ist dieser nicht 30s (Default) dann sollte dieser hier eingetragen werden. Dadurch werden Lücken im Grafen geschlossen.
- Weitere Werte anzeigen: Temperatur, Ampere
- Überschreiben von öffentlichen Werten, so kann z.B. das gesparte Geld ebenfalls öffentlich angezeigt werden
- Einstellung von Batteriespannung, Netzspannung und Modulspannung. Dient zur besseren Visualisierung der Grafen.
- Anlegen von Status, diese können über die Web UI oder API Endpunkt abgefragt und gesetzt werden um z.B. Verbraucher extern zu Steuern.
- Deye Serials, mit Komma getrennt. Über die Deye Konfigurationsseite: config_hide.html kann die Server Domain der Webseite angegeben werden, um die Daten zu übermitteln. Achtung hierbei entsteht eine Bidirektionale Kommunikation und ich hätte Zugriff auf eure Geräte.
- Benutzerberechtigungen: Hier können andere Nutzer angegeben werden, die lesend oder administrierend Zugriff auf das System haben.
- Es können Tags hinzugefügt werden um das System in der Suche besser zu finden.




