Referenz zu allen Komponenten
SOLECTRUS besteht aus etlichen Komponenten, die jeweils als eigene Docker-Services betrieben werden. Konfiguriert werden sie über Umgebungsvariablen.
Diese Referenz beschreibt jeden Dienst und jede seiner Variablen. Welche Version davon jeweils aktuell ist, steht unter Versionen.
Benutzeroberfläche
Abschnitt betitelt „Benutzeroberfläche“Das browserbasierte Dashboard zeigt die Messwerte an und nimmt die Eingaben entgegen:
Datensammlung (Kollektoren)
Abschnitt betitelt „Datensammlung (Kollektoren)“Die Kollektoren sammeln die Messwerte kontinuierlich und schreiben sie in die Datenbank (InfluxDB):
Geräte, die ihre Messwerte per MQTT senden, brauchen einen Broker. Den kann HELIOS selbst betreiben:
Datenverarbeitung
Abschnitt betitelt „Datenverarbeitung“Einige Komponenten verarbeiten die gesammelten Daten weiter:
- Ingest: Korrigiert den Hausverbrauch bei Balkonkraftwerken
- Power-Splitter: Teilt den Netzbezug auf die einzelnen Verbraucher auf
- CSV-Importer: Überträgt historische Messwerte einmalig nach InfluxDB
Steuerung
Abschnitt betitelt „Steuerung“- SENEC-Charger: Lädt einen SENEC-Speicher zu günstigen Zeiten aus dem Netz
Datenbanken
Abschnitt betitelt „Datenbanken“Außerdem verwendet SOLECTRUS drei Datenbanken, die ebenfalls in eigenen Containern laufen:
- InfluxDB: Zeitreihendatenbank für Messwerte
- PostgreSQL: Relationale Datenbank für Einstellungen und Strompreise
- Redis: In-Memory-Datenbank für das Caching von Abfrageergebnissen
Betrieb
Abschnitt betitelt „Betrieb“Drei Dienste fassen selbst keine Messwerte an:
- HELIOS: Richtet alle anderen Dienste ein und steuert sie. Es schreibt
compose.yamlund.env. - Watchtower: Spielt neue Versionen der Docker-Images ein
- Traefik: Reverse Proxy mit automatischem HTTPS. HELIOS richtet ihn nur ein, wenn das Dashboard unter einer eigenen Domain erreichbar sein soll und kein externer Reverse Proxy davorsteht.