Ausgelesene PV-Daten aufbereiten und darstellen

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
Theophil T.
Beiträge: 402
Registriert: 22.10.2006 20:24:59
Lizenz eigener Beiträge: MIT Lizenz

Ausgelesene PV-Daten aufbereiten und darstellen

Beitrag von Theophil T. » 30.06.2023 13:22:36

Hallo,

Ich lese die Daten unserer Photovoltaik-Anlage mit einem Bash-Skript in kurzen Zeitintervallen aus, das sind z.B. PV-Energie-Produktion, Energieverbrauch, PV-Leistung im Tagesverlauf. Das ganze läuft mit einem Debian-System auf einem stromsparenden Mini-PC, der bereits aus anderen Gründen 24h tgl. läuft.

Zur Zeit schaue ich mir die aktuellen Daten nur auf einer einfachen, selbst-gemachten Website mit php im LAN bzw. VPN an, würde die Daten aber außerdem gern für statistische Zwecke speichern und dann auch vielseitig aufbereiten können, z.B. als Tabelle, Liste, oder auch als Diagramm auf der Website.

Auf dem Gebiet habe ich kaum Erfahrung, daher die Frage, wie ich das am geschicktesten selbst machen könnte, z.B. die Daten mit dem Skript in eine Datenbank übertragen? Ich weiß, es gibt auch Projekte wie https://solaranzeige.de/phpBB3/solaranzeige.php, aber mein System läuft bis hierher schon recht gut und neue Aufgaben trainieren die grauen Zellen... ;-)

Danke für Eure Ratschläge und viele Grüße,

Theophil

Benutzeravatar
heisenberg
Beiträge: 4123
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

Re: Ausgelesene PV-Daten aufbereiten und darstellen

Beitrag von heisenberg » 30.06.2023 13:27:22

Der Klassiker wäre Debianrrdtool mit dem Speicherformat RRD (Round-Robin-Database), dass genau für diesen Zweck entworfen wurde.

Recht Hip ist zur Zeit grafana (Visualisierung) und Debianprometheus (Metrikenaufzeichnung). Beide Projekte sind sehr umfangreich.

Benutzeravatar
MSfree
Beiträge: 11604
Registriert: 25.09.2007 19:59:30

Re: Ausgelesene PV-Daten aufbereiten und darstellen

Beitrag von MSfree » 30.06.2023 13:37:12

Ich habe einen Luftdruck- und Tempratursensor an einem Raspberry Pi Zero W. Die Sensoren lese ich alle 5 Minuten aus, versehe das Ausgelesene mit Zeit und Datum und hänge es einfach an eine ASCII-Datei an. So eine ASCII-Datei läßt sich später beliebig auswerten, eine Datenbank wäre mir dafür viel zu aufwändig.

Um dir ein Gefühl zu geben, wie groß so eine ASCII-Datei wird: seit 2. März 2019 haben sich 455000 Einträge angehäuft, die inzwischen 11.4MB auf der SD-Karte belegen. Das ist also alles in überschauberem Rahmen.

Theophil T.
Beiträge: 402
Registriert: 22.10.2006 20:24:59
Lizenz eigener Beiträge: MIT Lizenz

Re: Ausgelesene PV-Daten aufbereiten und darstellen

Beitrag von Theophil T. » 30.06.2023 19:33:17

Danke Euch für die Tipps! ASCII-Dateien hätten für mich den Vorteil, dass ich mich nicht extra in eine Datenbank-Anwendung einarbeiten müsste. Werde mal schauen, wie man ASCII-Dateien am besten als Quelle für Kurven, Diagramme, etc. verwendet.

Benutzeravatar
GregorS
Beiträge: 3124
Registriert: 05.06.2008 09:36:37
Wohnort: Freiburg
Kontaktdaten:

Re: Ausgelesene PV-Daten aufbereiten und darstellen

Beitrag von GregorS » 30.06.2023 20:31:42

Theophil T. hat geschrieben: ↑ zum Beitrag ↑
30.06.2023 19:33:17
... wie man ASCII-Dateien am besten als Quelle für Kurven, Diagramme, etc. verwendet.
Ich habe mir eine Kombination von Shell- und Gnuplot-Scripten geschrieben, mit der ich kontrollieren kann, wie sich ein paar wenige/interessante Werte meines Computers über die Zeit verhalten. Beispiel: https://test.szaktilla.de/lili.pdf

Meinst Du ungefähr so etwas?

Gruß

Gregor
Wenn man keine Probleme hat, kann man sich welche machen. ("Großes Lötauge", Medizinmann der M3-Hopi [und sog. Maker])

rhHeini
Beiträge: 2702
Registriert: 20.04.2006 20:44:10

Re: Ausgelesene PV-Daten aufbereiten und darstellen

Beitrag von rhHeini » 30.06.2023 20:48:12

Wenn die ASCII-Datei als CSV (Comma Separated Values) aufgebaut wird ist das durchaus von Vorteil. Dann kann man das auch einfach in LO einlesen.

Theophil T.
Beiträge: 402
Registriert: 22.10.2006 20:24:59
Lizenz eigener Beiträge: MIT Lizenz

Re: Ausgelesene PV-Daten aufbereiten und darstellen

Beitrag von Theophil T. » 01.07.2023 07:38:29

