Klimadaten eines BOSCH BMP 280 Sensors mit gnuplot darstellen
Ein Bosch BMP 280 lässt sich direkt an einen Raspberry pi anschlieesen und durch diesen auslesen und loggen. Über einen Webserver werden die Daten dann ausgelesen und auf einem anderen Rechner visualisiert. Das könnte aber auch der raspi selber erledigen, wenn m an möchte. Die Daten werden auf eine festgelegte Zeitspanne in der Vergangenheit begrenzt, zum Beispiel 1 Woche, und mit gnuplot visualisiert.

#!/usr/bin/gnuplot # datei1='P2.csv' datei2='T2.csv' ausgabe1='barometer.pdf' ##ausgabe2='T.pdf' title1='Luftdruckverlauf QNH im Keller auf 320 m ü.N.N (BMP280)' #title2='T2' miss=1 # set format x "%Y-%m-%d\n%H:%M" # Ausgabeformat set xdata time # Einleseformat set timefmt "%Y-%m-%dT%H:%M" # Einleseformat # Die Funktion ceil(x) rundet den Wert von x ab # Die Anzahl der Datenpunkte (für die Normierung) set datafile separator "," set terminal pdf size 11.6929,8.267 set output ausgabe1 #set decimalsign locale "de_DE.UTF-8" set size 0.95,0.95 set origin 0.03,0.03 set grid #linestyle 30, linestyle 31 set grid xtics mxtics ytics mytics set title title1 #"Pingzeit Verlauf" set xlabel "Zeit" set ylabel "Druck in hPa" set mytics if ( miss >0 ) { set y2label "Temperatur" set y2tics plot datei1 using 1:2 with dots lc rgb "blue" title "Druck in hPa" axes x1y1, \ datei2 using 1:2 with dots lc rgb "red" title "Temp in °C" axes x1y2 } else { plot datei1 using 1:2 with dots lc rgb "blue" title "Druck in hPa" axes x1y1 }
#!/bin/bash # QURL=root@raspi3:/var/www/wetter/ rsync -av $QURL/[PT].csv . #Minuten=10080 # 1 Woche #Minuten=20160 # 2 Wochen #Minuten=30240 # 3 Wochen Minuten=40320 # 4 Wochen tail -$Minuten P.csv > P2.csv tail -$Minuten T.csv > T2.csv