Einsatzgebiete / Anwendungen
CO2: alles im grünen Bereich
Ein CO2-Sensor eignet sich hervorragend, bei Überschreiten definierter Grenzwerte auf manuelles Lüften hinzuweisen, häufig in Form einer Ampelanzeige, wie sie aktuell in Schulen zum Einsatz kommt, um damit auch die Virenbelastung (#Covid19) zu reduzieren. In meinem Fall, bei einer existierenden mechanischen Wohnungslüftungsanlage mit Wärmerückgewinnung, zeichnet er den CO2-Gehalt über die Zeit auf und erlaubt somit die Kontrolle bzw. Feinjustierung der Lüftungsanlage.
Aufbau der Hardware
Folgende Komponenten habe ich verwendet (siehe Foto):
– Octopus Maker Platine, kostenlose Aktion des Heise Verlages (leider nur bis November 2020)
– Wemos D1 mini pro
– RGB-LED (hatte ich noch aus einem Conrad Adventskalender)
– CO2-Sensor SCD30
Es gibt die Platine mit Sensor und NodeMCU auch als fertiges Kit bei Tindie von Fab-Lab zu kaufen. Die Komponenten lassen sich natürlich auch ohne die Platine zusammenbauen, allerdings nicht so komfortabel. Bei Tindie finden sich auch verschiedene Anleitungen mit alternativen Bauteilen.
Software und Programmierung
Die Programmierung erfolgt mit der Arduino-Entwicklungsumgebung. Als Basis habe ich den Source Code der CO2-Ampel von make-IoT verwendet. Der CO2-Sensor liefert neben CO2 auch Temperatur und Feuchtigkeit. Um diese Werte auszulesen, muss folgende Bibliothek installiert und eingebunden werden: SparkFun_SCD30_Arduino_Library.h
.
Für meinen Anwendungsfall, der Speicherung der CO2-Konzentration über die Zeit, eignet sich hervorragend InfluxDB, eine auf Messdaten über Zeit spezialisierte Datenbank.
Speicherung auf InfluxDB
Zur lokalen Speicherung und Darstellung genügt ein Raspberry Pi vollkommen. Eine gute und einfache Anleitung gibt es von Simon Hearne, der die Installation von Influx, Version 1, und Grafana auf einem Raspberry Pi beschreibt. Wenn jedoch eine Nutzung außerhalb der eigenen vier Wände gewünscht wird, gibt es für Hobby-Anwendung einen kostenlosen Cloud-Zugang zu InfluxDB, dort wird dann die neue Version 2 verwendet. Für beide Varianten muss die Bibliothek InfluxDbClient.h
in der Arduino-IDE installiert und eingebunden werden. Die verschiedenen Schritte und Befehle sind auf github einfach und verständlich erklärt und können dann auf die eigenen Messdaten bzw. Zugangsdaten adaptiert werden.
Visualisierung der Messdaten
InfluxDB, Version 2, ermöglicht die visuelle Darstellung der Messdaten bereits in der Cloud in Form einer „Messuhr“, engl. Gauge, (siehe Screenshot) oder eines Diagramms über die Zeit.
Eine Alternative stellt die Open-Source-Anwendung Grafana zur grafischen Darstellung von Datenbankdaten dar, die kostenlos zur Installation auf eigenen Servern, wie oben beschrieben auf einem Raspberry Pi, bereitgestellt wird oder kostenpflichtig auf der Cloud von Grafana. Die Auswahl der Datenbank und Messdaten aus InfluxDB erfolgt bei Verwendung der Version 1 einfach per UI in Grafana bzw. mit Hilfe der Flux Language bei der Version 2. Die Darstellung als „Messuhr“ ist vergleichbar mit der aus der InfluxDB (siehe Screenshots).
from(bucket:"my-database")
|> range(start:-1h)
|> filter(fn:(r) =>
r._measurement == "Sensor_Data" and
r._field == "CO2"
)
|> last()
Auswertung der Messdaten
Exemplarisch beschreibe ich die Ergebnisse der CO2-Messung über einen typischen Tag im Home-Office (siehe Diagramm). Die CO2-Konzentration steigt ab Arbeitsbeginn um 8.00 Uhr von ca. 700 PPM bis auf 1000 bis 1100 PPM an, eine Kaffeepause sorgt lediglich für eine kurzzeitige Absenkung. Erst die halbstündige Mittagspause sorgt für eine Absenkung des CO2-Gehaltes unter 900 PPM. Ununterbrochene Videokonferenzen zwischen 13.00 und 16.00 Uhr führen zu einem stetigen Anstieg bis auf 1300 PPM. Der kurze Ausschlag nach unten um ca. 14.30 Uhr erklärt sich durch ein kurze Begrüßung des Paketdienstes bei geöffnetem Fenster. Die anschließende Kaffeepause bewirkt eine kleine Absenkung und erst nach Arbeitsende um ca. 17.30 Uhr sinkt die CO2-Konzentration langsam wieder auf den Ausgangswert. Bis auf die kurzzeitige Fensteröffnung erfolgte die Lüftung und damit auch die Reduzierung des CO2-Gehaltes ausschließlich durch die mechanische Wohnungslüftung.
Die CO2-Konzentration im Home-Office bleibt somit aufgrund der mechanischen Lüftung selbst über einen ganzen Tag immer deutlich unterhalb des kritischen Wertes von 2000 PPM, wo laut Umweltbundesamt zwingend eine Lüftung empfohlen wird.
Zusammenfassung
Die dargestellte DIY-Lösung erlaubt eine einfache und kostengünstige Möglichkeit, die CO2-Konzentration in Schulen, in Wohnungen oder an Arbeitsplätzen zu messen und zu visualisieren, entweder in Form einer Ampel oder in Form von Messreihen, die in Datenbanken gespeichert werden. Die Auswertungen dieser Ergebnisse können helfen, a) die Luftbedingungen zu verbessern, b) die Virenbelastung zu reduzieren und c) damit die Bedingungen am Arbeitsplatz zu optimieren. Wer sich für weitere Messreihen, andere Anwendungen oder den Quellcode interessiert, kann mich gerne kontaktieren.