Raspberry PI als Datenlogger für Umwelt-Messdaten

Fliegender Aufbau mit I2C Sensoren, Geiger-Zähler Board sowie Raspberry PI
Etwa ein dreiviertel Jahr ist es jetzt her, seit die ersten Exemplare des Raspberry Pi ausgeliefert wurden. Seitdem hat sich der Kleinstcomputer zur wohl beliebtesten Platform für linuxbasierte Embedded-Anwendungen entwickelt. Neue Modelle mit mehr Arbeitsspeicher sowie eine abgespeckte Version mit geringerem Stromverbrauch sind inzwischen ebenfalls erschienen und erhöhen so die Anzahl der möglichen Anwendungsgebiete.

Als erste Aufgabe für meinen Raspberry PI habe ich eine kleine Anwendung erstellt, welche Daten von nahezu beliebigen Sensor-Quellen speichert und über einen Webbrowser oder eine Android App graphisch darstellen kann.

Haupteinsatzzweck bei mir ist ein Datenlogger für Umweltdaten wie etwa Temperatur, Luftdruck und relative Luftfeuchtigkeit. Deshalb habe ich für die Darstellung eine Tagesübersicht mit 1-minütiger Auflösung gewählt, diese ist für diesen Zweck recht gut geeignet.

Das ganze besteht dabei aus 4 Teilen. (Download hier)

Im Hintergrund läuft eine MySQL Datenbank, welche die Daten aller Sensor-Quellen sammelt und bei Bedarf dann wieder zur Verfügung stellt. Alle Daten landen mit einem Zeitstempel in einer einfach aufgebauten Tabelle CHANNEL_DATA, zusätzlich wird noch die Kanalnummer mit abgespeichert.

In einer zweiten Tabelle CHANNELS sind alle benutzten Kanäle hinterlegt, jeweils mit Darstellungsfarbe, Skalierung sowie Achbeschriftungen etc.

Diese Datenbank ist mit einigen Beispieldatensätzen als Script im Quellcode-Paket mit dabei.

Als Datenlieferant dienen ein oder mehrere Python-Scripten (datenlogger.py), welche Daten über die serielle Schnittstelle einlesen und je nach Kanal in die MySQL Datenbank schreiben. Für meine Anwendung habe ich den hier vorgestellten Geigerzähler so abgeändert, dass er zusätzlich noch einen HYT939 Temperatur / Feuchtesensor sowie einen BMP085 Luftdrucksensor abfragen kann. Somit ergibt sich ein kompaktes und sehr flexibles System zur Aufzeichnung von Umweltdaten.

Um die Daten darzustellen, gibt es ein einfaches PHP Script, welches mittels der Dygraph Library für jeden Kanal eine Graphik erstellt. Mit einem Webbrowser können diese Daten dann unmittelbar dargestellt werden.


Graphische Darstellung mit DyGraph

Auch wenn diese Anwendung auf einem Raspberry PI läuft, kann sie natürlich auf jedem anderen passend konfigurierten Linux Server installiert werden, die Scripten sind nicht an einen Raspberry PI gebunden.


Graphische Darstellung mit Android App

Als vierten Teil in diesem System habe ich noch eine kleine Android App für das Nexus 7 geschrieben, welche ebenfalls die Daten graphisch darstellen kann. Damit hat man in sehr kompakter und übersichtlicher Form jederzeit einen Überlick über alle aufgezeichneten Daten. Sorgt man nun dafür, dass der Raspberry PI auch übers Internet erreichbar ist (zB durch dynamische DNS, VPN etc), kann man von praktisch überall auf die aktuellen Messwerte zugreifen.

Bauteile für dieses Projekt - Anzeigen:
Aktive Bauelemente

Passive Bauelemente


Weitere Informationen,Grundlagen,Bauanleitung,Schaltplan, Links zum Thema
Anzeigen:

Neueste Artikel
Anzeigen:
Aktuelle Newsbeiträge
Sie sind Besucher Nr. 1211979