You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

3.0 KiB

Vorbereitungen

Koordinaten vorbereiten

Bayernatlas besuchen, Adresse der Station eingeben, Koordinaten werden später benötigt. Kooardinaten müssen dem Administrator bei der Stationsregistrierung mittgeteilt werden.

Installation Client Skripte

Python

Es wird mindestens Python 3.7+ vorausgesetzt

Benötigte Python Module installieren

apt install python3-systemd
git clone https://git.pertl-ing.de/Hofei/weewx_to_grafanaserver.git /home/pi/weewx_to_grafanaserver
pip3 install -r requirements.txt

Bei der Installation ist gegenfalls zu achten die Module für den passenden User zu installieren (bsp. sudo pip3 install ... oder pip3 install --user). Die beiliegenden Service Units sind für den User root ausgelegt

Es empiehlt sich folgenden Pfad zu verwenden, da hierfür die Service Units schon vorbereitet sind, Abweichungen müssen angepasst werden /home/pi/weewx_to_grafanaserver.

Konfiguration anpassen

cp vorlage_wetterconfig.toml wetterconfig.toml
nano wetterconfig.toml

Inbetriebnahme

Da WeeWx in der Standardinstallation mit root Rechten läuft, so benötigen auch diese Skripte root Rechte um auf die Datenbank von WeeWx zugreifen zu können. Somit empfiehlt es sich die root Crontab zu verwenden (sudo crontab -e)

Anstelle der Verwendung der Crontab liegen im Repository für jedes Exportskript eine Systemd Service Unit mit Timer Unit bei. Dies stellt den moderneren Weg dar. Hierfür die universelle Anleitung unter dem Punkt Systemd Unit beachten

grafana_export.py

Datei erstmals manuell ausführen. Erste Ausführung wird je nach Weewx Datenbank- größe viel Zeit in Anspruch nehmen. --> Geduldig abwarten! Nach der erfolgreichen ersten Übertragung der Wetterdaten aus der Weewx Datenbank einen Cronjob mit dem gewünschten Ausführintervall erstellen (Standardmäßig alle 5 Minuten)

Cronjob

crontab -e

*/5 * * * * python3 /home/pi/weewx_to_grafanaserver/grafana_export.py

Feinstaubsensor (Optional)

Wer einen Feinstaubsensor hat, die URL in der Konfigurationsdatei hinterlegen und feinstaub.py direkt aufrufen, entweder mit Cronjob oder Systemd Service Unit

Cronjob

crontab -e

*/5 * * * * python3 /home/pi/weewx_to_grafanaserver/feinstaub.py

Hinweis: Grafana kann nur nach erfolgreicher Stationsregistrierung funktionieren. Hierfür den Administrator kontaktieren mit Besitzer, Stationsname und Koordinaten

Systemd Unit

Alternativ zur Crontab kann eine Systemd Unit verwendet werden. Hierfür die zugehörigen Dateien mit der Endung .service und .timer im systemd_files Ordner nach /etc/systemd/system kopieren und die Rechte anpassen

cp <files> /etc/systemd/system/
chmod 644 /etc/systemd/system/<file>

Anschließend kann das Skript manuell getestet werden mit:

systemctl start <unitname>.service

Verläuft dieser Test positiv, kann der Timer gestartet werden:

systemctl start <timername>.timer
systemctl enable <timername>.timer