GregorS hat geschrieben: ↑ zum Beitrag ↑
30.06.2023 20:31:42
...Beispiel: https://test.szaktilla.de/lili.pdf

Meinst Du ungefähr so etwas?
Ja, so ein Ergebnis würde ich mir vorstellen!

Ich lese jetzt gerade über Richtlinien für csv-Dateien, wie Umgang mit Kommata in Werten, Art des Trennzeichens, etc., z.B. https://www.ietf.org/rfc/rfc4180.txt, das scheint ja für meine Zwecke gut zu funktionieren.
Gnuplot bietet sehr viele Möglichkeiten und der Import von csv Dateien in Libreoffice Calc ging ohne Probleme.
heisenberg hat geschrieben: ↑ zum Beitrag ↑
30.06.2023 13:27:22
Der Klassiker wäre Debianrrdtool mit dem Speicherformat RRD (Round-Robin-Database), dass genau für diesen Zweck entworfen wurde.

Recht Hip ist zur Zeit grafana (Visualisierung) und Debianprometheus (Metrikenaufzeichnung). Beide Projekte sind sehr umfangreich.
grafana wird auch von der "Solaranzeige" verwendet.

Ich werde jetzt noch ein wenig experimentieren - nochmals danke!

Benutzeravatar
GregorS
Beiträge: 3124
Registriert: 05.06.2008 09:36:37
Wohnort: Freiburg
Kontaktdaten:

Re: Ausgelesene PV-Daten aufbereiten und darstellen

Beitrag von GregorS » 01.07.2023 15:34:04

Theophil T. hat geschrieben: ↑ zum Beitrag ↑
01.07.2023 07:38:29
GregorS hat geschrieben: ↑ zum Beitrag ↑
30.06.2023 20:31:42
...Beispiel: https://test.szaktilla.de/lili.pdf
Meinst Du ungefähr so etwas?
Ja, so ein Ergebnis würde ich mir vorstellen!
Na denn ...

Wie Du die gewünschte Information loggen kannst, weißt Du ja schon. Evtl. kannst Du mein Gnuplot-Script ja für Deine Zwecke anpassen:

Code: Alles auswählen

#!/bin/gnuplot

FN1="/tmp/temperature.kpl.log"
FN2="/tmp/temperature.48hrs.log"
FN3="/tmp/temperature.24hrs.log"
FN4="/tmp/temperature.6hrs.log"

TI="Load/Temp./avail. RAM"

set fontpath "/usr/share/fonts/opentype/gekauft/"

set terminal postscript color \
    font "HelveticaNeueLTStd-LTCn.otf,8" \
    enhanced 
set output "/tmp/plot.ps"

set timefmt "%d.%m.%y-%H:%M:%S"
set xdata time
set xtics rotate by -30
set ytics 10
set grid
set yrange [-5:105]
set ylabel TI
set multiplot layout 2,2 rowsfirst \
    title TI font "HelveticaNeueLTStd-LTCn.otf,18"

set title "Alle Werte"
set format x "%d.%m"
plot FN1 using 1:3 title "Load ({/Symbol \306} 5 Minuten x 10)" with lines lc "#AADDAA", \
     FN1 using 1:5 title "CPU Temp. [{/Symbol \260}C]" with lines lc "#0000FF", \
     FN1 using 1:9 title "avail. RAM [%]" with lines lc "#AAAADD";

set title "{/Symbol \263} 48 Stunden"
set format x "%d.%m"
plot FN2 using 1:3 title "Load ({/Symbol \306} 5 Minuten x 10)" with lines lc "#AADDAA", \
     FN2 using 1:5 title "CPU Temp. [{/Symbol \260}C]" with lines lc rgb "#0000FF", \
     FN2 using 1:9 title "avail. RAM [%]" with lines lc rgb "#AAAADD";

set title "{/Symbol \263} 24 Stunden"
set format x "%d.%m, %H:%M"
plot FN3 using 1:3 title "Load ({/Symbol \306} 5 Minuten x 10)" with lines lc rgb "#AADDAA", \
     FN3 using 1:5 title "CPU Temp. [{/Symbol \260}C]" with lines lc rgb "#0000FF", \
     FN3 using 1:9 title "avail. RAM [%]" with lines lc rgb "#AAAADD";

set title "{/Symbol \263} 6 Stunden"
set format x "%d.%m, %H:%M"
plot FN4 using 1:3 title "Load ({/Symbol \306} 5 Minuten x 10)" with lines lc rgb "#AADDAA", \
     FN4 using 1:5 title "CPU Temp. [{/Symbol \260}C]" with lines lc rgb "#0000FF", \
     FN4 using 1:9 title "avail. RAM [%]" with lines lc rgb "#AAAADD";

#eof
Ein wesentlich einfacheres Gnuplot-Script habe ich hier verwendet: https://html.szaktilla.de/weekender/2.html

HTH

Gregor
Wenn man keine Probleme hat, kann man sich welche machen. ("Großes Lötauge", Medizinmann der M3-Hopi [und sog. Maker])

Theophil T.
Beiträge: 402
Registriert: 22.10.2006 20:24:59
Lizenz eigener Beiträge: MIT Lizenz

Re: Ausgelesene PV-Daten aufbereiten und darstellen

Beitrag von Theophil T. » 01.07.2023 17:24:36

Das hilft sehr, Gregor, super!

Antworten