Vor einiger Zeit habe ich endlich meinen eigenen Feinstaubsensor zusammengebaut und in Betrieb genommen. Nachdem ich schon vor einigen Jahren af das Gemeinschaftsprojekt gestoßen bin, war nun endlich Zeit, den Sensor zu bauen. In dieser Anleitung zeige ich die einzelnen Schritte zum nachmachen und nachbauen auf.
Der Feinstaubmesser ist ein recht einfaches Projekt, dass keine großen Elektro- und Programmierkenntnisse erfordert und lässt sich deshalb auch sehr gut mit Kindern zusammen bauen.
Feinstaub-Sensor-Bausatz
Der Begriff Feinstaub ist genau definiert und festgelegt:
Feinstaub besteht aus einem komplexen Gemisch fester und flüssiger Partikel und wird abhängig von deren Größe in unterschiedliche Fraktionen eingeteilt. Unterschieden werden PM10 (PM, particulate matter) mit einem maximalen Durchmesser von 10 Mikrometer (µm), PM2,5 und ultrafeine Partikel mit einem Durchmesser von weniger als 0,1 µm.
Quelle: https://www.umweltbundesamt.de/themen/luft/luftschadstoffe/feinstaub
Warum ein eigener Feinstaubsensor?
Weshalb ein eigener Feinstaubmesser? Das ist eine berechtigte Frage, nachdem das Umweltbundesamt auf seiner Seite ja die Messdaten sämtlicher Stationen für jeden interessierten Bürger öffentlich zugänglich macht.
umweltbundesamt.de – Luftqualitätsindex
Vergleicht man jedoch die Anzahl der Messstationen des Umweltbundesamtes mit der Anzahl der angemeldeten Stationen auf der Seite der beiden Projekte luftdaten.info und OpenSenseMap, dann sind dort wesentlich mehr Stationen angemeldet. Die beiden Projekte sind sog. Cizizen Science Projekte, und ermöglichen es jedem Interessierten daran mitzuarbeiten. (siehe dazu ➡ https://de.wikipedia.org/wiki/Citizen_Science)
Auf beiden Seiten können Stationen weltweit angemeldet werden, wohingegen das Umweltbundesamt seine Messtationen nur in Deutschland betreibt.
Somit ergibt sich durch die deutlich höhere Zahl an Stationen ein besseres Bild über die Feinstaubbelastung. Die Unschärfen, die sich durch die privaten Sensoren ergeben, werden durch die hohe Anzahl der Stationen relativiert und es lässt sich eine Tendenz sehr gut ablesen.
http://deutschland.maps.luftdaten.info – Weltkarte
Quelle: http://deutschland.maps.luftdaten.info
openSenseMap – Weltkarte
Quelle: https://opensensemap.org/
Auf der Seite des Bundesministerium für Bildung und Forschung wird Citizen Science ebenfalls erklärt. Zudem werden einige Projekte erklärt und verlinkt:
➡ Citizen Science – Bürger schaffen Wissen
Auf der 36C3 wurde zu Citizen Science Projekt ein Talk mit dem Titel “Offene Sensordaten für Jedermann – Ein Citizen Science Projekt basierend auf Open Source und Open Hardware” der das Thema sehr gut erklärt.
Quelle: <outube.com; 36C3 – Offene Sensordaten für Jedermann – Ein Citizen Science Projekt basierend auf Open Source und
Wohin kann ich meine Daten des Feinstaubmesser übermittelt?
Der Feinstaubmesser übermittelt die Messwerte in Regelmäßigen Abständen an einen Server. Es gibt zwei Dienste, die die Daten der weltweiten Feinstaubmesser empfangen und die Messergebnisse in einer Karte darstellen:
Was ist der Unterschied zwischen den beiden Anbietern?
luftdaten.info
Das OK Lab Stuttgart widmet sich mit dem Citizen Science Projekt luftdaten.info der Feinstaubmessung. Du und tausende von Paten weltweit installieren selbst gebaute Messgeräte an der Außenwand ihres Hauses. Aus den übermittelten Daten generiert luftdaten.info eine sich ständig aktualisierende Feinstaub-Karte. So wird Feinstaub sichtbar…
Quelle: https://luftdaten.info/
openSenseMap
Die openSenseMap ist eine Plattform für offene Sensordaten, an der jeder teilnehmen kann.
Das Projekt entstand 2015 im Rahmen von GI@School am Institut für Geoinformatik in Münster, wo es zusammen mit der senseBox eingesetzt wird, um Schülern und interessierten Bürgern eine Plattform zu bieten, um ihre Messdaten zu sammeln und zu veröffentlichen
Quelle: https://opensensemap.org/about
Mein Sensor schickt die Messdaten an beide Projekte.
Erforderliche Hardware für den Feinstaubmesser
Auf der Seite luftdaten.info findet ihr die benötigte Hardware aufgeführt und einen Link auf eine eCommerce-Plattform für den Einkauf der Hardware. Neben aliexpress könnt ihr die einzelnen Komponenten auch beim deutschen Anbieter berrybase.de.
Die Hardware könnt ihr auch über amazon.de* kaufen:
Zusätzlich zu den oben aufgeführten Komponenten benötigt ihr noch ein paar kleine Kabelbinder, um die einzelnen Module und Kabel miteinander zu verbinden und so zu befestigen.
Hinweis:
Zum Schutz vor Regen wird das Kunststoffrohr aus dem Bauhaus verwendet, dass zum einen eine sehr kostengünstige und effektive Möglichkeit für den Schutz der Elektronik ist, zum anderen aber auch je nach Installationsort die Temperatur-Messergebnisse verfälschen kann. Solltet ihr euren Feinstaubmesser an einem sonnigen Ort aufstellen, dann wird sich in der Kunststoffröhre Hitze stauen, was zu einem falschen Temperatur-Messergebnis führen wird. Die Feinstaubmessung ist davon nicht betroffen. Um das zu vermeiden könnt ihr z.B. ein (Vogel-)Häuschen für den Sensor bauen, damit er nicht der direkten Sonneneinstrahlung ausgesetzt ist. Zu beachten ist dabei, dass das Röhrchen aus dem Gehäuse ragt, damit Außenluft angesaugt werden kann.
Der Zusammenbau
Der Zusammenbau des Feinstaubsensors ist sehr einfach und geht relativ schnell und gliedert sich in grob drei Teile:
Vorbereitung der Firmware und bespielen des Microcontrollers
Zusammenstecken der Hardwarekomponenten
Anmelden des Feinstaubmessers zur Übermittlung der Messerdaten
Firmware auf ESP8266-Microcontroller aufspielen
Der erste Schritt ist die Installation der Firmware auf dem Firmware auf ESP8266-Microcontroller. Durch die Firmware kann der Sensor in euer WLAN eingebunden werden und mit den anderen Hardwarekomponenten (Feinstaubsensor SDS011 und ggf. Temperatur- und Luftfeuchtigkeitssensor DHT22) kommunizieren.
Ich habe für die Installation der Firmware einen Laptop mit Windows 10 verwendet.
1. Schritt: Treiber herunterladen
Damit ihr den ESP8266-Microcontroller von eurem Laptop aus ansprechen könnt benötigt ihr den aktuellen Treiber, denn ihr von der Projektseite herunterladen könnt.
➡ https://luftdaten.info/feinstaubsensor-bauen/#firmware-einspielenTreiber herunterladen
Quelle: luftdaten.info
War der Download des Treibers erfolgreich,
entpackt ihr die Datei “CH341SER.ZIP”,
öffnet den Ordner “CH341SER”,
Installiert den Treiber mit einem Doppelklick auf “SETUP.EXE”
Treiber installieren
2. Schritt: Firmware herunterladen und auf dem PC installieren
Die Firmware ist bereits komplett fertig und kann ebenfalls über die Projektseite heruntergeladen werden:
➡ https://luftdaten.info/feinstaubsensor-bauen/#firmware-einspielen
Die Entwicklung der Firmware erfolgt über github.com und kann dort eingesehen werden:
➡ https://github.com/opendata-stuttgart/sensors-softwareFirmware herunterladen
Quelle: luftdaten.info
Die heruntergeladene Datei “airRohr-firmware-flasher-0.3.0-Windows_amd64.exe” ist anschließend mit einem Doppelklick auszuführen.
Windows zeigt euch eine Meldung, und warnt euch vor der unbekannten App. Folgendermaßen installiert ihr den Treiber trotzdem:
Firmware installierenFirmware installieren
3. Schritt: Firmware auf ESP8266-Microcontroller aufspielen
Nun ist alles vorbereitet, um die Firmware auf den ESP8266-Microcontroller aufspielen.
Verbindet den ESP8266-Microcontroller mit einem kurzen USB-Kabel mit eurem PC. Auf der Projektseite wird ausdrücklich ein kurzes USB-Kabel für diesen Schritt empfohlen, um Übertragungsprobleme zu vermeiden.
Der ESP8266-Microcontroller wird automatisch von eurem Betriebssystem erkannt und kann im Feld “Board” ausgewählt werden. Wird die Hardware nicht automatisch erkannt, kann die erneute Treiberinstallation oder die Verwendung eines anderen USB-Kabels für Abhilfe sorgen.
Firmware – Board auswählen
Im Screenshot wird das deutsche Sprachpaket ausgewählt.
Firmware – Sprachdatei auswählen
Nun noch auf den Button “Hochladen” klicken und warten, bis die Firmware auf den ESP8266-Microcontroller übertragen wurde.
Firmware – Hochladen
Wartet bis die Upload komplett abgeschlossen ist, dann könnt ihr den ESP8266-Microcontroller vom PC trennen und zum nächsten Schritt gehen.
4. Schritt: Hardware zusammenbauen
Der Zusammenbau der Hardware ist sehr einfach mit den Steckkontakten und den Käbelchen erledigt. Es ist dabei egal, welche farbe ihr für die Verbindung der PINs verwendet, das hat keinen Einfluss auf die Funktionsfähigkeit des Sensors.
Der Schaltplan für den Zusammenbau ist auf der Projektseite abrufbar:
➡ https://luftdaten.info/wp-content/uploads/2015/02/nodemcu-v3-schaltplan-sds011.jpgnodemcu-v3-schaltplan-sds011
Auf der Projektseite gibt es einige gute Bilder, die den Zusammenbau zeigen:
➡ https://luftdaten.info/feinstaubsensor-bauen/#komponenten-schaltung
Nach dem Zusammenbinden und dem Einbau in das Rohr, könnt ihr an den beiden Enden noch ein Fliegengitter oder eine Nylonstrumpfhose befestigen, damit keine Insekt an die Elektronik kommen. Achtet aber darauf, dass ein Teil des Plastikrohrs aus dem Rohr herausschaut.
5. Schritt: Feinstaubmesser mit eurem WLAN verbinden
Nach dem erfolgreichen Zusammenbau könnt ihr den Feinstaubsensor das erste mal an den Strom anschließen.
Nach einem erfolgreichen Start stellt der ESP8266-Microcontroller ein eigenes WLAN bereit. Mit Hilfe eines Laptops, Tablets oder Smartphones könnt ihr euch mit diesem neuen WLAN verbinden.
Euer Gerät bekommt dafür vom ESP8266-Microcontroller eine eigene IP-Adresse zugewiesen die 192.168.4.x lautet. Nachdem ihr euch mit dem WLAN verbunden habt, könnt ihr über jeden beliebigen Webbrowser die Adresse
➡ http://192.168.4.1 aufrufen und mit der Konfiguration des ESP8266-Microcontroller beginnen.
Da der Sensor nicht über sehr viel Rechenleistung verfügt, kann der Aufbau der Seite einige Zeit in Anspruch nehmen, habt also ein wenig Geduld.
Auf der Übersichtsseite findet ihr oben links die ID eures Sensors. Die Nummer benötigt ihr später um euren Feinstaubmesser auf der Seite von luftdaten.info zu registrieren.
Die WLAN-Konfiguration findet ihr im Reiter “Konfiguration“.
Tragt im Abschnitt “WLAN Daten” die Zugangsdaten für euer Netzwerk ein.
Im Abschnitt “Ab hier nur ändern, wenn Sie wirklich wissen, was Sie tun” gibt es den Abschnitt “BasicAuth aktivieren”. Wenn ihr dort einen Benutzernamen und ein Passwort eintragt, dann wird das bei jedem Aufruf der Weboberfläche des Feinstaubmessers abgefragt. Dadurch könnt ihr verhindern, dass unbefugte Personen aus eurem Netzwerk die Einstellungen des Feinstaubmessers verändern können.
WLAN konfigurieren
Im Abschnitt “APIs” könnt ihr festlegen, mit welchen Diensten euer Feinstaubmesser kommunizieren soll.
Ihr könnte das jederzeit auch später über die Weboberfläche anpassen und ändern.
Feinstaubmesser – API
Beachtet bitte für beide Dienste die entsprechenden Anleitungen weiter unten:
Zum Abschluss drückt ihr auf den Button “Speichern und neu starten“.
Der Feinstaumesser startet neu und verbindet sich mit eurem WLAN und erhält auch eine neue IP-Adresse aus eurem Netzwerk zugewiesen. Meldet euch auf eurem Router, z.B. AVM FRITZ!Box an, um die neue IP-Adresse zu erfahren. Anschließend könnt ihr direkt aus eurem Netzwerk die Konfigurationsseite des Sensors über jeden Webbrowser aufrufen, z.B. 192.168.178.30, etc.
Router – IP-Adresse herausfindenRouter – IP-Adresse herausfindenRouter – IP-Adresse herausfinden
Wie melde ich meinen Feinstaubsensor bei den beiden Projekten an?
Der Feinstaubmesser ist einmalig bei einem oder bei beiden Diensten anzumelden, damit er die Daten übermitteln kann.
Anmeldung bei sensor.community (= luftdaten.info)
Auf der Seite https://devices.sensor.community/ müsst ihr euch zuerst ein Konto anlegen. Anschließend könnt ihr dort euren Feinstaubsensor anmelden. Ein Benutzer kann dabei auch mehrere Feinstaubsensoren in seinem Konto verwalten.
devices.sensor.community – Sensor registrieren
Die Zuordnung eures Sensors zu eurem Profil erfolgt relativ einfach über die Sensor-ID.
Die Sensor-ID erhaltet ihr wie oben beschrieben aus dem WLAN-Namen oder könnt sie direkt von der Konfigurationsseite des Sensors auslesen.
devices.sensor.community – Sensor registration
Bei den Basic Informationen ist eine Adresse einzutragen, um eine räumliche Zuordnung des Sensors zu ermöglichen.
Dort gebt ihr auch die Umgebung des Feinstaubsensors an, wie z.B. im Screenshot dargestellt:
devices.sensor.community – Additional Information
Wenn ihr den Hacken bei “Publish exact location” anklickt wir die genaue Position des Feinstaubmessers für alle Besucher sichtbar. Setzt ihr keinen Hacken, wie im Screenshot, dann wird nur eine ungenaue Ortsangabe verwendet.
Die vorausgefüllte Hardware-Informationen können übernommen werden.
Sensor Board: esp8266
Sensor Type: SDS011 – PIN 1
Sensor Type: DHT22 – PIN 7
Zum Schluss legt ihr auf der Karte noch fest, wo euer Feinstaubmesser installiert wurde:
devices.sensor.community – Ort auf Karte
Anmeldung bei opensensemap.org
Bevor euer Sensor Daten zu opensensemap.org übermitteln kann, müsst ihr auch dort ein Konto anlegen, in dem ihr anschließend eure Sensoren verwalten könnt.
https://opensensemap.org/
Nachdem ihr euer Konto erstellt habt, könnt ihr euren Sensor anmelden.
opensensemap.org
Die Ortsangaben sind ähnlich wie bei dem Projekt von luftdaten.info auf der Weltkarte auszuwählen.
Aber Achtung, hier werden die exakten Ortsangaben auf der Karte angezeigt, es erfolgt KEINE Anonimisierung/Rundung der Daten.
Bei der Hardware müsst ihr wdas Luftdaten,info-Projekt auswählen. Anschließend wird eine List mit unterschiedlichen Konfigurationen angezeigt. Wenn ihr den Feinstaubmesser und den Temperatur- und Luftfeuchtigkeitssensor verwendet, dann wählt den Punkt, wie im Screenshot dargestellt aus.
opensensemap.org – Hardware
Auf der nächsten Seite könnt ihr noch einmal eure Daten prüfen und die Konfiguration speichern. Ihr erhaltet anschließend eine E-Mail an die in eurem Konto hinterlegt Adresse mit einer sensebox Id für die Übermittlung an opensensemap.org.
opensensemap.org – Konfiguration Speichern
Die E-Mail enthält die sensebox Id, die ihr wie bereits vorher gesehen in der Konfiguration des Feinstaubsensors hiterlegen müsst.
OpenSenseMap – sensebox ID eintragen
Historische Messdaten der Feinstaubmesser abrufen
Der Feinstaubmesser selbst speichert keine historische Daten. Auf dem Server des Projekts von luftdaten.info können von allen angemeldeten Feinstaubmessern die historischen Daten heruntergeladen werden:
https://archive.sensor.community/
Weitere Karten
Die Sensordaten können von den beiden Projekten von jedem abgerufen werden und weiterverwendet werden.
Grafana
Die Informationen, die ihr auf der Seite https://deutschland.maps.sensor.community in kleinen Fenstern abrufen könnt lassen sich auch im Detail zeigen.
Ihr gelangt zum Dashboard über die Adresse ➡ https://api-rrd.madavi.de/grafana/?orgId=1.
Über das Dashboard könnt ihr mehre Ansichten auswählen und die Sensordaten anzeigen lassen.
Detailansicht über Grafana
Direkt zu eurem Sensor gelangt ihr über die URL, an die ihr die Sensor-UID anhängen müsst, z.B.
➡ https://api-rrd.madavi.de/grafana/d/GUaL5aZMz/pm-sensors?orgId=1&theme=light&var-chipID= & esp8266-387690275
–> https://api-rrd.madavi.de/grafana/d/GUaL5aZMz/pm-sensors?orgId=1&theme=light&var-chipID=esp8266-387690275.
Für die Anzeige des WLAN ist die URL anzupassen
➡ https://api-rrd.madavi.de/grafana/d/Fk6mw1WGz/wifi-signal?orgId=1&var-chipID= & esp8266-387690275
–> https://api-rrd.madavi.de/grafana/d/Fk6mw1WGz/wifi-signal?orgId=1&var-chipID=esp8266-387690275
Die Sensor ID erhaltet ihr z.B. direkt von der Konfigurationsseite des Feinstaubsensors:
Sensor-ID
feinstaub.rexfue.de
Eine sehr schöne grafische Darstellung der Daten in Säulenform gibt es auf der Seite:
➡ https://feinstaub.citysensor.de/
Zu Seite kommt ihr auch über diesen Link ➡ https://feinstaub.rexfue.de/.
https://feinstaub.citysensor.de
Die Daten der einzelnen Feinstaubsensoren werden sehr schön im Detail dargestellt:
https://feinstaub.citysensor.de
Möchtet ihr eure Messdaten im Detail betrachten, ist lediglich die Nummer des Feinstaubmessers der URL hinzuzufügen.
Euer Feinstaubmesser hat die Nummer 11111, dann lt. der Aufruf über die URL
➡ https://feinstaub.citysensor.de/ & 11111
–> https://feinstaub.citysensor.de/11111
Die Nummer erhaltet ihr auch, indem ihr auf https://deutschland.maps.sensor.community euren Feinstaubsensor aufruft.
Nummer Feinstaubmesser
* Der Beitrag enthält Affiliate Links. Solltet ihr euch für den Kauf des Produkts entscheiden, dann wird mir eine kleine Provision ausgezahlt. Für euch ändert sich am Preis nichts.
Seit Anfang des Jahrtausends absolut Linux-begeistert und Fan von Open Source. Raspberry Pi Bastler der ersten Stunde und nach wie vor begeistert von dem kleinen Stück Hardware, auf dem
er tolle Projekte umsetzt. Teilt hier seine Erfahrungen mit Nextcloud, Pi-hole, YubiKey und zu anderen spannenden IT-Themen. Nutzt
beruflich viel Excel. Sitzt vor einem riesen 49″ Monitor, nutzt Windows zum Arbeiten, Linux auf seinen Servern und virtuellen Maschinen und hört dabei Spotify und Musik über seinen RadioPi.
Trinkt gerne fairen Kaffee und freut sich deshalb sehr über eine Kaffeespende. 🙂
(**) Produktpreise und -verfügbarkeit sind zum angegebenen Datum / Uhrzeit korrekt und können sich ändern. Alle Preis- und Verfügbarkeitsinformationen auf https://www.amazon.de/ zum Zeitpunkt des Kaufs gelten für den Kauf dieses Produkts.