Listing 5
[http]
enabled = true
bind-address = ":8086"
[[outputs.influxdb]]
timeout = "5s"
username = "admin"
password = "****"
[[inputs.exec]]
commands = ["python3 /usr/local/bin/dht11_einfach.py"]
interval = "60s"
data_format = "influx"
Gut gesammelt
Das Benutzerkonto telegraf muss Mitglied in der Gruppe gpio sein, damit der Kollektor die Werte vom GPIO-Pin lesen darf. Dafür sorgen Sie mit dem Kommando usermod -a -G gpio telegraf.
In der Datei /etc/telegraf/telegraf.conf stehen im Abschnitt OUTPUT PLUGINS die Informationen zur Datenbank (Listing 5, ab Zeile 5). Im Bereich INPUT PLUGINS bleibt dann auch noch Platz für das eigene Python-Skript, das später jeweils einmal pro Minute laufen soll (Listing 5, ab Zeile 10).
Um zu prüfen, ob die Kommunikation zwischen Telegraf und Influx DB klappt, starten Sie den Client. Listing 6 zeigt eine Abfrage der Telegraf-Datenbank auf dem Testsystem.
Listing 6
$ influx Connected to http://localhost:8086 version 1.5.1 InfluxDB shell version: 1.5.1 > show databases name: databases name ---- telegraf _internal > use telegraf Using database telegraf > show series key --- cpu,cpu=cpu-total,host=raspberrypi [...] dht,host=raspberrypi [...] system,host=raspberrypi > select * from dht; name: dht time host humidity temperature --------------------------- 1522242851000000000 raspberrypi 54 19 1522242911000000000 raspberrypi 54 19 1522242971000000000 raspberrypi 53 19 1522243031000000000 raspberrypi 53 19 [...]
Anschaulich gemacht
Grafana [7] übernimmt das Visualisieren der gesammelten Daten. Die Software unterstützt zahlreiche Datenquellen, darunter auch Influx-DB-Datenbanken. Da in den offiziellen Raspbian-Repositories eine relativ alte Grafana-Version liegt, fiel die Wahl in diesem Projekt auf ein aktuelles Paket von Github [8].
Auch den Grafana-Dienst müssen Sie per systemctl enable auf den automatischen Start nach dem Booten vorbereiten, systemctl start grafana-server ruft ihn schließlich auf den Plan. Sie erreichen das Webinterface über den Port 3000, Benutzername und Passwort lauten in diesem Beispiel admin. Als Erstes fügen Sie über Add data source die Datenbank telegraf hinzu. Danach geht es ans Einrichten des Dashboards, um die Metriken zu visualisieren (Abbildung 1).

Abbildung 1: Kurz nach 10 Uhr morgens hängten die Autoren den RasPi in die Bienenbeute. Der Sensor misst Temperaturen zwischen 8 und 9 Grad Celsius an der Oberkante der unteren Zarge.
Zunächst provisorisch mit Tüten und Klebeband geschützt, wanderte der Raspberry Pi in das Bienenvolk, das neben der Hauswand steht. Daher lässt sich der Mini-Rechner über das vorhandene WLAN anbinden (Abbildung 2).

Abbildung 2: Noch steckt der Mini-Rechner in einer provisorischen Hülle. Ein wasserfestes Gehäuse und ein Solarmodul für die kabellose Stromzufuhr stehen auf der Einkaufsliste.
Die Imker entnahmen ein Rähmchen aus der obersten Etage der zweizargigen Beute, um Platz für den RasPi samt Sensor zu schaffen. Der DHT11 misst demgemäß also die Temperatur an der Oberkante der unteren Zarge. Bei einer Außentemperatur von 1 Grad Celsius waren das durchschnittlich 8 Grad. Höher fallen die Temperaturen an der Stelle aus, wo die Königin sitzt und wo gebrütet wird – um die 35 Grad Celsius.
Volksnah
Andere Imker haben gleich drei oder vier Sensoren in den Beuten untergebracht und messen die Temperatur am Flugloch, unter dem Deckel und in der untersten Zarge. Das Hiveeyes-Projekt präsentiert entsprechende Ergebnisse [9].
Angelehnt an ein Sunfounder-Tutorial [10] experimentierten die Autoren auch mit einem DS18B20-Temperatursensor und einem Lautsprechermodul. Zur Kommunikation über das GPIO-Extension-Board installierten sie die Wiring-Pi-Bibliothek [11], die auch das Tool gpio auf den RasPi bringt (Abbildung 3).
Damit lässt sich ein Kontrollsystem realisieren, das beim Überschreiten einer bestimmten Temperatur ein Tonsignal ausgibt. Eine solche Vorrichtung könnte etwa für den Transport von Bienenvölkern interessant sein. Auf längeren Strecken sorgt ein Gitter oben auf der Beute für ausreichend Luftzufuhr, bei kürzeren Wegen sichern viele Imker den Transport aber einfach mit einem Spanngurt.
Wird es zu warm, fangen die Bienen an, mit den Flügeln zu schlagen, um für Abkühlung zu sorgen. Bei verschlossener Beute tritt aber der gegenteilige Effekt ein, sie heizt sich durch die erzeugte Energie immer weiter auf. Die Tiere können so hohe Temperaturen erzeugen, dass Waben schmelzen und die Bienen zugrunde gehen. Ein Signalton warnt den Imker beim Transport und verhindert, dass die Völker “verbrausen”, sich also bei der Kühlung des Bienenstocks zu Tode schuften.






